mirror of
https://github.com/ZDoom/Raze.git
synced 2024-11-15 08:51:24 +00:00
RR: Fix hard landing from preventing vertical mouse movement with player input tied to frame-rate.
This commit is contained in:
parent
6dcd83b734
commit
4bc105ec07
1 changed files with 32 additions and 20 deletions
|
@ -3506,6 +3506,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
|
// A horiz diff of 128 equal 45 degrees, so we convert horiz to 1024 angle units
|
||||||
|
|
||||||
if (thisPlayer.horizAngleAdjust)
|
if (thisPlayer.horizAngleAdjust)
|
||||||
|
@ -4126,6 +4141,21 @@ void P_DHGetInput(int const playerNum)
|
||||||
if (pPlayer->cursectnum >= 0 && sector[pPlayer->cursectnum].hitag == 2003)
|
if (pPlayer->cursectnum >= 0 && sector[pPlayer->cursectnum].hitag == 2003)
|
||||||
input.fvel >>= 1;
|
input.fvel >>= 1;
|
||||||
|
|
||||||
|
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
|
// A horiz diff of 128 equal 45 degrees, so we convert horiz to 1024 angle units
|
||||||
|
|
||||||
if (thisPlayer.horizAngleAdjust)
|
if (thisPlayer.horizAngleAdjust)
|
||||||
|
@ -8704,10 +8734,7 @@ HORIZONLY:;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pPlayer->return_to_center > 0)
|
if (TEST_SYNC_KEY(playerBits, SK_CENTER_VIEW))
|
||||||
pPlayer->return_to_center--;
|
|
||||||
|
|
||||||
if (TEST_SYNC_KEY(playerBits, SK_CENTER_VIEW) || pPlayer->hard_landing)
|
|
||||||
if (VM_OnEvent(EVENT_RETURNTOCENTER, pPlayer->i,playerNum) == 0)
|
if (VM_OnEvent(EVENT_RETURNTOCENTER, pPlayer->i,playerNum) == 0)
|
||||||
{
|
{
|
||||||
pPlayer->return_to_center = 9;
|
pPlayer->return_to_center = 9;
|
||||||
|
@ -8756,12 +8783,6 @@ HORIZONLY:;
|
||||||
pPlayer->q16horiz -= F16(delta);
|
pPlayer->q16horiz -= F16(delta);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pPlayer->hard_landing > 0)
|
|
||||||
{
|
|
||||||
thisPlayer.horizSkew = fix16_from_int(-(pPlayer->hard_landing << 4));
|
|
||||||
pPlayer->hard_landing--;
|
|
||||||
}
|
|
||||||
|
|
||||||
//Shooting code/changes
|
//Shooting code/changes
|
||||||
|
|
||||||
if (pPlayer->show_empty_weapon > 0)
|
if (pPlayer->show_empty_weapon > 0)
|
||||||
|
@ -9357,10 +9378,7 @@ void P_DHProcessInput(int playerNum)
|
||||||
A_GetFurthestAngle(pPlayer->i, 8) < 512);
|
A_GetFurthestAngle(pPlayer->i, 8) < 512);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pPlayer->return_to_center > 0)
|
if (TEST_SYNC_KEY(playerBits, SK_CENTER_VIEW))
|
||||||
pPlayer->return_to_center--;
|
|
||||||
|
|
||||||
if (TEST_SYNC_KEY(playerBits, SK_CENTER_VIEW) || pPlayer->hard_landing)
|
|
||||||
{
|
{
|
||||||
pPlayer->return_to_center = 9;
|
pPlayer->return_to_center = 9;
|
||||||
thisPlayer.horizRecenter = true;
|
thisPlayer.horizRecenter = true;
|
||||||
|
@ -9396,12 +9414,6 @@ void P_DHProcessInput(int playerNum)
|
||||||
pPlayer->q16horiz -= F16(delta);
|
pPlayer->q16horiz -= F16(delta);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pPlayer->hard_landing > 0)
|
|
||||||
{
|
|
||||||
thisPlayer.horizSkew = fix16_from_int(-(pPlayer->hard_landing << 4));
|
|
||||||
pPlayer->hard_landing--;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (TEST_SYNC_KEY(playerBits, SK_FIRE))
|
if (TEST_SYNC_KEY(playerBits, SK_FIRE))
|
||||||
A_DHShoot(playerNum);
|
A_DHShoot(playerNum);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue