diff options
Diffstat (limited to 'engines/access/screen.cpp')
-rw-r--r-- | engines/access/screen.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/engines/access/screen.cpp b/engines/access/screen.cpp index 2ecbb4f430..9392decead 100644 --- a/engines/access/screen.cpp +++ b/engines/access/screen.cpp @@ -113,6 +113,16 @@ void Screen::setInitialPalettte() { g_system->getPaletteManager()->setPalette(INITIAL_PALETTE, 0, 18); } +void Screen::setManPalette() { + Common::copy(_vm->_screen->_manPal, _vm->_screen->_manPal + 0x42, _rawPalette + 672); +} + +void Screen::setIconPalette() { + if (_vm->getGameID() == GType_MartianMemorandum) { + Common::copy(Martian::ICON_DATA, Martian::ICON_DATA + 0x1B, _rawPalette + 741); + } +} + void Screen::loadPalette(int fileNum, int subfile) { Resource *res = _vm->_files->loadFile(fileNum, subfile); byte *palette = res->data(); @@ -267,6 +277,11 @@ void Screen::drawRect() { ASurface::drawRect(); } +void Screen::drawBox() { + addDirtyRect(Common::Rect(_orgX1, _orgY1, _orgX2, _orgY2)); + ASurface::drawBox(); +} + void Screen::transBlitFrom(ASurface *src, const Common::Point &destPos) { addDirtyRect(Common::Rect(destPos.x, destPos.y, destPos.x + src->w, destPos.y + src->h)); ASurface::transBlitFrom(src, destPos); @@ -322,6 +337,10 @@ void Screen::cyclePaletteBackwards() { } } +void Screen::flashPalette(int count) { + warning("TODO: Implement flashPalette"); +} + void Screen::addDirtyRect(const Common::Rect &r) { _dirtyRects.push_back(r); assert(r.isValidRect() && r.width() > 0 && r.height() > 0); |