aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/simon/items.cpp6
-rw-r--r--engines/simon/simon.cpp5
2 files changed, 7 insertions, 4 deletions
diff --git a/engines/simon/items.cpp b/engines/simon/items.cpp
index 5a9612fe9e..30fefaca7f 100644
--- a/engines/simon/items.cpp
+++ b/engines/simon/items.cpp
@@ -1246,12 +1246,16 @@ void SimonEngine::o1_scnTxtLongText(bool &cond, int &ret) {
uint color = getVarOrByte();
uint stringId = getVarOrByte();
uint speechId = 0;
+ TextLocation *tl;
const char *string_ptr = (const char *)getStringPtrByID(_stringIdArray3[stringId]);
- TextLocation *tl = getTextLocation(vgaSpriteId);
if (getFeatures() & GF_TALKIE)
speechId = _speechIdArray4[stringId];
+ if (getGameType() == GType_FF)
+ vgaSpriteId = 1;
+ tl = getTextLocation(vgaSpriteId);
+
if (_speech && speechId != 0)
playSpeech(speechId, vgaSpriteId);
if (string_ptr != NULL && _subtitles)
diff --git a/engines/simon/simon.cpp b/engines/simon/simon.cpp
index 39b75609f9..27bf2c442d 100644
--- a/engines/simon/simon.cpp
+++ b/engines/simon/simon.cpp
@@ -2143,10 +2143,9 @@ void SimonEngine::o_printStr() {
speech_id = (uint16)getNextWord();
if (getGameType() == GType_FF)
- tl = getTextLocation(1);
- else
- tl = getTextLocation(vgaSpriteId);
+ vgaSpriteId = 1;
+ tl = getTextLocation(vgaSpriteId);
if (_speech && speech_id != 0)
playSpeech(speech_id, vgaSpriteId);
if ((getGameType() == GType_SIMON2) && (getFeatures() & GF_TALKIE) && speech_id == 0)