(svn r1504) enummed town ratings (Jango)
authorcelestar
Fri, 14 Jan 2005 09:20:12 +0000
changeset 1005 8c6a9bf44bf1
parent 1004 edbdc62fbf24
child 1006 c55d1a0359a3
(svn r1504) enummed town ratings (Jango)
industry_cmd.c
road_cmd.c
town.h
town_cmd.c
town_gui.c
tree_cmd.c
tunnelbridge_cmd.c
--- a/industry_cmd.c	Fri Jan 14 00:14:13 2005 +0000
+++ b/industry_cmd.c	Fri Jan 14 09:20:12 2005 +0000
@@ -408,7 +408,7 @@
 	if (flags & DC_EXEC) {
 		DeleteIndustry(i);
 		CreateEffectVehicleAbove(x + 8,y + 8, 2, EV_DEMOLISH);
-		ChangeTownRating(t, -1500, -1000);	// penalty is 1500
+		ChangeTownRating(t, RATING_INDUSTRY_DOWN_STEP, RATING_INDUSTRY_MINIMUM);
 	}
 
 	return (_price.build_industry >> 5) * _industry_type_costs[i->type]*2;
--- a/road_cmd.c	Fri Jan 14 00:14:13 2005 +0000
+++ b/road_cmd.c	Fri Jan 14 09:20:12 2005 +0000
@@ -212,7 +212,7 @@
 				// checks if the owner is town than decrease town rating by 50 until you have
 				// a "Poor" town rating
 				if(_map_owner[tile] == OWNER_TOWN && _game_mode != GM_EDITOR)
-					ChangeTownRating(t, -_road_remove_cost[(byte)edge_road], -100);
+					ChangeTownRating(t, -_road_remove_cost[(byte)edge_road], RATING_ROAD_MINIMUM);
 
 				_map5[tile] ^= c;
 				if ((_map5[tile]&0xF) == 0)
--- a/town.h	Fri Jan 14 00:14:13 2005 +0000
+++ b/town.h	Fri Jan 14 09:20:12 2005 +0000
@@ -89,6 +89,42 @@
 	INDUSTRY_REMOVE = 2
 };
 
+enum {
+	// These refer to the maximums, so Appalling is -1000 to -400
+	// MAXIMUM RATINGS BOUNDARIES
+	RATING_MINIMUM 		= -1000,
+	RATING_APPALLING 	= -400,
+	RATING_VERYPOOR 	= -200,
+	RATING_POOR 			= 0,
+	RATING_MEDIOCRE		= 200,
+	RATING_GOOD				= 400,
+	RATING_VERYGOOD		= 600,
+	RATING_EXCELLENT	= 800,
+	RATING_OUTSTANDING= 1000, 	// OUTSTANDING
+
+	RATING_MAXIMUM = RATING_OUTSTANDING,
+
+	// RATINGS AFFECTING NUMBERS
+	RATING_TREE_DOWN_STEP = -35,
+	RATING_TREE_MINIMUM = RATING_MINIMUM,
+	RATING_TREE_UP_STEP = 7,
+	RATING_TREE_MAXIMUM = 220,
+
+	RATING_TUNNEL_BRIDGE_DOWN_STEP = -250,
+	RATING_TUNNEL_BRIDGE_MINIMUM = 0,
+
+	RATING_INDUSTRY_DOWN_STEP = -1500,
+	RATING_INDUSTRY_MINIMUM = RATING_MINIMUM,
+
+	RATING_ROAD_DOWN_STEP = -50,
+	RATING_ROAD_MINIMUM = -100,
+	RATING_HOUSE_MINIMUM = RATING_MINIMUM,
+
+	RATING_BRIBE_UP_STEP = 200,
+	RATING_BRIBE_MAXIMUM = 800,
+	RATING_BRIBE_DOWN_TO = -50 					// XXX SHOULD BE SOMETHING LOWER?	
+};
+
 bool CheckforTownRating(uint tile, uint32 flags, Town *t, byte type);
 
 VARDEF Town _towns[70];
--- a/town_cmd.c	Fri Jan 14 00:14:13 2005 +0000
+++ b/town_cmd.c	Fri Jan 14 09:20:12 2005 +0000
@@ -322,7 +322,7 @@
 	}
 
 	if (flags & DC_EXEC) {
-		ChangeTownRating(t, -rating, -1000);
+		ChangeTownRating(t, -rating, RATING_HOUSE_MINIMUM);
 		ClearTownHouse(t, tile);
 	}
 
@@ -1570,13 +1570,12 @@
 		/*	decrease by a lot!
 		 *	ChangeTownRating is only for stuff in demolishing. Bribe failure should
 		 *	be independent of any cheat settings
-		 *	ChangeTownRating(c, -1000, -50);
 		 */
 		rating = t->ratings[_current_player];
 		if (rating > -50)
-			t->ratings[_current_player] = -50;
+			t->ratings[_current_player] = RATING_BRIBE_DOWN_TO;
 	} else {
-		ChangeTownRating(t, 200, 800);
+		ChangeTownRating(t, RATING_BRIBE_UP_STEP, RATING_BRIBE_MAXIMUM);
 	}
 }
 
--- a/town_gui.c	Fri Jan 14 00:14:13 2005 +0000
+++ b/town_gui.c	Fri Jan 14 09:20:12 2005 +0000
@@ -119,13 +119,13 @@
 					SetDParam(2, GetPlayerNameString(p->index, 3));
 
 					r = t->ratings[p->index];
-					(str = STR_3035_APPALLING, r <= -400) ||	// Apalling
-					(str++, r <= -200) ||											// Very Poor
-					(str++, r <= 0) ||												// Poor
-					(str++, r <= 200) ||											// Mediocore
-					(str++, r <= 400) ||											// Good
-					(str++, r <= 600) ||											// Very Good
-					(str++, r <= 800) ||											// Excellent
+					(str = STR_3035_APPALLING, r <= RATING_APPALLING) ||	// Apalling
+					(str++, r <= RATING_VERYPOOR) ||											// Very Poor
+					(str++, r <= RATING_POOR) ||												// Poor
+					(str++, r <= RATING_MEDIOCRE) ||											// Mediocore
+					(str++, r <= RATING_GOOD) ||											// Good
+					(str++, r <= RATING_VERYGOOD) ||											// Very Good
+					(str++, r <= RATING_EXCELLENT) ||											// Excellent
 					(str++, true);														// Outstanding
 
 					/*	WARNING ugly hack!
--- a/tree_cmd.c	Fri Jan 14 00:14:13 2005 +0000
+++ b/tree_cmd.c	Fri Jan 14 09:20:12 2005 +0000
@@ -197,7 +197,7 @@
 					if (_game_mode != GM_EDITOR && _current_player < MAX_PLAYERS) {
 						Town *t = ClosestTownFromTile(ti.tile, _patches.dist_local_authority);
 						if (t != NULL)
-							ChangeTownRating(t, 7, 220);
+							ChangeTownRating(t, RATING_TREE_UP_STEP, RATING_TREE_MAXIMUM);
 					}
 					m2 = 0;
 					if ( (ti.map5 & 0x1C) == 4 ) {
@@ -350,7 +350,7 @@
 	if (flags & DC_EXEC && _current_player < MAX_PLAYERS) {
 		Town *t = ClosestTownFromTile(tile, _patches.dist_local_authority);
 		if (t != NULL)
-			ChangeTownRating(t, -35, -1000);
+			ChangeTownRating(t, RATING_TREE_DOWN_STEP, RATING_TREE_MINIMUM);
 	}
 
 	num = (_map5[tile] >> 6) + 1;
--- a/tunnelbridge_cmd.c	Fri Jan 14 00:14:13 2005 +0000
+++ b/tunnelbridge_cmd.c	Fri Jan 14 09:20:12 2005 +0000
@@ -643,7 +643,7 @@
 		UpdateSignalsOnSegment(tile, _updsignals_tunnel_dir[tile_dir]);
 		UpdateSignalsOnSegment(endtile, _updsignals_tunnel_dir[endtile_dir]);
 		if (_map_owner[tile] == OWNER_TOWN && _game_mode != GM_EDITOR)
-			ChangeTownRating(t, -250, 0);
+			ChangeTownRating(t, RATING_TUNNEL_BRIDGE_DOWN_STEP, RATING_TUNNEL_BRIDGE_MINIMUM);
 	}
 	return  _price.clear_tunnel * (length + 1);
 }
@@ -758,10 +758,10 @@
 		uint c = tile;
 		uint16 new_data;
 
-		//checks if the owner is town then decrease town rating by 250 until
+		//checks if the owner is town then decrease town rating by RATING_TUNNEL_BRIDGE_DOWN_STEP until
 		// you have a "Poor" (0) town rating
 		if (_map_owner[tile] == OWNER_TOWN && _game_mode != GM_EDITOR)
-			ChangeTownRating(t, -250, 0);
+			ChangeTownRating(t, RATING_TUNNEL_BRIDGE_DOWN_STEP, RATING_TUNNEL_BRIDGE_MINIMUM);
 
 		do {
 			m5 = _map5[c];