aboutsummaryrefslogtreecommitdiff
path: root/engines/supernova
diff options
context:
space:
mode:
authorThierry Crozat2017-11-05 01:15:44 +0000
committerThierry Crozat2018-01-23 02:15:37 +0000
commit7c40e38d7c59873c804123a71a0fe124f62f1cbd (patch)
tree721fb7a72a23c3db55076253a0a5e41e29fbe3ed /engines/supernova
parentbd6cdf4ba22393d254de6b656edf7d33441fa704 (diff)
downloadscummvm-rg350-7c40e38d7c59873c804123a71a0fe124f62f1cbd.tar.gz
scummvm-rg350-7c40e38d7c59873c804123a71a0fe124f62f1cbd.tar.bz2
scummvm-rg350-7c40e38d7c59873c804123a71a0fe124f62f1cbd.zip
SUPERNOVA: Fix recursive infinite loop in door closing animation in ArsanoEntrance
Diffstat (limited to 'engines/supernova')
-rw-r--r--engines/supernova/rooms.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/engines/supernova/rooms.cpp b/engines/supernova/rooms.cpp
index 9c503a818f..1ab4c3a38c 100644
--- a/engines/supernova/rooms.cpp
+++ b/engines/supernova/rooms.cpp
@@ -1544,6 +1544,7 @@ bool ArsanoMeetup::interact(Action verb, Object &obj1, Object &obj2) {
void ArsanoEntrance::animation() {
if (!_vm->_messageDisplayed && isSectionVisible(kMaxSection - 5)) {
+ _gm->animationOff(); // to avoid recursive call
_vm->playSound(kAudioDoorSound);
_gm->drawImage(8);
setSectionVisible(9, false);
@@ -1560,6 +1561,7 @@ void ArsanoEntrance::animation() {
_gm->drawImage(_gm->invertSection(5));
getObject(11)->_click = 255;
setSectionVisible(kMaxSection - 5, false);
+ _gm->animationOn();
}
if (isSectionVisible(2)) {
_gm->drawImage(_gm->invertSection(2));