diff options
author | Jaromir Wysoglad | 2019-06-24 10:40:56 +0200 |
---|---|---|
committer | Thierry Crozat | 2019-07-28 15:09:14 +0100 |
commit | ab4af5c61483c90d4ee9479a2e2ed4130a2cd90e (patch) | |
tree | 53786b92ace7c8c62a9238b0abd0edf1477c3d4d /engines | |
parent | b1f37566ea02a3e55fbe7d79e4d39d3655ca16de (diff) | |
download | scummvm-rg350-ab4af5c61483c90d4ee9479a2e2ed4130a2cd90e.tar.gz scummvm-rg350-ab4af5c61483c90d4ee9479a2e2ed4130a2cd90e.tar.bz2 scummvm-rg350-ab4af5c61483c90d4ee9479a2e2ed4130a2cd90e.zip |
SUPERNOVA: Add info, doc, help screens for MS2
Diffstat (limited to 'engines')
-rw-r--r-- | engines/supernova/game-manager.cpp | 15 | ||||
-rw-r--r-- | engines/supernova/msn_def.h | 3 | ||||
-rw-r--r-- | engines/supernova/supernova.cpp | 27 | ||||
-rw-r--r-- | engines/supernova/supernova.h | 3 | ||||
-rw-r--r-- | engines/supernova/supernova1/rooms.cpp | 1 | ||||
-rw-r--r-- | engines/supernova/supernova1/rooms.h | 1 | ||||
-rw-r--r-- | engines/supernova/supernova1/stringid.h | 7 | ||||
-rw-r--r-- | engines/supernova/supernova2/rooms.cpp | 10 | ||||
-rw-r--r-- | engines/supernova/supernova2/stringid.h | 8 |
9 files changed, 54 insertions, 21 deletions
diff --git a/engines/supernova/game-manager.cpp b/engines/supernova/game-manager.cpp index cefc41d02d..8296e27651 100644 --- a/engines/supernova/game-manager.cpp +++ b/engines/supernova/game-manager.cpp @@ -225,15 +225,24 @@ void GameManager::processInput(Common::KeyState &state) { switch (state.keycode) { case Common::KEYCODE_F1: // help - _vm->showHelpScreen(); + if (_vm->_MSPart == 1) + _vm->showHelpScreen1(); + else if (_vm->_MSPart == 2) + _vm->showHelpScreen2(); break; case Common::KEYCODE_F2: // show game manual - _vm->showTextReader("msn.doc"); + if (_vm->_MSPart == 1) + _vm->showTextReader("msn.doc"); + else if (_vm->_MSPart == 2) + _vm->showTextReader("ms2.doc"); break; case Common::KEYCODE_F3: // show game info - _vm->showTextReader("msn.inf"); + if (_vm->_MSPart == 1) + _vm->showTextReader("msn.inf"); + else if (_vm->_MSPart == 2) + _vm->showTextReader("ms2.inf"); break; case Common::KEYCODE_F4: _vm->setTextSpeed(); diff --git a/engines/supernova/msn_def.h b/engines/supernova/msn_def.h index eebffc34cd..70d167e3d2 100644 --- a/engines/supernova/msn_def.h +++ b/engines/supernova/msn_def.h @@ -186,7 +186,8 @@ enum StringId { kStringCommandGo = 0, kStringCommandLook, kStringCommandTake, kStringCommandOpen, kStringCommandClose, kStringCommandPress, kStringCommandPull, kStringCommandUse, kStringCommandTalk, kStringCommandGive, kStringStatusCommandGo, kStringStatusCommandLook, kStringStatusCommandTake, kStringStatusCommandOpen, kStringStatusCommandClose, - kStringStatusCommandPress, kStringStatusCommandPull, kStringStatusCommandUse, kStringStatusCommandTalk, kStringStatusCommandGive, kPhrasalVerbParticleGiveTo, kPhrasalVerbParticleUseWith, kStringDefaultDescription, kStringDialogSeparator, kStringConversationEnd + kStringStatusCommandPress, kStringStatusCommandPull, kStringStatusCommandUse, kStringStatusCommandTalk, kStringStatusCommandGive, kPhrasalVerbParticleGiveTo, kPhrasalVerbParticleUseWith, kStringDefaultDescription, kStringDialogSeparator, kStringConversationEnd, kStringHelpOverview1, kStringHelpOverview2, + kStringHelpOverview3, kStringHelpOverview4, kStringHelpOverview5, kStringHelpOverview6, kStringHelpOverview7, kStringTextSpeed, kStringLeaveGame, kStringYes, kStringNo }; ObjectType operator|(ObjectType a, ObjectType b); diff --git a/engines/supernova/supernova.cpp b/engines/supernova/supernova.cpp index 4ff5434aad..9d7faf880b 100644 --- a/engines/supernova/supernova.cpp +++ b/engines/supernova/supernova.cpp @@ -455,7 +455,7 @@ void SupernovaEngine::setTextSpeed() { _gm->animationOn(); } -void SupernovaEngine::showHelpScreen() { +void SupernovaEngine::showHelpScreen1() { if (_screen->isMessageShown()) _screen->removeMessage(); _gm->animationOff(); @@ -479,6 +479,31 @@ void SupernovaEngine::showHelpScreen() { _gm->animationOn(); } +void SupernovaEngine::showHelpScreen2() { + if (_screen->isMessageShown()) + _screen->removeMessage(); + _gm->animationOff(); + _gm->saveTime(); + + paletteFadeOut(); + setCurrentImage(27); + renderImage(0); + renderBox(10, 70, 192, 100, kColorWhite35); + renderText(kStringHelpOverview1, 15, 80, kColorWhite99); + renderText(kStringHelpOverview2, 15, 92, kColorWhite99); + renderText(kStringHelpOverview3, 15, 104, kColorWhite99); + renderText(kStringHelpOverview4, 15, 116, kColorWhite99); + renderText(kStringHelpOverview5, 15, 128, kColorWhite99); + renderText(kStringHelpOverview6, 15, 140, kColorWhite99); + renderText(kStringHelpOverview7, 15, 152, kColorWhite99); + paletteFadeIn(); + _gm->getKeyInput(); + + paletteFadeOut(); + _gm->loadTime(); + _gm->animationOn(); +} + Common::Error SupernovaEngine::showTextReader(const char *filename) { Common::File file; diff --git a/engines/supernova/supernova.h b/engines/supernova/supernova.h index 7054fcdfd0..b357f6e1a3 100644 --- a/engines/supernova/supernova.h +++ b/engines/supernova/supernova.h @@ -102,7 +102,8 @@ public: void setTextSpeed(); const Common::String &getGameString(int idx) const; void setGameString(int idx, const Common::String &string); - void showHelpScreen(); + void showHelpScreen1(); + void showHelpScreen2(); Common::Error showTextReader(const char *filename); // forwarding calls diff --git a/engines/supernova/supernova1/rooms.cpp b/engines/supernova/supernova1/rooms.cpp index 7190a7584a..f39cbb861b 100644 --- a/engines/supernova/supernova1/rooms.cpp +++ b/engines/supernova/supernova1/rooms.cpp @@ -27,6 +27,7 @@ #include "supernova/screen.h" #include "supernova/supernova.h" #include "supernova/supernova1/state.h" +#include "supernova/supernova1/stringid.h" namespace Supernova { diff --git a/engines/supernova/supernova1/rooms.h b/engines/supernova/supernova1/rooms.h index 0b0dbc432b..d45936b14b 100644 --- a/engines/supernova/supernova1/rooms.h +++ b/engines/supernova/supernova1/rooms.h @@ -26,7 +26,6 @@ #include "common/str.h" #include "supernova/msn_def.h" -#include "supernova/supernova1/stringid.h" #include "supernova/room.h" namespace Common { diff --git a/engines/supernova/supernova1/stringid.h b/engines/supernova/supernova1/stringid.h index 7f3c1f1fcb..81f92772d0 100644 --- a/engines/supernova/supernova1/stringid.h +++ b/engines/supernova/supernova1/stringid.h @@ -28,7 +28,7 @@ namespace Supernova { enum StringId1 { - kStringTitleVersion = 25, kStringTitle1, kStringTitle2, kStringTitle3, kStringIntro1, + kStringTitleVersion = 36, kStringTitle1, kStringTitle2, kStringTitle3, kStringIntro1, kStringIntro2, kStringIntro3, kStringIntro4, kStringIntro5, kStringIntro6, kStringIntro7, kStringIntro8, kStringIntro9, kStringIntro10, kStringIntro11, kStringIntro12, kStringIntro13, kStringBroken, kStringTakeMessage, @@ -169,15 +169,12 @@ enum StringId1 { kStringGenericInteract_43, kStringSupernova1, kStringSupernova2, kStringSupernova3, kStringSupernova4, kStringSupernova5, kStringSupernova6, kStringSupernova7, kStringSupernova8, // 625 - kStringTextSpeed, kStringGuardNoticed1, kStringGuardNoticed2, kStringTelomat1, kStringTelomat2, + kStringGuardNoticed1, kStringGuardNoticed2, kStringTelomat1, kStringTelomat2, kStringTelomat3, kStringTelomat4, kStringTelomat5, kStringTelomat6, kStringTelomat7, kStringTelomat8, kStringTelomat9, kStringTelomat10, kStringTelomat11, kStringTelomat12, kStringTelomat13, kStringTelomat14, kStringTelomat15, kStringTelomat16, kStringTelomat17, kStringTelomat18, kStringTelomat19, kStringTelomat20, kStringTelomat21, kStringAlarm, // 650 - kStringLeaveGame, kStringYes, kStringNo, kStringHelpOverview1, kStringHelpOverview2, - kStringHelpOverview3, kStringHelpOverview4, kStringHelpOverview5, kStringHelpOverview6, kStringHelpOverview7, - // Add two placeholder strings at the end for variable text kStringPlaceholder1, kStringPlaceholder2, diff --git a/engines/supernova/supernova2/rooms.cpp b/engines/supernova/supernova2/rooms.cpp index 01ccb59463..9399444069 100644 --- a/engines/supernova/supernova2/rooms.cpp +++ b/engines/supernova/supernova2/rooms.cpp @@ -973,8 +973,8 @@ bool Checkout::interact(Action verb, Object &obj1, Object &obj2) { kStringCheckout3 }; static int dialCheckout2[2] = { - kStringYes, - kStringNo + kStringYes2, + kStringNo2 }; static int dialStage1[3] = { kStringCheckout4, @@ -1116,7 +1116,7 @@ bool Checkout::interact(Action verb, Object &obj1, Object &obj2) { switch (_gm->dialog(3, _gm->_dials, dialCheckout1, 1)) { case 0: _gm->reply(kStringCheckout40, 1, 1 + 128); - _gm->say(kStringNo); + _gm->say(kStringNo2); _gm->reply(kStringCheckout41, 1, 1 + 128); _gm->say(kStringCheckout42); break; @@ -1128,7 +1128,7 @@ bool Checkout::interact(Action verb, Object &obj1, Object &obj2) { *_gm->_rooms[CULTURE_PALACE]->getObject(4), *_gm->_rooms[CHECKOUT]->getObject(2)); } else { - _gm->say(kStringNo); + _gm->say(kStringNo2); _gm->reply(kStringCheckout45, 1, 1 + 128); _gm->say(kStringCheckout46); } @@ -1624,7 +1624,7 @@ bool Elevator2::interact(Action verb, Object &obj1, Object &obj2) { _vm->renderImage(0); _vm->paletteFadeIn(); _gm->reply(kStringElevator15, 1, 1 + 128); - _gm->say(kStringYes); + _gm->say(kStringYes2); _gm->reply(kStringElevator16, 1, 1 + 128); _gm->reply(kStringElevator17, 1, 1 + 128); if (_gm->dialog(2, _gm->_dials, dialBoss1, 0)) { diff --git a/engines/supernova/supernova2/stringid.h b/engines/supernova/supernova2/stringid.h index fe765df3ce..42540319fe 100644 --- a/engines/supernova/supernova2/stringid.h +++ b/engines/supernova/supernova2/stringid.h @@ -28,9 +28,9 @@ namespace Supernova { enum StringId2 { -kString23 = 25, kString24, -kString25, kString26, kString27, kStringTextSpeed, kStringLeaveGame, -kString30, kString31, kStringGenericInteract1, kStringGenericInteract2, kStringGenericInteract3, +kString23 = 36, kString24, +kString25, kString26, kString27, +kStringGenericInteract1, kStringGenericInteract2, kStringGenericInteract3, kStringGenericInteract4, kStringGenericInteract5, kStringGenericInteract6, kStringGenericInteract7, kStringGenericInteract8, kStringGenericInteract9, kStringGenericInteract10, kStringGenericInteract11, kStringGenericInteract12, kStringGenericInteract13, kStringIntro1, kStringIntro2, kStringIntro3, kStringIntro4, kStringIntro5, @@ -97,7 +97,7 @@ kStringWhatYouWant, kStringWhoAreYou, kStringHorstHummel2, kStringNeverHeard, kS kStringImOnTV, kStringIDontKnow, kStringFunny, kStringAha, kStringICan, kStringFromWhom, kStringCost, kStringAsYouSay, kStringGetCard, kStringOnlyParticipation, kStringWhatForIt, kStringMakeOffer, kStringGoodOffer, kStringGiveCard, kStringIdiot, -kStringCheckout1, kStringCheckout2, kStringCheckout3, kStringYes, kStringNo, +kStringCheckout1, kStringCheckout2, kStringCheckout3, kStringYes2, kStringNo2, kStringCheckout4, kStringCheckout5, kStringCheckout6, kStringCheckout7, kStringCheckout8, kStringCheckout9, kStringCheckout10, kStringCheckout11, kStringCheckout12, kStringCheckout13, kStringCheckout14, kStringCheckout15, kStringCheckout16, kStringCheckout17, kStringCheckout18, |