Changeset - r18488:2ba5ebb2d775
[Not reviewed]
master
0 1 0
rubidium - 13 years ago 2011-11-27 11:42:52
rubidium@openttd.org
(svn r23342) -Fix (r23300): for arctic and desert towns you were required to deliver more than 4 billion units, instead of one or more units
1 file changed with 11 insertions and 3 deletions:
0 comments (0 inline, 0 general)
src/town_cmd.cpp
Show inline comments
 
@@ -2778,9 +2778,17 @@ static void UpdateTownGrowRate(Town *t)
 
	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;
 
			switch (t->goal[i]) {
 
				case TOWN_GROWTH_WINTER:
 
					if (TileHeight(t->xy) >= GetSnowLine() && t->received[i].old_act == 0 && t->population > 90) return;
 
					break;
 
				case TOWN_GROWTH_DESERT:
 
					if (GetTropicZone(t->xy) == TROPICZONE_DESERT && t->received[i].old_act == 0 && t->population > 60) return;
 
					break;
 
				default:
 
					if (t->goal[i] > t->received[i].old_act) return;
 
					break;
 
			}
 
		}
 
	}
 

	
0 comments (0 inline, 0 general)