aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Kiewitz2010-07-28 16:58:34 +0000
committerMartin Kiewitz2010-07-28 16:58:34 +0000
commitcfb1f53d5978d27295b48a77cf67023d955d2969 (patch)
tree1661b2306d78e3576875ec8f4d378b89827f7397
parent163f0cf7b5e1f6c21d75e31483bc1b23f7a74bfb (diff)
downloadscummvm-rg350-cfb1f53d5978d27295b48a77cf67023d955d2969.tar.gz
scummvm-rg350-cfb1f53d5978d27295b48a77cf67023d955d2969.tar.bz2
scummvm-rg350-cfb1f53d5978d27295b48a77cf67023d955d2969.zip
SCI: making a global eq1 workaround :P
svn-id: r51427
-rw-r--r--engines/sci/engine/workarounds.cpp9
1 files changed, 3 insertions, 6 deletions
diff --git a/engines/sci/engine/workarounds.cpp b/engines/sci/engine/workarounds.cpp
index 04030b001e..c4869b108c 100644
--- a/engines/sci/engine/workarounds.cpp
+++ b/engines/sci/engine/workarounds.cpp
@@ -58,11 +58,7 @@ const SciWorkaroundEntry uninitializedReadWorkarounds[] = {
{ GID_CNICK_KQ, 200, 0, 1, "Character", "<noname 446>", -1, 505, { WORKAROUND_FAKE, 0 } }, // checkers, like in hoyle 3
{ GID_CNICK_KQ, -1, 700, 0, "gcWindow", "<noname 183>", -1, -1, { WORKAROUND_FAKE, 0 } }, // when entering control menu, like in hoyle 3
{ GID_CNICK_LONGBOW, 0, 0, 0, "RH Budget", "<noname 110>", -1, 1, { WORKAROUND_FAKE, 0 } }, // when starting the game
- { GID_ECOQUEST, 140, 140, 0, NULL, "doVerb", -1, 0, { WORKAROUND_FAKE, 0 } }, // when solving the mosaic puzzle
- { GID_ECOQUEST, 160, 160, 0, "seatedSenator", "doVerb", -1, 0, { WORKAROUND_FAKE, 0 } }, // when clicking on the senator
- { GID_ECOQUEST, 180, 180, 0, NULL, "doVerb", -1, 0, { WORKAROUND_FAKE, 0 } }, // when clicking on the plant/coral
- { GID_ECOQUEST, 200, 200, 0, NULL, "doVerb", -1, 0, { WORKAROUND_FAKE, 0 } }, // when clicking on moss or other things :P
- { GID_ECOQUEST, 400, 400, 0, NULL, "doVerb", -1, 0, { WORKAROUND_FAKE, 0 } }, // when looking at the cabinet/certificate/computer/photo/rug
+ { GID_ECOQUEST, -1, -1, 0, NULL, "doVerb", -1, 0, { WORKAROUND_FAKE, 0 } }, // almost clicking everywhere triggers this in almost all rooms
{ GID_FREDDYPHARKAS, -1, 24, 0, "gcWin", "open", -1, 5, { WORKAROUND_FAKE, 0xf } }, // is used as priority for game menu
{ GID_FREDDYPHARKAS, -1, 31, 0, "quitWin", "open", -1, 5, { WORKAROUND_FAKE, 0xf } }, // is used as priority for game menu
{ GID_GK1, -1, 64950, 1, "Feature", "handleEvent", -1, 0, { WORKAROUND_FAKE, 0 } }, // sometimes when walk-clicking
@@ -317,7 +313,8 @@ SciWorkaroundSolution trackOriginAndFindWorkaround(int index, const SciWorkaroun
do {
workaround = workaroundList;
while (workaround->methodName) {
- if (workaround->gameId == gameId && workaround->scriptNr == curScriptNr
+ if (workaround->gameId == gameId
+ && ((workaround->scriptNr == -1) || (workaround->scriptNr == curScriptNr))
&& ((workaround->roomNr == -1) || (workaround->roomNr == curRoomNumber))
&& ((workaround->inheritanceLevel == -1) || (workaround->inheritanceLevel == inheritanceLevel))
&& ((workaround->objectName == NULL) || (workaround->objectName == searchObjectName))