diff options
author | sylvaintv | 2012-04-26 00:42:30 +0200 |
---|---|---|
committer | Eugene Sandulenko | 2018-03-28 17:36:57 +0200 |
commit | 576f0217e0864699541d25f553ad4eb25106fac6 (patch) | |
tree | a45b9cf43cff4831bcd452d66f021fb44b36545c | |
parent | 5caad723c50843b3c5926a07f7b72f22c0268bed (diff) | |
download | scummvm-rg350-576f0217e0864699541d25f553ad4eb25106fac6.tar.gz scummvm-rg350-576f0217e0864699541d25f553ad4eb25106fac6.tar.bz2 scummvm-rg350-576f0217e0864699541d25f553ad4eb25106fac6.zip |
LILLIPUT: Implements Load Map opcode
Loads graphics, fade out/in, display points
-rw-r--r-- | engines/lilliput/lilliput.cpp | 2 | ||||
-rw-r--r-- | engines/lilliput/lilliput.h | 2 | ||||
-rw-r--r-- | engines/lilliput/script.cpp | 20 |
3 files changed, 23 insertions, 1 deletions
diff --git a/engines/lilliput/lilliput.cpp b/engines/lilliput/lilliput.cpp index 7c7f9a84f4..b1c7c4f3f0 100644 --- a/engines/lilliput/lilliput.cpp +++ b/engines/lilliput/lilliput.cpp @@ -145,6 +145,7 @@ LilliputEngine::LilliputEngine(OSystem *syst, const LilliputGameDescription *gd) _byte16552 = 0; _byte12FE4 = 0xFF; _byte12FE3 = 0; + _byte16F08 = 0; _rulesBuffer2PrevIndx = 0; _word16EFA = 0; @@ -157,6 +158,7 @@ LilliputEngine::LilliputEngine(OSystem *syst, const LilliputGameDescription *gd) _word15AC2 = 0; _word16213 = 0; _word16215 = 0; + _word15AC2 = 0; _displayStringIndex = 0; _word1289D = 0; diff --git a/engines/lilliput/lilliput.h b/engines/lilliput/lilliput.h index 1f355a413f..14bd9ada7b 100644 --- a/engines/lilliput/lilliput.h +++ b/engines/lilliput/lilliput.h @@ -103,6 +103,8 @@ public: byte _byte16552; byte _byte12FE4; byte _byte12FE3; + byte _byte16F08; + byte _byte15EAD; byte _array147D1[3]; byte _buffer1[45056]; diff --git a/engines/lilliput/script.cpp b/engines/lilliput/script.cpp index 1be99b67a7..adb0c255fb 100644 --- a/engines/lilliput/script.cpp +++ b/engines/lilliput/script.cpp @@ -1826,8 +1826,26 @@ void LilliputScript::OC_sub183C6() { warning("OC_sub183C6"); } void LilliputScript::OC_loadFile_AERIAL_GFX() { - warning("OC_loadFile_AERIAL_GFX"); + debugC(1, kDebugScript, "OC_loadFile_AERIAL_GFX()"); + + int var1 = _currScript->readUint16LE() & 0xff; + _vm->_byte15EAD = var1; + + _byte12A09 = 1; + _word1881B = 0xFFFF; + OC_PaletteFadeOut(); + _vm->_word15AC2 = 1; + _vm->displayVGAFile("AERIAL.GFX"); + OC_PaletteFadeIn(); + + _vm->displayCharactersOnMap(); + _vm->_byte16F08 = 1; + _vm->_keyboard_oldIndex = 0; + _vm->_keyboard_nextIndex = 0; + + _vm->_byte12A09 = 0; } + void LilliputScript::OC_sub17E22() { warning("OC_sub17E22"); } |