equal
deleted
inserted
replaced
1 use super::coretypes::ClientId; |
1 use super::coretypes::ClientId; |
2 use bitflags::*; |
2 use bitflags::*; |
3 |
3 |
4 bitflags! { |
4 bitflags! { |
5 pub struct ClientFlags: u8 { |
5 pub struct ClientFlags: u16 { |
6 const IS_ADMIN = 0b0000_0001; |
6 const IS_ADMIN = 0b0000_0001; |
7 const IS_MASTER = 0b0000_0010; |
7 const IS_MASTER = 0b0000_0010; |
8 const IS_READY = 0b0000_0100; |
8 const IS_READY = 0b0000_0100; |
9 const IS_IN_GAME = 0b0000_1000; |
9 const IS_IN_GAME = 0b0000_1000; |
10 const IS_JOINED_MID_GAME = 0b0001_0000; |
10 const IS_JOINED_MID_GAME = 0b0001_0000; |
11 const IS_CHECKER = 0b0010_0000; |
11 const IS_CHECKER = 0b0010_0000; |
12 const IS_CONTRIBUTOR = 0b0100_0000; |
12 const IS_CONTRIBUTOR = 0b0100_0000; |
13 const HAS_SUPER_POWER = 0b1000_0000; |
13 const HAS_SUPER_POWER = 0b1000_0000; |
|
14 const IS_REGISTERED = 0b0001_0000_0000; |
14 |
15 |
15 const NONE = 0b0000_0000; |
16 const NONE = 0b0000_0000; |
16 const DEFAULT = Self::NONE.bits; |
17 const DEFAULT = Self::NONE.bits; |
17 } |
18 } |
18 } |
19 } |
72 self.contains(ClientFlags::IS_CONTRIBUTOR) |
73 self.contains(ClientFlags::IS_CONTRIBUTOR) |
73 } |
74 } |
74 pub fn has_super_power(&self) -> bool { |
75 pub fn has_super_power(&self) -> bool { |
75 self.contains(ClientFlags::HAS_SUPER_POWER) |
76 self.contains(ClientFlags::HAS_SUPER_POWER) |
76 } |
77 } |
|
78 pub fn is_registered(&self) -> bool { |
|
79 self.contains(ClientFlags::IS_REGISTERED) |
|
80 } |
77 |
81 |
78 pub fn set_is_admin(&mut self, value: bool) { |
82 pub fn set_is_admin(&mut self, value: bool) { |
79 self.set(ClientFlags::IS_ADMIN, value) |
83 self.set(ClientFlags::IS_ADMIN, value) |
80 } |
84 } |
81 pub fn set_is_master(&mut self, value: bool) { |
85 pub fn set_is_master(&mut self, value: bool) { |
97 self.set(ClientFlags::IS_CONTRIBUTOR, value) |
101 self.set(ClientFlags::IS_CONTRIBUTOR, value) |
98 } |
102 } |
99 pub fn set_has_super_power(&mut self, value: bool) { |
103 pub fn set_has_super_power(&mut self, value: bool) { |
100 self.set(ClientFlags::HAS_SUPER_POWER, value) |
104 self.set(ClientFlags::HAS_SUPER_POWER, value) |
101 } |
105 } |
|
106 pub fn set_is_registered(&mut self, value: bool) { |
|
107 self.set(ClientFlags::IS_REGISTERED, value) |
|
108 } |
102 } |
109 } |