# HG changeset patch # User rubidium # Date 1188564321 0 # Node ID 16bf3e859669cb1538854e5605acc37aa45a4e83 # Parent 40e457c0a8ac92bb9dc389657e1670867d198f57 (svn r11013) -Fix [FS#1171]: MoveGoodsToStation's search area is too small as it assumed a lower maximum catchment area than the real maximum catchment area. Based on a patch by PhilSophus. diff -r 40e457c0a8ac -r 16bf3e859669 src/station.h --- a/src/station.h Thu Aug 30 21:11:12 2007 +0000 +++ b/src/station.h Fri Aug 31 12:45:21 2007 +0000 @@ -222,7 +222,9 @@ CA_BUS = 3, CA_TRUCK = 3, CA_TRAIN = 4, - CA_DOCK = 5 + CA_DOCK = 5, + + MAX_CATCHMENT = 10, ///< Airports have a catchment up to this number. }; void ModifyStationRatingAround(TileIndex tile, PlayerID owner, int amount, uint radius); diff -r 40e457c0a8ac -r 16bf3e859669 src/station_cmd.cpp --- a/src/station_cmd.cpp Thu Aug 30 21:11:12 2007 +0000 +++ b/src/station_cmd.cpp Fri Aug 31 12:45:21 2007 +0000 @@ -2597,9 +2597,9 @@ if (_patches.modified_catchment) { w_prod = w; h_prod = h; - w += 16; - h += 16; - max_rad = 8; + w += 2 * MAX_CATCHMENT; + h += 2 * MAX_CATCHMENT; + max_rad = MAX_CATCHMENT; } else { w_prod = 0; h_prod = 0; @@ -2624,10 +2624,10 @@ ((st->facilities & ~FACIL_TRUCK_STOP) != 0 || !IsCargoInClass(type, CC_PASSENGERS))) { // if we have other fac. than a cargo bay or the cargo is not passengers if (_patches.modified_catchment) { // min and max coordinates of the producer relative - const int x_min_prod = 9; - const int x_max_prod = 8 + w_prod; - const int y_min_prod = 9; - const int y_max_prod = 8 + h_prod; + const int x_min_prod = max_rad + 1; + const int x_max_prod = max_rad + w_prod; + const int y_min_prod = max_rad + 1; + const int y_max_prod = max_rad + h_prod; int rad = FindCatchmentRadius(st);