LAB: Add a workaround to load the right file in rooms 121 & 122 (Dos and Windows)

This commit is contained in:
Strangerke 2016-01-25 00:35:38 +01:00
parent fb34336863
commit 2f03bc7776

View file

@ -143,7 +143,14 @@ void Resource::readViews(uint16 roomNum) {
} }
Common::String Resource::translateFileName(const Common::String filename) { Common::String Resource::translateFileName(const Common::String filename) {
Common::String upperFilename = filename; Common::String upperFilename;
// The DOS and Windows version aren't looking for the right file,
if (!filename.compareToIgnoreCase("P:ZigInt/BLK") && (_vm->getPlatform() != Common::kPlatformAmiga))
upperFilename = "P:ZigInt/ZIGINT.BLK";
else
upperFilename = filename;
upperFilename.toUppercase(); upperFilename.toUppercase();
Common::String fileNameStrFinal; Common::String fileNameStrFinal;
@ -211,7 +218,7 @@ Common::String Resource::translateFileName(const Common::String filename) {
Common::File *Resource::openDataFile(const Common::String filename, uint32 fileHeader) { Common::File *Resource::openDataFile(const Common::String filename, uint32 fileHeader) {
Common::File *dataFile = new Common::File(); Common::File *dataFile = new Common::File();
dataFile->open(translateFileName(filename)); dataFile->open(translateFileName(filename));
warning("%s", filename.c_str());
if (!dataFile->isOpen()) { if (!dataFile->isOpen()) {
// The DOS version is known to have some missing files // The DOS version is known to have some missing files
if (_vm->getPlatform() == Common::kPlatformDOS) { if (_vm->getPlatform() == Common::kPlatformDOS) {