aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/parallaction/callables_ns.cpp6
-rw-r--r--engines/parallaction/graphics.cpp15
-rw-r--r--engines/parallaction/location.cpp2
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);