mirror of
https://github.com/libretro/scummvm.git
synced 2025-02-04 09:56:30 +00:00
HOPKINS: Remove setParent() from GraphicsManager
This commit is contained in:
parent
852e65bd02
commit
6a446ff9d1
@ -59,7 +59,7 @@ void AnimationManager::playAnim(const Common::String &filename, uint32 rate1, ui
|
||||
_vm->_eventsManager->mouseOff();
|
||||
|
||||
bool hasScreenCopy = false;
|
||||
byte *screenP = _vm->_graphicsManager._vesaScreen;
|
||||
byte *screenP = _vm->_graphicsManager->_vesaScreen;
|
||||
|
||||
Common::String tmpStr;
|
||||
// The Windows 95 demo only contains the interlaced version of the BOMBE1 and BOMBE2 videos
|
||||
@ -73,37 +73,37 @@ void AnimationManager::playAnim(const Common::String &filename, uint32 rate1, ui
|
||||
error("File not found - %s", tmpStr.c_str());
|
||||
|
||||
f.skip(6);
|
||||
f.read(_vm->_graphicsManager._palette, 800);
|
||||
f.read(_vm->_graphicsManager->_palette, 800);
|
||||
f.skip(4);
|
||||
size_t nbytes = f.readUint32LE();
|
||||
f.skip(14);
|
||||
f.read(screenP, nbytes);
|
||||
|
||||
if (_clearAnimationFl) {
|
||||
_vm->_graphicsManager.lockScreen();
|
||||
_vm->_graphicsManager.clearScreen();
|
||||
_vm->_graphicsManager.unlockScreen();
|
||||
_vm->_graphicsManager->lockScreen();
|
||||
_vm->_graphicsManager->clearScreen();
|
||||
_vm->_graphicsManager->unlockScreen();
|
||||
}
|
||||
if (_vm->_graphicsManager.WinScan / 2 > SCREEN_WIDTH) {
|
||||
if (_vm->_graphicsManager->WinScan / 2 > SCREEN_WIDTH) {
|
||||
hasScreenCopy = true;
|
||||
screenCopy = _vm->_globals->allocMemory(307200);
|
||||
memcpy(screenCopy, screenP, 307200);
|
||||
}
|
||||
if (NO_SEQ) {
|
||||
if (hasScreenCopy)
|
||||
memcpy(screenCopy, _vm->_graphicsManager._vesaBuffer, 307200);
|
||||
_vm->_graphicsManager.setPaletteVGA256(_vm->_graphicsManager._palette);
|
||||
memcpy(screenCopy, _vm->_graphicsManager->_vesaBuffer, 307200);
|
||||
_vm->_graphicsManager->setPaletteVGA256(_vm->_graphicsManager->_palette);
|
||||
} else {
|
||||
_vm->_graphicsManager.setPaletteVGA256(_vm->_graphicsManager._palette);
|
||||
_vm->_graphicsManager.lockScreen();
|
||||
_vm->_graphicsManager->setPaletteVGA256(_vm->_graphicsManager->_palette);
|
||||
_vm->_graphicsManager->lockScreen();
|
||||
if (hasScreenCopy)
|
||||
_vm->_graphicsManager.m_scroll16A(screenCopy, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
|
||||
_vm->_graphicsManager->m_scroll16A(screenCopy, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
|
||||
else
|
||||
_vm->_graphicsManager.m_scroll16(screenP, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
|
||||
_vm->_graphicsManager.unlockScreen();
|
||||
_vm->_graphicsManager->m_scroll16(screenP, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
|
||||
_vm->_graphicsManager->unlockScreen();
|
||||
|
||||
_vm->_graphicsManager.addRefreshRect(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT);
|
||||
_vm->_graphicsManager.updateScreen();
|
||||
_vm->_graphicsManager->addRefreshRect(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT);
|
||||
_vm->_graphicsManager->updateScreen();
|
||||
}
|
||||
_vm->_eventsManager->_rateCounter = 0;
|
||||
_vm->_eventsManager->_escKeyFl = false;
|
||||
@ -148,19 +148,19 @@ void AnimationManager::playAnim(const Common::String &filename, uint32 rate1, ui
|
||||
|
||||
if (!_vm->_eventsManager->_escKeyFl) {
|
||||
_vm->_eventsManager->_rateCounter = 0;
|
||||
_vm->_graphicsManager.lockScreen();
|
||||
_vm->_graphicsManager->lockScreen();
|
||||
if (hasScreenCopy) {
|
||||
if (*screenP != kByteStop) {
|
||||
_vm->_graphicsManager.copyWinscanVbe3(screenP, screenCopy);
|
||||
_vm->_graphicsManager.m_scroll16A(screenCopy, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
|
||||
_vm->_graphicsManager->copyWinscanVbe3(screenP, screenCopy);
|
||||
_vm->_graphicsManager->m_scroll16A(screenCopy, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
|
||||
}
|
||||
} else if (*screenP != kByteStop) {
|
||||
_vm->_graphicsManager.copyVideoVbe16(screenP);
|
||||
_vm->_graphicsManager->copyVideoVbe16(screenP);
|
||||
}
|
||||
_vm->_graphicsManager.unlockScreen();
|
||||
_vm->_graphicsManager->unlockScreen();
|
||||
|
||||
_vm->_graphicsManager.addRefreshRect(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT);
|
||||
_vm->_graphicsManager.updateScreen();
|
||||
_vm->_graphicsManager->addRefreshRect(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT);
|
||||
_vm->_graphicsManager->updateScreen();
|
||||
_vm->_soundManager.checkSoundEnd();
|
||||
}
|
||||
}
|
||||
@ -182,11 +182,11 @@ void AnimationManager::playAnim(const Common::String &filename, uint32 rate1, ui
|
||||
_vm->_soundManager.checkSoundEnd();
|
||||
}
|
||||
|
||||
if (_vm->_graphicsManager.FADE_LINUX == 2 && !hasScreenCopy) {
|
||||
if (_vm->_graphicsManager->FADE_LINUX == 2 && !hasScreenCopy) {
|
||||
screenCopy = _vm->_globals->allocMemory(307200);
|
||||
|
||||
f.seek(6);
|
||||
f.read(_vm->_graphicsManager._palette, 800);
|
||||
f.read(_vm->_graphicsManager->_palette, 800);
|
||||
f.skip(4);
|
||||
nbytes = f.readUint32LE();
|
||||
f.skip(14);
|
||||
@ -205,20 +205,20 @@ void AnimationManager::playAnim(const Common::String &filename, uint32 rate1, ui
|
||||
|
||||
f.read(screenP, READ_LE_UINT32(imageStr + 8));
|
||||
if (*screenP != kByteStop)
|
||||
_vm->_graphicsManager.copyWinscanVbe3(screenP, screenCopy);
|
||||
_vm->_graphicsManager->copyWinscanVbe3(screenP, screenCopy);
|
||||
}
|
||||
_vm->_graphicsManager.fadeOutDefaultLength(screenCopy);
|
||||
_vm->_graphicsManager->fadeOutDefaultLength(screenCopy);
|
||||
screenCopy = _vm->_globals->freeMemory(screenCopy);
|
||||
}
|
||||
if (hasScreenCopy) {
|
||||
if (_vm->_graphicsManager.FADE_LINUX == 2)
|
||||
_vm->_graphicsManager.fadeOutDefaultLength(screenCopy);
|
||||
if (_vm->_graphicsManager->FADE_LINUX == 2)
|
||||
_vm->_graphicsManager->fadeOutDefaultLength(screenCopy);
|
||||
screenCopy = _vm->_globals->freeMemory(screenCopy);
|
||||
}
|
||||
|
||||
_vm->_graphicsManager.FADE_LINUX = 0;
|
||||
_vm->_graphicsManager->FADE_LINUX = 0;
|
||||
f.close();
|
||||
_vm->_graphicsManager._skipVideoLockFl = false;
|
||||
_vm->_graphicsManager->_skipVideoLockFl = false;
|
||||
|
||||
_vm->_eventsManager->mouseOn();
|
||||
}
|
||||
@ -239,58 +239,58 @@ void AnimationManager::playAnim2(const Common::String &filename, uint32 rate1, u
|
||||
|
||||
bool hasScreenCopy = false;
|
||||
while (!_vm->shouldQuit()) {
|
||||
memcpy(_vm->_graphicsManager._oldPalette, _vm->_graphicsManager._palette, 769);
|
||||
memcpy(_vm->_graphicsManager->_oldPalette, _vm->_graphicsManager->_palette, 769);
|
||||
|
||||
if (_vm->_graphicsManager._lineNbr == SCREEN_WIDTH)
|
||||
_vm->_saveLoadManager.saveFile("TEMP.SCR", _vm->_graphicsManager._vesaScreen, 307200);
|
||||
else if (_vm->_graphicsManager._lineNbr == (SCREEN_WIDTH * 2))
|
||||
_vm->_saveLoadManager.saveFile("TEMP.SCR", _vm->_graphicsManager._vesaScreen, 614400);
|
||||
if (_vm->_graphicsManager->_lineNbr == SCREEN_WIDTH)
|
||||
_vm->_saveLoadManager.saveFile("TEMP.SCR", _vm->_graphicsManager->_vesaScreen, 307200);
|
||||
else if (_vm->_graphicsManager->_lineNbr == (SCREEN_WIDTH * 2))
|
||||
_vm->_saveLoadManager.saveFile("TEMP.SCR", _vm->_graphicsManager->_vesaScreen, 614400);
|
||||
|
||||
if (!_vm->_graphicsManager._lineNbr)
|
||||
_vm->_graphicsManager._scrollOffset = 0;
|
||||
if (!_vm->_graphicsManager->_lineNbr)
|
||||
_vm->_graphicsManager->_scrollOffset = 0;
|
||||
|
||||
screenP = _vm->_graphicsManager._vesaScreen;
|
||||
screenP = _vm->_graphicsManager->_vesaScreen;
|
||||
if (!f.open(filename))
|
||||
error("Error opening file - %s", filename.c_str());
|
||||
|
||||
f.skip(6);
|
||||
f.read(_vm->_graphicsManager._palette, 800);
|
||||
f.read(_vm->_graphicsManager->_palette, 800);
|
||||
f.skip(4);
|
||||
size_t nbytes = f.readUint32LE();
|
||||
f.skip(14);
|
||||
|
||||
f.read(screenP, nbytes);
|
||||
|
||||
_vm->_graphicsManager.clearPalette();
|
||||
oldScrollPosX = _vm->_graphicsManager._scrollPosX;
|
||||
_vm->_graphicsManager.setScreenWidth(SCREEN_WIDTH);
|
||||
_vm->_graphicsManager.scrollScreen(0);
|
||||
_vm->_graphicsManager.lockScreen();
|
||||
_vm->_graphicsManager.clearScreen();
|
||||
_vm->_graphicsManager.unlockScreen();
|
||||
_vm->_graphicsManager->clearPalette();
|
||||
oldScrollPosX = _vm->_graphicsManager->_scrollPosX;
|
||||
_vm->_graphicsManager->setScreenWidth(SCREEN_WIDTH);
|
||||
_vm->_graphicsManager->scrollScreen(0);
|
||||
_vm->_graphicsManager->lockScreen();
|
||||
_vm->_graphicsManager->clearScreen();
|
||||
_vm->_graphicsManager->unlockScreen();
|
||||
|
||||
_vm->_graphicsManager._maxX = SCREEN_WIDTH;
|
||||
if (_vm->_graphicsManager.WinScan / 2 > SCREEN_WIDTH) {
|
||||
_vm->_graphicsManager->_maxX = SCREEN_WIDTH;
|
||||
if (_vm->_graphicsManager->WinScan / 2 > SCREEN_WIDTH) {
|
||||
hasScreenCopy = true;
|
||||
screenCopy = _vm->_globals->allocMemory(307200);
|
||||
memcpy(screenCopy, screenP, 307200);
|
||||
}
|
||||
if (NO_SEQ) {
|
||||
if (hasScreenCopy)
|
||||
memcpy(screenCopy, _vm->_graphicsManager._vesaBuffer, 307200);
|
||||
_vm->_graphicsManager.setPaletteVGA256(_vm->_graphicsManager._palette);
|
||||
memcpy(screenCopy, _vm->_graphicsManager->_vesaBuffer, 307200);
|
||||
_vm->_graphicsManager->setPaletteVGA256(_vm->_graphicsManager->_palette);
|
||||
} else {
|
||||
_vm->_graphicsManager.setPaletteVGA256(_vm->_graphicsManager._palette);
|
||||
_vm->_graphicsManager.lockScreen();
|
||||
_vm->_graphicsManager->setPaletteVGA256(_vm->_graphicsManager->_palette);
|
||||
_vm->_graphicsManager->lockScreen();
|
||||
if (hasScreenCopy)
|
||||
_vm->_graphicsManager.m_scroll16A(screenCopy, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
|
||||
_vm->_graphicsManager->m_scroll16A(screenCopy, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
|
||||
else
|
||||
_vm->_graphicsManager.m_scroll16(screenP, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
|
||||
_vm->_graphicsManager->m_scroll16(screenP, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
|
||||
|
||||
_vm->_graphicsManager.unlockScreen();
|
||||
_vm->_graphicsManager->unlockScreen();
|
||||
|
||||
_vm->_graphicsManager.addRefreshRect(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT);
|
||||
_vm->_graphicsManager.updateScreen();
|
||||
_vm->_graphicsManager->addRefreshRect(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT);
|
||||
_vm->_graphicsManager->updateScreen();
|
||||
}
|
||||
_vm->_eventsManager->_rateCounter = 0;
|
||||
_vm->_eventsManager->_escKeyFl = false;
|
||||
@ -328,19 +328,19 @@ void AnimationManager::playAnim2(const Common::String &filename, uint32 rate1, u
|
||||
}
|
||||
|
||||
_vm->_eventsManager->_rateCounter = 0;
|
||||
_vm->_graphicsManager.lockScreen();
|
||||
_vm->_graphicsManager->lockScreen();
|
||||
if (*screenP != kByteStop) {
|
||||
if (hasScreenCopy) {
|
||||
_vm->_graphicsManager.copyWinscanVbe3(screenP, screenCopy);
|
||||
_vm->_graphicsManager.m_scroll16A(screenCopy, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
|
||||
_vm->_graphicsManager->copyWinscanVbe3(screenP, screenCopy);
|
||||
_vm->_graphicsManager->m_scroll16A(screenCopy, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
|
||||
} else {
|
||||
_vm->_graphicsManager.copyVideoVbe16(screenP);
|
||||
_vm->_graphicsManager->copyVideoVbe16(screenP);
|
||||
}
|
||||
}
|
||||
_vm->_graphicsManager.unlockScreen();
|
||||
_vm->_graphicsManager->unlockScreen();
|
||||
|
||||
_vm->_graphicsManager.addRefreshRect(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT);
|
||||
_vm->_graphicsManager.updateScreen();
|
||||
_vm->_graphicsManager->addRefreshRect(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT);
|
||||
_vm->_graphicsManager->updateScreen();
|
||||
_vm->_soundManager.checkSoundEnd();
|
||||
}
|
||||
|
||||
@ -352,12 +352,12 @@ void AnimationManager::playAnim2(const Common::String &filename, uint32 rate1, u
|
||||
}
|
||||
}
|
||||
|
||||
_vm->_graphicsManager._skipVideoLockFl = false;
|
||||
_vm->_graphicsManager->_skipVideoLockFl = false;
|
||||
f.close();
|
||||
|
||||
if (_vm->_graphicsManager.FADE_LINUX == 2 && !hasScreenCopy) {
|
||||
if (_vm->_graphicsManager->FADE_LINUX == 2 && !hasScreenCopy) {
|
||||
f.seek(6);
|
||||
f.read(_vm->_graphicsManager._palette, 800);
|
||||
f.read(_vm->_graphicsManager->_palette, 800);
|
||||
f.skip(4);
|
||||
size_t nbytes = f.readUint32LE();
|
||||
f.skip(14);
|
||||
@ -376,46 +376,46 @@ void AnimationManager::playAnim2(const Common::String &filename, uint32 rate1, u
|
||||
|
||||
f.read(screenP, READ_LE_UINT32(imageStr + 8));
|
||||
if (*screenP != kByteStop)
|
||||
_vm->_graphicsManager.copyWinscanVbe3(screenP, ptra);
|
||||
_vm->_graphicsManager->copyWinscanVbe3(screenP, ptra);
|
||||
}
|
||||
_vm->_graphicsManager.fadeOutDefaultLength(ptra);
|
||||
_vm->_graphicsManager->fadeOutDefaultLength(ptra);
|
||||
ptra = _vm->_globals->freeMemory(ptra);
|
||||
}
|
||||
if (hasScreenCopy) {
|
||||
if (_vm->_graphicsManager.FADE_LINUX == 2)
|
||||
_vm->_graphicsManager.fadeOutDefaultLength(screenCopy);
|
||||
if (_vm->_graphicsManager->FADE_LINUX == 2)
|
||||
_vm->_graphicsManager->fadeOutDefaultLength(screenCopy);
|
||||
_vm->_globals->freeMemory(screenCopy);
|
||||
}
|
||||
_vm->_graphicsManager.FADE_LINUX = 0;
|
||||
_vm->_graphicsManager->FADE_LINUX = 0;
|
||||
|
||||
_vm->_saveLoadManager.load("TEMP.SCR", _vm->_graphicsManager._vesaScreen);
|
||||
_vm->_saveLoadManager.load("TEMP.SCR", _vm->_graphicsManager->_vesaScreen);
|
||||
g_system->getSavefileManager()->removeSavefile("TEMP.SCR");
|
||||
|
||||
memcpy(_vm->_graphicsManager._palette, _vm->_graphicsManager._oldPalette, 769);
|
||||
_vm->_graphicsManager.clearPalette();
|
||||
_vm->_graphicsManager.lockScreen();
|
||||
_vm->_graphicsManager.clearScreen();
|
||||
_vm->_graphicsManager.unlockScreen();
|
||||
memcpy(_vm->_graphicsManager->_palette, _vm->_graphicsManager->_oldPalette, 769);
|
||||
_vm->_graphicsManager->clearPalette();
|
||||
_vm->_graphicsManager->lockScreen();
|
||||
_vm->_graphicsManager->clearScreen();
|
||||
_vm->_graphicsManager->unlockScreen();
|
||||
|
||||
_vm->_graphicsManager._scrollPosX = oldScrollPosX;
|
||||
_vm->_graphicsManager.scrollScreen(oldScrollPosX);
|
||||
if (_vm->_graphicsManager._largeScreenFl) {
|
||||
_vm->_graphicsManager.setScreenWidth(2 * SCREEN_WIDTH);
|
||||
_vm->_graphicsManager._maxX = 2 * SCREEN_WIDTH;
|
||||
_vm->_graphicsManager.lockScreen();
|
||||
_vm->_graphicsManager.m_scroll16(_vm->_graphicsManager._vesaBuffer, _vm->_eventsManager->_startPos.x, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
|
||||
_vm->_graphicsManager->_scrollPosX = oldScrollPosX;
|
||||
_vm->_graphicsManager->scrollScreen(oldScrollPosX);
|
||||
if (_vm->_graphicsManager->_largeScreenFl) {
|
||||
_vm->_graphicsManager->setScreenWidth(2 * SCREEN_WIDTH);
|
||||
_vm->_graphicsManager->_maxX = 2 * SCREEN_WIDTH;
|
||||
_vm->_graphicsManager->lockScreen();
|
||||
_vm->_graphicsManager->m_scroll16(_vm->_graphicsManager->_vesaBuffer, _vm->_eventsManager->_startPos.x, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
|
||||
} else {
|
||||
_vm->_graphicsManager.setScreenWidth(SCREEN_WIDTH);
|
||||
_vm->_graphicsManager._maxX = SCREEN_WIDTH;
|
||||
_vm->_graphicsManager.lockScreen();
|
||||
_vm->_graphicsManager.clearScreen();
|
||||
_vm->_graphicsManager.m_scroll16(_vm->_graphicsManager._vesaBuffer, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
|
||||
_vm->_graphicsManager->setScreenWidth(SCREEN_WIDTH);
|
||||
_vm->_graphicsManager->_maxX = SCREEN_WIDTH;
|
||||
_vm->_graphicsManager->lockScreen();
|
||||
_vm->_graphicsManager->clearScreen();
|
||||
_vm->_graphicsManager->m_scroll16(_vm->_graphicsManager->_vesaBuffer, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
|
||||
}
|
||||
_vm->_graphicsManager.unlockScreen();
|
||||
_vm->_graphicsManager.addRefreshRect(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT);
|
||||
_vm->_graphicsManager->unlockScreen();
|
||||
_vm->_graphicsManager->addRefreshRect(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT);
|
||||
|
||||
_vm->_graphicsManager.fadeInShort();
|
||||
_vm->_graphicsManager.updateScreen();
|
||||
_vm->_graphicsManager->fadeInShort();
|
||||
_vm->_graphicsManager->updateScreen();
|
||||
|
||||
_vm->_eventsManager->mouseOn();
|
||||
}
|
||||
@ -620,51 +620,51 @@ void AnimationManager::playSequence(const Common::String &file, uint32 rate1, ui
|
||||
if (!NO_COUL) {
|
||||
_vm->_eventsManager->refreshScreenAndEvents();
|
||||
|
||||
if (_vm->_graphicsManager._lineNbr == SCREEN_WIDTH)
|
||||
_vm->_saveLoadManager.saveFile("TEMP.SCR", _vm->_graphicsManager._vesaScreen, 307200);
|
||||
else if (_vm->_graphicsManager._lineNbr == (SCREEN_WIDTH * 2))
|
||||
_vm->_saveLoadManager.saveFile("TEMP.SCR", _vm->_graphicsManager._vesaScreen, 614400);
|
||||
if (!_vm->_graphicsManager._lineNbr)
|
||||
_vm->_graphicsManager._scrollOffset = 0;
|
||||
if (_vm->_graphicsManager->_lineNbr == SCREEN_WIDTH)
|
||||
_vm->_saveLoadManager.saveFile("TEMP.SCR", _vm->_graphicsManager->_vesaScreen, 307200);
|
||||
else if (_vm->_graphicsManager->_lineNbr == (SCREEN_WIDTH * 2))
|
||||
_vm->_saveLoadManager.saveFile("TEMP.SCR", _vm->_graphicsManager->_vesaScreen, 614400);
|
||||
if (!_vm->_graphicsManager->_lineNbr)
|
||||
_vm->_graphicsManager->_scrollOffset = 0;
|
||||
}
|
||||
byte *screenP = _vm->_graphicsManager._vesaScreen;
|
||||
byte *screenP = _vm->_graphicsManager->_vesaScreen;
|
||||
Common::File f;
|
||||
if (!f.open(file))
|
||||
error("Error opening file - %s", file.c_str());
|
||||
|
||||
f.skip(6);
|
||||
f.read(_vm->_graphicsManager._palette, 800);
|
||||
f.read(_vm->_graphicsManager->_palette, 800);
|
||||
f.skip(4);
|
||||
size_t nbytes = f.readUint32LE();
|
||||
f.skip(14);
|
||||
f.read(screenP, nbytes);
|
||||
|
||||
byte *screenCopy = NULL;
|
||||
if (_vm->_graphicsManager.WinScan / 2 > SCREEN_WIDTH) {
|
||||
if (_vm->_graphicsManager->WinScan / 2 > SCREEN_WIDTH) {
|
||||
hasScreenCopy = true;
|
||||
screenCopy = _vm->_globals->allocMemory(307200);
|
||||
memcpy(screenCopy, screenP, 307200);
|
||||
}
|
||||
if (NO_SEQ) {
|
||||
if (hasScreenCopy)
|
||||
memcpy(screenCopy, _vm->_graphicsManager._vesaBuffer, 307200);
|
||||
memcpy(screenCopy, _vm->_graphicsManager->_vesaBuffer, 307200);
|
||||
if (!_vm->getIsDemo()) {
|
||||
_vm->_graphicsManager.SETCOLOR3(252, 100, 100, 100);
|
||||
_vm->_graphicsManager.SETCOLOR3(253, 100, 100, 100);
|
||||
_vm->_graphicsManager.SETCOLOR3(251, 100, 100, 100);
|
||||
_vm->_graphicsManager.SETCOLOR3(254, 0, 0, 0);
|
||||
_vm->_graphicsManager->SETCOLOR3(252, 100, 100, 100);
|
||||
_vm->_graphicsManager->SETCOLOR3(253, 100, 100, 100);
|
||||
_vm->_graphicsManager->SETCOLOR3(251, 100, 100, 100);
|
||||
_vm->_graphicsManager->SETCOLOR3(254, 0, 0, 0);
|
||||
}
|
||||
_vm->_graphicsManager.setPaletteVGA256(_vm->_graphicsManager._palette);
|
||||
_vm->_graphicsManager->setPaletteVGA256(_vm->_graphicsManager->_palette);
|
||||
} else {
|
||||
_vm->_graphicsManager.lockScreen();
|
||||
_vm->_graphicsManager->lockScreen();
|
||||
if (hasScreenCopy)
|
||||
_vm->_graphicsManager.m_scroll16A(screenCopy, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
|
||||
_vm->_graphicsManager->m_scroll16A(screenCopy, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
|
||||
else
|
||||
_vm->_graphicsManager.m_scroll16(screenP, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
|
||||
_vm->_graphicsManager.unlockScreen();
|
||||
_vm->_graphicsManager->m_scroll16(screenP, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
|
||||
_vm->_graphicsManager->unlockScreen();
|
||||
|
||||
_vm->_graphicsManager.addRefreshRect(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT);
|
||||
_vm->_graphicsManager.updateScreen();
|
||||
_vm->_graphicsManager->addRefreshRect(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT);
|
||||
_vm->_graphicsManager->updateScreen();
|
||||
}
|
||||
bool skipFl = false;
|
||||
if (_vm->getIsDemo()) {
|
||||
@ -685,7 +685,7 @@ void AnimationManager::playSequence(const Common::String &file, uint32 rate1, ui
|
||||
}
|
||||
} else {
|
||||
if (NO_COUL)
|
||||
_vm->_graphicsManager.fadeInDefaultLength(screenP);
|
||||
_vm->_graphicsManager->fadeInDefaultLength(screenP);
|
||||
_vm->_eventsManager->_rateCounter = 0;
|
||||
_vm->_eventsManager->_escKeyFl = false;
|
||||
_vm->_soundManager.loadAnimSound();
|
||||
@ -734,19 +734,19 @@ void AnimationManager::playSequence(const Common::String &file, uint32 rate1, ui
|
||||
break;
|
||||
|
||||
_vm->_eventsManager->_rateCounter = 0;
|
||||
_vm->_graphicsManager.lockScreen();
|
||||
_vm->_graphicsManager->lockScreen();
|
||||
if (hasScreenCopy) {
|
||||
if (*screenP != kByteStop) {
|
||||
_vm->_graphicsManager.copyWinscanVbe(screenP, screenCopy);
|
||||
_vm->_graphicsManager.m_scroll16A(screenCopy, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
|
||||
_vm->_graphicsManager->copyWinscanVbe(screenP, screenCopy);
|
||||
_vm->_graphicsManager->m_scroll16A(screenCopy, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
|
||||
}
|
||||
} else if (*screenP != kByteStop) {
|
||||
_vm->_graphicsManager.copyVideoVbe16a(screenP);
|
||||
_vm->_graphicsManager->copyVideoVbe16a(screenP);
|
||||
}
|
||||
_vm->_graphicsManager.unlockScreen();
|
||||
_vm->_graphicsManager->unlockScreen();
|
||||
|
||||
_vm->_graphicsManager.addRefreshRect(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT);
|
||||
_vm->_graphicsManager.updateScreen();
|
||||
_vm->_graphicsManager->addRefreshRect(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT);
|
||||
_vm->_graphicsManager->updateScreen();
|
||||
_vm->_soundManager.checkSoundEnd();
|
||||
}
|
||||
}
|
||||
@ -767,11 +767,11 @@ void AnimationManager::playSequence(const Common::String &file, uint32 rate1, ui
|
||||
if (!skipFl)
|
||||
_vm->_eventsManager->_rateCounter = 0;
|
||||
|
||||
_vm->_graphicsManager._skipVideoLockFl = false;
|
||||
_vm->_graphicsManager->_skipVideoLockFl = false;
|
||||
f.close();
|
||||
|
||||
if (!NO_COUL) {
|
||||
_vm->_saveLoadManager.load("TEMP.SCR", _vm->_graphicsManager._vesaScreen);
|
||||
_vm->_saveLoadManager.load("TEMP.SCR", _vm->_graphicsManager->_vesaScreen);
|
||||
g_system->getSavefileManager()->removeSavefile("TEMP.SCR");
|
||||
|
||||
_vm->_eventsManager->_mouseFl = true;
|
||||
@ -795,19 +795,19 @@ void AnimationManager::playSequence2(const Common::String &file, uint32 rate1, u
|
||||
return;
|
||||
|
||||
_vm->_eventsManager->_mouseFl = false;
|
||||
screenP = _vm->_graphicsManager._vesaScreen;
|
||||
screenP = _vm->_graphicsManager->_vesaScreen;
|
||||
|
||||
if (!f.open(file))
|
||||
error("File not found - %s", file.c_str());
|
||||
|
||||
f.skip(6);
|
||||
f.read(_vm->_graphicsManager._palette, 800);
|
||||
f.read(_vm->_graphicsManager->_palette, 800);
|
||||
f.skip(4);
|
||||
size_t nbytes = f.readUint32LE();
|
||||
f.skip(14);
|
||||
f.read(screenP, nbytes);
|
||||
|
||||
if (_vm->_graphicsManager.WinScan / 2 > SCREEN_WIDTH) {
|
||||
if (_vm->_graphicsManager->WinScan / 2 > SCREEN_WIDTH) {
|
||||
multiScreenFl = true;
|
||||
screenCopy = _vm->_globals->allocMemory(307200);
|
||||
memcpy((void *)screenCopy, screenP, 307200);
|
||||
@ -815,20 +815,20 @@ void AnimationManager::playSequence2(const Common::String &file, uint32 rate1, u
|
||||
if (NO_SEQ) {
|
||||
if (multiScreenFl) {
|
||||
assert(screenCopy != NULL);
|
||||
memcpy((void *)screenCopy, _vm->_graphicsManager._vesaBuffer, 307200);
|
||||
memcpy((void *)screenCopy, _vm->_graphicsManager->_vesaBuffer, 307200);
|
||||
}
|
||||
_vm->_graphicsManager.setPaletteVGA256(_vm->_graphicsManager._palette);
|
||||
_vm->_graphicsManager->setPaletteVGA256(_vm->_graphicsManager->_palette);
|
||||
} else {
|
||||
_vm->_graphicsManager.lockScreen();
|
||||
_vm->_graphicsManager.setPaletteVGA256(_vm->_graphicsManager._palette);
|
||||
_vm->_graphicsManager->lockScreen();
|
||||
_vm->_graphicsManager->setPaletteVGA256(_vm->_graphicsManager->_palette);
|
||||
if (multiScreenFl)
|
||||
_vm->_graphicsManager.m_scroll16A(screenCopy, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
|
||||
_vm->_graphicsManager->m_scroll16A(screenCopy, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
|
||||
else
|
||||
_vm->_graphicsManager.m_scroll16(screenP, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
|
||||
_vm->_graphicsManager.unlockScreen();
|
||||
_vm->_graphicsManager->m_scroll16(screenP, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
|
||||
_vm->_graphicsManager->unlockScreen();
|
||||
|
||||
_vm->_graphicsManager.addRefreshRect(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT);
|
||||
_vm->_graphicsManager.updateScreen();
|
||||
_vm->_graphicsManager->addRefreshRect(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT);
|
||||
_vm->_graphicsManager->updateScreen();
|
||||
}
|
||||
_vm->_eventsManager->_rateCounter = 0;
|
||||
_vm->_eventsManager->_escKeyFl = false;
|
||||
@ -864,19 +864,19 @@ void AnimationManager::playSequence2(const Common::String &file, uint32 rate1, u
|
||||
}
|
||||
|
||||
_vm->_eventsManager->_rateCounter = 0;
|
||||
_vm->_graphicsManager.lockScreen();
|
||||
_vm->_graphicsManager->lockScreen();
|
||||
if (multiScreenFl) {
|
||||
if (*screenP != kByteStop) {
|
||||
_vm->_graphicsManager.copyWinscanVbe(screenP, screenCopy);
|
||||
_vm->_graphicsManager.m_scroll16A(screenCopy, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
|
||||
_vm->_graphicsManager->copyWinscanVbe(screenP, screenCopy);
|
||||
_vm->_graphicsManager->m_scroll16A(screenCopy, 0, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
|
||||
}
|
||||
} else if (*screenP != kByteStop) {
|
||||
_vm->_graphicsManager.copyVideoVbe16a(screenP);
|
||||
_vm->_graphicsManager->copyVideoVbe16a(screenP);
|
||||
}
|
||||
_vm->_graphicsManager.unlockScreen();
|
||||
_vm->_graphicsManager->unlockScreen();
|
||||
|
||||
_vm->_graphicsManager.addRefreshRect(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT);
|
||||
_vm->_graphicsManager.updateScreen();
|
||||
_vm->_graphicsManager->addRefreshRect(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT);
|
||||
_vm->_graphicsManager->updateScreen();
|
||||
_vm->_soundManager.checkSoundEnd();
|
||||
}
|
||||
}
|
||||
@ -891,11 +891,11 @@ void AnimationManager::playSequence2(const Common::String &file, uint32 rate1, u
|
||||
|
||||
_vm->_eventsManager->_rateCounter = 0;
|
||||
|
||||
if (_vm->_graphicsManager.FADE_LINUX == 2 && !multiScreenFl) {
|
||||
if (_vm->_graphicsManager->FADE_LINUX == 2 && !multiScreenFl) {
|
||||
byte *ptra = _vm->_globals->allocMemory(307200);
|
||||
|
||||
f.seek(6);
|
||||
f.read(_vm->_graphicsManager._palette, 800);
|
||||
f.read(_vm->_graphicsManager->_palette, 800);
|
||||
f.skip(4);
|
||||
size_t nbytes = f.readUint32LE();
|
||||
f.skip(14);
|
||||
@ -913,17 +913,17 @@ void AnimationManager::playSequence2(const Common::String &file, uint32 rate1, u
|
||||
|
||||
f.read(screenP, READ_LE_UINT32(imageStr + 8));
|
||||
if (*screenP != kByteStop)
|
||||
_vm->_graphicsManager.copyWinscanVbe(screenP, ptra);
|
||||
_vm->_graphicsManager->copyWinscanVbe(screenP, ptra);
|
||||
}
|
||||
_vm->_graphicsManager.fadeOutDefaultLength(ptra);
|
||||
_vm->_graphicsManager->fadeOutDefaultLength(ptra);
|
||||
ptra = _vm->_globals->freeMemory(ptra);
|
||||
}
|
||||
if (multiScreenFl) {
|
||||
if (_vm->_graphicsManager.FADE_LINUX == 2)
|
||||
_vm->_graphicsManager.fadeOutDefaultLength(screenCopy);
|
||||
if (_vm->_graphicsManager->FADE_LINUX == 2)
|
||||
_vm->_graphicsManager->fadeOutDefaultLength(screenCopy);
|
||||
_vm->_globals->freeMemory(screenCopy);
|
||||
}
|
||||
_vm->_graphicsManager.FADE_LINUX = 0;
|
||||
_vm->_graphicsManager->FADE_LINUX = 0;
|
||||
|
||||
f.close();
|
||||
_vm->_eventsManager->_mouseFl = true;
|
||||
|
@ -71,12 +71,12 @@ void ComputerManager::setVideoMode() {
|
||||
* Sets up Textual entry mode
|
||||
*/
|
||||
void ComputerManager::setTextMode() {
|
||||
_vm->_graphicsManager.clearPalette();
|
||||
_vm->_graphicsManager.lockScreen();
|
||||
_vm->_graphicsManager.clearScreen();
|
||||
_vm->_graphicsManager.unlockScreen();
|
||||
_vm->_graphicsManager->clearPalette();
|
||||
_vm->_graphicsManager->lockScreen();
|
||||
_vm->_graphicsManager->clearScreen();
|
||||
_vm->_graphicsManager->unlockScreen();
|
||||
|
||||
_vm->_graphicsManager._lineNbr = SCREEN_WIDTH;
|
||||
_vm->_graphicsManager->_lineNbr = SCREEN_WIDTH;
|
||||
_vm->_fontManager->_font = _vm->_globals->freeMemory(_vm->_fontManager->_font);
|
||||
|
||||
Common::String filename = "STFONT.SPR";
|
||||
@ -87,8 +87,8 @@ void ComputerManager::setTextMode() {
|
||||
_vm->_fontManager->_fontFixedWidth = 8;
|
||||
_vm->_fontManager->_fontFixedHeight = 8;
|
||||
|
||||
_vm->_graphicsManager.loadImage("WINTEXT");
|
||||
_vm->_graphicsManager.fadeInLong();
|
||||
_vm->_graphicsManager->loadImage("WINTEXT");
|
||||
_vm->_graphicsManager->fadeInLong();
|
||||
loadMenu();
|
||||
_vm->_eventsManager->_mouseFl = false;
|
||||
}
|
||||
@ -97,8 +97,8 @@ void ComputerManager::setTextMode() {
|
||||
* Clear the screen
|
||||
*/
|
||||
void ComputerManager::clearScreen() {
|
||||
_vm->_graphicsManager.loadImage("WINTEXT");
|
||||
_vm->_graphicsManager.fadeInLong();
|
||||
_vm->_graphicsManager->loadImage("WINTEXT");
|
||||
_vm->_graphicsManager->fadeInLong();
|
||||
}
|
||||
|
||||
/**
|
||||
@ -125,7 +125,7 @@ void ComputerManager::setTextPosition(int yp, int xp) {
|
||||
*/
|
||||
void ComputerManager::showComputer(ComputerEnum mode) {
|
||||
_vm->_eventsManager->_escKeyFl = false;
|
||||
_vm->_graphicsManager.resetDirtyRects();
|
||||
_vm->_graphicsManager->resetDirtyRects();
|
||||
setVideoMode();
|
||||
setTextColor(4);
|
||||
setTextPosition(2, 4);
|
||||
@ -258,10 +258,10 @@ void ComputerManager::showComputer(ComputerEnum mode) {
|
||||
}
|
||||
}
|
||||
}
|
||||
_vm->_graphicsManager.lockScreen();
|
||||
_vm->_graphicsManager.clearScreen();
|
||||
_vm->_graphicsManager.unlockScreen();
|
||||
_vm->_graphicsManager.updateScreen();
|
||||
_vm->_graphicsManager->lockScreen();
|
||||
_vm->_graphicsManager->clearScreen();
|
||||
_vm->_graphicsManager->unlockScreen();
|
||||
_vm->_graphicsManager->updateScreen();
|
||||
restoreFBIRoom();
|
||||
} else {
|
||||
// Password doesn't match - Access Denied
|
||||
@ -271,11 +271,11 @@ void ComputerManager::showComputer(ComputerEnum mode) {
|
||||
_vm->_eventsManager->refreshScreenAndEvents();
|
||||
_vm->_eventsManager->delay(1000);
|
||||
|
||||
memset(_vm->_graphicsManager._vesaBuffer, 0, 307199);
|
||||
_vm->_graphicsManager.lockScreen();
|
||||
_vm->_graphicsManager.clearScreen();
|
||||
_vm->_graphicsManager.unlockScreen();
|
||||
_vm->_graphicsManager.updateScreen();
|
||||
memset(_vm->_graphicsManager->_vesaBuffer, 0, 307199);
|
||||
_vm->_graphicsManager->lockScreen();
|
||||
_vm->_graphicsManager->clearScreen();
|
||||
_vm->_graphicsManager->unlockScreen();
|
||||
_vm->_graphicsManager->updateScreen();
|
||||
restoreFBIRoom();
|
||||
_vm->_eventsManager->mouseOff();
|
||||
}
|
||||
@ -285,7 +285,7 @@ void ComputerManager::showComputer(ComputerEnum mode) {
|
||||
else // Free access or Samantha
|
||||
_vm->_globals->_exitId = 14;
|
||||
|
||||
_vm->_graphicsManager.resetDirtyRects();
|
||||
_vm->_graphicsManager->resetDirtyRects();
|
||||
}
|
||||
|
||||
static const char _englishText[] =
|
||||
@ -423,14 +423,14 @@ void ComputerManager::displayMessage(int xp, int yp, int textIdx) {
|
||||
_inputBuf[textIndex--] = 0;
|
||||
x1 -= _vm->_fontManager->_fontFixedWidth;
|
||||
x2 = x1 + 2 * _vm->_fontManager->_fontFixedWidth;
|
||||
_vm->_graphicsManager.Copy_Mem(_vm->_graphicsManager._vesaScreen, x1, yp, 3 * _vm->_fontManager->_fontFixedWidth, 12, _vm->_graphicsManager._vesaBuffer, x1, yp);
|
||||
_vm->_graphicsManager.addDirtyRect(x1, yp, x2, yp + 12);
|
||||
_vm->_graphicsManager->Copy_Mem(_vm->_graphicsManager->_vesaScreen, x1, yp, 3 * _vm->_fontManager->_fontFixedWidth, 12, _vm->_graphicsManager->_vesaBuffer, x1, yp);
|
||||
_vm->_graphicsManager->addDirtyRect(x1, yp, x2, yp + 12);
|
||||
_vm->_fontManager->displayTextVesa(x1, yp, "_", 252);
|
||||
}
|
||||
if (mappedChar != '*') {
|
||||
char newChar = mappedChar;
|
||||
_vm->_graphicsManager.Copy_Mem(_vm->_graphicsManager._vesaScreen, x1, yp, _vm->_fontManager->_fontFixedWidth, 12, _vm->_graphicsManager._vesaBuffer, x1, yp);
|
||||
_vm->_graphicsManager.addDirtyRect(x1, yp, _vm->_fontManager->_fontFixedWidth + x1, yp + 12);
|
||||
_vm->_graphicsManager->Copy_Mem(_vm->_graphicsManager->_vesaScreen, x1, yp, _vm->_fontManager->_fontFixedWidth, 12, _vm->_graphicsManager->_vesaBuffer, x1, yp);
|
||||
_vm->_graphicsManager->addDirtyRect(x1, yp, _vm->_fontManager->_fontFixedWidth + x1, yp + 12);
|
||||
_inputBuf[textIndex] = newChar;
|
||||
|
||||
Common::String charString = Common::String::format("%c_", newChar);
|
||||
@ -441,8 +441,8 @@ void ComputerManager::displayMessage(int xp, int yp, int textIdx) {
|
||||
_vm->_eventsManager->refreshScreenAndEvents();
|
||||
} while (textIndex != textIdx && curChar != 13);
|
||||
|
||||
_vm->_graphicsManager.Copy_Mem(_vm->_graphicsManager._vesaScreen, x1, yp, _vm->_fontManager->_fontFixedWidth, 12, _vm->_graphicsManager._vesaBuffer, x1, yp);
|
||||
_vm->_graphicsManager.addDirtyRect(x1, yp, _vm->_fontManager->_fontFixedWidth + x1, yp + 12);
|
||||
_vm->_graphicsManager->Copy_Mem(_vm->_graphicsManager->_vesaScreen, x1, yp, _vm->_fontManager->_fontFixedWidth, 12, _vm->_graphicsManager->_vesaBuffer, x1, yp);
|
||||
_vm->_graphicsManager->addDirtyRect(x1, yp, _vm->_fontManager->_fontFixedWidth + x1, yp + 12);
|
||||
|
||||
_vm->_eventsManager->refreshScreenAndEvents();
|
||||
_inputBuf[textIndex] = 0;
|
||||
@ -545,9 +545,9 @@ void ComputerManager::displayGamesSubMenu() {
|
||||
_ballRightFl = false;
|
||||
_ballUpFl = false;
|
||||
_breakoutLevelNbr = 0;
|
||||
_vm->_graphicsManager._minY = 0;
|
||||
_vm->_graphicsManager._maxX = 320;
|
||||
_vm->_graphicsManager._maxY = 200;
|
||||
_vm->_graphicsManager->_minY = 0;
|
||||
_vm->_graphicsManager->_maxX = 320;
|
||||
_vm->_graphicsManager->_maxY = 200;
|
||||
_vm->_soundManager.loadSample(1, "SOUND37.WAV");
|
||||
_vm->_soundManager.loadSample(2, "SOUND38.WAV");
|
||||
_vm->_soundManager.loadSample(3, "SOUND39.WAV");
|
||||
@ -556,10 +556,10 @@ void ComputerManager::displayGamesSubMenu() {
|
||||
setModeVGA256();
|
||||
|
||||
newLevel();
|
||||
_vm->_graphicsManager.updateScreen();
|
||||
_vm->_graphicsManager->updateScreen();
|
||||
|
||||
playBreakout();
|
||||
_vm->_graphicsManager.resetDirtyRects();
|
||||
_vm->_graphicsManager->resetDirtyRects();
|
||||
_breakoutSpr = _vm->_globals->freeMemory(_breakoutSpr);
|
||||
_breakoutLevel = (int16 *)_vm->_globals->freeMemory((byte *)_breakoutLevel);
|
||||
_vm->_objectsManager._sprite[0]._spriteData = oldSpriteData;
|
||||
@ -572,9 +572,9 @@ void ComputerManager::displayGamesSubMenu() {
|
||||
setVideoMode();
|
||||
setTextColor(15);
|
||||
clearScreen();
|
||||
_vm->_graphicsManager._maxX = 680;
|
||||
_vm->_graphicsManager._minY = 0;
|
||||
_vm->_graphicsManager._maxY = 460;
|
||||
_vm->_graphicsManager->_maxX = 680;
|
||||
_vm->_graphicsManager->_minY = 0;
|
||||
_vm->_graphicsManager->_maxY = 460;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -608,11 +608,11 @@ void ComputerManager::loadHiscore() {
|
||||
* VGA 256 col
|
||||
*/
|
||||
void ComputerManager::setModeVGA256() {
|
||||
_vm->_graphicsManager.lockScreen();
|
||||
_vm->_graphicsManager.clearScreen();
|
||||
_vm->_graphicsManager.unlockScreen();
|
||||
_vm->_graphicsManager.clearPalette();
|
||||
_vm->_graphicsManager.setScreenWidth(320);
|
||||
_vm->_graphicsManager->lockScreen();
|
||||
_vm->_graphicsManager->clearScreen();
|
||||
_vm->_graphicsManager->unlockScreen();
|
||||
_vm->_graphicsManager->clearPalette();
|
||||
_vm->_graphicsManager->setScreenWidth(320);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -624,7 +624,7 @@ void ComputerManager::newLevel() {
|
||||
++_breakoutLives;
|
||||
if (_breakoutLives > 11)
|
||||
_breakoutLives = 11;
|
||||
_vm->_graphicsManager.loadVgaImage("CASSEF.PCX");
|
||||
_vm->_graphicsManager->loadVgaImage("CASSEF.PCX");
|
||||
displayLives();
|
||||
_breakoutLevel = (int16 *)_vm->_globals->freeMemory((byte *)_breakoutLevel);
|
||||
|
||||
@ -678,25 +678,25 @@ void ComputerManager::displayBricks() {
|
||||
|
||||
switch (cellType) {
|
||||
case 1:
|
||||
_vm->_graphicsManager.AFFICHE_SPEEDVGA(_breakoutSpr, cellLeft, cellTop, 21);
|
||||
_vm->_graphicsManager->AFFICHE_SPEEDVGA(_breakoutSpr, cellLeft, cellTop, 21);
|
||||
break;
|
||||
case 2:
|
||||
_vm->_graphicsManager.AFFICHE_SPEEDVGA(_breakoutSpr, cellLeft, cellTop, 22);
|
||||
_vm->_graphicsManager->AFFICHE_SPEEDVGA(_breakoutSpr, cellLeft, cellTop, 22);
|
||||
break;
|
||||
case 3:
|
||||
_vm->_graphicsManager.AFFICHE_SPEEDVGA(_breakoutSpr, cellLeft, cellTop, 17);
|
||||
_vm->_graphicsManager->AFFICHE_SPEEDVGA(_breakoutSpr, cellLeft, cellTop, 17);
|
||||
break;
|
||||
case 4:
|
||||
_vm->_graphicsManager.AFFICHE_SPEEDVGA(_breakoutSpr, cellLeft, cellTop, 20);
|
||||
_vm->_graphicsManager->AFFICHE_SPEEDVGA(_breakoutSpr, cellLeft, cellTop, 20);
|
||||
break;
|
||||
case 5:
|
||||
_vm->_graphicsManager.AFFICHE_SPEEDVGA(_breakoutSpr, cellLeft, cellTop, 19);
|
||||
_vm->_graphicsManager->AFFICHE_SPEEDVGA(_breakoutSpr, cellLeft, cellTop, 19);
|
||||
break;
|
||||
case 6:
|
||||
_vm->_graphicsManager.AFFICHE_SPEEDVGA(_breakoutSpr, cellLeft, cellTop, 18);
|
||||
_vm->_graphicsManager->AFFICHE_SPEEDVGA(_breakoutSpr, cellLeft, cellTop, 18);
|
||||
break;
|
||||
case 31:
|
||||
_vm->_graphicsManager.AFFICHE_SPEEDVGA(_breakoutSpr, cellLeft, cellTop, 23);
|
||||
_vm->_graphicsManager->AFFICHE_SPEEDVGA(_breakoutSpr, cellLeft, cellTop, 23);
|
||||
break;
|
||||
}
|
||||
}
|
||||
@ -709,12 +709,12 @@ void ComputerManager::displayBricks() {
|
||||
*/
|
||||
void ComputerManager::displayLives() {
|
||||
for (int i = 0, xp = 10; i <= 11; i++, xp += 7)
|
||||
_vm->_graphicsManager.AFFICHE_SPEEDVGA(_breakoutSpr, xp, 10, 15);
|
||||
_vm->_graphicsManager->AFFICHE_SPEEDVGA(_breakoutSpr, xp, 10, 15);
|
||||
|
||||
for (int i = 0, xp = 10; i < _breakoutLives - 1; i++, xp += 7)
|
||||
_vm->_graphicsManager.AFFICHE_SPEEDVGA(_breakoutSpr, xp, 10, 14);
|
||||
_vm->_graphicsManager->AFFICHE_SPEEDVGA(_breakoutSpr, xp, 10, 14);
|
||||
|
||||
_vm->_graphicsManager.updateScreen();
|
||||
_vm->_graphicsManager->updateScreen();
|
||||
}
|
||||
|
||||
/**
|
||||
@ -730,9 +730,9 @@ void ComputerManager::playBreakout() {
|
||||
_vm->_objectsManager.setSpriteY(1, 187);
|
||||
_vm->_objectsManager.setSpriteX(1, _ballPosition.x);
|
||||
|
||||
_vm->_graphicsManager.resetDirtyRects();
|
||||
_vm->_graphicsManager->resetDirtyRects();
|
||||
_vm->_eventsManager->refreshScreenAndEvents();
|
||||
_vm->_graphicsManager.fadeInBreakout();
|
||||
_vm->_graphicsManager->fadeInBreakout();
|
||||
|
||||
// Wait for mouse press to start playing
|
||||
do {
|
||||
@ -776,7 +776,7 @@ void ComputerManager::playBreakout() {
|
||||
continue;
|
||||
}
|
||||
|
||||
_vm->_graphicsManager.fadeOutBreakout();
|
||||
_vm->_graphicsManager->fadeOutBreakout();
|
||||
_vm->_eventsManager->mouseOn();
|
||||
_vm->_objectsManager.removeSprite(0);
|
||||
_vm->_objectsManager.removeSprite(1);
|
||||
@ -797,7 +797,7 @@ void ComputerManager::playBreakout() {
|
||||
}
|
||||
if (lastBreakoutEvent != 2)
|
||||
return;
|
||||
_vm->_graphicsManager.fadeOutBreakout();
|
||||
_vm->_graphicsManager->fadeOutBreakout();
|
||||
newLevel();
|
||||
}
|
||||
}
|
||||
@ -807,14 +807,14 @@ void ComputerManager::playBreakout() {
|
||||
* @return The selected button index: 1 = Game, 2 = Quit
|
||||
*/
|
||||
int ComputerManager::displayHiscores() {
|
||||
_vm->_graphicsManager.resetDirtyRects();
|
||||
_vm->_graphicsManager->resetDirtyRects();
|
||||
loadHiscore();
|
||||
_vm->_graphicsManager.loadVgaImage("HISCORE.PCX");
|
||||
_vm->_graphicsManager->loadVgaImage("HISCORE.PCX");
|
||||
byte *ptr = _vm->_fileManager->loadFile("ALPHA.SPR");
|
||||
_vm->_graphicsManager.SETCOLOR3(252, 100, 100, 100);
|
||||
_vm->_graphicsManager.SETCOLOR3(253, 100, 100, 100);
|
||||
_vm->_graphicsManager.SETCOLOR3(251, 100, 100, 100);
|
||||
_vm->_graphicsManager.SETCOLOR3(254, 0, 0, 0);
|
||||
_vm->_graphicsManager->SETCOLOR3(252, 100, 100, 100);
|
||||
_vm->_graphicsManager->SETCOLOR3(253, 100, 100, 100);
|
||||
_vm->_graphicsManager->SETCOLOR3(251, 100, 100, 100);
|
||||
_vm->_graphicsManager->SETCOLOR3(254, 0, 0, 0);
|
||||
|
||||
int yp;
|
||||
int xp;
|
||||
@ -832,8 +832,8 @@ int ComputerManager::displayHiscores() {
|
||||
displayHiscoreLine(ptr, 9 * i + 199, yp, _score[scoreIndex]._score[i]);
|
||||
}
|
||||
|
||||
_vm->_graphicsManager.fadeInBreakout();
|
||||
_vm->_graphicsManager.resetDirtyRects();
|
||||
_vm->_graphicsManager->fadeInBreakout();
|
||||
_vm->_graphicsManager->resetDirtyRects();
|
||||
int buttonIndex = 0;
|
||||
do {
|
||||
_vm->_eventsManager->refreshEvents();
|
||||
@ -849,7 +849,7 @@ int ComputerManager::displayHiscores() {
|
||||
} while (!buttonIndex && !_vm->shouldQuit());
|
||||
|
||||
_vm->_eventsManager->mouseOff();
|
||||
_vm->_graphicsManager.fadeOutBreakout();
|
||||
_vm->_graphicsManager->fadeOutBreakout();
|
||||
_vm->_globals->freeMemory(ptr);
|
||||
return buttonIndex;
|
||||
}
|
||||
@ -858,13 +858,13 @@ int ComputerManager::displayHiscores() {
|
||||
* Display a screen to enter player name in the case of a new hiscore
|
||||
*/
|
||||
void ComputerManager::getScoreName() {
|
||||
_vm->_graphicsManager.loadVgaImage("NAME.PCX");
|
||||
_vm->_graphicsManager.SETCOLOR3(252, 100, 100, 100);
|
||||
_vm->_graphicsManager.SETCOLOR3(253, 100, 100, 100);
|
||||
_vm->_graphicsManager.SETCOLOR3(251, 100, 100, 100);
|
||||
_vm->_graphicsManager.SETCOLOR3(254, 0, 0, 0);
|
||||
_vm->_graphicsManager->loadVgaImage("NAME.PCX");
|
||||
_vm->_graphicsManager->SETCOLOR3(252, 100, 100, 100);
|
||||
_vm->_graphicsManager->SETCOLOR3(253, 100, 100, 100);
|
||||
_vm->_graphicsManager->SETCOLOR3(251, 100, 100, 100);
|
||||
_vm->_graphicsManager->SETCOLOR3(254, 0, 0, 0);
|
||||
byte *ptr = _vm->_fileManager->loadFile("ALPHA.SPR");
|
||||
_vm->_graphicsManager.fadeInBreakout();
|
||||
_vm->_graphicsManager->fadeInBreakout();
|
||||
for (int strPos = 0; strPos <= 4; strPos++) {
|
||||
displayHiscoreLine(ptr, 9 * strPos + 140, 78, 1);
|
||||
|
||||
@ -892,7 +892,7 @@ void ComputerManager::getScoreName() {
|
||||
for (int i = scoreLen, scorePos = 8; i >= 0; i--) {
|
||||
_score[5]._score.setChar(score[i], scorePos--);
|
||||
}
|
||||
_vm->_graphicsManager.fadeOutBreakout();
|
||||
_vm->_graphicsManager->fadeOutBreakout();
|
||||
_vm->_globals->freeMemory(ptr);
|
||||
saveScore();
|
||||
}
|
||||
@ -941,7 +941,7 @@ void ComputerManager::displayScoreChar(int charPos, int charDisp) {
|
||||
if (charDisp >= '0' && charDisp <= '9')
|
||||
idx = charDisp - 45;
|
||||
|
||||
_vm->_graphicsManager.AFFICHE_SPEEDVGA(_breakoutSpr, xp, 11, idx);
|
||||
_vm->_graphicsManager->AFFICHE_SPEEDVGA(_breakoutSpr, xp, 11, idx);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -1010,7 +1010,7 @@ void ComputerManager::displayHiscoreLine(byte *objectData, int x, int y, int cur
|
||||
idx = curChar - 'A' + 10;
|
||||
else if (curChar == 1)
|
||||
idx = 37;
|
||||
_vm->_graphicsManager.AFFICHE_SPEEDVGA(objectData, x, y, idx);
|
||||
_vm->_graphicsManager->AFFICHE_SPEEDVGA(objectData, x, y, idx);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -1183,7 +1183,7 @@ void ComputerManager::checkBallCollisions() {
|
||||
_vm->_soundManager.playSample(2, 6);
|
||||
} else {
|
||||
_vm->_soundManager.playSample(1, 5);
|
||||
_vm->_graphicsManager.AFFICHE_SPEEDVGA(_breakoutSpr, cellLeft, cellUp, 16);
|
||||
_vm->_graphicsManager->AFFICHE_SPEEDVGA(_breakoutSpr, cellLeft, cellUp, 16);
|
||||
switch (cellType) {
|
||||
case 1:
|
||||
_breakoutScore += 10;
|
||||
|
@ -40,7 +40,7 @@ bool Debugger::cmd_DirtyRects(int argc, const char **argv) {
|
||||
DebugPrintf("%s: [on | off]\n", argv[0]);
|
||||
return true;
|
||||
} else {
|
||||
_vm->_graphicsManager._showDirtyRects = !strcmp(argv[1], "on");
|
||||
_vm->_graphicsManager->_showDirtyRects = !strcmp(argv[1], "on");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
@ -72,7 +72,7 @@ void DialogsManager::showOptionsDialog() {
|
||||
_vm->_globals->_optionDialogSpr = _vm->_fileManager->loadFile(filename);
|
||||
_vm->_globals->_optionDialogFl = true;
|
||||
|
||||
int scrollOffset = _vm->_graphicsManager._scrollOffset;
|
||||
int scrollOffset = _vm->_graphicsManager->_scrollOffset;
|
||||
bool doneFlag = false;
|
||||
do {
|
||||
if (_vm->_eventsManager->getMouseButton()) {
|
||||
@ -196,45 +196,45 @@ void DialogsManager::showOptionsDialog() {
|
||||
if (mousePos.x >= scrollOffset + 355 && mousePos.y > 285 && mousePos.x <= scrollOffset + 490 && mousePos.y <= 310)
|
||||
doneFlag = true;
|
||||
if (mousePos.x >= scrollOffset + 300 && mousePos.y > 194 && mousePos.x <= scrollOffset + 358 && mousePos.y <= 219) {
|
||||
switch (_vm->_graphicsManager._scrollSpeed) {
|
||||
switch (_vm->_graphicsManager->_scrollSpeed) {
|
||||
case 1:
|
||||
_vm->_graphicsManager._scrollSpeed = 2;
|
||||
_vm->_graphicsManager->_scrollSpeed = 2;
|
||||
break;
|
||||
case 2:
|
||||
_vm->_graphicsManager._scrollSpeed = 4;
|
||||
_vm->_graphicsManager->_scrollSpeed = 4;
|
||||
break;
|
||||
case 4:
|
||||
_vm->_graphicsManager._scrollSpeed = 8;
|
||||
_vm->_graphicsManager->_scrollSpeed = 8;
|
||||
break;
|
||||
case 8:
|
||||
_vm->_graphicsManager._scrollSpeed = 16;
|
||||
_vm->_graphicsManager->_scrollSpeed = 16;
|
||||
break;
|
||||
case 16:
|
||||
_vm->_graphicsManager._scrollSpeed = 32;
|
||||
_vm->_graphicsManager->_scrollSpeed = 32;
|
||||
break;
|
||||
case 32:
|
||||
_vm->_graphicsManager._scrollSpeed = 48;
|
||||
_vm->_graphicsManager->_scrollSpeed = 48;
|
||||
break;
|
||||
case 48:
|
||||
_vm->_graphicsManager._scrollSpeed = 64;
|
||||
_vm->_graphicsManager->_scrollSpeed = 64;
|
||||
break;
|
||||
case 64:
|
||||
_vm->_graphicsManager._scrollSpeed = 128;
|
||||
_vm->_graphicsManager->_scrollSpeed = 128;
|
||||
break;
|
||||
case 128:
|
||||
_vm->_graphicsManager._scrollSpeed = 160;
|
||||
_vm->_graphicsManager->_scrollSpeed = 160;
|
||||
break;
|
||||
case 160:
|
||||
_vm->_graphicsManager._scrollSpeed = 320;
|
||||
_vm->_graphicsManager->_scrollSpeed = 320;
|
||||
break;
|
||||
case 320:
|
||||
_vm->_graphicsManager._scrollSpeed = 1;
|
||||
_vm->_graphicsManager->_scrollSpeed = 1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// Values are blocked, thus handling the zone is useless
|
||||
//if (mousePos.x >= _vm->_graphicsManager.ofscroll + 348 && mousePos.y > 248 && mousePos.x <= _vm->_graphicsManager.ofscroll + 394 && mousePos.y <= 273)
|
||||
//if (mousePos.x >= _vm->_graphicsManager->ofscroll + 348 && mousePos.y > 248 && mousePos.x <= _vm->_graphicsManager->ofscroll + 394 && mousePos.y <= 273)
|
||||
// _vm->_globals->_speed = 2;
|
||||
|
||||
if ( mousePos.x < scrollOffset + 165 || mousePos.x > scrollOffset + 496
|
||||
@ -256,7 +256,7 @@ void DialogsManager::showOptionsDialog() {
|
||||
|
||||
_vm->_globals->_menuDisplayType = 9;
|
||||
|
||||
switch (_vm->_graphicsManager._scrollSpeed) {
|
||||
switch (_vm->_graphicsManager->_scrollSpeed) {
|
||||
case 1:
|
||||
_vm->_globals->_menuScrollSpeed = 12;
|
||||
break;
|
||||
@ -298,9 +298,9 @@ void DialogsManager::showOptionsDialog() {
|
||||
_vm->_eventsManager->refreshScreenAndEvents();
|
||||
} while (!doneFlag);
|
||||
|
||||
_vm->_graphicsManager.copySurface(_vm->_graphicsManager._vesaScreen, scrollOffset + 164,
|
||||
107, 335, 215, _vm->_graphicsManager._vesaBuffer, scrollOffset + 164, 107);
|
||||
_vm->_graphicsManager.addDirtyRect(scrollOffset + 164, 107, scrollOffset + 498, 320);
|
||||
_vm->_graphicsManager->copySurface(_vm->_graphicsManager->_vesaScreen, scrollOffset + 164,
|
||||
107, 335, 215, _vm->_graphicsManager->_vesaBuffer, scrollOffset + 164, 107);
|
||||
_vm->_graphicsManager->addDirtyRect(scrollOffset + 164, 107, scrollOffset + 498, 320);
|
||||
|
||||
_vm->_globals->_optionDialogSpr = _vm->_globals->freeMemory(_vm->_globals->_optionDialogSpr);
|
||||
_vm->_globals->_optionDialogFl = false;
|
||||
@ -310,7 +310,7 @@ void DialogsManager::showInventory() {
|
||||
if (_removeInventFl || _inventDisplayedFl || _vm->_globals->_disableInventFl)
|
||||
return;
|
||||
|
||||
_vm->_graphicsManager._scrollStatus = 1;
|
||||
_vm->_graphicsManager->_scrollStatus = 1;
|
||||
_vm->_objectsManager._eraseVisibleCounter = 4;
|
||||
_vm->_objectsManager._visibleFl = false;
|
||||
for (int i = 0; i <= 1; i++) {
|
||||
@ -327,7 +327,7 @@ void DialogsManager::showInventory() {
|
||||
_vm->_eventsManager->_curMouseButton = 0;
|
||||
_vm->_eventsManager->_mouseButton = 0;
|
||||
_vm->_globals->_disableInventFl = true;
|
||||
_vm->_graphicsManager.SETCOLOR4(251, 100, 100, 100);
|
||||
_vm->_graphicsManager->SETCOLOR4(251, 100, 100, 100);
|
||||
|
||||
Common::String filename;
|
||||
if (_vm->getPlatform() == Common::kPlatformOS2 || _vm->getPlatform() == Common::kPlatformBeOS)
|
||||
@ -357,12 +357,12 @@ void DialogsManager::showInventory() {
|
||||
|
||||
_inventBuf2 = _vm->_fileManager->loadFile("INVENT2.SPR");
|
||||
|
||||
_inventX = _vm->_graphicsManager._scrollOffset + 152;
|
||||
_inventX = _vm->_graphicsManager->_scrollOffset + 152;
|
||||
_inventY = 114;
|
||||
_inventWidth = _vm->_objectsManager.getWidth(_inventWin1, 0);
|
||||
_inventHeight = _vm->_objectsManager.getHeight(_inventWin1, 0);
|
||||
|
||||
_vm->_graphicsManager.Affiche_Perfect(_vm->_graphicsManager._vesaBuffer, _inventWin1, _inventX + 300, 414, 0, 0, 0, false);
|
||||
_vm->_graphicsManager->Affiche_Perfect(_vm->_graphicsManager->_vesaBuffer, _inventWin1, _inventX + 300, 414, 0, 0, 0, false);
|
||||
int curPosY = 0;
|
||||
int inventCount = 0;
|
||||
for (int inventLine = 1; inventLine <= 5; inventLine++) {
|
||||
@ -373,7 +373,7 @@ void DialogsManager::showInventory() {
|
||||
// The last two zones are not reserved for the inventory: Options and Save/Load
|
||||
if (inventIdx && inventCount <= 29) {
|
||||
byte *obj = _vm->_objectsManager.loadObjectFromFile(inventIdx, false);
|
||||
_vm->_graphicsManager.restoreSurfaceRect(_vm->_graphicsManager._vesaBuffer, obj, _inventX + curPosX + 6,
|
||||
_vm->_graphicsManager->restoreSurfaceRect(_vm->_graphicsManager->_vesaBuffer, obj, _inventX + curPosX + 6,
|
||||
curPosY + 120, _vm->_globals->_objectWidth, _vm->_globals->_objectHeight);
|
||||
_vm->_globals->freeMemory(obj);
|
||||
}
|
||||
@ -381,7 +381,7 @@ void DialogsManager::showInventory() {
|
||||
};
|
||||
curPosY += 38;
|
||||
}
|
||||
_vm->_graphicsManager.copySurfaceRect(_vm->_graphicsManager._vesaBuffer, _inventWin1, _inventX, _inventY, _inventWidth, _inventHeight);
|
||||
_vm->_graphicsManager->copySurfaceRect(_vm->_graphicsManager->_vesaBuffer, _inventWin1, _inventX, _inventY, _inventWidth, _inventHeight);
|
||||
_vm->_eventsManager->_curMouseButton = 0;
|
||||
int newInventoryItem = 0;
|
||||
|
||||
@ -449,8 +449,8 @@ void DialogsManager::showInventory() {
|
||||
_vm->_fontManager->hideText(9);
|
||||
if (_inventDisplayedFl) {
|
||||
_inventDisplayedFl = false;
|
||||
_vm->_graphicsManager.copySurface(_vm->_graphicsManager._vesaScreen, _inventX, 114, _inventWidth, _inventHeight, _vm->_graphicsManager._vesaBuffer, _inventX, 114);
|
||||
_vm->_graphicsManager.addDirtyRect(_inventX, 114, _inventX + _inventWidth, _inventWidth + 114);
|
||||
_vm->_graphicsManager->copySurface(_vm->_graphicsManager->_vesaScreen, _inventX, 114, _inventWidth, _inventHeight, _vm->_graphicsManager->_vesaBuffer, _inventX, 114);
|
||||
_vm->_graphicsManager->addDirtyRect(_inventX, 114, _inventX + _inventWidth, _inventWidth + 114);
|
||||
_vm->_objectsManager.BOBTOUS = true;
|
||||
}
|
||||
|
||||
@ -469,7 +469,7 @@ void DialogsManager::showInventory() {
|
||||
_vm->_objectsManager._oldBorderPos = Common::Point(0, 0);
|
||||
_vm->_objectsManager._borderPos = Common::Point(0, 0);
|
||||
_vm->_globals->_disableInventFl = false;
|
||||
_vm->_graphicsManager._scrollStatus = 0;
|
||||
_vm->_graphicsManager->_scrollStatus = 0;
|
||||
}
|
||||
|
||||
/**
|
||||
@ -480,41 +480,41 @@ void DialogsManager::inventAnim() {
|
||||
return;
|
||||
|
||||
if (_vm->_objectsManager._eraseVisibleCounter && !_vm->_objectsManager._visibleFl) {
|
||||
_vm->_graphicsManager.copySurface(_vm->_graphicsManager._vesaScreen, _vm->_objectsManager._oldInventoryPosX, 27, 48, 38,
|
||||
_vm->_graphicsManager._vesaBuffer, _vm->_objectsManager._oldInventoryPosX, 27);
|
||||
_vm->_graphicsManager.addDirtyRect(_vm->_objectsManager._oldInventoryPosX, 27, _vm->_objectsManager._oldInventoryPosX + 48, 65);
|
||||
_vm->_graphicsManager->copySurface(_vm->_graphicsManager->_vesaScreen, _vm->_objectsManager._oldInventoryPosX, 27, 48, 38,
|
||||
_vm->_graphicsManager->_vesaBuffer, _vm->_objectsManager._oldInventoryPosX, 27);
|
||||
_vm->_graphicsManager->addDirtyRect(_vm->_objectsManager._oldInventoryPosX, 27, _vm->_objectsManager._oldInventoryPosX + 48, 65);
|
||||
--_vm->_objectsManager._eraseVisibleCounter;
|
||||
}
|
||||
|
||||
if (_vm->_objectsManager._visibleFl) {
|
||||
if (_vm->_objectsManager._oldInventoryPosX <= 1)
|
||||
_vm->_objectsManager._oldInventoryPosX = 2;
|
||||
_vm->_graphicsManager.copySurface(_vm->_graphicsManager._vesaScreen, _vm->_objectsManager._oldInventoryPosX, 27, 48, 38,
|
||||
_vm->_graphicsManager._vesaBuffer, _vm->_objectsManager._oldInventoryPosX, 27);
|
||||
_vm->_graphicsManager->copySurface(_vm->_graphicsManager->_vesaScreen, _vm->_objectsManager._oldInventoryPosX, 27, 48, 38,
|
||||
_vm->_graphicsManager->_vesaBuffer, _vm->_objectsManager._oldInventoryPosX, 27);
|
||||
|
||||
_vm->_graphicsManager.addDirtyRect(_vm->_objectsManager._oldInventoryPosX, 27, _vm->_objectsManager._oldInventoryPosX + 48, 65);
|
||||
int newOffset = _vm->_graphicsManager._scrollOffset + 2;
|
||||
_vm->_graphicsManager.Sprite_Vesa(_vm->_graphicsManager._vesaBuffer, _inventoryIcons, newOffset + 300, 327, 0);
|
||||
_vm->_graphicsManager.addDirtyRect(newOffset, 27, newOffset + 45, 62);
|
||||
_vm->_graphicsManager->addDirtyRect(_vm->_objectsManager._oldInventoryPosX, 27, _vm->_objectsManager._oldInventoryPosX + 48, 65);
|
||||
int newOffset = _vm->_graphicsManager->_scrollOffset + 2;
|
||||
_vm->_graphicsManager->Sprite_Vesa(_vm->_graphicsManager->_vesaBuffer, _inventoryIcons, newOffset + 300, 327, 0);
|
||||
_vm->_graphicsManager->addDirtyRect(newOffset, 27, newOffset + 45, 62);
|
||||
_vm->_objectsManager._oldInventoryPosX = newOffset;
|
||||
}
|
||||
|
||||
if (_vm->_globals->_saveData->_data[svField357] == 1) {
|
||||
if (_vm->_globals->_saveData->_data[svField353] == 1)
|
||||
_vm->_graphicsManager.Affiche_Perfect(_vm->_graphicsManager._vesaBuffer, _vm->_objectsManager._headSprites, 832, 325, 0, 0, 0, false);
|
||||
_vm->_graphicsManager->Affiche_Perfect(_vm->_graphicsManager->_vesaBuffer, _vm->_objectsManager._headSprites, 832, 325, 0, 0, 0, false);
|
||||
if (_vm->_globals->_saveData->_data[svField355] == 1)
|
||||
_vm->_graphicsManager.Affiche_Perfect(_vm->_graphicsManager._vesaBuffer, _vm->_objectsManager._headSprites, 866, 325, 1, 0, 0, false);
|
||||
_vm->_graphicsManager.addDirtyRect(532, 25, 560, 60);
|
||||
_vm->_graphicsManager.addDirtyRect(566, 25, 594, 60);
|
||||
_vm->_graphicsManager->Affiche_Perfect(_vm->_graphicsManager->_vesaBuffer, _vm->_objectsManager._headSprites, 866, 325, 1, 0, 0, false);
|
||||
_vm->_graphicsManager->addDirtyRect(532, 25, 560, 60);
|
||||
_vm->_graphicsManager->addDirtyRect(566, 25, 594, 60);
|
||||
}
|
||||
if (_vm->_globals->_saveData->_data[svField356] == 1) {
|
||||
_vm->_graphicsManager.Affiche_Perfect(_vm->_graphicsManager._vesaBuffer, _vm->_objectsManager._headSprites, 832, 325, 0, 0, 0, false);
|
||||
_vm->_graphicsManager.addDirtyRect(532, 25, 560, 60);
|
||||
_vm->_graphicsManager->Affiche_Perfect(_vm->_graphicsManager->_vesaBuffer, _vm->_objectsManager._headSprites, 832, 325, 0, 0, 0, false);
|
||||
_vm->_graphicsManager->addDirtyRect(532, 25, 560, 60);
|
||||
}
|
||||
|
||||
if (_vm->_globals->_saveData->_data[svField354] == 1) {
|
||||
_vm->_graphicsManager.Affiche_Perfect(_vm->_graphicsManager._vesaBuffer, _vm->_objectsManager._headSprites, 832, 325, 0, 0, 0, false);
|
||||
_vm->_graphicsManager.addDirtyRect(532, 25, 560, 60);
|
||||
_vm->_graphicsManager->Affiche_Perfect(_vm->_graphicsManager->_vesaBuffer, _vm->_objectsManager._headSprites, 832, 325, 0, 0, 0, false);
|
||||
_vm->_graphicsManager->addDirtyRect(532, 25, 560, 60);
|
||||
}
|
||||
}
|
||||
|
||||
@ -537,19 +537,19 @@ void DialogsManager::testDialogOpening() {
|
||||
showInventory();
|
||||
break;
|
||||
case KEY_OPTIONS:
|
||||
_vm->_graphicsManager._scrollStatus = 1;
|
||||
_vm->_graphicsManager->_scrollStatus = 1;
|
||||
showOptionsDialog();
|
||||
_vm->_graphicsManager._scrollStatus = 0;
|
||||
_vm->_graphicsManager->_scrollStatus = 0;
|
||||
break;
|
||||
case KEY_LOAD:
|
||||
_vm->_graphicsManager._scrollStatus = 1;
|
||||
_vm->_graphicsManager->_scrollStatus = 1;
|
||||
showLoadGame();
|
||||
_vm->_graphicsManager._scrollStatus = 0;
|
||||
_vm->_graphicsManager->_scrollStatus = 0;
|
||||
break;
|
||||
case KEY_SAVE:
|
||||
_vm->_graphicsManager._scrollStatus = 1;
|
||||
_vm->_graphicsManager->_scrollStatus = 1;
|
||||
showSaveGame();
|
||||
_vm->_graphicsManager._scrollStatus = 0;
|
||||
_vm->_graphicsManager->_scrollStatus = 0;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
@ -572,8 +572,8 @@ void DialogsManager::showLoadGame() {
|
||||
_vm->_eventsManager->refreshScreenAndEvents();
|
||||
} while (!_vm->shouldQuit() && (!slotNumber || _vm->_eventsManager->getMouseButton() != 1));
|
||||
_vm->_objectsManager._saveLoadFl = false;
|
||||
_vm->_graphicsManager.copySurface(_vm->_graphicsManager._vesaScreen, _vm->_eventsManager->_startPos.x + 183, 60, 274, 353, _vm->_graphicsManager._vesaBuffer, _vm->_eventsManager->_startPos.x + 183, 60);
|
||||
_vm->_graphicsManager.addDirtyRect(_vm->_eventsManager->_startPos.x + 183, 60, 457, 413);
|
||||
_vm->_graphicsManager->copySurface(_vm->_graphicsManager->_vesaScreen, _vm->_eventsManager->_startPos.x + 183, 60, 274, 353, _vm->_graphicsManager->_vesaBuffer, _vm->_eventsManager->_startPos.x + 183, 60);
|
||||
_vm->_graphicsManager->addDirtyRect(_vm->_eventsManager->_startPos.x + 183, 60, 457, 413);
|
||||
_vm->_objectsManager.BOBTOUS = true;
|
||||
_vm->_objectsManager._saveLoadSprite = _vm->_globals->freeMemory(_vm->_objectsManager._saveLoadSprite);
|
||||
_vm->_objectsManager._saveLoadSprite2 = _vm->_globals->freeMemory(_vm->_objectsManager._saveLoadSprite2);
|
||||
@ -601,8 +601,8 @@ void DialogsManager::showSaveGame() {
|
||||
} while (!_vm->shouldQuit() && (!slotNumber || _vm->_eventsManager->getMouseButton() != 1));
|
||||
|
||||
_vm->_objectsManager._saveLoadFl = false;
|
||||
_vm->_graphicsManager.copySurface(_vm->_graphicsManager._vesaScreen, _vm->_eventsManager->_startPos.x + 183, 60, 274, 353, _vm->_graphicsManager._vesaBuffer, _vm->_eventsManager->_startPos.x + 183, 60);
|
||||
_vm->_graphicsManager.addDirtyRect(_vm->_eventsManager->_startPos.x + 183, 60, _vm->_eventsManager->_startPos.x + 457, 413);
|
||||
_vm->_graphicsManager->copySurface(_vm->_graphicsManager->_vesaScreen, _vm->_eventsManager->_startPos.x + 183, 60, 274, 353, _vm->_graphicsManager->_vesaBuffer, _vm->_eventsManager->_startPos.x + 183, 60);
|
||||
_vm->_graphicsManager->addDirtyRect(_vm->_eventsManager->_startPos.x + 183, 60, _vm->_eventsManager->_startPos.x + 457, 413);
|
||||
_vm->_objectsManager.BOBTOUS = true;
|
||||
_vm->_objectsManager._saveLoadSprite = _vm->_globals->freeMemory(_vm->_objectsManager._saveLoadSprite);
|
||||
_vm->_objectsManager._saveLoadSprite2 = _vm->_globals->freeMemory(_vm->_objectsManager._saveLoadSprite2);
|
||||
@ -642,18 +642,18 @@ void DialogsManager::showSaveLoad(SaveLoadMode mode) {
|
||||
|
||||
_vm->_objectsManager._saveLoadSprite = _vm->_objectsManager.loadSprite(filename);
|
||||
_vm->_objectsManager._saveLoadSprite2 = _vm->_objectsManager.loadSprite("SAVE2.SPR");
|
||||
_vm->_graphicsManager.Sprite_Vesa(_vm->_graphicsManager._vesaBuffer, _vm->_objectsManager._saveLoadSprite, _vm->_eventsManager->_startPos.x + 483, 360, 0);
|
||||
_vm->_graphicsManager->Sprite_Vesa(_vm->_graphicsManager->_vesaBuffer, _vm->_objectsManager._saveLoadSprite, _vm->_eventsManager->_startPos.x + 483, 360, 0);
|
||||
|
||||
if (_vm->_globals->_language == LANG_FR) {
|
||||
if (mode == MODE_SAVE)
|
||||
_vm->_graphicsManager.Sprite_Vesa(_vm->_graphicsManager._vesaBuffer, _vm->_objectsManager._saveLoadSprite, _vm->_eventsManager->_startPos.x + 525, 375, 1);
|
||||
_vm->_graphicsManager->Sprite_Vesa(_vm->_graphicsManager->_vesaBuffer, _vm->_objectsManager._saveLoadSprite, _vm->_eventsManager->_startPos.x + 525, 375, 1);
|
||||
else if (mode == MODE_LOAD)
|
||||
_vm->_graphicsManager.Sprite_Vesa(_vm->_graphicsManager._vesaBuffer, _vm->_objectsManager._saveLoadSprite, _vm->_eventsManager->_startPos.x + 515, 375, 2);
|
||||
_vm->_graphicsManager->Sprite_Vesa(_vm->_graphicsManager->_vesaBuffer, _vm->_objectsManager._saveLoadSprite, _vm->_eventsManager->_startPos.x + 515, 375, 2);
|
||||
} else {
|
||||
if (mode == MODE_SAVE)
|
||||
_vm->_graphicsManager.Sprite_Vesa(_vm->_graphicsManager._vesaBuffer, _vm->_objectsManager._saveLoadSprite, _vm->_eventsManager->_startPos.x + 535, 372, 1);
|
||||
_vm->_graphicsManager->Sprite_Vesa(_vm->_graphicsManager->_vesaBuffer, _vm->_objectsManager._saveLoadSprite, _vm->_eventsManager->_startPos.x + 535, 372, 1);
|
||||
else if (mode == MODE_LOAD)
|
||||
_vm->_graphicsManager.Sprite_Vesa(_vm->_graphicsManager._vesaBuffer, _vm->_objectsManager._saveLoadSprite, _vm->_eventsManager->_startPos.x + 539, 372, 2);
|
||||
_vm->_graphicsManager->Sprite_Vesa(_vm->_graphicsManager->_vesaBuffer, _vm->_objectsManager._saveLoadSprite, _vm->_eventsManager->_startPos.x + 539, 372, 2);
|
||||
}
|
||||
|
||||
for (int slotNumber = 1; slotNumber <= 6; ++slotNumber) {
|
||||
@ -666,22 +666,22 @@ void DialogsManager::showSaveLoad(SaveLoadMode mode) {
|
||||
|
||||
switch (slotNumber) {
|
||||
case 1:
|
||||
_vm->_graphicsManager.restoreSurfaceRect(_vm->_graphicsManager._vesaBuffer, thumb, _vm->_eventsManager->_startPos.x + 190, 112, 128, 87);
|
||||
_vm->_graphicsManager->restoreSurfaceRect(_vm->_graphicsManager->_vesaBuffer, thumb, _vm->_eventsManager->_startPos.x + 190, 112, 128, 87);
|
||||
break;
|
||||
case 2:
|
||||
_vm->_graphicsManager.restoreSurfaceRect(_vm->_graphicsManager._vesaBuffer, thumb, _vm->_eventsManager->_startPos.x + 323, 112, 128, 87);
|
||||
_vm->_graphicsManager->restoreSurfaceRect(_vm->_graphicsManager->_vesaBuffer, thumb, _vm->_eventsManager->_startPos.x + 323, 112, 128, 87);
|
||||
break;
|
||||
case 3:
|
||||
_vm->_graphicsManager.restoreSurfaceRect(_vm->_graphicsManager._vesaBuffer, thumb, _vm->_eventsManager->_startPos.x + 190, 203, 128, 87);
|
||||
_vm->_graphicsManager->restoreSurfaceRect(_vm->_graphicsManager->_vesaBuffer, thumb, _vm->_eventsManager->_startPos.x + 190, 203, 128, 87);
|
||||
break;
|
||||
case 4:
|
||||
_vm->_graphicsManager.restoreSurfaceRect(_vm->_graphicsManager._vesaBuffer, thumb, _vm->_eventsManager->_startPos.x + 323, 203, 128, 87);
|
||||
_vm->_graphicsManager->restoreSurfaceRect(_vm->_graphicsManager->_vesaBuffer, thumb, _vm->_eventsManager->_startPos.x + 323, 203, 128, 87);
|
||||
break;
|
||||
case 5:
|
||||
_vm->_graphicsManager.restoreSurfaceRect(_vm->_graphicsManager._vesaBuffer, thumb, _vm->_eventsManager->_startPos.x + 190, 294, 128, 87);
|
||||
_vm->_graphicsManager->restoreSurfaceRect(_vm->_graphicsManager->_vesaBuffer, thumb, _vm->_eventsManager->_startPos.x + 190, 294, 128, 87);
|
||||
break;
|
||||
case 6:
|
||||
_vm->_graphicsManager.restoreSurfaceRect(_vm->_graphicsManager._vesaBuffer, thumb, _vm->_eventsManager->_startPos.x + 323, 294, 128, 87);
|
||||
_vm->_graphicsManager->restoreSurfaceRect(_vm->_graphicsManager->_vesaBuffer, thumb, _vm->_eventsManager->_startPos.x + 323, 294, 128, 87);
|
||||
break;
|
||||
}
|
||||
|
||||
@ -691,7 +691,7 @@ void DialogsManager::showSaveLoad(SaveLoadMode mode) {
|
||||
}
|
||||
}
|
||||
|
||||
_vm->_graphicsManager.copySurfaceRect(_vm->_graphicsManager._vesaBuffer, _vm->_objectsManager._saveLoadSprite, _vm->_eventsManager->_startPos.x + 183, 60, 274, 353);
|
||||
_vm->_graphicsManager->copySurfaceRect(_vm->_graphicsManager->_vesaBuffer, _vm->_objectsManager._saveLoadSprite, _vm->_eventsManager->_startPos.x + 183, 60, 274, 353);
|
||||
_vm->_objectsManager._saveLoadFl = true;
|
||||
_vm->_objectsManager._saveLoadX = 0;
|
||||
_vm->_objectsManager._saveLoadY = 0;
|
||||
@ -704,7 +704,7 @@ int DialogsManager::searchSavegames() {
|
||||
int xp = _vm->_eventsManager->getMouseX();
|
||||
int yp = _vm->_eventsManager->getMouseY();
|
||||
|
||||
_vm->_graphicsManager._scrollOffset = _vm->_eventsManager->_startPos.x;
|
||||
_vm->_graphicsManager->_scrollOffset = _vm->_eventsManager->_startPos.x;
|
||||
|
||||
int slotNumber = 0;
|
||||
if (yp >= 112 && yp <= 198) {
|
||||
@ -712,32 +712,32 @@ int DialogsManager::searchSavegames() {
|
||||
slotNumber = 1;
|
||||
_vm->_objectsManager._saveLoadX = 189;
|
||||
_vm->_objectsManager._saveLoadY = 111;
|
||||
} else if (xp > _vm->_graphicsManager._scrollOffset + 322 && xp < _vm->_graphicsManager._scrollOffset + 452) {
|
||||
} else if (xp > _vm->_graphicsManager->_scrollOffset + 322 && xp < _vm->_graphicsManager->_scrollOffset + 452) {
|
||||
slotNumber = 2;
|
||||
_vm->_objectsManager._saveLoadX = 322;
|
||||
_vm->_objectsManager._saveLoadY = 111;
|
||||
}
|
||||
} else if (yp >= 203 && yp <= 289) {
|
||||
if (xp > _vm->_graphicsManager._scrollOffset + 189 && xp < _vm->_graphicsManager._scrollOffset + 318) {
|
||||
if (xp > _vm->_graphicsManager->_scrollOffset + 189 && xp < _vm->_graphicsManager->_scrollOffset + 318) {
|
||||
slotNumber = 3;
|
||||
_vm->_objectsManager._saveLoadX = 189;
|
||||
_vm->_objectsManager._saveLoadY = 202;
|
||||
} else if (xp > _vm->_graphicsManager._scrollOffset + 322 && xp < _vm->_graphicsManager._scrollOffset + 452) {
|
||||
} else if (xp > _vm->_graphicsManager->_scrollOffset + 322 && xp < _vm->_graphicsManager->_scrollOffset + 452) {
|
||||
slotNumber = 4;
|
||||
_vm->_objectsManager._saveLoadX = 322;
|
||||
_vm->_objectsManager._saveLoadY = 202;
|
||||
}
|
||||
} else if (yp >= 294 && yp <= 380) {
|
||||
if (xp > _vm->_graphicsManager._scrollOffset + 189 && xp < _vm->_graphicsManager._scrollOffset + 318) {
|
||||
if (xp > _vm->_graphicsManager->_scrollOffset + 189 && xp < _vm->_graphicsManager->_scrollOffset + 318) {
|
||||
slotNumber = 5;
|
||||
_vm->_objectsManager._saveLoadX = 189;
|
||||
_vm->_objectsManager._saveLoadY = 293;
|
||||
} else if (xp > _vm->_graphicsManager._scrollOffset + 322 && xp < _vm->_graphicsManager._scrollOffset + 452) {
|
||||
} else if (xp > _vm->_graphicsManager->_scrollOffset + 322 && xp < _vm->_graphicsManager->_scrollOffset + 452) {
|
||||
slotNumber = 6;
|
||||
_vm->_objectsManager._saveLoadX = 322;
|
||||
_vm->_objectsManager._saveLoadY = 293;
|
||||
}
|
||||
} else if (yp >= 388 && yp <= 404 && xp > _vm->_graphicsManager._scrollOffset + 273 && xp < _vm->_graphicsManager._scrollOffset + 355) {
|
||||
} else if (yp >= 388 && yp <= 404 && xp > _vm->_graphicsManager->_scrollOffset + 273 && xp < _vm->_graphicsManager->_scrollOffset + 355) {
|
||||
slotNumber = 7;
|
||||
_vm->_objectsManager._saveLoadX = 0;
|
||||
_vm->_objectsManager._saveLoadY = 0;
|
||||
|
@ -219,7 +219,7 @@ void EventsManager::checkForNextFrameCounter() {
|
||||
if ((milli - _priorFrameTime) >= GAME_FRAME_TIME) {
|
||||
++_gameCounter;
|
||||
_priorFrameTime = milli;
|
||||
_vm->_graphicsManager.updateScreen();
|
||||
_vm->_graphicsManager->updateScreen();
|
||||
|
||||
// Signal the ScummVM debugger
|
||||
_vm->_debugger->onFrame();
|
||||
@ -368,24 +368,24 @@ void EventsManager::refreshScreenAndEvents() {
|
||||
height = _vm->_globals->_objectHeight;
|
||||
} else {
|
||||
if (_breakoutFl) {
|
||||
if (xp < _vm->_graphicsManager._minX)
|
||||
xp = _vm->_graphicsManager._minX;
|
||||
if (_mousePos.y < _vm->_graphicsManager._minY)
|
||||
yp = _vm->_graphicsManager._minY;
|
||||
if (_mouseSizeX + xp >= _vm->_graphicsManager._maxX)
|
||||
width = _mouseSizeX - (_mouseSizeX + xp - _vm->_graphicsManager._maxX);
|
||||
if (yp + _mouseSizeY >= _vm->_graphicsManager._maxY)
|
||||
height = _vm->_graphicsManager._maxY - yp;
|
||||
if (xp < _vm->_graphicsManager->_minX)
|
||||
xp = _vm->_graphicsManager->_minX;
|
||||
if (_mousePos.y < _vm->_graphicsManager->_minY)
|
||||
yp = _vm->_graphicsManager->_minY;
|
||||
if (_mouseSizeX + xp >= _vm->_graphicsManager->_maxX)
|
||||
width = _mouseSizeX - (_mouseSizeX + xp - _vm->_graphicsManager->_maxX);
|
||||
if (yp + _mouseSizeY >= _vm->_graphicsManager->_maxY)
|
||||
height = _vm->_graphicsManager->_maxY - yp;
|
||||
} else {
|
||||
if (xp < _vm->_graphicsManager._minX)
|
||||
xp = _vm->_graphicsManager._minX - mouseWidth;
|
||||
if (xp < _vm->_graphicsManager->_minX)
|
||||
xp = _vm->_graphicsManager->_minX - mouseWidth;
|
||||
mouseHeight = (int16)mouseHeight;
|
||||
if (_mousePos.y < _vm->_graphicsManager._minY - mouseHeight)
|
||||
yp = _vm->_graphicsManager._minY - mouseHeight;
|
||||
if (_mouseSizeX + xp >= _vm->_graphicsManager._maxX)
|
||||
width = _mouseSizeX - (_mouseSizeX + xp - _vm->_graphicsManager._maxX - mouseWidth);
|
||||
if (yp + _mouseSizeY >= mouseHeight + _vm->_graphicsManager._maxY)
|
||||
height = _vm->_graphicsManager._maxY - mouseHeight - yp;
|
||||
if (_mousePos.y < _vm->_graphicsManager->_minY - mouseHeight)
|
||||
yp = _vm->_graphicsManager->_minY - mouseHeight;
|
||||
if (_mouseSizeX + xp >= _vm->_graphicsManager->_maxX)
|
||||
width = _mouseSizeX - (_mouseSizeX + xp - _vm->_graphicsManager->_maxX - mouseWidth);
|
||||
if (yp + _mouseSizeY >= mouseHeight + _vm->_graphicsManager->_maxY)
|
||||
height = _vm->_graphicsManager->_maxY - mouseHeight - yp;
|
||||
}
|
||||
right = xp + width;
|
||||
bottom = yp + height;
|
||||
@ -397,18 +397,18 @@ void EventsManager::refreshScreenAndEvents() {
|
||||
if (!_mouseFl) {
|
||||
updateCursor();
|
||||
} else if (_mouseCursorId == 23) {
|
||||
if (yp < _vm->_graphicsManager._maxY && xp < _vm->_graphicsManager._maxX) {
|
||||
if (width + xp > _vm->_graphicsManager._maxX)
|
||||
width = _vm->_graphicsManager._maxX - xp;
|
||||
if (yp + height > _vm->_graphicsManager._maxY)
|
||||
height = _vm->_graphicsManager._maxY - yp;
|
||||
if (yp < _vm->_graphicsManager->_maxY && xp < _vm->_graphicsManager->_maxX) {
|
||||
if (width + xp > _vm->_graphicsManager->_maxX)
|
||||
width = _vm->_graphicsManager->_maxX - xp;
|
||||
if (yp + height > _vm->_graphicsManager->_maxY)
|
||||
height = _vm->_graphicsManager->_maxY - yp;
|
||||
if (width > 1 && height > 1) {
|
||||
updateCursor();
|
||||
}
|
||||
}
|
||||
} else if (yp < _vm->_graphicsManager._maxY && xp < _vm->_graphicsManager._maxX && width > 1 && height > 1) {
|
||||
} else if (yp < _vm->_graphicsManager->_maxY && xp < _vm->_graphicsManager->_maxX && width > 1 && height > 1) {
|
||||
updateCursor();
|
||||
_vm->_graphicsManager.addDirtyRect(xp, yp, right, bottom);
|
||||
_vm->_graphicsManager->addDirtyRect(xp, yp, right, bottom);
|
||||
}
|
||||
|
||||
_vm->_globals->_speed = 2;
|
||||
@ -442,39 +442,39 @@ void EventsManager::refreshScreenAndEvents() {
|
||||
} while (!_vm->shouldQuit() && _vm->_globals->iRegul == 3 && _rateCounter <= 15);
|
||||
_vm->_globals->_speed = 2;
|
||||
_rateCounter = 0;
|
||||
if (!_vm->_graphicsManager._largeScreenFl || _vm->_graphicsManager._scrollStatus == 1) {
|
||||
_vm->_graphicsManager.displayDirtyRects();
|
||||
if (!_vm->_graphicsManager->_largeScreenFl || _vm->_graphicsManager->_scrollStatus == 1) {
|
||||
_vm->_graphicsManager->displayDirtyRects();
|
||||
} else {
|
||||
if (_vm->_graphicsManager._scrollStatus != 2) {
|
||||
if (getMouseX() > _vm->_graphicsManager._scrollPosX + 620)
|
||||
_vm->_graphicsManager._scrollPosX += _vm->_graphicsManager._scrollSpeed;
|
||||
if (getMouseX() < _vm->_graphicsManager._scrollPosX + 10)
|
||||
_vm->_graphicsManager._scrollPosX -= _vm->_graphicsManager._scrollSpeed;
|
||||
if (_vm->_graphicsManager->_scrollStatus != 2) {
|
||||
if (getMouseX() > _vm->_graphicsManager->_scrollPosX + 620)
|
||||
_vm->_graphicsManager->_scrollPosX += _vm->_graphicsManager->_scrollSpeed;
|
||||
if (getMouseX() < _vm->_graphicsManager->_scrollPosX + 10)
|
||||
_vm->_graphicsManager->_scrollPosX -= _vm->_graphicsManager->_scrollSpeed;
|
||||
}
|
||||
if (_vm->_graphicsManager._scrollPosX < 0)
|
||||
_vm->_graphicsManager._scrollPosX = 0;
|
||||
if (_vm->_graphicsManager._scrollPosX > SCREEN_WIDTH)
|
||||
_vm->_graphicsManager._scrollPosX = SCREEN_WIDTH;
|
||||
if (_vm->_graphicsManager._oldScrollPosX == _vm->_graphicsManager._scrollPosX) {
|
||||
_vm->_graphicsManager.displayDirtyRects();
|
||||
if (_vm->_graphicsManager->_scrollPosX < 0)
|
||||
_vm->_graphicsManager->_scrollPosX = 0;
|
||||
if (_vm->_graphicsManager->_scrollPosX > SCREEN_WIDTH)
|
||||
_vm->_graphicsManager->_scrollPosX = SCREEN_WIDTH;
|
||||
if (_vm->_graphicsManager->_oldScrollPosX == _vm->_graphicsManager->_scrollPosX) {
|
||||
_vm->_graphicsManager->displayDirtyRects();
|
||||
} else {
|
||||
_vm->_fontManager->hideText(9);
|
||||
_vm->_graphicsManager.lockScreen();
|
||||
_vm->_graphicsManager.m_scroll16(_vm->_graphicsManager._vesaBuffer, _vm->_graphicsManager._scrollPosX, 20, SCREEN_WIDTH, 440, 0, 20);
|
||||
_vm->_graphicsManager.unlockScreen();
|
||||
_vm->_graphicsManager->lockScreen();
|
||||
_vm->_graphicsManager->m_scroll16(_vm->_graphicsManager->_vesaBuffer, _vm->_graphicsManager->_scrollPosX, 20, SCREEN_WIDTH, 440, 0, 20);
|
||||
_vm->_graphicsManager->unlockScreen();
|
||||
|
||||
_vm->_graphicsManager.resetRefreshRects();
|
||||
_vm->_graphicsManager.addRefreshRect(0, 20, SCREEN_WIDTH, SCREEN_HEIGHT - 20);
|
||||
_vm->_graphicsManager->resetRefreshRects();
|
||||
_vm->_graphicsManager->addRefreshRect(0, 20, SCREEN_WIDTH, SCREEN_HEIGHT - 20);
|
||||
|
||||
_vm->_graphicsManager.resetDirtyRects();
|
||||
_vm->_graphicsManager->resetDirtyRects();
|
||||
|
||||
_startPos.x = _vm->_graphicsManager._scrollPosX;
|
||||
_vm->_graphicsManager._scrollOffset = _vm->_graphicsManager._scrollPosX;
|
||||
_vm->_graphicsManager._scrollPosX = _vm->_graphicsManager._scrollPosX;
|
||||
_startPos.x = _vm->_graphicsManager->_scrollPosX;
|
||||
_vm->_graphicsManager->_scrollOffset = _vm->_graphicsManager->_scrollPosX;
|
||||
_vm->_graphicsManager->_scrollPosX = _vm->_graphicsManager->_scrollPosX;
|
||||
}
|
||||
_vm->_graphicsManager._oldScrollPosX = _vm->_graphicsManager._scrollPosX;
|
||||
_startPos.x = _vm->_graphicsManager._scrollPosX;
|
||||
_vm->_graphicsManager._scrollOffset = _vm->_graphicsManager._scrollPosX;
|
||||
_vm->_graphicsManager->_oldScrollPosX = _vm->_graphicsManager->_scrollPosX;
|
||||
_startPos.x = _vm->_graphicsManager->_scrollPosX;
|
||||
_vm->_graphicsManager->_scrollOffset = _vm->_graphicsManager->_scrollPosX;
|
||||
}
|
||||
_curMouseButton = _mouseButton;
|
||||
_mouseButton = 0;
|
||||
@ -484,13 +484,13 @@ void EventsManager::refreshScreenAndEvents() {
|
||||
|
||||
void EventsManager::updateCursor() {
|
||||
// Backup the current sprite clipping bounds and reset them
|
||||
Common::Rect clipBounds(_vm->_graphicsManager._minX, _vm->_graphicsManager._minY,
|
||||
_vm->_graphicsManager._maxX, _vm->_graphicsManager._maxY);
|
||||
_vm->_graphicsManager._minX = _vm->_graphicsManager._minY = 0;
|
||||
_vm->_graphicsManager._maxX = _vm->_globals->_objectWidth;
|
||||
_vm->_graphicsManager._maxY = _vm->_globals->_objectHeight;
|
||||
int pitch = _vm->_graphicsManager._lineNbr2;
|
||||
_vm->_graphicsManager._lineNbr2 = _vm->_globals->_objectWidth;
|
||||
Common::Rect clipBounds(_vm->_graphicsManager->_minX, _vm->_graphicsManager->_minY,
|
||||
_vm->_graphicsManager->_maxX, _vm->_graphicsManager->_maxY);
|
||||
_vm->_graphicsManager->_minX = _vm->_graphicsManager->_minY = 0;
|
||||
_vm->_graphicsManager->_maxX = _vm->_globals->_objectWidth;
|
||||
_vm->_graphicsManager->_maxY = _vm->_globals->_objectHeight;
|
||||
int pitch = _vm->_graphicsManager->_lineNbr2;
|
||||
_vm->_graphicsManager->_lineNbr2 = _vm->_globals->_objectWidth;
|
||||
|
||||
// Create the temporary cursor surface
|
||||
byte *cursorSurface = new byte[_vm->_globals->_objectHeight * _vm->_globals->_objectWidth];
|
||||
@ -498,24 +498,24 @@ void EventsManager::updateCursor() {
|
||||
|
||||
if (_mouseCursorId != 23) {
|
||||
// Draw standard cursor
|
||||
_vm->_graphicsManager.Sprite_Vesa(cursorSurface, _mouseCursor, 300, 300, _mouseSpriteId);
|
||||
_vm->_graphicsManager->Sprite_Vesa(cursorSurface, _mouseCursor, 300, 300, _mouseSpriteId);
|
||||
} else {
|
||||
// Draw the active inventory object
|
||||
_vm->_graphicsManager.Affiche_Perfect(cursorSurface, _objectBuf, 300, 300, 0, 0, 0, false);
|
||||
_vm->_graphicsManager->Affiche_Perfect(cursorSurface, _objectBuf, 300, 300, 0, 0, 0, false);
|
||||
}
|
||||
|
||||
// Reset the clipping bounds
|
||||
_vm->_graphicsManager._minX = clipBounds.left;
|
||||
_vm->_graphicsManager._minY = clipBounds.top;
|
||||
_vm->_graphicsManager._maxX = clipBounds.right;
|
||||
_vm->_graphicsManager._maxY = clipBounds.bottom;
|
||||
_vm->_graphicsManager._lineNbr2 = pitch;
|
||||
_vm->_graphicsManager->_minX = clipBounds.left;
|
||||
_vm->_graphicsManager->_minY = clipBounds.top;
|
||||
_vm->_graphicsManager->_maxX = clipBounds.right;
|
||||
_vm->_graphicsManager->_maxY = clipBounds.bottom;
|
||||
_vm->_graphicsManager->_lineNbr2 = pitch;
|
||||
|
||||
// Create a cursor palette
|
||||
Graphics::PixelFormat pixelFormat = g_system->getScreenFormat();
|
||||
|
||||
byte *cursorPalette = new byte[3 * PALETTE_SIZE];
|
||||
uint16 *paletteColors = (uint16 *)_vm->_graphicsManager.PAL_PIXELS;
|
||||
uint16 *paletteColors = (uint16 *)_vm->_graphicsManager->PAL_PIXELS;
|
||||
|
||||
for (int i = 0; i < PALETTE_SIZE; i++) {
|
||||
uint8 r, g, b;
|
||||
|
@ -172,14 +172,14 @@ void FontManager::box(int idx, int messageId, const Common::String &filename, in
|
||||
} else {
|
||||
int height = _text[idx]._height;
|
||||
int width = _text[idx]._width;
|
||||
_vm->_graphicsManager.restoreSurfaceRect(
|
||||
_vm->_graphicsManager._vesaBuffer,
|
||||
_vm->_graphicsManager->restoreSurfaceRect(
|
||||
_vm->_graphicsManager->_vesaBuffer,
|
||||
_text[idx]._textBlock,
|
||||
xp,
|
||||
yp,
|
||||
_text[idx]._width,
|
||||
_text[idx]._height);
|
||||
_vm->_graphicsManager.addDirtyRect(xp, yp, xp + width, yp + height);
|
||||
_vm->_graphicsManager->addDirtyRect(xp, yp, xp + width, yp + height);
|
||||
}
|
||||
} else {
|
||||
int lineCount = 0;
|
||||
@ -359,15 +359,15 @@ void FontManager::box(int idx, int messageId, const Common::String &filename, in
|
||||
if (ptrd == g_PTRNUL)
|
||||
error("Cutting a block for text box (%d)", size);
|
||||
|
||||
_vm->_graphicsManager.copySurfaceRect(_vm->_graphicsManager._vesaBuffer, ptrd, posX, posY, saveWidth, saveHeight);
|
||||
_vm->_graphicsManager.Trans_bloc2(ptrd, _vm->_graphicsManager._colorTable, size);
|
||||
_vm->_graphicsManager.restoreSurfaceRect(_vm->_graphicsManager._vesaBuffer, ptrd, posX, posY, saveWidth, saveHeight);
|
||||
_vm->_graphicsManager->copySurfaceRect(_vm->_graphicsManager->_vesaBuffer, ptrd, posX, posY, saveWidth, saveHeight);
|
||||
_vm->_graphicsManager->Trans_bloc2(ptrd, _vm->_graphicsManager->_colorTable, size);
|
||||
_vm->_graphicsManager->restoreSurfaceRect(_vm->_graphicsManager->_vesaBuffer, ptrd, posX, posY, saveWidth, saveHeight);
|
||||
_vm->_globals->freeMemory(ptrd);
|
||||
|
||||
_vm->_graphicsManager.drawHorizontalLine(_vm->_graphicsManager._vesaBuffer, posX, posY, saveWidth, (byte)-2);
|
||||
_vm->_graphicsManager.drawHorizontalLine(_vm->_graphicsManager._vesaBuffer, posX, saveHeight + posY, saveWidth, (byte)-2);
|
||||
_vm->_graphicsManager.drawVerticalLine(_vm->_graphicsManager._vesaBuffer, posX, posY, saveHeight, (byte)-2);
|
||||
_vm->_graphicsManager.drawVerticalLine(_vm->_graphicsManager._vesaBuffer, saveWidth + posX, posY, saveHeight, (byte)-2);
|
||||
_vm->_graphicsManager->drawHorizontalLine(_vm->_graphicsManager->_vesaBuffer, posX, posY, saveWidth, (byte)-2);
|
||||
_vm->_graphicsManager->drawHorizontalLine(_vm->_graphicsManager->_vesaBuffer, posX, saveHeight + posY, saveWidth, (byte)-2);
|
||||
_vm->_graphicsManager->drawVerticalLine(_vm->_graphicsManager->_vesaBuffer, posX, posY, saveHeight, (byte)-2);
|
||||
_vm->_graphicsManager->drawVerticalLine(_vm->_graphicsManager->_vesaBuffer, saveWidth + posX, posY, saveHeight, (byte)-2);
|
||||
}
|
||||
_text[idx]._lineCount = lineCount;
|
||||
int textPosY = posY + 5;
|
||||
@ -393,7 +393,7 @@ void FontManager::box(int idx, int messageId, const Common::String &filename, in
|
||||
_text[idx]._textBlock = ptre;
|
||||
_text[idx]._width = blockWidth;
|
||||
_text[idx]._height = blockHeight;
|
||||
_vm->_graphicsManager.copySurfaceRect(_vm->_graphicsManager._vesaBuffer, _text[idx]._textBlock, posX, posY, _text[idx]._width, blockHeight);
|
||||
_vm->_graphicsManager->copySurfaceRect(_vm->_graphicsManager->_vesaBuffer, _text[idx]._textBlock, posX, posY, _text[idx]._width, blockHeight);
|
||||
}
|
||||
_tempText = _vm->_globals->freeMemory(_tempText);
|
||||
}
|
||||
@ -413,12 +413,12 @@ void FontManager::displayTextVesa(int xp, int yp, const Common::String &message,
|
||||
break;
|
||||
if (currChar >= 32) {
|
||||
charIndex = currChar - 32;
|
||||
_vm->_graphicsManager.displayFont(_vm->_graphicsManager._vesaBuffer, _font, currentX, yp, currChar - 32, col);
|
||||
_vm->_graphicsManager->displayFont(_vm->_graphicsManager->_vesaBuffer, _font, currentX, yp, currChar - 32, col);
|
||||
currentX += _vm->_objectsManager.getWidth(_font, charIndex);
|
||||
}
|
||||
}
|
||||
|
||||
_vm->_graphicsManager.addDirtyRect(xp, yp, currentX, yp + 12);
|
||||
_vm->_graphicsManager->addDirtyRect(xp, yp, currentX, yp + 12);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -430,7 +430,7 @@ void FontManager::displayText(int xp, int yp, const Common::String &message, int
|
||||
|
||||
if (currentChar > 31) {
|
||||
int characterIndex = currentChar - 32;
|
||||
_vm->_graphicsManager.displayFont(_vm->_graphicsManager._vesaBuffer, _font, xp, yp, characterIndex, col);
|
||||
_vm->_graphicsManager->displayFont(_vm->_graphicsManager->_vesaBuffer, _font, xp, yp, characterIndex, col);
|
||||
xp += _vm->_objectsManager.getWidth(_font, characterIndex);
|
||||
}
|
||||
}
|
||||
@ -457,7 +457,7 @@ void FontManager::renderTextDisplay(int xp, int yp, const Common::String &msg, i
|
||||
break;
|
||||
if (curChar >= 32) {
|
||||
byte printChar = curChar - 32;
|
||||
_vm->_graphicsManager.displayFont(_vm->_graphicsManager._vesaBuffer, _font, charEndPosX, yp, printChar, fontCol);
|
||||
_vm->_graphicsManager->displayFont(_vm->_graphicsManager->_vesaBuffer, _font, charEndPosX, yp, printChar, fontCol);
|
||||
|
||||
// UGLY HACK: For some obscure reason, the BeOS and OS/2 versions use another font file, which doesn't have variable width.
|
||||
// All the fonts have a length of 9, which results in completely broken text in the computer.
|
||||
@ -476,7 +476,7 @@ void FontManager::renderTextDisplay(int xp, int yp, const Common::String &msg, i
|
||||
|
||||
int charStartPosX = charEndPosX;
|
||||
charEndPosX += charWidth;
|
||||
_vm->_graphicsManager.addDirtyRect(charStartPosX, yp, charEndPosX, yp + 12);
|
||||
_vm->_graphicsManager->addDirtyRect(charStartPosX, yp, charEndPosX, yp + 12);
|
||||
if (_vm->_eventsManager->_escKeyFl) {
|
||||
_vm->_globals->iRegul = 1;
|
||||
_vm->_eventsManager->refreshScreenAndEvents();
|
||||
|
@ -35,7 +35,9 @@
|
||||
|
||||
namespace Hopkins {
|
||||
|
||||
GraphicsManager::GraphicsManager() {
|
||||
GraphicsManager::GraphicsManager(HopkinsEngine *vm) {
|
||||
_vm = vm;
|
||||
|
||||
_lockCounter = 0;
|
||||
_initGraphicsFl = false;
|
||||
_screenWidth = _screenHeight = 0;
|
||||
@ -75,20 +77,10 @@ GraphicsManager::GraphicsManager() {
|
||||
Common::fill(&_colorTable[0], &_colorTable[PALETTE_EXT_BLOCK_SIZE], 0);
|
||||
Common::fill(&_palette[0], &_palette[PALETTE_EXT_BLOCK_SIZE], 0);
|
||||
Common::fill(&_oldPalette[0], &_oldPalette[PALETTE_EXT_BLOCK_SIZE], 0);
|
||||
}
|
||||
|
||||
GraphicsManager::~GraphicsManager() {
|
||||
_vm->_globals->freeMemory(_vesaScreen);
|
||||
_vm->_globals->freeMemory(_vesaBuffer);
|
||||
_vm->_globals->freeMemory(_screenBuffer);
|
||||
}
|
||||
|
||||
void GraphicsManager::setParent(HopkinsEngine *vm) {
|
||||
_vm = vm;
|
||||
|
||||
|
||||
if (_vm->getIsDemo()) {
|
||||
if (_vm->getPlatform() == Common::kPlatformLinux)
|
||||
// CHECKME: Should be false?
|
||||
// CHECKME: Should be false?
|
||||
MANU_SCROLL = true;
|
||||
else
|
||||
MANU_SCROLL = false;
|
||||
@ -99,6 +91,12 @@ void GraphicsManager::setParent(HopkinsEngine *vm) {
|
||||
}
|
||||
}
|
||||
|
||||
GraphicsManager::~GraphicsManager() {
|
||||
_vm->_globals->freeMemory(_vesaScreen);
|
||||
_vm->_globals->freeMemory(_vesaBuffer);
|
||||
_vm->_globals->freeMemory(_screenBuffer);
|
||||
}
|
||||
|
||||
void GraphicsManager::setGraphicalMode(int width, int height) {
|
||||
if (!_initGraphicsFl) {
|
||||
Graphics::PixelFormat pixelFormat16(2, 5, 6, 5, 0, 11, 5, 0, 0);
|
||||
|
@ -116,10 +116,9 @@ public:
|
||||
bool MANU_SCROLL;
|
||||
int FADE_LINUX;
|
||||
public:
|
||||
GraphicsManager();
|
||||
GraphicsManager(HopkinsEngine *vm);
|
||||
~GraphicsManager();
|
||||
|
||||
void setParent(HopkinsEngine *vm);
|
||||
void lockScreen();
|
||||
void unlockScreen();
|
||||
void clearPalette();
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -150,8 +150,8 @@ public:
|
||||
FileManager *_fileManager;
|
||||
FontManager *_fontManager;
|
||||
Globals *_globals;
|
||||
GraphicsManager *_graphicsManager;
|
||||
|
||||
GraphicsManager _graphicsManager;
|
||||
LinesManager _linesManager;
|
||||
MenuManager _menuManager;
|
||||
ObjectsManager _objectsManager;
|
||||
|
@ -140,11 +140,11 @@ int LinesManager::checkInventoryHotspots(int posX, int posY) {
|
||||
hotspotId = checkInventoryHotspotsRow(posX, 19, false);
|
||||
if (posY >= 268 && posY <= 306)
|
||||
hotspotId = checkInventoryHotspotsRow(posX, 25, true);
|
||||
if (posY >= 268 && posY <= 288 && posX >= _vm->_graphicsManager._scrollOffset + 424 && posX <= _vm->_graphicsManager._scrollOffset + 478)
|
||||
if (posY >= 268 && posY <= 288 && posX >= _vm->_graphicsManager->_scrollOffset + 424 && posX <= _vm->_graphicsManager->_scrollOffset + 478)
|
||||
hotspotId = 30;
|
||||
if (posY >= 290 && posY <= 306 && posX >= _vm->_graphicsManager._scrollOffset + 424 && posX <= _vm->_graphicsManager._scrollOffset + 478)
|
||||
if (posY >= 290 && posY <= 306 && posX >= _vm->_graphicsManager->_scrollOffset + 424 && posX <= _vm->_graphicsManager->_scrollOffset + 478)
|
||||
hotspotId = 31;
|
||||
if (posY < 114 || posY > 306 || posX < _vm->_graphicsManager._scrollOffset + 152 || posX > _vm->_graphicsManager._scrollOffset + 484)
|
||||
if (posY < 114 || posY > 306 || posX < _vm->_graphicsManager->_scrollOffset + 152 || posX > _vm->_graphicsManager->_scrollOffset + 484)
|
||||
hotspotId = 32;
|
||||
|
||||
return hotspotId;
|
||||
@ -157,30 +157,30 @@ int LinesManager::checkInventoryHotspots(int posX, int posY) {
|
||||
int LinesManager::checkInventoryHotspotsRow(int posX, int minZoneNum, bool lastRow) {
|
||||
int result = minZoneNum;
|
||||
|
||||
if (posX >= _vm->_graphicsManager._scrollOffset + 158 && posX < _vm->_graphicsManager._scrollOffset + 208)
|
||||
if (posX >= _vm->_graphicsManager->_scrollOffset + 158 && posX < _vm->_graphicsManager->_scrollOffset + 208)
|
||||
return result;
|
||||
|
||||
if (posX >= _vm->_graphicsManager._scrollOffset + 208 && posX < _vm->_graphicsManager._scrollOffset + 266) {
|
||||
if (posX >= _vm->_graphicsManager->_scrollOffset + 208 && posX < _vm->_graphicsManager->_scrollOffset + 266) {
|
||||
result += 1;
|
||||
return result;
|
||||
}
|
||||
|
||||
if (posX >= _vm->_graphicsManager._scrollOffset + 266 && posX < _vm->_graphicsManager._scrollOffset + 320) {
|
||||
if (posX >= _vm->_graphicsManager->_scrollOffset + 266 && posX < _vm->_graphicsManager->_scrollOffset + 320) {
|
||||
result += 2;
|
||||
return result;
|
||||
}
|
||||
|
||||
if (posX >= _vm->_graphicsManager._scrollOffset + 320 && posX < _vm->_graphicsManager._scrollOffset + 370) {
|
||||
if (posX >= _vm->_graphicsManager->_scrollOffset + 320 && posX < _vm->_graphicsManager->_scrollOffset + 370) {
|
||||
result += 3;
|
||||
return result;
|
||||
}
|
||||
|
||||
if (posX >= _vm->_graphicsManager._scrollOffset + 370 && posX < _vm->_graphicsManager._scrollOffset + 424) {
|
||||
if (posX >= _vm->_graphicsManager->_scrollOffset + 370 && posX < _vm->_graphicsManager->_scrollOffset + 424) {
|
||||
result += 4;
|
||||
return result;
|
||||
}
|
||||
|
||||
if (!lastRow && posX >= _vm->_graphicsManager._scrollOffset + 424 && posX <= _vm->_graphicsManager._scrollOffset + 478) {
|
||||
if (!lastRow && posX >= _vm->_graphicsManager->_scrollOffset + 424 && posX <= _vm->_graphicsManager->_scrollOffset + 478) {
|
||||
result += 5;
|
||||
return result;
|
||||
}
|
||||
@ -425,8 +425,8 @@ void LinesManager::initRoute() {
|
||||
|
||||
int curLineX = curLineData[2 * curDataIdx - 2];
|
||||
int curLineY = curLineData[2 * curDataIdx - 1];
|
||||
if (_vm->_graphicsManager._maxX == curLineX || _vm->_graphicsManager._maxY == curLineY ||
|
||||
_vm->_graphicsManager._minX == curLineX || _vm->_graphicsManager._minY == curLineY ||
|
||||
if (_vm->_graphicsManager->_maxX == curLineX || _vm->_graphicsManager->_maxY == curLineY ||
|
||||
_vm->_graphicsManager->_minX == curLineX || _vm->_graphicsManager->_minY == curLineY ||
|
||||
(lineX == curLineX && lineY == curLineY))
|
||||
break;
|
||||
if (lineIdx == MAX_LINES)
|
||||
@ -947,7 +947,7 @@ int LinesManager::GENIAL(int lineIdx, int dataIdx, int fromX, int fromY, int des
|
||||
|
||||
lineIdxRight = foundLineIdx;
|
||||
|
||||
if (_vm->_graphicsManager._maxX <= curX || maxLineX <= curX)
|
||||
if (_vm->_graphicsManager->_maxX <= curX || maxLineX <= curX)
|
||||
break;
|
||||
}
|
||||
curX = destX;
|
||||
@ -1104,8 +1104,8 @@ RouteItem *LinesManager::PARCOURS2(int fromX, int fromY, int destX, int destY) {
|
||||
clipDestX = 20;
|
||||
if (clipDestY <= 19)
|
||||
clipDestY = 20;
|
||||
if (clipDestX > _vm->_graphicsManager._maxX - 10)
|
||||
clipDestX = _vm->_graphicsManager._maxX - 10;
|
||||
if (clipDestX > _vm->_graphicsManager->_maxX - 10)
|
||||
clipDestX = _vm->_graphicsManager->_maxX - 10;
|
||||
if (clipDestY > _vm->_globals->_characterMaxPosY)
|
||||
clipDestY = _vm->_globals->_characterMaxPosY;
|
||||
|
||||
@ -1123,7 +1123,7 @@ RouteItem *LinesManager::PARCOURS2(int fromX, int fromY, int destX, int destY) {
|
||||
return _bestRoute;
|
||||
|
||||
int tmpDelta = 0;
|
||||
for (int tmpY = clipDestY; tmpY < _vm->_graphicsManager._maxY; tmpY++, tmpDelta++) {
|
||||
for (int tmpY = clipDestY; tmpY < _vm->_graphicsManager->_maxY; tmpY++, tmpDelta++) {
|
||||
if (checkCollisionLine(clipDestX, tmpY, &collLineDataIdxArr[DIR_DOWN], &collLineIdxArr[DIR_DOWN], 0, _lastLine) && collLineIdxArr[DIR_DOWN] <= _lastLine)
|
||||
break;
|
||||
collLineDataIdxArr[DIR_DOWN] = 0;
|
||||
@ -1132,7 +1132,7 @@ RouteItem *LinesManager::PARCOURS2(int fromX, int fromY, int destX, int destY) {
|
||||
deltaArr[DIR_DOWN] = tmpDelta;
|
||||
|
||||
tmpDelta = 0;
|
||||
for (int tmpY = clipDestY; tmpY > _vm->_graphicsManager._minY; tmpY--, tmpDelta++) {
|
||||
for (int tmpY = clipDestY; tmpY > _vm->_graphicsManager->_minY; tmpY--, tmpDelta++) {
|
||||
if (checkCollisionLine(clipDestX, tmpY, &collLineDataIdxArr[DIR_UP], &collLineIdxArr[DIR_UP], 0, _lastLine) && collLineIdxArr[DIR_UP] <= _lastLine)
|
||||
break;
|
||||
collLineDataIdxArr[DIR_UP] = 0;
|
||||
@ -1143,7 +1143,7 @@ RouteItem *LinesManager::PARCOURS2(int fromX, int fromY, int destX, int destY) {
|
||||
deltaArr[DIR_UP] = tmpDelta;
|
||||
|
||||
tmpDelta = 0;
|
||||
for (int tmpX = clipDestX; tmpX < _vm->_graphicsManager._maxX; tmpX++) {
|
||||
for (int tmpX = clipDestX; tmpX < _vm->_graphicsManager->_maxX; tmpX++) {
|
||||
if (checkCollisionLine(tmpX, clipDestY, &collLineDataIdxArr[DIR_RIGHT], &collLineIdxArr[DIR_RIGHT], 0, _lastLine) && collLineIdxArr[DIR_RIGHT] <= _lastLine)
|
||||
break;
|
||||
collLineDataIdxArr[DIR_RIGHT] = 0;
|
||||
@ -1157,7 +1157,7 @@ RouteItem *LinesManager::PARCOURS2(int fromX, int fromY, int destX, int destY) {
|
||||
deltaArr[DIR_RIGHT] = tmpDelta;
|
||||
|
||||
tmpDelta = 0;
|
||||
for (int tmpX = clipDestX; tmpX > _vm->_graphicsManager._minX; tmpX--) {
|
||||
for (int tmpX = clipDestX; tmpX > _vm->_graphicsManager->_minX; tmpX--) {
|
||||
if (checkCollisionLine(tmpX, clipDestY, &collLineDataIdxArr[DIR_LEFT], &collLineIdxArr[DIR_LEFT], 0, _lastLine) && collLineIdxArr[DIR_LEFT] <= _lastLine)
|
||||
break;
|
||||
collLineDataIdxArr[DIR_LEFT] = 0;
|
||||
@ -1213,7 +1213,7 @@ RouteItem *LinesManager::PARCOURS2(int fromX, int fromY, int destX, int destY) {
|
||||
}
|
||||
|
||||
tmpDelta = 0;
|
||||
for (int tmpY = fromY; tmpY < _vm->_graphicsManager._maxY; tmpY++, tmpDelta++) {
|
||||
for (int tmpY = fromY; tmpY < _vm->_graphicsManager->_maxY; tmpY++, tmpDelta++) {
|
||||
if (checkCollisionLine(fromX, tmpY, &collLineDataIdxArr[DIR_DOWN], &collLineIdxArr[DIR_DOWN], 0, _lastLine) && collLineIdxArr[DIR_DOWN] <= _lastLine)
|
||||
break;
|
||||
collLineDataIdxArr[DIR_DOWN] = 0;
|
||||
@ -1222,7 +1222,7 @@ RouteItem *LinesManager::PARCOURS2(int fromX, int fromY, int destX, int destY) {
|
||||
deltaArr[DIR_DOWN] = tmpDelta + 1;
|
||||
|
||||
tmpDelta = 0;
|
||||
for (int tmpY = fromY; tmpY > _vm->_graphicsManager._minY; tmpY--) {
|
||||
for (int tmpY = fromY; tmpY > _vm->_graphicsManager->_minY; tmpY--) {
|
||||
if (checkCollisionLine(fromX, tmpY, &collLineDataIdxArr[DIR_UP], &collLineIdxArr[DIR_UP], 0, _lastLine) && collLineIdxArr[DIR_UP] <= _lastLine)
|
||||
break;
|
||||
collLineDataIdxArr[DIR_UP] = 0;
|
||||
@ -1234,7 +1234,7 @@ RouteItem *LinesManager::PARCOURS2(int fromX, int fromY, int destX, int destY) {
|
||||
deltaArr[DIR_UP] = tmpDelta + 1;
|
||||
|
||||
tmpDelta = 0;
|
||||
for (int tmpX = fromX; tmpX < _vm->_graphicsManager._maxX; tmpX++) {
|
||||
for (int tmpX = fromX; tmpX < _vm->_graphicsManager->_maxX; tmpX++) {
|
||||
if (checkCollisionLine(tmpX, fromY, &collLineDataIdxArr[DIR_RIGHT], &collLineIdxArr[DIR_RIGHT], 0, _lastLine) && collLineIdxArr[DIR_RIGHT] <= _lastLine)
|
||||
break;
|
||||
collLineDataIdxArr[DIR_RIGHT] = 0;
|
||||
@ -1246,7 +1246,7 @@ RouteItem *LinesManager::PARCOURS2(int fromX, int fromY, int destX, int destY) {
|
||||
deltaArr[DIR_RIGHT] = tmpDelta + 1;
|
||||
|
||||
tmpDelta = 0;
|
||||
for (int tmpX = fromX; tmpX > _vm->_graphicsManager._minX; tmpX--) {
|
||||
for (int tmpX = fromX; tmpX > _vm->_graphicsManager->_minX; tmpX--) {
|
||||
if (checkCollisionLine(tmpX, fromY, &collLineDataIdxArr[DIR_LEFT], &collLineIdxArr[DIR_LEFT], 0, _lastLine) && collLineIdxArr[DIR_LEFT] <= _lastLine)
|
||||
break;
|
||||
collLineDataIdxArr[DIR_LEFT] = 0;
|
||||
@ -1985,13 +1985,13 @@ RouteItem *LinesManager::cityMapCarRoute(int x1, int y1, int x2, int y2) {
|
||||
clipX2 = 15;
|
||||
if (y2 <= 14)
|
||||
clipY2 = 15;
|
||||
if (clipX2 > _vm->_graphicsManager._maxX - 10)
|
||||
clipX2 = _vm->_graphicsManager._maxX - 10;
|
||||
if (clipX2 > _vm->_graphicsManager->_maxX - 10)
|
||||
clipX2 = _vm->_graphicsManager->_maxX - 10;
|
||||
if (clipY2 > 445)
|
||||
clipY2 = 440;
|
||||
|
||||
int delta = 0;
|
||||
for (delta = 0; clipY2 + delta < _vm->_graphicsManager._maxY; delta++) {
|
||||
for (delta = 0; clipY2 + delta < _vm->_graphicsManager->_maxY; delta++) {
|
||||
if (checkCollisionLine(clipX2, clipY2 + delta, &arrDataIdx[DIR_DOWN], &arrLineIdx[DIR_DOWN], 0, _lastLine) && arrLineIdx[DIR_DOWN] <= _lastLine)
|
||||
break;
|
||||
arrDataIdx[DIR_DOWN] = 0;
|
||||
@ -1999,7 +1999,7 @@ RouteItem *LinesManager::cityMapCarRoute(int x1, int y1, int x2, int y2) {
|
||||
}
|
||||
arrDelta[DIR_DOWN] = delta;
|
||||
|
||||
for (delta = 0; clipY2 - delta > _vm->_graphicsManager._minY; delta++) {
|
||||
for (delta = 0; clipY2 - delta > _vm->_graphicsManager->_minY; delta++) {
|
||||
if (checkCollisionLine(clipX2, clipY2 - delta , &arrDataIdx[DIR_UP], &arrLineIdx[DIR_UP], 0, _lastLine) && arrLineIdx[DIR_UP] <= _lastLine)
|
||||
break;
|
||||
arrDataIdx[DIR_UP] = 0;
|
||||
@ -2009,7 +2009,7 @@ RouteItem *LinesManager::cityMapCarRoute(int x1, int y1, int x2, int y2) {
|
||||
}
|
||||
arrDelta[DIR_UP] = delta;
|
||||
|
||||
for (delta = 0; clipX2 + delta < _vm->_graphicsManager._maxX; delta++) {
|
||||
for (delta = 0; clipX2 + delta < _vm->_graphicsManager->_maxX; delta++) {
|
||||
if (checkCollisionLine(clipX2 + delta, clipY2, &arrDataIdx[DIR_UP], &arrLineIdx[DIR_UP], 0, _lastLine) && arrLineIdx[DIR_UP] <= _lastLine)
|
||||
break;
|
||||
arrDataIdx[DIR_UP] = 0;
|
||||
@ -2019,7 +2019,7 @@ RouteItem *LinesManager::cityMapCarRoute(int x1, int y1, int x2, int y2) {
|
||||
}
|
||||
arrDelta[DIR_UP] = delta;
|
||||
|
||||
for (delta = 0; clipX2 - delta > _vm->_graphicsManager._minX; delta++) {
|
||||
for (delta = 0; clipX2 - delta > _vm->_graphicsManager->_minX; delta++) {
|
||||
if (checkCollisionLine(clipX2 - delta, clipY2, &arrDataIdx[DIR_LEFT], &arrLineIdx[DIR_LEFT], 0, _lastLine) && arrLineIdx[DIR_LEFT] <= _lastLine)
|
||||
break;
|
||||
arrDataIdx[DIR_LEFT] = 0;
|
||||
@ -2200,11 +2200,11 @@ bool LinesManager::makeSmoothMove(int fromX, int fromY, int destX, int destY) {
|
||||
int realSpeedY = _vm->_globals->_hopkinsItem[hopkinsIdx]._speedY;
|
||||
int spriteSize = _vm->_globals->_spriteSize[curY];
|
||||
if (spriteSize < 0) {
|
||||
realSpeedX = _vm->_graphicsManager.zoomOut(realSpeedX, -spriteSize);
|
||||
realSpeedY = _vm->_graphicsManager.zoomOut(realSpeedY, -spriteSize);
|
||||
realSpeedX = _vm->_graphicsManager->zoomOut(realSpeedX, -spriteSize);
|
||||
realSpeedY = _vm->_graphicsManager->zoomOut(realSpeedY, -spriteSize);
|
||||
} else if (spriteSize > 0) {
|
||||
realSpeedX = _vm->_graphicsManager.zoomIn(realSpeedX, spriteSize);
|
||||
realSpeedY = _vm->_graphicsManager.zoomIn(realSpeedY, spriteSize);
|
||||
realSpeedX = _vm->_graphicsManager->zoomIn(realSpeedX, spriteSize);
|
||||
realSpeedY = _vm->_graphicsManager->zoomIn(realSpeedY, spriteSize);
|
||||
}
|
||||
for (int i = 0; i < realSpeedX; i++) {
|
||||
--curX;
|
||||
@ -2234,11 +2234,11 @@ bool LinesManager::makeSmoothMove(int fromX, int fromY, int destX, int destY) {
|
||||
int realSpeedY = _vm->_globals->_hopkinsItem[hopkinsIdx]._speedY;
|
||||
int spriteSize = _vm->_globals->_spriteSize[curY];
|
||||
if (spriteSize < 0) {
|
||||
realSpeedX = _vm->_graphicsManager.zoomOut(realSpeedX, -spriteSize);
|
||||
realSpeedY = _vm->_graphicsManager.zoomOut(realSpeedY, -spriteSize);
|
||||
realSpeedX = _vm->_graphicsManager->zoomOut(realSpeedX, -spriteSize);
|
||||
realSpeedY = _vm->_graphicsManager->zoomOut(realSpeedY, -spriteSize);
|
||||
} else if (spriteSize > 0) {
|
||||
realSpeedX = _vm->_graphicsManager.zoomIn(realSpeedX, spriteSize);
|
||||
realSpeedY = _vm->_graphicsManager.zoomIn(realSpeedY, spriteSize);
|
||||
realSpeedX = _vm->_graphicsManager->zoomIn(realSpeedX, spriteSize);
|
||||
realSpeedY = _vm->_graphicsManager->zoomIn(realSpeedY, spriteSize);
|
||||
}
|
||||
for (int i = 0; i < realSpeedX; i++) {
|
||||
++curX;
|
||||
@ -2264,8 +2264,8 @@ bool LinesManager::makeSmoothMove(int fromX, int fromY, int destX, int destY) {
|
||||
int smoothIdx = 0;
|
||||
int stepCount = 0;
|
||||
while (curX > destX && destY < curY) {
|
||||
int realSpeedX = _vm->_graphicsManager.zoomOut(_vm->_globals->_hopkinsItem[hopkinsIdx]._speedX, 25);
|
||||
int realSpeedY = _vm->_graphicsManager.zoomOut(_vm->_globals->_hopkinsItem[hopkinsIdx]._speedY, 25);
|
||||
int realSpeedX = _vm->_graphicsManager->zoomOut(_vm->_globals->_hopkinsItem[hopkinsIdx]._speedX, 25);
|
||||
int realSpeedY = _vm->_graphicsManager->zoomOut(_vm->_globals->_hopkinsItem[hopkinsIdx]._speedY, 25);
|
||||
int oldY = curY;
|
||||
for (int i = 0; i < realSpeedX; i++) {
|
||||
--curX;
|
||||
@ -2292,8 +2292,8 @@ bool LinesManager::makeSmoothMove(int fromX, int fromY, int destX, int destY) {
|
||||
int stepCount = 0;
|
||||
while (curX < destX && destY < curY) {
|
||||
int oldY = curY;
|
||||
int realSpeedX = _vm->_graphicsManager.zoomOut(_vm->_globals->_hopkinsItem[hopkinsIdx]._speedX, 25);
|
||||
int realSpeedY = _vm->_graphicsManager.zoomOut(_vm->_globals->_hopkinsItem[hopkinsIdx]._speedY, 25);
|
||||
int realSpeedX = _vm->_graphicsManager->zoomOut(_vm->_globals->_hopkinsItem[hopkinsIdx]._speedX, 25);
|
||||
int realSpeedY = _vm->_graphicsManager->zoomOut(_vm->_globals->_hopkinsItem[hopkinsIdx]._speedY, 25);
|
||||
for (int i = 0; i < realSpeedX; i++) {
|
||||
++curX;
|
||||
_smoothRoute[smoothIdx]._posX = curX;
|
||||
@ -2473,9 +2473,9 @@ int LinesManager::CALC_PROPRE(int idx) {
|
||||
|
||||
int retVal = 25;
|
||||
if (size < 0)
|
||||
retVal = _vm->_graphicsManager.zoomOut(25, -size);
|
||||
retVal = _vm->_graphicsManager->zoomOut(25, -size);
|
||||
else if (size > 0)
|
||||
retVal = _vm->_graphicsManager.zoomIn(25, size);
|
||||
retVal = _vm->_graphicsManager->zoomIn(25, size);
|
||||
|
||||
return retVal;
|
||||
}
|
||||
@ -2578,7 +2578,7 @@ int LinesManager::getMouseZone() {
|
||||
return -1;
|
||||
|
||||
int colRes2 = 0;
|
||||
for (int j = yp; j < _vm->_graphicsManager._maxY; ++j) {
|
||||
for (int j = yp; j < _vm->_graphicsManager->_maxY; ++j) {
|
||||
colRes2 = checkCollision(xp, j);
|
||||
if (colRes2 != -1 && ZONEP[colRes1]._enabledFl)
|
||||
break;
|
||||
@ -2597,7 +2597,7 @@ int LinesManager::getMouseZone() {
|
||||
return -1;
|
||||
|
||||
int colRes4 = 0;
|
||||
for (int xCurrent = xp; _vm->_graphicsManager._maxX > xCurrent; ++xCurrent) {
|
||||
for (int xCurrent = xp; _vm->_graphicsManager->_maxX > xCurrent; ++xCurrent) {
|
||||
colRes4 = checkCollision(xCurrent, yp);
|
||||
if (colRes4 != -1 && ZONEP[colRes1]._enabledFl)
|
||||
break;
|
||||
@ -2817,7 +2817,7 @@ void LinesManager::checkZone() {
|
||||
int oldMouseY = mouseY;
|
||||
if (_vm->_globals->_cityMapEnabledFl
|
||||
|| _vm->_eventsManager->_startPos.x >= mouseX
|
||||
|| (mouseY = _vm->_graphicsManager._scrollOffset + 54, mouseX >= mouseY)
|
||||
|| (mouseY = _vm->_graphicsManager->_scrollOffset + 54, mouseX >= mouseY)
|
||||
|| (mouseY = oldMouseY - 1, mouseY < 0 || mouseY > 59)) {
|
||||
if (_vm->_objectsManager._visibleFl)
|
||||
_vm->_objectsManager._eraseVisibleCounter = 4;
|
||||
@ -2846,7 +2846,7 @@ void LinesManager::checkZone() {
|
||||
zoneId = _vm->_globals->_oldMouseZoneId;
|
||||
}
|
||||
if (_vm->_globals->_oldMouseZoneId != zoneId) {
|
||||
_vm->_graphicsManager.SETCOLOR4(251, 100, 100, 100);
|
||||
_vm->_graphicsManager->SETCOLOR4(251, 100, 100, 100);
|
||||
_vm->_eventsManager->_mouseCursorId = 4;
|
||||
_vm->_eventsManager->changeMouseCursor(4);
|
||||
if (_vm->_globals->_forceHideText) {
|
||||
@ -2869,7 +2869,7 @@ void LinesManager::checkZone() {
|
||||
_vm->_globals->_hotspotTextColor += 25;
|
||||
if (_vm->_globals->_hotspotTextColor > 100)
|
||||
_vm->_globals->_hotspotTextColor = 0;
|
||||
_vm->_graphicsManager.SETCOLOR4(251, _vm->_globals->_hotspotTextColor, _vm->_globals->_hotspotTextColor,
|
||||
_vm->_graphicsManager->SETCOLOR4(251, _vm->_globals->_hotspotTextColor, _vm->_globals->_hotspotTextColor,
|
||||
_vm->_globals->_hotspotTextColor);
|
||||
if (_vm->_eventsManager->_mouseCursorId == 4) {
|
||||
if (ZONEP[zoneId]._verbFl1 == 2) {
|
||||
@ -2879,7 +2879,7 @@ void LinesManager::checkZone() {
|
||||
}
|
||||
}
|
||||
} else {
|
||||
_vm->_graphicsManager.SETCOLOR4(251, 100, 100, 100);
|
||||
_vm->_graphicsManager->SETCOLOR4(251, 100, 100, 100);
|
||||
_vm->_eventsManager->_mouseCursorId = 4;
|
||||
_vm->_eventsManager->changeMouseCursor(4);
|
||||
}
|
||||
|
@ -68,15 +68,15 @@ int MenuManager::menu() {
|
||||
memset(frameIndex, 0, sizeof(int) * ARRAYSIZE(frameIndex));
|
||||
|
||||
if (_vm->getPlatform() == Common::kPlatformOS2 || _vm->getPlatform() == Common::kPlatformBeOS)
|
||||
_vm->_graphicsManager.loadImage("MENU");
|
||||
_vm->_graphicsManager->loadImage("MENU");
|
||||
else if (_vm->_globals->_language == LANG_EN)
|
||||
_vm->_graphicsManager.loadImage("MENUAN");
|
||||
_vm->_graphicsManager->loadImage("MENUAN");
|
||||
else if (_vm->_globals->_language == LANG_FR)
|
||||
_vm->_graphicsManager.loadImage("MENUFR");
|
||||
_vm->_graphicsManager->loadImage("MENUFR");
|
||||
else if (_vm->_globals->_language == LANG_SP)
|
||||
_vm->_graphicsManager.loadImage("MENUES");
|
||||
_vm->_graphicsManager->loadImage("MENUES");
|
||||
|
||||
_vm->_graphicsManager.fadeInLong();
|
||||
_vm->_graphicsManager->fadeInLong();
|
||||
|
||||
if (_vm->getPlatform() == Common::kPlatformOS2 || _vm->getPlatform() == Common::kPlatformBeOS)
|
||||
spriteData = _vm->_objectsManager.loadSprite("MENU.SPR");
|
||||
@ -120,11 +120,11 @@ int MenuManager::menu() {
|
||||
if (menuIndex > MENU_NONE)
|
||||
frameIndex[menuIndex - 1] = 1;
|
||||
|
||||
_vm->_graphicsManager.fastDisplay(spriteData, 230, 259, frameIndex[0]);
|
||||
_vm->_graphicsManager.fastDisplay(spriteData, 230, 291, frameIndex[1] + 2);
|
||||
_vm->_graphicsManager.fastDisplay(spriteData, 230, 322, frameIndex[2] + 4);
|
||||
_vm->_graphicsManager.fastDisplay(spriteData, 230, 354, frameIndex[3] + 6);
|
||||
_vm->_graphicsManager.fastDisplay(spriteData, 230, 386, frameIndex[4] + 8);
|
||||
_vm->_graphicsManager->fastDisplay(spriteData, 230, 259, frameIndex[0]);
|
||||
_vm->_graphicsManager->fastDisplay(spriteData, 230, 291, frameIndex[1] + 2);
|
||||
_vm->_graphicsManager->fastDisplay(spriteData, 230, 322, frameIndex[2] + 4);
|
||||
_vm->_graphicsManager->fastDisplay(spriteData, 230, 354, frameIndex[3] + 6);
|
||||
_vm->_graphicsManager->fastDisplay(spriteData, 230, 386, frameIndex[4] + 8);
|
||||
_vm->_eventsManager->refreshScreenAndEvents();
|
||||
|
||||
if (_vm->_eventsManager->getMouseButton() == 1 && menuIndex != MENU_NONE)
|
||||
@ -132,7 +132,7 @@ int MenuManager::menu() {
|
||||
} while (!selectionMade);
|
||||
|
||||
if (menuIndex > MENU_NONE) {
|
||||
_vm->_graphicsManager.fastDisplay(spriteData, 230, 259 + 32 * (menuIndex - 1), 10 + (menuIndex - 1));
|
||||
_vm->_graphicsManager->fastDisplay(spriteData, 230, 259 + 32 * (menuIndex - 1), 10 + (menuIndex - 1));
|
||||
_vm->_eventsManager->refreshScreenAndEvents();
|
||||
_vm->_eventsManager->delay(200);
|
||||
}
|
||||
@ -161,7 +161,7 @@ int MenuManager::menu() {
|
||||
|
||||
_vm->_globals->freeMemory(spriteData);
|
||||
_vm->_globals->_disableInventFl = false;
|
||||
_vm->_graphicsManager.fadeOutLong();
|
||||
_vm->_graphicsManager->fadeOutLong();
|
||||
return result;
|
||||
}
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -228,13 +228,13 @@ bool SaveLoadManager::readSavegameHeader(int slot, hopkinsSavegameHeader &header
|
||||
#define REDUCE_AMOUNT 80
|
||||
|
||||
void SaveLoadManager::createThumbnail(Graphics::Surface *s) {
|
||||
int w = _vm->_graphicsManager.zoomOut(SCREEN_WIDTH, REDUCE_AMOUNT);
|
||||
int h = _vm->_graphicsManager.zoomOut(SCREEN_HEIGHT - 40, REDUCE_AMOUNT);
|
||||
int w = _vm->_graphicsManager->zoomOut(SCREEN_WIDTH, REDUCE_AMOUNT);
|
||||
int h = _vm->_graphicsManager->zoomOut(SCREEN_HEIGHT - 40, REDUCE_AMOUNT);
|
||||
|
||||
Graphics::Surface thumb8;
|
||||
thumb8.create(w, h, Graphics::PixelFormat::createFormatCLUT8());
|
||||
|
||||
_vm->_graphicsManager.reduceScreenPart(_vm->_graphicsManager._vesaBuffer, (byte *)thumb8.pixels,
|
||||
_vm->_graphicsManager->reduceScreenPart(_vm->_graphicsManager->_vesaBuffer, (byte *)thumb8.pixels,
|
||||
_vm->_eventsManager->_startPos.x, 20, SCREEN_WIDTH, SCREEN_HEIGHT - 40, 80);
|
||||
|
||||
// Convert the 8-bit pixel to 16 bit surface
|
||||
@ -249,7 +249,7 @@ void SaveLoadManager::createThumbnail(Graphics::Surface *s) {
|
||||
uint16 *lineDestP = destP;
|
||||
|
||||
for (int xp = 0; xp < w; ++xp)
|
||||
*lineDestP++ = *(uint16 *)&_vm->_graphicsManager.PAL_PIXELS[*lineSrcP++ * 2];
|
||||
*lineDestP++ = *(uint16 *)&_vm->_graphicsManager->PAL_PIXELS[*lineSrcP++ * 2];
|
||||
|
||||
// Move to the start of the next line
|
||||
srcP += w;
|
||||
@ -292,7 +292,7 @@ void SaveLoadManager::convertThumb16To8(Graphics::Surface *thumb16, Graphics::Su
|
||||
byte paletteG[PALETTE_SIZE];
|
||||
byte paletteB[PALETTE_SIZE];
|
||||
for (int palIndex = 0; palIndex < PALETTE_SIZE; ++palIndex) {
|
||||
uint16 p = READ_LE_UINT16(&_vm->_graphicsManager.PAL_PIXELS[palIndex * 2]);
|
||||
uint16 p = READ_LE_UINT16(&_vm->_graphicsManager->PAL_PIXELS[palIndex * 2]);
|
||||
pixelFormat16.colorToRGB(p, paletteR[palIndex], paletteG[palIndex], paletteB[palIndex]);
|
||||
}
|
||||
|
||||
|
@ -183,7 +183,7 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
int vbobPosX = READ_LE_INT16(dataP + 8);
|
||||
int vbobPosY = READ_LE_INT16(dataP + 10);
|
||||
if (vbobIdx == 52) {
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, vbobPosX, READ_LE_INT16(dataP + 10), vbobFrameIndex);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, vbobPosX, READ_LE_INT16(dataP + 10), vbobFrameIndex);
|
||||
} else if (vbobIdx == 51) {
|
||||
_vm->_objectsManager.BOB_VIVANT(vbobFrameIndex);
|
||||
} else if (vbobIdx != 50) {
|
||||
@ -546,25 +546,25 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
case 13:
|
||||
_vm->_eventsManager->_mouseButton = _vm->_eventsManager->_curMouseButton;
|
||||
_vm->_globals->_disableInventFl = true;
|
||||
_vm->_graphicsManager.fadeOutLong();
|
||||
_vm->_graphicsManager->fadeOutLong();
|
||||
_vm->_globals->disableHiding();
|
||||
_vm->_objectsManager.removeSprite(0);
|
||||
_vm->_fontManager->hideText(5);
|
||||
_vm->_fontManager->hideText(9);
|
||||
_vm->_graphicsManager.endDisplayBob();
|
||||
_vm->_graphicsManager->endDisplayBob();
|
||||
_vm->_objectsManager.clearScreen();
|
||||
|
||||
if ((_vm->getPlatform() == Common::kPlatformWindows) && _vm->getIsDemo()) {
|
||||
_vm->_graphicsManager.fadeOutLong();
|
||||
_vm->_graphicsManager->fadeOutLong();
|
||||
} else {
|
||||
_vm->_soundManager.playSoundFile("SOUND17.WAV");
|
||||
_vm->_graphicsManager.FADE_LINUX = 2;
|
||||
_vm->_graphicsManager->FADE_LINUX = 2;
|
||||
_vm->_animationManager->playSequence2("HELICO.SEQ", 10, 4, 10);
|
||||
}
|
||||
|
||||
_vm->_animationManager->loadAnim("otage");
|
||||
_vm->_graphicsManager.loadImage("IM05");
|
||||
_vm->_graphicsManager.displayAllBob();
|
||||
_vm->_graphicsManager->loadImage("IM05");
|
||||
_vm->_graphicsManager->displayAllBob();
|
||||
|
||||
for (int i = 0; i <= 4; i++) {
|
||||
if (_vm->shouldQuit())
|
||||
@ -574,27 +574,27 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
}
|
||||
|
||||
_vm->_eventsManager->mouseOff();
|
||||
_vm->_graphicsManager.fadeInDefaultLength(_vm->_graphicsManager._vesaBuffer);
|
||||
_vm->_graphicsManager->fadeInDefaultLength(_vm->_graphicsManager->_vesaBuffer);
|
||||
do {
|
||||
if (_vm->shouldQuit())
|
||||
return -1; // Exiting game
|
||||
|
||||
_vm->_eventsManager->refreshScreenAndEvents();
|
||||
} while (_vm->_objectsManager.getBobAnimDataIdx(3) != 100);
|
||||
_vm->_graphicsManager.fadeOutDefaultLength(_vm->_graphicsManager._vesaBuffer);
|
||||
_vm->_graphicsManager.endDisplayBob();
|
||||
_vm->_graphicsManager->fadeOutDefaultLength(_vm->_graphicsManager->_vesaBuffer);
|
||||
_vm->_graphicsManager->endDisplayBob();
|
||||
|
||||
// If uncensored, rip the throat of the hostage
|
||||
if (!_vm->_globals->_censorshipFl) {
|
||||
_vm->_soundManager._specialSoundNum = 16;
|
||||
_vm->_graphicsManager.FADE_LINUX = 2;
|
||||
_vm->_graphicsManager->FADE_LINUX = 2;
|
||||
_vm->_animationManager->playAnim("EGORGE.ANM", 50, 28, 500);
|
||||
_vm->_soundManager._specialSoundNum = 0;
|
||||
}
|
||||
_vm->_animationManager->loadAnim("ASCEN");
|
||||
_vm->_eventsManager->mouseOff();
|
||||
_vm->_graphicsManager.loadImage("ASCEN");
|
||||
_vm->_graphicsManager.displayAllBob();
|
||||
_vm->_graphicsManager->loadImage("ASCEN");
|
||||
_vm->_graphicsManager->displayAllBob();
|
||||
|
||||
for (int i = 0; i <= 4; i++) {
|
||||
if (_vm->shouldQuit())
|
||||
@ -604,21 +604,21 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
}
|
||||
|
||||
_vm->_eventsManager->mouseOff();
|
||||
_vm->_graphicsManager.fadeInDefaultLength(_vm->_graphicsManager._vesaBuffer);
|
||||
_vm->_graphicsManager->fadeInDefaultLength(_vm->_graphicsManager->_vesaBuffer);
|
||||
_vm->_objectsManager.SCI_OPTI_ONE(1, 0, 17, 3);
|
||||
_vm->_graphicsManager.fadeOutDefaultLength(_vm->_graphicsManager._vesaBuffer);
|
||||
_vm->_graphicsManager.endDisplayBob();
|
||||
_vm->_graphicsManager->fadeOutDefaultLength(_vm->_graphicsManager->_vesaBuffer);
|
||||
_vm->_graphicsManager->endDisplayBob();
|
||||
|
||||
if ((_vm->getPlatform() == Common::kPlatformWindows) && _vm->getIsDemo())
|
||||
_vm->_soundManager.playSoundFile("SOUND17.WAV");
|
||||
|
||||
_vm->_soundManager._specialSoundNum = 14;
|
||||
_vm->_graphicsManager.FADE_LINUX = 2;
|
||||
_vm->_graphicsManager->FADE_LINUX = 2;
|
||||
_vm->_animationManager->playSequence2("ASSOM.SEQ", 10, 4, 500);
|
||||
_vm->_soundManager._specialSoundNum = 0;
|
||||
|
||||
if ((_vm->getPlatform() == Common::kPlatformWindows) && _vm->getIsDemo())
|
||||
_vm->_graphicsManager.fadeOutLong();
|
||||
_vm->_graphicsManager->fadeOutLong();
|
||||
|
||||
_vm->_globals->_disableInventFl = false;
|
||||
_vm->_objectsManager._helicopterFl = true;
|
||||
@ -707,9 +707,9 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
break;
|
||||
|
||||
case 37:
|
||||
_vm->_graphicsManager.FADE_LINUX = 2;
|
||||
_vm->_graphicsManager->FADE_LINUX = 2;
|
||||
_vm->_animationManager->playSequence2("corde.SEQ", 32, 32, 100);
|
||||
_vm->_graphicsManager._noFadingFl = true;
|
||||
_vm->_graphicsManager->_noFadingFl = true;
|
||||
break;
|
||||
|
||||
case 38:
|
||||
@ -719,12 +719,12 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
_vm->_soundManager._specialSoundNum = 17;
|
||||
_vm->_animationManager->playSequence("grenade.SEQ", 1, 32, 100);
|
||||
_vm->_soundManager._specialSoundNum = 0;
|
||||
_vm->_graphicsManager.FADE_LINUX = 2;
|
||||
_vm->_graphicsManager->FADE_LINUX = 2;
|
||||
_vm->_animationManager->playAnim("CREVE17.ANM", 24, 24, 200);
|
||||
_vm->_soundManager.removeSample(1);
|
||||
_vm->_soundManager.removeSample(2);
|
||||
_vm->_soundManager.removeSample(3);
|
||||
_vm->_graphicsManager._noFadingFl = true;
|
||||
_vm->_graphicsManager->_noFadingFl = true;
|
||||
break;
|
||||
|
||||
case 40:
|
||||
@ -802,14 +802,14 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
playFl = false;
|
||||
break;
|
||||
case 12:
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 513, 249, 1);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 513, 249, 1);
|
||||
break;
|
||||
case 23:
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 513, 249, 2);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 513, 249, 2);
|
||||
playFl = false;
|
||||
break;
|
||||
case 34:
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 513, 249, 3);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 513, 249, 3);
|
||||
playFl = false;
|
||||
break;
|
||||
}
|
||||
@ -892,17 +892,17 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
break;
|
||||
|
||||
case 51: {
|
||||
_vm->_graphicsManager.fadeOutLong();
|
||||
_vm->_graphicsManager->fadeOutLong();
|
||||
_vm->_globals->disableHiding();
|
||||
_vm->_objectsManager.removeSprite(0);
|
||||
_vm->_fontManager->hideText(5);
|
||||
_vm->_fontManager->hideText(9);
|
||||
_vm->_graphicsManager.endDisplayBob();
|
||||
_vm->_graphicsManager.loadImage("IM20f");
|
||||
_vm->_graphicsManager->endDisplayBob();
|
||||
_vm->_graphicsManager->loadImage("IM20f");
|
||||
_vm->_animationManager->loadAnim("ANIM20f");
|
||||
_vm->_graphicsManager.displayAllBob();
|
||||
_vm->_graphicsManager->displayAllBob();
|
||||
_vm->_eventsManager->mouseOff();
|
||||
_vm->_graphicsManager.fadeInLong();
|
||||
_vm->_graphicsManager->fadeInLong();
|
||||
_vm->_soundManager.loadWav("SOUND46.WAV", 1);
|
||||
bool playFl = false;
|
||||
for (;;) {
|
||||
@ -918,8 +918,8 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
break;
|
||||
}
|
||||
_vm->_objectsManager.stopBobAnimation(2);
|
||||
_vm->_graphicsManager.fadeOutLong();
|
||||
_vm->_graphicsManager._noFadingFl = true;
|
||||
_vm->_graphicsManager->fadeOutLong();
|
||||
_vm->_graphicsManager->_noFadingFl = true;
|
||||
_vm->_globals->_exitId = 20;
|
||||
break;
|
||||
}
|
||||
@ -1149,7 +1149,7 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
if (_vm->_objectsManager.getBobAnimDataIdx(8) == 32)
|
||||
break;
|
||||
}
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 201, 14, 1);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 201, 14, 1);
|
||||
_vm->_objectsManager.animateSprite(0);
|
||||
_vm->_objectsManager.stopBobAnimation(11);
|
||||
_vm->_objectsManager.stopBobAnimation(8);
|
||||
@ -1250,7 +1250,7 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
}
|
||||
_vm->_objectsManager.stopBobAnimation(1);
|
||||
_vm->_objectsManager.stopBobAnimation(2);
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 283, 160, 6);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 283, 160, 6);
|
||||
_vm->_soundManager.removeSample(1);
|
||||
}
|
||||
if (_vm->_globals->_saveData->_data[svField183] == 2) {
|
||||
@ -1287,7 +1287,7 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
}
|
||||
_vm->_objectsManager.stopBobAnimation(1);
|
||||
_vm->_objectsManager.stopBobAnimation(3);
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 283, 161, 8);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 283, 161, 8);
|
||||
_vm->_soundManager.removeSample(1);
|
||||
}
|
||||
break;
|
||||
@ -1296,12 +1296,12 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
_vm->_soundManager.playSoundFile("SOUND52.WAV");
|
||||
if (!_vm->_globals->_saveData->_data[svField186]) {
|
||||
_vm->_animationManager->playSequence("CIB5A.SEQ", 1, 12, 1);
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 155, 29, 0);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 155, 29, 0);
|
||||
}
|
||||
if (_vm->_globals->_saveData->_data[svField186] == 1) {
|
||||
_vm->_animationManager->playSequence("CIB5C.SEQ", 1, 12, 1);
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 155, 29, 0);
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 329, 87, 2);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 155, 29, 0);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 329, 87, 2);
|
||||
}
|
||||
break;
|
||||
|
||||
@ -1309,12 +1309,12 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
_vm->_soundManager.playSoundFile("SOUND52.WAV");
|
||||
if (!_vm->_globals->_saveData->_data[svField186]) {
|
||||
_vm->_animationManager->playSequence("CIB5B.SEQ", 1, 12, 1);
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 155, 29, 5);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 155, 29, 5);
|
||||
}
|
||||
if (_vm->_globals->_saveData->_data[svField186] == 1) {
|
||||
_vm->_animationManager->playSequence("CIB5D.SEQ", 1, 12, 1);
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 155, 29, 5);
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 283, 160, 6);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 155, 29, 5);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 283, 160, 6);
|
||||
}
|
||||
break;
|
||||
|
||||
@ -1322,12 +1322,12 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
_vm->_soundManager.playSoundFile("SOUND52.WAV");
|
||||
if (!_vm->_globals->_saveData->_data[svField184]) {
|
||||
_vm->_animationManager->playSequence("CIB6A.SEQ", 1, 12, 1);
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 155, 29, 0);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 155, 29, 0);
|
||||
}
|
||||
if (_vm->_globals->_saveData->_data[svField184] == 1) {
|
||||
_vm->_animationManager->playSequence("CIB6C.SEQ", 1, 12, 1);
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 155, 29, 0);
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 293, 139, 3);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 155, 29, 0);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 293, 139, 3);
|
||||
}
|
||||
break;
|
||||
|
||||
@ -1335,12 +1335,12 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
_vm->_soundManager.playSoundFile("SOUND52.WAV");
|
||||
if (!_vm->_globals->_saveData->_data[svField184]) {
|
||||
_vm->_animationManager->playSequence("CIB6B.SEQ", 1, 12, 1);
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 155, 29, 5);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 155, 29, 5);
|
||||
}
|
||||
if (_vm->_globals->_saveData->_data[svField184] == 1) {
|
||||
_vm->_animationManager->playSequence("CIB6D.SEQ", 1, 12, 1);
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 155, 29, 5);
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 283, 161, 8);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 155, 29, 5);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 283, 161, 8);
|
||||
}
|
||||
break;
|
||||
|
||||
@ -1374,7 +1374,7 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
|
||||
_vm->_eventsManager->refreshScreenAndEvents();
|
||||
} while (_vm->_objectsManager.getBobAnimDataIdx(12) != 117);
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 830, 122, 0);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 830, 122, 0);
|
||||
_vm->_objectsManager.stopBobAnimation(12);
|
||||
_vm->_objectsManager.stopBobAnimation(10);
|
||||
_vm->_objectsManager.setBobAnimation(11);
|
||||
@ -1803,7 +1803,7 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
|
||||
_vm->_eventsManager->refreshScreenAndEvents();
|
||||
if (_vm->_objectsManager.getBobAnimDataIdx(4) == 18)
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 18, 334, 0, false);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 18, 334, 0, false);
|
||||
} while (_vm->_objectsManager.getBobAnimDataIdx(4) != 26);
|
||||
_vm->_objectsManager.stopBobAnimation(4);
|
||||
_vm->_objectsManager.animateSprite(0);
|
||||
@ -1940,7 +1940,7 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
_vm->_soundManager._specialSoundNum = 210;
|
||||
_vm->_animationManager->playSequence2("SECRET1.SEQ", 1, 12, 1);
|
||||
_vm->_soundManager._specialSoundNum = 0;
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 192, 152, 0);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 192, 152, 0);
|
||||
_vm->_objectsManager.setBobAnimation(9);
|
||||
_vm->_objectsManager.OBSSEUL = true;
|
||||
_vm->_objectsManager.loadLinkFile("IM73a");
|
||||
@ -1949,10 +1949,10 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
_vm->_animationManager->NO_SEQ = false;
|
||||
_vm->_globals->setHidingUseCount(0);
|
||||
_vm->_globals->setHidingUseCount(1);
|
||||
_vm->_graphicsManager.SETCOLOR4(252, 100, 100, 100);
|
||||
_vm->_graphicsManager.SETCOLOR4(253, 100, 100, 100);
|
||||
_vm->_graphicsManager.SETCOLOR4(251, 100, 100, 100);
|
||||
_vm->_graphicsManager.SETCOLOR4(254, 0, 0, 0);
|
||||
_vm->_graphicsManager->SETCOLOR4(252, 100, 100, 100);
|
||||
_vm->_graphicsManager->SETCOLOR4(253, 100, 100, 100);
|
||||
_vm->_graphicsManager->SETCOLOR4(251, 100, 100, 100);
|
||||
_vm->_graphicsManager->SETCOLOR4(254, 0, 0, 0);
|
||||
break;
|
||||
|
||||
case 211:
|
||||
@ -1963,8 +1963,8 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
_vm->_animationManager->playSequence("SECRET2.SEQ", 1, 12, 100);
|
||||
_vm->_soundManager._specialSoundNum = 0;
|
||||
_vm->_animationManager->NO_SEQ = false;
|
||||
_vm->_graphicsManager._noFadingFl = true;
|
||||
_vm->_graphicsManager.fadeOutLong();
|
||||
_vm->_graphicsManager->_noFadingFl = true;
|
||||
_vm->_graphicsManager->fadeOutLong();
|
||||
|
||||
for (int i = 1; i <= 39; i++) {
|
||||
if (_vm->shouldQuit())
|
||||
@ -1973,10 +1973,10 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
_vm->_eventsManager->refreshScreenAndEvents();
|
||||
}
|
||||
|
||||
_vm->_graphicsManager.SETCOLOR4(252, 100, 100, 100);
|
||||
_vm->_graphicsManager.SETCOLOR4(253, 100, 100, 100);
|
||||
_vm->_graphicsManager.SETCOLOR4(251, 100, 100, 100);
|
||||
_vm->_graphicsManager.SETCOLOR4(254, 0, 0, 0);
|
||||
_vm->_graphicsManager->SETCOLOR4(252, 100, 100, 100);
|
||||
_vm->_graphicsManager->SETCOLOR4(253, 100, 100, 100);
|
||||
_vm->_graphicsManager->SETCOLOR4(251, 100, 100, 100);
|
||||
_vm->_graphicsManager->SETCOLOR4(254, 0, 0, 0);
|
||||
break;
|
||||
|
||||
case 215:
|
||||
@ -1995,7 +1995,7 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
_vm->_soundManager._specialSoundNum = 229;
|
||||
_vm->_animationManager->playSequence("MUR.SEQ", 1, 12, 1);
|
||||
_vm->_soundManager._specialSoundNum = 0;
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 340, 157, 2);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 340, 157, 2);
|
||||
break;
|
||||
|
||||
case 230: {
|
||||
@ -2035,7 +2035,7 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
_vm->_objectsManager.setSpriteX(0, 476);
|
||||
_vm->_objectsManager.setSpriteY(0, 278);
|
||||
_vm->_objectsManager.animateSprite(0);
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 337, 154, 3);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 337, 154, 3);
|
||||
_vm->_objectsManager.OBSSEUL = true;
|
||||
_vm->_objectsManager.loadLinkFile("IM93c");
|
||||
_vm->_objectsManager.OBSSEUL = false;
|
||||
@ -2092,9 +2092,9 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
_vm->_globals->_introSpeechOffFl = true;
|
||||
_vm->_talkManager.startAnimatedCharacterDialogue("HRADIO.PE2");
|
||||
_vm->_globals->_introSpeechOffFl = false;
|
||||
_vm->_graphicsManager.fadeOutLong();
|
||||
_vm->_graphicsManager->fadeOutLong();
|
||||
_vm->_objectsManager.stopBobAnimation(13);
|
||||
_vm->_graphicsManager._noFadingFl = true;
|
||||
_vm->_graphicsManager->_noFadingFl = true;
|
||||
_vm->_globals->_exitId = 94;
|
||||
break;
|
||||
}
|
||||
@ -2111,11 +2111,11 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
_vm->_soundManager.playSoundFile("SOUND83.WAV");
|
||||
_vm->_objectsManager.OPTI_ONE(vbobFrameIndex, 26, 50, 0);
|
||||
if (_vm->_globals->_saveData->_data[svField341] == 1)
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 27, 117, 0);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 27, 117, 0);
|
||||
if (_vm->_globals->_saveData->_data[svField341] == 2)
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 145, 166, 2);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 145, 166, 2);
|
||||
if (_vm->_globals->_saveData->_data[svField341] == 3)
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 296, 212, 4);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 296, 212, 4);
|
||||
if (_vm->_globals->_saveData->_data[svField341] == 1)
|
||||
_vm->_globals->_saveData->_data[svField338] = 0;
|
||||
if (_vm->_globals->_saveData->_data[svField341] == 2)
|
||||
@ -2125,7 +2125,7 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
}
|
||||
_vm->_soundManager.playSoundFile("SOUND83.WAV");
|
||||
_vm->_objectsManager.OPTI_ONE(6, 0, 23, 0);
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 27, 117, 1);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 27, 117, 1);
|
||||
break;
|
||||
}
|
||||
|
||||
@ -2148,15 +2148,15 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
|
||||
switch (_vm->_globals->_saveData->_data[svField341]) {
|
||||
case 1:
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 27, 117, 0);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 27, 117, 0);
|
||||
_vm->_globals->_saveData->_data[svField338] = 0;
|
||||
break;
|
||||
case 2:
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 145, 166, 2);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 145, 166, 2);
|
||||
_vm->_globals->_saveData->_data[svField339] = 0;
|
||||
break;
|
||||
case 3:
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 296, 212, 4);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 296, 212, 4);
|
||||
_vm->_globals->_saveData->_data[svField340] = 0;
|
||||
break;
|
||||
}
|
||||
@ -2164,7 +2164,7 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
|
||||
_vm->_soundManager.playSoundFile("SOUND83.WAV");
|
||||
_vm->_objectsManager.OPTI_ONE(5, 0, 23, 0);
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 145, 166, 3);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 145, 166, 3);
|
||||
break;
|
||||
}
|
||||
|
||||
@ -2186,22 +2186,22 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
_vm->_objectsManager.OPTI_ONE(vbobFrameIndex, 26, 50, 0);
|
||||
switch (_vm->_globals->_saveData->_data[svField341]) {
|
||||
case 1:
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 27, 117, 0);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 27, 117, 0);
|
||||
_vm->_globals->_saveData->_data[svField338] = 0;
|
||||
break;
|
||||
case 2:
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 145, 166, 2);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 145, 166, 2);
|
||||
_vm->_globals->_saveData->_data[svField339] = 0;
|
||||
break;
|
||||
case 3:
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 296, 212, 4);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 296, 212, 4);
|
||||
_vm->_globals->_saveData->_data[svField340] = 0;
|
||||
break;
|
||||
}
|
||||
}
|
||||
_vm->_soundManager.playSoundFile("SOUND83.WAV");
|
||||
_vm->_objectsManager.OPTI_ONE(4, 0, 23, 0);
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 296, 212, 5);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 296, 212, 5);
|
||||
break;
|
||||
}
|
||||
|
||||
@ -2284,7 +2284,7 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
_vm->_globals->_saveData->_data[svField356] = 0;
|
||||
_vm->_globals->_saveData->_data[svField355] = 1;
|
||||
_vm->_objectsManager._twoCharactersFl = true;
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 373, 191, 3);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 373, 191, 3);
|
||||
_vm->_objectsManager.addStaticSprite(_vm->_objectsManager._headSprites, samantha->_pos, 1, 3, samantha->_zoomFactor, false, 20, 127);
|
||||
_vm->_objectsManager.animateSprite(1);
|
||||
break;
|
||||
@ -2306,7 +2306,7 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
_vm->_objectsManager.OPTI_ONE(5, 0, 6, 0);
|
||||
_vm->_linesManager.ZONEP[4]._destX = 276;
|
||||
_vm->_objectsManager.enableVerb(4, 19);
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 285, 379, 0);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 285, 379, 0);
|
||||
_vm->_globals->_saveData->_data[svField399] = 1;
|
||||
break;
|
||||
|
||||
@ -2314,83 +2314,83 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
_vm->_objectsManager.removeSprite(0);
|
||||
_vm->_objectsManager.OPTI_ONE(6, 0, 15, 0);
|
||||
_vm->_objectsManager.PERSO_ON = true;
|
||||
_vm->_graphicsManager.NB_SCREEN(true);
|
||||
_vm->_graphicsManager->NB_SCREEN(true);
|
||||
_vm->_animationManager->NO_SEQ = true;
|
||||
_vm->_animationManager->playSequence2("TUNNEL.SEQ", 1, 18, 20);
|
||||
_vm->_animationManager->NO_SEQ = false;
|
||||
_vm->_graphicsManager._noFadingFl = true;
|
||||
_vm->_graphicsManager.fadeOutLong();
|
||||
_vm->_graphicsManager->_noFadingFl = true;
|
||||
_vm->_graphicsManager->fadeOutLong();
|
||||
_vm->_objectsManager.PERSO_ON = false;
|
||||
_vm->_globals->_exitId = 100;
|
||||
break;
|
||||
|
||||
case 600:
|
||||
if (!_vm->getIsDemo()) {
|
||||
_vm->_graphicsManager.FADE_LINUX = 2;
|
||||
_vm->_graphicsManager._fadeDefaultSpeed = 1;
|
||||
_vm->_graphicsManager->FADE_LINUX = 2;
|
||||
_vm->_graphicsManager->_fadeDefaultSpeed = 1;
|
||||
_vm->_animationManager->playAnim("BOMBE1A.ANM", 100, 18, 100);
|
||||
}
|
||||
_vm->_graphicsManager.loadImage("BOMBEB");
|
||||
_vm->_graphicsManager.SETCOLOR3(252, 100, 100, 100);
|
||||
_vm->_graphicsManager.SETCOLOR3(253, 100, 100, 100);
|
||||
_vm->_graphicsManager.SETCOLOR3(251, 100, 100, 100);
|
||||
_vm->_graphicsManager.SETCOLOR3(254, 0, 0, 0);
|
||||
_vm->_graphicsManager.initScreen("BOMBE", 2, true);
|
||||
_vm->_graphicsManager.fadeInShort();
|
||||
_vm->_graphicsManager->loadImage("BOMBEB");
|
||||
_vm->_graphicsManager->SETCOLOR3(252, 100, 100, 100);
|
||||
_vm->_graphicsManager->SETCOLOR3(253, 100, 100, 100);
|
||||
_vm->_graphicsManager->SETCOLOR3(251, 100, 100, 100);
|
||||
_vm->_graphicsManager->SETCOLOR3(254, 0, 0, 0);
|
||||
_vm->_graphicsManager->initScreen("BOMBE", 2, true);
|
||||
_vm->_graphicsManager->fadeInShort();
|
||||
break;
|
||||
|
||||
case 601:
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 513, 163, 7, false);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 513, 163, 7, false);
|
||||
_vm->_objectsManager.OPTI_ONE(2, 0, 16, 4);
|
||||
break;
|
||||
|
||||
case 602:
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 513, 163, 7, false);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 513, 163, 7, false);
|
||||
_vm->_objectsManager.OPTI_ONE(4, 0, 16, 4);
|
||||
break;
|
||||
|
||||
case 603:
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 513, 163, 7, false);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 513, 163, 7, false);
|
||||
_vm->_objectsManager.OPTI_ONE(3, 0, 16, 4);
|
||||
_vm->_soundManager._specialSoundNum = 199;
|
||||
_vm->_graphicsManager.FADE_LINUX = 2;
|
||||
_vm->_graphicsManager->FADE_LINUX = 2;
|
||||
_vm->_animationManager->playAnim("BOMBE2A.ANM", 50, 14, 500);
|
||||
_vm->_soundManager._specialSoundNum = 0;
|
||||
memset(_vm->_graphicsManager._vesaBuffer, 0, 614400);
|
||||
_vm->_graphicsManager._noFadingFl = true;
|
||||
memset(_vm->_graphicsManager->_vesaBuffer, 0, 614400);
|
||||
_vm->_graphicsManager->_noFadingFl = true;
|
||||
_vm->_globals->_exitId = 151;
|
||||
break;
|
||||
|
||||
case 604:
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 513, 163, 7, false);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 513, 163, 7, false);
|
||||
_vm->_objectsManager.OPTI_ONE(1, 0, 16, 4);
|
||||
_vm->_soundManager._specialSoundNum = 199;
|
||||
_vm->_animationManager->playAnim("BOMBE2A.ANM", 50, 14, 500);
|
||||
_vm->_soundManager._specialSoundNum = 0;
|
||||
_vm->_graphicsManager._noFadingFl = true;
|
||||
memset(_vm->_graphicsManager._vesaBuffer, 0, 614400);
|
||||
_vm->_graphicsManager->_noFadingFl = true;
|
||||
memset(_vm->_graphicsManager->_vesaBuffer, 0, 614400);
|
||||
_vm->_globals->_exitId = 151;
|
||||
break;
|
||||
|
||||
case 605:
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 513, 163, 7, false);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 513, 163, 7, false);
|
||||
_vm->_objectsManager.OPTI_ONE(5, 0, 16, 4);
|
||||
_vm->_graphicsManager.fadeOutShort();
|
||||
_vm->_graphicsManager->fadeOutShort();
|
||||
_vm->_soundManager._specialSoundNum = 199;
|
||||
_vm->_graphicsManager.FADE_LINUX = 2;
|
||||
_vm->_graphicsManager->FADE_LINUX = 2;
|
||||
_vm->_animationManager->playAnim("BOMBE2A.ANM", 50, 14, 500);
|
||||
_vm->_soundManager._specialSoundNum = 0;
|
||||
_vm->_graphicsManager._noFadingFl = true;
|
||||
memset(_vm->_graphicsManager._vesaBuffer, 0, 614400);
|
||||
_vm->_graphicsManager->_noFadingFl = true;
|
||||
memset(_vm->_graphicsManager->_vesaBuffer, 0, 614400);
|
||||
_vm->_globals->_exitId = 151;
|
||||
break;
|
||||
|
||||
case 606:
|
||||
_vm->_graphicsManager.fastDisplay(_vm->_globals->SPRITE_ECRAN, 513, 163, 7, false);
|
||||
_vm->_graphicsManager->fastDisplay(_vm->_globals->SPRITE_ECRAN, 513, 163, 7, false);
|
||||
_vm->_objectsManager.OPTI_ONE(6, 0, 16, 4);
|
||||
if ((_vm->getPlatform() != Common::kPlatformWindows) || !_vm->getIsDemo()) {
|
||||
_vm->_animationManager->playAnim("BOMBE3A.ANM", 50, 14, 500);
|
||||
memset(_vm->_graphicsManager._vesaBuffer, 0, 614400);
|
||||
memset(_vm->_graphicsManager->_vesaBuffer, 0, 614400);
|
||||
}
|
||||
_vm->_globals->_exitId = 6;
|
||||
break;
|
||||
@ -2398,10 +2398,10 @@ int ScriptManager::handleOpcode(byte *dataP) {
|
||||
case 607:
|
||||
// Display bomb plan
|
||||
if (!_vm->getIsDemo()) {
|
||||
memcpy(_vm->_graphicsManager._oldPalette, _vm->_graphicsManager._palette, 769);
|
||||
memcpy(_vm->_graphicsManager->_oldPalette, _vm->_graphicsManager->_palette, 769);
|
||||
_vm->_animationManager->playAnim2("PLAN.ANM", 50, 10, 800);
|
||||
}
|
||||
_vm->_graphicsManager.resetDirtyRects();
|
||||
_vm->_graphicsManager->resetDirtyRects();
|
||||
break;
|
||||
|
||||
case 608:
|
||||
|
@ -55,7 +55,7 @@ void TalkManager::startAnimatedCharacterDialogue(const Common::String &filename)
|
||||
_vm->_fontManager->hideText(5);
|
||||
_vm->_fontManager->hideText(9);
|
||||
_vm->_eventsManager->refreshScreenAndEvents();
|
||||
_vm->_graphicsManager._scrollStatus = 1;
|
||||
_vm->_graphicsManager->_scrollStatus = 1;
|
||||
bool oldDisableInventFl = _vm->_globals->_disableInventFl;
|
||||
_vm->_globals->_disableInventFl = true;
|
||||
_characterBuffer = _vm->_fileManager->searchCat(filename, RES_PER);
|
||||
@ -86,14 +86,14 @@ void TalkManager::startAnimatedCharacterDialogue(const Common::String &filename)
|
||||
_characterSprite = _vm->_objectsManager.loadSprite("RES_SAN.RES");
|
||||
}
|
||||
|
||||
if (_vm->_graphicsManager._lineNbr == SCREEN_WIDTH)
|
||||
_vm->_saveLoadManager.saveFile("TEMP.SCR", _vm->_graphicsManager._vesaScreen, 307200);
|
||||
else if (_vm->_graphicsManager._lineNbr == (SCREEN_WIDTH * 2))
|
||||
_vm->_saveLoadManager.saveFile("TEMP.SCR", _vm->_graphicsManager._vesaScreen, 614400);
|
||||
if (_vm->_graphicsManager->_lineNbr == SCREEN_WIDTH)
|
||||
_vm->_saveLoadManager.saveFile("TEMP.SCR", _vm->_graphicsManager->_vesaScreen, 307200);
|
||||
else if (_vm->_graphicsManager->_lineNbr == (SCREEN_WIDTH * 2))
|
||||
_vm->_saveLoadManager.saveFile("TEMP.SCR", _vm->_graphicsManager->_vesaScreen, 614400);
|
||||
|
||||
if (!_vm->_graphicsManager._lineNbr)
|
||||
_vm->_graphicsManager._scrollOffset = 0;
|
||||
_vm->_graphicsManager.NB_SCREEN(true);
|
||||
if (!_vm->_graphicsManager->_lineNbr)
|
||||
_vm->_graphicsManager->_scrollOffset = 0;
|
||||
_vm->_graphicsManager->NB_SCREEN(true);
|
||||
_vm->_objectsManager.PERSO_ON = true;
|
||||
searchCharacterPalette(_paletteBufferIdx, false);
|
||||
startCharacterAnim0(_paletteBufferIdx, false);
|
||||
@ -127,31 +127,31 @@ void TalkManager::startAnimatedCharacterDialogue(const Common::String &filename)
|
||||
_vm->_globals->_introSpeechOffFl = false;
|
||||
_characterBuffer = _vm->_globals->freeMemory(_characterBuffer);
|
||||
_characterSprite = _vm->_globals->freeMemory(_characterSprite);
|
||||
_vm->_graphicsManager.NB_SCREEN(false);
|
||||
_vm->_graphicsManager->NB_SCREEN(false);
|
||||
|
||||
_vm->_saveLoadManager.load("TEMP.SCR", _vm->_graphicsManager._vesaScreen);
|
||||
_vm->_saveLoadManager.load("TEMP.SCR", _vm->_graphicsManager->_vesaScreen);
|
||||
g_system->getSavefileManager()->removeSavefile("TEMP.SCR");
|
||||
|
||||
_vm->_objectsManager.PERSO_ON = false;
|
||||
_vm->_eventsManager->_mouseCursorId = oldMouseCursorId;
|
||||
|
||||
_vm->_eventsManager->changeMouseCursor(oldMouseCursorId);
|
||||
_vm->_graphicsManager.SETCOLOR3(253, 100, 100, 100);
|
||||
_vm->_graphicsManager->SETCOLOR3(253, 100, 100, 100);
|
||||
|
||||
if (_vm->getIsDemo() == false)
|
||||
_vm->_graphicsManager.SETCOLOR3(254, 0, 0, 0);
|
||||
_vm->_graphicsManager->SETCOLOR3(254, 0, 0, 0);
|
||||
|
||||
_vm->_graphicsManager.initColorTable(145, 150, _vm->_graphicsManager._palette);
|
||||
_vm->_graphicsManager.setPaletteVGA256(_vm->_graphicsManager._palette);
|
||||
_vm->_graphicsManager.lockScreen();
|
||||
_vm->_graphicsManager.m_scroll16(_vm->_graphicsManager._vesaScreen, _vm->_eventsManager->_startPos.x, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
|
||||
_vm->_graphicsManager.unlockScreen();
|
||||
memcpy(_vm->_graphicsManager._vesaBuffer, _vm->_graphicsManager._vesaScreen, 614399);
|
||||
_vm->_graphicsManager->initColorTable(145, 150, _vm->_graphicsManager->_palette);
|
||||
_vm->_graphicsManager->setPaletteVGA256(_vm->_graphicsManager->_palette);
|
||||
_vm->_graphicsManager->lockScreen();
|
||||
_vm->_graphicsManager->m_scroll16(_vm->_graphicsManager->_vesaScreen, _vm->_eventsManager->_startPos.x, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
|
||||
_vm->_graphicsManager->unlockScreen();
|
||||
memcpy(_vm->_graphicsManager->_vesaBuffer, _vm->_graphicsManager->_vesaScreen, 614399);
|
||||
_vm->_globals->_disableInventFl = oldDisableInventFl;
|
||||
_vm->_graphicsManager.updateScreen();
|
||||
_vm->_graphicsManager->updateScreen();
|
||||
for (int i = 0; i <= 4; i++)
|
||||
_vm->_eventsManager->refreshScreenAndEvents();
|
||||
_vm->_graphicsManager._scrollStatus = 0;
|
||||
_vm->_graphicsManager->_scrollStatus = 0;
|
||||
}
|
||||
|
||||
void TalkManager::startStaticCharacterDialogue(const Common::String &filename) {
|
||||
@ -218,8 +218,8 @@ void TalkManager::startStaticCharacterDialogue(const Common::String &filename) {
|
||||
_vm->_eventsManager->_mouseCursorId = oldMouseCursorId;
|
||||
|
||||
_vm->_eventsManager->changeMouseCursor(oldMouseCursorId);
|
||||
_vm->_graphicsManager.initColorTable(145, 150, _vm->_graphicsManager._palette);
|
||||
_vm->_graphicsManager.setPaletteVGA256(_vm->_graphicsManager._palette);
|
||||
_vm->_graphicsManager->initColorTable(145, 150, _vm->_graphicsManager->_palette);
|
||||
_vm->_graphicsManager->setPaletteVGA256(_vm->_graphicsManager->_palette);
|
||||
// TODO: The original re-enables the mouse cursor here
|
||||
_vm->_globals->_disableInventFl = oldDisableInventFl;
|
||||
}
|
||||
@ -467,8 +467,8 @@ void TalkManager::searchCharacterPalette(int startIdx, bool dark) {
|
||||
else
|
||||
_characterPalette[761] = 255;
|
||||
|
||||
_vm->_graphicsManager.setPaletteVGA256(_characterPalette);
|
||||
_vm->_graphicsManager.initColorTable(145, 150, _characterPalette);
|
||||
_vm->_graphicsManager->setPaletteVGA256(_characterPalette);
|
||||
_vm->_graphicsManager->initColorTable(145, 150, _characterPalette);
|
||||
}
|
||||
|
||||
void TalkManager::dialogWait() {
|
||||
@ -642,7 +642,7 @@ void TalkManager::startCharacterAnim0(int startIdx, bool readOnlyFl) {
|
||||
if (!READ_LE_INT16(&_characterAnim[2 * idx + 4]))
|
||||
break;
|
||||
if (_vm->_globals->_speed != 501)
|
||||
_vm->_graphicsManager.fastDisplay(_characterSprite, _vm->_eventsManager->_startPos.x + READ_LE_INT16(&_characterAnim[2 * idx]),
|
||||
_vm->_graphicsManager->fastDisplay(_characterSprite, _vm->_eventsManager->_startPos.x + READ_LE_INT16(&_characterAnim[2 * idx]),
|
||||
READ_LE_INT16(&_characterAnim[2 * idx + 2]), _characterAnim[2 * idx + 8]);
|
||||
idx += 5;
|
||||
} while (_vm->_globals->_speed != 501);
|
||||
@ -967,7 +967,7 @@ void TalkManager::animateObject(const Common::String &filename) {
|
||||
_vm->_fontManager->hideText(5);
|
||||
_vm->_fontManager->hideText(9);
|
||||
_vm->_eventsManager->refreshScreenAndEvents();
|
||||
_vm->_graphicsManager._scrollStatus = 1;
|
||||
_vm->_graphicsManager->_scrollStatus = 1;
|
||||
_vm->_linesManager.clearAllZones();
|
||||
_vm->_linesManager.resetLines();
|
||||
_vm->_globals->resetHidingItems();
|
||||
@ -1000,16 +1000,16 @@ void TalkManager::animateObject(const Common::String &filename) {
|
||||
else
|
||||
_characterSprite = _vm->_objectsManager.loadSprite("RES_SAN.RES");
|
||||
|
||||
if (_vm->_graphicsManager._lineNbr == SCREEN_WIDTH)
|
||||
_vm->_saveLoadManager.saveFile("TEMP.SCR", _vm->_graphicsManager._vesaScreen, 307200);
|
||||
else if (_vm->_graphicsManager._lineNbr == (SCREEN_WIDTH * 2))
|
||||
_vm->_saveLoadManager.saveFile("TEMP.SCR", _vm->_graphicsManager._vesaScreen, 614400);
|
||||
if (_vm->_graphicsManager->_lineNbr == SCREEN_WIDTH)
|
||||
_vm->_saveLoadManager.saveFile("TEMP.SCR", _vm->_graphicsManager->_vesaScreen, 307200);
|
||||
else if (_vm->_graphicsManager->_lineNbr == (SCREEN_WIDTH * 2))
|
||||
_vm->_saveLoadManager.saveFile("TEMP.SCR", _vm->_graphicsManager->_vesaScreen, 614400);
|
||||
|
||||
if (!_vm->_graphicsManager._lineNbr)
|
||||
_vm->_graphicsManager._scrollOffset = 0;
|
||||
_vm->_graphicsManager.NB_SCREEN(true);
|
||||
if (!_vm->_graphicsManager->_lineNbr)
|
||||
_vm->_graphicsManager->_scrollOffset = 0;
|
||||
_vm->_graphicsManager->NB_SCREEN(true);
|
||||
_paletteBufferIdx = 20 * READ_LE_INT16((uint16 *)_characterBuffer + 42) + 110;
|
||||
_vm->_graphicsManager.NB_SCREEN(true);
|
||||
_vm->_graphicsManager->NB_SCREEN(true);
|
||||
_vm->_objectsManager.PERSO_ON = true;
|
||||
searchCharacterPalette(_paletteBufferIdx, true);
|
||||
startCharacterAnim0(_paletteBufferIdx, false);
|
||||
@ -1023,7 +1023,7 @@ void TalkManager::animateObject(const Common::String &filename) {
|
||||
initCharacterAnim();
|
||||
VISU_PARLE();
|
||||
dialogWait();
|
||||
_vm->_graphicsManager.initScreen(screenFilename, 2, true);
|
||||
_vm->_graphicsManager->initScreen(screenFilename, 2, true);
|
||||
_vm->_globals->_freezeCharacterFl = true;
|
||||
_vm->_objectsManager._forceZoneFl = true;
|
||||
_vm->_objectsManager._zoneNum = -1;
|
||||
@ -1046,7 +1046,7 @@ void TalkManager::animateObject(const Common::String &filename) {
|
||||
_vm->_globals->_introSpeechOffFl = false;
|
||||
_characterBuffer = _vm->_globals->freeMemory(_characterBuffer);
|
||||
_characterSprite = _vm->_globals->freeMemory(_characterSprite);
|
||||
_vm->_graphicsManager.NB_SCREEN(false);
|
||||
_vm->_graphicsManager->NB_SCREEN(false);
|
||||
_vm->_linesManager.clearAllZones();
|
||||
_vm->_linesManager.resetLines();
|
||||
_vm->_globals->resetHidingItems();
|
||||
@ -1057,35 +1057,35 @@ void TalkManager::animateObject(const Common::String &filename) {
|
||||
_vm->_globals->_answerBuffer = oldAnswerBufferPtr;
|
||||
_vm->_objectsManager._disableFl = true;
|
||||
_vm->_objectsManager.loadLinkFile(curScreenFilename);
|
||||
_vm->_graphicsManager.initScreen(curScreenFilename, 2, true);
|
||||
_vm->_graphicsManager->initScreen(curScreenFilename, 2, true);
|
||||
_vm->_objectsManager._disableFl = false;
|
||||
_vm->_globals->_freezeCharacterFl = false;
|
||||
if (_vm->_globals->_exitId == 101)
|
||||
_vm->_globals->_exitId = 0;
|
||||
|
||||
_vm->_saveLoadManager.load("TEMP.SCR", _vm->_graphicsManager._vesaScreen);
|
||||
_vm->_saveLoadManager.load("TEMP.SCR", _vm->_graphicsManager->_vesaScreen);
|
||||
g_system->getSavefileManager()->removeSavefile("TEMP.SCR");
|
||||
|
||||
_vm->_objectsManager.PERSO_ON = false;
|
||||
_vm->_eventsManager->_mouseCursorId = 4;
|
||||
_vm->_eventsManager->changeMouseCursor(4);
|
||||
_vm->_graphicsManager.SETCOLOR3(253, 100, 100, 100);
|
||||
_vm->_graphicsManager->SETCOLOR3(253, 100, 100, 100);
|
||||
|
||||
if (!_vm->getIsDemo())
|
||||
_vm->_graphicsManager.SETCOLOR3(254, 0, 0, 0);
|
||||
_vm->_graphicsManager->SETCOLOR3(254, 0, 0, 0);
|
||||
|
||||
_vm->_graphicsManager.initColorTable(145, 150, _vm->_graphicsManager._palette);
|
||||
_vm->_graphicsManager.setPaletteVGA256(_vm->_graphicsManager._palette);
|
||||
_vm->_graphicsManager.lockScreen();
|
||||
_vm->_graphicsManager.m_scroll16(_vm->_graphicsManager._vesaScreen, _vm->_eventsManager->_startPos.x, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
|
||||
_vm->_graphicsManager.unlockScreen();
|
||||
_vm->_graphicsManager.setPaletteVGA256(_vm->_graphicsManager._palette);
|
||||
memcpy(_vm->_graphicsManager._vesaBuffer, _vm->_graphicsManager._vesaScreen, 614399);
|
||||
_vm->_graphicsManager->initColorTable(145, 150, _vm->_graphicsManager->_palette);
|
||||
_vm->_graphicsManager->setPaletteVGA256(_vm->_graphicsManager->_palette);
|
||||
_vm->_graphicsManager->lockScreen();
|
||||
_vm->_graphicsManager->m_scroll16(_vm->_graphicsManager->_vesaScreen, _vm->_eventsManager->_startPos.x, 0, SCREEN_WIDTH, SCREEN_HEIGHT, 0, 0);
|
||||
_vm->_graphicsManager->unlockScreen();
|
||||
_vm->_graphicsManager->setPaletteVGA256(_vm->_graphicsManager->_palette);
|
||||
memcpy(_vm->_graphicsManager->_vesaBuffer, _vm->_graphicsManager->_vesaScreen, 614399);
|
||||
_vm->_globals->_disableInventFl = false;
|
||||
_vm->_graphicsManager.updateScreen();
|
||||
_vm->_graphicsManager->updateScreen();
|
||||
for (int i = 0; i <= 4; i++)
|
||||
_vm->_eventsManager->refreshScreenAndEvents();
|
||||
_vm->_graphicsManager._scrollStatus = 0;
|
||||
_vm->_graphicsManager->_scrollStatus = 0;
|
||||
}
|
||||
|
||||
} // End of namespace Hopkins
|
||||
|
Loading…
x
Reference in New Issue
Block a user