diff options
author | bjarni <bjarni@openttd.org> | 2005-01-02 17:23:04 +0000 |
---|---|---|
committer | bjarni <bjarni@openttd.org> | 2005-01-02 17:23:04 +0000 |
commit | 29d8c5bb5056dc8efa6c953595056697fc876760 (patch) | |
tree | 5fb0d626bc9f756094332a0dd97b98d42fce0a55 /engine.c | |
parent | a11f46fed48fa6606f2d84c8f96d79efbad83197 (diff) | |
download | openttd-29d8c5bb5056dc8efa6c953595056697fc876760.tar.xz |
(svn r1323) Adding autoreplace feature
This feature works much like autorenew, but it will get you a new engine type instead of a new one of the same type. Once
ordered, it will automatically replace the engines while they visits a depot. The GUI for setting this up have been added on the
vehicle overview windows
Note: autorenew is now autoreplace, but to the same engine type
Nice new features, that was added to make this possible
- windows can now have two independant vertical scrollbars
- CMD_SHOW_NO_ERROR have been added as a flag for DoCommandP. It will make it do the action instead of showing the red box with
estimated costs even if shift is pressed
- fixed problem where enginetypes where not initialized when loading a game. It's now done in InitializeGame()
Diffstat (limited to 'engine.c')
-rw-r--r-- | engine.c | 38 |
1 files changed, 24 insertions, 14 deletions
@@ -115,6 +115,29 @@ static void CalcEngineReliability(Engine *e) } } +void AddTypeToEngines() +{ + Engine *e; + uint32 counter = 0; + + for(e=_engines; e != endof(_engines); e++, counter++) { + + 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; + } + } + } + } + } +} + void StartupEngines() { Engine *e; @@ -123,8 +146,8 @@ void StartupEngines() SetupEngineNames(); - for(e=_engines, ei=_engine_info; e != endof(_engines); e++, ei++, counter++) { + e->age = 0; e->railtype = ei->railtype_climates >> 4; e->flags = 0; @@ -170,19 +193,6 @@ void StartupEngines() 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(); |