aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/fullpipe/modal.cpp19
-rw-r--r--engines/fullpipe/modal.h2
2 files changed, 18 insertions, 3 deletions
diff --git a/engines/fullpipe/modal.cpp b/engines/fullpipe/modal.cpp
index 833d47fde1..24730710d6 100644
--- a/engines/fullpipe/modal.cpp
+++ b/engines/fullpipe/modal.cpp
@@ -780,7 +780,7 @@ ModalMainMenu::ModalMainMenu() {
area = new MenuArea();
area->picIdL = PIC_MNU_EXIT_L;
area->picObjD = 0;
- area->picObjL = _scene->getPictureObjectById(PIC_MNU_EXIT_L, 0);
+ area->picObjL = _scene->getPictureObjectById(area->picIdL, 0);
area->picObjL->_flags &= 0xFFFB;
_areas.push_back(area);
@@ -845,6 +845,10 @@ ModalMainMenu::ModalMainMenu() {
setSliderPos();
}
+void ModalMainMenu::update() {
+ _scene->draw();
+}
+
bool ModalMainMenu::isSaveAllowed() {
warning("STUB: ModalMainMenu::isSaveAllowed()");
@@ -852,7 +856,18 @@ bool ModalMainMenu::isSaveAllowed() {
}
void ModalMainMenu::enableDebugMenuButton() {
- warning("STUB: ModalMainMenu::enableDebugMenuButton()");
+ MenuArea *area;
+
+ for (uint i = 0; i < _areas.size(); i++)
+ if (_areas[i]->picIdL == PIC_MNU_DEBUG_L)
+ return;
+
+ area = new MenuArea();
+ area->picIdL = PIC_MNU_DEBUG_L;
+ area->picObjD = 0;
+ area->picObjL = _scene->getPictureObjectById(area->picIdL, 0);
+ area->picObjL->_flags &= 0xFFFB;
+ _areas.push_back(area);
}
void ModalMainMenu::setSliderPos() {
diff --git a/engines/fullpipe/modal.h b/engines/fullpipe/modal.h
index 532d145c2c..d1568cee8c 100644
--- a/engines/fullpipe/modal.h
+++ b/engines/fullpipe/modal.h
@@ -175,7 +175,7 @@ public:
virtual bool pollEvent() { return true; }
virtual bool handleMessage(ExCommand *message) { return false; }
virtual bool init(int counterdiff) { return true; }
- virtual void update() {}
+ virtual void update();
virtual void saveload() {}
private: