equal
deleted
inserted
replaced
119 } |
119 } |
120 |
120 |
121 #[derive(Debug)] |
121 #[derive(Debug)] |
122 pub enum StartGameError { |
122 pub enum StartGameError { |
123 NotEnoughClans, |
123 NotEnoughClans, |
124 NotEnoughTeams, |
|
125 NotReady, |
124 NotReady, |
126 AlreadyInGame, |
125 AlreadyInGame, |
127 } |
126 } |
128 |
127 |
129 #[derive(Debug)] |
128 #[derive(Debug)] |
249 #[cfg(not(feature = "official-server"))] |
248 #[cfg(not(feature = "official-server"))] |
250 client.set_is_admin(data.is_local_admin); |
249 client.set_is_admin(data.is_local_admin); |
251 |
250 |
252 #[cfg(feature = "official-server")] |
251 #[cfg(feature = "official-server")] |
253 { |
252 { |
254 client.set_is_registered(info.is_registered); |
253 client.set_is_registered(data.is_registered); |
255 client.set_is_admin(info.is_admin); |
254 client.set_is_admin(data.is_admin); |
256 client.set_is_contributor(info.is_contributor); |
255 client.set_is_contributor(data.is_contributor); |
257 } |
256 } |
258 |
257 |
259 self.clients.insert(client_id, client); |
258 self.clients.insert(client_id, client); |
260 } |
259 } |
261 } |
260 } |
651 Some(new_master_id) if new_master_id == self.client_id => Err(AlreadyMaster), |
650 Some(new_master_id) if new_master_id == self.client_id => Err(AlreadyMaster), |
652 Some(new_master_id) => { |
651 Some(new_master_id) => { |
653 let new_master = &mut self.server.clients[new_master_id]; |
652 let new_master = &mut self.server.clients[new_master_id]; |
654 if new_master.room_id == Some(self.room_id) { |
653 if new_master.room_id == Some(self.room_id) { |
655 self.server.clients[new_master_id].set_is_master(true); |
654 self.server.clients[new_master_id].set_is_master(true); |
656 let room = self.room_mut(); |
|
657 let old_master_id = self.room().master_id; |
655 let old_master_id = self.room().master_id; |
658 |
656 |
659 if let Some(master_id) = old_master_id { |
657 if let Some(master_id) = old_master_id { |
660 self.server.clients[master_id].set_is_master(false); |
658 self.server.clients[master_id].set_is_master(false); |
661 } |
659 } |