mirror of
https://github.com/FlightControl-Master/MOOSE.git
synced 2025-10-29 16:58:06 +00:00
AIRWING
This commit is contained in:
parent
1cc012c7d1
commit
74bdeaf4f7
@ -2631,9 +2631,8 @@ end
|
||||
--- Check parking ID.
|
||||
-- @param #WAREHOUSE self
|
||||
-- @param Wrapper.Airbase#AIRBASE.ParkingSpot spot Parking spot.
|
||||
-- @param Wrapper.Airbase#AIRBASE airbase The airbase.
|
||||
-- @return #boolean If true, parking is valid.
|
||||
function WAREHOUSE:_CheckParkingValid(spot, airbase)
|
||||
function WAREHOUSE:_CheckParkingValid(spot)
|
||||
|
||||
if self.parkingIDs==nil then
|
||||
return true
|
||||
@ -7841,7 +7840,7 @@ function WAREHOUSE:_FindParkingForAssets(airbase, assets)
|
||||
local parkingspot=_parkingspot --Wrapper.Airbase#AIRBASE.ParkingSpot
|
||||
|
||||
-- Check correct terminal type for asset. We don't want helos in shelters etc.
|
||||
if AIRBASE._CheckTerminalType(parkingspot.TerminalType, terminaltype) and self:_CheckParkingValid(parkingspot, airbase) and airbase:_CheckParkingLists(parkingspot.TerminalID) then
|
||||
if AIRBASE._CheckTerminalType(parkingspot.TerminalType, terminaltype) and self:_CheckParkingValid(parkingspot) and airbase:_CheckParkingLists(parkingspot.TerminalID) then
|
||||
|
||||
-- Coordinate of the parking spot.
|
||||
local _spot=parkingspot.Coordinate -- Core.Point#COORDINATE
|
||||
|
||||
@ -1429,7 +1429,7 @@ function AIRWING:onafterMissionRequest(From, Event, To, Mission)
|
||||
asset.flightgroup:AddMission(Mission)
|
||||
|
||||
-- Trigger event.
|
||||
self:FlightOnMission(asset.flightgroup, Mission)
|
||||
self:__FlightOnMission(5, asset.flightgroup, Mission)
|
||||
|
||||
else
|
||||
self:E(self.lid.."ERROR: flight group for asset does NOT exist!")
|
||||
@ -1662,6 +1662,8 @@ function AIRWING:onafterAssetSpawned(From, Event, To, group, asset, request)
|
||||
local Tacan=squadron:FetchTacan()
|
||||
if Tacan then
|
||||
asset.tacan=Tacan
|
||||
--flightgroup:SetDefaultTACAN(Tacan,Morse,UnitName,Band,OffSwitch)
|
||||
flightgroup:SwitchTACAN(Tacan, Morse, UnitName, Band)
|
||||
end
|
||||
|
||||
-- Set radio frequency and modulation
|
||||
@ -1689,19 +1691,19 @@ function AIRWING:onafterAssetSpawned(From, Event, To, group, asset, request)
|
||||
if mission then
|
||||
|
||||
if Tacan then
|
||||
mission:SetTACAN(Tacan, Morse, UnitName, Band)
|
||||
--mission:SetTACAN(Tacan, Morse, UnitName, Band)
|
||||
end
|
||||
|
||||
-- Add mission to flightgroup queue.
|
||||
asset.flightgroup:AddMission(mission)
|
||||
|
||||
-- Trigger event.
|
||||
self:FlightOnMission(flightgroup, mission)
|
||||
self:__FlightOnMission(5, flightgroup, mission)
|
||||
|
||||
else
|
||||
|
||||
if Tacan then
|
||||
flightgroup:SwitchTACAN(Tacan, Morse, UnitName, Band)
|
||||
--flightgroup:SwitchTACAN(Tacan, Morse, UnitName, Band)
|
||||
end
|
||||
|
||||
end
|
||||
@ -1743,6 +1745,7 @@ end
|
||||
-- @param #string To To state.
|
||||
function AIRWING:onafterDestroyed(From, Event, To)
|
||||
|
||||
-- Debug message.
|
||||
self:I(self.lid.."Airwing warehouse destroyed!")
|
||||
|
||||
-- Cancel all missions.
|
||||
|
||||
@ -1823,6 +1823,8 @@ function AUFTRAG:AssignSquadrons(Squadrons)
|
||||
end
|
||||
|
||||
self.squadrons=Squadrons
|
||||
|
||||
return self
|
||||
end
|
||||
|
||||
--- Add a required payload for this mission. Only these payloads will be used for this mission. If they are not available, the mission cannot start. Only available for use with an AIRWING.
|
||||
@ -1835,12 +1837,14 @@ function AUFTRAG:AddRequiredPayload(Payload)
|
||||
|
||||
table.insert(self.payloads, Payload)
|
||||
|
||||
return self
|
||||
end
|
||||
|
||||
|
||||
--- Add a Ops group to the mission.
|
||||
-- @param #AUFTRAG self
|
||||
-- @param Ops.OpsGroup#OPSGROUP OpsGroup The OPSGROUP object.
|
||||
-- @return #AUFTRAG self
|
||||
function AUFTRAG:AddOpsGroup(OpsGroup)
|
||||
self:T(self.lid..string.format("Adding Ops group %s", OpsGroup.groupname))
|
||||
|
||||
@ -1853,11 +1857,13 @@ function AUFTRAG:AddOpsGroup(OpsGroup)
|
||||
|
||||
self.groupdata[OpsGroup.groupname]=groupdata
|
||||
|
||||
return self
|
||||
end
|
||||
|
||||
--- Remove an Ops group from the mission.
|
||||
-- @param #AUFTRAG self
|
||||
-- @param Ops.OpsGroup#OPSGROUP OpsGroup The OPSGROUP object.
|
||||
-- @return #AUFTRAG self
|
||||
function AUFTRAG:DelOpsGroup(OpsGroup)
|
||||
self:T(self.lid..string.format("Removing OPS group %s", OpsGroup and OpsGroup.groupname or "nil (ERROR)!"))
|
||||
|
||||
@ -1870,6 +1876,7 @@ function AUFTRAG:DelOpsGroup(OpsGroup)
|
||||
|
||||
end
|
||||
|
||||
return self
|
||||
end
|
||||
|
||||
--- Check if mission is PLANNED.
|
||||
|
||||
@ -1020,6 +1020,8 @@ function FLIGHTGROUP:onafterStatus(From, Event, To)
|
||||
if self:IsAlive() and self.group:IsAirborne(true) then
|
||||
|
||||
local fuelmin=self:GetFuelMin()
|
||||
|
||||
self:I(self.lid..string.format("Fuel state=%d", fuelmin))
|
||||
|
||||
if fuelmin>=self.fuellowthresh then
|
||||
self.fuellow=false
|
||||
@ -2751,8 +2753,10 @@ end
|
||||
-- @param #string To To state.
|
||||
function FLIGHTGROUP:onafterFuelLow(From, Event, To)
|
||||
|
||||
local fuel=self:GetFuelMin() or 0
|
||||
|
||||
-- Debug message.
|
||||
local text=string.format("Low fuel for flight group %s", self.groupname)
|
||||
local text=string.format("Low fuel %d for flight group %s", fuel, self.groupname)
|
||||
self:I(self.lid..text)
|
||||
|
||||
-- Set switch to true.
|
||||
|
||||
@ -7663,6 +7663,12 @@ function OPSGROUP:GetTACAN()
|
||||
return self.tacan.Channel, self.tacan.Morse, self.tacan.Band, self.tacan.On, self.tacan.BeaconName
|
||||
end
|
||||
|
||||
--- Get current TACAN parameters.
|
||||
-- @param #OPSGROUP self
|
||||
-- @return #OPSGROUP.Beacon TACAN beacon.
|
||||
function OPSGROUP:GetBeaconTACAN()
|
||||
return self.tacan
|
||||
end
|
||||
|
||||
|
||||
--- Set default ICLS parameters.
|
||||
|
||||
@ -302,7 +302,7 @@ function SQUADRON:SetTakeoffType(TakeoffType)
|
||||
return self
|
||||
end
|
||||
|
||||
--- Set takeoff type cold (default).
|
||||
--- Set takeoff type cold (default). All assets of this squadron will be spawned with engines off (cold).
|
||||
-- @param #SQUADRON self
|
||||
-- @return #SQUADRON self
|
||||
function SQUADRON:SetTakeoffCold()
|
||||
@ -310,7 +310,7 @@ function SQUADRON:SetTakeoffCold()
|
||||
return self
|
||||
end
|
||||
|
||||
--- Set takeoff type hot.
|
||||
--- Set takeoff type hot. All assets of this squadron will be spawned with engines on (hot).
|
||||
-- @param #SQUADRON self
|
||||
-- @return #SQUADRON self
|
||||
function SQUADRON:SetTakeoffHot()
|
||||
@ -801,7 +801,8 @@ end
|
||||
-- @param #string To To state.
|
||||
function SQUADRON:onafterStop(From, Event, To)
|
||||
|
||||
self:I(self.lid.."STOPPING Squadron!")
|
||||
-- Debug info.
|
||||
self:I(self.lid.."STOPPING Squadron and removing all assets!")
|
||||
|
||||
-- Remove all assets.
|
||||
for i=#self.assets,1,-1 do
|
||||
@ -809,6 +810,7 @@ function SQUADRON:onafterStop(From, Event, To)
|
||||
self:DelAsset(asset)
|
||||
end
|
||||
|
||||
-- Clear call scheduler.
|
||||
self.CallScheduler:Clear()
|
||||
|
||||
end
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user