[Scummvm-cvs-logs] scummvm master -> 3f30105fff58849dc24dadbf04d945bfb75916a4

wjp wjp at usecode.org
Sun Nov 27 19:02:31 CET 2011


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

Summary:
3f30105fff DREAMWEB: Add utility function ObjPos::contains


Commit: 3f30105fff58849dc24dadbf04d945bfb75916a4
    https://github.com/scummvm/scummvm/commit/3f30105fff58849dc24dadbf04d945bfb75916a4
Author: Willem Jan Palenstijn (wjp at usecode.org)
Date: 2011-11-27T09:56:37-08:00

Commit Message:
DREAMWEB: Add utility function ObjPos::contains

Changed paths:
    engines/dreamweb/structs.h
    engines/dreamweb/stubs.cpp



diff --git a/engines/dreamweb/structs.h b/engines/dreamweb/structs.h
index 5073612..c9ec703 100644
--- a/engines/dreamweb/structs.h
+++ b/engines/dreamweb/structs.h
@@ -134,6 +134,9 @@ struct ObjPos {
 	uint8 xMax;
 	uint8 yMax;
 	uint8 index;
+	bool contains(uint8 x, uint8 y) const {
+		return (x >= xMin) && (x < xMax) && (y >= yMin) && (y < yMax);
+	}
 };
 
 struct Frame {
diff --git a/engines/dreamweb/stubs.cpp b/engines/dreamweb/stubs.cpp
index c336a62..e8a5624 100644
--- a/engines/dreamweb/stubs.cpp
+++ b/engines/dreamweb/stubs.cpp
@@ -1064,15 +1064,7 @@ bool DreamGenContext::checkiffree(uint8 x, uint8 y) {
 	const ObjPos *freeList = (const ObjPos *)segRef(data.word(kBuffers)).ptr(kFreelist, 80 * sizeof(ObjPos));
 	for (size_t i = 0; i < 80; ++i) {
 		const ObjPos *objPos = freeList + 79 - i;
-		if (objPos->index == 0xff)
-			continue;
-		if (x < objPos->xMin)
-			continue;
-		if (x >= objPos->xMax)
-			continue;
-		if (y < objPos->yMin)
-			continue;
-		if (y >= objPos->yMax)
+		if (objPos->index == 0xff || !objPos->contains(x,y))
 			continue;
 		obname(objPos->index, 2);
 		return true;
@@ -1088,15 +1080,7 @@ bool DreamGenContext::checkifex(uint8 x, uint8 y) {
 	const ObjPos *exList = (const ObjPos *)segRef(data.word(kBuffers)).ptr(kExlist, 100 * sizeof(ObjPos));
 	for (size_t i = 0; i < 100; ++i) {
 		const ObjPos *objPos = exList + 99 - i;
-		if (objPos->index == 0xff)
-			continue;
-		if (x < objPos->xMin)
-			continue;
-		if (x >= objPos->xMax)
-			continue;
-		if (y < objPos->yMin)
-			continue;
-		if (y >= objPos->yMax)
+		if (objPos->index == 0xff || !objPos->contains(x,y))
 			continue;
 		obname(objPos->index, 4);
 		return true;
@@ -1793,15 +1777,7 @@ bool DreamGenContext::checkifset(uint8 x, uint8 y) {
 	const ObjPos *setList = (const ObjPos *)segRef(data.word(kBuffers)).ptr(kSetlist, sizeof(ObjPos) * 128);
 	for (size_t i = 0; i < 128; ++i) {
 		const ObjPos *pos = setList + 127 - i;
-		if (pos->index == 0xff)
-			continue;
-		if (x < pos->xMin)
-			continue;
-		if (x >= pos->xMax)
-			continue;
-		if (y < pos->yMin)
-			continue;
-		if (y >= pos->yMax)
+		if (pos->index == 0xff || !pos->contains(x,y))
 			continue;
 		if (! pixelcheckset(pos, x, y))
 			continue;






More information about the Scummvm-git-logs mailing list