Ion Fury compatibility improvements

git-svn-id: https://svn.eduke32.com/eduke32@8559 1a8010ca-5511-0410-912e-c29ae57300e0
This commit is contained in:
terminx 2020-01-29 11:37:16 +00:00 committed by Christoph Oelckers
parent ae9b6915ce
commit d04bf2cfb9

View file

@ -5927,14 +5927,21 @@ MAIN_LOOP_RESTART:
// this is where we fill the input_t struct that is actually processed by P_ProcessInput()
auto const pPlayer = g_player[myconnectindex].ps;
int16_t const q16ang = fix16_to_int(pPlayer->q16ang);
auto const q16ang = fix16_to_int(pPlayer->q16ang);
auto & input = inputfifo[0][myconnectindex];
input = localInput;
input.fvel = mulscale9(localInput.fvel, sintable[(q16ang + 2560) & 2047])
+ mulscale9(localInput.svel, sintable[(q16ang + 2048) & 2047]) + (FURY ? 0 : pPlayer->fric.x);
input.svel = mulscale9(localInput.fvel, sintable[(q16ang + 2048) & 2047])
+ mulscale9(localInput.svel, sintable[(q16ang + 1536) & 2047]) + (FURY ? 0 : pPlayer->fric.y);
input.fvel = mulscale9(localInput.fvel, sintable[(q16ang + 2560) & 2047]) +
mulscale9(localInput.svel, sintable[(q16ang + 2048) & 2047]);
input.svel = mulscale9(localInput.fvel, sintable[(q16ang + 2048) & 2047]) +
mulscale9(localInput.svel, sintable[(q16ang + 1536) & 2047]);
if (FURY)
{
input.fvel += pPlayer->fric.x;
input.svel += pPlayer->fric.y;
}
localInput = {};
}