[Scummvm-cvs-logs] SF.net SVN: scummvm:[45876] scummvm/trunk/engines/draci
spalek at users.sourceforge.net
spalek at users.sourceforge.net
Fri Nov 13 00:33:33 CET 2009
Revision: 45876
http://scummvm.svn.sourceforge.net/scummvm/?rev=45876&view=rev
Author: spalek
Date: 2009-11-12 23:33:22 +0000 (Thu, 12 Nov 2009)
Log Message:
-----------
Handled loading/saving from the map location
Modified Paths:
--------------
scummvm/trunk/engines/draci/draci.cpp
scummvm/trunk/engines/draci/game.cpp
scummvm/trunk/engines/draci/saveload.cpp
Modified: scummvm/trunk/engines/draci/draci.cpp
===================================================================
--- scummvm/trunk/engines/draci/draci.cpp 2009-11-12 23:12:34 UTC (rev 45875)
+++ scummvm/trunk/engines/draci/draci.cpp 2009-11-12 23:33:22 UTC (rev 45876)
@@ -246,7 +246,13 @@
if (escRoom >= 0) {
// Schedule room change
- // TODO: gate 0 is not always the best one for returning from the map
+ // TODO: gate 0 (always present) is not
+ // always best for returning from the
+ // map, e.g. in the starting location.
+ // also, after loading the game, we
+ // shouldn't run any gate program, but
+ // rather restore the state of all
+ // objects.
_game->scheduleEnteringRoomUsingGate(escRoom, 0);
// Immediately cancel any running animation or dubbing.
@@ -394,8 +400,6 @@
// here are now, without waiting for any other code to finish, thanks
// to our constraint in canLoadGameStateCurrently() and to having
// enterNewRoom() called right after we exit from here.
- //
- // TODO: Handle saving in the map room
return loadSavegameData(slot, this);
}
Modified: scummvm/trunk/engines/draci/game.cpp
===================================================================
--- scummvm/trunk/engines/draci/game.cpp 2009-11-12 23:12:34 UTC (rev 45875)
+++ scummvm/trunk/engines/draci/game.cpp 2009-11-12 23:33:22 UTC (rev 45876)
@@ -1162,9 +1162,10 @@
bool Game::enterNewRoom() {
if (_newRoom == getRoomNum() && !isReloaded()) {
- // If the game has been reloaded, force reloading all animations.
+ _vm->_script->endCurrentProgram(false);
return true;
}
+ // If the game has been reloaded, force reloading all animations.
setIsReloaded(false);
debugC(1, kDraciLogicDebugLevel, "Entering room %d using gate %d", _newRoom, _newGate);
_vm->_mouse->cursorOff();
Modified: scummvm/trunk/engines/draci/saveload.cpp
===================================================================
--- scummvm/trunk/engines/draci/saveload.cpp 2009-11-12 23:12:34 UTC (rev 45875)
+++ scummvm/trunk/engines/draci/saveload.cpp 2009-11-12 23:33:22 UTC (rev 45876)
@@ -151,7 +151,6 @@
// Post-processing
vm->_game->scheduleEnteringRoomUsingGate(vm->_game->getRoomNum(), 0);
- vm->_game->setRoomNum(vm->_game->getPreviousRoomNum());
vm->_game->setExitLoop(true);
vm->_game->setIsReloaded(true);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list