aboutsummaryrefslogtreecommitdiff
path: root/engines/mohawk
diff options
context:
space:
mode:
authorAlyssa Milburn2011-02-01 22:00:57 +0000
committerAlyssa Milburn2011-02-01 22:00:57 +0000
commit22f87250e990da409b049a0f57625692f16a867a (patch)
tree0b2eac76c18ed52ce672d1ffe474d2237a9d2ec2 /engines/mohawk
parent40a9b710a50417c09c62e9861994489b2335e62a (diff)
downloadscummvm-rg350-22f87250e990da409b049a0f57625692f16a867a.tar.gz
scummvm-rg350-22f87250e990da409b049a0f57625692f16a867a.tar.bz2
scummvm-rg350-22f87250e990da409b049a0f57625692f16a867a.zip
MOHAWK: Handle a few more LB notify opcodes.
svn-id: r55713
Diffstat (limited to 'engines/mohawk')
-rw-r--r--engines/mohawk/livingbooks_code.cpp23
1 files changed, 22 insertions, 1 deletions
diff --git a/engines/mohawk/livingbooks_code.cpp b/engines/mohawk/livingbooks_code.cpp
index 187c940cee..a11ac1cfe9 100644
--- a/engines/mohawk/livingbooks_code.cpp
+++ b/engines/mohawk/livingbooks_code.cpp
@@ -311,7 +311,7 @@ void LBCode::runCodeNotifyCommand(LBItem *src, uint32 &offset) {
offset++;
switch (commandType) {
- case 0x3:
+ case kLBNotifyChangePage:
{
debugN("goto");
Common::Array<LBValue> params = readParams(src, offset);
@@ -332,6 +332,27 @@ void LBCode::runCodeNotifyCommand(LBItem *src, uint32 &offset) {
}
break;
+ case kLBNotifyGoToControls:
+ case kLBNotifyGotoQuit:
+ {
+ debugN(commandType == kLBNotifyGoToControls ? "gotocontrol" : "gotoquit");
+ Common::Array<LBValue> params = readParams(src, offset);
+ if (params.size() != 0)
+ error("incorrect number of parameters (%d) to notify", params.size());
+ _vm->addNotifyEvent(NotifyEvent(commandType, 0));
+ }
+ break;
+
+ case kLBNotifyIntroDone:
+ {
+ debugN("startphasemain");
+ Common::Array<LBValue> params = readParams(src, offset);
+ if (params.size() != 0)
+ error("incorrect number of parameters (%d) to startphasemain", params.size());
+ _vm->addNotifyEvent(NotifyEvent(kLBNotifyIntroDone, 1));
+ }
+ break;
+
default:
error("unknown notify command %02x in code", commandType);
}