[Scummvm-git-logs] scummvm master -> de11c01419a639c5ef2053a2909e92e1886b09ad

sev- noreply at scummvm.org
Thu Jun 16 21:41:13 UTC 2022


This automated email contains information about 2 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
f92f51b3e4 DIRECTOR: Fix thickness when drawing tiled QD shapes
de11c01419 MTROPOLIS: Fix engine module.mk, removed duplicate


Commit: f92f51b3e4b8935daccaa7ae03cfeda90983cf01
    https://github.com/scummvm/scummvm/commit/f92f51b3e4b8935daccaa7ae03cfeda90983cf01
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2022-06-16T23:40:45+02:00

Commit Message:
DIRECTOR: Fix thickness when drawing tiled QD shapes

Changed paths:
    engines/director/graphics.cpp


diff --git a/engines/director/graphics.cpp b/engines/director/graphics.cpp
index 33f744e063d..2ca2898ce61 100644
--- a/engines/director/graphics.cpp
+++ b/engines/director/graphics.cpp
@@ -203,20 +203,39 @@ void inkDrawPixel(int x, int y, int src, void *data) {
 	dst = (T)p->dst->getBasePtr(x, y);
 
 	if (p->ms) {
+		if (p->ms->pd->thickness > 1) {
+			int prevThickness = p->ms->pd->thickness;
+			int x1 = x;
+			int x2 = x1 + prevThickness;
+			int y1 = y;
+			int y2 = y1 + prevThickness;
+
+			p->ms->pd->thickness = 1;	// We do not want recursive loops
+
+			for (y = y1; y < y2; y++)
+				for (x = x1; x < x2; x++)
+					if (x >= 0 && x < p->ms->pd->surface->w && y >= 0 && y < p->ms->pd->surface->h) {
+						inkDrawPixel<T>(x, y, src, data);
+					}
+
+			p->ms->pd->thickness = prevThickness;
+			return;
+		}
+
 		if (p->ms->tile) {
 			int x1 = p->ms->tileRect->left + (p->ms->pd->fillOriginX + x) % p->ms->tileRect->width();
 			int y1 = p->ms->tileRect->top  + (p->ms->pd->fillOriginY + y) % p->ms->tileRect->height();
 
-			*dst = p->ms->tile->getSurface()->getPixel(x1, y1);
-			return;
-		}
-		// Get the pixel that macDrawPixel will give us, but store it to apply the
-		// ink later
-		tmpDst = *dst;
-		(wm->getDrawPixel())(x, y, src, p->ms->pd);
-		src = *dst;
+			src = p->ms->tile->getSurface()->getPixel(x1, y1);
+		} else {
+			// Get the pixel that macDrawPixel will give us, but store it to apply the
+			// ink later
+			tmpDst = *dst;
+			(wm->getDrawPixel())(x, y, src, p->ms->pd);
+			src = *dst;
 
-		*dst = tmpDst;
+			*dst = tmpDst;
+		}
 	} else if (p->alpha) {
 		// Sprite blend does not respect colourization; defaults to matte ink
 		byte rSrc, gSrc, bSrc;


Commit: de11c01419a639c5ef2053a2909e92e1886b09ad
    https://github.com/scummvm/scummvm/commit/de11c01419a639c5ef2053a2909e92e1886b09ad
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2022-06-16T23:40:45+02:00

Commit Message:
MTROPOLIS: Fix engine module.mk, removed duplicate

Changed paths:
    engines/mtropolis/module.mk


diff --git a/engines/mtropolis/module.mk b/engines/mtropolis/module.mk
index aa6ad880d4b..fb738ab377c 100644
--- a/engines/mtropolis/module.mk
+++ b/engines/mtropolis/module.mk
@@ -6,7 +6,6 @@ MODULE_OBJS = \
 	core.o \
 	data.o \
 	debug.o \
-	detection.o \
 	element_factory.o \
 	elements.o \
 	hacks.o \




More information about the Scummvm-git-logs mailing list