diff options
author | Nicola Mettifogo | 2010-05-22 12:36:52 +0000 |
---|---|---|
committer | Nicola Mettifogo | 2010-05-22 12:36:52 +0000 |
commit | a8ea833941208382e659914fb5bf99d5cb4f01a1 (patch) | |
tree | fe60c98a23db5f76f6015953ed2049d99bffff06 /engines/parallaction | |
parent | 5280cbbbcd4a43efd456d2949c4436ff054cbd5e (diff) | |
download | scummvm-rg350-a8ea833941208382e659914fb5bf99d5cb4f01a1.tar.gz scummvm-rg350-a8ea833941208382e659914fb5bf99d5cb4f01a1.tar.bz2 scummvm-rg350-a8ea833941208382e659914fb5bf99d5cb4f01a1.zip |
Do not make the character walk towards the zone clicked upon by the user if it is marked for self-use. See patch 3003626.
svn-id: r49137
Diffstat (limited to 'engines/parallaction')
-rw-r--r-- | engines/parallaction/input.cpp | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/engines/parallaction/input.cpp b/engines/parallaction/input.cpp index d61d1bfb2b..f4b2254a96 100644 --- a/engines/parallaction/input.cpp +++ b/engines/parallaction/input.cpp @@ -326,8 +326,13 @@ bool Input::translateGameInput() { if ((_mouseButtons == kMouseLeftUp) && ((_activeItem._id != 0) || (ACTIONTYPE(z) == kZoneCommand))) { - if (z->_flags & kFlagsNoWalk) { - // character doesn't need to walk to take specified action + bool noWalk = z->_flags & kFlagsNoWalk; // check the explicit no-walk flag + if (_gameType == GType_BRA) { + // action performed on object marked for self-use do not need walk in BRA + noWalk |= z->_flags & kFlagsYourself; + } + + if (noWalk) { takeAction(z); } else { // action delayed: if Zone defined a moveto position the character is programmed to move there, |