diff options
author | Filippos Karapetis | 2009-10-19 14:33:48 +0000 |
---|---|---|
committer | Filippos Karapetis | 2009-10-19 14:33:48 +0000 |
commit | c1e7191bc96c209141b80b0efb27409165c3f226 (patch) | |
tree | b65f0bae45c66f015d4f65f2dad1396123e1567d | |
parent | 4ac5e3512501a8effee878bd072caf7875cf20b3 (diff) | |
download | scummvm-rg350-c1e7191bc96c209141b80b0efb27409165c3f226.tar.gz scummvm-rg350-c1e7191bc96c209141b80b0efb27409165c3f226.tar.bz2 scummvm-rg350-c1e7191bc96c209141b80b0efb27409165c3f226.zip |
Made the check for global var 84 more generic (checking for the fastCast object)
svn-id: r45244
-rw-r--r-- | engines/sci/gui/gui_animate.cpp | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/engines/sci/gui/gui_animate.cpp b/engines/sci/gui/gui_animate.cpp index 1166a4ad89..aa8d67c6d2 100644 --- a/engines/sci/gui/gui_animate.cpp +++ b/engines/sci/gui/gui_animate.cpp @@ -66,13 +66,14 @@ bool SciGuiAnimate::invoke(List *list, int argc, reg_t *argv) { while (curNode) { curObject = curNode->value; - if (_s->_gameName == "kq5") { - // This is special to King's Quest 5, globalVar 84 aborts kAnimate completely. If we dont do this - // sometimes animation cels will appear within talking boxes - if (_s->script_000->_localsBlock->_locals[84].toUint16()) { + // Check if the game has a fastCast object + // This check is needed so that animation cels won't appear within speech boxes + reg_t global84 = _s->script_000->_localsBlock->_locals[84]; + + if (!global84.isNull()) + if (!strcmp(_s->_segMan->getObjectName(global84), "fastCast")) return false; - } - } + signal = GET_SEL32V(segMan, curObject, signal); if (!(signal & SCI_ANIMATE_SIGNAL_FROZEN)) { // Call .doit method of that object |