diff options
Diffstat (limited to 'engines/pegasus/neighborhood/norad/delta/noraddelta.cpp')
-rw-r--r-- | engines/pegasus/neighborhood/norad/delta/noraddelta.cpp | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/engines/pegasus/neighborhood/norad/delta/noraddelta.cpp b/engines/pegasus/neighborhood/norad/delta/noraddelta.cpp index 1eea2f0156..ee047d72b2 100644 --- a/engines/pegasus/neighborhood/norad/delta/noraddelta.cpp +++ b/engines/pegasus/neighborhood/norad/delta/noraddelta.cpp @@ -514,6 +514,17 @@ void NoradDelta::openDoor() { } } +void NoradDelta::cantMoveThatWay(CanOpenDoorReason reason) { + // WORKAROUND: The door outside the launch console room isn't treated as a door, + // so play the correct sound. + if (reason == kCantMoveBlocked && GameState.getCurrentRoomAndView() == MakeRoomView(kNorad67, kNorth)) { + cantOpenDoor(kCantOpenLocked); + return; + } + + Neighborhood::cantMoveThatWay(reason); +} + void NoradDelta::activateHotspots() { Norad::activateHotspots(); @@ -863,6 +874,13 @@ void NoradDelta::doSolve() { } } +void NoradDelta::setSoundFXLevel(const uint16 level) { + Neighborhood::setSoundFXLevel(level); + + if (GameState.getCurrentRoomAndView() == MakeRoomView(kNorad54North, kNorth)) + _loop2Fader.setMasterVolume(level); +} + Common::String NoradDelta::getSoundSpotsName() { return "Sounds/Norad/Norad Delta Spots"; } |