LAB: Move the LAB2 teaser screen in a separate function

This commit is contained in:
Filippos Karapetis 2015-12-13 19:27:34 +02:00 committed by Willem Jan Palenstijn
parent 231dda2ba9
commit c883769adc
3 changed files with 24 additions and 22 deletions

View File

@ -575,6 +575,26 @@ void LabEngine::mainGameLoop() {
}
}
void LabEngine::showLab2Teaser() {
_graphics->blackAllScreen();
_graphics->readPict("P:End/L2In.1", true);
for (uint16 i = 0; i < 120; i++) {
_music->updateMusic();
waitTOF();
}
_graphics->readPict("P:End/L2In.9", true);
_graphics->readPict("P:End/Lost", true);
warning("STUB: waitForPress");
while (!1) { // 1 means ignore SDL_ProcessInput calls
_music->updateMusic();
_anim->diffNextFrame();
waitTOF();
}
}
bool LabEngine::fromCrumbs(uint32 tmpClass, uint16 code, uint16 qualifier, Common::Point tmpPos,
uint16 &curInv, IntuiMessage *curMsg, bool &forceDraw, uint16 gadgetId, uint16 &actionMode) {
uint32 msgClass = tmpClass;
@ -1099,27 +1119,6 @@ void LabEngine::go() {
_event->mouseShow();
mainGameLoop();
if (_quitLab) {
// Won the game
_graphics->blackAllScreen();
_graphics->readPict("P:End/L2In.1", true);
for (uint16 i = 0; i < 120; i++) {
_music->updateMusic();
waitTOF();
}
_graphics->readPict("P:End/L2In.9", true);
_graphics->readPict("P:End/Lost", true);
warning("STUB: waitForPress");
while (!1) { // 1 means ignore SDL_ProcessInput calls
_music->updateMusic();
_anim->diffNextFrame();
waitTOF();
}
}
_graphics->closeFont(_msgFont);
_graphics->freePict();

View File

@ -234,6 +234,7 @@ private:
void loadJournalData();
void loadMapData();
void mainGameLoop();
void showLab2Teaser();
void mayShowCrumbIndicator();
void mayShowCrumbIndicatorOff();
void perFlipGadget(uint16 gadID);

View File

@ -481,10 +481,12 @@ void LabEngine::doActions(Action *actionList, CloseDataPtr *closePtrList) {
case WINGAME:
_quitLab = true;
showLab2Teaser();
break;
case LOSTGAME:
_quitLab = true;
// This seems to be unused?
error("Unused opcode LOSTGAME has been called");
break;
case RESETBUFFER: