aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/engine
diff options
context:
space:
mode:
authorMatthew Hoops2010-08-04 17:50:09 +0000
committerMatthew Hoops2010-08-04 17:50:09 +0000
commit642b03fb44a19109d8f098174fdfa326d2ae5ee5 (patch)
tree961de07b14e1e7e67d6844b1a999102dccb2bc4d /engines/sci/engine
parente5ffc7847cb70f792b4658aa032959949e849669 (diff)
downloadscummvm-rg350-642b03fb44a19109d8f098174fdfa326d2ae5ee5.tar.gz
scummvm-rg350-642b03fb44a19109d8f098174fdfa326d2ae5ee5.tar.bz2
scummvm-rg350-642b03fb44a19109d8f098174fdfa326d2ae5ee5.zip
SCI: Add kDisplay workarounds for the Hero's Quest demo
svn-id: r51742
Diffstat (limited to 'engines/sci/engine')
-rw-r--r--engines/sci/engine/kernel.cpp5
-rw-r--r--engines/sci/engine/workarounds.cpp3
2 files changed, 7 insertions, 1 deletions
diff --git a/engines/sci/engine/kernel.cpp b/engines/sci/engine/kernel.cpp
index 25502100ae..157884fac3 100644
--- a/engines/sci/engine/kernel.cpp
+++ b/engines/sci/engine/kernel.cpp
@@ -68,6 +68,11 @@ const Common::String &Kernel::getSelectorName(uint selector) {
for (uint loopSelector = _selectorNames.size(); loopSelector <= selector; ++loopSelector)
_selectorNames.push_back(Common::String::printf("<noname%d>", loopSelector));
}
+
+ // Ensure that the selector has a name
+ if (_selectorNames[selector].empty())
+ _selectorNames[selector] = Common::String::printf("<noname%d>", selector);
+
return _selectorNames[selector];
}
diff --git a/engines/sci/engine/workarounds.cpp b/engines/sci/engine/workarounds.cpp
index 63e9089336..9f3509be1d 100644
--- a/engines/sci/engine/workarounds.cpp
+++ b/engines/sci/engine/workarounds.cpp
@@ -173,7 +173,8 @@ const SciWorkaroundEntry kDeviceInfo_workarounds[] = {
// gameID, room,script,lvl, object-name, method-name, call,index, workaround
const SciWorkaroundEntry kDisplay_workarounds[] = {
{ GID_ISLANDBRAIN, 300, 300, 0, "geneDude", "show", -1, 0, { WORKAROUND_IGNORE, 0 } }, // when looking at the gene explanation chart - a parameter is an object
- { GID_PQ2, 23, 23, 0, "rm23Script", "elements", 0x4ae, 0, { WORKAROUND_IGNORE, 0 } }, // when looking at the 2nd page of pate's file - 75h as id
+ { GID_PQ2, 23, 23, 0, "rm23Script", "elements", 0x4ae, 0, { WORKAROUND_IGNORE, 0 } }, // when looking at the 2nd page of pate's file - 0x75 as id
+ { GID_QFG1, 11, 11, 0, "battle", "<noname90>", -1, 0, { WORKAROUND_IGNORE, 0 } }, // DEMO: When entering battle, 0x75 as id
{ GID_SQ4, 391, 391, 0, "doCatalog", "mode", 0x84, 0, { WORKAROUND_IGNORE, 0 } }, // clicking on catalog in roboter sale - a parameter is an object
{ GID_SQ4, 391, 391, 0, "choosePlug", "changeState", -1, 0, { WORKAROUND_IGNORE, 0 } }, // ordering connector in roboter sale - a parameter is an object
SCI_WORKAROUNDENTRY_TERMINATOR