mirror of
https://github.com/DrBeef/Raze.git
synced 2024-11-26 14:01:05 +00:00
- SW: Remove q16horizbase
and apply q16horizoff
in draw code like Duke & Blood.
* Standardisation is needed here for upcoming horizon changes.
This commit is contained in:
parent
082336e5f8
commit
0e3604ac9e
3 changed files with 11 additions and 17 deletions
|
@ -1649,13 +1649,16 @@ drawscreen(PLAYERp pp, double smoothratio)
|
|||
fixed_t oang = camerapp->oq16ang + camerapp->oq16look_ang;
|
||||
fixed_t ang = camerapp->q16ang + camerapp->q16look_ang;
|
||||
tq16ang = oang + xs_CRoundToInt(fmulscale16(NORM_Q16ANGLE(ang + dang - oang) - dang, smoothratio));
|
||||
tq16horiz = camerapp->oq16horiz + xs_CRoundToInt(fmulscale16(camerapp->q16horiz - camerapp->oq16horiz, smoothratio));
|
||||
|
||||
fixed_t ohoriz = camerapp->oq16horiz + camerapp->oq16horizoff;
|
||||
fixed_t horiz = camerapp->q16horiz + camerapp->q16horizoff;
|
||||
tq16horiz = ohoriz + xs_CRoundToInt(fmulscale16(horiz - ohoriz, smoothratio));
|
||||
tq16rotscrnang = camerapp->oq16rotscrnang + xs_CRoundToInt(fmulscale16(NORM_Q16ANGLE(camerapp->q16rotscrnang + dang - camerapp->oq16rotscrnang) - dang, smoothratio));
|
||||
}
|
||||
else
|
||||
{
|
||||
tq16ang = pp->q16ang + pp->q16look_ang;
|
||||
tq16horiz = pp->q16horiz;
|
||||
tq16horiz = pp->q16horiz + pp->q16horizoff;
|
||||
tq16rotscrnang = pp->q16rotscrnang;
|
||||
}
|
||||
tsectnum = camerapp->cursectnum;
|
||||
|
|
|
@ -831,7 +831,7 @@ struct PLAYERstruct
|
|||
// interpolation
|
||||
int
|
||||
oposx, oposy, oposz;
|
||||
fixed_t oq16horiz, oq16ang;
|
||||
fixed_t oq16horiz, oq16horizoff, oq16ang;
|
||||
fixed_t oq16look_ang, oq16rotscrnang;
|
||||
|
||||
// holds last valid move position
|
||||
|
@ -882,7 +882,7 @@ struct PLAYERstruct
|
|||
|
||||
// variables that do not fit into sprite structure
|
||||
int hvel,tilt,tilt_dest;
|
||||
fixed_t q16horiz, q16horizbase, q16horizoff, q16ang;
|
||||
fixed_t q16horiz, q16horizoff, q16ang;
|
||||
fixed_t q16look_ang, q16rotscrnang;
|
||||
short recoil_amt;
|
||||
short recoil_speed;
|
||||
|
|
|
@ -1741,16 +1741,7 @@ DoPlayerHorizon(PLAYERp pp, fixed_t const q16horz, double const scaleAdjust)
|
|||
PlayerAutoLook(pp, scaleAdjust);
|
||||
|
||||
// apply default horizon from backend
|
||||
sethorizon(&pp->q16horizbase, q16horz, &pp->input.actions, scaleAdjust);
|
||||
|
||||
// bound adjust q16horizoff
|
||||
if (pp->q16horizbase + pp->q16horizoff < gi->playerHorizMin())
|
||||
pp->q16horizoff = gi->playerHorizMin() - pp->q16horizbase;
|
||||
else if (pp->q16horizbase + pp->q16horizoff > gi->playerHorizMax())
|
||||
pp->q16horizoff = gi->playerHorizMax() - pp->q16horizbase;
|
||||
|
||||
// add base and offsets
|
||||
pp->q16horiz = pp->q16horizbase + pp->q16horizoff;
|
||||
sethorizon(&pp->q16horiz, q16horz, &pp->input.actions, scaleAdjust);
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -6308,7 +6299,7 @@ void DoPlayerDeathCheckKeys(PLAYERp pp)
|
|||
sp->yrepeat = PLAYER_NINJA_YREPEAT;
|
||||
|
||||
//pp->tilt = 0;
|
||||
pp->q16horiz = pp->q16horizbase = 0;
|
||||
pp->q16horiz = 0;
|
||||
DoPlayerResetMovement(pp);
|
||||
u->ID = NINJA_RUN_R0;
|
||||
PlayerDeathReset(pp);
|
||||
|
@ -6981,6 +6972,7 @@ MoveSkipSavePos(void)
|
|||
pp->oposz = pp->posz;
|
||||
pp->oq16ang = pp->q16ang;
|
||||
pp->oq16horiz = pp->q16horiz;
|
||||
pp->oq16horizoff = pp->q16horizoff;
|
||||
pp->obob_z = pp->bob_z;
|
||||
pp->oq16look_ang = pp->q16look_ang;
|
||||
pp->oq16rotscrnang = pp->q16rotscrnang;
|
||||
|
@ -7360,7 +7352,7 @@ InitAllPlayers(void)
|
|||
|
||||
//getzsofslope(pfirst->cursectnum, pfirst->posx, pfirst->posy, &cz, &fz);
|
||||
//pfirst->posz = fz - PLAYER_HEIGHT;
|
||||
pfirst->q16horiz = pfirst->q16horizbase = 0;
|
||||
pfirst->q16horiz = 0;
|
||||
|
||||
// Initialize all [MAX_SW_PLAYERS] arrays here!
|
||||
for (pp = Player; pp < &Player[MAX_SW_PLAYERS]; pp++)
|
||||
|
@ -7376,7 +7368,6 @@ InitAllPlayers(void)
|
|||
|
||||
//pp->MaxHealth = 100;
|
||||
|
||||
pp->q16horizbase = pfirst->q16horizbase;
|
||||
pp->oldposx = 0;
|
||||
pp->oldposy = 0;
|
||||
pp->climb_ndx = 10;
|
||||
|
|
Loading…
Reference in a new issue