12 #include "../stdafx.h"
13 #include "../newgrf_house.h"
15 #include "../landscape.h"
16 #include "../subsidy_func.h"
17 #include "../strings_func.h"
22 #include "../safeguards.h"
30 InitializeBuildingCounts();
42 town = Town::GetByTile(t);
52 UpdateTownRadius(town);
86 if (t == north_tile) {
87 const HouseSpec *hs = HouseSpec::Get(house_type);
88 bool valid_house =
true;
106 if (!valid_house) DoClearSquare(t);
145 SLE_CONDVAR(
Town, supplied[CT_PASSENGERS].old_max, SLE_FILE_U16 | SLE_VAR_U32, 0, 8),
146 SLE_CONDVAR(
Town, supplied[CT_MAIL].old_max, SLE_FILE_U16 | SLE_VAR_U32, 0, 8),
147 SLE_CONDVAR(
Town, supplied[CT_PASSENGERS].new_max, SLE_FILE_U16 | SLE_VAR_U32, 0, 8),
148 SLE_CONDVAR(
Town, supplied[CT_MAIL].new_max, SLE_FILE_U16 | SLE_VAR_U32, 0, 8),
149 SLE_CONDVAR(
Town, supplied[CT_PASSENGERS].old_act, SLE_FILE_U16 | SLE_VAR_U32, 0, 8),
150 SLE_CONDVAR(
Town, supplied[CT_MAIL].old_act, SLE_FILE_U16 | SLE_VAR_U32, 0, 8),
151 SLE_CONDVAR(
Town, supplied[CT_PASSENGERS].new_act, SLE_FILE_U16 | SLE_VAR_U32, 0, 8),
152 SLE_CONDVAR(
Town, supplied[CT_MAIL].new_act, SLE_FILE_U16 | SLE_VAR_U32, 0, 8),
154 SLE_CONDVAR(
Town, supplied[CT_PASSENGERS].old_max, SLE_UINT32, 9, 164),
156 SLE_CONDVAR(
Town, supplied[CT_PASSENGERS].new_max, SLE_UINT32, 9, 164),
158 SLE_CONDVAR(
Town, supplied[CT_PASSENGERS].old_act, SLE_UINT32, 9, 164),
160 SLE_CONDVAR(
Town, supplied[CT_PASSENGERS].new_act, SLE_UINT32, 9, 164),
174 SLE_CONDVAR(
Town, time_until_rebuild, SLE_FILE_U8 | SLE_VAR_U16, 0, 53),
203 static const SaveLoad _town_supplied_desc[] = {
212 static const SaveLoad _town_received_desc[] = {
221 static void Save_HIDS()
226 static void Load_HIDS()
234 static const SaveLoad _tilematrix_desc[] = {
241 return _tilematrix_desc;
244 static void RealSave_Town(
Town *t)
251 for (
int i = TE_BEGIN; i <
NUM_TE; i++) {
264 static void Save_TOWN()
269 SlSetArrayIndex(t->
index);
274 static void Load_TOWN()
285 for (
int i = TE_BEGIN; i <
TE_END; i++) {
289 if (t->townnamegrfid == 0 && !
IsInsideMM(t->townnametype, SPECSTR_TOWNNAME_START, SPECSTR_TOWNNAME_LAST + 1) &&
GetStringTab(t->townnametype) != TEXT_TAB_OLD_CUSTOM) {
321 {
'HIDS', Save_HIDS, Load_HIDS, NULL, NULL, CH_ARRAY },