From 7465fd065fd12b87e3bb33f446e243a8ebe35f92 Mon Sep 17 00:00:00 2001 From: Frank Date: Sun, 5 Apr 2020 01:37:36 +0200 Subject: [PATCH] Ops --- Moose Development/Moose/Ops/Auftrag.lua | 2 +- Moose Development/Moose/Ops/Squadron.lua | 16 +++++++++++++--- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/Moose Development/Moose/Ops/Auftrag.lua b/Moose Development/Moose/Ops/Auftrag.lua index 882346f24..e965ed53f 100644 --- a/Moose Development/Moose/Ops/Auftrag.lua +++ b/Moose Development/Moose/Ops/Auftrag.lua @@ -1021,7 +1021,7 @@ end -- @param #AUFTRAG self -- @param #string roe Mission ROT. -- @return #AUFTRAG self -function AUFTRAG:SetROE(rot) +function AUFTRAG:SetROT(rot) self.optionROT=rot diff --git a/Moose Development/Moose/Ops/Squadron.lua b/Moose Development/Moose/Ops/Squadron.lua index 5a1a1c2e5..92991534b 100644 --- a/Moose Development/Moose/Ops/Squadron.lua +++ b/Moose Development/Moose/Ops/Squadron.lua @@ -521,13 +521,16 @@ function SQUADRON:CanMission(Mission) if cando then + -- Distance to target. local TargetDistance=Mission:GetTargetDistance(self.airwing:GetCoordinate()) for _,_asset in pairs(self.assets) do local asset=_asset --Ops.AirWing#AIRWING.SquadronAsset + local engagerange=Mission.engageMaxDistance and math.min(self.engageRange, Mission.engageMaxDistance) or self.engageRange + -- Set range is valid. Mission engage distance can overrule the squad engage range. - if TargetDistance<=self.engageRange or (Mission.engageMaxDistance and TargetDistance<=Mission.engageMaxDistance) then + if TargetDistance<=engagerange then -- Check if asset is currently on a mission (STARTED or QUEUED). if self.airwing:IsAssetOnMission(asset) then @@ -596,12 +599,19 @@ function SQUADRON:CanMission(Mission) end + else + self:I(self.lid..string.format("INFO: Squad is not in range. Target dist=%d > %d NM max engage Range", UTILS.MetersToNM(TargetDistance), UTILS.MetersToNM(engagerange))) end - end - end + + end -- loop over assets + + else + self:I(self.lid..string.format("INFO: Squad cannot do mission type %s", Mission.type)) + end -- if cando mission type -- Check if required assets are present. if Mission.nassets and Mission.nassets > #assets then + self:I(self.lid.."Not enough assets available") cando=false end