diff options
author | Filippos Karapetis | 2015-03-16 01:41:08 +0200 |
---|---|---|
committer | Filippos Karapetis | 2015-03-16 01:41:08 +0200 |
commit | 7a9514567f44f5a717fcfb1994431e54e06ea148 (patch) | |
tree | 5c1abc24cd01b7bfc66449ee0715e42f4ba085f5 /engines/mads | |
parent | 6d8134f7518a2c368a55cfc49ba0a625a9744645 (diff) | |
download | scummvm-rg350-7a9514567f44f5a717fcfb1994431e54e06ea148.tar.gz scummvm-rg350-7a9514567f44f5a717fcfb1994431e54e06ea148.tar.bz2 scummvm-rg350-7a9514567f44f5a717fcfb1994431e54e06ea148.zip |
MADS: Handle a game bug in scene 604, which prevents game completion
Diffstat (limited to 'engines/mads')
-rw-r--r-- | engines/mads/nebular/nebular_scenes6.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/engines/mads/nebular/nebular_scenes6.cpp b/engines/mads/nebular/nebular_scenes6.cpp index 046782b772..d94fb17fd4 100644 --- a/engines/mads/nebular/nebular_scenes6.cpp +++ b/engines/mads/nebular/nebular_scenes6.cpp @@ -948,8 +948,14 @@ void Scene604::actions() { _bombMode = 1; if ((_game._difficulty == DIFFICULTY_HARD) || _globals[kWarnedFloodCity]) handleBombActions(); - else if ((_game._objects.isInInventory(OBJ_POLYCEMENT) && _game._objects.isInInventory(OBJ_CHICKEN)) - && ((_globals[kLineStatus] == LINE_TIED) || ((_game._difficulty == DIFFICULTY_EASY) && (!_globals[kBoatRaised])))) + else if ( + (_game._objects.isInInventory(OBJ_POLYCEMENT) && (_game._objects.isInInventory(OBJ_CHICKEN) || _game._objects.isInInventory(OBJ_CHICKEN_BOMB))) + && (_globals[kLineStatus] == LINE_TIED || (_game._difficulty == DIFFICULTY_EASY && !_globals[kBoatRaised])) + ) + // The original can get in an impossible state at this point, if the player has + // combined the chicken with the bomb before placing the timer bomb on the ledge. + // Therefore, we also allow the player to place the bomb if the chicken bomb is + // in the inventory. handleBombActions(); else if (_game._difficulty == DIFFICULTY_EASY) _vm->_dialogs->show(60424); |