aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorPaul Gilbert2007-12-28 07:45:22 +0000
committerPaul Gilbert2007-12-28 07:45:22 +0000
commit67a49e712a4b3df9c6373174c20dfcc6308935e6 (patch)
treec337c5e78bf4b317b7e6b51419c0e1d6eed77ac7 /engines
parentef319ad6745678275a4c5eb159d6d95fdf17649f (diff)
downloadscummvm-rg350-67a49e712a4b3df9c6373174c20dfcc6308935e6.tar.gz
scummvm-rg350-67a49e712a4b3df9c6373174c20dfcc6308935e6.tar.bz2
scummvm-rg350-67a49e712a4b3df9c6373174c20dfcc6308935e6.zip
Bugfix for string decoding to use the article of the destination character rather than the talking character
svn-id: r30036
Diffstat (limited to 'engines')
-rw-r--r--engines/lure/surface.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/engines/lure/surface.cpp b/engines/lure/surface.cpp
index 5cdd338ab1..ac5716f676 100644
--- a/engines/lure/surface.cpp
+++ b/engines/lure/surface.cpp
@@ -641,7 +641,7 @@ TalkDialog::TalkDialog(uint16 characterId, uint16 destCharacterId, uint16 active
char srcCharName[MAX_DESC_SIZE];
char destCharName[MAX_DESC_SIZE];
char itemName[MAX_DESC_SIZE];
- int characterArticle, hotspotArticle = 0;
+ int characterArticle = 0, hotspotArticle = 0;
_characterId = characterId;
_destCharacterId = destCharacterId;
@@ -656,11 +656,12 @@ TalkDialog::TalkDialog(uint16 characterId, uint16 destCharacterId, uint16 active
assert(talkingChar);
strings.getString(talkingChar->nameId & 0x1fff, srcCharName);
- characterArticle = getArticle(descId, talkingChar->nameId);
strcpy(destCharName, "");
- if (destCharacter != NULL)
+ if (destCharacter != NULL) {
strings.getString(destCharacter->nameId, destCharName);
+ characterArticle = getArticle(descId, destCharacter->nameId);
+ }
strcpy(itemName, "");
if (itemHotspot != NULL) {
strings.getString(itemHotspot->nameId & 0x1fff, itemName);