mirror of
https://git.do.srb2.org/STJr/SRB2.git
synced 2025-01-18 23:42:11 +00:00
Merge branch 'ploadflat-bruh-bruh' into 'master'
Fix P_AddLevelFlatRuntime again See merge request STJr/SRB2!717
This commit is contained in:
commit
72996a50bf
1 changed files with 19 additions and 20 deletions
|
@ -566,7 +566,7 @@ levelflat refers to an array of level flats,
|
|||
or NULL if we want to allocate it now.
|
||||
*/
|
||||
static INT32
|
||||
Ploadflat (levelflat_t *levelflat, const char *flatname)
|
||||
Ploadflat (levelflat_t *levelflat, const char *flatname, boolean resize)
|
||||
{
|
||||
#ifndef NO_PNG_LUMPS
|
||||
UINT8 buffer[8];
|
||||
|
@ -577,31 +577,26 @@ Ploadflat (levelflat_t *levelflat, const char *flatname)
|
|||
|
||||
size_t i;
|
||||
|
||||
if (levelflat)
|
||||
// Scan through the already found flats, return if it matches.
|
||||
for (i = 0; i < numlevelflats; i++)
|
||||
{
|
||||
// Scan through the already found flats, return if it matches.
|
||||
for (i = 0; i < numlevelflats; i++)
|
||||
{
|
||||
if (strnicmp(levelflat[i].name, flatname, 8) == 0)
|
||||
return i;
|
||||
}
|
||||
if (strnicmp(levelflat[i].name, flatname, 8) == 0)
|
||||
return i;
|
||||
}
|
||||
|
||||
#ifndef ZDEBUG
|
||||
CONS_Debug(DBG_SETUP, "flat #%03d: %s\n", atoi(sizeu1(numlevelflats)), levelflat->name);
|
||||
#endif
|
||||
|
||||
if (numlevelflats >= MAXLEVELFLATS)
|
||||
I_Error("Too many flats in level\n");
|
||||
|
||||
if (levelflat)
|
||||
levelflat += numlevelflats;
|
||||
else
|
||||
if (resize)
|
||||
{
|
||||
// allocate new flat memory
|
||||
levelflats = Z_Realloc(levelflats, (numlevelflats + 1) * sizeof(*levelflats), PU_LEVEL, NULL);
|
||||
levelflat = levelflats + numlevelflats;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (numlevelflats >= MAXLEVELFLATS)
|
||||
I_Error("Too many flats in level\n");
|
||||
|
||||
levelflat += numlevelflats;
|
||||
}
|
||||
|
||||
// Store the name.
|
||||
strlcpy(levelflat->name, flatname, sizeof (levelflat->name));
|
||||
|
@ -656,6 +651,10 @@ flatfound:
|
|||
levelflat->u.flat.baselumpnum = LUMPERROR;
|
||||
}
|
||||
|
||||
#ifndef ZDEBUG
|
||||
CONS_Debug(DBG_SETUP, "flat #%03d: %s\n", atoi(sizeu1(numlevelflats)), levelflat->name);
|
||||
#endif
|
||||
|
||||
return ( numlevelflats++ );
|
||||
}
|
||||
|
||||
|
@ -663,7 +662,7 @@ flatfound:
|
|||
// allocate an id for it, and set the levelflat (to speedup search)
|
||||
INT32 P_AddLevelFlat(const char *flatname, levelflat_t *levelflat)
|
||||
{
|
||||
return Ploadflat(levelflat, flatname);
|
||||
return Ploadflat(levelflat, flatname, false);
|
||||
}
|
||||
|
||||
// help function for Lua and $$$.sav reading
|
||||
|
@ -672,7 +671,7 @@ INT32 P_AddLevelFlat(const char *flatname, levelflat_t *levelflat)
|
|||
//
|
||||
INT32 P_AddLevelFlatRuntime(const char *flatname)
|
||||
{
|
||||
return Ploadflat(levelflats, flatname);
|
||||
return Ploadflat(levelflats, flatname, true);
|
||||
}
|
||||
|
||||
// help function for $$$.sav checking
|
||||
|
|
Loading…
Reference in a new issue