changeset 18459:610fb049192c draft

(svn r23303) -Add: economy.fund_buildings, to disallow funding buildings
author truebrain <truebrain@openttd.org>
date Wed, 23 Nov 2011 16:10:18 +0000
parents a21b17172ad7
children 2596ab16da1f
files src/lang/english.txt src/settings_type.h src/table/settings.ini src/town_cmd.cpp
diffstat 4 files changed, 16 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/lang/english.txt
+++ b/src/lang/english.txt
@@ -1142,6 +1142,7 @@
 STR_CONFIG_SETTING_AUTOSCROLL                                   :{LTBLUE}Pan window when mouse is at the edge: {ORANGE}{STRING1}
 STR_CONFIG_SETTING_BRIBE                                        :{LTBLUE}Allow bribing of the local authority: {ORANGE}{STRING1}
 STR_CONFIG_SETTING_ALLOW_EXCLUSIVE                              :{LTBLUE}Allow buying exclusive transport rights: {ORANGE}{STRING1}
+STR_CONFIG_SETTING_ALLOW_FUND_BUILDINGS                         :{LTBLUE}Allow funding buildings: {ORANGE}{STRING1}
 STR_CONFIG_SETTING_ALLOW_FUND_ROAD                              :{LTBLUE}Allow funding local road reconstruction: {ORANGE}{STRING1}
 STR_CONFIG_SETTING_ALLOW_GIVE_MONEY                             :{LTBLUE}Allow sending money to other companies: {ORANGE}{STRING1}
 STR_CONFIG_SETTING_FREIGHT_TRAINS                               :{LTBLUE}Weight multiplier for freight to simulate heavy trains: {ORANGE}{STRING}
--- a/src/settings_type.h
+++ b/src/settings_type.h
@@ -395,6 +395,7 @@
 	uint8  feeder_payment_share;             ///< percentage of leg payment to virtually pay in feeder systems
 	byte   dist_local_authority;             ///< distance for town local authority, default 20
 	bool   exclusive_rights;                 ///< allow buying exclusive rights
+	bool   fund_buildings;                   ///< allow funding new buildings
 	bool   fund_roads;                       ///< allow funding local road reconstruction
 	bool   give_money;                       ///< allow giving other companies money
 	bool   mod_road_rebuild;                 ///< roadworks remove unneccesary RoadBits
--- a/src/table/settings.ini
+++ b/src/table/settings.ini
@@ -1008,6 +1008,14 @@
 
 [SDT_BOOL]
 base     = GameSettings
+var      = economy.fund_buildings
+from     = 165
+def      = true
+str      = STR_CONFIG_SETTING_ALLOW_FUND_BUILDINGS
+proc     = RedrawTownAuthority
+
+[SDT_BOOL]
+base     = GameSettings
 var      = economy.fund_roads
 from     = 160
 def      = true
--- a/src/town_cmd.cpp
+++ b/src/town_cmd.cpp
@@ -2578,6 +2578,9 @@
 
 static CommandCost TownActionFundBuildings(Town *t, DoCommandFlag flags)
 {
+	/* Check if it's allowed to buy the rights */
+	if (!_settings_game.economy.fund_buildings) return CMD_ERROR;
+
 	if (flags & DC_EXEC) {
 		/* Build next tick */
 		t->grow_counter = 1;
@@ -2680,6 +2683,9 @@
 			/* Is the company not able to buy exclusive rights ? */
 			if (cur == TACT_BUY_RIGHTS && !_settings_game.economy.exclusive_rights) continue;
 
+			/* Is the company not able to fund buildings ? */
+			if (cur == TACT_FUND_BUILDINGS && !_settings_game.economy.fund_buildings) continue;
+
 			/* Is the company not able to fund local road reconstruction? */
 			if (cur == TACT_ROAD_REBUILD && !_settings_game.economy.fund_roads) continue;