From a0fcbeeb4faa8a12c2b68a6887ebbdae2b356239 Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Sun, 11 May 2014 23:26:54 -0400 Subject: MADS: Dialog positioning and UI shading fix for picture dialog --- engines/mads/nebular/dialogs_nebular.cpp | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/engines/mads/nebular/dialogs_nebular.cpp b/engines/mads/nebular/dialogs_nebular.cpp index ff2249a3b3..63b0edf2f1 100644 --- a/engines/mads/nebular/dialogs_nebular.cpp +++ b/engines/mads/nebular/dialogs_nebular.cpp @@ -390,8 +390,13 @@ void PictureDialog::save() { // Set up palette allocation uint32 *palFlagP = &palette._palFlags[0]; for (int idx = 0; idx < PALETTE_COUNT; ++idx, ++palFlagP) { - *palFlagP = (idx < PALETTE_RESERVED_LOW_COUNT || - idx >= (PALETTE_COUNT - PALETTE_RESERVED_HIGH_COUNT - 10)) ? 1 : 0; + if (idx < PALETTE_RESERVED_LOW_COUNT || + idx >= (PALETTE_COUNT - PALETTE_RESERVED_HIGH_COUNT - 10)) { + *palFlagP = 1; + map[idx] = idx; + } else { + *palFlagP = 0; + } } // Reset the flag list @@ -413,6 +418,8 @@ void PictureDialog::save() { // Draw the inventory picture MSprite *frame = asset->getFrame(0); + _position.y = frame->h + 12; + frame->copyTo(&_vm->_screen, Common::Point(160 - frame->w / 2, 6), frame->getTransparencyIndex()); _vm->_screen.copyRectToScreen(_vm->_screen.getBounds()); -- cgit v1.2.3