diff options
author | Strangerke | 2015-01-02 11:05:21 +0100 |
---|---|---|
committer | Strangerke | 2015-01-02 11:05:21 +0100 |
commit | b2a4999f3cbf8808a10ffe5a4cbb1b536e0011d5 (patch) | |
tree | d2e2b6d2a522f80d7adbbb4d45095da2441bbdf6 | |
parent | 900dc7ffc004d36ff02d38f0cc615098571c7b41 (diff) | |
download | scummvm-rg350-b2a4999f3cbf8808a10ffe5a4cbb1b536e0011d5.tar.gz scummvm-rg350-b2a4999f3cbf8808a10ffe5a4cbb1b536e0011d5.tar.bz2 scummvm-rg350-b2a4999f3cbf8808a10ffe5a4cbb1b536e0011d5.zip |
ACCESS: MM - Fix mouse cursor when y between 177 and 184, add a call to takePicture (not yet implemented)
-rw-r--r-- | engines/access/martian/martian_room.cpp | 6 | ||||
-rw-r--r-- | engines/access/martian/martian_room.h | 3 | ||||
-rw-r--r-- | engines/access/room.cpp | 17 | ||||
-rw-r--r-- | engines/access/room.h | 2 |
4 files changed, 24 insertions, 4 deletions
diff --git a/engines/access/martian/martian_room.cpp b/engines/access/martian/martian_room.cpp index 10e9d60cca..118679b2d8 100644 --- a/engines/access/martian/martian_room.cpp +++ b/engines/access/martian/martian_room.cpp @@ -91,6 +91,12 @@ void MartianRoom::roomSet() { _vm->_scripts->_sequence = 1000; _vm->_scripts->searchForSequence(); _vm->_scripts->executeScript(); + + for (int i = 0; i < 30; i++) + _byte26CD2[i] = 0; + + for (int i = 0; i < 10; i++) + _byte26CBC[i] = 0; } void MartianRoom::roomMenu() { diff --git a/engines/access/martian/martian_room.h b/engines/access/martian/martian_room.h index cb2a8c2229..11501b6e57 100644 --- a/engines/access/martian/martian_room.h +++ b/engines/access/martian/martian_room.h @@ -39,6 +39,9 @@ private: MartianEngine *_game; void roomSet(); + + int _byte26CD2[30]; + int _byte26CBC[10]; protected: virtual void loadRoom(int roomNumber); diff --git a/engines/access/room.cpp b/engines/access/room.cpp index f7c2eabd0f..79e5200963 100644 --- a/engines/access/room.cpp +++ b/engines/access/room.cpp @@ -55,6 +55,10 @@ void Room::freeTileData() { _tile = nullptr; } +void Room::takePicture() { + warning("TODO: takePicture"); +} + void Room::doRoom() { bool reloadFlag = false; @@ -84,9 +88,13 @@ void Room::doRoom() { _vm->_events->pollEventsAndWait(); _vm->_canSaveLoad = false; - _vm->_player->walk(); - _vm->_midi->midiRepeat(); - _vm->_player->checkScroll(); + if ((_vm->getGameID() == GType_MartianMemorandum) && (_vm->_player->_roomNumber == 47)) { + takePicture(); + } else { + _vm->_player->walk(); + _vm->_midi->midiRepeat(); + _vm->_player->checkScroll(); + } doCommands(); if (_vm->shouldQuitOrRestart()) @@ -136,7 +144,8 @@ void Room::doRoom() { } else { _vm->plotList(); - if (_vm->_events->_mousePos.y < 177) + if (((_vm->getGameID() == GType_MartianMemorandum) && (_vm->_events->_mousePos.y < 184)) || + ((_vm->getGameID() == GType_Amazon) && (_vm->_events->_mousePos.y < 177))) _vm->_events->setCursor(_vm->_events->_normalMouse); else _vm->_events->setCursor(CURSOR_ARROW); diff --git a/engines/access/room.h b/engines/access/room.h index 44279fa6b1..dd8a359665 100644 --- a/engines/access/room.h +++ b/engines/access/room.h @@ -72,6 +72,8 @@ private: int calcLR(int yp); int calcUD(int xp); + void takePicture(); + /** * Cycles forwards or backwards through the list of commands */ |