diff options
author | Matthew Hoops | 2010-11-19 03:52:06 +0000 |
---|---|---|
committer | Matthew Hoops | 2010-11-19 03:52:06 +0000 |
commit | 769b460f0d5d751ebf0ef2ad174ca013f00172d9 (patch) | |
tree | 0af0843e95e593f82c24243000a4303039053e76 | |
parent | a0df86955f80dedaa00e6f7593e96b90b697a83a (diff) | |
download | scummvm-rg350-769b460f0d5d751ebf0ef2ad174ca013f00172d9.tar.gz scummvm-rg350-769b460f0d5d751ebf0ef2ad174ca013f00172d9.tar.bz2 scummvm-rg350-769b460f0d5d751ebf0ef2ad174ca013f00172d9.zip |
MOHAWK: Implement another Riven demo external
xademoquit() is called from card 12 when clicking anywhere but the system requirements (which is why I hadn't noticed it earlier). I've also stubbed another demo function (xaexittomain()), called from an unused card's script for completeness.
svn-id: r54359
-rw-r--r-- | engines/mohawk/riven_external.cpp | 22 | ||||
-rw-r--r-- | engines/mohawk/riven_external.h | 2 |
2 files changed, 24 insertions, 0 deletions
diff --git a/engines/mohawk/riven_external.cpp b/engines/mohawk/riven_external.cpp index 21464a6a48..de18509daa 100644 --- a/engines/mohawk/riven_external.cpp +++ b/engines/mohawk/riven_external.cpp @@ -70,6 +70,8 @@ void RivenExternal::setupCommands() { COMMAND(xalaunchbrowser); COMMAND(xadisablemenuintro); COMMAND(xaenablemenuintro); + COMMAND(xademoquit); + COMMAND(xaexittomain); // bspit (Bookmaking Island) external commands COMMAND(xblabopenbook); @@ -652,6 +654,26 @@ void RivenExternal::xaenablemenuintro(uint16 argc, uint16 *argv) { _vm->_gfx->showInventory(); } +void RivenExternal::xademoquit(uint16 argc, uint16 *argv) { + // Exactly as it says on the tin. In the demo, this function quits. + _vm->setGameOver(); +} + +void RivenExternal::xaexittomain(uint16 argc, uint16 *argv) { + // One could potentially implement this function, but there would be no + // point. This function is only used in the demo's aspit card 9 update + // screen script. However, card 9 is not accessible from the game without + // jumping to the card and there's nothing going on in the card so it + // never gets called. There's also no card 9 in the full game, so the + // functionality of this card was likely removed before release. The + // demo executable references some other external commands relating to + // setting and getting the volume, as well as drawing the volume. I'd + // venture to guess that this would have been some sort of options card + // replaced with the Windows/Mac API in the final product. + // + // Yeah, this function is just dummied and holds a big comment ;) +} + // ------------------------------------------------------------------------------------ // bspit (Bookmaking Island) external commands // ------------------------------------------------------------------------------------ diff --git a/engines/mohawk/riven_external.h b/engines/mohawk/riven_external.h index 1f012c82d9..d39bc3532f 100644 --- a/engines/mohawk/riven_external.h +++ b/engines/mohawk/riven_external.h @@ -100,6 +100,8 @@ private: void xalaunchbrowser(uint16 argc, uint16 *argv); void xadisablemenuintro(uint16 argc, uint16 *argv); void xaenablemenuintro(uint16 argc, uint16 *argv); + void xademoquit(uint16 argc, uint16 *argv); + void xaexittomain(uint16 argc, uint16 *argv); // ----------------------------------------------------- // bspit (Boiler Island) external commands |