diff options
author | Paul Gilbert | 2014-08-23 10:21:50 -0400 |
---|---|---|
committer | Paul Gilbert | 2014-08-23 10:21:50 -0400 |
commit | 6343ff72c462219afb2f11fea69539725794efd6 (patch) | |
tree | 4ab8d6228f5f11ff72c63239c06091e16537b63b /engines/access/amazon/amazon_room.cpp | |
parent | 44436def8328accecf756d34103f5322d0fe0f6f (diff) | |
download | scummvm-rg350-6343ff72c462219afb2f11fea69539725794efd6.tar.gz scummvm-rg350-6343ff72c462219afb2f11fea69539725794efd6.tar.bz2 scummvm-rg350-6343ff72c462219afb2f11fea69539725794efd6.zip |
ACCESS: Fix cursor positioning in scrolled screens, and background restores
Diffstat (limited to 'engines/access/amazon/amazon_room.cpp')
-rw-r--r-- | engines/access/amazon/amazon_room.cpp | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/engines/access/amazon/amazon_room.cpp b/engines/access/amazon/amazon_room.cpp index bc0f605d8e..c0076fd78a 100644 --- a/engines/access/amazon/amazon_room.cpp +++ b/engines/access/amazon/amazon_room.cpp @@ -146,10 +146,13 @@ void AmazonRoom::roomMenu() { } void AmazonRoom::mainAreaClick() { + Common::Point &mousePos = _vm->_events->_mousePos; + Common::Point pt = _vm->_events->calcRawMouse(); + if (_selectCommand == -1) { if (_vm->_player->_roomNumber == 42 || _vm->_player->_roomNumber == 44 || _vm->_player->_roomNumber == 31 || _vm->_player->_roomNumber == 29) { - switch (checkBoxes1(_vm->_events->_mousePos)) { + switch (checkBoxes1(pt)) { case 0: _game->_jasMayaFlag = 0; return; @@ -161,13 +164,13 @@ void AmazonRoom::mainAreaClick() { } } - _vm->_player->_moveTo = _vm->_events->_mousePos; + _vm->_player->_moveTo = pt; _vm->_player->_playerMove = true; - } else if (_vm->_events->_mousePos.x >= _vm->_screen->_windowXAdd && - _vm->_events->_mousePos.x <= _vm->_screen->_vWindowBytesWide && - _vm->_events->_mousePos.y >= _vm->_screen->_windowYAdd && - _vm->_events->_mousePos.y <= _vm->_screen->_vWindowLinesTall) { - if (checkBoxes1(_vm->_events->_mousePos) >= 0) { + } else if (mousePos.x >= _vm->_screen->_windowXAdd && + mousePos.x <= _vm->_screen->_vWindowBytesWide && + mousePos.y >= _vm->_screen->_windowYAdd && + mousePos.y <= _vm->_screen->_vWindowLinesTall) { + if (checkBoxes1(pt) >= 0) { checkBoxes3(); } } |