The GM patches from Sierra's GM utility can now also be processed with their original names. Thus, the user can just extract the patches from Sierra's GM utility in the extras folder, and it's not necessary to rename each individual file to "4.pat" and place it inside the associated game (works with the games that Sierra's GM patch updates, i.e. LSL1, LSL5, Hoyle3, SQ1, SQ4, Eco1, Longbow and Fairy tales)

svn-id: r47318
This commit is contained in:
Filippos Karapetis 2010-01-16 00:22:22 +00:00
parent c4a9d373ca
commit 22e8b3ed02
3 changed files with 40 additions and 0 deletions

View file

@ -474,6 +474,36 @@ int ResourceManager::addInternalSources() {
return 1;
}
void ResourceManager::addNewGMPatch(Common::String gameId) {
Common::String gmPatchFile;
if (gameId == "ecoquest")
gmPatchFile = "ECO1GM.PAT";
else if (gameId == "hoyle3")
gmPatchFile = "HOY3GM.PAT";
else if (gameId == "hoyle3")
gmPatchFile = "HOY3GM.PAT";
else if (gameId == "lsl1sci")
gmPatchFile = "LL1_GM.PAT";
else if (gameId == "lsl5")
gmPatchFile = "LL5_GM.PAT";
else if (gameId == "longbow")
gmPatchFile = "ROBNGM.PAT";
else if (gameId == "sq1sci")
gmPatchFile = "SQ1_GM.PAT";
else if (gameId == "sq4")
gmPatchFile = "SQ4_GM.PAT";
else if (gameId == "fairytales")
gmPatchFile = "TALEGM.PAT";
if (!gmPatchFile.empty() && Common::File::exists(gmPatchFile)) {
ResourceSource *psrcPatch = new ResourceSource;
psrcPatch->source_type = kSourcePatch;
psrcPatch->location_name = gmPatchFile;
processPatch(psrcPatch, kResourceTypePatch, 4);
}
}
void ResourceManager::scanNewSources() {
for (Common::List<ResourceSource *>::iterator it = _sources.begin(); it != _sources.end(); ++it) {
ResourceSource *source = *it;