diff options
author | Eugene Sandulenko | 2014-01-15 11:28:19 +0200 |
---|---|---|
committer | Eugene Sandulenko | 2014-01-15 15:39:29 +0200 |
commit | f3ca6b2626501195bc6d4ec9babf324afdcb530d (patch) | |
tree | 202d6dbca00649c4fd4f1cdbcb20b69dd2b65945 | |
parent | f6ebae63cd84a3ebb1a95865de11243743cd9871 (diff) | |
download | scummvm-rg350-f3ca6b2626501195bc6d4ec9babf324afdcb530d.tar.gz scummvm-rg350-f3ca6b2626501195bc6d4ec9babf324afdcb530d.tar.bz2 scummvm-rg350-f3ca6b2626501195bc6d4ec9babf324afdcb530d.zip |
FULLPIPE: Implement ModalMap::handleMessage()
-rw-r--r-- | engines/fullpipe/modal.cpp | 33 |
1 files changed, 32 insertions, 1 deletions
diff --git a/engines/fullpipe/modal.cpp b/engines/fullpipe/modal.cpp index a5b70f0775..c790ef29f5 100644 --- a/engines/fullpipe/modal.cpp +++ b/engines/fullpipe/modal.cpp @@ -312,7 +312,38 @@ void ModalMap::update() { } bool ModalMap::handleMessage(ExCommand *cmd) { - warning("STUB: ModalMap::handleMessage()"); + if (cmd->_messageKind != 17) + return false; + + switch (cmd->_messageNum) { + case 29: + _flag = 1; + _mouseX = g_fp->_mouseScreenPos.x; + _mouseY = g_fp->_mouseScreenPos.x; + + _field_3C = _rect2.top; + _field_38 = _rect2.left; + + break; + + case 30: + _flag = 0; + break; + + case 36: + if (cmd->_keyCode != 9 && cmd->_keyCode != 27 ) + return false; + + break; + + case 107: + break; + + default: + return false; + } + + _isRunning = 0; return true; } |