diff options
Diffstat (limited to 'engines/fullpipe')
-rw-r--r-- | engines/fullpipe/modal.cpp | 29 | ||||
-rw-r--r-- | engines/fullpipe/modal.h | 6 |
2 files changed, 32 insertions, 3 deletions
diff --git a/engines/fullpipe/modal.cpp b/engines/fullpipe/modal.cpp index f80d96b3cf..ddfcc5dff4 100644 --- a/engines/fullpipe/modal.cpp +++ b/engines/fullpipe/modal.cpp @@ -778,6 +778,35 @@ ModalHelp::~ModalHelp() { g_fp->_currentScene->_y = _hy; } +bool ModalHelp::handleMessage(ExCommand *cmd) { + if (cmd->_messageKind == 17) { + int msg = cmd->_messageNum; + + if (msg == 29 || msg == 36 || msg == 107) { + _isRunning = 0; + + return true; + } + } + + return false; +} + +bool ModalHelp::init(int counterdiff) { + g_fp->setCursor(PIC_CSR_DEFAULT); + + return _isRunning; +} + +void ModalHelp::update() { + g_fp->_sceneRect.left = 0; + g_fp->_sceneRect.top = 0; + g_fp->_sceneRect.right = 800; + g_fp->_sceneRect.bottom = 600; + + _bg->draw(0, 0, 0, 0); +} + void FullpipeEngine::openHelp() { warning("STUB: FullpipeEngine::openHelp()"); } diff --git a/engines/fullpipe/modal.h b/engines/fullpipe/modal.h index 0cb3c3096b..c06ef2981d 100644 --- a/engines/fullpipe/modal.h +++ b/engines/fullpipe/modal.h @@ -176,9 +176,9 @@ public: virtual ~ModalHelp(); virtual bool pollEvent() { return true; } - virtual bool handleMessage(ExCommand *message) { return false; } - virtual bool init(int counterdiff) { return true; } - virtual void update() {} + virtual bool handleMessage(ExCommand *message); + virtual bool init(int counterdiff); + virtual void update(); virtual void saveload() {} }; |