diff options
author | Colin Snover | 2017-09-29 20:16:53 -0500 |
---|---|---|
committer | Colin Snover | 2017-09-29 20:20:20 -0500 |
commit | f43b2c66fe417035b56908e857304abe40518631 (patch) | |
tree | d00cda63da03d8c1d15484ea68ebdd7180816b99 /engines/sci | |
parent | 4d49c3db3ae0cce2fe7fa38c65a56c8795e629ac (diff) | |
download | scummvm-rg350-f43b2c66fe417035b56908e857304abe40518631.tar.gz scummvm-rg350-f43b2c66fe417035b56908e857304abe40518631.tar.bz2 scummvm-rg350-f43b2c66fe417035b56908e857304abe40518631.zip |
SCI32: Improve RESOURCE.SFX fallback for RAMA
Since Datafiles says to rename any RESOURCE.SFX to RESSFX.00n,
and there is only a RESOURCE.SFX on CD 1, don't confuse users by
failing to use RESSFX.001 for CD2 and CD3.
Diffstat (limited to 'engines/sci')
-rw-r--r-- | engines/sci/resource.cpp | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/engines/sci/resource.cpp b/engines/sci/resource.cpp index ad6415daea..97cec405b3 100644 --- a/engines/sci/resource.cpp +++ b/engines/sci/resource.cpp @@ -1928,10 +1928,16 @@ int ResourceManager::readResourceMapSCI1(ResourceSource *map) { volumeName = "RESAUD.001"; } } else if (resId.getNumber() == 65535) { - if (g_sci->getGameId() == GID_RAMA && Common::File::exists("RESOURCE.SFX")) { - volumeName = "RESOURCE.SFX"; - } else { + if (g_sci->getGameId() == GID_RAMA) { volumeName = Common::String::format("RESSFX.%03d", mapVolumeNr); + + if (g_sci->getGameId() == GID_RAMA && !Common::File::exists(volumeName)) { + if (Common::File::exists("RESOURCE.SFX")) { + volumeName = "RESOURCE.SFX"; + } else if (Common::File::exists("RESSFX.001")) { + volumeName = "RESSFX.001"; + } + } } } else { volumeName = Common::String::format("RESAUD.%03d", mapVolumeNr); |