aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorTorbjörn Andersson2006-06-14 22:56:59 +0000
committerTorbjörn Andersson2006-06-14 22:56:59 +0000
commit4eefe52e1ccb6e830025906706651e0e9e4c9949 (patch)
treebe51bfb6b28cd06ff3cc443e5e53e8e3ec7f22d8 /engines
parent70fc192f30e49ecf5f94cd1808c5600d390b231f (diff)
downloadscummvm-rg350-4eefe52e1ccb6e830025906706651e0e9e4c9949.tar.gz
scummvm-rg350-4eefe52e1ccb6e830025906706651e0e9e4c9949.tar.bz2
scummvm-rg350-4eefe52e1ccb6e830025906706651e0e9e4c9949.zip
Fixed FF cursor hotspots, after Kirben pointed out to me two special cases that
we didn't handle. This makes he tile puzzle easier to solve. (But it's still a terrible puzzle.) svn-id: r23114
Diffstat (limited to 'engines')
-rw-r--r--engines/simon/cursor.cpp16
1 files changed, 15 insertions, 1 deletions
diff --git a/engines/simon/cursor.cpp b/engines/simon/cursor.cpp
index d2d0df3d30..5c7e9db6dd 100644
--- a/engines/simon/cursor.cpp
+++ b/engines/simon/cursor.cpp
@@ -435,7 +435,21 @@ void SimonEngine::drawMousePointer_FF() {
offs = cursor * 32 + _mouseAnim * 2;
drawMousePart(image, _mouseOffs[offs], _mouseOffs[offs + 1]);
- CursorMan.replaceCursor(_mouseData, kMaxCursorWidth, kMaxCursorHeight, 19, 19, 0);
+ int hotspotX = 19;
+ int hotspotY = 19;
+
+ if (_mouseCursor == 14) {
+ // Finger pointing away from screen. Not sure where
+ // this is used.
+ hotspotX += 4;
+ hotspotY -= 6;
+ } else if (_mouseCursor == 15) {
+ // Finger pointing down. Used for the oh-so-annoying
+ // Cygnus Alpha tile puzzle.
+ hotspotY += 18;
+ }
+
+ CursorMan.replaceCursor(_mouseData, kMaxCursorWidth, kMaxCursorHeight, hotspotX, hotspotY, 0);
}
}