Make first-person and directionchar-off work as expected

This commit is contained in:
fickleheart 2019-12-08 15:05:44 -06:00
parent ebd2861593
commit eee0d42b1f

View file

@ -1374,7 +1374,7 @@ void G_BuildTiccmd(ticcmd_t *cmd, INT32 realtics, UINT8 ssplayer)
cmd->angleturn = (INT16)(*myangle >> 16); cmd->angleturn = (INT16)(*myangle >> 16);
// Adjust camera angle by player input // Adjust camera angle by player input
if (!forcestrafe && !turnheld[forplayer] && !player->climbing) if (!forcestrafe && camera.chase && !turnheld[forplayer] && !player->climbing)
{ {
fixed_t camadjustfactor = cv_cam_turnfacinginput[forplayer].value; //@TODO cvar fixed_t camadjustfactor = cv_cam_turnfacinginput[forplayer].value; //@TODO cvar
@ -1382,7 +1382,7 @@ void G_BuildTiccmd(ticcmd_t *cmd, INT32 realtics, UINT8 ssplayer)
*myangle -= cmd->sidemove * 50 * camadjustfactor; *myangle -= cmd->sidemove * 50 * camadjustfactor;
} }
if (abilitydirection && !player->climbing && !forcestrafe) if (abilitydirection && camera.chase && !player->climbing && !forcestrafe && (player->pflags & PF_DIRECTIONCHAR))
{ {
if (cmd->forwardmove || cmd->sidemove) if (cmd->forwardmove || cmd->sidemove)
{ {
@ -1400,7 +1400,7 @@ void G_BuildTiccmd(ticcmd_t *cmd, INT32 realtics, UINT8 ssplayer)
// Adjust camera angle to face player direction, depending on circumstances // Adjust camera angle to face player direction, depending on circumstances
// Nothing happens if cam left/right are held, so you can hold both to lock the camera in one direction // Nothing happens if cam left/right are held, so you can hold both to lock the camera in one direction
if (!forcestrafe && !turnheld[forplayer]) if (!forcestrafe && camera.chase && !turnheld[forplayer])
{ {
fixed_t camadjustfactor; fixed_t camadjustfactor;