diff --git a/source/duke3d/src/player.cpp b/source/duke3d/src/player.cpp index 7eae47504..b94224da5 100644 --- a/source/duke3d/src/player.cpp +++ b/source/duke3d/src/player.cpp @@ -3322,6 +3322,21 @@ void P_GetInput(int const playerNum) } } + if (pPlayer->return_to_center > 0) + pPlayer->return_to_center--; + + if (pPlayer->hard_landing) + { + pPlayer->return_to_center = 9; + thisPlayer.horizRecenter = true; + } + + if (pPlayer->hard_landing > 0) + { + thisPlayer.horizSkew = fix16_from_int(-(pPlayer->hard_landing << 4)); + pPlayer->hard_landing--; + } + // A horiz diff of 128 equal 45 degrees, so we convert horiz to 1024 angle units if (thisPlayer.horizAngleAdjust) @@ -5697,10 +5712,7 @@ RECHECK: G_ActivateBySector(pPlayer->cursectnum, pPlayer->i); } - if (pPlayer->return_to_center > 0) - pPlayer->return_to_center--; - - if (TEST_SYNC_KEY(playerBits, SK_CENTER_VIEW) || pPlayer->hard_landing) + if (TEST_SYNC_KEY(playerBits, SK_CENTER_VIEW)) if (VM_OnEvent(EVENT_RETURNTOCENTER, pPlayer->i,playerNum) == 0) { pPlayer->return_to_center = 9; @@ -5745,12 +5757,6 @@ RECHECK: } } - if (pPlayer->hard_landing > 0) - { - thisPlayer.horizSkew = fix16_from_int(-(pPlayer->hard_landing << 4)); - pPlayer->hard_landing--; - } - //Shooting code/changes if (pPlayer->show_empty_weapon > 0)