summaryrefslogtreecommitdiff
path: root/src/room.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/room.rs')
-rw-r--r--src/room.rs5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/room.rs b/src/room.rs
index 46948cb..bc5b651 100644
--- a/src/room.rs
+++ b/src/room.rs
@@ -181,14 +181,15 @@ impl <'a, 'b>Room<'a, 'b> {
self.world.fetch_mut::<Input>().actions.insert(player, control);
}
- pub fn add_player(&mut self, state: &PlayerState){
- let pre_player = state.construct(&self.world.fetch::<NewEntities>().encyclopedia);
+ pub fn add_player(&mut self, state: &PlayerState) -> Result<()> {
+ let pre_player = state.construct(&self.world.fetch::<NewEntities>().encyclopedia)?;
let spawn = match &state.pos {
RoomPos::Unknown => self.world.fetch::<SpawnPosition>().pos,
RoomPos::Pos(pos) => *pos,
RoomPos::Name(name) => *self.places.get(name).unwrap()
};
self.world.fetch_mut::<NewEntities>().to_build.push((spawn, pre_player));
+ Ok(())
}
pub fn remove_player(&mut self, id: &PlayerId) -> Result<PlayerState>{