From 642fa67da9c271244de373431166f23449ec8543 Mon Sep 17 00:00:00 2001 From: Gregory Montoir Date: Sun, 15 Apr 2007 20:36:44 +0000 Subject: Added code for decodeParseString.SO_PRINT_WRAP and rewrote the CHARSET_1 function in order to match the original V8 interpreter. This should fix bugs #1036707 and #1662610 (subtitles word wrapping issues). svn-id: r26516 --- engines/scumm/actor.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'engines/scumm/actor.cpp') diff --git a/engines/scumm/actor.cpp b/engines/scumm/actor.cpp index af5726a273..f104f7bb8b 100644 --- a/engines/scumm/actor.cpp +++ b/engines/scumm/actor.cpp @@ -1850,6 +1850,7 @@ void ScummEngine::resetV1ActorTalkColor() { #ifndef DISABLE_SCUMM_7_8 void ScummEngine_v7::actorTalk(const byte *msg) { Actor *a; + bool stringWrap; convertMessageToString(msg, _charsetBuffer, sizeof(_charsetBuffer)); @@ -1882,9 +1883,15 @@ void ScummEngine_v7::actorTalk(const byte *msg) { if (_game.version == 7) VAR(VAR_HAVE_MSG) = 0xFF; _haveActorSpeechMsg = true; + if (_game.version == 8) { + stringWrap = _string[0].wrapping; + _string[0].wrapping = true; + } CHARSET_1(); - if (_game.version == 8) + if (_game.version == 8) { VAR(VAR_HAVE_MSG) = (_string[0].no_talk_anim) ? 2 : 1; + _string[0].wrapping = stringWrap; + } } #endif -- cgit v1.2.3