diff options
author | Paul Gilbert | 2007-05-03 05:06:10 +0000 |
---|---|---|
committer | Paul Gilbert | 2007-05-03 05:06:10 +0000 |
commit | aba02a6811bce5cdf280a632d7bebc0044bb0eb4 (patch) | |
tree | c8f50f7b5b6987de89a5c2c0833a96155a1b580e | |
parent | 463c5fcec840d7bf68b29dfa4be70118255cc5bd (diff) | |
download | scummvm-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
-rw-r--r-- | engines/lure/hotspots.cpp | 5 | ||||
-rw-r--r-- | engines/lure/luredefs.h | 8 |
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 }; |