mirror of
https://github.com/libretro/scummvm.git
synced 2024-12-14 13:50:13 +00:00
GOB: Extended workaround for Goblin Stuck On Reload to cover bug #3065914
This generalises the workaround added for bug #3018918 i.e. UOTODDV issue, to cover the ICVGCGT case and hopefully all future cases, by executing the variable correction during the reload after Game Over and using the variable read by the script triggering the movement lock, rather than the movement lock variable (59) itself as this may not be set until a later script. svn-id: r54061
This commit is contained in:
parent
f5bfae598c
commit
224f93cf0e
@ -812,12 +812,12 @@ bool Inter_v1::o1_if(OpFuncParams ¶ms) {
|
||||
byte cmd;
|
||||
bool boolRes;
|
||||
|
||||
// WORKAROUND: Windows Gob1 OUTODDV reload goblin stuck bug present in original
|
||||
if ((_vm->getGameType() == kGameTypeGob1) && (_vm->_game->_script->pos() == 11294) &&
|
||||
!scumm_stricmp(_vm->_game->_curTotFile, "avt00.tot") && VAR(59) == 1) {
|
||||
warning("Workaround for Win Gob1 OUTODDV Reload Goblin Stuck Bug...");
|
||||
// WORKAROUND: Gob1 goblin stuck on reload bugs present in original - bugs #3018918 and 3065914
|
||||
if ((_vm->getGameType() == kGameTypeGob1) && (_vm->_game->_script->pos() == 2933) &&
|
||||
!scumm_stricmp(_vm->_game->_curTotFile, "inter.tot") && VAR(285) != 0) {
|
||||
warning("Workaround for Gob1 Goblin Stuck On Reload Bug applied...");
|
||||
// VAR(59) actually locks goblin movement, but these variables trigger this in the script.
|
||||
WRITE_VAR(285, 0);
|
||||
WRITE_VAR(59, 0);
|
||||
}
|
||||
|
||||
boolRes = _vm->_game->_script->evalBoolResult();
|
||||
|
Loading…
Reference in New Issue
Block a user