aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorPaul Gilbert2007-05-03 05:06:10 +0000
committerPaul Gilbert2007-05-03 05:06:10 +0000
commitaba02a6811bce5cdf280a632d7bebc0044bb0eb4 (patch)
treec8f50f7b5b6987de89a5c2c0833a96155a1b580e /engines
parent463c5fcec840d7bf68b29dfa4be70118255cc5bd (diff)
downloadscummvm-rg350-aba02a6811bce5cdf280a632d7bebc0044bb0eb4.tar.gz
scummvm-rg350-aba02a6811bce5cdf280a632d7bebc0044bb0eb4.tar.bz2
scummvm-rg350-aba02a6811bce5cdf280a632d7bebc0044bb0eb4.zip
Bugfix for characters freezing after talking when in a different room than the player, and fixed NPC to NPC conversations
svn-id: r26740
Diffstat (limited to 'engines')
-rw-r--r--engines/lure/hotspots.cpp5
-rw-r--r--engines/lure/luredefs.h8
2 files changed, 7 insertions, 6 deletions
diff --git a/engines/lure/hotspots.cpp b/engines/lure/hotspots.cpp
index 54bc9a3432..40d59a5577 100644
--- a/engines/lure/hotspots.cpp
+++ b/engines/lure/hotspots.cpp
@@ -780,7 +780,8 @@ void Hotspot::handleTalkDialog() {
// Talking is finish - stop talking and free voice animation
debugC(ERROR_DETAILED, kLureDebugAnimations, "Talk dialog close");
room.setTalkDialog(0, 0, 0, 0);
- res.setTalkingCharacter(0);
+ _data->talkDestCharacterId = 0;
+ _data->talkGate = 0;
}
debugC(ERROR_DETAILED, kLureDebugAnimations, "Talk handler method end");
@@ -1924,7 +1925,7 @@ void Hotspot::npcTalkNpcToNpc(HotspotData *hotspot) {
// Handle the source's talk message
if (entry.param(1) != 0) {
converse(hotspot->hotspotId, entry.param(1));
- resource()->talkCountdown = entry.param(2);
+ resource()->talkCountdown += entry.param(2);
resource()->delayCtr = entry.param(2);
}
diff --git a/engines/lure/luredefs.h b/engines/lure/luredefs.h
index 77758e3c8c..1419c1b4cb 100644
--- a/engines/lure/luredefs.h
+++ b/engines/lure/luredefs.h
@@ -85,16 +85,16 @@ enum Action {
BRIBE = 24,
EXAMINE = 25,
NPC_SET_ROOM_AND_OFFSET = 28,
- NPC_UNKNOWN1 = 29,
+ NPC_TALK_TO_PLAYER = 29,
NPC_EXEC_SCRIPT = 30,
- NPC_UNKNOWN2 = 31,
+ NPC_RESET_PAUSED_LIST = 31,
NPC_SET_RAND_DEST = 32,
NPC_WALKING_CHECK = 33,
NPC_SET_SUPPORT_OFFSET = 34,
NPC_SUPPORT_OFFSET_COND = 35,
NPC_DISPATCH_ACTION = 36,
- NPC_UNKNOWN3 = 37,
- NPC_UNKNOWN4 = 38,
+ NPC_TALK_NPC_TO_NPC = 37,
+ NPC_PAUSE = 38,
NPC_START_TALKING = 39,
NPC_JUMP_ADDRESS = 40
};