(svn r1695) -Fix: I broke maximum speed sorting for anything but trains with the new acceleration. Sorry

This commit is contained in:
Celestar 2005-01-27 11:33:14 +00:00
parent 1bdd01867a
commit 6eec07257a
1 changed files with 14 additions and 9 deletions

View File

@ -302,17 +302,22 @@ int CDECL VehicleMaxSpeedSorter(const void *a, const void *b)
int max_speed_a = 0xFFFF, max_speed_b = 0xFFFF;
int r;
const Vehicle *ua = va, *ub = vb;
do {
if (RailVehInfo(ua->engine_type)->max_speed != 0)
max_speed_a = min(max_speed_a, RailVehInfo(ua->engine_type)->max_speed);
} while ((ua = ua->next) != NULL);
do {
if (RailVehInfo(ub->engine_type)->max_speed != 0)
max_speed_b = min(max_speed_b, RailVehInfo(ub->engine_type)->max_speed);
} while ((ub = ub->next) != NULL);
if (va->type == VEH_Train && vb->type == VEH_Train) {
do {
if (RailVehInfo(ua->engine_type)->max_speed != 0)
max_speed_a = min(max_speed_a, RailVehInfo(ua->engine_type)->max_speed);
} while ((ua = ua->next) != NULL);
r = max_speed_a - max_speed_b;
do {
if (RailVehInfo(ub->engine_type)->max_speed != 0)
max_speed_b = min(max_speed_b, RailVehInfo(ub->engine_type)->max_speed);
} while ((ub = ub->next) != NULL);
r = max_speed_a - max_speed_b;
} else {
r = va->max_speed - vb->max_speed;
}
VEHICLEUNITNUMBERSORTER(r, va, vb);