From 88fb22d688da8371e6eb03bb3358ded3570c1a6a Mon Sep 17 00:00:00 2001 From: Jaime Passos Date: Thu, 14 Nov 2019 22:14:40 -0300 Subject: [PATCH] Yeah, yeah... --- src/d_clisrv.c | 8 ++++++++ src/d_clisrv.h | 1 + src/p_inter.c | 4 ++++ src/p_user.c | 7 +++++++ 4 files changed, 20 insertions(+) diff --git a/src/d_clisrv.c b/src/d_clisrv.c index a92619a34..446eef928 100644 --- a/src/d_clisrv.c +++ b/src/d_clisrv.c @@ -610,6 +610,11 @@ static inline void resynch_write_player(resynch_pak *rsp, const size_t i) rsp->health = LONG(players[i].mo->health); rsp->angle = (angle_t)LONG(players[i].mo->angle); +#ifdef ROTSPRITE + rsp->rollangle = (angle_t)LONG(players[i].mo->rollangle); +#else + rsp->rollangle = 0; +#endif rsp->x = LONG(players[i].mo->x); rsp->y = LONG(players[i].mo->y); rsp->z = LONG(players[i].mo->z); @@ -760,6 +765,9 @@ static void resynch_read_player(resynch_pak *rsp) //At this point, the player should have a body, whether they were respawned or not. P_UnsetThingPosition(players[i].mo); players[i].mo->angle = (angle_t)LONG(rsp->angle); +#ifdef ROTSPRITE + players[i].mo->rollangle = (angle_t)LONG(rsp->rollangle); +#endif players[i].mo->eflags = (UINT16)SHORT(rsp->eflags); players[i].mo->flags = LONG(rsp->flags); players[i].mo->flags2 = LONG(rsp->flags2); diff --git a/src/d_clisrv.h b/src/d_clisrv.h index d7c210895..5f09d0262 100644 --- a/src/d_clisrv.h +++ b/src/d_clisrv.h @@ -255,6 +255,7 @@ typedef struct INT32 health; angle_t angle; + angle_t rollangle; fixed_t x; fixed_t y; fixed_t z; diff --git a/src/p_inter.c b/src/p_inter.c index b0a401b10..0c707f837 100644 --- a/src/p_inter.c +++ b/src/p_inter.c @@ -3002,6 +3002,10 @@ static inline void P_NiGHTSDamage(mobj_t *target, mobj_t *source) P_SetPlayerMobjState(target, S_PLAY_NIGHTS_STUN); S_StartSound(target, sfx_nghurt); +#ifdef ROTSPRITE + player->mo->rollangle = 0; +#endif + if (oldnightstime > 10*TICRATE && player->nightstime < 10*TICRATE) { diff --git a/src/p_user.c b/src/p_user.c index 3c481e7e2..760f9a42d 100644 --- a/src/p_user.c +++ b/src/p_user.c @@ -636,6 +636,10 @@ static void P_DeNightserizePlayer(player_t *player) player->marebonuslap = 0; player->flyangle = 0; player->anotherflyangle = 0; +#ifdef ROTSPRITE + player->mo->rollangle = 0; +#endif + P_SetTarget(&player->mo->target, NULL); P_SetTarget(&player->axis1, P_SetTarget(&player->axis2, NULL)); @@ -762,6 +766,9 @@ void P_NightserizePlayer(player_t *player, INT32 nighttime) player->secondjump = 0; player->flyangle = 0; player->anotherflyangle = 0; +#ifdef ROTSPRITE + player->mo->rollangle = 0; +#endif player->powers[pw_shield] = SH_NONE; player->powers[pw_super] = 0;