mirror of
https://github.com/libretro/scummvm.git
synced 2024-12-15 06:08:35 +00:00
AVALANCHE: Implement 'winning_pic'.
This commit is contained in:
parent
a4583ade56
commit
3f6d71dd25
@ -718,6 +718,19 @@ void GraphicManager::shiftScreen() {
|
||||
_surface.drawLine(0, 0, _surface.w, 0, kColorBlack);
|
||||
}
|
||||
|
||||
void GraphicManager::drawWinningPic() {
|
||||
Common::File file;
|
||||
|
||||
if (!file.open("finale.avd"))
|
||||
error("AVALANCHE: Timer: File not found: finale.avd");
|
||||
|
||||
Graphics::Surface winning = loadPictureRaw(file, 640, 200);
|
||||
drawPicture(_surface, winning, 0, 0);
|
||||
|
||||
winning.free();
|
||||
file.close();
|
||||
}
|
||||
|
||||
void GraphicManager::clearAlso() {
|
||||
_magics.fillRect(Common::Rect(0, 0, 640, 200), 0);
|
||||
_magics.frameRect(Common::Rect(0, 45, 640, 161), 15);
|
||||
|
@ -92,6 +92,9 @@ public:
|
||||
// Used in wobble()
|
||||
void shiftScreen();
|
||||
|
||||
// Used in winning()
|
||||
void drawWinningPic();
|
||||
|
||||
// Ghostroom's functions:
|
||||
void ghostDrawGhost(byte ghostArr[2][66][26], uint16 destX, int16 destY); // Very similar to loadPictureSign(). TODO: Unify the two later if possible.
|
||||
void ghostDrawGlerk(byte glerkArr[4][35][9], uint16 destX, uint16 destY); // Very similar to ghostDrawGhost(), but not enough to unify the two.
|
||||
|
@ -632,11 +632,39 @@ void Timer::arkataShouts() {
|
||||
addTimer(160, kProcArkataShouts, kReasonArkataShouts);
|
||||
}
|
||||
|
||||
/**
|
||||
* @remarks Contains the content of the function 'winning_pic', originally located in PINGO.
|
||||
*/
|
||||
void Timer::winning() {
|
||||
_vm->_dialogs->displayScrollChain('Q', 79);
|
||||
|
||||
//_vm->_pingo->winningPic();
|
||||
warning("STUB: Timer::winning()");
|
||||
// This was originally located in winning_pic:
|
||||
CursorMan.showMouse(false);
|
||||
_vm->_graphics->saveScreen();
|
||||
_vm->fadeOut();
|
||||
_vm->_graphics->drawWinningPic();
|
||||
_vm->_graphics->refreshScreen();
|
||||
_vm->fadeIn();
|
||||
|
||||
// Waiting for a keypress or a left mouseclick:
|
||||
Common::Event event;
|
||||
bool escape = false;
|
||||
while (!_vm->shouldQuit() && !escape) {
|
||||
_vm->_graphics->refreshScreen();
|
||||
while (_vm->getEvent(event)) {
|
||||
if ((event.type == Common::EVENT_LBUTTONUP) || (event.type == Common::EVENT_KEYDOWN)) {
|
||||
escape = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
_vm->fadeOut();
|
||||
_vm->_graphics->restoreScreen();
|
||||
_vm->_graphics->removeBackup();
|
||||
_vm->fadeIn();
|
||||
CursorMan.showMouse(true);
|
||||
// winning_pic's end.
|
||||
|
||||
_vm->callVerb(kVerbCodeScore);
|
||||
_vm->_dialogs->displayText(" T H E E N D ");
|
||||
|
Loading…
Reference in New Issue
Block a user