diff options
author | Benjamin Haisch | 2008-08-12 11:19:51 +0000 |
---|---|---|
committer | Willem Jan Palenstijn | 2011-11-20 22:43:05 +0100 |
commit | 03cae511297588ccbeba028cab58c7be050ccac2 (patch) | |
tree | e90397179f58ffd30fc8be9cf2f393851c3d5a07 /engines/toltecs | |
parent | 51214a461a94e2bc2456f3fea885445f38d2f84f (diff) | |
download | scummvm-rg350-03cae511297588ccbeba028cab58c7be050ccac2.tar.gz scummvm-rg350-03cae511297588ccbeba028cab58c7be050ccac2.tar.bz2 scummvm-rg350-03cae511297588ccbeba028cab58c7be050ccac2.zip |
TOLTECS: - Made game "quittable"
- Save/load mouse position and if the cursor is enabled
Diffstat (limited to 'engines/toltecs')
-rw-r--r-- | engines/toltecs/input.cpp | 2 | ||||
-rw-r--r-- | engines/toltecs/saveload.cpp | 11 |
2 files changed, 13 insertions, 0 deletions
diff --git a/engines/toltecs/input.cpp b/engines/toltecs/input.cpp index b658c6278b..174818323e 100644 --- a/engines/toltecs/input.cpp +++ b/engines/toltecs/input.cpp @@ -79,6 +79,8 @@ void Input::update() { break; case Common::EVENT_QUIT: + // FIXME: Find a nicer way to quit + g_system->quit(); break; case Common::EVENT_MOUSEMOVE: _mouseX = event.mouse.x; diff --git a/engines/toltecs/saveload.cpp b/engines/toltecs/saveload.cpp index 42ef4a33fb..3da15f4a07 100644 --- a/engines/toltecs/saveload.cpp +++ b/engines/toltecs/saveload.cpp @@ -80,6 +80,10 @@ void ToltecsEngine::savegame(const char *filename) { out->writeByte(_movieSceneFlag ? 1 : 0); out->writeByte(_flag01); + out->writeUint16LE(_input->_mouseX); + out->writeUint16LE(_input->_mouseY); + out->writeUint16LE(_input->_mouseDisabled); + _palette->saveState(out); _script->saveState(out); _anim->saveState(out); @@ -136,6 +140,13 @@ void ToltecsEngine::loadgame(const char *filename) { _movieSceneFlag = in->readByte() != 0; _flag01 = in->readByte(); + _input->_mouseX = in->readUint16LE(); + _input->_mouseY = in->readUint16LE(); + _input->_mouseDisabled = in->readUint16LE(); + + _system->warpMouse(_input->_mouseX, _input->_mouseY); + _system->showMouse(_input->_mouseDisabled == 0); + _palette->loadState(in); _script->loadState(in); _anim->loadState(in); |