diff options
author | Martin Kiewitz | 2016-01-31 14:49:52 +0100 |
---|---|---|
committer | Martin Kiewitz | 2016-01-31 14:49:52 +0100 |
commit | 1548f2cebf49b52505b17c4057ad8048ce6c9baf (patch) | |
tree | a3aa71a324b046ae44258f271801669b3bba2c97 /engines | |
parent | 121415ef1f391dea223370226e8ee8abd9c5329f (diff) | |
download | scummvm-rg350-1548f2cebf49b52505b17c4057ad8048ce6c9baf.tar.gz scummvm-rg350-1548f2cebf49b52505b17c4057ad8048ce6c9baf.tar.bz2 scummvm-rg350-1548f2cebf49b52505b17c4057ad8048ce6c9baf.zip |
AGI: revert "motion type check in objectstop AGI3"
Caused issues with mouse support (that AGI on DOS never had).
e.g. KQ1/KQ2 on end of mouse click move Graham automatically falls
into water.
The check was added in AGI3 only, but maybe non-DOS interpreters
had it before. Or maybe mouse support was actually implemented
differently. Needs more investigating.
Diffstat (limited to 'engines')
-rw-r--r-- | engines/agi/motion.cpp | 10 | ||||
-rw-r--r-- | engines/agi/view.h | 2 |
2 files changed, 4 insertions, 8 deletions
diff --git a/engines/agi/motion.cpp b/engines/agi/motion.cpp index a7a1b91788..76f0f91f51 100644 --- a/engines/agi/motion.cpp +++ b/engines/agi/motion.cpp @@ -210,13 +210,9 @@ void AgiEngine::inDestination(ScreenObjEntry *screenObj) { void AgiEngine::motionMoveObjStop(ScreenObjEntry *screenObj) { screenObj->stepSize = screenObj->move_stepSize; - uint16 agiVersion = getVersion(); - if (agiVersion >= 0x3000) { - // this check was only done for AGI3 - if (screenObj->motionType != kMotionEgo) { - setflag(screenObj->move_flag, true); - } - } else { + // This check for motionType was only done in AGI3. + // But we use this motion type for mouse movement, so we need to check in any case, otherwise it will cause glitches. + if (screenObj->motionType != kMotionEgo) { setflag(screenObj->move_flag, true); } diff --git a/engines/agi/view.h b/engines/agi/view.h index 3afe3dc84b..428db1d6ad 100644 --- a/engines/agi/view.h +++ b/engines/agi/view.h @@ -58,7 +58,7 @@ enum MotionType { kMotionWander = 1, kMotionFollowEgo = 2, kMotionMoveObj = 3, - kMotionEgo = 4 + kMotionEgo = 4 // used by us for mouse movement only? }; enum CycleType { |