diff --git a/Moose Development/Moose/Ops/Airboss.lua b/Moose Development/Moose/Ops/Airboss.lua index 4d3414d54..a8bbc5a53 100644 --- a/Moose Development/Moose/Ops/Airboss.lua +++ b/Moose Development/Moose/Ops/Airboss.lua @@ -48,11 +48,15 @@ -- -- Heatblur's mighty F-14B Tomcat has been added (March 13th 2019) as well. -- --- -- ## Discussion -- -- If you have questions or suggestions, please visit the [MOOSE Discord](https://discord.gg/AeYAkHP) #ops-airboss channel. -- There you also find an example mission and the necessary voice over sound files. Check out the **pinned messages**. +-- +-- ## Example Missions +-- +-- Example missions can be found [here](https://github.com/FlightControl-Master/MOOSE_MISSIONS/tree/develop/OPS%20-%20Airboss). +-- They contain the latest development Moose.lua file. -- -- ## IMPORTANT -- @@ -14351,12 +14355,14 @@ end -- RADIO MESSAGE Functions ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- +--- Function called by DCS timer. Unused. +-- @param #table param Parameters. +-- @param #number time Time. function AIRBOSS._CheckRadioQueueT(param, time) AIRBOSS._CheckRadioQueue(param.airboss, param.radioqueue, param.name) return time+0.05 end - --- Radio queue item. -- @type AIRBOSS.Radioitem -- @field #number Tplay Abs time when transmission should be played. @@ -14379,11 +14385,11 @@ function AIRBOSS:_CheckRadioQueue(radioqueue, name) if #radioqueue==0 then if name=="LSO" then - self:I(self.lid..string.format("Stopping LSO radio queue.")) + self:T(self.lid..string.format("Stopping LSO radio queue.")) self.radiotimer:Stop(self.RQLid) self.RQLid=nil elseif name=="MARSHAL" then - self:I(self.lid..string.format("Stopping Marshal radio queue.")) + self:T(self.lid..string.format("Stopping Marshal radio queue.")) self.radiotimer:Stop(self.RQMid) self.RQMid=nil end @@ -14530,7 +14536,7 @@ function AIRBOSS:RadioTransmission(radio, call, loud, delay, interval, click, pi -- Schedule radio queue checks. if not self.RQLid then - self:I(self.lid..string.format("Starting LSO radio queue.")) + self:T(self.lid..string.format("Starting LSO radio queue.")) self.RQLid=self.radiotimer:Schedule(nil, AIRBOSS._CheckRadioQueue, {self, self.RQLSO, "LSO"}, 0.02, 0.05) end @@ -14541,7 +14547,7 @@ function AIRBOSS:RadioTransmission(radio, call, loud, delay, interval, click, pi caller="MarshalCall" if not self.RQMid then - self:I(self.lid..string.format("Starting Marhal radio queue.")) + self:T(self.lid..string.format("Starting Marhal radio queue.")) self.RQMid=self.radiotimer:Schedule(nil, AIRBOSS._CheckRadioQueue, {self, self.RQMarshal, "MARSHAL"}, 0.02, 0.05) end diff --git a/Moose Development/Moose/Ops/RescueHelo.lua b/Moose Development/Moose/Ops/RescueHelo.lua index 350722c50..df8c034f2 100644 --- a/Moose Development/Moose/Ops/RescueHelo.lua +++ b/Moose Development/Moose/Ops/RescueHelo.lua @@ -57,6 +57,7 @@ -- @field #string alias Alias of the spawn group. -- @field #number uid Unique ID of this helo. -- @field #number modex Tail number of the helo. +-- @field #number dtFollow Follow time update interval in seconds. Default 1.0 sec. -- @extends Core.Fsm#FSM --- Rescue Helo @@ -227,6 +228,7 @@ RESCUEHELO = { alias = nil, uid = 0, modex = nil, + dtFollow = nil, } --- Unique ID (global). @@ -235,7 +237,7 @@ _RESCUEHELOID=0 --- Class version. -- @field #string version -RESCUEHELO.version="1.0.8" +RESCUEHELO.version="1.0.9" ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -- TODO list @@ -303,6 +305,7 @@ function RESCUEHELO:New(carrierunit, helogroupname) self:SetRescueZone() self:SetRescueHoverSpeed() self:SetRescueDuration() + self:SetFollowTimeInterval() self:SetRescueStopBoatOff() -- Some more. @@ -644,6 +647,15 @@ function RESCUEHELO:SetModex(modex) return self end +--- Set follow time update interval. +-- @param #RESCUEHELO self +-- @param #number dt Time interval in seconds. Default 1.0 sec. +-- @return #RESCUEHELO self +function RESCUEHELO:SetFollowTimeInterval(dt) + self.dtFollow=dt or 1.0 + return self +end + --- Use an uncontrolled aircraft already present in the mission rather than spawning a new helo as initial rescue helo. -- This can be useful when interfaced with, e.g., a warehouse. -- The group name is the one specified in the @{#RESCUEHELO.New} function. @@ -940,6 +952,9 @@ function RESCUEHELO:onafterStart(From, Event, To) -- Formation parameters. self.formation:FormationCenterWing(-self.offsetX, 50, math.abs(self.altitude), 50, self.offsetZ, 50) + -- Set follow time interval. + self.formation:SetFollowTimeInterval(self.dtFollow) + -- Formation mode. self.formation:SetFlightModeFormation(self.helo)