diff options
author | Andrew Kurushin | 2005-06-16 16:46:50 +0000 |
---|---|---|
committer | Andrew Kurushin | 2005-06-16 16:46:50 +0000 |
commit | b16a3634bfa68de91b9a77571f5511de648a0d19 (patch) | |
tree | f784f0a8897d57b9c57eab7de21d94287f56a202 /saga | |
parent | 7539169c1defdcc7fd18ef7f4d74b670b7749f52 (diff) | |
download | scummvm-rg350-b16a3634bfa68de91b9a77571f5511de648a0d19.tar.gz scummvm-rg350-b16a3634bfa68de91b9a77571f5511de648a0d19.tar.bz2 scummvm-rg350-b16a3634bfa68de91b9a77571f5511de648a0d19.zip |
placard workaround
svn-id: r18402
Diffstat (limited to 'saga')
-rw-r--r-- | saga/render.cpp | 2 | ||||
-rw-r--r-- | saga/saveload.cpp | 2 | ||||
-rw-r--r-- | saga/scene.cpp | 10 |
3 files changed, 13 insertions, 1 deletions
diff --git a/saga/render.cpp b/saga/render.cpp index 1648b2c170..8270c5939e 100644 --- a/saga/render.cpp +++ b/saga/render.cpp @@ -111,7 +111,7 @@ int Render::drawScene() { // Get mouse coordinates mouse_pt = _vm->mousePos(); - if (!(_flags & RF_PLACARD)) { + if (/*_vm->_interface->getMode() != kPanelPlacard*/!(_flags & RF_PLACARD)) { // Display scene background _vm->_scene->draw(); diff --git a/saga/saveload.cpp b/saga/saveload.cpp index c19550a4ac..c288b131dd 100644 --- a/saga/saveload.cpp +++ b/saga/saveload.cpp @@ -36,6 +36,7 @@ #include "saga/interface.h" #include "saga/scene.h" #include "saga/render.h" +#include "saga/events.h" #define CURRENT_SAGA_VER 2 @@ -225,6 +226,7 @@ void SagaEngine::load(const char *fileName) { _scene->clearSceneQueue(); _scene->changeScene(sceneNumber, ACTOR_NO_ENTRANCE, kTransitionNoFade); + _events->handleEvents(0); //dissolve back grounds if (insetSceneNumber != sceneNumber) { _render->drawScene(); diff --git a/saga/scene.cpp b/saga/scene.cpp index b67510a128..512d959abe 100644 --- a/saga/scene.cpp +++ b/saga/scene.cpp @@ -463,6 +463,16 @@ void Scene::loadScene(LoadSceneParams *loadSceneParams) { _sceneLoaded = true; q_event = NULL; + + //fix placard bug + //i guess we should remove RF_PLACARD flag - and use _interface->getMode() + event.type = ONESHOT_EVENT; + event.code = GRAPHICS_EVENT; + event.op = EVENT_CLEARFLAG; + event.param = RF_PLACARD; + + q_event = _vm->_events->chain(q_event, &event); + if (loadSceneParams->transitionType == kTransitionFade || loadSceneParams->transitionType == kTransitionFadeNoInterface) { |