diff options
-rw-r--r-- | engines/parallaction/callables_ns.cpp | 6 | ||||
-rw-r--r-- | engines/parallaction/graphics.cpp | 15 | ||||
-rw-r--r-- | engines/parallaction/location.cpp | 2 |
3 files changed, 9 insertions, 14 deletions
diff --git a/engines/parallaction/callables_ns.cpp b/engines/parallaction/callables_ns.cpp index 94a0747ab1..011c1b5ce9 100644 --- a/engines/parallaction/callables_ns.cpp +++ b/engines/parallaction/callables_ns.cpp @@ -344,17 +344,13 @@ void Parallaction_ns::_c_endComment(void *param) { Common::Rect r(w+5, h+5); r.moveTo(5, 5); _gfx->floodFill(Gfx::kBitFront, r, 0); - - r.setWidth(w+3); - r.setHeight(h+3); - r.moveTo(7, 7); + r.grow(-2); _gfx->floodFill(Gfx::kBitFront, r, 1); _gfx->setFont(kFontDialogue); _gfx->displayWrappedString(_location._endComment, 3, 5, 0, 130); _gfx->updateScreen(); - Gfx::Palette pal; _gfx->makeGrayscalePalette(pal); diff --git a/engines/parallaction/graphics.cpp b/engines/parallaction/graphics.cpp index b3f28f20b4..ae845cf47e 100644 --- a/engines/parallaction/graphics.cpp +++ b/engines/parallaction/graphics.cpp @@ -35,7 +35,8 @@ namespace Parallaction { #define BALLOON_WIDTH 12 #define BALLOON_HEIGHT 10 -byte _resBalloon[2][BALLOON_WIDTH*BALLOON_HEIGHT] = { + +byte _resBalloonTail[2][BALLOON_WIDTH*BALLOON_HEIGHT] = { { 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x02, 0x02, 0x02, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x02, 0x02, @@ -67,19 +68,17 @@ void Gfx::drawBalloon(const Common::Rect& r, uint16 winding) { Common::Rect q = r; + // draws balloon q.right += 5; floodFill(kBitFront, q, 0); - - q.left++; - q.top+=2; - q.right--; - q.bottom--; + q.grow(-1); floodFill(kBitFront, q, 1); + // draws tail + // TODO: this bitmap tail should only be used for Dos games. Amiga should use a polygon fill. winding = (winding == 0 ? 1 : 0); - byte *s = _resBalloon[winding]; + byte *s = _resBalloonTail[winding]; byte *d = (byte*)_buffers[kBitFront]->getBasePtr(r.left + (r.width()+5)/2 - 5, r.bottom - 1); - for (uint16 i = 0; i < BALLOON_HEIGHT; i++) { for (uint16 j = 0; j < BALLOON_WIDTH; j++) { if (*s != 2) *d = *s; diff --git a/engines/parallaction/location.cpp b/engines/parallaction/location.cpp index 024938074b..9ab62eb40c 100644 --- a/engines/parallaction/location.cpp +++ b/engines/parallaction/location.cpp @@ -441,7 +441,7 @@ void Parallaction::doLocationEnterTransition() { Common::Rect r(10 + w, 5 + h); r.moveTo(5, 5); _gfx->floodFill(Gfx::kBitFront, r, 0); - r.grow(-1); + r.grow(-2); _gfx->floodFill(Gfx::kBitFront, r, 1); _gfx->displayWrappedString(_location._comment, 3, 5, 0, 130); |