--- city.c.orig Sat Jun 8 17:49:12 2002 +++ city.c Sat Jun 8 17:59:55 2002 @@ -2060,13 +2060,14 @@ if (!capital) dist = 36; else { - int tmp = map_distance(capital->x, capital->y, pcity->x, pcity->y); - dist = MIN(36, tmp); + dist = map_distance(capital->x, capital->y, pcity->x, pcity->y); } - } - dist = + dist = dist * g->corruption_distance_factor + g->extra_corruption_distance; - val = trade * dist / g->corruption_modifier; + } + val = trade * MIN(36, dist) / g->corruption_modifier; + + if (val>trade) val = trade; if (city_got_building(pcity, B_COURTHOUSE) || city_got_building(pcity, B_PALACE)) val /= 2;