diff options
Diffstat (limited to 'scumm/script_v72he.cpp')
-rw-r--r-- | scumm/script_v72he.cpp | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/scumm/script_v72he.cpp b/scumm/script_v72he.cpp index 3274280269..de6bbb1062 100644 --- a/scumm/script_v72he.cpp +++ b/scumm/script_v72he.cpp @@ -1570,10 +1570,12 @@ void ScummEngine_v72he::o72_talkActor() { Actor *a; _actorToPrintStrFor = pop(); - a = derefActorSafe(_actorToPrintStrFor, "o72_talkActor"); _string[0].loadDefault(); - _string[0].color = a->_talkColor; + if (_actorToPrintStrFor != 0xFF) { + a = derefActorSafe(_actorToPrintStrFor, "o72_talkActor"); + _string[0].color = a->_talkColor; + } actorTalk(_scriptPointer); _scriptPointer += resStrLen(_scriptPointer) + 1; @@ -2258,8 +2260,10 @@ void ScummEngine_v72he::decodeParseString(int m, int n) { _string[m].loadDefault(); if (n) { _actorToPrintStrFor = pop(); - a = derefActorSafe(_actorToPrintStrFor, "decodeParseString"); - _string[0].color = a->_talkColor; + if (_actorToPrintStrFor != 0xFF) { + a = derefActorSafe(_actorToPrintStrFor, "decodeParseString"); + _string[0].color = a->_talkColor; + } } break; case 0xFF: |