aboutsummaryrefslogtreecommitdiff
path: root/engines/touche/opcodes.cpp
diff options
context:
space:
mode:
authorGregory Montoir2006-11-10 20:48:52 +0000
committerGregory Montoir2006-11-10 20:48:52 +0000
commit4e8d042e5cbe6a01cf0f32c692d99e0644559c1a (patch)
treec5b2613ef705629f897869da31268fe20cc686f1 /engines/touche/opcodes.cpp
parent195a46477f1f74caed31519d3c0a723b390c1e32 (diff)
downloadscummvm-rg350-4e8d042e5cbe6a01cf0f32c692d99e0644559c1a.tar.gz
scummvm-rg350-4e8d042e5cbe6a01cf0f32c692d99e0644559c1a.tar.bz2
scummvm-rg350-4e8d042e5cbe6a01cf0f32c692d99e0644559c1a.zip
new menu code
workaround a possible scripting bug in introduction screen svn-id: r24668
Diffstat (limited to 'engines/touche/opcodes.cpp')
-rw-r--r--engines/touche/opcodes.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/engines/touche/opcodes.cpp b/engines/touche/opcodes.cpp
index e1492e4e08..1a287330d6 100644
--- a/engines/touche/opcodes.cpp
+++ b/engines/touche/opcodes.cpp
@@ -465,6 +465,20 @@ void ToucheEngine::op_initKeyCharTalk() {
void ToucheEngine::op_loadRoom() {
debugC(9, kDebugOpcodes, "ToucheEngine::op_loadRoom()");
int16 num = _script.readNextWord();
+ if (_currentEpisodeNum == 27 && num == 34 && _currentRoomNum != 58) {
+ //
+ // Workaround to what appears to be a scripting bug. The script
+ // 27 triggers a palette fading just after loading the room 34.
+ // Set flag 115, so that only *one* palette refresh occurs.
+ //
+ // [0086] (13) ST[0] = 1
+ // [0089] (1E) FLAGS[606] = ST[0]
+ // [008C] (34) LOAD_ROOM(34)
+ // [xxxx] ...
+ // [00B4] (84) START_PALETTE_FADE_IN(20)
+ //
+ _flagsTable[115] = 1;
+ }
res_loadRoom(num);
}