Mercurial > hg > openttd
changeset 4153:deaf630763d3 draft
(svn r5519) Fix: Only list helicopters in the new build window of helidepots and helistations.Suggested by peter1138 & Tron.
Demanded under threat of removal by Tron; no thanks given.
Last commit from here. Got better things to do with life.
author | richk <richk@openttd.org> |
---|---|
date | Wed, 19 Jul 2006 19:20:04 +0000 |
parents | 565a1064b1bf |
children | c8c171a12015 |
files | aircraft_gui.c |
diffstat | 1 files changed, 9 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/aircraft_gui.c +++ b/aircraft_gui.c @@ -20,6 +20,7 @@ #include "viewport.h" #include "player.h" #include "depot.h" +#include "airport.h" #include "vehicle_gui.h" #include "newgrf_engine.h" @@ -117,10 +118,13 @@ int count = 0; int num = NUM_AIRCRAFT_ENGINES; const Engine* e = GetEngine(AIRCRAFT_ENGINES_INDEX); + EngineID engine_id = AIRCRAFT_ENGINES_INDEX; do { - if (HASBIT(e->player_avail, _local_player)) count++; - } while (++e,--num); + if (HASBIT(e->player_avail, _local_player) && + !( (GetAirport(GetStationByTile(w->window_number)->airport_type)->acc_planes == HELICOPTERS_ONLY) && + (AircraftVehInfo(engine_id)->subtype & AIR_CTOL) ) ) count++; + } while (++engine_id, ++e,--num); SetVScrollCount(w, count); } @@ -137,7 +141,9 @@ EngineID selected_id = INVALID_ENGINE; do { - if (HASBIT(e->player_avail, _local_player)) { + if (HASBIT(e->player_avail, _local_player) && + !( (GetAirport(GetStationByTile(w->window_number)->airport_type)->acc_planes == HELICOPTERS_ONLY) && + (AircraftVehInfo(engine_id)->subtype & AIR_CTOL) ) ) { if (sel==0) selected_id = engine_id; if (IS_INT_INSIDE(--pos, -w->vscroll.cap, 0)) { DrawString(x+62, y+7, GetCustomEngineName(engine_id), sel==0 ? 0xC : 0x10);