Changeset - r13985:47b19b7e58ed
[Not reviewed]
master
0 1 0
frosch - 14 years ago 2009-12-19 15:51:55
frosch@openttd.org
(svn r18537) -Fix (r17436): Also do not account cargo in statistics, if it was not accepted.
1 file changed with 9 insertions and 9 deletions:
0 comments (0 inline, 0 general)
src/economy.cpp
Show inline comments
 
@@ -929,23 +929,23 @@ static Money DeliverGoods(int num_pieces
 
{
 
	assert(num_pieces > 0);
 

	
 
	/* Update company statistics */
 
	company->cur_economy.delivered_cargo += num_pieces;
 
	SetBit(company->cargo_types, cargo_type);
 

	
 
	const Station *st = Station::Get(dest);
 

	
 
	/* Increase town's counter for some special goods types */
 
	const CargoSpec *cs = CargoSpec::Get(cargo_type);
 
	if (cs->town_effect == TE_FOOD) st->town->new_act_food += num_pieces;
 
	if (cs->town_effect == TE_WATER) st->town->new_act_water += num_pieces;
 

	
 
	/* Give the goods to the industry. */
 
	uint accepted = DeliverGoodsToIndustry(st, cargo_type, num_pieces, src_type == ST_INDUSTRY ? src : INVALID_INDUSTRY);
 

	
 
	/* If this cargo type is always accepted, accept all */
 
	if (HasBit(st->always_accepted, cargo_type)) accepted = num_pieces;
 

	
 
	/* Update company statistics */
 
	company->cur_economy.delivered_cargo += accepted;
 
	if (accepted > 0) SetBit(company->cargo_types, cargo_type);
 

	
 
	/* Increase town's counter for some special goods types */
 
	const CargoSpec *cs = CargoSpec::Get(cargo_type);
 
	if (cs->town_effect == TE_FOOD) st->town->new_act_food += accepted;
 
	if (cs->town_effect == TE_WATER) st->town->new_act_water += accepted;
 

	
 
	/* Determine profit */
 
	Money profit = GetTransportedGoodsIncome(accepted, DistanceManhattan(source_tile, st->xy), days_in_transit, cargo_type);
 

	
0 comments (0 inline, 0 general)