mirror of
https://github.com/libretro/scummvm.git
synced 2025-03-05 09:49:14 +00:00
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.
This commit is contained in:
parent
121415ef1f
commit
1548f2cebf
@ -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);
|
||||
}
|
||||
|
||||
|
@ -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 {
|
||||
|
Loading…
x
Reference in New Issue
Block a user