From 47ba8389b50a54dec1c08e7af5ba08813857d759 Mon Sep 17 00:00:00 2001 From: peter1138 Date: Sun, 20 Jul 2008 21:21:51 +0000 Subject: (svn r13760) -Codechange: With multiple NewGRF engine sets, engine IDs may not be allocated in the order expected by GRF authors, so sort by 'list position' instead of engine ID for all vehicle types. --- src/build_vehicle_gui.cpp | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) (limited to 'src/build_vehicle_gui.cpp') diff --git a/src/build_vehicle_gui.cpp b/src/build_vehicle_gui.cpp index f84f7b2b7..cfc67df61 100644 --- a/src/build_vehicle_gui.cpp +++ b/src/build_vehicle_gui.cpp @@ -71,7 +71,7 @@ static int CDECL EngineNumberSorter(const void *a, const void *b) { const EngineID va = *(const EngineID*)a; const EngineID vb = *(const EngineID*)b; - int r = va - vb; + int r = ListPositionOfEngine(va) - ListPositionOfEngine(vb); return _internal_sort_order ? -r : r; } @@ -193,15 +193,6 @@ static int CDECL TrainEnginePowerVsRunningCostSorter(const void *a, const void * return _internal_sort_order ? -r : r; } -static int CDECL TrainEngineNumberSorter(const void *a, const void *b) -{ - const EngineID va = *(const EngineID*)a; - const EngineID vb = *(const EngineID*)b; - int r = ListPositionOfEngine(va) - ListPositionOfEngine(vb); - - return _internal_sort_order ? -r : r; -} - static int CDECL TrainEngineCapacitySorter(const void *a, const void *b) { int va = RailVehInfo(*(const EngineID*)a)->capacity; @@ -381,7 +372,7 @@ static int CDECL AircraftEngineCargoSorter(const void *a, const void *b) static EngList_SortTypeFunction * const _sorter[][10] = {{ /* Trains */ - &TrainEngineNumberSorter, + &EngineNumberSorter, &TrainEngineCostSorter, &TrainEngineSpeedSorter, &TrainEnginePowerSorter, -- cgit v1.2.3-54-g00ecf