[Scummvm-cvs-logs] SF.net SVN: scummvm:[51426] scummvm/trunk/engines/sci/engine/workarounds. cpp

m_kiewitz at users.sourceforge.net m_kiewitz at users.sourceforge.net
Wed Jul 28 18:18:03 CEST 2010


Revision: 51426
          http://scummvm.svn.sourceforge.net/scummvm/?rev=51426&view=rev
Author:   m_kiewitz
Date:     2010-07-28 16:18:03 +0000 (Wed, 28 Jul 2010)

Log Message:
-----------
SCI: eq1 workaround compression and new ones

Modified Paths:
--------------
    scummvm/trunk/engines/sci/engine/workarounds.cpp

Modified: scummvm/trunk/engines/sci/engine/workarounds.cpp
===================================================================
--- scummvm/trunk/engines/sci/engine/workarounds.cpp	2010-07-28 16:00:13 UTC (rev 51425)
+++ scummvm/trunk/engines/sci/engine/workarounds.cpp	2010-07-28 16:18:03 UTC (rev 51426)
@@ -58,14 +58,11 @@
 	{ 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,              "rm140", "doVerb",         -1,    0, { WORKAROUND_FAKE,   0 } }, // when solving the mosaic puzzle
-    { GID_ECOQUEST,      140,   140,  0,       "mosaicPuzzle", "doVerb",         -1,    0, { WORKAROUND_FAKE,   0 } }, // when solving the mosaic puzzle
+    { 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,      400,   400,  0,            "cabinet", "doVerb",         -1,    0, { WORKAROUND_FAKE,   0 } }, // when looking at the cabinet
-    { GID_ECOQUEST,      400,   400,  0,          "certUpper", "doVerb",         -1,    0, { WORKAROUND_FAKE,   0 } }, // when looking at the certificate
-    { GID_ECOQUEST,      400,   400,  0,           "computer", "doVerb",         -1,    0, { WORKAROUND_FAKE,   0 } }, // when looking at the computer
-    { GID_ECOQUEST,      400,   400,  0,              "photo", "doVerb",         -1,    0, { WORKAROUND_FAKE,   0 } }, // when looking at the photo
-    { GID_ECOQUEST,      400,   400,  0,                "rug", "doVerb",         -1,    0, { WORKAROUND_FAKE,   0 } }, // when looking at the rug
+    { 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_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
@@ -319,11 +316,11 @@
 		reg_t searchObject = lastCall->sendp;
 		do {
 			workaround = workaroundList;
-			while (workaround->objectName) {
+			while (workaround->methodName) {
 				if (workaround->gameId == gameId && workaround->scriptNr == curScriptNr
 						&& ((workaround->roomNr == -1) || (workaround->roomNr == curRoomNumber))
 						&& ((workaround->inheritanceLevel == -1) || (workaround->inheritanceLevel == inheritanceLevel))
-						&& (workaround->objectName == searchObjectName)
+						&& ((workaround->objectName == NULL) || (workaround->objectName == searchObjectName))
 						&& workaround->methodName == curMethodName && workaround->localCallOffset == lastCall->debugLocalCallOffset
 						&& ((workaround->index == -1) || (workaround->index == index))) {
 					// Workaround found


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list