From 4553acc7f4f017bb65e4f580522fefa0dc67c008 Mon Sep 17 00:00:00 2001 From: Applevangelist Date: Sun, 2 Aug 2026 12:37:02 +0200 Subject: [PATCH] #AIRWING - add parameter for CAP grouping #EASYGCICAP - make CAP points honor grouping --- Moose Development/Moose/Ops/AirWing.lua | 12 +++++++++--- Moose Development/Moose/Ops/EasyGCICAP.lua | 7 ++++--- 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/Moose Development/Moose/Ops/AirWing.lua b/Moose Development/Moose/Ops/AirWing.lua index 22efde9ff..0c54918eb 100644 --- a/Moose Development/Moose/Ops/AirWing.lua +++ b/Moose Development/Moose/Ops/AirWing.lua @@ -189,13 +189,14 @@ AIRWING = { --- AIRWING class version. -- @field #string version -AIRWING.version="0.9.7" +AIRWING.version="0.9.8" ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -- ToDo list ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -- TODO: Check that airbase has enough parking spots if a request is BIG. +-- DONE: Allow groupping parameter for CAP flights -- DONE: Allow (moving) zones as base for patrol points. -- DONE: Spawn in air ==> Needs WAREHOUSE update. -- DONE: Spawn hot. @@ -233,6 +234,7 @@ function AIRWING:New(warehousename, airwingname) -- Defaults: self.nflightsCAP=0 + self.nCAPgrouping=1 self.nflightsAWACS=0 self.nflightsRecon=0 self.nflightsTANKERboom=0 @@ -740,9 +742,11 @@ end --- Set number of CAP flights constantly carried out. -- @param #AIRWING self -- @param #number n (Optional) Number of flights. Default 1. +-- @param #number grouping (optional) Number of assets per flight. Default 1. -- @return #AIRWING self -function AIRWING:SetNumberCAP(n) +function AIRWING:SetNumberCAP(n,grouping) self.nflightsCAP=n or 1 + self.nCAPgrouping = grouping or 1 return self end @@ -1270,11 +1274,13 @@ function AIRWING:CheckCAP() if self.capOptionPatrolRaceTrack then missionCAP=AUFTRAG:NewPATROL_RACETRACK(patrol.coord,altitude,patrol.speed,patrol.heading,patrol.leg, self.capFormation) + missionCAP:SetRequiredAssets(self.nCAPgrouping,self.nCAPgrouping) else missionCAP=AUFTRAG:NewGCICAP(patrol.coord, altitude, patrol.speed, patrol.heading, patrol.leg) - + missionCAP:SetRequiredAssets(self.nCAPgrouping,self.nCAPgrouping) + end if self.capOptionVaryStartTime then diff --git a/Moose Development/Moose/Ops/EasyGCICAP.lua b/Moose Development/Moose/Ops/EasyGCICAP.lua index d1d499ddb..d26aa6f43 100644 --- a/Moose Development/Moose/Ops/EasyGCICAP.lua +++ b/Moose Development/Moose/Ops/EasyGCICAP.lua @@ -288,7 +288,7 @@ EASYGCICAP = { --- EASYGCICAP class version. -- @field #string version -EASYGCICAP.version="0.1.38" +EASYGCICAP.version="0.1.39" ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -- @@ -796,8 +796,9 @@ function EASYGCICAP:_AddAirwing(Airbasename, Alias) CAP_Wing:SetRespawnAfterDestroyed() --- #DONE avoid wings with no CAP points starting CAP anyhow; AirWing uses this to start CAP and creates points when there are none. - if counttable(self.ManagedCP) >0 then - CAP_Wing:SetNumberCAP(self.capgrouping) + local nCapPoints = counttable(self.ManagedCP) + if nCapPoints >0 then + CAP_Wing:SetNumberCAP(nCapPoints,self.capgrouping) end CAP_Wing:SetCapCloseRaceTrack(true)