diff options
author | Matthew Hoops | 2010-09-03 19:13:58 +0000 |
---|---|---|
committer | Matthew Hoops | 2010-09-03 19:13:58 +0000 |
commit | 8a168f028bfdf084892abd623942a0c3f9f8de58 (patch) | |
tree | abe3cd86d99291bd01d16303b1b99a0a33bbb582 /engines/mohawk/graphics.cpp | |
parent | 87b78b1673037409604cdb4a1a5d6884af71bac1 (diff) | |
download | scummvm-rg350-8a168f028bfdf084892abd623942a0c3f9f8de58.tar.gz scummvm-rg350-8a168f028bfdf084892abd623942a0c3f9f8de58.tar.bz2 scummvm-rg350-8a168f028bfdf084892abd623942a0c3f9f8de58.zip |
MOHAWK: Improve support for the Riven Demo
- The exit button now appears and is functional
- The intro movies now play on start up
- Add shortcuts for returning to the menu/playing the intro videos again
- Make the text when hitting a boundary match the original
- Change the wording of the browser button message
- Note: The demo's extras.mhk (not the full game's!) is required now
svn-id: r52509
Diffstat (limited to 'engines/mohawk/graphics.cpp')
-rw-r--r-- | engines/mohawk/graphics.cpp | 49 |
1 files changed, 28 insertions, 21 deletions
diff --git a/engines/mohawk/graphics.cpp b/engines/mohawk/graphics.cpp index 8a7caa9d2b..fb0bf86f42 100644 --- a/engines/mohawk/graphics.cpp +++ b/engines/mohawk/graphics.cpp @@ -597,28 +597,35 @@ void RivenGraphics::showInventory() { // Clear the inventory area clearInventoryArea(); - // The demo doesn't have the inventory system and we don't want - // to show the inventory on setup screens or in other journals. - if (_vm->getFeatures() & GF_DEMO || _vm->getCurStack() == aspit) - return; - - // There are three books and three vars. We have three different - // combinations. At the start you have just Atrus' journal. Later, - // you get Catherine's journal and the trap book. Near the end, - // you lose the trap book and have just the two journals. - - bool hasCathBook = *_vm->matchVarToString("acathbook") != 0; - bool hasTrapBook = *_vm->matchVarToString("atrapbook") != 0; - - if (!hasCathBook) { - drawInventoryImage(101, g_atrusJournalRect1); - } else if (!hasTrapBook) { - drawInventoryImage(101, g_atrusJournalRect2); - drawInventoryImage(102, g_cathJournalRect2); + // Draw the demo's exit button + if (_vm->getFeatures() & GF_DEMO) { + // extras.mhk tBMP 101 contains "EXIT" instead of Atrus' journal in the demo! + // The demo's extras.mhk contains all the other inventory/marble/credits image + // but has hacked tBMP 101 with "EXIT". *sigh* + drawInventoryImage(101, g_demoExitRect); } else { - drawInventoryImage(101, g_atrusJournalRect3); - drawInventoryImage(102, g_cathJournalRect3); - drawInventoryImage(100, g_trapBookRect3); + // We don't want to show the inventory on setup screens or in other journals. + if (_vm->getCurStack() == aspit) + return; + + // There are three books and three vars. We have three different + // combinations. At the start you have just Atrus' journal. Later, + // you get Catherine's journal and the trap book. Near the end, + // you lose the trap book and have just the two journals. + + bool hasCathBook = *_vm->matchVarToString("acathbook") != 0; + bool hasTrapBook = *_vm->matchVarToString("atrapbook") != 0; + + if (!hasCathBook) { + drawInventoryImage(101, g_atrusJournalRect1); + } else if (!hasTrapBook) { + drawInventoryImage(101, g_atrusJournalRect2); + drawInventoryImage(102, g_cathJournalRect2); + } else { + drawInventoryImage(101, g_atrusJournalRect3); + drawInventoryImage(102, g_cathJournalRect3); + drawInventoryImage(100, g_trapBookRect3); + } } _vm->_system->updateScreen(); |