diff --git a/source/build/src/defs.cpp b/source/build/src/defs.cpp index 1a60d586c..d660511e2 100644 --- a/source/build/src/defs.cpp +++ b/source/build/src/defs.cpp @@ -539,7 +539,7 @@ static int32_t defsparser(scriptfile *script) break; } if (!check_tile("artfile", tile, script, cmdtokptr)) - TileFiles.LoadArtFile(fn, false, tile); + TileFiles.LoadArtFile(fn, nullptr, tile); } break; case T_SETUPTILE: diff --git a/source/core/textures/buildtiles.cpp b/source/core/textures/buildtiles.cpp index 9feec4851..7392ef603 100644 --- a/source/core/textures/buildtiles.cpp +++ b/source/core/textures/buildtiles.cpp @@ -145,7 +145,7 @@ void BuildTiles::AddTile(int tilenum, FTexture* tex, bool permap) // //=========================================================================== -void BuildTiles::AddTiles (int firsttile, TArray& RawData, bool permap) +void BuildTiles::AddTiles (int firsttile, TArray& RawData, const char *mapname) { const uint8_t *tiles = RawData.Data(); @@ -362,7 +362,7 @@ void BuildTiles::MakeCanvas(int tilenum, int width, int height) // //=========================================================================== -int BuildTiles::LoadArtFile(const char *fn, bool mapart, int firsttile) +int BuildTiles::LoadArtFile(const char *fn, const char *mapname, int firsttile) { auto old = FindFile(fn); if (old >= ArtFiles.Size()) // Do not process if already loaded. @@ -381,12 +381,12 @@ int BuildTiles::LoadArtFile(const char *fn, bool mapart, int firsttile) // Only load the data if the header is present if (CountTiles(fn, artptr) > 0) { - auto& descs = mapart ? PerMapArtFiles : ArtFiles; + auto& descs = mapname ? PerMapArtFiles : ArtFiles; auto file = new BuildArtFile; descs.Push(file); file->filename = fn; file->RawData = std::move(artdata); - AddTiles(firsttile, file->RawData, mapart); + AddTiles(firsttile, file->RawData, mapname); } } } @@ -417,11 +417,11 @@ void BuildTiles::LoadArtSet(const char* filename) for (int index = 0; index < MAXARTFILES_BASE; index++) { FStringf fn(filename, index); - LoadArtFile(fn, false); + LoadArtFile(fn, nullptr); } for (auto& addart : addedArt) { - LoadArtFile(addart, false); + LoadArtFile(addart, nullptr); } } @@ -664,7 +664,7 @@ void artSetupMapArt(const char* filename) for (bssize_t i = 0; i < MAXARTFILES_TOTAL - MAXARTFILES_BASE; i++) { FStringf fullname("%s_%02d.art", filename, i); - TileFiles.LoadArtFile(fullname, true); + TileFiles.LoadArtFile(fullname, filename); } TileFiles.SetupReverseTileMap(); } diff --git a/source/core/textures/buildtiles.h b/source/core/textures/buildtiles.h index e4834f62a..e4d731e17 100644 --- a/source/core/textures/buildtiles.h +++ b/source/core/textures/buildtiles.h @@ -293,7 +293,7 @@ struct BuildTiles void AddTile(int tilenum, FTexture* tex, bool permap = false); - void AddTiles(int firsttile, TArray& store, bool permap); + void AddTiles(int firsttile, TArray& store, const char *mapname); void AddFile(BuildArtFile* bfd, bool permap) { @@ -304,7 +304,7 @@ struct BuildTiles { return ArtFiles.FindEx([filename](const BuildArtFile* element) { return filename.CompareNoCase(element->filename) == 0; }); } - int LoadArtFile(const char* file, bool mapart = false, int firsttile = -1); + int LoadArtFile(const char* file, const char *mapname = nullptr, int firsttile = -1); void CloseAllMapArt(); void LoadArtSet(const char* filename); void AddArt(TArray& art)