mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2026-04-25 19:43:22 +00:00
Merge branch 'demo-fix-custom-maps' into 'master'
Search for map and gametype after addons are loaded when watching replays See merge request KartKrew/Kart!1211
This commit is contained in:
commit
82a4af03e2
1 changed files with 15 additions and 13 deletions
28
src/g_demo.c
28
src/g_demo.c
|
|
@ -3207,24 +3207,11 @@ void G_DoPlayDemo(const char *defdemoname)
|
|||
}
|
||||
demobuf.p += 4; // "PLAY"
|
||||
READSTRINGN(demobuf.p, mapname, sizeof(mapname)); // gamemap
|
||||
gamemap = G_MapNumber(mapname)+1;
|
||||
demobuf.p += 16; // mapmd5
|
||||
|
||||
demoflags = READUINT8(demobuf.p);
|
||||
|
||||
READSTRINGN(demobuf.p, gtname, sizeof(gtname)); // gametype
|
||||
i = G_GetGametypeByName(gtname);
|
||||
if (i < 0)
|
||||
{
|
||||
snprintf(msg, 1024, M_GetText("%s is in a gametype that is not currently loaded and cannot be played.\n"), pdemoname);
|
||||
CONS_Alert(CONS_ERROR, "%s", msg);
|
||||
M_StartMessage(msg, NULL, MM_NOTHING);
|
||||
Z_Free(pdemoname);
|
||||
Z_Free(demobuf.buffer);
|
||||
demo.playback = false;
|
||||
return;
|
||||
}
|
||||
G_SetGametype(i);
|
||||
|
||||
numlaps = READUINT8(demobuf.p);
|
||||
|
||||
|
|
@ -3283,6 +3270,21 @@ void G_DoPlayDemo(const char *defdemoname)
|
|||
}
|
||||
}
|
||||
|
||||
gamemap = G_MapNumber(mapname)+1;
|
||||
|
||||
i = G_GetGametypeByName(gtname);
|
||||
if (i < 0)
|
||||
{
|
||||
snprintf(msg, 1024, M_GetText("%s is in a gametype that is not currently loaded and cannot be played.\n"), pdemoname);
|
||||
CONS_Alert(CONS_ERROR, "%s", msg);
|
||||
M_StartMessage(msg, NULL, MM_NOTHING);
|
||||
Z_Free(pdemoname);
|
||||
Z_Free(demobuf.buffer);
|
||||
demo.playback = false;
|
||||
return;
|
||||
}
|
||||
G_SetGametype(i);
|
||||
|
||||
// character list
|
||||
demo.skinlist = G_LoadDemoSkins(&demobuf, &demo.numskins, true);
|
||||
if (!demo.skinlist)
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue