SCI: Added a warning dialog on game startup for versions of Longbow with known buggy scripts (containing game stopping bugs), which have been patched by Sierra

svn-id: r52172
This commit is contained in:
Filippos Karapetis 2010-08-17 20:36:28 +00:00
parent 397df8f350
commit 9df74402e5

View file

@ -173,6 +173,8 @@ SciEngine::~SciEngine() {
g_sci = 0;
}
extern void showScummVMDialog(const Common::String &message);
Common::Error SciEngine::run() {
g_eventRec.registerRandomSource(_rng, "sci");
@ -288,6 +290,26 @@ Common::Error SciEngine::run() {
}
}
// Show any special warnings for buggy scripts with severe game bugs,
// which have been patched by Sierra
if (getGameId() == GID_LONGBOW) {
// Longbow 1.0 has a buggy script which prevents the game
// from progressing during the Green Man riddle sequence.
// A patch for this buggy script has been released by Sierra,
// and is necessary to complete the game without issues.
// The patched script is included in Longbow 1.1.
// Refer to bug #3036609.
Resource *buggyScript = _resMan->findResource(ResourceId(kResourceTypeScript, 180), 0);
if (buggyScript->size == 12354 || buggyScript->size == 12362) {
showScummVMDialog("A known buggy game script has been detected, which could "
"prevent you from progressing later on in the game, during "
"the sequence with the Green Man's riddles. Please, apply "
"the latest patch for this game by Sierra to avoid possible "
"problems");
}
}
runGame();
ConfMan.flushToDisk();