aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Gilbert2015-07-05 23:48:59 -0400
committerPaul Gilbert2015-07-05 23:48:59 -0400
commitc98d5f0d2df0a91ace7b6026c0c764873bc32299 (patch)
treed2fb28ed541c8b447751762a61d75988af26a6de
parentef492b351b5762f24de2762de21360f16e93e98f (diff)
downloadscummvm-rg350-c98d5f0d2df0a91ace7b6026c0c764873bc32299.tar.gz
scummvm-rg350-c98d5f0d2df0a91ace7b6026c0c764873bc32299.tar.bz2
scummvm-rg350-c98d5f0d2df0a91ace7b6026c0c764873bc32299.zip
SHERLOCK: RT: Don't run secondary scripts if an anim is active
-rw-r--r--engines/sherlock/talk.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/engines/sherlock/talk.cpp b/engines/sherlock/talk.cpp
index c350560407..6d8bfeebc1 100644
--- a/engines/sherlock/talk.cpp
+++ b/engines/sherlock/talk.cpp
@@ -29,6 +29,7 @@
#include "sherlock/scalpel/scalpel_user_interface.h"
#include "sherlock/tattoo/tattoo.h"
#include "sherlock/tattoo/tattoo_people.h"
+#include "sherlock/tattoo/tattoo_scene.h"
#include "sherlock/tattoo/tattoo_talk.h"
namespace Sherlock {
@@ -150,7 +151,11 @@ void Talk::talkTo(const Common::String &filename) {
// If there any canimations currently running, or a portrait is being cleared,
// save the filename for later executing when the canimation is done
- if (scene._canimShapes.size() > 0 || people._clearingThePortrait) {
+ bool ongoingAnim = scene._canimShapes.size() > 0;
+ if (IS_ROSE_TATTOO) {
+ ongoingAnim = static_cast<Tattoo::TattooScene *>(_vm->_scene)->_activeCAnim.active();
+ }
+ if (ongoingAnim || people._clearingThePortrait) {
// Make sure we're not in the middle of a script
if (!_scriptMoreFlag) {
_scriptName = filename;