aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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);
}