[Scummvm-cvs-logs] SF.net SVN: scummvm: [28361] scummvm/trunk/engines/saga
thebluegr at users.sourceforge.net
thebluegr at users.sourceforge.net
Tue Jul 31 19:41:11 CEST 2007
Revision: 28361
http://scummvm.svn.sourceforge.net/scummvm/?rev=28361&view=rev
Author: thebluegr
Date: 2007-07-31 10:41:10 -0700 (Tue, 31 Jul 2007)
Log Message:
-----------
Some updates to the psychic profile in IHNM. sfPsychicProfileOff has been enabled again
Modified Paths:
--------------
scummvm/trunk/engines/saga/interface.cpp
scummvm/trunk/engines/saga/scene.cpp
scummvm/trunk/engines/saga/sfuncs.cpp
Modified: scummvm/trunk/engines/saga/interface.cpp
===================================================================
--- scummvm/trunk/engines/saga/interface.cpp 2007-07-31 17:05:45 UTC (rev 28360)
+++ scummvm/trunk/engines/saga/interface.cpp 2007-07-31 17:41:10 UTC (rev 28361)
@@ -369,18 +369,18 @@
}
void Interface::rememberMode() {
- assert (_savedMode == -1);
+ debug(1, "rememberMode(%d)", _savedMode);
_savedMode = _panelMode;
-
- debug(1, "rememberMode(%d)", _savedMode);
}
void Interface::restoreMode(bool draw_) {
- assert (_savedMode != -1);
-
debug(1, "restoreMode(%d)", _savedMode);
+ // If _savedMode is -1 by a race condition, set it to kPanelMain
+ if (_savedMode == -1)
+ _savedMode = kPanelMain;
+
_panelMode = _savedMode;
_savedMode = -1;
Modified: scummvm/trunk/engines/saga/scene.cpp
===================================================================
--- scummvm/trunk/engines/saga/scene.cpp 2007-07-31 17:05:45 UTC (rev 28360)
+++ scummvm/trunk/engines/saga/scene.cpp 2007-07-31 17:41:10 UTC (rev 28361)
@@ -1361,12 +1361,13 @@
}
void Scene::clearPsychicProfile() {
- _vm->_scene->clearPlacard();
- _vm->_actor->showActors(false);
- _vm->_gfx->restorePalette();
- _vm->_scene->restoreScene();
- _vm->_interface->setMode(kPanelMain);
- _vm->_interface->activate();
+ if (_vm->_interface->getMode() == kPanelPlacard) {
+ _vm->_scene->clearPlacard();
+ _vm->_actor->showActors(false);
+ _vm->_gfx->restorePalette();
+ _vm->_scene->restoreScene();
+ _vm->_interface->activate();
+ }
}
void Scene::showIHNMDemoSpecialScreen() {
Modified: scummvm/trunk/engines/saga/sfuncs.cpp
===================================================================
--- scummvm/trunk/engines/saga/sfuncs.cpp 2007-07-31 17:05:45 UTC (rev 28360)
+++ scummvm/trunk/engines/saga/sfuncs.cpp 2007-07-31 17:41:10 UTC (rev 28361)
@@ -1519,8 +1519,9 @@
void Script::sfPsychicProfileOff(SCRIPTFUNC_PARAMS) {
thread->wait(kWaitTypePlacard);
- // This is not used
- //_vm->_scene->clearPsychicProfile();
+ // This is called a while after the psychic profile is
+ // opened, to close it automatically
+ _vm->_scene->clearPsychicProfile();
}
// Script function #50 (0x32)
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