(svn r6737) - Codechange: Sort train engines by their NewGRF specified list position instead of plain EngineID. This brings us back the custom order that was lost when generalized sorting was introduced.
authorpeter1138
Wed, 11 Oct 2006 18:44:02 +0000
changeset 4813 6198df1cf49f
parent 4812 dab5a9855b72
child 4814 5b71fe860fc3
(svn r6737) - Codechange: Sort train engines by their NewGRF specified list position instead of plain EngineID. This brings us back the custom order that was lost when generalized sorting was introduced.
train_gui.c
--- a/train_gui.c	Wed Oct 11 18:35:40 2006 +0000
+++ b/train_gui.c	Wed Oct 11 18:44:02 2006 +0000
@@ -69,7 +69,7 @@
 {
 	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;
 }
@@ -415,7 +415,7 @@
 	if (wagons  == NULL) ExtendEngineListSize((const EngineID**)wagons,  &wagon_length,  25);
 
 	for (j = 0; j < NUM_TRAIN_ENGINES; j++) {
-		EngineID i = GetRailVehAtPosition(j);
+		EngineID i = GetRailVehAtPosition(j); // XXX Can be removed when the wagon list is also sorted.
 		const Engine *e = GetEngine(i);
 		const RailVehicleInfo *rvi = RailVehInfo(i);