diff src/economy.cpp @ 12991:d3df6e84bf71 draft

(svn r17485) -Change [FS2459]: make the performance ratings harder to exploit; only count profitable vehicles and recently serviced stations.
author rubidium <rubidium@openttd.org>
date Wed, 09 Sep 2009 08:22:21 +0000
parents 3a0bbffd1a58
children 6eb3f749890a
line wrap: on
line diff
--- a/src/economy.cpp
+++ b/src/economy.cpp
@@ -166,7 +166,7 @@
 		FOR_ALL_VEHICLES(v) {
 			if (v->owner != owner) continue;
 			if (IsCompanyBuildableVehicleType(v->type) && v->IsPrimaryVehicle()) {
-				num++;
+				if (v->profit_last_year > 0) num++; // For the vehicle score only count profitable vehicles
 				if (v->age > 730) {
 					/* Find the vehicle with the lowest amount of profit */
 					if (min_profit_first || min_profit > v->profit_last_year) {
@@ -191,7 +191,8 @@
 		const Station *st;
 
 		FOR_ALL_STATIONS(st) {
-			if (st->owner == owner) num += CountBits((byte)st->facilities);
+			/* Only count stations that are actually serviced */
+			if (st->owner == owner && (st->time_since_load <= 20 || st->time_since_unload <= 20)) num += CountBits((byte)st->facilities);
 		}
 		_score_part[owner][SCORE_STATIONS] = num;
 	}