changeset 18479:4e8ed32f0d38 draft

(svn r23323) -Fix: when you fund a town, it should grow; goals reached or not
author truebrain <truebrain@openttd.org>
date Fri, 25 Nov 2011 11:35:15 +0000
parents b4d2b25b6b02
children aa37d4f4905c
files src/town_cmd.cpp
diffstat 1 files changed, 7 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/src/town_cmd.cpp
+++ b/src/town_cmd.cpp
@@ -2775,11 +2775,13 @@
 
 	if (_settings_game.economy.town_growth_rate == 0 && t->fund_buildings_months == 0) return;
 
-	/* Check if all goals are reached for this town to grow */
-	for (int i = TE_BEGIN; i < TE_END; i++) {
-		if (t->goal[i] == TOWN_GROWTH_WINTER && TileHeight(t->xy) >= GetSnowLine() && t->received[i].old_act == 0 && t->population > 90) return;
-		if (t->goal[i] == TOWN_GROWTH_DESERT && GetTropicZone(t->xy) == TROPICZONE_DESERT && t->received[i].old_act == 0 && t->population > 60) return;
-		if (t->goal[i] > t->received[i].old_act) return;
+	if (t->fund_buildings_months == 0) {
+		/* Check if all goals are reached for this town to grow (given we are not funding it) */
+		for (int i = TE_BEGIN; i < TE_END; i++) {
+			if (t->goal[i] == TOWN_GROWTH_WINTER && TileHeight(t->xy) >= GetSnowLine() && t->received[i].old_act == 0 && t->population > 90) return;
+			if (t->goal[i] == TOWN_GROWTH_DESERT && GetTropicZone(t->xy) == TROPICZONE_DESERT && t->received[i].old_act == 0 && t->population > 60) return;
+			if (t->goal[i] > t->received[i].old_act) return;
+		}
 	}
 
 	/**