aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Gilbert2007-02-01 04:41:36 +0000
committerPaul Gilbert2007-02-01 04:41:36 +0000
commitbc9df7e5c983af70d61877e8c023e57024c47c26 (patch)
tree6a55accd940cd0056a005335c53beb8746d2075d
parent69788f3d70c7db865fadfce9247dd572cb7f2da1 (diff)
downloadscummvm-rg350-bc9df7e5c983af70d61877e8c023e57024c47c26.tar.gz
scummvm-rg350-bc9df7e5c983af70d61877e8c023e57024c47c26.tar.bz2
scummvm-rg350-bc9df7e5c983af70d61877e8c023e57024c47c26.zip
Added custom load code for room #20 Notice
svn-id: r25317
-rw-r--r--engines/lure/res.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/engines/lure/res.cpp b/engines/lure/res.cpp
index 819a1eacea..726c754eec 100644
--- a/engines/lure/res.cpp
+++ b/engines/lure/res.cpp
@@ -472,6 +472,7 @@ Hotspot *Resources::activateHotspot(uint16 hotspotId) {
} else {
// Standard load
bool loadFlag = true;
+ uint16 talkIndex;
switch (res->loadOffset) {
case 0x3afe:
@@ -491,6 +492,17 @@ Hotspot *Resources::activateHotspot(uint16 hotspotId) {
// Standard animation load
break;
+ case 0x8617:
+ // Custom loader used by the notice hotspot 42ah in room #20
+ talkIndex = _fieldList.getField(TALK_INDEX);
+ if ((talkIndex < 8) || (talkIndex >= 14))
+ // Don't load hotspot
+ loadFlag = false;
+ else
+ // Make the notice be on-screen
+ res->startY = 85;
+ break;
+
case 0x88ac:
// Torch in room #1
loadFlag = _fieldList.getField(TORCH_HIDE) == 0;
@@ -506,6 +518,7 @@ Hotspot *Resources::activateHotspot(uint16 hotspotId) {
Hotspot *hotspot = addHotspot(hotspotId);
assert(hotspot);
if (res->loadOffset == 0x7167) hotspot->setPersistant(true);
+ if (res->loadOffset == 0x8617) hotspot->handleTalkDialog();
return hotspot;
}
}