Merge branch 'kickstartdemo' into 'master'

Kickstartaccel demo fix

See merge request KartKrew/Kart!438
This commit is contained in:
toaster 2021-05-27 16:51:04 -04:00
commit bac7de2ea7

View file

@ -347,6 +347,7 @@ void G_ReadDemoExtraData(void)
players[p].pflags &= ~(PF_KICKSTARTACCEL); players[p].pflags &= ~(PF_KICKSTARTACCEL);
if (extradata & 1) if (extradata & 1)
players[p].pflags |= PF_KICKSTARTACCEL; players[p].pflags |= PF_KICKSTARTACCEL;
//CONS_Printf("weaponpref is %d for player %d\n", extradata, p);
} }
p = READUINT8(demo_p); p = READUINT8(demo_p);
@ -2656,7 +2657,7 @@ void G_DoPlayDemo(char *defdemoname)
UINT32 randseed; UINT32 randseed;
char msg[1024]; char msg[1024];
boolean spectator; boolean spectator, kickstart;
UINT8 slots[MAXPLAYERS], kartspeed[MAXPLAYERS], kartweight[MAXPLAYERS], numslots = 0; UINT8 slots[MAXPLAYERS], kartspeed[MAXPLAYERS], kartweight[MAXPLAYERS], numslots = 0;
#if defined(SKIPERRORS) && !defined(DEVELOP) #if defined(SKIPERRORS) && !defined(DEVELOP)
@ -2925,16 +2926,8 @@ void G_DoPlayDemo(char *defdemoname)
while (p != 0xFF) while (p != 0xFF)
{ {
players[p].pflags &= ~PF_KICKSTARTACCEL; if ((spectator = (p & DEMO_SPECTATOR)))
if (p & DEMO_KICKSTART)
{ {
players[p].pflags |= PF_KICKSTARTACCEL;
p &= ~DEMO_KICKSTART;
}
spectator = false;
if (p & DEMO_SPECTATOR)
{
spectator = true;
p &= ~DEMO_SPECTATOR; p &= ~DEMO_SPECTATOR;
if (modeattacking) if (modeattacking)
@ -2949,6 +2942,10 @@ void G_DoPlayDemo(char *defdemoname)
return; return;
} }
} }
if ((kickstart = (p & DEMO_KICKSTART)))
p &= ~DEMO_KICKSTART;
slots[numslots] = p; numslots++; slots[numslots] = p; numslots++;
if (modeattacking && numslots > 1) if (modeattacking && numslots > 1)
@ -2968,6 +2965,10 @@ void G_DoPlayDemo(char *defdemoname)
playeringame[p] = true; playeringame[p] = true;
players[p].spectator = spectator; players[p].spectator = spectator;
if (kickstart)
players[p].pflags |= PF_KICKSTARTACCEL;
else
players[p].pflags &= ~PF_KICKSTARTACCEL;
// Name // Name
M_Memcpy(player_names[p],demo_p,16); M_Memcpy(player_names[p],demo_p,16);