mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2025-10-30 08:01:28 +00:00
Remove legacy non-json Standings handling
This commit is contained in:
parent
841fc2472c
commit
c389922f69
1 changed files with 9 additions and 46 deletions
|
|
@ -235,8 +235,8 @@ static ticcmd_t oldcmd[MAXPLAYERS];
|
||||||
#define DW_EXTRASTUFF 0xFE // Numbers below this are reserved for writing player slot data
|
#define DW_EXTRASTUFF 0xFE // Numbers below this are reserved for writing player slot data
|
||||||
|
|
||||||
// Below consts are only used for demo extrainfo sections
|
// Below consts are only used for demo extrainfo sections
|
||||||
#define DW_STANDING 0x00
|
#define DW_DEPRECATED 0x00
|
||||||
#define DW_STANDING2 0x01
|
#define DW_STANDINGS 0x01
|
||||||
|
|
||||||
// For time attack ghosts
|
// For time attack ghosts
|
||||||
#define GZT_XYZ 0x01
|
#define GZT_XYZ 0x01
|
||||||
|
|
@ -2188,7 +2188,7 @@ void srb2::write_current_demo_standings(const srb2::StandingsJson& standings)
|
||||||
Vector<std::byte> ubjson = value.to_ubjson();
|
Vector<std::byte> ubjson = value.to_ubjson();
|
||||||
uint32_t bytes = ubjson.size();
|
uint32_t bytes = ubjson.size();
|
||||||
|
|
||||||
WRITEUINT8(demobuf.p, DW_STANDING2);
|
WRITEUINT8(demobuf.p, DW_STANDINGS);
|
||||||
|
|
||||||
WRITEUINT32(demobuf.p, bytes);
|
WRITEUINT32(demobuf.p, bytes);
|
||||||
WRITEMEM(demobuf.p, (UINT8*)ubjson.data(), bytes);
|
WRITEMEM(demobuf.p, (UINT8*)ubjson.data(), bytes);
|
||||||
|
|
@ -2402,11 +2402,10 @@ void G_LoadDemoInfo(menudemo_t *pdemo, boolean allownonmultiplayer)
|
||||||
{
|
{
|
||||||
savebuffer_t info = {0};
|
savebuffer_t info = {0};
|
||||||
UINT8 *extrainfo_p;
|
UINT8 *extrainfo_p;
|
||||||
UINT8 version, subversion, worknumskins, skinid;
|
UINT8 version, subversion, worknumskins;
|
||||||
UINT16 pdemoflags;
|
UINT16 pdemoflags;
|
||||||
democharlist_t *skinlist = NULL;
|
democharlist_t *skinlist = NULL;
|
||||||
UINT16 pdemoversion, count;
|
UINT16 pdemoversion, count;
|
||||||
UINT16 legacystandingplayercount;
|
|
||||||
UINT32 num_classes;
|
UINT32 num_classes;
|
||||||
char mapname[MAXMAPLUMPNAME],gtname[MAXGAMETYPELENGTH];
|
char mapname[MAXMAPLUMPNAME],gtname[MAXGAMETYPELENGTH];
|
||||||
INT32 i;
|
INT32 i;
|
||||||
|
|
@ -2574,7 +2573,6 @@ void G_LoadDemoInfo(menudemo_t *pdemo, boolean allownonmultiplayer)
|
||||||
pdemo->gp = true;
|
pdemo->gp = true;
|
||||||
|
|
||||||
// Read standings!
|
// Read standings!
|
||||||
legacystandingplayercount = 0;
|
|
||||||
|
|
||||||
info.p = extrainfo_p;
|
info.p = extrainfo_p;
|
||||||
|
|
||||||
|
|
@ -2584,48 +2582,13 @@ void G_LoadDemoInfo(menudemo_t *pdemo, boolean allownonmultiplayer)
|
||||||
|
|
||||||
switch (extrainfotag)
|
switch (extrainfotag)
|
||||||
{
|
{
|
||||||
case DW_STANDING:
|
case DW_DEPRECATED:
|
||||||
{
|
{
|
||||||
// This is the only extrainfo tag that is not length prefixed. All others must be.
|
// Because this isn't historically length-prefixed,
|
||||||
constexpr size_t kLegacyStandingSize = 1+16+1+16+4;
|
// we can't free this one value up. Sorry!
|
||||||
if (P_SaveBufferRemaining(&info) < kLegacyStandingSize)
|
goto corrupt;
|
||||||
{
|
|
||||||
goto corrupt;
|
|
||||||
}
|
|
||||||
if (legacystandingplayercount >= MAXPLAYERS)
|
|
||||||
{
|
|
||||||
info.p += kLegacyStandingSize;
|
|
||||||
break; // switch
|
|
||||||
}
|
|
||||||
char temp[16+1];
|
|
||||||
|
|
||||||
pdemo->standings[legacystandingplayercount].ranking = READUINT8(info.p);
|
|
||||||
|
|
||||||
// Name
|
|
||||||
info.p += copy_fixed_buf(pdemo->standings[legacystandingplayercount].name, info.p, 16);
|
|
||||||
|
|
||||||
// Skin
|
|
||||||
skinid = READUINT8(info.p);
|
|
||||||
if (skinid > worknumskins)
|
|
||||||
skinid = 0;
|
|
||||||
pdemo->standings[legacystandingplayercount].skin = skinlist[skinid].mapping;
|
|
||||||
|
|
||||||
// Color
|
|
||||||
info.p += copy_fixed_buf(temp, info.p, 16);
|
|
||||||
for (i = 0; i < numskincolors; i++)
|
|
||||||
if (!stricmp(skincolors[i].name,temp)) // SRB2kart
|
|
||||||
{
|
|
||||||
pdemo->standings[legacystandingplayercount].color = i;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Score/time/whatever
|
|
||||||
pdemo->standings[legacystandingplayercount].timeorscore = READUINT32(info.p);
|
|
||||||
|
|
||||||
legacystandingplayercount++;
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
case DW_STANDING2:
|
case DW_STANDINGS:
|
||||||
{
|
{
|
||||||
if (P_SaveBufferRemaining(&info) < 4)
|
if (P_SaveBufferRemaining(&info) < 4)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue