aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
Diffstat (limited to 'engines')
-rw-r--r--engines/lilliput/lilliput.cpp2
-rw-r--r--engines/lilliput/script.cpp26
2 files changed, 22 insertions, 6 deletions
diff --git a/engines/lilliput/lilliput.cpp b/engines/lilliput/lilliput.cpp
index 3e8f4d9f20..bc2a818ece 100644
--- a/engines/lilliput/lilliput.cpp
+++ b/engines/lilliput/lilliput.cpp
@@ -1144,7 +1144,7 @@ void LilliputEngine::sub189DE() {
if (_byte1881D != 0) {
--_byte1881D;
- if (_byte1881D != 0) {
+ if (_byte1881D == 0) {
displayFunction17();
_scriptHandler->_word1881B = 0xFFFF;
}
diff --git a/engines/lilliput/script.cpp b/engines/lilliput/script.cpp
index 833fb14e03..4851f8a70a 100644
--- a/engines/lilliput/script.cpp
+++ b/engines/lilliput/script.cpp
@@ -1575,7 +1575,6 @@ void LilliputScript::OC_sub17DB9() {
void LilliputScript::OC_sub17DF9() {
debugC(1, kDebugScript, "OC_sub17DF9()");
-
if ((_word1881B & 0xFF) == 0xFF) {
OC_sub17D57();
return;
@@ -1585,10 +1584,25 @@ void LilliputScript::OC_sub17DF9() {
}
void LilliputScript::OC_sub17E07() {
- warning("OC_sub17E07");
+ debugC(1, kDebugScript, "OC_sub17E07()");
+ if ((_word1881B & 0xFF) == 0xFF) {
+ OC_sub17D7F();
+ return;
+ }
+ _currScript->readUint16LE();
+ _currScript->readUint16LE();
+ _currScript->readUint16LE();
+ _currScript->readUint16LE();
+
}
void LilliputScript::OC_sub17E15() {
- warning("OC_sub17E15");
+ debugC(1, kDebugScript, "OC_sub17E15()");
+ if ((_word1881B & 0xFF) == 0xFF) {
+ OC_sub17DB9();
+ return;
+ }
+ _currScript->readUint16LE();
+ _currScript->readUint16LE();
}
void LilliputScript::OC_sub17B03() {
@@ -1652,13 +1666,15 @@ void LilliputScript::OC_sub17E37() {
warning("OC_sub17E37");
}
void LilliputScript::OC_resetByte1714E() {
- warning("OC_resetByte1714E");
+ debugC(1, kDebugScript, "OC_resetByte1714E()");
+ _vm->_byte1714E = 0;
}
void LilliputScript::OC_deleteSavegameAndQuit() {
warning("OC_deleteSavegameAndQuit");
}
void LilliputScript::OC_incByte16F04() {
- warning("OC_incByte16F04");
+ debugC(1, kDebugScript, "OC_incByte16F04()");
+ _vm->_byte1714E++;
}
void LilliputScript::OC_sub17BA5() {