This commit is contained in:
Frank
2021-07-02 23:11:51 +02:00
parent 1cc012c7d1
commit 74bdeaf4f7
6 changed files with 32 additions and 11 deletions

View File

@@ -2631,9 +2631,8 @@ end
--- Check parking ID. --- Check parking ID.
-- @param #WAREHOUSE self -- @param #WAREHOUSE self
-- @param Wrapper.Airbase#AIRBASE.ParkingSpot spot Parking spot. -- @param Wrapper.Airbase#AIRBASE.ParkingSpot spot Parking spot.
-- @param Wrapper.Airbase#AIRBASE airbase The airbase.
-- @return #boolean If true, parking is valid. -- @return #boolean If true, parking is valid.
function WAREHOUSE:_CheckParkingValid(spot, airbase) function WAREHOUSE:_CheckParkingValid(spot)
if self.parkingIDs==nil then if self.parkingIDs==nil then
return true return true
@@ -7841,7 +7840,7 @@ function WAREHOUSE:_FindParkingForAssets(airbase, assets)
local parkingspot=_parkingspot --Wrapper.Airbase#AIRBASE.ParkingSpot local parkingspot=_parkingspot --Wrapper.Airbase#AIRBASE.ParkingSpot
-- Check correct terminal type for asset. We don't want helos in shelters etc. -- 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. -- Coordinate of the parking spot.
local _spot=parkingspot.Coordinate -- Core.Point#COORDINATE local _spot=parkingspot.Coordinate -- Core.Point#COORDINATE

View File

@@ -1429,7 +1429,7 @@ function AIRWING:onafterMissionRequest(From, Event, To, Mission)
asset.flightgroup:AddMission(Mission) asset.flightgroup:AddMission(Mission)
-- Trigger event. -- Trigger event.
self:FlightOnMission(asset.flightgroup, Mission) self:__FlightOnMission(5, asset.flightgroup, Mission)
else else
self:E(self.lid.."ERROR: flight group for asset does NOT exist!") 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() local Tacan=squadron:FetchTacan()
if Tacan then if Tacan then
asset.tacan=Tacan asset.tacan=Tacan
--flightgroup:SetDefaultTACAN(Tacan,Morse,UnitName,Band,OffSwitch)
flightgroup:SwitchTACAN(Tacan, Morse, UnitName, Band)
end end
-- Set radio frequency and modulation -- Set radio frequency and modulation
@@ -1689,19 +1691,19 @@ function AIRWING:onafterAssetSpawned(From, Event, To, group, asset, request)
if mission then if mission then
if Tacan then if Tacan then
mission:SetTACAN(Tacan, Morse, UnitName, Band) --mission:SetTACAN(Tacan, Morse, UnitName, Band)
end end
-- Add mission to flightgroup queue. -- Add mission to flightgroup queue.
asset.flightgroup:AddMission(mission) asset.flightgroup:AddMission(mission)
-- Trigger event. -- Trigger event.
self:FlightOnMission(flightgroup, mission) self:__FlightOnMission(5, flightgroup, mission)
else else
if Tacan then if Tacan then
flightgroup:SwitchTACAN(Tacan, Morse, UnitName, Band) --flightgroup:SwitchTACAN(Tacan, Morse, UnitName, Band)
end end
end end
@@ -1743,6 +1745,7 @@ end
-- @param #string To To state. -- @param #string To To state.
function AIRWING:onafterDestroyed(From, Event, To) function AIRWING:onafterDestroyed(From, Event, To)
-- Debug message.
self:I(self.lid.."Airwing warehouse destroyed!") self:I(self.lid.."Airwing warehouse destroyed!")
-- Cancel all missions. -- Cancel all missions.

View File

@@ -1823,6 +1823,8 @@ function AUFTRAG:AssignSquadrons(Squadrons)
end end
self.squadrons=Squadrons self.squadrons=Squadrons
return self
end 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. --- 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) table.insert(self.payloads, Payload)
return self
end end
--- Add a Ops group to the mission. --- Add a Ops group to the mission.
-- @param #AUFTRAG self -- @param #AUFTRAG self
-- @param Ops.OpsGroup#OPSGROUP OpsGroup The OPSGROUP object. -- @param Ops.OpsGroup#OPSGROUP OpsGroup The OPSGROUP object.
-- @return #AUFTRAG self
function AUFTRAG:AddOpsGroup(OpsGroup) function AUFTRAG:AddOpsGroup(OpsGroup)
self:T(self.lid..string.format("Adding Ops group %s", OpsGroup.groupname)) 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 self.groupdata[OpsGroup.groupname]=groupdata
return self
end end
--- Remove an Ops group from the mission. --- Remove an Ops group from the mission.
-- @param #AUFTRAG self -- @param #AUFTRAG self
-- @param Ops.OpsGroup#OPSGROUP OpsGroup The OPSGROUP object. -- @param Ops.OpsGroup#OPSGROUP OpsGroup The OPSGROUP object.
-- @return #AUFTRAG self
function AUFTRAG:DelOpsGroup(OpsGroup) function AUFTRAG:DelOpsGroup(OpsGroup)
self:T(self.lid..string.format("Removing OPS group %s", OpsGroup and OpsGroup.groupname or "nil (ERROR)!")) 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 end
return self
end end
--- Check if mission is PLANNED. --- Check if mission is PLANNED.

View File

@@ -1020,6 +1020,8 @@ function FLIGHTGROUP:onafterStatus(From, Event, To)
if self:IsAlive() and self.group:IsAirborne(true) then if self:IsAlive() and self.group:IsAirborne(true) then
local fuelmin=self:GetFuelMin() local fuelmin=self:GetFuelMin()
self:I(self.lid..string.format("Fuel state=%d", fuelmin))
if fuelmin>=self.fuellowthresh then if fuelmin>=self.fuellowthresh then
self.fuellow=false self.fuellow=false
@@ -2751,8 +2753,10 @@ end
-- @param #string To To state. -- @param #string To To state.
function FLIGHTGROUP:onafterFuelLow(From, Event, To) function FLIGHTGROUP:onafterFuelLow(From, Event, To)
local fuel=self:GetFuelMin() or 0
-- Debug message. -- 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) self:I(self.lid..text)
-- Set switch to true. -- Set switch to true.

View File

@@ -7663,6 +7663,12 @@ function OPSGROUP:GetTACAN()
return self.tacan.Channel, self.tacan.Morse, self.tacan.Band, self.tacan.On, self.tacan.BeaconName return self.tacan.Channel, self.tacan.Morse, self.tacan.Band, self.tacan.On, self.tacan.BeaconName
end end
--- Get current TACAN parameters.
-- @param #OPSGROUP self
-- @return #OPSGROUP.Beacon TACAN beacon.
function OPSGROUP:GetBeaconTACAN()
return self.tacan
end
--- Set default ICLS parameters. --- Set default ICLS parameters.

View File

@@ -302,7 +302,7 @@ function SQUADRON:SetTakeoffType(TakeoffType)
return self return self
end 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 -- @param #SQUADRON self
-- @return #SQUADRON self -- @return #SQUADRON self
function SQUADRON:SetTakeoffCold() function SQUADRON:SetTakeoffCold()
@@ -310,7 +310,7 @@ function SQUADRON:SetTakeoffCold()
return self return self
end end
--- Set takeoff type hot. --- Set takeoff type hot. All assets of this squadron will be spawned with engines on (hot).
-- @param #SQUADRON self -- @param #SQUADRON self
-- @return #SQUADRON self -- @return #SQUADRON self
function SQUADRON:SetTakeoffHot() function SQUADRON:SetTakeoffHot()
@@ -801,7 +801,8 @@ end
-- @param #string To To state. -- @param #string To To state.
function SQUADRON:onafterStop(From, Event, To) 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. -- Remove all assets.
for i=#self.assets,1,-1 do for i=#self.assets,1,-1 do
@@ -809,6 +810,7 @@ function SQUADRON:onafterStop(From, Event, To)
self:DelAsset(asset) self:DelAsset(asset)
end end
-- Clear call scheduler.
self.CallScheduler:Clear() self.CallScheduler:Clear()
end end