Browse Source

Fix player controls only being applied for the first move

TheTermos 3 years ago
parent
commit
ebb721a476
2 changed files with 4 additions and 4 deletions
  1. 1 4
      src/client/client.cpp
  2. 3 0
      src/client/clientenvironment.cpp

+ 1 - 4
src/client/client.cpp

@@ -459,12 +459,9 @@ void Client::step(float dtime)
 	/*
 		Handle environment
 	*/
-	// Control local player (0ms)
 	LocalPlayer *player = m_env.getLocalPlayer();
-	assert(player);
-	player->applyControl(dtime, &m_env);
 
-	// Step environment
+	// Step environment (also handles player controls)
 	m_env.step(dtime);
 	m_sound->step(dtime);
 

+ 3 - 0
src/client/clientenvironment.cpp

@@ -216,6 +216,9 @@ void ClientEnvironment::step(float dtime)
 		*/
 
 		{
+			// Control local player
+			lplayer->applyControl(dtime_part, this);
+
 			// Apply physics
 			if (!free_move && !is_climbing) {
 				// Gravity