aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorAlyssa Milburn2010-12-07 22:59:16 +0000
committerAlyssa Milburn2010-12-07 22:59:16 +0000
commitd571279d9976801b546d6ab02d0e8f6247a1f61f (patch)
treef7fc3f30470dcc77acd22926c0df6be3a0e5dfa8 /engines
parent1c21ba1fc0db943282f9f9fabee9df9d6d97e553 (diff)
downloadscummvm-rg350-d571279d9976801b546d6ab02d0e8f6247a1f61f.tar.gz
scummvm-rg350-d571279d9976801b546d6ab02d0e8f6247a1f61f.tar.bz2
scummvm-rg350-d571279d9976801b546d6ab02d0e8f6247a1f61f.zip
MOHAWK: Handle LB event-run opcodes
svn-id: r54825
Diffstat (limited to 'engines')
-rw-r--r--engines/mohawk/livingbooks.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/engines/mohawk/livingbooks.cpp b/engines/mohawk/livingbooks.cpp
index 061970ce61..690dfbdae2 100644
--- a/engines/mohawk/livingbooks.cpp
+++ b/engines/mohawk/livingbooks.cpp
@@ -2101,7 +2101,14 @@ void LBItem::runScript(uint id, uint16 data, uint16 from) {
target = this;
debug(2, "Self-target on '%s'", _desc.c_str());
}
-
+
+ // an opcode in the form 0x1xx means to run the script for event 0xx
+ if ((entry->opcode & 0xff00) == 0x0100) {
+ // FIXME: pass on param
+ target->runScript(entry->opcode & 0xff);
+ break;
+ }
+
switch (entry->opcode) {
case 0xffff:
runCommand(entry->command);