--- a/src/engine.cpp Tue Jan 08 18:16:26 2008 +0000
+++ b/src/engine.cpp Tue Jan 08 18:25:51 2008 +0000
@@ -38,6 +38,24 @@
};
+void SetupEngines()
+{
+ /* Copy original static engine data */
+ memcpy(&_engine_info, &orig_engine_info, sizeof(orig_engine_info));
+ memcpy(&_rail_vehicle_info, &orig_rail_vehicle_info, sizeof(orig_rail_vehicle_info));
+ memcpy(&_ship_vehicle_info, &orig_ship_vehicle_info, sizeof(orig_ship_vehicle_info));
+ memcpy(&_aircraft_vehicle_info, &orig_aircraft_vehicle_info, sizeof(orig_aircraft_vehicle_info));
+ memcpy(&_road_vehicle_info, &orig_road_vehicle_info, sizeof(orig_road_vehicle_info));
+
+ /* Add type to engines */
+ Engine* e = _engines;
+ do e->type = VEH_TRAIN; while (++e < &_engines[ROAD_ENGINES_INDEX]);
+ do e->type = VEH_ROAD; while (++e < &_engines[SHIP_ENGINES_INDEX]);
+ do e->type = VEH_SHIP; while (++e < &_engines[AIRCRAFT_ENGINES_INDEX]);
+ do e->type = VEH_AIRCRAFT; while (++e < &_engines[TOTAL_NUM_ENGINES]);
+}
+
+
void ShowEnginePreviewWindow(EngineID engine);
void DeleteCustomEngineNames()
@@ -108,16 +126,6 @@
InvalidateWindowClasses(WC_REPLACE_VEHICLE);
}
-void AddTypeToEngines()
-{
- Engine* e = _engines;
-
- do e->type = VEH_TRAIN; while (++e < &_engines[ROAD_ENGINES_INDEX]);
- do e->type = VEH_ROAD; while (++e < &_engines[SHIP_ENGINES_INDEX]);
- do e->type = VEH_SHIP; while (++e < &_engines[AIRCRAFT_ENGINES_INDEX]);
- do e->type = VEH_AIRCRAFT; while (++e < &_engines[TOTAL_NUM_ENGINES]);
-}
-
void StartupEngines()
{
Engine *e;
--- a/src/engine.h Tue Jan 08 18:16:26 2008 +0000
+++ b/src/engine.h Tue Jan 08 18:25:51 2008 +0000
@@ -153,7 +153,7 @@
static const EngineID INVALID_ENGINE = 0xFFFF;
-void AddTypeToEngines();
+void SetupEngines();
void StartupEngines();
--- a/src/misc.cpp Tue Jan 08 18:16:26 2008 +0000
+++ b/src/misc.cpp Tue Jan 08 18:25:51 2008 +0000
@@ -56,8 +56,6 @@
{
AllocateMap(size_x, size_y);
- AddTypeToEngines(); // make sure all engines have a type
-
SetObjectToPlace(SPR_CURSOR_ZZZ, PAL_NONE, VHM_NONE, WC_MAIN_WINDOW, 0);
_pause_game = 0;
--- a/src/newgrf.cpp Tue Jan 08 18:16:26 2008 +0000
+++ b/src/newgrf.cpp Tue Jan 08 18:25:51 2008 +0000
@@ -5063,11 +5063,7 @@
CleanUpGRFTownNames();
/* Copy/reset original engine info data */
- memcpy(&_engine_info, &orig_engine_info, sizeof(orig_engine_info));
- memcpy(&_rail_vehicle_info, &orig_rail_vehicle_info, sizeof(orig_rail_vehicle_info));
- memcpy(&_ship_vehicle_info, &orig_ship_vehicle_info, sizeof(orig_ship_vehicle_info));
- memcpy(&_aircraft_vehicle_info, &orig_aircraft_vehicle_info, sizeof(orig_aircraft_vehicle_info));
- memcpy(&_road_vehicle_info, &orig_road_vehicle_info, sizeof(orig_road_vehicle_info));
+ SetupEngines();
/* Copy/reset original bridge info data
* First, free sprite table data */
@@ -5124,9 +5120,6 @@
/* Reset NewGRF errors. */
ResetNewGRFErrors();
- /* Add engine type to engine data. This is needed for the refit precalculation. */
- AddTypeToEngines();
-
/* Set up the default cargo types */
SetupCargoForClimate(_opt.landscape);
--- a/src/oldloader.cpp Tue Jan 08 18:16:26 2008 +0000
+++ b/src/oldloader.cpp Tue Jan 08 18:25:51 2008 +0000
@@ -1631,8 +1631,6 @@
FixOldStations();
FixOldVehicles();
- AddTypeToEngines();
-
/* We have a new difficulty setting */
_opt.diff.town_council_tolerance = Clamp(_opt.diff_level, 0, 2);