changeset 4161:d21e037bdcb9 draft

(svn r5594) Be more strict what's allowed to be built in a hangar: if the airport can't handle planes/helicopters don't present and disallow building planes/helicopters - the latter case wasn't covered yet. Also remove an error message about building aircraft which can't be triggered by a normal client
author tron <tron@openttd.org>
date Sat, 22 Jul 2006 14:43:53 +0000
parents f0d7b63fb6b0
children 925b9f1c688e
files aircraft_cmd.c aircraft_gui.c lang/american.txt lang/brazilian_portuguese.txt lang/catalan.txt lang/czech.txt lang/danish.txt lang/dutch.txt lang/english.txt lang/estonian.txt lang/finnish.txt lang/french.txt lang/german.txt lang/hungarian.txt lang/icelandic.txt lang/italian.txt lang/norwegian.txt lang/polish.txt lang/portuguese.txt lang/romanian.txt lang/slovak.txt lang/spanish.txt lang/swedish.txt lang/turkish.txt lang/unfinished/afrikaans.txt lang/unfinished/bulgarian.txt lang/unfinished/ukrainian.txt
diffstat 27 files changed, 43 insertions(+), 56 deletions(-) [+]
line wrap: on
line diff
--- a/aircraft_cmd.c
+++ b/aircraft_cmd.c
@@ -196,7 +196,7 @@
 	Vehicle *vl[3], *v, *u, *w;
 	UnitID unit_num;
 	const AircraftVehicleInfo *avi;
-	const Station *st2;
+	const AirportFTAClass* ap;
 	Engine *e;
 
 	if (!IsEngineBuildable(p1, VEH_Aircraft)) return_cmd_error(STR_ENGINE_NOT_BUILDABLE);
@@ -211,18 +211,19 @@
 	SET_EXPENSES_TYPE(EXPENSES_NEW_VEHICLES);
 
 	avi = AircraftVehInfo(p1);
+
+	// Prevent building aircraft types at places which can't handle them
+	ap = GetAirport(GetStationByTile(tile)->airport_type);
+	if ((avi->subtype & AIR_CTOL ? HELICOPTERS_ONLY : AIRCRAFT_ONLY) == ap->acc_planes) {
+		return CMD_ERROR;
+	}
+
 	// allocate 2 or 3 vehicle structs, depending on type
 	if (!AllocateVehicles(vl, avi->subtype & AIR_CTOL ? 2 : 3) ||
 			IsOrderPoolFull()) {
 		return_cmd_error(STR_00E1_TOO_MANY_VEHICLES_IN_GAME);
 	}
 
-	// prevent building of aircraft in helidepot/helistation
-	st2 = GetStationByTile(tile);
-	if ((avi->subtype & AIR_CTOL) && (GetAirport(st2->airport_type)->acc_planes == HELICOPTERS_ONLY)) {
-		return_cmd_error(STR_AIRPORT_HAS_NO_RUNWAY);
-	}
-
 	unit_num = HASBIT(p2, 0) ? 0 : GetFreeUnitNumber(VEH_Aircraft);
 	if (unit_num > _patches.max_aircraft)
 		return_cmd_error(STR_00E1_TOO_MANY_VEHICLES_IN_GAME);
--- a/aircraft_gui.c
+++ b/aircraft_gui.c
@@ -112,47 +112,58 @@
 {
 	switch (e->event) {
 	case WE_PAINT: {
-		if (w->window_number == 0) SETBIT(w->disabled_state, 5);
+		TileIndex tile = w->window_number;
+		const AirportFTAClass* ap;
+
+		if (tile == 0) SETBIT(w->disabled_state, 5);
+
+		ap = GetAirport(GetStationByTile(tile)->airport_type);
 
 		{
 			int count = 0;
-			int num = NUM_AIRCRAFT_ENGINES;
-			const Engine* e = GetEngine(AIRCRAFT_ENGINES_INDEX);
-			EngineID engine_id = AIRCRAFT_ENGINES_INDEX;
+			EngineID eid;
+
+			for (eid = AIRCRAFT_ENGINES_INDEX; eid < AIRCRAFT_ENGINES_INDEX + NUM_AIRCRAFT_ENGINES; eid++) {
+				const AircraftVehicleInfo* avi;
 
-			do {
-				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);
+				if (!HASBIT(GetEngine(eid)->player_avail, _local_player)) continue;
+
+				avi = AircraftVehInfo(eid);
+				if ((avi->subtype & AIR_CTOL ? HELICOPTERS_ONLY : AIRCRAFT_ONLY) == ap->acc_planes) continue;
+
+				count++;
+			}
 			SetVScrollCount(w, count);
 		}
 
 		DrawWindowWidgets(w);
 
 		{
-			int num = NUM_AIRCRAFT_ENGINES;
-			const Engine* e = GetEngine(AIRCRAFT_ENGINES_INDEX);
 			int x = 2;
 			int y = 15;
 			int sel = WP(w,buildtrain_d).sel_index;
 			int pos = w->vscroll.pos;
-			EngineID engine_id = AIRCRAFT_ENGINES_INDEX;
 			EngineID selected_id = INVALID_ENGINE;
+			EngineID eid;
+
+			for (eid = AIRCRAFT_ENGINES_INDEX; eid < AIRCRAFT_ENGINES_INDEX + NUM_AIRCRAFT_ENGINES; eid++) {
+				const AircraftVehicleInfo* avi;
+
+				if (!HASBIT(GetEngine(eid)->player_avail, _local_player)) continue;
+
+				avi = AircraftVehInfo(eid);
+				if ((avi->subtype & AIR_CTOL ? HELICOPTERS_ONLY : AIRCRAFT_ONLY) == ap->acc_planes) continue;
 
-			do {
-				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);
-						DrawAircraftEngine(x+29, y+10, engine_id, GetEnginePalette(engine_id, _local_player));
-						y += 24;
-					}
-					sel--;
+				if (sel == 0) selected_id = eid;
+
+				if (IS_INT_INSIDE(--pos, -w->vscroll.cap, 0)) {
+					DrawString(x + 62, y + 7, GetCustomEngineName(eid), sel == 0 ? 0xC : 0x10);
+					DrawAircraftEngine(x + 29, y + 10, eid, GetEnginePalette(eid, _local_player));
+					y += 24;
 				}
-			} while (++engine_id, ++e,--num);
+
+				sel--;
+			}
 
 			WP(w,buildtrain_d).sel_engine = selected_id;
 
--- a/lang/american.txt
+++ b/lang/american.txt
@@ -2830,7 +2830,6 @@
 STR_REPLACE_ENGINE_WAGON_SELECT                                 :{BLACK}Replacing: {ORANGE}{SKIP}{SKIP}{STRING}
 STR_REPLACE_ENGINE_WAGON_SELECT_HELP                            :{BLACK} EXPERIMENTAL FEATURE {}Switch between engine and car replacement windows.{}Car replacement will only be done if the new car can be refitted into carrying the same type of cargo as the old one. This is checked for each car when the actual replacement takes place.
 STR_ENGINE_NOT_BUILDABLE                                        :{WHITE}Engine is not buildable
-STR_AIRPORT_HAS_NO_RUNWAY                                       :{WHITE}Airport has no runway
 
 STR_ENGINES                                                     :Engines
 STR_WAGONS                                                      :Cars
--- a/lang/brazilian_portuguese.txt
+++ b/lang/brazilian_portuguese.txt
@@ -2829,7 +2829,6 @@
 STR_REPLACE_ENGINE_WAGON_SELECT                                 :{BLACK}Substituindo: {ORANGE}{SKIP}{SKIP}{STRING}
 STR_REPLACE_ENGINE_WAGON_SELECT_HELP                            :{BLACK} EXPERIMENTAL {}Troca entre substituir mquinas e substituir vages.{}S haver a substituio se puder haver o reacondicionamento para carregar o mesmo tipo de carga. Essa checagem ocorre para cada vago enquanto a substituio ocorre.
 STR_ENGINE_NOT_BUILDABLE                                        :{WHITE}A locomotiva no pode ser construda
-STR_AIRPORT_HAS_NO_RUNWAY                                       :{WHITE}Aeroporto no possui pista
 
 STR_ENGINES                                                     :Motores
 STR_WAGONS                                                      :Vages
--- a/lang/catalan.txt
+++ b/lang/catalan.txt
@@ -2825,7 +2825,6 @@
 STR_REPLACE_ENGINE_WAGON_SELECT                                 :{BLACK}Sustituint: {ORANGE}{SKIP}{SKIP}{STRING}
 STR_REPLACE_ENGINE_WAGON_SELECT_HELP                            :{BLACK} CARACTERSTICA EXPERIMENTAL {}Alternar entre finestres de sustituci de vagons i de motors{}La sustituci del vag noms tindr lloc si el nou vag pot ser reformat per a admetre el mateix tipus de crrega que el vell. A es comprova per a cada vag quan el reemplaament es produeix.
 STR_ENGINE_NOT_BUILDABLE                                        :{WHITE}El motor no es pot construir
-STR_AIRPORT_HAS_NO_RUNWAY                                       :{WHITE}L'aeroport no te pista
 
 STR_ENGINES                                                     :Motors
 STR_WAGONS                                                      :Vagons
--- a/lang/czech.txt
+++ b/lang/czech.txt
@@ -2887,7 +2887,6 @@
 STR_REPLACE_ENGINE_WAGON_SELECT                                 :{BLACK}Vymenovani: {ORANGE}{SKIP}{SKIP}{STRING}
 STR_REPLACE_ENGINE_WAGON_SELECT_HELP                            :{BLACK} EXPERIMENTLN VLASTNOST {}Prepne mezi okny na vymenu lokomotiv a vagonu.{}Vagon se vymeni, jen kdy je nov vagon schopen vozit stejnou komoditu, jako ten star. Toto se overuje pro kad vagon.
 STR_ENGINE_NOT_BUILDABLE                                        :{WHITE}Stroj nelze postavit
-STR_AIRPORT_HAS_NO_RUNWAY                                       :{WHITE}Letiste nem ranvej
 
 STR_ENGINES                                                     :lokomotivy
 STR_WAGONS                                                      :vagony
--- a/lang/danish.txt
+++ b/lang/danish.txt
@@ -2818,7 +2818,6 @@
 STR_REPLACE_ENGINE_WAGON_SELECT                                 :{BLACK}Udskifter: {ORANGE}{SKIP}{SKIP}{STRING}
 STR_REPLACE_ENGINE_WAGON_SELECT_HELP                            :{BLACK} EKSPERIMENTEL EGENSKAB {}Skift imellem lokomotiv- og vogn-udskiftningsvindue.{}Vognudskiftning vil kun finde sted hvis den nye vogn kan ndres til at transportere samme godstype some den gamle vogn. Dette bliver checket for hver vogn, nr udskiftningen finder sted
 STR_ENGINE_NOT_BUILDABLE                                        :{WHITE}Kretjet kan ikke bygges
-STR_AIRPORT_HAS_NO_RUNWAY                                       :{WHITE}Lufthavnen har ingen landingsbane
 
 STR_ENGINES                                                     :Lokomotiver
 STR_WAGONS                                                      :Vogne
--- a/lang/dutch.txt
+++ b/lang/dutch.txt
@@ -2830,7 +2830,6 @@
 STR_REPLACE_ENGINE_WAGON_SELECT                                 :{BLACK}Aan het vervangen: {ORANGE}{SKIP}{SKIP}{STRING}
 STR_REPLACE_ENGINE_WAGON_SELECT_HELP                            :{BLACK} EXPERIMENTEEL {}Wissel tussen motor- en wagonvervangvensters.{}Wagonvervanging wordt alleen uitgevoerd als de nieuwe wagon omgebouwd kan worden om hetzelfde ladingtype te dragen als de oude wagon. Dit wordt gecontroleerd voor elke wagon wanneer de daadwerkelijke vervanging plaats vindt.
 STR_ENGINE_NOT_BUILDABLE                                        :{WHITE}Locomotief kan niet gebouwd worden
-STR_AIRPORT_HAS_NO_RUNWAY                                       :{WHITE}Vliegveld heeft geen baan
 
 STR_ENGINES                                                     :Motoren
 STR_WAGONS                                                      :Wagons
--- a/lang/english.txt
+++ b/lang/english.txt
@@ -2830,7 +2830,6 @@
 STR_REPLACE_ENGINE_WAGON_SELECT                                 :{BLACK}Replacing: {ORANGE}{SKIP}{SKIP}{STRING}
 STR_REPLACE_ENGINE_WAGON_SELECT_HELP                            :{BLACK} EXPERIMENTAL FEATURE {}Switch between engine and wagon replacement windows.{}Wagon replacement will only be done if the new wagon can be refitted into carrying the same type of cargo as the old one. This is checked for each wagon when the actual replacement takes place.
 STR_ENGINE_NOT_BUILDABLE                                        :{WHITE}Engine is not buildable
-STR_AIRPORT_HAS_NO_RUNWAY                                       :{WHITE}Airport has no runway
 
 STR_ENGINES                                                     :Engines
 STR_WAGONS                                                      :Wagons
--- a/lang/estonian.txt
+++ b/lang/estonian.txt
@@ -2828,7 +2828,6 @@
 STR_REPLACE_ENGINE_WAGON_SELECT                                 :{BLACK}Vahetan: {ORANGE}{SKIP}{SKIP}{STRING}
 STR_REPLACE_ENGINE_WAGON_SELECT_HELP                            :{BLACK} TESTIMISEL! {}Vaheta aken mootori ja vaguni vahetamise aknate vahel.{}Vaguni vahetus tehakse ainult siis kui uus vagun suudetakse muuta kandmaks sama tpi kaupa kui vana vagun. See valitakse igale vagunile kui tegelik vahetus kib
 STR_ENGINE_NOT_BUILDABLE                                        :{WHITE}Mootorit ei saa ehitada
-STR_AIRPORT_HAS_NO_RUNWAY                                       :{WHITE}Lennujaamal ei ole maandumisrada
 
 STR_ENGINES                                                     :Mootorid
 STR_WAGONS                                                      :Vaguneid
--- a/lang/finnish.txt
+++ b/lang/finnish.txt
@@ -2828,7 +2828,6 @@
 STR_REPLACE_ENGINE_WAGON_SELECT                                 :{BLACK}Korvataan: {ORANGE}{SKIP}{SKIP}{STRING}
 STR_REPLACE_ENGINE_WAGON_SELECT_HELP                            :{BLACK} ERIKOIS OMINAISUUS {} Vaihda toiseen korvausikkunaan. {} Vaunu vaihdetaan ainoastaan jos uusi vaunu kuljettaa samaa rahtia. Tm tarkistetaan, joka kerta kun vaunu korvataan.
 STR_ENGINE_NOT_BUILDABLE                                        :{WHITE}Veturi ei ole rakennettavissa
-STR_AIRPORT_HAS_NO_RUNWAY                                       :{WHITE}Lentokentll ei ole kiitorataa.
 
 STR_ENGINES                                                     :Veturit
 STR_WAGONS                                                      :Vaunut
--- a/lang/french.txt
+++ b/lang/french.txt
@@ -2831,7 +2831,6 @@
 STR_REPLACE_ENGINE_WAGON_SELECT                                 :{BLACK}En Remplacement: {ORANGE}{SKIP}{SKIP}{STRING}
 STR_REPLACE_ENGINE_WAGON_SELECT_HELP                            :{BLACK} FONCTION EXPERIMENTALE {}Passer  la fentre de remplacement de locomotives/wagons.{}Le remplacement de wagon ne se fera que si le nouveau wagon peut tre ramnag pour le mme type de marchandises que l'ancien. Ceci est vrifi pour chaque wagon lors du remplacement.
 STR_ENGINE_NOT_BUILDABLE                                        :{WHITE}Ce vhicule ne peut pas tre construit
-STR_AIRPORT_HAS_NO_RUNWAY                                       :{WHITE}L'aroport n'a pas de piste
 
 STR_ENGINES                                                     :Locomotives
 STR_WAGONS                                                      :Wagons
--- a/lang/german.txt
+++ b/lang/german.txt
@@ -2831,7 +2831,6 @@
 STR_REPLACE_ENGINE_WAGON_SELECT                                 :{BLACK}Ersetze: {ORANGE}{SKIP}{SKIP}{STRING}
 STR_REPLACE_ENGINE_WAGON_SELECT_HELP                            :{BLACK} EXPERIMENTELLE FUNKTION {}Umschalter fr Lok- oder Waggonersetzung{}Waggons werden nur ersetzt, wenn der neue Waggon den selben Warentyp transportieren kann wie der alte. Dies wird beim Ersetzen eines jeden Waggons einzeln geprft.
 STR_ENGINE_NOT_BUILDABLE                                        :{WHITE}Lokomotive ist nicht baubar
-STR_AIRPORT_HAS_NO_RUNWAY                                       :{WHITE}der Flughafen hat keine Rollbahn
 
 STR_ENGINES                                                     :Loks
 STR_WAGONS                                                      :Waggons
--- a/lang/hungarian.txt
+++ b/lang/hungarian.txt
@@ -2932,7 +2932,6 @@
 STR_REPLACE_ENGINE_WAGON_SELECT                                 :{BLACK}Lecserl: {ORANGE}{SKIP}{SKIP}{STRING}
 STR_REPLACE_ENGINE_WAGON_SELECT_HELP                            :{BLACK} KISRLETI TULAJDONSG {}Vlts a mozdony s a vasti-kocsi cserl ablak kztt.{}A vagonok cserje csak akkor trtnik meg, ha az j vagon talakthat ugyanolyan tpus teher szlltsra. Ez minden vagoncsernl ellenrzdik.
 STR_ENGINE_NOT_BUILDABLE                                        :{WHITE}A mozdony gy nem pthet meg
-STR_AIRPORT_HAS_NO_RUNWAY                                       :{WHITE}A reptrnek nincs kifutja
 
 STR_ENGINES                                                     :Mozdonyok
 STR_WAGONS                                                      :Vagonok
--- a/lang/icelandic.txt
+++ b/lang/icelandic.txt
@@ -2831,7 +2831,6 @@
 STR_REPLACE_ENGINE_WAGON_SELECT                                 :{BLACK}Skipti t: {ORANGE}{SKIP}{SKIP}{STRING}
 STR_REPLACE_ENGINE_WAGON_SELECT_HELP                            :{BLACK} TILRAUNAEIGINLEIKI {}Skipta  milli tskiptiglugga drttar- og flutningavagna.{}tskipting vagna fer aeins fram ef hgt er a breyta nju vgnunum til a flytja sama farm og eir gmlu. a er kanna fyrir hvern vagn egar tskipting  honum fer fram.
 STR_ENGINE_NOT_BUILDABLE                                        :{WHITE}Ekki hgt a sma drttarvagn
-STR_AIRPORT_HAS_NO_RUNWAY                                       :{WHITE}Flugvllurinn hefur enga flugbraut
 
 STR_ENGINES                                                     :Drttarvagnar
 STR_WAGONS                                                      :Vagnar
--- a/lang/italian.txt
+++ b/lang/italian.txt
@@ -2830,7 +2830,6 @@
 STR_REPLACE_ENGINE_WAGON_SELECT                                 :{BLACK}Sostituzione: {ORANGE}{SKIP}{SKIP}{STRING}
 STR_REPLACE_ENGINE_WAGON_SELECT_HELP                            :{BLACK} FEATURE SPERIMENTALE {}Scambia tra loro le finestre di sostituizione locomotive e vagoni. {}La sostituizione del vagone avverr solo se il nuovo vagone pu essere convertito nello stesso tipo di merce del  vecchio vagone. Questo controllo viene fatto per ogni vagone sostituito.
 STR_ENGINE_NOT_BUILDABLE                                        :{WHITE}Non puoi costruire la locomotiva
-STR_AIRPORT_HAS_NO_RUNWAY                                       :{WHITE}L'aeroporto non ha piste
 
 STR_ENGINES                                                     :Motrici
 STR_WAGONS                                                      :Vagoni
--- a/lang/norwegian.txt
+++ b/lang/norwegian.txt
@@ -2830,7 +2830,6 @@
 STR_REPLACE_ENGINE_WAGON_SELECT                                 :{BLACK}Erstatter: {ORANGE}{SKIP}{SKIP}{STRING}
 STR_REPLACE_ENGINE_WAGON_SELECT_HELP                            :{BLACK} Eksperimentell del {}Skift mellom tog- og vognvinduet.{}Vognutskiftningen vil bare bli utfrt hvis den nye vognen kan ha samme last som den gamle. Dette blir sjekket nr utskiftingen finner sted.
 STR_ENGINE_NOT_BUILDABLE                                        :{WHITE}Motoren kan ikke bygges
-STR_AIRPORT_HAS_NO_RUNWAY                                       :{WHITE}Flyplassen har ingen rullebane
 
 STR_ENGINES                                                     :Motorer
 STR_WAGONS                                                      :Vogner
--- a/lang/polish.txt
+++ b/lang/polish.txt
@@ -2959,7 +2959,6 @@
 STR_REPLACE_ENGINE_WAGON_SELECT                                 :{BLACK}Zastepowanie: {ORANGE}{SKIP}{SKIP}{STRING}
 STR_REPLACE_ENGINE_WAGON_SELECT_HELP                            :{BLACK} EKSPERYMENTALNE NARZEDZIE {}Przejdz pomiedzy oknami zamiany lokomotyw i wagonow.{}Wymiana wagonu nastapi tylko jesli nowy wagon moze byc przebudowany do przewozenia tego samego towaru co poprzedni. Kazdy wagon pociagu jest sprawdzany podczas procesu zamiany.
 STR_ENGINE_NOT_BUILDABLE                                        :{WHITE}Lokomotywa nie moze byc zbudowana
-STR_AIRPORT_HAS_NO_RUNWAY                                       :{WHITE}Lotnisko nie ma pasa startowego
 
 STR_ENGINES                                                     :Lokomotywy
 STR_WAGONS                                                      :Wagonow
--- a/lang/portuguese.txt
+++ b/lang/portuguese.txt
@@ -2830,7 +2830,6 @@
 STR_REPLACE_ENGINE_WAGON_SELECT                                 :{BLACK}Trocando: {ORANGE}{SKIP}{SKIP}{STRING}
 STR_REPLACE_ENGINE_WAGON_SELECT_HELP                            :{BLACK} FUNCIONALIDADE EXPERIMENTAL{}Alternar entre a janela de substituio de locomotivas e a janela de substituio de vages.{}A substituio de vages s ocorrer se o novo vago puder ser reconvertido para o mesmo tipo de carga que o vago antigo. Esta verificao ocorre para cada vago, durante a substituio.
 STR_ENGINE_NOT_BUILDABLE                                        :{WHITE}Locomotiva no construvel
-STR_AIRPORT_HAS_NO_RUNWAY                                       :{WHITE}Aeroporto sem pista de aterragem
 
 STR_ENGINES                                                     :Locomotivas
 STR_WAGONS                                                      :Vages
--- a/lang/romanian.txt
+++ b/lang/romanian.txt
@@ -2828,7 +2828,6 @@
 STR_REPLACE_ENGINE_WAGON_SELECT                                 :{BLACK}nlocuire: {ORANGE}{SKIP}{SKIP}{STRING}
 STR_REPLACE_ENGINE_WAGON_SELECT_HELP                            :{BLACK} ELEMENT EXPERIMENTAL {}Comut ntre ferestrele de ]nlocuire motoare si vagoane.{}nlocuirea de vagoane va fi efectuat numai dac noul vagon poate transporta acelasi tip de ncrctur ca cel vechi. Aceast lucru este verificat pentru fiecare vagon atunci cnd este fcut nlocuirea efectiv.
 STR_ENGINE_NOT_BUILDABLE                                        :{WHITE}Motorul nu poate fi construit
-STR_AIRPORT_HAS_NO_RUNWAY                                       :{WHITE}Aeroportul nu are pista
 
 STR_ENGINES                                                     :Motoare
 STR_WAGONS                                                      :Vagoane
--- a/lang/slovak.txt
+++ b/lang/slovak.txt
@@ -2830,7 +2830,6 @@
 STR_REPLACE_ENGINE_WAGON_SELECT                                 :{BLACK}Vymenovanie: {ORANGE}{SKIP}{SKIP}{STRING}
 STR_REPLACE_ENGINE_WAGON_SELECT_HELP                            :{BLACK} EXPERIMENTALNA VLASTNOST {}Prepne medzi oknami na vymenu lokomotiv a vagonov.{}Vagon sa vymeni, len ked je nov vagon schopny vozit rovnaky naklad, ako ten stary. Toto sa overuje pre kazdy vagon.
 STR_ENGINE_NOT_BUILDABLE                                        :{WHITE}Lokomotiva sa nevyraba
-STR_AIRPORT_HAS_NO_RUNWAY                                       :{WHITE}Letisko nema pristavaciu drahu
 
 STR_ENGINES                                                     :Lokomotvy
 STR_WAGONS                                                      :Vagonov
--- a/lang/spanish.txt
+++ b/lang/spanish.txt
@@ -2831,7 +2831,6 @@
 STR_REPLACE_ENGINE_WAGON_SELECT                                 :{BLACK}Reemplazando: {ORANGE}{SKIP}{SKIP}{STRING}
 STR_REPLACE_ENGINE_WAGON_SELECT_HELP                            :{BLACK} FUNCIN EXPERIMENTAL {}Cambia entre las ventanas de cambio de vagn y locomotora.{}Los cambios de vagn solo se harn si el nuevo vagn puede ser reparado para transportar el mismo tipo de carga que el anterior. Est marcado para cada vagn cuando el cambio actual se realiza.
 STR_ENGINE_NOT_BUILDABLE                                        :{WHITE}No es posible construir este motor
-STR_AIRPORT_HAS_NO_RUNWAY                                       :{WHITE}El Aeropuerto no tiene pista
 
 STR_ENGINES                                                     :Motores
 STR_WAGONS                                                      :Vagones
--- a/lang/swedish.txt
+++ b/lang/swedish.txt
@@ -2828,7 +2828,6 @@
 STR_REPLACE_ENGINE_WAGON_SELECT                                 :{BLACK}Erstter: {ORANGE}{SKIP}{SKIP}{STRING}
 STR_REPLACE_ENGINE_WAGON_SELECT_HELP                            :{BLACK} EXPERIMENTIELL FEATURE {}Vlj mellan motor och vagn ersttnings-fnster.{}Vagns-ersttning kommer endast ske om den nya vagnen kan bli omrustad till att bra samma typ av last som den gamla. Detta kollas fr varje vagn nr den faktiska ersttningen sker
 STR_ENGINE_NOT_BUILDABLE                                        :{WHITE}Loket gr inte att bygga
-STR_AIRPORT_HAS_NO_RUNWAY                                       :{WHITE}Flygplatsen har inga landningsbanor
 
 STR_ENGINES                                                     :
 STR_WAGONS                                                      :Vagnar
--- a/lang/turkish.txt
+++ b/lang/turkish.txt
@@ -2829,7 +2829,6 @@
 STR_REPLACE_ENGINE_WAGON_SELECT                                 :{BLACK}Degistiriyor: {ORANGE}{SKIP}{SKIP}{STRING}
 STR_REPLACE_ENGINE_WAGON_SELECT_HELP                            :{BLACK} DENEYSEL ZELLiK {}Lokomotif ve vagon degisimi pencereleri arasinda geis yap.{}Vagon degisimi sadece yeni vagon eskisinin tasidigi trde yk tasiyabiliyorsa yapilir. Degistirme islemi sirasinda tm vagonlar iin bu durum kontrol edilir.
 STR_ENGINE_NOT_BUILDABLE                                        :{WHITE}Lokomotif alinamaz
-STR_AIRPORT_HAS_NO_RUNWAY                                       :{WHITE}Havalimaninda inis pisti yok
 
 STR_ENGINES                                                     :Lokomotifler
 STR_WAGONS                                                      :Vagon
--- a/lang/unfinished/afrikaans.txt
+++ b/lang/unfinished/afrikaans.txt
@@ -2530,7 +2530,6 @@
 STR_NOT_REPLACING                                               :{BLACK}Word nie vervang nie
 STR_NOT_REPLACING_VEHICLE_SELECTED                              :{BLACK}Geen voertuig gekies
 STR_ENGINE_NOT_BUILDABLE                                        :{WHITE}Enjin is nie boubaar nie
-STR_AIRPORT_HAS_NO_RUNWAY                                       :{WHITE}Lughawe het geen aanloopbaan
 
 STR_ENGINES                                                     :Enjine
 
--- a/lang/unfinished/bulgarian.txt
+++ b/lang/unfinished/bulgarian.txt
@@ -2044,7 +2044,6 @@
 
 
 
-STR_AIRPORT_HAS_NO_RUNWAY                                       :{WHITE}Летището няма писта
 
 STR_WAGONS                                                      :Вагони
 
--- a/lang/unfinished/ukrainian.txt
+++ b/lang/unfinished/ukrainian.txt
@@ -2830,7 +2830,6 @@
 STR_REPLACE_ENGINE_WAGON_SELECT                                 :{BLACK}Оновлення: {ORANGE}{SKIP}{SKIP}{STRING}
 STR_REPLACE_ENGINE_WAGON_SELECT_HELP                            :{BLACK} EXPERIMENTAL FEATURE {}Switch between engine and wagon replacement windows.{}Wagon replacement will only be done if the new wagon can be refitted into carrying the same type of cargo as the old one. This is checked for each wagon when the actual replacement takes place.
 STR_ENGINE_NOT_BUILDABLE                                        :{WHITE}потяг неможна будувати
-STR_AIRPORT_HAS_NO_RUNWAY                                       :{WHITE}Аеропорт зайнятий
 
 STR_ENGINES                                                     :Потяги
 STR_WAGONS                                                      :Вагони