mirror of
https://github.com/libretro/scummvm.git
synced 2024-12-16 14:50:17 +00:00
ACCESS: Fix display of cutscene at the end of chapter 3
This commit is contained in:
parent
aea906f7d3
commit
d23d95b912
@ -134,7 +134,7 @@ void AmazonEngine::doTitle() {
|
||||
_sound->queueSound(0, 98, 30);
|
||||
_sound->queueSound(1, 98, 8);
|
||||
|
||||
_files->_loadPalFlag = false;
|
||||
_files->_setPaletteFlag = false;
|
||||
_files->loadScreen(0, 3);
|
||||
|
||||
_buffer2.copyFrom(*_screen);
|
||||
@ -148,7 +148,7 @@ void AmazonEngine::doTitle() {
|
||||
|
||||
_sound->playSound(1);
|
||||
|
||||
_files->_loadPalFlag = false;
|
||||
_files->_setPaletteFlag = false;
|
||||
_files->loadScreen(0, 4);
|
||||
_sound->playSound(1);
|
||||
|
||||
|
@ -531,7 +531,7 @@ void AmazonScripts::mWhileDoOpen() {
|
||||
delete data;
|
||||
|
||||
_vm->_objectsTable[1] = spr;
|
||||
_vm->_files->_loadPalFlag = false;
|
||||
_vm->_files->_setPaletteFlag = false;
|
||||
_vm->_files->loadScreen(1, 2);
|
||||
_vm->_buffer2.copyFrom(*_vm->_screen);
|
||||
_vm->_buffer1.copyFrom(*_vm->_screen);
|
||||
@ -714,14 +714,13 @@ void AmazonScripts::guard() {
|
||||
}
|
||||
|
||||
void AmazonScripts::loadBackground(int param1, int param2) {
|
||||
_vm->_files->_loadPalFlag = false;
|
||||
_vm->_files->_setPaletteFlag = false;
|
||||
_vm->_files->loadScreen(param1, param2);
|
||||
|
||||
_vm->_buffer2.copyFrom(*_vm->_screen);
|
||||
_vm->_buffer1.copyFrom(*_vm->_screen);
|
||||
|
||||
_vm->_screen->forceFadeOut();
|
||||
|
||||
_vm->_screen->forceFadeIn();
|
||||
}
|
||||
|
||||
void AmazonScripts::setInactive() {
|
||||
|
@ -92,7 +92,7 @@ FileManager::FileManager(AccessEngine *vm): _vm(vm) {
|
||||
}
|
||||
|
||||
_fileNumber = -1;
|
||||
_loadPalFlag = true;
|
||||
_setPaletteFlag = true;
|
||||
}
|
||||
|
||||
FileManager::~FileManager() {
|
||||
@ -144,11 +144,7 @@ void FileManager::loadScreen(Graphics::Surface *dest, int fileNum, int subfile)
|
||||
}
|
||||
|
||||
void FileManager::handleScreen(Graphics::Surface *dest, Resource *res) {
|
||||
if (_loadPalFlag) {
|
||||
_vm->_screen->loadPalette(res->_stream);
|
||||
} else {
|
||||
res->_stream->skip(PALETTE_SIZE);
|
||||
}
|
||||
_vm->_screen->loadPalette(res->_stream);
|
||||
|
||||
// The remainder of the file after the palette may be separately compressed,
|
||||
// so call handleFile to handle it if it is
|
||||
|
@ -96,7 +96,7 @@ private:
|
||||
public:
|
||||
int _fileNumber;
|
||||
Common::Array<uint32> _fileIndex;
|
||||
bool _loadPalFlag;
|
||||
bool _setPaletteFlag;
|
||||
public:
|
||||
FileManager(AccessEngine *vm);
|
||||
~FileManager();
|
||||
|
@ -97,7 +97,7 @@ void MartianEngine::doTitle() {
|
||||
|
||||
_sound->queueSound(0, 98, 30);
|
||||
|
||||
_files->_loadPalFlag = false;
|
||||
_files->_setPaletteFlag = false;
|
||||
_files->loadScreen(0, 3);
|
||||
|
||||
_buffer2.copyFrom(*_screen);
|
||||
@ -111,7 +111,7 @@ void MartianEngine::doTitle() {
|
||||
|
||||
_sound->playSound(1);
|
||||
|
||||
_files->_loadPalFlag = false;
|
||||
_files->_setPaletteFlag = false;
|
||||
_files->loadScreen(0, 4);
|
||||
_sound->playSound(1);
|
||||
|
||||
|
@ -101,8 +101,9 @@ void Screen::setInitialPalettte() {
|
||||
|
||||
void Screen::loadPalette(Common::SeekableReadStream *stream) {
|
||||
loadRawPalette(stream);
|
||||
setPalette();
|
||||
_vm->_files->_loadPalFlag = true;
|
||||
if (_vm->_files->_setPaletteFlag)
|
||||
setPalette();
|
||||
_vm->_files->_setPaletteFlag = true;
|
||||
}
|
||||
|
||||
void Screen::loadPalette(int fileNum, int subfile) {
|
||||
|
@ -748,6 +748,9 @@ void Scripts::cmdPlayVideoSound() {
|
||||
_vm->_sound->playSound(0);
|
||||
_vm->_video->_soundFlag = true;
|
||||
}
|
||||
|
||||
_vm->_events->pollEvents();
|
||||
g_system->delayMillis(10);
|
||||
}
|
||||
|
||||
void Scripts::CMDPUSHLOCATION() { error("TODO CMDPUSHLOCATION"); }
|
||||
@ -773,9 +776,9 @@ void Scripts::cmdDead() {
|
||||
|
||||
if (deathId != 10) {
|
||||
_vm->_sound->newMusic(62, 0);
|
||||
_vm->_files->_loadPalFlag = false;
|
||||
_vm->_files->_setPaletteFlag = false;
|
||||
_vm->_files->loadScreen(94, 0);
|
||||
_vm->_files->_loadPalFlag = true;
|
||||
_vm->_files->_setPaletteFlag = true;
|
||||
_vm->_buffer2.copyFrom(*_vm->_screen);
|
||||
|
||||
for (int i = 0; i < 3; ++i) {
|
||||
@ -793,7 +796,7 @@ void Scripts::cmdDead() {
|
||||
_vm->loadCells(cells);
|
||||
|
||||
_vm->_screen->setDisplayScan();
|
||||
_vm->_files->_loadPalFlag = false;
|
||||
_vm->_files->_setPaletteFlag = false;
|
||||
_vm->_files->loadScreen(&_vm->_buffer2, 94, 1);
|
||||
_vm->_screen->setIconPalette();
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user