From 769b460f0d5d751ebf0ef2ad174ca013f00172d9 Mon Sep 17 00:00:00 2001 From: Matthew Hoops Date: Fri, 19 Nov 2010 03:52:06 +0000 Subject: 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 --- engines/mohawk/riven_external.cpp | 22 ++++++++++++++++++++++ engines/mohawk/riven_external.h | 2 ++ 2 files changed, 24 insertions(+) (limited to 'engines/mohawk') 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 -- cgit v1.2.3