summaryrefslogtreecommitdiff
path: root/town_cmd.c
diff options
context:
space:
mode:
authorpasky <pasky@openttd.org>2005-03-20 00:32:26 +0000
committerpasky <pasky@openttd.org>2005-03-20 00:32:26 +0000
commit087d78d4655c36996396b3e98d489891d767252c (patch)
treeae81e0bd3eb672542999bc9ef402dd1d8e63701d /town_cmd.c
parent1990c139d55324c405eca579bdfd7be774f3a9ee (diff)
downloadopenttd-087d78d4655c36996396b3e98d489891d767252c.tar.xz
(svn r2033) - Fix: Fix some more desync by saving the town growth frequency iterator _cur_town_iter. Needed to bump a svg revision for that thanks to the braindead SlGlob thing, or at least I don't know how to do it without bumping it.
Diffstat (limited to 'town_cmd.c')
-rw-r--r--town_cmd.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/town_cmd.c b/town_cmd.c
index 718011396..e96b3d0ab 100644
--- a/town_cmd.c
+++ b/town_cmd.c
@@ -432,16 +432,14 @@ static void TownTickHandler(Town *t)
void OnTick_Town(void)
{
- static int counter;
-
if (_game_mode == GM_EDITOR)
return;
/* Make sure each town's tickhandler invocation frequency is about the
* same - TOWN_GROWTH_FREQUENCY - independent on the number of towns. */
- for (counter += GetTownPoolSize();
- counter >= TOWN_GROWTH_FREQUENCY;
- counter -= TOWN_GROWTH_FREQUENCY) {
+ for (_cur_town_iter += GetTownPoolSize();
+ _cur_town_iter >= TOWN_GROWTH_FREQUENCY;
+ _cur_town_iter -= TOWN_GROWTH_FREQUENCY) {
uint32 i = _cur_town_ctr;
Town *t;
@@ -1914,6 +1912,7 @@ void InitializeTowns(void)
s->cargo_type = 0xFF;
_cur_town_ctr = 0;
+ _cur_town_iter = 0;
_total_towns = 0;
_town_sort_dirty = true;
}