From eed61191935078aaa7f035ccbee29768e1d4f10c Mon Sep 17 00:00:00 2001 From: Applevangelist Date: Mon, 6 Nov 2023 18:36:02 +0100 Subject: [PATCH 1/2] #FLIGHTGROUP * Resolve a stalemate when all jobs are done but _CheckGroupDone isn't called any longer --- Moose Development/Moose/Ops/FlightGroup.lua | 24 +++++++++++++-------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/Moose Development/Moose/Ops/FlightGroup.lua b/Moose Development/Moose/Ops/FlightGroup.lua index e203bbff3..ad115cdc2 100644 --- a/Moose Development/Moose/Ops/FlightGroup.lua +++ b/Moose Development/Moose/Ops/FlightGroup.lua @@ -216,7 +216,7 @@ FLIGHTGROUP.Players={} --- FLIGHTGROUP class version. -- @field #string version -FLIGHTGROUP.version="1.0.1" +FLIGHTGROUP.version="1.0.2" ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -- TODO list @@ -1256,21 +1256,21 @@ function FLIGHTGROUP:Status() -- Check damage. self:_CheckDamage() - + + -- Get current mission (if any). + local mission=self:GetMissionCurrent() + -- TODO: Check if group is waiting? if self:IsWaiting() then if self.Twaiting and self.dTwait then if timer.getAbsTime()>self.Twaiting+self.dTwait then --self.Twaiting=nil --self.dTwait=nil - --self:Cruise() + --self:_CheckGroupDone() end end end - -- Get current mission (if any). - local mission=self:GetMissionCurrent() - -- If mission, check if DCS task needs to be updated. if mission and mission.updateDCSTask then @@ -1363,7 +1363,7 @@ function FLIGHTGROUP:Status() else -- Check damage. - self:_CheckDamage() + self:_CheckDamage() end --- @@ -1617,9 +1617,15 @@ function FLIGHTGROUP:Status() --- self:_PrintTaskAndMissionStatus() - - -- Current mission. + + -- All done? + -- Get current mission (if any). local mission=self:GetMissionCurrent() + if not mission then + self.Twaiting=nil + self.dTwait=nil + self:_CheckGroupDone() + end end From b4058ecab2ddf5663db0643f337fa4d12edbb559 Mon Sep 17 00:00:00 2001 From: Applevangelist Date: Wed, 8 Nov 2023 11:09:39 +0100 Subject: [PATCH 2/2] #FLIGHTCONTROL * Fix for shelters, puts the guy out front and not on top. --- Moose Development/Moose/Ops/FlightControl.lua | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/Moose Development/Moose/Ops/FlightControl.lua b/Moose Development/Moose/Ops/FlightControl.lua index 6d26c78f6..bab56059a 100644 --- a/Moose Development/Moose/Ops/FlightControl.lua +++ b/Moose Development/Moose/Ops/FlightControl.lua @@ -329,7 +329,7 @@ FLIGHTCONTROL.FlightStatus={ --- FlightControl class version. -- @field #string version -FLIGHTCONTROL.version="0.7.4" +FLIGHTCONTROL.version="0.7.5" ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -- TODO list @@ -4441,11 +4441,21 @@ function FLIGHTCONTROL:SpawnParkingGuard(unit) -- Length of the unit + 3 meters. local size, x, y, z=unit:GetObjectSize() + local xdiff = 3 + --Fix for hangars, puts the guy out front and not on top. + if AIRBASE._CheckTerminalType(spot.TerminalType, AIRBASE.TerminalType.Shelter) then + xdiff = 27-(x*0.5) + end + + if (AIRBASE._CheckTerminalType(spot.TerminalType, AIRBASE.TerminalType.OpenMed) or AIRBASE._CheckTerminalType(spot.TerminalType, AIRBASE.TerminalType.Shelter)) and self.airbasename == AIRBASE.Sinai.Ramon_Airbase then + xdiff = 12 + end + -- Debug message. - self:T2(self.lid..string.format("Parking guard for %s: heading=%d, distance x=%.1f m", unit:GetName(), heading, x)) + self:T2(self.lid..string.format("Parking guard for %s: heading=%d, length x=%.1f m, xdiff=%.1f m", unit:GetName(), heading, x, xdiff)) -- Coordinate for the guard. - local Coordinate=coordinate:Translate(0.75*x+3, heading) + local Coordinate=coordinate:Translate(x*0.5+xdiff, heading) -- Let him face the aircraft. local lookat=heading-180