Smarter check for texture finding. (#61)

This commit is contained in:
Prince Frizzy 2022-04-12 00:24:35 -04:00 committed by GitHub
parent 35a1109c21
commit 97b351def9
1 changed files with 10 additions and 5 deletions

View File

@ -9,15 +9,20 @@ extern "C" {
/////////// ///////////
static TexData* LoadTextureFromFile(GfxData *aGfxData, const String& aFile) { static TexData* LoadTextureFromFile(GfxData *aGfxData, const String& aFile) {
// Image file // Image file
String _TexturePath = aFile.SubString(aFile.Find('/') + 1); // Remove the "actors/" SysPath _Filename = fstring("%s/%s.png", aGfxData->mPackFolder.c_str(), aFile.begin());
SysPath _Filename = fstring("%s/%s.png", aGfxData->mPackFolder.c_str(), _TexturePath.begin());
FILE *_File = fopen(_Filename.c_str(), "rb"); FILE *_File = fopen(_Filename.c_str(), "rb");
// Check as if we're an Actor.
if (!_File) { if (!_File) {
PrintError(" ERROR: Unable to open file \"%s\"", _Filename.c_str()); String _TexturePath = aFile.SubString(aFile.Find('/') + 1); // Remove the "actors/"
SysPath _ActorFilename = fstring("%s/%s.png", aGfxData->mPackFolder.c_str(), _TexturePath.begin());
_File = fopen(_ActorFilename.c_str(), "rb");
// The file does not exist in either spot!
if (!_File) {
PrintError(" ERROR: Unable to open file at \"%s\" or \"%s\"", _Filename.c_str(), _ActorFilename.c_str());
return NULL; return NULL;
} }
}
// Texture data // Texture data
fseek(_File, 0, SEEK_END); fseek(_File, 0, SEEK_END);