mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2026-04-27 04:21:47 +00:00
Add flickyAttacker and powerupvars_t to player_t, add to netsave
This commit is contained in:
parent
b35d0ae25e
commit
d737387132
4 changed files with 48 additions and 0 deletions
|
|
@ -439,6 +439,11 @@ typedef struct {
|
|||
boolean flip;
|
||||
} sonicloopvars_t;
|
||||
|
||||
// player_t struct for power-ups
|
||||
struct powerupvars_t {
|
||||
mobj_t *flickyController;
|
||||
};
|
||||
|
||||
// player_t struct for all alternative viewpoint variables
|
||||
struct altview_t
|
||||
{
|
||||
|
|
@ -756,6 +761,7 @@ struct player_t
|
|||
mobj_t *sliptideZipIndicator;
|
||||
mobj_t *whip;
|
||||
mobj_t *hand;
|
||||
mobj_t *flickyAttacker;
|
||||
|
||||
UINT8 instaShieldCooldown;
|
||||
UINT8 guardCooldown;
|
||||
|
|
@ -777,6 +783,7 @@ struct player_t
|
|||
|
||||
sonicloopvars_t loop;
|
||||
roundconditions_t roundconditions;
|
||||
powerupvars_t powerup;
|
||||
};
|
||||
|
||||
// WARNING FOR ANYONE ABOUT TO ADD SOMETHING TO THE PLAYER STRUCT, G_PlayerReborn WANTS YOU TO SUFFER
|
||||
|
|
|
|||
|
|
@ -8287,6 +8287,12 @@ void K_KartPlayerThink(player_t *player, ticcmd_t *cmd)
|
|||
if (player->hand && P_MobjWasRemoved(player->hand))
|
||||
P_SetTarget(&player->hand, NULL);
|
||||
|
||||
if (player->flickyAttacker && P_MobjWasRemoved(player->flickyAttacker))
|
||||
P_SetTarget(&player->flickyAttacker, NULL);
|
||||
|
||||
if (player->powerup.flickyController && P_MobjWasRemoved(player->powerup.flickyController))
|
||||
P_SetTarget(&player->powerup.flickyController, NULL);
|
||||
|
||||
if (player->spectator == false)
|
||||
{
|
||||
K_KartEbrakeVisuals(player);
|
||||
|
|
|
|||
|
|
@ -79,6 +79,8 @@ typedef enum
|
|||
RINGSHOOTER = 0x0100,
|
||||
WHIP = 0x0200,
|
||||
HAND = 0x0400,
|
||||
FLICKYATTACKER = 0x0800,
|
||||
FLICKYCONTROLLER = 0x1000,
|
||||
} player_saveflags;
|
||||
|
||||
static inline void P_ArchivePlayer(savebuffer_t *save)
|
||||
|
|
@ -319,6 +321,12 @@ static void P_NetArchivePlayers(savebuffer_t *save)
|
|||
if (players[i].ringShooter)
|
||||
flags |= RINGSHOOTER;
|
||||
|
||||
if (players[i].flickyAttacker)
|
||||
flags |= FLICKYATTACKER;
|
||||
|
||||
if (players[i].powerup.flickyController)
|
||||
flags |= FLICKYCONTROLLER;
|
||||
|
||||
WRITEUINT16(save->p, flags);
|
||||
|
||||
if (flags & SKYBOXVIEW)
|
||||
|
|
@ -351,6 +359,12 @@ static void P_NetArchivePlayers(savebuffer_t *save)
|
|||
if (flags & RINGSHOOTER)
|
||||
WRITEUINT32(save->p, players[i].ringShooter->mobjnum);
|
||||
|
||||
if (flags & FLICKYATTACKER)
|
||||
WRITEUINT32(save->p, players[i].flickyAttacker->mobjnum);
|
||||
|
||||
if (flags & FLICKYCONTROLLER)
|
||||
WRITEUINT32(save->p, players[i].powerup.flickyController->mobjnum);
|
||||
|
||||
WRITEUINT32(save->p, (UINT32)players[i].followitem);
|
||||
|
||||
WRITEUINT32(save->p, players[i].charflags);
|
||||
|
|
@ -754,6 +768,12 @@ static void P_NetUnArchivePlayers(savebuffer_t *save)
|
|||
if (flags & RINGSHOOTER)
|
||||
players[i].ringShooter = (mobj_t *)(size_t)READUINT32(save->p);
|
||||
|
||||
if (flags & FLICKYATTACKER)
|
||||
players[i].flickyAttacker = (mobj_t *)(size_t)READUINT32(save->p);
|
||||
|
||||
if (flags & FLICKYCONTROLLER)
|
||||
players[i].powerup.flickyController = (mobj_t *)(size_t)READUINT32(save->p);
|
||||
|
||||
players[i].followitem = (mobjtype_t)READUINT32(save->p);
|
||||
|
||||
//SetPlayerSkinByNum(i, players[i].skin);
|
||||
|
|
@ -5258,6 +5278,20 @@ static void P_RelinkPointers(void)
|
|||
if (!P_SetTarget(&players[i].ringShooter, P_FindNewPosition(temp)))
|
||||
CONS_Debug(DBG_GAMELOGIC, "ringShooter not found on player %d\n", i);
|
||||
}
|
||||
if (players[i].flickyAttacker)
|
||||
{
|
||||
temp = (UINT32)(size_t)players[i].flickyAttacker;
|
||||
players[i].flickyAttacker = NULL;
|
||||
if (!P_SetTarget(&players[i].flickyAttacker, P_FindNewPosition(temp)))
|
||||
CONS_Debug(DBG_GAMELOGIC, "flickyAttacker not found on player %d\n", i);
|
||||
}
|
||||
if (players[i].powerup.flickyController)
|
||||
{
|
||||
temp = (UINT32)(size_t)players[i].powerup.flickyController;
|
||||
players[i].powerup.flickyController = NULL;
|
||||
if (!P_SetTarget(&players[i].powerup.flickyController, P_FindNewPosition(temp)))
|
||||
CONS_Debug(DBG_GAMELOGIC, "powerup.flickyController not found on player %d\n", i);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -47,6 +47,7 @@ TYPEDEF (botvars_t);
|
|||
TYPEDEF (roundconditions_t);
|
||||
TYPEDEF (skybox_t);
|
||||
TYPEDEF (itemroulette_t);
|
||||
TYPEDEF (powerupvars_t);
|
||||
TYPEDEF (altview_t);
|
||||
TYPEDEF (player_t);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue