aboutsummaryrefslogtreecommitdiff
path: root/engines/supernova
diff options
context:
space:
mode:
authorJoseph-Eugene Winzer2019-05-28 02:16:32 +0200
committerJoseph-Eugene Winzer2019-05-28 02:24:42 +0200
commit38e04455fc75f65b78b998cd609a55710ceb7f3b (patch)
treef9cb50a15a68b0f68cb0c632759cc864426113a8 /engines/supernova
parente7b91fe40fefc727d8108b1616fab9bd2a4c551f (diff)
downloadscummvm-rg350-38e04455fc75f65b78b998cd609a55710ceb7f3b.tar.gz
scummvm-rg350-38e04455fc75f65b78b998cd609a55710ceb7f3b.tar.bz2
scummvm-rg350-38e04455fc75f65b78b998cd609a55710ceb7f3b.zip
SUPERNOVA: Adds Help screen
Diffstat (limited to 'engines/supernova')
-rw-r--r--engines/supernova/state.cpp1
-rw-r--r--engines/supernova/supernova.cpp24
-rw-r--r--engines/supernova/supernova.h1
3 files changed, 26 insertions, 0 deletions
diff --git a/engines/supernova/state.cpp b/engines/supernova/state.cpp
index 6600613a35..6981004314 100644
--- a/engines/supernova/state.cpp
+++ b/engines/supernova/state.cpp
@@ -582,6 +582,7 @@ void GameManager::processInput(Common::KeyState &state) {
switch (state.keycode) {
case Common::KEYCODE_F1:
// help
+ _vm->showHelpScreen();
break;
case Common::KEYCODE_F2:
// show game doc
diff --git a/engines/supernova/supernova.cpp b/engines/supernova/supernova.cpp
index 34d40640c7..3386c653b5 100644
--- a/engines/supernova/supernova.cpp
+++ b/engines/supernova/supernova.cpp
@@ -410,6 +410,30 @@ void SupernovaEngine::setTextSpeed() {
_gm->animationOn();
}
+void SupernovaEngine::showHelpScreen() {
+ if (_screen->isMessageShown())
+ _screen->removeMessage();
+ _gm->animationOff();
+ _gm->saveTime();
+
+ paletteFadeOut();
+ renderImage(kImageHelpScreen);
+ renderBox(100, 100, 192, 78, kColorWhite35);
+ renderText(kStringHelpOverview1, 105, 105, kColorWhite99);
+ renderText(kStringHelpOverview2, 105, 115, kColorWhite99);
+ renderText(kStringHelpOverview3, 105, 125, kColorWhite99);
+ renderText(kStringHelpOverview4, 105, 135, kColorWhite99);
+ renderText(kStringHelpOverview5, 105, 145, kColorWhite99);
+ renderText(kStringHelpOverview6, 105, 155, kColorWhite99);
+ renderText(kStringHelpOverview7, 105, 165, kColorWhite99);
+ paletteFadeIn();
+ _gm->getKeyInput();
+
+ paletteFadeOut();
+ _gm->loadTime();
+ _gm->animationOn();
+}
+
bool SupernovaEngine::quitGameDialog() {
bool quit = false;
diff --git a/engines/supernova/supernova.h b/engines/supernova/supernova.h
index c66fd5032e..cb516c92c9 100644
--- a/engines/supernova/supernova.h
+++ b/engines/supernova/supernova.h
@@ -95,6 +95,7 @@ public:
void setTextSpeed();
const Common::String &getGameString(int idx) const;
void setGameString(int idx, const Common::String &string);
+ void showHelpScreen();
// forwarding calls
void playSound(AudioId sample);