From d84f744e2df9f08146e87c0dbc90e51e8b6ab319 Mon Sep 17 00:00:00 2001 From: Travis Howell Date: Wed, 3 May 2006 12:54:37 +0000 Subject: Add work around for glitches that occurs on map, when Simon rides lion to the goblin camp, in non-English versions of Simon2 svn-id: r22305 --- engines/simon/subroutine.cpp | 10 ++++++++++ engines/simon/vga.cpp | 2 +- 2 files changed, 11 insertions(+), 1 deletion(-) (limited to 'engines') diff --git a/engines/simon/subroutine.cpp b/engines/simon/subroutine.cpp index 6181bda5d4..46cd0c5c22 100644 --- a/engines/simon/subroutine.cpp +++ b/engines/simon/subroutine.cpp @@ -235,6 +235,16 @@ int SimonEngine::startSubroutine(Subroutine *sub) { if (++_recursionDepth > 40) error("Recursion error"); + // WORKAROUND: Bit Flag 171 isn't set when Simon rides the lion to the + // goblin camp in non-English versions. Bit Flag 171 is required to display + // the red trail between locations on the map, during the ride. + if (getGameType() == GType_SIMON2) { + if (sub->id == 13020) + setBitFlag(171, true); + if (sub->id == 13021) + setBitFlag(171, false); + } + sl = (SubroutineLine *)((byte *)sub + sub->first); while ((byte *)sl != (byte *)sub) { diff --git a/engines/simon/vga.cpp b/engines/simon/vga.cpp index 3c53027e67..6494fbd583 100644 --- a/engines/simon/vga.cpp +++ b/engines/simon/vga.cpp @@ -2276,7 +2276,7 @@ void SimonEngine::vc62_fastFadeOut() { void SimonEngine::vc63_fastFadeIn() { if (getGameType() == GType_FF) { - _paletteColorCount = 256; + _paletteColorCount = 256; } else { _paletteColorCount = 208; if (_windowNum != 4) { -- cgit v1.2.3