diff options
Diffstat (limited to 'engines')
-rw-r--r-- | engines/sherlock/user_interface.cpp | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/engines/sherlock/user_interface.cpp b/engines/sherlock/user_interface.cpp index b12094638c..b0b0d15b5c 100644 --- a/engines/sherlock/user_interface.cpp +++ b/engines/sherlock/user_interface.cpp @@ -2592,16 +2592,22 @@ void UserInterface::checkAction(ActionType &action, const char *const messages[] cAnimNum = 9; else cAnimNum = action._cAnimNum - 1; - CAnim &anim = scene._cAnim[cAnimNum]; - + if (action._cAnimNum != 99) { - if (action._cAnimSpeed & REVERSE_DIRECTION) { - pt = anim._teleportPos; - dir = anim._teleportDir; - } else { - pt = anim._goto; - dir = anim._gotoDir; + CAnim &anim = scene._cAnim[cAnimNum]; + + if (action._cAnimNum != 99) { + if (action._cAnimSpeed & REVERSE_DIRECTION) { + pt = anim._teleportPos; + dir = anim._teleportDir; + } else { + pt = anim._goto; + dir = anim._gotoDir; + } } + } else { + pt = Common::Point(-1, -1); + dir = -1; } if (action._cAnimSpeed) { |