From c966fc23fb7a243de064556b35ea2b5e52605ab6 Mon Sep 17 00:00:00 2001 From: Darkvater Date: Mon, 18 Jul 2005 00:17:19 +0000 Subject: (svn r2628) - Fix: Planting trees does not result in a MapSize() assertion anymore; introduced in r2598 --- tree_cmd.c | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/tree_cmd.c b/tree_cmd.c index bd83d9297..14851c6f8 100644 --- a/tree_cmd.c +++ b/tree_cmd.c @@ -132,10 +132,7 @@ void GenerateTrees(void) int32 CmdPlantTree(int ex, int ey, uint32 flags, uint32 p1, uint32 p2) { int32 cost; - int sx; - int sy; - int x; - int y; + int sx, sy, x, y; if (p2 > MapSize()) return CMD_ERROR; /* Check the tree type. It can be random or some valid value within the current climate */ @@ -144,15 +141,16 @@ int32 CmdPlantTree(int ex, int ey, uint32 flags, uint32 p1, uint32 p2) SET_EXPENSES_TYPE(EXPENSES_OTHER); // make sure sx,sy are smaller than ex,ey - sx = TileX(p2) * 16; - sy = TileY(p2) * 16; + sx = TileX(p2); + sy = TileY(p2); + ex /= 16; ey /= 16; if (ex < sx) intswap(ex, sx); if (ey < sy) intswap(ey, sy); cost = 0; // total cost - for (x = sx; x <= ex; x += 16) { - for (y = sy; y <= ey; y += 16) { + for (x = sx; x <= ex; x++) { + for (y = sy; y <= ey; y++) { TileIndex tile = TileXY(x, y); if (!EnsureNoVehicle(tile)) continue; -- cgit v1.2.3-70-g09d2