From bd580437b83b63c0c100948ab6ec82a73fe1d88f Mon Sep 17 00:00:00 2001 From: bjarni Date: Tue, 28 Dec 2004 17:18:46 +0000 Subject: (svn r1290) Added type to typedef struct Engine and filled in the same data as in type in vehicle it was kind of lame that you should use AircraftVehInfo(), ShipVehInfo() etc. if you wanted to know what type the engine is --- engine.c | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) (limited to 'engine.c') diff --git a/engine.c b/engine.c index 951d5f77c..7286e0c80 100644 --- a/engine.c +++ b/engine.c @@ -119,12 +119,12 @@ void StartupEngines() { Engine *e; const EngineInfo *ei; - uint32 r; + uint32 r, counter = 0; SetupEngineNames(); - for(e=_engines, ei=_engine_info; e != endof(_engines); e++,ei++) { + for(e=_engines, ei=_engine_info; e != endof(_engines); e++, ei++, counter++) { e->age = 0; e->railtype = ei->railtype_climates >> 4; e->flags = 0; @@ -164,6 +164,25 @@ void StartupEngines() e->flags |= ENGINE_AVAILABLE; e->player_avail = 0; } + + /* This sets up type for the engine + It is needed if you want to ask the engine what type it is + It should hopefully be the same as when you ask a vehicle what it is + but using this, you can ask what type an engine number is + even if it is not a vehicle (yet)*/ + e->type = VEH_Train; + if (counter >= ROAD_ENGINES_INDEX) { + e->type = VEH_Road; + if (counter >= SHIP_ENGINES_INDEX) { + e->type = VEH_Ship; + if (counter >= AIRCRAFT_ENGINES_INDEX) { + e->type = VEH_Aircraft; + if (counter >= TOTAL_NUM_ENGINES) { + e->type = VEH_Special; + } + } + } + } } AdjustAvailAircraft(); -- cgit v1.2.3-54-g00ecf