mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2026-05-09 18:31:53 +00:00
G_SaveGameData: Remove the "writtengamedata" secondary counter
Instead, subtract from the associated "numgamedata" variable and check if nonzero to continue.
This commit is contained in:
parent
8d9b42e49b
commit
0b5124b8c4
1 changed files with 10 additions and 12 deletions
22
src/g_game.c
22
src/g_game.c
|
|
@ -5220,7 +5220,7 @@ void G_SaveGameData(void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
length += 4 + (numgamedatacups * (4+16));
|
length += 4 + (numgamedatacups * (MAXCUPNAME+4));
|
||||||
|
|
||||||
if (P_SaveBufferAlloc(&save, length) == false)
|
if (P_SaveBufferAlloc(&save, length) == false)
|
||||||
{
|
{
|
||||||
|
|
@ -5313,11 +5313,10 @@ void G_SaveGameData(void)
|
||||||
// Main records
|
// Main records
|
||||||
WRITEUINT32(save.p, numgamedatamapheaders); // 4
|
WRITEUINT32(save.p, numgamedatamapheaders); // 4
|
||||||
|
|
||||||
|
if (numgamedatamapheaders)
|
||||||
{
|
{
|
||||||
// numgamedatamapheaders * (MAXMAPLUMPNAME+1+4+4)
|
// numgamedatamapheaders * (MAXMAPLUMPNAME+1+4+4)
|
||||||
|
|
||||||
UINT32 writtengamedatamapheaders = 0;
|
|
||||||
|
|
||||||
for (i = 0; i < nummapheaders; i++)
|
for (i = 0; i < nummapheaders; i++)
|
||||||
{
|
{
|
||||||
if (!(mapheaderinfo[i]->records.mapvisited & MV_MAX))
|
if (!(mapheaderinfo[i]->records.mapvisited & MV_MAX))
|
||||||
|
|
@ -5337,11 +5336,11 @@ void G_SaveGameData(void)
|
||||||
WRITEUINT32(save.p, mapheaderinfo[i]->records.time);
|
WRITEUINT32(save.p, mapheaderinfo[i]->records.time);
|
||||||
WRITEUINT32(save.p, mapheaderinfo[i]->records.lap);
|
WRITEUINT32(save.p, mapheaderinfo[i]->records.lap);
|
||||||
|
|
||||||
if (++writtengamedatamapheaders >= numgamedatamapheaders)
|
if (--numgamedatamapheaders == 0)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (writtengamedatamapheaders < numgamedatamapheaders)
|
if (numgamedatamapheaders)
|
||||||
{
|
{
|
||||||
for (unloadedmap = unloadedmapheaders; unloadedmap; unloadedmap = unloadedmap->next)
|
for (unloadedmap = unloadedmapheaders; unloadedmap; unloadedmap = unloadedmap->next)
|
||||||
{
|
{
|
||||||
|
|
@ -5355,7 +5354,7 @@ void G_SaveGameData(void)
|
||||||
WRITEUINT32(save.p, unloadedmap->records.time);
|
WRITEUINT32(save.p, unloadedmap->records.time);
|
||||||
WRITEUINT32(save.p, unloadedmap->records.lap);
|
WRITEUINT32(save.p, unloadedmap->records.lap);
|
||||||
|
|
||||||
if (++writtengamedatamapheaders >= numgamedatamapheaders)
|
if (--numgamedatamapheaders == 0)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -5364,10 +5363,9 @@ void G_SaveGameData(void)
|
||||||
|
|
||||||
WRITEUINT32(save.p, numgamedatacups); // 4
|
WRITEUINT32(save.p, numgamedatacups); // 4
|
||||||
|
|
||||||
|
if (numgamedatacups)
|
||||||
{
|
{
|
||||||
// (numgamedatacups * (4+16))
|
// numgamedatacups * (MAXCUPNAME+4)
|
||||||
|
|
||||||
UINT32 writtengamedatacups = 0;
|
|
||||||
|
|
||||||
#define WRITECUPWINDATA(maybeunloadedcup) \
|
#define WRITECUPWINDATA(maybeunloadedcup) \
|
||||||
for (i = 0; i < KARTGP_MAX; i++) \
|
for (i = 0; i < KARTGP_MAX; i++) \
|
||||||
|
|
@ -5389,11 +5387,11 @@ void G_SaveGameData(void)
|
||||||
|
|
||||||
WRITECUPWINDATA(cup);
|
WRITECUPWINDATA(cup);
|
||||||
|
|
||||||
if (++writtengamedatacups >= numgamedatacups)
|
if (--numgamedatacups == 0)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (writtengamedatacups < numgamedatacups)
|
if (numgamedatacups)
|
||||||
{
|
{
|
||||||
for (unloadedcup = unloadedcupheaders; unloadedcup; unloadedcup = unloadedcup->next)
|
for (unloadedcup = unloadedcupheaders; unloadedcup; unloadedcup = unloadedcup->next)
|
||||||
{
|
{
|
||||||
|
|
@ -5404,7 +5402,7 @@ void G_SaveGameData(void)
|
||||||
|
|
||||||
WRITECUPWINDATA(unloadedcup);
|
WRITECUPWINDATA(unloadedcup);
|
||||||
|
|
||||||
if (++writtengamedatacups >= numgamedatacups)
|
if (--numgamedatacups == 0)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue