mirror of
https://github.com/FlightControl-Master/MOOSE.git
synced 2025-08-15 10:47:21 +00:00
Update AirWing.lua
Make Patrolpoint Markes Switchable
This commit is contained in:
parent
220e004d73
commit
903e8711f7
@ -119,6 +119,7 @@ AIRWING = {
|
||||
pointsTANKER = {},
|
||||
pointsAWACS = {},
|
||||
wingcommander = nil,
|
||||
markpoints = false,
|
||||
}
|
||||
|
||||
--- Squadron asset.
|
||||
@ -209,6 +210,7 @@ function AIRWING:New(warehousename, airwingname)
|
||||
self.nflightsTANKERprobe=0
|
||||
self.nflightsRecoveryTanker=0
|
||||
self.nflightsRescueHelo=0
|
||||
self.markpoints = false
|
||||
|
||||
------------------------
|
||||
--- Pseudo Functions ---
|
||||
@ -230,6 +232,24 @@ function AIRWING:New(warehousename, airwingname)
|
||||
-- @function [parent=#AIRWING] __Stop
|
||||
-- @param #AIRWING self
|
||||
-- @param #number delay Delay in seconds.
|
||||
|
||||
--- On after "FlightOnMission" event. Triggered when an asset group starts a mission.
|
||||
-- @function [parent=#AIRWING] OnAfterFlightOnMission
|
||||
-- @param #AIRWING self
|
||||
-- @param #string From The From state
|
||||
-- @param #string Event The Event called
|
||||
-- @param #string To The To state
|
||||
-- @param Ops.FlightGroup#FLIGHTGROUP Flightgroup The Flightgroup on mission
|
||||
-- @param Ops.Auftrag#AUFTRAG Mission The Auftrag of the Flightgroup
|
||||
|
||||
--- On after "AssetReturned" event. Triggered when an asset group returned to its airwing.
|
||||
-- @function [parent=#AIRWING] OnAfterAssetReturned
|
||||
-- @param #AIRWING self
|
||||
-- @param #string From From state.
|
||||
-- @param #string Event Event.
|
||||
-- @param #string To To state.
|
||||
-- @param Ops.Squadron#SQUADRON Squadron The asset squadron.
|
||||
-- @param #AIRWING.SquadronAsset Asset The asset that returned.
|
||||
|
||||
return self
|
||||
end
|
||||
@ -647,6 +667,19 @@ function AIRWING:SetNumberTankerBoom(Nboom)
|
||||
return self
|
||||
end
|
||||
|
||||
--- Set markers on the map for Patrol Points.
|
||||
-- @param #AIRWING self
|
||||
-- @param #boolean onoff Set to true to switch markers on.
|
||||
-- @return #AIRWING self
|
||||
function AIRWING:ShowPatrolPointMarkers(onoff)
|
||||
if onoff then
|
||||
self.markpoints = true
|
||||
else
|
||||
self.markpoints = false
|
||||
end
|
||||
return self
|
||||
end
|
||||
|
||||
--- Set number of TANKER flights with Probe constantly in the air.
|
||||
-- @param #AIRWING self
|
||||
-- @param #number Nprobe Number of flights. Default 1.
|
||||
@ -689,12 +722,10 @@ end
|
||||
--- Update marker of the patrol point.
|
||||
-- @param #AIRWING.PatrolData point Patrol point table.
|
||||
function AIRWING.UpdatePatrolPointMarker(point)
|
||||
|
||||
local text=string.format("%s Occupied=%d\nheading=%03d, leg=%d NM, alt=%d ft, speed=%d kts",
|
||||
point.type, point.noccupied, point.heading, point.leg, point.altitude, point.speed)
|
||||
|
||||
point.marker:UpdateText(text, 1)
|
||||
|
||||
local text=string.format("%s Occupied=%d\nheading=%03d, leg=%d NM, alt=%d ft, speed=%d kts",
|
||||
point.type, point.noccupied, point.heading, point.leg, point.altitude, point.speed)
|
||||
|
||||
point.marker:UpdateText(text, 1)
|
||||
end
|
||||
|
||||
|
||||
@ -717,10 +748,12 @@ function AIRWING:NewPatrolPoint(Type, Coordinate, Altitude, Speed, Heading, LegL
|
||||
patrolpoint.altitude=Altitude or math.random(10,20)*1000
|
||||
patrolpoint.speed=Speed or 350
|
||||
patrolpoint.noccupied=0
|
||||
patrolpoint.marker=MARKER:New(Coordinate, "New Patrol Point"):ToAll()
|
||||
|
||||
AIRWING.UpdatePatrolPointMarker(patrolpoint)
|
||||
|
||||
if self.markpoints then
|
||||
patrolpoint.marker=MARKER:New(Coordinate, "New Patrol Point"):ToAll()
|
||||
AIRWING.UpdatePatrolPointMarker(patrolpoint)
|
||||
end
|
||||
|
||||
return patrolpoint
|
||||
end
|
||||
|
||||
@ -928,7 +961,7 @@ function AIRWING:CheckCAP()
|
||||
|
||||
patrol.noccupied=patrol.noccupied+1
|
||||
|
||||
AIRWING.UpdatePatrolPointMarker(patrol)
|
||||
if self.markpoints then AIRWING.UpdatePatrolPointMarker(patrol) end
|
||||
|
||||
self:AddMission(missionCAP)
|
||||
|
||||
@ -972,7 +1005,7 @@ function AIRWING:CheckTANKER()
|
||||
|
||||
patrol.noccupied=patrol.noccupied+1
|
||||
|
||||
AIRWING.UpdatePatrolPointMarker(patrol)
|
||||
if self.markpoints then AIRWING.UpdatePatrolPointMarker(patrol) end
|
||||
|
||||
self:AddMission(mission)
|
||||
|
||||
@ -990,7 +1023,7 @@ function AIRWING:CheckTANKER()
|
||||
|
||||
patrol.noccupied=patrol.noccupied+1
|
||||
|
||||
AIRWING.UpdatePatrolPointMarker(patrol)
|
||||
if self.markpoints then AIRWING.UpdatePatrolPointMarker(patrol) end
|
||||
|
||||
self:AddMission(mission)
|
||||
|
||||
@ -1018,7 +1051,7 @@ function AIRWING:CheckAWACS()
|
||||
|
||||
patrol.noccupied=patrol.noccupied+1
|
||||
|
||||
AIRWING.UpdatePatrolPointMarker(patrol)
|
||||
if self.markpoints then AIRWING.UpdatePatrolPointMarker(patrol) end
|
||||
|
||||
self:AddMission(mission)
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user