aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/graphics/cursor.cpp
diff options
context:
space:
mode:
authorMartin Kiewitz2010-06-15 17:41:33 +0000
committerMartin Kiewitz2010-06-15 17:41:33 +0000
commitc9ba23f2b461c40c1b985faa4091c9363d20163c (patch)
tree1c42687bd30ec091e78b7fbe021d5c2eefa533f0 /engines/sci/graphics/cursor.cpp
parent34d8196334c628ebf240c7e3fc86615bc371bdc0 (diff)
downloadscummvm-rg350-c9ba23f2b461c40c1b985faa4091c9363d20163c.tar.gz
scummvm-rg350-c9ba23f2b461c40c1b985faa4091c9363d20163c.tar.bz2
scummvm-rg350-c9ba23f2b461c40c1b985faa4091c9363d20163c.zip
SCI: only set mouse position, when cursor is visible (fixes non-stop, but escapeable mouse position setting to 0, 0 in eco quest 1 floppy during intro)
svn-id: r49874
Diffstat (limited to 'engines/sci/graphics/cursor.cpp')
-rw-r--r--engines/sci/graphics/cursor.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/engines/sci/graphics/cursor.cpp b/engines/sci/graphics/cursor.cpp
index 38e9d389a6..46bd981b7f 100644
--- a/engines/sci/graphics/cursor.cpp
+++ b/engines/sci/graphics/cursor.cpp
@@ -259,6 +259,13 @@ void GfxCursor::kernelSetMacCursor(GuiResourceId viewNum, int loopNum, int celNu
}
void GfxCursor::setPosition(Common::Point pos) {
+ // Don't set position, when cursor is not visible
+ // This fixes eco quest 1 (floppy) right at the start, which is setting mouse cursor to 0, 0 all the time during the
+ // intro. It's escapeable (now) by moving to the left or top, but it's getting on your nerves.
+ // This could theoretically break some things, although sierra normally sets position only when showing the cursor.
+ if (!_isVisible)
+ return;
+
if (!_upscaledHires) {
g_system->warpMouse(pos.x, pos.y);
} else {