diff options
author | James Brown | 2002-12-28 05:26:21 +0000 |
---|---|---|
committer | James Brown | 2002-12-28 05:26:21 +0000 |
commit | f64806f85f9f3d8d8450842d2df47ebbc6ca2519 (patch) | |
tree | ba6e2c4a407aa72040bf5444764c3eaf462e6dc1 | |
parent | 77b905d0c223ff5067b20a37dfd7158d10185b45 (diff) | |
download | scummvm-rg350-f64806f85f9f3d8d8450842d2df47ebbc6ca2519.tar.gz scummvm-rg350-f64806f85f9f3d8d8450842d2df47ebbc6ca2519.tar.bz2 scummvm-rg350-f64806f85f9f3d8d8450842d2df47ebbc6ca2519.zip |
Initial (buggy) implementation of CURSOR_SET - the Cannon sequence now almost works, except for a centering bug
svn-id: r6220
-rw-r--r-- | scumm/script_v8.cpp | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/scumm/script_v8.cpp b/scumm/script_v8.cpp index 0ab6411e0e..ad064390a7 100644 --- a/scumm/script_v8.cpp +++ b/scumm/script_v8.cpp @@ -822,7 +822,17 @@ void Scumm_v8::o8_cursorCommand() for (i = 0; i < 16; i++) _charsetColorMap[i] = _charsetData[_string[1].t_charset][i] = (unsigned char)args[i]; break; - case 0xE9: // SO_CURSOR_PUT + case 0xE9: // SO_CURSOR_PUT + mouse.x = pop(); + mouse.y = pop(); + _virtual_mouse_x = mouse.x + virtscr[0].xstart; + _virtual_mouse_y = mouse.y + camera._cur.y - (_realHeight / 2); + _virtual_mouse_y -= 16; + + _system->set_mouse_pos(mouse.x, mouse.y); + _system->update_screen(); + warning("warped mouse to (%d, %d)", mouse.x, mouse.y); + break; default: error("o8_cursorCommand: default case %d", subOp); } |