diff options
author | Ben Castricum | 2018-09-23 15:58:45 +0200 |
---|---|---|
committer | David Turner | 2018-10-02 19:32:32 +0100 |
commit | 9b56d7c6bcd89d99f9046315a6a23f0821693974 (patch) | |
tree | 654808aaebf65b94d64adf4104e1fd73ff1f192a | |
parent | 0e91fe623b6c2c4152a8e75a9495ee95987bf73c (diff) | |
download | scummvm-rg350-9b56d7c6bcd89d99f9046315a6a23f0821693974.tar.gz scummvm-rg350-9b56d7c6bcd89d99f9046315a6a23f0821693974.tar.bz2 scummvm-rg350-9b56d7c6bcd89d99f9046315a6a23f0821693974.zip |
SCUMM: MONKEY2: Skip extra code on FMTOWNS, fixes bug #2223
-rw-r--r-- | engines/scumm/script_v5.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/engines/scumm/script_v5.cpp b/engines/scumm/script_v5.cpp index cc92631b54..a2dd83ab28 100644 --- a/engines/scumm/script_v5.cpp +++ b/engines/scumm/script_v5.cpp @@ -420,6 +420,16 @@ void ScummEngine_v5::o5_actorFromPos() { void ScummEngine_v5::o5_actorOps() { static const byte convertTable[20] = { 1, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 20 }; + // Fix for bug #2233 "MI2 FM-TOWNS: Elaine's mappiece directly flies to treehouse" + // There's extra code inserted in script 45 from room 45 that caused that behaviour, + // the code below just skips the extra script code. + if (_game.id == GID_MONKEY2 && _game.platform == Common::kPlatformFMTowns && + vm.slot[_currentScript].number == 45 && _currentRoom == 45 && + (_scriptPointer - _scriptOrgPointer == 0xA9)) { + _scriptPointer += 0xCF - 0xA1; + writeVar(32811, 0); // clear bit 43 + return; + } int act = getVarOrDirectByte(PARAM_1); Actor *a = derefActor(act, "o5_actorOps"); int i, j; |