diff --git a/client/src/lib.rs b/client/src/lib.rs index 511d32079e..a98e887bc7 100644 --- a/client/src/lib.rs +++ b/client/src/lib.rs @@ -137,6 +137,13 @@ impl Client { &mut self.state } + /// Remove all cached terrain + #[allow(dead_code)] + pub fn reset_terrain(&mut self) { + self.state.terrain_mut().clear(); + self.pending_chunks.clear(); + } + /// Get the player's entity. #[allow(dead_code)] pub fn entity(&self) -> EcsEntity { @@ -394,7 +401,7 @@ impl Client { self.pending_state_request = false; } ServerMsg::ForceState(state) => { - self.client_state = Some(dbg!(state)); + self.client_state = Some(state); } ServerMsg::Disconnect => { self.client_state = None; diff --git a/voxygen/src/menu/char_selection/mod.rs b/voxygen/src/menu/char_selection/mod.rs index cec06a2b4a..7b0d421116 100644 --- a/voxygen/src/menu/char_selection/mod.rs +++ b/voxygen/src/menu/char_selection/mod.rs @@ -45,7 +45,7 @@ impl PlayState for CharSelectionState { fn play(&mut self, _: Direction, global_state: &mut GlobalState) -> PlayStateResult { // Set up an fps clock. let mut clock = Clock::new(); - self.client.borrow_mut().state_mut().terrain_mut().clear(); + self.client.borrow_mut().reset_terrain(); while self.client.borrow().is_request_pending() || self.client.borrow().get_client_state() == Some(ClientState::Registered) diff --git a/voxygen/src/session.rs b/voxygen/src/session.rs index 239775cf28..ef1570b983 100644 --- a/voxygen/src/session.rs +++ b/voxygen/src/session.rs @@ -115,7 +115,7 @@ impl PlayState for SessionState { // Set up an fps clock. let mut clock = Clock::new(); - self.client.borrow_mut().state_mut().terrain_mut().clear(); + self.client.borrow_mut().reset_terrain(); // Load a few chunks. TODO: Remove this. /*