aboutsummaryrefslogtreecommitdiff
path: root/engines/xeen/dialogs_options.cpp
diff options
context:
space:
mode:
authorPaul Gilbert2015-01-01 11:46:22 -1000
committerPaul Gilbert2015-01-01 11:46:22 -1000
commitb2f1282aeb7f405f265afac3d601459f4cfebf6d (patch)
tree622091bc86636b2e6fd71ba958ee3ef3ac77653c /engines/xeen/dialogs_options.cpp
parentaa3965cd5dcdf0d774f4798b003c8089e3bcdc7e (diff)
downloadscummvm-rg350-b2f1282aeb7f405f265afac3d601459f4cfebf6d.tar.gz
scummvm-rg350-b2f1282aeb7f405f265afac3d601459f4cfebf6d.tar.bz2
scummvm-rg350-b2f1282aeb7f405f265afac3d601459f4cfebf6d.zip
XEEN: Credits screen now working
Diffstat (limited to 'engines/xeen/dialogs_options.cpp')
-rw-r--r--engines/xeen/dialogs_options.cpp108
1 files changed, 2 insertions, 106 deletions
diff --git a/engines/xeen/dialogs_options.cpp b/engines/xeen/dialogs_options.cpp
index e7f296c9a4..a92fd59715 100644
--- a/engines/xeen/dialogs_options.cpp
+++ b/engines/xeen/dialogs_options.cpp
@@ -88,13 +88,13 @@ void OptionsMenu::execute() {
// Handle keypress
char key = toupper(_key);
+ _key = '\0';
+
if (key == 'C' || key == 'V') {
// Show credits
CreditsScreen::show(_vm);
break;
}
-
- _key = '\0';
}
}
}
@@ -172,101 +172,6 @@ void CloudsOptionsMenu::startup(Common::String &title1, Common::String &title2)
title2 = "title1a.int";
}
-/**
-* Draws the scroll in the background
-*/
-void Dialog::doScroll(bool drawFlag, bool doFade) {
- Screen &screen = *_vm->_screen;
- EventsManager &events = *_vm->_events;
- const int SCROLL_L[8] = { 29, 23, 15, 251, 245, 233, 207, 185 };
- const int SCROLL_R[8] = { 165, 171, 198, 218, 228, 245, 264, 281 };
-
- saveButtons();
- clearButtons();
- screen.saveBackground();
-
- // Load hand vga files
- SpriteResource *hand[16];
- for (int i = 0; i < 16; ++i) {
- Common::String name = Common::String::format("hand%02u.vga", i);
- hand[i] = new SpriteResource(name);
- }
-
- // Load marb vga files
- SpriteResource *marb[5];
- for (int i = 1; i < 5; ++i) {
- Common::String name = Common::String::format("marb%02u.vga");
- marb[i] = new SpriteResource(name);
- }
-
- if (drawFlag) {
- for (int i = 22; i > 0; --i) {
- events.updateGameCounter();
- screen.restoreBackground();
-
- if (i > 0 && i <= 14) {
- hand[i - 1]->draw(screen, 0);
- } else {
- // TODO: Check '800h'.. horizontal reverse maybe?
- hand[14]->draw(screen, 0, Common::Point(SCROLL_L[i - 14], 0));
- marb[15]->draw(screen, 0, Common::Point(SCROLL_R[i - 14], 0));
- }
-
- if (i <= 20) {
- marb[i / 5]->draw(screen, i % 5);
- }
-
- while (!_vm->shouldQuit() && _vm->_events->timeElapsed() == 0)
- _vm->_events->pollEventsAndWait();
-
- screen._windows[0].update();
- if (i == 0 && doFade)
- screen.fadeIn(2);
- }
- } else {
- for (int i = 0; i < 22 && !events.isKeyMousePressed(); ++i) {
- events.updateGameCounter();
- screen.restoreBackground();
-
- if (i < 14) {
- hand[i]->draw(screen, 0);
- }
- else {
- // TODO: Check '800h'.. horizontal reverse maybe?
- hand[14]->draw(screen, 0, Common::Point(SCROLL_L[i - 7], 0));
- marb[15]->draw(screen, 0, Common::Point(SCROLL_R[i - 7], 0));
- }
-
- if (i < 20) {
- marb[i / 5]->draw(screen, i % 5);
- }
-
- while (!_vm->shouldQuit() && _vm->_events->timeElapsed() == 0)
- _vm->_events->pollEventsAndWait();
-
- screen._windows[0].update();
- if (i == 0 && doFade)
- screen.fadeIn(2);
- }
- }
-
- if (drawFlag) {
- hand[0]->draw(screen, 0);
- marb[0]->draw(screen, 0);
- } else {
- screen.restoreBackground();
- }
-
- screen._windows[0].update();
- restoreButtons();
-
- // Free resources
- for (int i = 1; i < 5; ++i)
- delete marb[i];
- for (int i = 0; i < 16; ++i)
- delete hand[i];
-}
-
/*------------------------------------------------------------------------*/
void DarkSideOptionsMenu::startup(Common::String &title1, Common::String &title2) {
@@ -274,15 +179,6 @@ void DarkSideOptionsMenu::startup(Common::String &title1, Common::String &title2
title2 = "title2a.int";
}
-/**
-* Draws the scroll in the background
-*/
-void DarkSideOptionsMenu::doScroll(bool drawFlag, bool doFade) {
- if (doFade) {
- _vm->_screen->fadeIn(2);
- }
-}
-
void WorldOptionsMenu::startup(Common::String &title1, Common::String &title2) {
title1 = "world.int";
title2 = "start.icn";