summaryrefslogtreecommitdiff
path: root/src/script/api/script_engine.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/script/api/script_engine.cpp')
-rw-r--r--src/script/api/script_engine.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/script/api/script_engine.cpp b/src/script/api/script_engine.cpp
index 068285dea..6c9d3c709 100644
--- a/src/script/api/script_engine.cpp
+++ b/src/script/api/script_engine.cpp
@@ -248,3 +248,19 @@
return (ScriptAirport::PlaneType)::AircraftVehInfo(engine_id)->subtype;
}
+
+/* static */ uint ScriptEngine::GetMaximumOrderDistance(EngineID engine_id)
+{
+ if (!IsValidEngine(engine_id)) return 0;
+
+ switch (GetVehicleType(engine_id)) {
+ case ScriptVehicle::VT_WATER:
+ return _settings_game.pf.pathfinder_for_ships != VPF_NPF ? 129 : 0;
+
+ case ScriptVehicle::VT_AIR:
+ return ::Engine::Get(engine_id)->GetRange() * ::Engine::Get(engine_id)->GetRange();
+
+ default:
+ return 0;
+ }
+}