diff --git a/src/lang/english.txt b/src/lang/english.txt index 093d381..884db76 100644 --- a/src/lang/english.txt +++ b/src/lang/english.txt @@ -816,6 +816,7 @@ STR_NEWS_VEHICLE_HAS_TOO_FEW_ORDERS :{WHITE}{VEHICLE STR_NEWS_VEHICLE_HAS_VOID_ORDER :{WHITE}{VEHICLE} has a void order STR_NEWS_VEHICLE_HAS_DUPLICATE_ENTRY :{WHITE}{VEHICLE} has duplicate orders STR_NEWS_VEHICLE_HAS_INVALID_ENTRY :{WHITE}{VEHICLE} has an invalid station in its orders +STR_NEWS_PLANE_HAS_UNSUITABLE_ENTRY :{WHITE}{VEHICLE} has an unsuitable airport in its orders # end of order system STR_NEWS_VEHICLE_IS_GETTING_OLD :{WHITE}{VEHICLE} is getting old diff --git a/src/order_cmd.cpp b/src/order_cmd.cpp index 9aff6cd..b5dfb24 100644 --- a/src/order_cmd.cpp +++ b/src/order_cmd.cpp @@ -27,6 +27,7 @@ #include "waypoint_base.h" #include "company_base.h" #include "order_backup.h" +#include "cheat_type.h" #include "table/strings.h" @@ -1788,7 +1789,15 @@ void CheckOrders(const Vehicle *v) const Station *st = Station::Get(order->GetDestination()); n_st++; - if (!CanVehicleUseStation(v, st)) problem_type = 3; + if (!CanVehicleUseStation(v, st)) { + problem_type = 3; + } else if (v->type == VEH_AIRCRAFT && + AircraftVehInfo(v->engine_type)->subtype & AIR_FAST && + st->airport.GetFTA()->flags & AirportFTAClass::SHORT_STRIP && + !_cheats.no_jetcrash.value && + problem_type == -1) { + problem_type = 4; + } } }