aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Gilbert2016-02-12 20:54:30 -0500
committerPaul Gilbert2016-02-12 20:54:30 -0500
commitc1c16fe28837dd2e5dc63776c1c64f9e181e3df3 (patch)
tree034d361aaeb5b821c8bad85ec71ba91f24f890ba
parent52f8b6dfe05a419e26cb24b6e3c9262e85a9ffaf (diff)
downloadscummvm-rg350-c1c16fe28837dd2e5dc63776c1c64f9e181e3df3.tar.gz
scummvm-rg350-c1c16fe28837dd2e5dc63776c1c64f9e181e3df3.tar.bz2
scummvm-rg350-c1c16fe28837dd2e5dc63776c1c64f9e181e3df3.zip
SHERLOCK: RT: Fix conversation crash German Lawton's house
-rw-r--r--engines/sherlock/tattoo/tattoo_people.cpp1
-rw-r--r--engines/sherlock/tattoo/widget_text.cpp1
2 files changed, 2 insertions, 0 deletions
diff --git a/engines/sherlock/tattoo/tattoo_people.cpp b/engines/sherlock/tattoo/tattoo_people.cpp
index 0af8deff9f..b83a977a77 100644
--- a/engines/sherlock/tattoo/tattoo_people.cpp
+++ b/engines/sherlock/tattoo/tattoo_people.cpp
@@ -1354,6 +1354,7 @@ void TattooPeople::setTalkSequence(int speaker, int sequenceNum) {
int TattooPeople::findSpeaker(int speaker) {
+ speaker &= 0x7f;
int result = People::findSpeaker(speaker);
const char *portrait = _characters[speaker]._portrait;
diff --git a/engines/sherlock/tattoo/widget_text.cpp b/engines/sherlock/tattoo/widget_text.cpp
index 86aa067301..d8d229d277 100644
--- a/engines/sherlock/tattoo/widget_text.cpp
+++ b/engines/sherlock/tattoo/widget_text.cpp
@@ -80,6 +80,7 @@ void WidgetText::centerWindowOnSpeaker(int speaker) {
TattooScene &scene = *(TattooScene *)_vm->_scene;
Common::Point pt;
+ speaker &= 0x7f;
bool flag = _vm->readFlags(FLAG_PLAYER_IS_HOLMES);
if (people[HOLMES]._type == CHARACTER && ((speaker == HOLMES && flag) || (speaker == WATSON && !flag))) {
// Place the window centered above the player