aboutsummaryrefslogtreecommitdiff
path: root/engines/toltecs
diff options
context:
space:
mode:
authorFilippos Karapetis2011-12-05 02:11:52 +0200
committerFilippos Karapetis2011-12-05 02:31:56 +0200
commit9b12c8c25c3428252e1a721a427a232216024a04 (patch)
tree9932b1053892e382970e09b9202e119b446eafab /engines/toltecs
parent19228af1070af0cdcb2b768ed514a3529e458bd7 (diff)
downloadscummvm-rg350-9b12c8c25c3428252e1a721a427a232216024a04.tar.gz
scummvm-rg350-9b12c8c25c3428252e1a721a427a232216024a04.tar.bz2
scummvm-rg350-9b12c8c25c3428252e1a721a427a232216024a04.zip
TOLTECS: Removed two goto statements
Diffstat (limited to 'engines/toltecs')
-rw-r--r--engines/toltecs/microtiles.cpp45
1 files changed, 20 insertions, 25 deletions
diff --git a/engines/toltecs/microtiles.cpp b/engines/toltecs/microtiles.cpp
index 38e4f6578e..0b61ac38a5 100644
--- a/engines/toltecs/microtiles.cpp
+++ b/engines/toltecs/microtiles.cpp
@@ -126,8 +126,10 @@ Common::Rect * MicroTileArray::getRectangles(int *num_rects, int min_x, int min_
boundingBox = _tiles[i];
- if (isBoundingBoxEmpty(boundingBox))
- goto next;
+ if (isBoundingBoxEmpty(boundingBox)) {
+ ++i;
+ continue;
+ }
x0 = (x * TileSize) + TileX0(boundingBox);
y0 = (y * TileSize) + TileY0(boundingBox);
@@ -141,27 +143,22 @@ Common::Rect * MicroTileArray::getRectangles(int *num_rects, int min_x, int min_
#if 1
start = i;
- if (TileX1(boundingBox) != TileSize - 1 || x == _tilesW - 1) {
- /* the tile does not continue */
- goto done;
- }
-
- while (!finish) {
- ++x;
- ++i;
-
- if (x == _tilesW || i >= _tilesW * _tilesH ||
- TileY0(_tiles[i]) != TileY0(boundingBox) ||
- TileY1(_tiles[i]) != TileY1(boundingBox) ||
- TileX0(_tiles[i]) != 0)
- {
- --x;
- --i;
- finish = 1;
+ if (TileX1(boundingBox) == TileSize - 1 && x != _tilesW - 1) { // check if the tile continues
+ while (!finish) {
+ ++x;
+ ++i;
+
+ if (x == _tilesW || i >= _tilesW * _tilesH ||
+ TileY0(_tiles[i]) != TileY0(boundingBox) ||
+ TileY1(_tiles[i]) != TileY1(boundingBox) ||
+ TileX0(_tiles[i]) != 0)
+ {
+ --x;
+ --i;
+ finish = 1;
+ }
}
}
-
- done:
#endif
x1 = (x * TileSize) + TileX1(_tiles[i]);
@@ -203,11 +200,9 @@ Common::Rect * MicroTileArray::getRectangles(int *num_rects, int min_x, int min_
#endif
- next:
++i;
-
- }
- }
+ } // for (x = 0; x < _tilesW; ++x)
+ } // for (y = 0; y < _tilesH; ++y)
*num_rects = n_rects;