Change: Switch town growth rate and counter to actual game ticks (#6763)

This commit is contained in:
Pavel Stupnikov
2018-05-02 22:01:30 +03:00
committed by frosch
parent 61515c9abd
commit fef8b831a9
8 changed files with 68 additions and 37 deletions

View File

@@ -2969,6 +2969,19 @@ bool AfterLoadGame()
#endif
}
if (IsSavegameVersionBefore(198)) {
/* Convert towns growth_rate and grow_counter to ticks */
Town *t;
FOR_ALL_TOWNS(t) {
/* 0x8000 = TOWN_GROWTH_RATE_CUSTOM previously */
if (t->growth_rate & 0x8000) SetBit(t->flags, TOWN_CUSTOM_GROWTH);
if (t->growth_rate != TOWN_GROWTH_RATE_NONE) {
t->growth_rate = TownTicksToGameTicks(t->growth_rate & ~0x8000);
}
/* Add t->index % TOWN_GROWTH_TICKS to spread growth across ticks. */
t->grow_counter = TownTicksToGameTicks(t->grow_counter) + t->index % TOWN_GROWTH_TICKS;
}
}
/* Station acceptance is some kind of cache */
if (IsSavegameVersionBefore(127)) {