diff --git a/src/lang/english.txt b/src/lang/english.txt index 093d381..c1f7d642 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 a too small 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..8d6d1a8 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,16 @@ 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 && + _settings_game.vehicle.plane_crashes != 0 && + !_cheats.no_jetcrash.value && + problem_type == -1) { + problem_type = 4; + } } }