From 24644c0012fb46bd77c6c24346f85c984418fb3b Mon Sep 17 00:00:00 2001 From: Sven Hesse Date: Mon, 2 Jul 2012 04:04:41 +0200 Subject: GOB: Implement the Once Upon A Time "Bye Bye" screen --- engines/gob/pregob/onceupon/abracadabra.cpp | 2 +- engines/gob/pregob/onceupon/babayaga.cpp | 2 +- engines/gob/pregob/onceupon/onceupon.cpp | 16 ++++++++++++++++ engines/gob/pregob/onceupon/onceupon.h | 2 ++ 4 files changed, 20 insertions(+), 2 deletions(-) (limited to 'engines/gob/pregob/onceupon') diff --git a/engines/gob/pregob/onceupon/abracadabra.cpp b/engines/gob/pregob/onceupon/abracadabra.cpp index 781d683ef0..5a5e407774 100644 --- a/engines/gob/pregob/onceupon/abracadabra.cpp +++ b/engines/gob/pregob/onceupon/abracadabra.cpp @@ -102,7 +102,7 @@ void Abracadabra::run() { mainLoop(); if (!_vm->shouldQuit()) - warning("Abracadabra::run(): TODO: Show \"Bye Bye\""); + showByeBye(); } void Abracadabra::mainLoop() { diff --git a/engines/gob/pregob/onceupon/babayaga.cpp b/engines/gob/pregob/onceupon/babayaga.cpp index 34f674107c..9475ac4b05 100644 --- a/engines/gob/pregob/onceupon/babayaga.cpp +++ b/engines/gob/pregob/onceupon/babayaga.cpp @@ -102,7 +102,7 @@ void BabaYaga::run() { mainLoop(); if (!_vm->shouldQuit()) - warning("BabaYaga::run(): TODO: Show \"Bye Bye\""); + showByeBye(); } void BabaYaga::mainLoop() { diff --git a/engines/gob/pregob/onceupon/onceupon.cpp b/engines/gob/pregob/onceupon/onceupon.cpp index b7bf2c3f5a..6b90e9ba00 100644 --- a/engines/gob/pregob/onceupon/onceupon.cpp +++ b/engines/gob/pregob/onceupon/onceupon.cpp @@ -609,6 +609,22 @@ void OnceUpon::showChapter(int chapter) { fadeOut(); } +void OnceUpon::showByeBye() { + fadeOut(); + hideCursor(); + clearScreen(); + setGamePalette(1); + + _plettre->drawString("Bye Bye....", 140, 80, 2, 0, true, *_vm->_draw->_backSurface); + _vm->_draw->forceBlit(); + + fadeIn(); + + _vm->_util->longDelay(1000); + + fadeOut(); +} + OnceUpon::MenuAction OnceUpon::doMenu(MenuType type) { bool cursorVisible = isCursorVisible(); diff --git a/engines/gob/pregob/onceupon/onceupon.h b/engines/gob/pregob/onceupon/onceupon.h index ff7266e9f3..6f8b67a627 100644 --- a/engines/gob/pregob/onceupon/onceupon.h +++ b/engines/gob/pregob/onceupon/onceupon.h @@ -100,6 +100,8 @@ protected: void showChapter(int chapter); ///< Show a chapter intro text. + void showByeBye(); ///< Show the "bye bye" screen + MenuAction doMenu(MenuType type); void doAnimalNames(uint count, const MenuButton *buttons, const char * const *names); -- cgit v1.2.3