mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2026-03-09 20:56:43 +00:00
Sync pflags2, fix voice icon desyncs / other scary speculative desyncs!
This commit is contained in:
parent
85b2f8f933
commit
814976fbc2
2 changed files with 9 additions and 4 deletions
|
|
@ -316,6 +316,9 @@ static void SV_UpdateTempMute(player_t *player, boolean mute)
|
|||
{
|
||||
UINT8 buf[2];
|
||||
|
||||
if (mute == !!(player->pflags2 & PF2_SERVERTEMPMUTE))
|
||||
return;
|
||||
|
||||
buf[0] = player - players;
|
||||
buf[1] = (UINT8)(mute);
|
||||
SendNetXCmd(XD_SERVERTEMPMUTEPLAYER, &buf, 2);
|
||||
|
|
@ -337,18 +340,18 @@ void SV_UpdateTempMutes(void)
|
|||
|
||||
if (PR_IsKeyGuest(player->public_key))
|
||||
{
|
||||
if (cv_gamestochat.value && !(player->pflags2 & PF2_SERVERTEMPMUTE))
|
||||
if (cv_gamestochat.value)
|
||||
SV_UpdateTempMute(player, false);
|
||||
continue;
|
||||
}
|
||||
|
||||
serverplayer_t *stat = SV_GetStatsByPlayerIndex(i);
|
||||
|
||||
if (i == serverplayer || IsPlayerAdmin(i) && player->pflags2 & PF2_SERVERTEMPMUTE)
|
||||
if (i == serverplayer || IsPlayerAdmin(i))
|
||||
SV_UpdateTempMute(player, false);
|
||||
else if (stat->finishedrounds >= (UINT32)cv_gamestochat.value && player->pflags2 & PF2_SERVERTEMPMUTE)
|
||||
else if (stat->finishedrounds >= (UINT32)cv_gamestochat.value)
|
||||
SV_UpdateTempMute(player, false);
|
||||
else if (stat->finishedrounds < (UINT32)cv_gamestochat.value && !(player->pflags2 & PF2_SERVERTEMPMUTE))
|
||||
else if (stat->finishedrounds < (UINT32)cv_gamestochat.value)
|
||||
SV_UpdateTempMute(player, true);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -245,6 +245,7 @@ static void P_NetArchivePlayers(savebuffer_t *save)
|
|||
|
||||
WRITEUINT8(save->p, players[i].playerstate);
|
||||
WRITEUINT32(save->p, players[i].pflags);
|
||||
WRITEUINT32(save->p, players[i].pflags2);
|
||||
WRITEUINT8(save->p, players[i].panim);
|
||||
WRITEUINT8(save->p, players[i].spectator);
|
||||
WRITEUINT32(save->p, players[i].spectatewait);
|
||||
|
|
@ -977,6 +978,7 @@ static void P_NetUnArchivePlayers(savebuffer_t *save)
|
|||
|
||||
players[i].playerstate = (playerstate_t)READUINT8(save->p);
|
||||
players[i].pflags = READUINT32(save->p);
|
||||
players[i].pflags2 = READUINT32(save->p);
|
||||
players[i].panim = (panim_t)READUINT8(save->p);
|
||||
players[i].spectator = READUINT8(save->p);
|
||||
players[i].spectatewait = READUINT32(save->p);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue