mirror of
https://git.mentality.rip/numas13/xash3d-master.git
synced 2025-01-22 12:54:24 +00:00
protocol: Filter::NOT_EMPTY to Filter::EMPTY
This commit is contained in:
parent
06e99ae1a7
commit
2299010d97
@ -50,8 +50,8 @@ bitflags! {
|
|||||||
const SECURE = 1 << 1;
|
const SECURE = 1 << 1;
|
||||||
/// Servers that are not password protected
|
/// Servers that are not password protected
|
||||||
const PASSWORD = 1 << 2;
|
const PASSWORD = 1 << 2;
|
||||||
/// Servers that are not empty
|
/// Servers that are empty
|
||||||
const NOT_EMPTY = 1 << 3;
|
const EMPTY = 1 << 3;
|
||||||
/// Servers that are not full
|
/// Servers that are not full
|
||||||
const FULL = 1 << 4;
|
const FULL = 1 << 4;
|
||||||
/// Servers that are empty
|
/// Servers that are empty
|
||||||
@ -72,7 +72,7 @@ impl<T> From<&ServerAdd<T>> for FilterFlags {
|
|||||||
flags.set(Self::DEDICATED, info.server_type == ServerType::Dedicated);
|
flags.set(Self::DEDICATED, info.server_type == ServerType::Dedicated);
|
||||||
flags.set(Self::SECURE, info.flags.contains(ServerFlags::SECURE));
|
flags.set(Self::SECURE, info.flags.contains(ServerFlags::SECURE));
|
||||||
flags.set(Self::PASSWORD, info.flags.contains(ServerFlags::PASSWORD));
|
flags.set(Self::PASSWORD, info.flags.contains(ServerFlags::PASSWORD));
|
||||||
flags.set(Self::NOT_EMPTY, info.players > 0);
|
flags.set(Self::EMPTY, info.players == 0);
|
||||||
flags.set(Self::FULL, info.players >= info.max);
|
flags.set(Self::FULL, info.players >= info.max);
|
||||||
flags.set(Self::NOPLAYERS, info.players == 0);
|
flags.set(Self::NOPLAYERS, info.players == 0);
|
||||||
flags.set(Self::NAT, info.flags.contains(ServerFlags::NAT));
|
flags.set(Self::NAT, info.flags.contains(ServerFlags::NAT));
|
||||||
@ -196,7 +196,7 @@ impl<'a> TryFrom<&'a [u8]> for Filter<'a> {
|
|||||||
b"secure" => filter.insert_flag(FilterFlags::SECURE, cur.get_key_value()?),
|
b"secure" => filter.insert_flag(FilterFlags::SECURE, cur.get_key_value()?),
|
||||||
b"gamedir" => filter.gamedir = Some(cur.get_key_value()?),
|
b"gamedir" => filter.gamedir = Some(cur.get_key_value()?),
|
||||||
b"map" => filter.map = Some(cur.get_key_value()?),
|
b"map" => filter.map = Some(cur.get_key_value()?),
|
||||||
b"empty" => filter.insert_flag(FilterFlags::NOT_EMPTY, cur.get_key_value()?),
|
b"empty" => filter.insert_flag(FilterFlags::EMPTY, cur.get_key_value()?),
|
||||||
b"full" => filter.insert_flag(FilterFlags::FULL, cur.get_key_value()?),
|
b"full" => filter.insert_flag(FilterFlags::FULL, cur.get_key_value()?),
|
||||||
b"password" => filter.insert_flag(FilterFlags::PASSWORD, cur.get_key_value()?),
|
b"password" => filter.insert_flag(FilterFlags::PASSWORD, cur.get_key_value()?),
|
||||||
b"noplayers" => filter.insert_flag(FilterFlags::NOPLAYERS, cur.get_key_value()?),
|
b"noplayers" => filter.insert_flag(FilterFlags::NOPLAYERS, cur.get_key_value()?),
|
||||||
@ -249,7 +249,7 @@ impl fmt::Display for &Filter<'_> {
|
|||||||
if let Some(s) = self.map {
|
if let Some(s) = self.map {
|
||||||
write!(fmt, "\\map\\{}", s)?;
|
write!(fmt, "\\map\\{}", s)?;
|
||||||
}
|
}
|
||||||
display_flag!("empty", FilterFlags::NOT_EMPTY);
|
display_flag!("empty", FilterFlags::EMPTY);
|
||||||
display_flag!("full", FilterFlags::FULL);
|
display_flag!("full", FilterFlags::FULL);
|
||||||
display_flag!("password", FilterFlags::PASSWORD);
|
display_flag!("password", FilterFlags::PASSWORD);
|
||||||
display_flag!("noplayers", FilterFlags::NOPLAYERS);
|
display_flag!("noplayers", FilterFlags::NOPLAYERS);
|
||||||
@ -330,10 +330,10 @@ mod tests {
|
|||||||
flags: FilterFlags::PASSWORD,
|
flags: FilterFlags::PASSWORD,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
parse_empty(flags_mask: FilterFlags::NOT_EMPTY) {
|
parse_empty(flags_mask: FilterFlags::EMPTY) {
|
||||||
b"\\empty\\0" => {}
|
b"\\empty\\0" => {}
|
||||||
b"\\empty\\1" => {
|
b"\\empty\\1" => {
|
||||||
flags: FilterFlags::NOT_EMPTY,
|
flags: FilterFlags::EMPTY,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
parse_full(flags_mask: FilterFlags::FULL) {
|
parse_full(flags_mask: FilterFlags::FULL) {
|
||||||
@ -459,8 +459,8 @@ mod tests {
|
|||||||
"0.0.0.0:0" => b"\\players\\8\\max\\8"
|
"0.0.0.0:0" => b"\\players\\8\\max\\8"
|
||||||
};
|
};
|
||||||
matches!(servers, b"", 0, 1, 2);
|
matches!(servers, b"", 0, 1, 2);
|
||||||
matches!(servers, b"\\empty\\0", 0);
|
matches!(servers, b"\\empty\\0", 1, 2);
|
||||||
matches!(servers, b"\\empty\\1", 1, 2);
|
matches!(servers, b"\\empty\\1", 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
|
Loading…
x
Reference in New Issue
Block a user