mirror of
https://github.com/libretro/scummvm.git
synced 2025-03-04 01:07:22 +00:00
Committing patch '[ 1531177 ] Kyra2 mock-up' by eriktorbjorn, with the addition of playing the music tracks as well (Only MIDI works for now though)
svn-id: r23649
This commit is contained in:
parent
01b3a0b568
commit
ec8f1b092d
@ -22,8 +22,6 @@
|
||||
|
||||
#include "kyra/kyra.h"
|
||||
#include "kyra/kyra2.h"
|
||||
#include "kyra/screen.h"
|
||||
#include "kyra/wsamovie.h"
|
||||
|
||||
#include "common/system.h"
|
||||
|
||||
@ -37,24 +35,7 @@ KyraEngine_v2::~KyraEngine_v2() {
|
||||
}
|
||||
|
||||
int KyraEngine_v2::go() {
|
||||
uint8 pal[768];
|
||||
|
||||
WSAMovieV2 *title = new WSAMovieV2(this);
|
||||
title->open("title.WSA", 0, pal);
|
||||
assert(title->opened());
|
||||
|
||||
_screen->setScreenPalette(pal);
|
||||
title->setX(0); title->setY(0);
|
||||
title->setDrawPage(0);
|
||||
for (int i = 0; i < 26 && !_quitFlag; ++i) {
|
||||
uint32 nextRun = _system->getMillis() + 6 * _tickLength;
|
||||
title->displayFrame(i);
|
||||
_screen->updateScreen();
|
||||
delayUntil(nextRun);
|
||||
}
|
||||
|
||||
delete title;
|
||||
|
||||
seq_menu();
|
||||
waitForEvent();
|
||||
return 0;
|
||||
}
|
||||
|
@ -33,6 +33,9 @@ public:
|
||||
int setupGameFlags() { _game = GI_KYRA2; return 0; }
|
||||
|
||||
int go();
|
||||
|
||||
protected:
|
||||
void seq_menu();
|
||||
};
|
||||
|
||||
} // end of namespace Kyra
|
||||
|
@ -17,6 +17,7 @@ MODULE_OBJS := \
|
||||
script.o \
|
||||
seqplayer.o \
|
||||
sequences_v1.o \
|
||||
sequences_v2.o \
|
||||
sound_adlib.o \
|
||||
sound_digital.o \
|
||||
sound.o \
|
||||
|
105
engines/kyra/sequences_v2.cpp
Normal file
105
engines/kyra/sequences_v2.cpp
Normal file
@ -0,0 +1,105 @@
|
||||
/* ScummVM - Scumm Interpreter
|
||||
* Copyright (C) 2005-2006 The ScummVM project
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation; either version 2
|
||||
* of the License, or (at your option) any later version.
|
||||
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
*
|
||||
* $URL$
|
||||
* $Id$
|
||||
*
|
||||
*/
|
||||
|
||||
#include "kyra/kyra.h"
|
||||
#include "kyra/kyra2.h"
|
||||
#include "kyra/screen.h"
|
||||
#include "kyra/wsamovie.h"
|
||||
#include "kyra/sound.h"
|
||||
|
||||
#include "common/system.h"
|
||||
|
||||
namespace Kyra {
|
||||
|
||||
void KyraEngine_v2::seq_menu() {
|
||||
debugC(9, kDebugLevelMain, "KyraEngine_v2::seq_menu()");
|
||||
|
||||
_sound->loadMusicFile("K2INTRO");
|
||||
_screen->loadBitmap("VIRGIN.CPS", 7, 7, _screen->_currentPalette);
|
||||
_screen->copyRegion(0, 0, 0, 0, 320, 200, 6, 0);
|
||||
_screen->updateScreen();
|
||||
_screen->fadeFromBlack();
|
||||
delay(60 * _tickLength);
|
||||
_screen->fadeToBlack();
|
||||
_screen->clearCurPage();
|
||||
|
||||
if (_quitFlag)
|
||||
return;
|
||||
|
||||
uint8 pal[768];
|
||||
int i;
|
||||
|
||||
_sound->playTrack(2);
|
||||
|
||||
WSAMovieV2 *title = new WSAMovieV2(this);
|
||||
title->setDrawPage(0);
|
||||
|
||||
title->open("WESTWOOD.WSA", 0, pal);
|
||||
assert(title->opened());
|
||||
|
||||
title->setX(0); title->setY(0);
|
||||
title->displayFrame(0);
|
||||
_screen->updateScreen();
|
||||
_screen->fadePalette(pal, 0x54);
|
||||
|
||||
for (i = 1; i < 18 && !_quitFlag; ++i) {
|
||||
uint32 nextRun = _system->getMillis() + 6 * _tickLength;
|
||||
title->displayFrame(i);
|
||||
_screen->updateScreen();
|
||||
delayUntil(nextRun);
|
||||
}
|
||||
|
||||
title->close();
|
||||
|
||||
_screen->fadeToBlack();
|
||||
_screen->clearCurPage();
|
||||
|
||||
if (_quitFlag) {
|
||||
delete title;
|
||||
return;
|
||||
}
|
||||
|
||||
_sound->playTrack(3);
|
||||
|
||||
title->open("TITLE.WSA", 0, pal);
|
||||
assert(title->opened());
|
||||
|
||||
title->setX(0); title->setY(0);
|
||||
title->displayFrame(0);
|
||||
_screen->updateScreen();
|
||||
_screen->fadePalette(pal, 0x54);
|
||||
|
||||
for (i = 1; i < 26 && !_quitFlag; ++i) {
|
||||
uint32 nextRun = _system->getMillis() + 6 * _tickLength;
|
||||
title->displayFrame(i);
|
||||
_screen->updateScreen();
|
||||
delayUntil(nextRun);
|
||||
}
|
||||
|
||||
title->close();
|
||||
|
||||
_sound->beginFadeOut();
|
||||
|
||||
delete title;
|
||||
}
|
||||
|
||||
} // end of namespace Kyra
|
Loading…
x
Reference in New Issue
Block a user