From 1a81c1cedd129bcb3429cc898f1577539104e466 Mon Sep 17 00:00:00 2001 From: maedhros Date: Wed, 18 Apr 2007 14:23:30 +0000 Subject: (svn r9667) -Feature: Add the concept of cities. A (configurable) proportion of towns can start off larger, and will grow twice as quickly as other towns. They can also be placed specifically in the scenario editor. Thanks to TheJosh for the initial patch and the idea. --- src/town.h | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'src/town.h') diff --git a/src/town.h b/src/town.h index c181f1b25..0924938c1 100644 --- a/src/town.h +++ b/src/town.h @@ -141,6 +141,9 @@ struct Town { /* Index in town array */ TownID index; + /* If this is a larger town, and should grow more quickly. */ + bool larger_town; + /* NOSAVE: UpdateTownRadius updates this given the house count. */ uint16 radius[5]; @@ -181,6 +184,12 @@ struct HouseSpec { const struct GRFFile *grffile; ///< grf file that introduced this house }; +enum TownSizeMode { + TSM_RANDOM, + TSM_FIXED, + TSM_CITY +}; + VARDEF HouseSpec _house_specs[HOUSE_MAX]; uint32 GetWorldPopulation(); @@ -189,7 +198,7 @@ void UpdateTownVirtCoord(Town *t); void InitializeTown(); void ShowTownViewWindow(TownID town); void ExpandTown(Town *t); -Town *CreateRandomTown(uint attempts, uint size_mode); +Town *CreateRandomTown(uint attempts, TownSizeMode mode, uint size); enum { ROAD_REMOVE = 0, -- cgit v1.2.3-54-g00ecf