mirror of
https://github.com/FlightControl-Master/MOOSE.git
synced 2025-10-29 16:58:06 +00:00
Following up on the requirement #636 a new default management system has been built...
A lot of new methods have been added to set the default behaviour for: * function AI_A2A_DISPATCHER:SetDefaultTakeoff( Takeoff ) * function AI_A2A_DISPATCHER:SetDefaultTakeoffFromParkingCold() * function AI_A2A_DISPATCHER:SetDefaultTakeoffFromParkingHot() * function AI_A2A_DISPATCHER:SetDefaultTakeoffFromRunway() * function AI_A2A_DISPATCHER:SetDefaultTakeoffInAir() * function AI_A2A_DISPATCHER:SetDefaultLanding( Landing ) * function AI_A2A_DISPATCHER:SetDefaultLandingAtEngineShutdown() * function AI_A2A_DISPATCHER:SetDefaultLandingAtRunway() * function AI_A2A_DISPATCHER:SetDefaultLandingNearAirbase() * function AI_A2A_DISPATCHER:SetDefaultGrouping( Grouping ) * function AI_A2A_DISPATCHER:SetDefaultOverhead( Overhead )
This commit is contained in:
parent
600166fd80
commit
61fe3cf457
@ -4,13 +4,6 @@
|
||||
--
|
||||
-- ====
|
||||
--
|
||||
-- ### Authors: **Sven Van de Velde (FlightControl)** rework of GCICAP + introduction of new concepts (squadrons).
|
||||
-- ### Authors: **Stonehouse**, **SNAFU** in terms of the advice, documentation, and the original GCICAP script.
|
||||
--
|
||||
-- ### Contributions:
|
||||
--
|
||||
-- ====
|
||||
--
|
||||
-- # QUICK START GUIDE
|
||||
--
|
||||
-- There are basically two classes available to model an A2A defense system.
|
||||
@ -18,7 +11,7 @@
|
||||
-- AI\_A2A\_DISPATCHER is the main A2A defense class that models the A2A defense system.
|
||||
-- AI\_A2A\_GCICAP derives or inherits from AI\_A2A\_DISPATCHER and is a more **noob** user friendly class, but is less flexible.
|
||||
--
|
||||
-- Before you start using the AI\_A2A\_DISPATCHER or AI\_A2A\_GCICAP ask youself the following questions:
|
||||
-- Before you start using the AI\_A2A\_DISPATCHER or AI\_A2A\_GCICAP ask youself the following questions.
|
||||
--
|
||||
-- ## 0. Do I need AI\_A2A\_DISPATCHER or do I need AI\_A2A\_GCICAP?
|
||||
--
|
||||
@ -122,18 +115,22 @@
|
||||
--
|
||||
-- For each Squadron, evaluate which takeoff method will be used:
|
||||
--
|
||||
-- * Straight from the air (default)
|
||||
-- * Straight from the air
|
||||
-- * From the runway
|
||||
-- * From a parking spot with running engines
|
||||
-- * From a parking spot with cold engines
|
||||
--
|
||||
-- **The default takeoff method is staight in the air.**
|
||||
--
|
||||
-- ## 17. For each Squadron, which landing method will I use?
|
||||
--
|
||||
-- For each Squadron, evaluate which landing method will be used:
|
||||
--
|
||||
-- * Near the airbase when returning (default)
|
||||
-- * After landing on the runway
|
||||
-- * After engine shutdown after landing
|
||||
-- * Despawn near the airbase when returning
|
||||
-- * Despawn after landing on the runway
|
||||
-- * Despawn after engine shutdown after landing
|
||||
--
|
||||
-- **The default landing method is despawn when near the airbase when returning.**
|
||||
--
|
||||
-- ## 18. For each Squadron, which overhead will I use?
|
||||
--
|
||||
@ -142,11 +139,20 @@
|
||||
-- The **Y** is dependent on the type of airplane (era), payload, fuel levels, skills etc.
|
||||
-- The overhead is a **factor** that will calculate dynamically how many **Y** defenses will be required based on **X** attackers detected.
|
||||
--
|
||||
-- **The default overhead is 1. A value greater than 1, like 1.5 will increase the overhead with 50%, a value smaller than 1, like 0.5 will decrease the overhead with 50%.**
|
||||
--
|
||||
-- ## 19. For each Squadron, which grouping will I use?
|
||||
--
|
||||
-- When multiple targets are detected, how will defense airplanes be grouped when multiple defense airplanes are spawned for multiple attackers?
|
||||
-- Per one, two, three, four?
|
||||
--
|
||||
-- **The default grouping is 1. That means, that each spawned defender will act individually.**
|
||||
--
|
||||
-- ===
|
||||
--
|
||||
-- ### Authors: **Sven Van de Velde (FlightControl)** rework of GCICAP + introduction of new concepts (squadrons).
|
||||
-- ### Authors: **Stonehouse**, **SNAFU** in terms of the advice, documentation, and the original GCICAP script.
|
||||
--
|
||||
-- @module AI_A2A_Dispatcher
|
||||
|
||||
--BASE:TraceClass("AI_A2A_DISPATCHER")
|
||||
@ -192,7 +198,7 @@ do -- AI_A2A_DISPATCHER
|
||||
-- Note that in order to create a two way A2A defense system, two AI\_A2A\_DISPATCHER defense system may need to be created, for each coalition one.
|
||||
-- This is a good implementation, because maybe in the future, more coalitions may become available in DCS world.
|
||||
--
|
||||
-- ---
|
||||
-- ===
|
||||
--
|
||||
-- # USAGE GUIDE
|
||||
--
|
||||
@ -340,6 +346,15 @@ do -- AI_A2A_DISPATCHER
|
||||
-- * @{#AI_A2A_DISPATCHER.SetSquadronTakeoffFromParkingHot}() will spawn new aircraft in with running engines at a parking spot at the airfield.
|
||||
-- * @{#AI_A2A_DISPATCHER.SetSquadronTakeoffFromRunway}() will spawn new aircraft at the runway at the airfield.
|
||||
--
|
||||
-- **The default landing method is to spawn new aircraft directly in the air.**
|
||||
-- **The default takeoff method can be set for ALL squadrons that don't have an individual takeoff method configured.**
|
||||
--
|
||||
-- * @{#AI_A2A_DISPATCHER.SetDefaultTakeoff}() is the generic configuration method to control takeoff by default from the air, hot, cold or from the runway. See the method for further details.
|
||||
-- * @{#AI_A2A_DISPATCHER.SetDefaultTakeoffInAir}() will spawn by default new aircraft from the squadron directly in the air.
|
||||
-- * @{#AI_A2A_DISPATCHER.SetDefaultTakeoffFromParkingCold}() will spawn by default new aircraft in without running engines at a parking spot at the airfield.
|
||||
-- * @{#AI_A2A_DISPATCHER.SetDefaultTakeoffFromParkingHot}() will spawn by default new aircraft in with running engines at a parking spot at the airfield.
|
||||
-- * @{#AI_A2A_DISPATCHER.SetDefaultTakeoffFromRunway}() will spawn by default new aircraft at the runway at the airfield.
|
||||
--
|
||||
-- Use these methods to fine-tune for specific airfields that are known to create bottlenecks, or have reduced airbase efficiency.
|
||||
-- The more and the longer aircraft need to taxi at an airfield, the more risk there is that:
|
||||
--
|
||||
@ -360,6 +375,13 @@ do -- AI_A2A_DISPATCHER
|
||||
-- * @{#AI_A2A_DISPATCHER.SetSquadronLandingAtRunway}() will despawn the returning aircraft directly after landing at the runway.
|
||||
-- * @{#AI_A2A_DISPATCHER.SetSquadronLandingAtEngineShutdown}() will despawn the returning aircraft when the aircraft has returned to its parking spot and has turned off its engines.
|
||||
--
|
||||
-- **The default landing method can be set for ALL squadrons that don't have an individual landing method configured.**
|
||||
--
|
||||
-- * @{#AI_A2A_DISPATCHER.SetDefaultLanding}() is the generic configuration method to control by default landing, namely despawn the aircraft near the airfield in the air, right after landing, or at engine shutdown.
|
||||
-- * @{#AI_A2A_DISPATCHER.SetDefaultLandingNearAirbase}() will despawn by default the returning aircraft in the air when near the airfield.
|
||||
-- * @{#AI_A2A_DISPATCHER.SetDefaultLandingAtRunway}() will despawn by default the returning aircraft directly after landing at the runway.
|
||||
-- * @{#AI_A2A_DISPATCHER.SetDefaultLandingAtEngineShutdown}() will despawn by default the returning aircraft when the aircraft has returned to its parking spot and has turned off its engines.
|
||||
--
|
||||
-- You can use these methods to minimize the airbase coodination overhead and to increase the airbase efficiency.
|
||||
-- When there are lots of aircraft returning for landing, at the same airbase, the takeoff process will be halted, which can cause a complete failure of the
|
||||
-- A2A defense system, as no new CAP or GCI planes can takeoff.
|
||||
@ -368,7 +390,7 @@ do -- AI_A2A_DISPATCHER
|
||||
--
|
||||
-- ### 6.3. Set squadron grouping
|
||||
--
|
||||
-- Use the method @{#AI_A2A_DISPATCHER.SetSquadronGrouping}() to set the amount of CAP or GCI flights that will take-off when spawned.
|
||||
-- Use the method @{#AI_A2A_DISPATCHER.SetSquadronGrouping}() to set the grouping of CAP or GCI flights that will take-off when spawned.
|
||||
--
|
||||
-- 
|
||||
--
|
||||
@ -379,6 +401,10 @@ do -- AI_A2A_DISPATCHER
|
||||
--
|
||||
-- The **grouping value is set for a Squadron**, and can be **dynamically adjusted** during mission execution, so to adjust the defense flights grouping when the tactical situation changes.
|
||||
--
|
||||
-- **The default grouping value can be set for ALL squadrons that don't have an individual grouping value configured.**
|
||||
--
|
||||
-- Use the method @{#AI_A2A_DISPATCHER.SetDefaultGrouping}() to set the **default grouping** of spawned airplanes for all squadrons.
|
||||
--
|
||||
-- ### 6.4. Balance or setup effectiveness of the air defenses in case of GCI
|
||||
--
|
||||
-- The effectiveness can be set with the **overhead parameter**. This is a number that is used to calculate the amount of Units that dispatching command will allocate to GCI in surplus of detected amount of units.
|
||||
@ -388,7 +414,7 @@ do -- AI_A2A_DISPATCHER
|
||||
--
|
||||
-- However, depending on the (type of) aircraft (strength and payload) in the squadron and the amount of resources available, this parameter can be changed.
|
||||
--
|
||||
-- The @{#AI_A2A_DISPATCHER.SetOverhead}() method can be used to tweak the defense strength,
|
||||
-- The @{#AI_A2A_DISPATCHER.SetSquadronOverhead}() method can be used to tweak the defense strength,
|
||||
-- taking into account the plane types of the squadron.
|
||||
--
|
||||
-- For example, a MIG-31 with full long-distance A2A missiles payload, may still be less effective than a F-15C with short missiles...
|
||||
@ -403,6 +429,10 @@ do -- AI_A2A_DISPATCHER
|
||||
--
|
||||
-- The **overhead value is set for a Squadron**, and can be **dynamically adjusted** during mission execution, so to adjust the defense overhead when the tactical situation changes.
|
||||
--
|
||||
-- **The default overhead value can be set for ALL squadrons that don't have an individual overhead value configured.**
|
||||
--
|
||||
-- Use the @{#AI_A2A_DISPATCHER.SetDefaultOverhead}() method can be used to set the default the defense strength for ALL squadrons.
|
||||
--
|
||||
-- ## 7. Setup a squadron for CAP
|
||||
--
|
||||
-- ### 7.1. Set the CAP zones
|
||||
@ -745,6 +775,7 @@ do -- AI_A2A_DISPATCHER
|
||||
self.DefenderSquadrons = {} -- The Defender Squadrons.
|
||||
self.DefenderSpawns = {}
|
||||
self.DefenderTasks = {} -- The Defenders Tasks.
|
||||
self.DefenderDefault = {} -- The Defender Default Settings over all Squadrons.
|
||||
|
||||
-- TODO: Check detection through radar.
|
||||
self.Detection:FilterCategories( { Unit.Category.AIRPLANE, Unit.Category.HELICOPTER } )
|
||||
@ -754,6 +785,12 @@ do -- AI_A2A_DISPATCHER
|
||||
self:SetEngageRadius()
|
||||
self:SetGciRadius()
|
||||
|
||||
self:SetDefaultTakeoff( AI_A2A_DISPATCHER.Takeoff.Air )
|
||||
self:SetDefaultLanding( AI_A2A_DISPATCHER.Landing.NearAirbase )
|
||||
self:SetDefaultOverhead( 1 )
|
||||
self:SetDefaultGrouping( 1 )
|
||||
|
||||
|
||||
self:AddTransition( "Started", "Assign", "Started" )
|
||||
|
||||
--- OnAfter Transition Handler for Event Assign.
|
||||
@ -1228,7 +1265,6 @@ do -- AI_A2A_DISPATCHER
|
||||
DefenderSquadron.Resources = Resources
|
||||
|
||||
self:SetSquadronOverhead( SquadronName, 1 )
|
||||
self:SetSquadronTakeoffInAir( SquadronName )
|
||||
self:SetSquadronLandingNearAirbase(SquadronName)
|
||||
|
||||
return self
|
||||
@ -1436,6 +1472,44 @@ do -- AI_A2A_DISPATCHER
|
||||
Intercept.EngageMaxSpeed = EngageMaxSpeed
|
||||
end
|
||||
|
||||
--- Defines the default amount of extra planes that will take-off as part of the defense system.
|
||||
-- @param #AI_A2A_DISPATCHER self
|
||||
-- @param #number Overhead The %-tage of Units that dispatching command will allocate to intercept in surplus of detected amount of units.
|
||||
-- The default overhead is 1, so equal balance. The @{#AI_A2A_DISPATCHER.SetOverhead}() method can be used to tweak the defense strength,
|
||||
-- taking into account the plane types of the squadron. For example, a MIG-31 with full long-distance A2A missiles payload, may still be less effective than a F-15C with short missiles...
|
||||
-- So in this case, one may want to use the Overhead method to allocate more defending planes as the amount of detected attacking planes.
|
||||
-- The overhead must be given as a decimal value with 1 as the neutral value, which means that Overhead values:
|
||||
--
|
||||
-- * Higher than 1, will increase the defense unit amounts.
|
||||
-- * Lower than 1, will decrease the defense unit amounts.
|
||||
--
|
||||
-- The amount of defending units is calculated by multiplying the amount of detected attacking planes as part of the detected group
|
||||
-- multiplied by the Overhead and rounded up to the smallest integer.
|
||||
--
|
||||
-- The Overhead value set for a Squadron, can be programmatically adjusted (by using this SetOverhead method), to adjust the defense overhead during mission execution.
|
||||
--
|
||||
-- See example below.
|
||||
--
|
||||
-- @usage:
|
||||
--
|
||||
-- local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
--
|
||||
-- -- An overhead of 1,5 with 1 planes detected, will allocate 2 planes ( 1 * 1,5 ) = 1,5 => rounded up gives 2.
|
||||
-- -- An overhead of 1,5 with 2 planes detected, will allocate 3 planes ( 2 * 1,5 ) = 3 => rounded up gives 3.
|
||||
-- -- An overhead of 1,5 with 3 planes detected, will allocate 5 planes ( 3 * 1,5 ) = 4,5 => rounded up gives 5 planes.
|
||||
-- -- An overhead of 1,5 with 4 planes detected, will allocate 6 planes ( 4 * 1,5 ) = 6 => rounded up gives 6 planes.
|
||||
--
|
||||
-- Dispatcher:SetDefaultOverhead( 1.5 )
|
||||
--
|
||||
-- @return #AI_A2A_DISPATCHER
|
||||
function AI_A2A_DISPATCHER:SetDefaultOverhead( Overhead )
|
||||
|
||||
self.DefenderDefault.Overhead = Overhead
|
||||
|
||||
return self
|
||||
end
|
||||
|
||||
|
||||
--- Defines the amount of extra planes that will take-off as part of the defense system.
|
||||
-- @param #AI_A2A_DISPATCHER self
|
||||
-- @param #string SquadronName The name of the squadron.
|
||||
@ -1464,8 +1538,7 @@ do -- AI_A2A_DISPATCHER
|
||||
-- -- An overhead of 1,5 with 3 planes detected, will allocate 5 planes ( 3 * 1,5 ) = 4,5 => rounded up gives 5 planes.
|
||||
-- -- An overhead of 1,5 with 4 planes detected, will allocate 6 planes ( 4 * 1,5 ) = 6 => rounded up gives 6 planes.
|
||||
--
|
||||
-- Dispatcher:SetSquadronOverhead( 1,5 )
|
||||
--
|
||||
-- Dispatcher:SetSquadronOverhead( "SquadronName", 1.5 )
|
||||
--
|
||||
-- @return #AI_A2A_DISPATCHER
|
||||
function AI_A2A_DISPATCHER:SetSquadronOverhead( SquadronName, Overhead )
|
||||
@ -1476,13 +1549,38 @@ do -- AI_A2A_DISPATCHER
|
||||
return self
|
||||
end
|
||||
|
||||
---
|
||||
|
||||
--- Sets the default grouping of new airplanes spawned.
|
||||
-- Grouping will trigger how new airplanes will be grouped if more than one airplane is spawned for defense.
|
||||
-- @param #AI_A2A_DISPATCHER self
|
||||
-- @param #number Grouping The level of grouping that will be applied of the CAP or GCI defenders.
|
||||
-- @usage:
|
||||
--
|
||||
-- local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
--
|
||||
-- -- Set a grouping by default per 2 airplanes.
|
||||
-- Dispatcher:SetDefaultGrouping( 2 )
|
||||
--
|
||||
--
|
||||
-- @return #AI_A2A_DISPATCHER
|
||||
function AI_A2A_DISPATCHER:SetDefaultGrouping( Grouping )
|
||||
|
||||
self.DefenderDefault.Grouping = Grouping
|
||||
|
||||
return self
|
||||
end
|
||||
|
||||
|
||||
--- Sets the grouping of new airplanes spawned.
|
||||
-- Grouping will trigger how new airplanes will be grouped if more than one airplane is spawned for defense.
|
||||
-- @param #AI_A2A_DISPATCHER self
|
||||
-- @param #string SquadronName The name of the squadron.
|
||||
-- @param #number Grouping The level of grouping that will be applied of the CAP or GCI defenders.
|
||||
-- @usage:
|
||||
--
|
||||
-- local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
--
|
||||
-- -- Set a grouping per 2 airplanes.
|
||||
-- Dispatcher:SetSquadronGrouping( "SquadronName", 2 )
|
||||
--
|
||||
--
|
||||
@ -1495,6 +1593,36 @@ do -- AI_A2A_DISPATCHER
|
||||
return self
|
||||
end
|
||||
|
||||
|
||||
--- Defines the default method at which new flights will spawn and take-off as part of the defense system.
|
||||
-- @param #AI_A2A_DISPATCHER self
|
||||
-- @param #number Takeoff From the airbase hot, from the airbase cold, in the air, from the runway.
|
||||
-- @usage:
|
||||
--
|
||||
-- local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
--
|
||||
-- -- Let new flights by default take-off in the air.
|
||||
-- Dispatcher:SetDefaultTakeoff( AI_A2A_Dispatcher.Takeoff.Air )
|
||||
--
|
||||
-- -- Let new flights by default take-off from the runway.
|
||||
-- Dispatcher:SetDefaultTakeoff( AI_A2A_Dispatcher.Takeoff.Runway )
|
||||
--
|
||||
-- -- Let new flights by default take-off from the airbase hot.
|
||||
-- Dispatcher:SetDefaultTakeoff( AI_A2A_Dispatcher.Takeoff.Hot )
|
||||
--
|
||||
-- -- Let new flights by default take-off from the airbase cold.
|
||||
-- Dispatcher:SetDefaultTakeoff( AI_A2A_Dispatcher.Takeoff.Cold )
|
||||
--
|
||||
--
|
||||
-- @return #AI_A2A_DISPATCHER
|
||||
--
|
||||
function AI_A2A_DISPATCHER:SetDefaultTakeoff( Takeoff )
|
||||
|
||||
self.DefenderDefault.Takeoff = Takeoff
|
||||
|
||||
return self
|
||||
end
|
||||
|
||||
--- Defines the method at which new flights will spawn and take-off as part of the defense system.
|
||||
-- @param #AI_A2A_DISPATCHER self
|
||||
-- @param #string SquadronName The name of the squadron.
|
||||
@ -1527,6 +1655,24 @@ do -- AI_A2A_DISPATCHER
|
||||
end
|
||||
|
||||
|
||||
--- Gets the default method at which new flights will spawn and take-off as part of the defense system.
|
||||
-- @param #AI_A2A_DISPATCHER self
|
||||
-- @return #number Takeoff From the airbase hot, from the airbase cold, in the air, from the runway.
|
||||
-- @usage:
|
||||
--
|
||||
-- local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
--
|
||||
-- -- Let new flights by default take-off in the air.
|
||||
-- local TakeoffMethod = Dispatcher:GetDefaultTakeoff()
|
||||
-- if TakeOffMethod == , AI_A2A_Dispatcher.Takeoff.InAir then
|
||||
-- ...
|
||||
-- end
|
||||
--
|
||||
function AI_A2A_DISPATCHER:GetDefaultTakeoff( )
|
||||
|
||||
return self.DefenderDefault.Takeoff
|
||||
end
|
||||
|
||||
--- Gets the method at which new flights will spawn and take-off as part of the defense system.
|
||||
-- @param #AI_A2A_DISPATCHER self
|
||||
-- @param #string SquadronName The name of the squadron.
|
||||
@ -1544,7 +1690,26 @@ do -- AI_A2A_DISPATCHER
|
||||
function AI_A2A_DISPATCHER:GetSquadronTakeoff( SquadronName )
|
||||
|
||||
local DefenderSquadron = self:GetSquadron( SquadronName )
|
||||
return DefenderSquadron.Takeoff
|
||||
return DefenderSquadron.Takeoff or self.DefenderDefault.Takeoff
|
||||
end
|
||||
|
||||
|
||||
--- Sets flights to default take-off in the air, as part of the defense system.
|
||||
-- @param #AI_A2A_DISPATCHER self
|
||||
-- @usage:
|
||||
--
|
||||
-- local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
--
|
||||
-- -- Let new flights by default take-off in the air.
|
||||
-- Dispatcher:SetDefaultTakeoffInAir()
|
||||
--
|
||||
-- @return #AI_A2A_DISPATCHER
|
||||
--
|
||||
function AI_A2A_DISPATCHER:SetDefaultTakeoffInAir()
|
||||
|
||||
self:SetDefaultTakeoff( AI_A2A_DISPATCHER.Takeoff.Air )
|
||||
|
||||
return self
|
||||
end
|
||||
|
||||
|
||||
@ -1568,6 +1733,25 @@ do -- AI_A2A_DISPATCHER
|
||||
end
|
||||
|
||||
|
||||
--- Sets flights by default to take-off from the runway, as part of the defense system.
|
||||
-- @param #AI_A2A_DISPATCHER self
|
||||
-- @usage:
|
||||
--
|
||||
-- local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
--
|
||||
-- -- Let new flights by default take-off from the runway.
|
||||
-- Dispatcher:SetDefaultTakeoffFromRunway()
|
||||
--
|
||||
-- @return #AI_A2A_DISPATCHER
|
||||
--
|
||||
function AI_A2A_DISPATCHER:SetDefaultTakeoffFromRunway()
|
||||
|
||||
self:SetDefaultTakeoff( AI_A2A_DISPATCHER.Takeoff.Runway )
|
||||
|
||||
return self
|
||||
end
|
||||
|
||||
|
||||
--- Sets flights to take-off from the runway, as part of the defense system.
|
||||
-- @param #AI_A2A_DISPATCHER self
|
||||
-- @param #string SquadronName The name of the squadron.
|
||||
@ -1575,7 +1759,7 @@ do -- AI_A2A_DISPATCHER
|
||||
--
|
||||
-- local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
--
|
||||
-- -- Let new flights take-off in the air.
|
||||
-- -- Let new flights take-off from the runway.
|
||||
-- Dispatcher:SetSquadronTakeoffFromRunway( "SquadronName" )
|
||||
--
|
||||
-- @return #AI_A2A_DISPATCHER
|
||||
@ -1588,6 +1772,24 @@ do -- AI_A2A_DISPATCHER
|
||||
end
|
||||
|
||||
|
||||
--- Sets flights by default to take-off from the airbase at a hot location, as part of the defense system.
|
||||
-- @param #AI_A2A_DISPATCHER self
|
||||
-- @usage:
|
||||
--
|
||||
-- local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
--
|
||||
-- -- Let new flights by default take-off at a hot parking spot.
|
||||
-- Dispatcher:SetDefaultTakeoffFromParkingHot()
|
||||
--
|
||||
-- @return #AI_A2A_DISPATCHER
|
||||
--
|
||||
function AI_A2A_DISPATCHER:SetDefaultTakeoffFromParkingHot()
|
||||
|
||||
self:SetDefaultTakeoff( AI_A2A_DISPATCHER.Takeoff.Hot )
|
||||
|
||||
return self
|
||||
end
|
||||
|
||||
--- Sets flights to take-off from the airbase at a hot location, as part of the defense system.
|
||||
-- @param #AI_A2A_DISPATCHER self
|
||||
-- @param #string SquadronName The name of the squadron.
|
||||
@ -1607,6 +1809,26 @@ do -- AI_A2A_DISPATCHER
|
||||
return self
|
||||
end
|
||||
|
||||
|
||||
--- Sets flights to by default take-off from the airbase at a cold location, as part of the defense system.
|
||||
-- @param #AI_A2A_DISPATCHER self
|
||||
-- @usage:
|
||||
--
|
||||
-- local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
--
|
||||
-- -- Let new flights take-off from a cold parking spot.
|
||||
-- Dispatcher:SetDefaultTakeoffFromParkingCold()
|
||||
--
|
||||
-- @return #AI_A2A_DISPATCHER
|
||||
--
|
||||
function AI_A2A_DISPATCHER:SetDefaultTakeoffFromParkingCold()
|
||||
|
||||
self:SetDefaultTakeoff( AI_A2A_DISPATCHER.Takeoff.Cold )
|
||||
|
||||
return self
|
||||
end
|
||||
|
||||
|
||||
--- Sets flights to take-off from the airbase at a cold location, as part of the defense system.
|
||||
-- @param #AI_A2A_DISPATCHER self
|
||||
-- @param #string SquadronName The name of the squadron.
|
||||
@ -1614,7 +1836,7 @@ do -- AI_A2A_DISPATCHER
|
||||
--
|
||||
-- local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
--
|
||||
-- -- Let new flights take-off in the air.
|
||||
-- -- Let new flights take-off from a cold parking spot.
|
||||
-- Dispatcher:SetSquadronTakeoffFromParkingCold( "SquadronName" )
|
||||
--
|
||||
-- @return #AI_A2A_DISPATCHER
|
||||
@ -1627,6 +1849,31 @@ do -- AI_A2A_DISPATCHER
|
||||
end
|
||||
|
||||
|
||||
--- Defines the default method at which flights will land and despawn as part of the defense system.
|
||||
-- @param #AI_A2A_DISPATCHER self
|
||||
-- @param #number Landing The landing method which can be NearAirbase, AtRunway, AtEngineShutdown
|
||||
-- @usage:
|
||||
--
|
||||
-- local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
--
|
||||
-- -- Let new flights by default despawn near the airbase when returning.
|
||||
-- Dispatcher:SetDefaultLanding( AI_A2A_Dispatcher.Landing.NearAirbase )
|
||||
--
|
||||
-- -- Let new flights by default despawn after landing land at the runway.
|
||||
-- Dispatcher:SetDefaultLanding( AI_A2A_Dispatcher.Landing.AtRunway )
|
||||
--
|
||||
-- -- Let new flights by default despawn after landing and parking, and after engine shutdown.
|
||||
-- Dispatcher:SetDefaultLanding( AI_A2A_Dispatcher.Landing.AtEngineShutdown )
|
||||
--
|
||||
-- @return #AI_A2A_DISPATCHER
|
||||
function AI_A2A_DISPATCHER:SetDefaultLanding( Landing )
|
||||
|
||||
self.DefenderDefault.Landing = Landing
|
||||
|
||||
return self
|
||||
end
|
||||
|
||||
|
||||
--- Defines the method at which flights will land and despawn as part of the defense system.
|
||||
-- @param #AI_A2A_DISPATCHER self
|
||||
-- @param #string SquadronName The name of the squadron.
|
||||
@ -1635,13 +1882,13 @@ do -- AI_A2A_DISPATCHER
|
||||
--
|
||||
-- local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
--
|
||||
-- -- Let new flights take-off in the air.
|
||||
-- -- Let new flights despawn near the airbase when returning.
|
||||
-- Dispatcher:SetSquadronLanding( "SquadronName", AI_A2A_Dispatcher.Landing.NearAirbase )
|
||||
--
|
||||
-- -- Let new flights take-off from the runway.
|
||||
-- -- Let new flights despawn after landing land at the runway.
|
||||
-- Dispatcher:SetSquadronLanding( "SquadronName", AI_A2A_Dispatcher.Landing.AtRunway )
|
||||
--
|
||||
-- -- Let new flights take-off from the airbase hot.
|
||||
-- -- Let new flights despawn after landing and parking, and after engine shutdown.
|
||||
-- Dispatcher:SetSquadronLanding( "SquadronName", AI_A2A_Dispatcher.Landing.AtEngineShutdown )
|
||||
--
|
||||
-- @return #AI_A2A_DISPATCHER
|
||||
@ -1654,6 +1901,25 @@ do -- AI_A2A_DISPATCHER
|
||||
end
|
||||
|
||||
|
||||
--- Gets the default method at which flights will land and despawn as part of the defense system.
|
||||
-- @param #AI_A2A_DISPATCHER self
|
||||
-- @return #number Landing The landing method which can be NearAirbase, AtRunway, AtEngineShutdown
|
||||
-- @usage:
|
||||
--
|
||||
-- local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
--
|
||||
-- -- Let new flights by default despawn near the airbase when returning.
|
||||
-- local LandingMethod = Dispatcher:GetDefaultLanding( AI_A2A_Dispatcher.Landing.NearAirbase )
|
||||
-- if LandingMethod == AI_A2A_Dispatcher.Landing.NearAirbase then
|
||||
-- ...
|
||||
-- end
|
||||
--
|
||||
function AI_A2A_DISPATCHER:GetDefaultLanding()
|
||||
|
||||
return self.DefenderDefault.Landing
|
||||
end
|
||||
|
||||
|
||||
--- Gets the method at which flights will land and despawn as part of the defense system.
|
||||
-- @param #AI_A2A_DISPATCHER self
|
||||
-- @param #string SquadronName The name of the squadron.
|
||||
@ -1662,7 +1928,7 @@ do -- AI_A2A_DISPATCHER
|
||||
--
|
||||
-- local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
--
|
||||
-- -- Let new flights take-off in the air.
|
||||
-- -- Let new flights despawn near the airbase when returning.
|
||||
-- local LandingMethod = Dispatcher:GetSquadronLanding( "SquadronName", AI_A2A_Dispatcher.Landing.NearAirbase )
|
||||
-- if LandingMethod == AI_A2A_Dispatcher.Landing.NearAirbase then
|
||||
-- ...
|
||||
@ -1671,7 +1937,25 @@ do -- AI_A2A_DISPATCHER
|
||||
function AI_A2A_DISPATCHER:GetSquadronLanding( SquadronName )
|
||||
|
||||
local DefenderSquadron = self:GetSquadron( SquadronName )
|
||||
return DefenderSquadron.Landing
|
||||
return DefenderSquadron.Landing or self.DefenderDefault.Landing
|
||||
end
|
||||
|
||||
|
||||
--- Sets flights by default to land and despawn near the airbase in the air, as part of the defense system.
|
||||
-- @param #AI_A2A_DISPATCHER self
|
||||
-- @usage:
|
||||
--
|
||||
-- local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
--
|
||||
-- -- Let flights by default to land near the airbase and despawn.
|
||||
-- Dispatcher:SetDefaultLandingNearAirbase()
|
||||
--
|
||||
-- @return #AI_A2A_DISPATCHER
|
||||
function AI_A2A_DISPATCHER:SetDefaultLandingNearAirbase()
|
||||
|
||||
self:SetDefaultLanding( AI_A2A_DISPATCHER.Landing.NearAirbase )
|
||||
|
||||
return self
|
||||
end
|
||||
|
||||
|
||||
@ -1682,7 +1966,7 @@ do -- AI_A2A_DISPATCHER
|
||||
--
|
||||
-- local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
--
|
||||
-- -- Let flights land in the air and despawn.
|
||||
-- -- Let flights to land near the airbase and despawn.
|
||||
-- Dispatcher:SetSquadronLandingNearAirbase( "SquadronName" )
|
||||
--
|
||||
-- @return #AI_A2A_DISPATCHER
|
||||
@ -1694,6 +1978,24 @@ do -- AI_A2A_DISPATCHER
|
||||
end
|
||||
|
||||
|
||||
--- Sets flights by default to land and despawn at the runway, as part of the defense system.
|
||||
-- @param #AI_A2A_DISPATCHER self
|
||||
-- @usage:
|
||||
--
|
||||
-- local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
--
|
||||
-- -- Let flights by default land at the runway and despawn.
|
||||
-- Dispatcher:SetDefaultLandingAtRunway()
|
||||
--
|
||||
-- @return #AI_A2A_DISPATCHER
|
||||
function AI_A2A_DISPATCHER:SetDefaultLandingAtRunway()
|
||||
|
||||
self:SetDefaultLanding( AI_A2A_DISPATCHER.Landing.AtRunway )
|
||||
|
||||
return self
|
||||
end
|
||||
|
||||
|
||||
--- Sets flights to land and despawn at the runway, as part of the defense system.
|
||||
-- @param #AI_A2A_DISPATCHER self
|
||||
-- @param #string SquadronName The name of the squadron.
|
||||
@ -1713,6 +2015,24 @@ do -- AI_A2A_DISPATCHER
|
||||
end
|
||||
|
||||
|
||||
--- Sets flights by default to land and despawn at engine shutdown, as part of the defense system.
|
||||
-- @param #AI_A2A_DISPATCHER self
|
||||
-- @usage:
|
||||
--
|
||||
-- local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
--
|
||||
-- -- Let flights by default land and despawn at engine shutdown.
|
||||
-- Dispatcher:SetDefaultLandingAtEngineShutdown()
|
||||
--
|
||||
-- @return #AI_A2A_DISPATCHER
|
||||
function AI_A2A_DISPATCHER:SetDefaultLandingAtEngineShutdown()
|
||||
|
||||
self:SetDefaultLanding( AI_A2A_DISPATCHER.Landing.AtEngineShutdown )
|
||||
|
||||
return self
|
||||
end
|
||||
|
||||
|
||||
--- Sets flights to land and despawn at engine shutdown, as part of the defense system.
|
||||
-- @param #AI_A2A_DISPATCHER self
|
||||
-- @param #string SquadronName The name of the squadron.
|
||||
@ -1889,7 +2209,8 @@ do -- AI_A2A_DISPATCHER
|
||||
if Cap then
|
||||
|
||||
local Spawn = DefenderSquadron.Spawn[ math.random( 1, #DefenderSquadron.Spawn ) ] -- Functional.Spawn#SPAWN
|
||||
Spawn:InitGrouping( DefenderSquadron.Grouping )
|
||||
local DefenderGrouping = DefenderSquadron.Grouping or self.DefenderDefault.Grouping
|
||||
Spawn:InitGrouping( DefenderGrouping )
|
||||
|
||||
local TakeoffMethod = self:GetSquadronTakeoff( SquadronName )
|
||||
local DefenderCAP = Spawn:SpawnAtAirbase( DefenderSquadron.Airbase, TakeoffMethod )
|
||||
@ -2005,8 +2326,8 @@ do -- AI_A2A_DISPATCHER
|
||||
|
||||
if Gci then
|
||||
|
||||
local DefenderOverhead = DefenderSquadron.Overhead
|
||||
local DefenderGrouping = DefenderSquadron.Grouping
|
||||
local DefenderOverhead = DefenderSquadron.Overhead or self.DefenderDefault.Overhead
|
||||
local DefenderGrouping = DefenderSquadron.Grouping or self.DefenderDefault.Grouping
|
||||
local DefendersNeeded = math.ceil( DefendersCount * DefenderOverhead )
|
||||
|
||||
local Spawn = DefenderSquadron.Spawn[ math.random( 1, #DefenderSquadron.Spawn ) ]
|
||||
|
||||
@ -113,13 +113,6 @@
|
||||
|
||||
<hr/>
|
||||
|
||||
<h3>Authors: <strong>Sven Van de Velde (FlightControl)</strong> rework of GCICAP + introduction of new concepts (squadrons).</h3>
|
||||
<h3>Authors: <strong>Stonehouse</strong>, <strong>SNAFU</strong> in terms of the advice, documentation, and the original GCICAP script.</h3>
|
||||
|
||||
<h3>Contributions:</h3>
|
||||
|
||||
<hr/>
|
||||
|
||||
<h1>QUICK START GUIDE</h1>
|
||||
|
||||
<p>There are basically two classes available to model an A2A defense system.</p>
|
||||
@ -127,7 +120,7 @@
|
||||
<p>AI_A2A_DISPATCHER is the main A2A defense class that models the A2A defense system.
|
||||
AI_A2A_GCICAP derives or inherits from AI_A2A_DISPATCHER and is a more <strong>noob</strong> user friendly class, but is less flexible.</p>
|
||||
|
||||
<p>Before you start using the AI_A2A_DISPATCHER or AI_A2A_GCICAP ask youself the following questions:</p>
|
||||
<p>Before you start using the AI_A2A_DISPATCHER or AI_A2A_GCICAP ask youself the following questions.</p>
|
||||
|
||||
<h2>0. Do I need AI_A2A_DISPATCHER or do I need AI_A2A_GCICAP?</h2>
|
||||
|
||||
@ -238,22 +231,26 @@ Not all Squadrons need to perform GCI.</p>
|
||||
<p>For each Squadron, evaluate which takeoff method will be used:</p>
|
||||
|
||||
<ul>
|
||||
<li>Straight from the air (default)</li>
|
||||
<li>Straight from the air</li>
|
||||
<li>From the runway</li>
|
||||
<li>From a parking spot with running engines</li>
|
||||
<li>From a parking spot with cold engines</li>
|
||||
</ul>
|
||||
|
||||
<p><strong>The default takeoff method is staight in the air.</strong></p>
|
||||
|
||||
<h2>17. For each Squadron, which landing method will I use?</h2>
|
||||
|
||||
<p>For each Squadron, evaluate which landing method will be used:</p>
|
||||
|
||||
<ul>
|
||||
<li>Near the airbase when returning (default)</li>
|
||||
<li>After landing on the runway</li>
|
||||
<li>After engine shutdown after landing</li>
|
||||
<li>Despawn near the airbase when returning</li>
|
||||
<li>Despawn after landing on the runway</li>
|
||||
<li>Despawn after engine shutdown after landing</li>
|
||||
</ul>
|
||||
|
||||
<p><strong>The default landing method is despawn when near the airbase when returning.</strong></p>
|
||||
|
||||
<h2>18. For each Squadron, which overhead will I use?</h2>
|
||||
|
||||
<p>For each Squadron, depending on the airplane type (modern, old) and payload, which overhead is required to provide any defense?
|
||||
@ -261,11 +258,20 @@ In other words, if <strong>X</strong> attacker airplanes are detected, how many
|
||||
The <strong>Y</strong> is dependent on the type of airplane (era), payload, fuel levels, skills etc.
|
||||
The overhead is a <strong>factor</strong> that will calculate dynamically how many <strong>Y</strong> defenses will be required based on <strong>X</strong> attackers detected.</p>
|
||||
|
||||
<p><strong>The default overhead is 1. A value greater than 1, like 1.5 will increase the overhead with 50%, a value smaller than 1, like 0.5 will decrease the overhead with 50%.</strong></p>
|
||||
|
||||
<h2>19. For each Squadron, which grouping will I use?</h2>
|
||||
|
||||
<p>When multiple targets are detected, how will defense airplanes be grouped when multiple defense airplanes are spawned for multiple attackers?
|
||||
Per one, two, three, four?</p>
|
||||
|
||||
<p><strong>The default grouping is 1. That means, that each spawned defender will act individually.</strong></p>
|
||||
|
||||
<hr/>
|
||||
|
||||
<h3>Authors: <strong>Sven Van de Velde (FlightControl)</strong> rework of GCICAP + introduction of new concepts (squadrons).</h3>
|
||||
<h3>Authors: <strong>Stonehouse</strong>, <strong>SNAFU</strong> in terms of the advice, documentation, and the original GCICAP script.</h3>
|
||||
|
||||
|
||||
<h2>Global(s)</h2>
|
||||
<table class="function_list">
|
||||
@ -344,6 +350,12 @@ Per one, two, three, four?</p>
|
||||
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_DISPATCHER).CountDefendersToBeEngaged">AI_A2A_DISPATCHER:CountDefendersToBeEngaged(DetectedItem, DefenderCount)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_DISPATCHER).DefenderDefault">AI_A2A_DISPATCHER.DefenderDefault</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -422,6 +434,18 @@ Per one, two, three, four?</p>
|
||||
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_DISPATCHER).GetCAPDelay">AI_A2A_DISPATCHER:GetCAPDelay(SquadronName)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_DISPATCHER).GetDefaultLanding">AI_A2A_DISPATCHER:GetDefaultLanding()</a></td>
|
||||
<td class="summary">
|
||||
<p>Gets the default method at which flights will land and despawn as part of the defense system.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_DISPATCHER).GetDefaultTakeoff">AI_A2A_DISPATCHER:GetDefaultTakeoff()</a></td>
|
||||
<td class="summary">
|
||||
<p>Gets the default method at which new flights will spawn and take-off as part of the defense system.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -578,6 +602,72 @@ Per one, two, three, four?</p>
|
||||
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_DISPATCHER).SetBorderZone">AI_A2A_DISPATCHER:SetBorderZone(BorderZone)</a></td>
|
||||
<td class="summary">
|
||||
<p>Define a border area to simulate a <strong>cold war</strong> scenario.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_DISPATCHER).SetDefaultGrouping">AI_A2A_DISPATCHER:SetDefaultGrouping(Grouping)</a></td>
|
||||
<td class="summary">
|
||||
<p>Sets the default grouping of new airplanes spawned.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_DISPATCHER).SetDefaultLanding">AI_A2A_DISPATCHER:SetDefaultLanding(Landing)</a></td>
|
||||
<td class="summary">
|
||||
<p>Defines the default method at which flights will land and despawn as part of the defense system.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_DISPATCHER).SetDefaultLandingAtEngineShutdown">AI_A2A_DISPATCHER:SetDefaultLandingAtEngineShutdown()</a></td>
|
||||
<td class="summary">
|
||||
<p>Sets flights by default to land and despawn at engine shutdown, as part of the defense system.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_DISPATCHER).SetDefaultLandingAtRunway">AI_A2A_DISPATCHER:SetDefaultLandingAtRunway()</a></td>
|
||||
<td class="summary">
|
||||
<p>Sets flights by default to land and despawn at the runway, as part of the defense system.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_DISPATCHER).SetDefaultLandingNearAirbase">AI_A2A_DISPATCHER:SetDefaultLandingNearAirbase()</a></td>
|
||||
<td class="summary">
|
||||
<p>Sets flights by default to land and despawn near the airbase in the air, as part of the defense system.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_DISPATCHER).SetDefaultOverhead">AI_A2A_DISPATCHER:SetDefaultOverhead(Overhead)</a></td>
|
||||
<td class="summary">
|
||||
<p>Defines the default amount of extra planes that will take-off as part of the defense system.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_DISPATCHER).SetDefaultTakeoff">AI_A2A_DISPATCHER:SetDefaultTakeoff(Takeoff)</a></td>
|
||||
<td class="summary">
|
||||
<p>Defines the default method at which new flights will spawn and take-off as part of the defense system.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_DISPATCHER).SetDefaultTakeoffFromParkingCold">AI_A2A_DISPATCHER:SetDefaultTakeoffFromParkingCold()</a></td>
|
||||
<td class="summary">
|
||||
<p>Sets flights to by default take-off from the airbase at a cold location, as part of the defense system.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_DISPATCHER).SetDefaultTakeoffFromParkingHot">AI_A2A_DISPATCHER:SetDefaultTakeoffFromParkingHot()</a></td>
|
||||
<td class="summary">
|
||||
<p>Sets flights by default to take-off from the airbase at a hot location, as part of the defense system.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_DISPATCHER).SetDefaultTakeoffFromRunway">AI_A2A_DISPATCHER:SetDefaultTakeoffFromRunway()</a></td>
|
||||
<td class="summary">
|
||||
<p>Sets flights by default to take-off from the runway, as part of the defense system.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_DISPATCHER).SetDefaultTakeoffInAir">AI_A2A_DISPATCHER:SetDefaultTakeoffInAir()</a></td>
|
||||
<td class="summary">
|
||||
<p>Sets flights to default take-off in the air, as part of the defense system.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -631,7 +721,7 @@ Per one, two, three, four?</p>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_DISPATCHER).SetSquadronGrouping">AI_A2A_DISPATCHER:SetSquadronGrouping(SquadronName, Grouping)</a></td>
|
||||
<td class="summary">
|
||||
|
||||
<p>Sets the grouping of new airplanes spawned.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -982,6 +1072,17 @@ while defining which plane types are being used by the squadron and how many res
|
||||
<li><a href="##(AI_A2A_DISPATCHER).SetSquadronTakeoffFromRunway">AI<em>A2A</em>DISPATCHER.SetSquadronTakeoffFromRunway</a>() will spawn new aircraft at the runway at the airfield.</li>
|
||||
</ul>
|
||||
|
||||
<p><strong>The default landing method is to spawn new aircraft directly in the air.</strong>
|
||||
<strong>The default takeoff method can be set for ALL squadrons that don't have an individual takeoff method configured.</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><a href="##(AI_A2A_DISPATCHER).SetDefaultTakeoff">AI<em>A2A</em>DISPATCHER.SetDefaultTakeoff</a>() is the generic configuration method to control takeoff by default from the air, hot, cold or from the runway. See the method for further details.</li>
|
||||
<li><a href="##(AI_A2A_DISPATCHER).SetDefaultTakeoffInAir">AI<em>A2A</em>DISPATCHER.SetDefaultTakeoffInAir</a>() will spawn by default new aircraft from the squadron directly in the air.</li>
|
||||
<li><a href="##(AI_A2A_DISPATCHER).SetDefaultTakeoffFromParkingCold">AI<em>A2A</em>DISPATCHER.SetDefaultTakeoffFromParkingCold</a>() will spawn by default new aircraft in without running engines at a parking spot at the airfield.</li>
|
||||
<li><a href="##(AI_A2A_DISPATCHER).SetDefaultTakeoffFromParkingHot">AI<em>A2A</em>DISPATCHER.SetDefaultTakeoffFromParkingHot</a>() will spawn by default new aircraft in with running engines at a parking spot at the airfield.</li>
|
||||
<li><a href="##(AI_A2A_DISPATCHER).SetDefaultTakeoffFromRunway">AI<em>A2A</em>DISPATCHER.SetDefaultTakeoffFromRunway</a>() will spawn by default new aircraft at the runway at the airfield.</li>
|
||||
</ul>
|
||||
|
||||
<p>Use these methods to fine-tune for specific airfields that are known to create bottlenecks, or have reduced airbase efficiency.
|
||||
The more and the longer aircraft need to taxi at an airfield, the more risk there is that:</p>
|
||||
|
||||
@ -1006,6 +1107,15 @@ If you experience while testing problems with aircraft take-off or landing, plea
|
||||
<li><a href="##(AI_A2A_DISPATCHER).SetSquadronLandingAtEngineShutdown">AI<em>A2A</em>DISPATCHER.SetSquadronLandingAtEngineShutdown</a>() will despawn the returning aircraft when the aircraft has returned to its parking spot and has turned off its engines.</li>
|
||||
</ul>
|
||||
|
||||
<p><strong>The default landing method can be set for ALL squadrons that don't have an individual landing method configured.</strong></p>
|
||||
|
||||
<ul>
|
||||
<li><a href="##(AI_A2A_DISPATCHER).SetDefaultLanding">AI<em>A2A</em>DISPATCHER.SetDefaultLanding</a>() is the generic configuration method to control by default landing, namely despawn the aircraft near the airfield in the air, right after landing, or at engine shutdown.</li>
|
||||
<li><a href="##(AI_A2A_DISPATCHER).SetDefaultLandingNearAirbase">AI<em>A2A</em>DISPATCHER.SetDefaultLandingNearAirbase</a>() will despawn by default the returning aircraft in the air when near the airfield.</li>
|
||||
<li><a href="##(AI_A2A_DISPATCHER).SetDefaultLandingAtRunway">AI<em>A2A</em>DISPATCHER.SetDefaultLandingAtRunway</a>() will despawn by default the returning aircraft directly after landing at the runway.</li>
|
||||
<li><a href="##(AI_A2A_DISPATCHER).SetDefaultLandingAtEngineShutdown">AI<em>A2A</em>DISPATCHER.SetDefaultLandingAtEngineShutdown</a>() will despawn by default the returning aircraft when the aircraft has returned to its parking spot and has turned off its engines.</li>
|
||||
</ul>
|
||||
|
||||
<p>You can use these methods to minimize the airbase coodination overhead and to increase the airbase efficiency.
|
||||
When there are lots of aircraft returning for landing, at the same airbase, the takeoff process will be halted, which can cause a complete failure of the
|
||||
A2A defense system, as no new CAP or GCI planes can takeoff.
|
||||
@ -1014,7 +1124,7 @@ Damaged or out-of-fuel aircraft are returning to the nearest friendly airbase an
|
||||
|
||||
<h3>6.3. Set squadron grouping</h3>
|
||||
|
||||
<p>Use the method <a href="##(AI_A2A_DISPATCHER).SetSquadronGrouping">AI<em>A2A</em>DISPATCHER.SetSquadronGrouping</a>() to set the amount of CAP or GCI flights that will take-off when spawned.</p>
|
||||
<p>Use the method <a href="##(AI_A2A_DISPATCHER).SetSquadronGrouping">AI<em>A2A</em>DISPATCHER.SetSquadronGrouping</a>() to set the grouping of CAP or GCI flights that will take-off when spawned.</p>
|
||||
|
||||
<p><img src="..\Presentations\AI_A2A_DISPATCHER\Dia12.JPG" alt="Banner Image"/></p>
|
||||
|
||||
@ -1025,6 +1135,10 @@ a GCI needs to be started, the GCI flights will be grouped as follows: Group 1 o
|
||||
|
||||
<p>The <strong>grouping value is set for a Squadron</strong>, and can be <strong>dynamically adjusted</strong> during mission execution, so to adjust the defense flights grouping when the tactical situation changes.</p>
|
||||
|
||||
<p><strong>The default grouping value can be set for ALL squadrons that don't have an individual grouping value configured.</strong></p>
|
||||
|
||||
<p>Use the method <a href="##(AI_A2A_DISPATCHER).SetDefaultGrouping">AI<em>A2A</em>DISPATCHER.SetDefaultGrouping</a>() to set the <strong>default grouping</strong> of spawned airplanes for all squadrons.</p>
|
||||
|
||||
<h3>6.4. Balance or setup effectiveness of the air defenses in case of GCI</h3>
|
||||
|
||||
<p>The effectiveness can be set with the <strong>overhead parameter</strong>. This is a number that is used to calculate the amount of Units that dispatching command will allocate to GCI in surplus of detected amount of units.
|
||||
@ -1034,7 +1148,7 @@ The <strong>default value</strong> of the overhead parameter is 1.0, which means
|
||||
|
||||
<p>However, depending on the (type of) aircraft (strength and payload) in the squadron and the amount of resources available, this parameter can be changed.</p>
|
||||
|
||||
<p>The <a href="##(AI_A2A_DISPATCHER).SetOverhead">AI<em>A2A</em>DISPATCHER.SetOverhead</a>() method can be used to tweak the defense strength,
|
||||
<p>The <a href="##(AI_A2A_DISPATCHER).SetSquadronOverhead">AI<em>A2A</em>DISPATCHER.SetSquadronOverhead</a>() method can be used to tweak the defense strength,
|
||||
taking into account the plane types of the squadron. </p>
|
||||
|
||||
<p>For example, a MIG-31 with full long-distance A2A missiles payload, may still be less effective than a F-15C with short missiles...
|
||||
@ -1051,6 +1165,10 @@ multiplied by the Overhead and rounded up to the smallest integer. </p>
|
||||
|
||||
<p>The <strong>overhead value is set for a Squadron</strong>, and can be <strong>dynamically adjusted</strong> during mission execution, so to adjust the defense overhead when the tactical situation changes.</p>
|
||||
|
||||
<p><strong>The default overhead value can be set for ALL squadrons that don't have an individual overhead value configured.</strong></p>
|
||||
|
||||
<p>Use the <a href="##(AI_A2A_DISPATCHER).SetDefaultOverhead">AI<em>A2A</em>DISPATCHER.SetDefaultOverhead</a>() method can be used to set the default the defense strength for ALL squadrons.</p>
|
||||
|
||||
<h2>7. Setup a squadron for CAP</h2>
|
||||
|
||||
<h3>7.1. Set the CAP zones</h3>
|
||||
@ -1833,6 +1951,23 @@ DefenderSquadron</p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em></em>
|
||||
<a id="#(AI_A2A_DISPATCHER).DefenderDefault" >
|
||||
<strong>AI_A2A_DISPATCHER.DefenderDefault</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
|
||||
|
||||
|
||||
<p> The Defender Default Settings over all Squadrons.</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
@ -2113,6 +2248,66 @@ The squadron name.</p>
|
||||
<p><em><a href="##(AI_A2A_DISPATCHER)">#AI<em>A2A</em>DISPATCHER</a>:</em></p>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(AI_A2A_DISPATCHER).GetDefaultLanding" >
|
||||
<strong>AI_A2A_DISPATCHER:GetDefaultLanding()</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Gets the default method at which flights will land and despawn as part of the defense system.</p>
|
||||
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em>#number:</em>
|
||||
Landing The landing method which can be NearAirbase, AtRunway, AtEngineShutdown</p>
|
||||
|
||||
<h3>Usage:</h3>
|
||||
<pre class="example"><code>
|
||||
|
||||
local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
|
||||
-- Let new flights by default despawn near the airbase when returning.
|
||||
local LandingMethod = Dispatcher:GetDefaultLanding( AI_A2A_Dispatcher.Landing.NearAirbase )
|
||||
if LandingMethod == AI_A2A_Dispatcher.Landing.NearAirbase then
|
||||
...
|
||||
end
|
||||
</code></pre>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(AI_A2A_DISPATCHER).GetDefaultTakeoff" >
|
||||
<strong>AI_A2A_DISPATCHER:GetDefaultTakeoff()</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Gets the default method at which new flights will spawn and take-off as part of the defense system.</p>
|
||||
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em>#number:</em>
|
||||
Takeoff From the airbase hot, from the airbase cold, in the air, from the runway.</p>
|
||||
|
||||
<h3>Usage:</h3>
|
||||
<pre class="example"><code>
|
||||
|
||||
local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
|
||||
-- Let new flights by default take-off in the air.
|
||||
local TakeoffMethod = Dispatcher:GetDefaultTakeoff()
|
||||
if TakeOffMethod == , AI_A2A_Dispatcher.Takeoff.InAir then
|
||||
...
|
||||
end
|
||||
</code></pre>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
@ -2325,7 +2520,7 @@ Landing The landing method which can be NearAirbase, AtRunway, AtEngineShutdown<
|
||||
|
||||
local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
|
||||
-- Let new flights take-off in the air.
|
||||
-- Let new flights despawn near the airbase when returning.
|
||||
local LandingMethod = Dispatcher:GetSquadronLanding( "SquadronName", AI_A2A_Dispatcher.Landing.NearAirbase )
|
||||
if LandingMethod == AI_A2A_Dispatcher.Landing.NearAirbase then
|
||||
...
|
||||
@ -2887,6 +3082,380 @@ or
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(AI_A2A_DISPATCHER).SetDefaultGrouping" >
|
||||
<strong>AI_A2A_DISPATCHER:SetDefaultGrouping(Grouping)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Sets the default grouping of new airplanes spawned.</p>
|
||||
|
||||
|
||||
<p>Grouping will trigger how new airplanes will be grouped if more than one airplane is spawned for defense.</p>
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em>#number Grouping </em></code>:
|
||||
The level of grouping that will be applied of the CAP or GCI defenders. </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em><a href="##(AI_A2A_DISPATCHER)">#AI<em>A2A</em>DISPATCHER</a>:</em></p>
|
||||
|
||||
|
||||
<h3>Usage:</h3>
|
||||
<pre class="example"><code>
|
||||
|
||||
local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
|
||||
-- Set a grouping by default per 2 airplanes.
|
||||
Dispatcher:SetDefaultGrouping( 2 )
|
||||
|
||||
</code></pre>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(AI_A2A_DISPATCHER).SetDefaultLanding" >
|
||||
<strong>AI_A2A_DISPATCHER:SetDefaultLanding(Landing)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Defines the default method at which flights will land and despawn as part of the defense system.</p>
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em>#number Landing </em></code>:
|
||||
The landing method which can be NearAirbase, AtRunway, AtEngineShutdown</p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em><a href="##(AI_A2A_DISPATCHER)">#AI<em>A2A</em>DISPATCHER</a>:</em></p>
|
||||
|
||||
|
||||
<h3>Usage:</h3>
|
||||
<pre class="example"><code>
|
||||
|
||||
local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
|
||||
-- Let new flights by default despawn near the airbase when returning.
|
||||
Dispatcher:SetDefaultLanding( AI_A2A_Dispatcher.Landing.NearAirbase )
|
||||
|
||||
-- Let new flights by default despawn after landing land at the runway.
|
||||
Dispatcher:SetDefaultLanding( AI_A2A_Dispatcher.Landing.AtRunway )
|
||||
|
||||
-- Let new flights by default despawn after landing and parking, and after engine shutdown.
|
||||
Dispatcher:SetDefaultLanding( AI_A2A_Dispatcher.Landing.AtEngineShutdown )
|
||||
</code></pre>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(AI_A2A_DISPATCHER).SetDefaultLandingAtEngineShutdown" >
|
||||
<strong>AI_A2A_DISPATCHER:SetDefaultLandingAtEngineShutdown()</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Sets flights by default to land and despawn at engine shutdown, as part of the defense system.</p>
|
||||
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em><a href="##(AI_A2A_DISPATCHER)">#AI<em>A2A</em>DISPATCHER</a>:</em></p>
|
||||
|
||||
|
||||
<h3>Usage:</h3>
|
||||
<pre class="example"><code>
|
||||
|
||||
local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
|
||||
-- Let flights by default land and despawn at engine shutdown.
|
||||
Dispatcher:SetDefaultLandingAtEngineShutdown()
|
||||
</code></pre>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(AI_A2A_DISPATCHER).SetDefaultLandingAtRunway" >
|
||||
<strong>AI_A2A_DISPATCHER:SetDefaultLandingAtRunway()</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Sets flights by default to land and despawn at the runway, as part of the defense system.</p>
|
||||
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em><a href="##(AI_A2A_DISPATCHER)">#AI<em>A2A</em>DISPATCHER</a>:</em></p>
|
||||
|
||||
|
||||
<h3>Usage:</h3>
|
||||
<pre class="example"><code>
|
||||
|
||||
local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
|
||||
-- Let flights by default land at the runway and despawn.
|
||||
Dispatcher:SetDefaultLandingAtRunway()
|
||||
</code></pre>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(AI_A2A_DISPATCHER).SetDefaultLandingNearAirbase" >
|
||||
<strong>AI_A2A_DISPATCHER:SetDefaultLandingNearAirbase()</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Sets flights by default to land and despawn near the airbase in the air, as part of the defense system.</p>
|
||||
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em><a href="##(AI_A2A_DISPATCHER)">#AI<em>A2A</em>DISPATCHER</a>:</em></p>
|
||||
|
||||
|
||||
<h3>Usage:</h3>
|
||||
<pre class="example"><code>
|
||||
|
||||
local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
|
||||
-- Let flights by default to land near the airbase and despawn.
|
||||
Dispatcher:SetDefaultLandingNearAirbase()
|
||||
</code></pre>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(AI_A2A_DISPATCHER).SetDefaultOverhead" >
|
||||
<strong>AI_A2A_DISPATCHER:SetDefaultOverhead(Overhead)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Defines the default amount of extra planes that will take-off as part of the defense system.</p>
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em>#number Overhead </em></code>:
|
||||
The %-tage of Units that dispatching command will allocate to intercept in surplus of detected amount of units.
|
||||
The default overhead is 1, so equal balance. The <a href="##(AI_A2A_DISPATCHER).SetOverhead">AI<em>A2A</em>DISPATCHER.SetOverhead</a>() method can be used to tweak the defense strength,
|
||||
taking into account the plane types of the squadron. For example, a MIG-31 with full long-distance A2A missiles payload, may still be less effective than a F-15C with short missiles...
|
||||
So in this case, one may want to use the Overhead method to allocate more defending planes as the amount of detected attacking planes.
|
||||
The overhead must be given as a decimal value with 1 as the neutral value, which means that Overhead values: </p>
|
||||
|
||||
<ul>
|
||||
<li>Higher than 1, will increase the defense unit amounts.</li>
|
||||
<li>Lower than 1, will decrease the defense unit amounts.</li>
|
||||
</ul>
|
||||
|
||||
<p>The amount of defending units is calculated by multiplying the amount of detected attacking planes as part of the detected group
|
||||
multiplied by the Overhead and rounded up to the smallest integer. </p>
|
||||
|
||||
<p>The Overhead value set for a Squadron, can be programmatically adjusted (by using this SetOverhead method), to adjust the defense overhead during mission execution.</p>
|
||||
|
||||
<p>See example below.
|
||||
</p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em><a href="##(AI_A2A_DISPATCHER)">#AI<em>A2A</em>DISPATCHER</a>:</em></p>
|
||||
|
||||
|
||||
<h3>Usage:</h3>
|
||||
<pre class="example"><code>
|
||||
|
||||
local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
|
||||
-- An overhead of 1,5 with 1 planes detected, will allocate 2 planes ( 1 * 1,5 ) = 1,5 => rounded up gives 2.
|
||||
-- An overhead of 1,5 with 2 planes detected, will allocate 3 planes ( 2 * 1,5 ) = 3 => rounded up gives 3.
|
||||
-- An overhead of 1,5 with 3 planes detected, will allocate 5 planes ( 3 * 1,5 ) = 4,5 => rounded up gives 5 planes.
|
||||
-- An overhead of 1,5 with 4 planes detected, will allocate 6 planes ( 4 * 1,5 ) = 6 => rounded up gives 6 planes.
|
||||
|
||||
Dispatcher:SetDefaultOverhead( 1.5 )
|
||||
</code></pre>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(AI_A2A_DISPATCHER).SetDefaultTakeoff" >
|
||||
<strong>AI_A2A_DISPATCHER:SetDefaultTakeoff(Takeoff)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Defines the default method at which new flights will spawn and take-off as part of the defense system.</p>
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em>#number Takeoff </em></code>:
|
||||
From the airbase hot, from the airbase cold, in the air, from the runway.</p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em><a href="##(AI_A2A_DISPATCHER)">#AI<em>A2A</em>DISPATCHER</a>:</em></p>
|
||||
|
||||
|
||||
<h3>Usage:</h3>
|
||||
<pre class="example"><code>
|
||||
|
||||
local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
|
||||
-- Let new flights by default take-off in the air.
|
||||
Dispatcher:SetDefaultTakeoff( AI_A2A_Dispatcher.Takeoff.Air )
|
||||
|
||||
-- Let new flights by default take-off from the runway.
|
||||
Dispatcher:SetDefaultTakeoff( AI_A2A_Dispatcher.Takeoff.Runway )
|
||||
|
||||
-- Let new flights by default take-off from the airbase hot.
|
||||
Dispatcher:SetDefaultTakeoff( AI_A2A_Dispatcher.Takeoff.Hot )
|
||||
|
||||
-- Let new flights by default take-off from the airbase cold.
|
||||
Dispatcher:SetDefaultTakeoff( AI_A2A_Dispatcher.Takeoff.Cold )
|
||||
|
||||
</code></pre>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(AI_A2A_DISPATCHER).SetDefaultTakeoffFromParkingCold" >
|
||||
<strong>AI_A2A_DISPATCHER:SetDefaultTakeoffFromParkingCold()</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Sets flights to by default take-off from the airbase at a cold location, as part of the defense system.</p>
|
||||
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em><a href="##(AI_A2A_DISPATCHER)">#AI<em>A2A</em>DISPATCHER</a>:</em></p>
|
||||
|
||||
|
||||
<h3>Usage:</h3>
|
||||
<pre class="example"><code>
|
||||
|
||||
local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
|
||||
-- Let new flights take-off from a cold parking spot.
|
||||
Dispatcher:SetDefaultTakeoffFromParkingCold()
|
||||
</code></pre>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(AI_A2A_DISPATCHER).SetDefaultTakeoffFromParkingHot" >
|
||||
<strong>AI_A2A_DISPATCHER:SetDefaultTakeoffFromParkingHot()</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Sets flights by default to take-off from the airbase at a hot location, as part of the defense system.</p>
|
||||
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em><a href="##(AI_A2A_DISPATCHER)">#AI<em>A2A</em>DISPATCHER</a>:</em></p>
|
||||
|
||||
|
||||
<h3>Usage:</h3>
|
||||
<pre class="example"><code>
|
||||
|
||||
local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
|
||||
-- Let new flights by default take-off at a hot parking spot.
|
||||
Dispatcher:SetDefaultTakeoffFromParkingHot()
|
||||
</code></pre>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(AI_A2A_DISPATCHER).SetDefaultTakeoffFromRunway" >
|
||||
<strong>AI_A2A_DISPATCHER:SetDefaultTakeoffFromRunway()</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Sets flights by default to take-off from the runway, as part of the defense system.</p>
|
||||
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em><a href="##(AI_A2A_DISPATCHER)">#AI<em>A2A</em>DISPATCHER</a>:</em></p>
|
||||
|
||||
|
||||
<h3>Usage:</h3>
|
||||
<pre class="example"><code>
|
||||
|
||||
local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
|
||||
-- Let new flights by default take-off from the runway.
|
||||
Dispatcher:SetDefaultTakeoffFromRunway()
|
||||
</code></pre>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(AI_A2A_DISPATCHER).SetDefaultTakeoffInAir" >
|
||||
<strong>AI_A2A_DISPATCHER:SetDefaultTakeoffInAir()</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Sets flights to default take-off in the air, as part of the defense system.</p>
|
||||
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em><a href="##(AI_A2A_DISPATCHER)">#AI<em>A2A</em>DISPATCHER</a>:</em></p>
|
||||
|
||||
|
||||
<h3>Usage:</h3>
|
||||
<pre class="example"><code>
|
||||
|
||||
local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
|
||||
-- Let new flights by default take-off in the air.
|
||||
Dispatcher:SetDefaultTakeoffInAir()
|
||||
</code></pre>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(AI_A2A_DISPATCHER).SetDefenderTask" >
|
||||
<strong>AI_A2A_DISPATCHER:SetDefenderTask(Defender, Type, Fsm, Target)</strong>
|
||||
</a>
|
||||
@ -3362,8 +3931,11 @@ The maximum speed at which the gci can be executed.</p>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Sets the grouping of new airplanes spawned.</p>
|
||||
|
||||
|
||||
<p>Grouping will trigger how new airplanes will be grouped if more than one airplane is spawned for defense.</p>
|
||||
|
||||
<h3>Parameters</h3>
|
||||
<ul>
|
||||
<li>
|
||||
@ -3388,6 +3960,8 @@ The level of grouping that will be applied of the CAP or GCI defenders. </p>
|
||||
<pre class="example"><code>
|
||||
|
||||
local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
|
||||
-- Set a grouping per 2 airplanes.
|
||||
Dispatcher:SetSquadronGrouping( "SquadronName", 2 )
|
||||
|
||||
</code></pre>
|
||||
@ -3430,13 +4004,13 @@ The landing method which can be NearAirbase, AtRunway, AtEngineShutdown</p>
|
||||
|
||||
local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
|
||||
-- Let new flights take-off in the air.
|
||||
-- Let new flights despawn near the airbase when returning.
|
||||
Dispatcher:SetSquadronLanding( "SquadronName", AI_A2A_Dispatcher.Landing.NearAirbase )
|
||||
|
||||
-- Let new flights take-off from the runway.
|
||||
-- Let new flights despawn after landing land at the runway.
|
||||
Dispatcher:SetSquadronLanding( "SquadronName", AI_A2A_Dispatcher.Landing.AtRunway )
|
||||
|
||||
-- Let new flights take-off from the airbase hot.
|
||||
-- Let new flights despawn after landing and parking, and after engine shutdown.
|
||||
Dispatcher:SetSquadronLanding( "SquadronName", AI_A2A_Dispatcher.Landing.AtEngineShutdown )
|
||||
</code></pre>
|
||||
|
||||
@ -3544,7 +4118,7 @@ The name of the squadron.</p>
|
||||
|
||||
local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
|
||||
-- Let flights land in the air and despawn.
|
||||
-- Let flights to land near the airbase and despawn.
|
||||
Dispatcher:SetSquadronLandingNearAirbase( "SquadronName" )
|
||||
</code></pre>
|
||||
|
||||
@ -3608,8 +4182,7 @@ multiplied by the Overhead and rounded up to the smallest integer. </p>
|
||||
-- An overhead of 1,5 with 3 planes detected, will allocate 5 planes ( 3 * 1,5 ) = 4,5 => rounded up gives 5 planes.
|
||||
-- An overhead of 1,5 with 4 planes detected, will allocate 6 planes ( 4 * 1,5 ) = 6 => rounded up gives 6 planes.
|
||||
|
||||
Dispatcher:SetSquadronOverhead( 1,5 )
|
||||
|
||||
Dispatcher:SetSquadronOverhead( "SquadronName", 1.5 )
|
||||
</code></pre>
|
||||
|
||||
</dd>
|
||||
@ -3696,7 +4269,7 @@ The name of the squadron.</p>
|
||||
|
||||
local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
|
||||
-- Let new flights take-off in the air.
|
||||
-- Let new flights take-off from a cold parking spot.
|
||||
Dispatcher:SetSquadronTakeoffFromParkingCold( "SquadronName" )
|
||||
</code></pre>
|
||||
|
||||
@ -3768,7 +4341,7 @@ The name of the squadron.</p>
|
||||
|
||||
local Dispatcher = AI_A2A_DISPATCHER:New( ... )
|
||||
|
||||
-- Let new flights take-off in the air.
|
||||
-- Let new flights take-off from the runway.
|
||||
Dispatcher:SetSquadronTakeoffFromRunway( "SquadronName" )
|
||||
</code></pre>
|
||||
|
||||
|
||||
@ -926,6 +926,9 @@ Use the method <a href="##(AI_PATROL_ZONE).ManageDamage">AI<em>PATROL</em>ZONE.M
|
||||
|
||||
|
||||
|
||||
|
||||
<p> This table contains the targets detected during patrol.</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
|
||||
@ -3542,6 +3542,7 @@ The range till cargo will board.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em>#number</em>
|
||||
<a id="#(CARGO_UNIT).RunCount" >
|
||||
<strong>CARGO_UNIT.RunCount</strong>
|
||||
</a>
|
||||
|
||||
@ -292,6 +292,12 @@ and will be replaced by a navigation using Reference Zones.</p>
|
||||
<td class="name" nowrap="nowrap"><a href="##(REPORT).ClassName">REPORT.ClassName</a></td>
|
||||
<td class="summary">
|
||||
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(REPORT).GetCount">REPORT:GetCount()</a></td>
|
||||
<td class="summary">
|
||||
<p>Gets the amount of report items contained in the report.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -322,6 +328,12 @@ and will be replaced by a navigation using Reference Zones.</p>
|
||||
<td class="name" nowrap="nowrap"><a href="##(REPORT).SetIndent">REPORT:SetIndent(Indent)</a></td>
|
||||
<td class="summary">
|
||||
<p>Set indent of a REPORT.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(REPORT).SetTitle">REPORT:SetTitle(Title)</a></td>
|
||||
<td class="summary">
|
||||
<p>Sets the title of the report.</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -997,6 +1009,24 @@ The name before the #-mark indicating the class of the Reference Zones.</p>
|
||||
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(REPORT).GetCount" >
|
||||
<strong>REPORT:GetCount()</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Gets the amount of report items contained in the report.</p>
|
||||
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em>#number:</em>
|
||||
Returns the number of report items contained in the report. 0 is returned if no report items are contained in the report. The title is not counted for.</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
@ -1095,6 +1125,33 @@ The name before the #-mark indicating the class of the Reference Zones.</p>
|
||||
<p><em><a href="##(REPORT)">#REPORT</a>:</em></p>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<a id="#(REPORT).SetTitle" >
|
||||
<strong>REPORT:SetTitle(Title)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
|
||||
<p>Sets the title of the report.</p>
|
||||
|
||||
<h3>Parameter</h3>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em>#string Title </em></code>:
|
||||
The title of the report.</p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
<h3>Return value</h3>
|
||||
|
||||
<p><em><a href="##(REPORT)">#REPORT</a>:</em></p>
|
||||
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
|
||||
@ -923,6 +923,7 @@ function below will use the range 1-7 just in case</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em></em>
|
||||
<a id="#(DESIGNATE).LaserCodes" >
|
||||
<strong>DESIGNATE.LaserCodes</strong>
|
||||
</a>
|
||||
|
||||
@ -217,7 +217,7 @@ DETECTION uses the in-built detection capabilities of DCS World, but adds new fu
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS).DetectedItemReportSummary">DETECTION_AREAS:DetectedItemReportSummary(Index, AttackGroup)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(DETECTION_AREAS).DetectedItemReportSummary">DETECTION_AREAS:DetectedItemReportSummary(Index, AttackGroup, Settings)</a></td>
|
||||
<td class="summary">
|
||||
<p>Report summary of a detected item using a given numeric index.</p>
|
||||
</td>
|
||||
@ -449,7 +449,7 @@ DETECTION uses the in-built detection capabilities of DCS World, but adds new fu
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).DetectedItemReportSummary">DETECTION_BASE:DetectedItemReportSummary(Index, AttackGroup)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(DETECTION_BASE).DetectedItemReportSummary">DETECTION_BASE:DetectedItemReportSummary(Index, AttackGroup, Settings)</a></td>
|
||||
<td class="summary">
|
||||
<p>Report summary of a detected item using a given numeric index.</p>
|
||||
</td>
|
||||
@ -1072,7 +1072,7 @@ The different values of Unit.Category can be:</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(DETECTION_TYPES).DetectedItemReportSummary">DETECTION_TYPES:DetectedItemReportSummary(Index, DetectedTypeName, AttackGroup)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(DETECTION_TYPES).DetectedItemReportSummary">DETECTION_TYPES:DetectedItemReportSummary(Index, AttackGroup, Settings, DetectedTypeName)</a></td>
|
||||
<td class="summary">
|
||||
<p>Report summary of a DetectedItem using a given numeric index.</p>
|
||||
</td>
|
||||
@ -1154,7 +1154,7 @@ The different values of Unit.Category can be:</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="name" nowrap="nowrap"><a href="##(DETECTION_UNITS).DetectedItemReportSummary">DETECTION_UNITS:DetectedItemReportSummary(Index, AttackGroup)</a></td>
|
||||
<td class="name" nowrap="nowrap"><a href="##(DETECTION_UNITS).DetectedItemReportSummary">DETECTION_UNITS:DetectedItemReportSummary(Index, AttackGroup, Settings)</a></td>
|
||||
<td class="summary">
|
||||
<p>Report summary of a DetectedItem using a given numeric index.</p>
|
||||
</td>
|
||||
@ -1668,7 +1668,7 @@ self</p>
|
||||
<dt>
|
||||
|
||||
<a id="#(DETECTION_AREAS).DetectedItemReportSummary" >
|
||||
<strong>DETECTION_AREAS:DetectedItemReportSummary(Index, AttackGroup)</strong>
|
||||
<strong>DETECTION_AREAS:DetectedItemReportSummary(Index, AttackGroup, Settings)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
@ -1684,7 +1684,14 @@ self</p>
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> AttackGroup </em></code>: </p>
|
||||
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> AttackGroup </em></code>:
|
||||
The group to get the settings for.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Core.Settings.html##(SETTINGS)">Core.Settings#SETTINGS</a> Settings </em></code>:
|
||||
(Optional) Message formatting settings to use.</p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
@ -1724,7 +1731,8 @@ self</p>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em> AttackGroup </em></code>: </p>
|
||||
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> AttackGroup </em></code>:
|
||||
The group to generate the report for.</p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
@ -2393,7 +2401,6 @@ The index of the DetectedItem.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em>#number</em>
|
||||
<a id="#(DETECTION_BASE).DetectedItemCount" >
|
||||
<strong>DETECTION_BASE.DetectedItemCount</strong>
|
||||
</a>
|
||||
@ -2407,7 +2414,6 @@ The index of the DetectedItem.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em>#number</em>
|
||||
<a id="#(DETECTION_BASE).DetectedItemMax" >
|
||||
<strong>DETECTION_BASE.DetectedItemMax</strong>
|
||||
</a>
|
||||
@ -2453,7 +2459,7 @@ The index of the DetectedItem.</p>
|
||||
<dt>
|
||||
|
||||
<a id="#(DETECTION_BASE).DetectedItemReportSummary" >
|
||||
<strong>DETECTION_BASE:DetectedItemReportSummary(Index, AttackGroup)</strong>
|
||||
<strong>DETECTION_BASE:DetectedItemReportSummary(Index, AttackGroup, Settings)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
@ -2469,7 +2475,14 @@ The index of the DetectedItem.</p>
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> AttackGroup </em></code>: </p>
|
||||
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> AttackGroup </em></code>:
|
||||
The group to generate the report for.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Core.Settings.html##(SETTINGS)">Core.Settings#SETTINGS</a> Settings </em></code>:
|
||||
Message formatting settings to use.</p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
@ -2537,7 +2550,8 @@ The index of the DetectedItem.</p>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em> AttackGroup </em></code>: </p>
|
||||
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> AttackGroup </em></code>:
|
||||
The group to generate the report for.</p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
@ -2565,7 +2579,7 @@ The index of the DetectedItem.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em>#number</em>
|
||||
<em></em>
|
||||
<a id="#(DETECTION_BASE).DetectionInterval" >
|
||||
<strong>DETECTION_BASE.DetectionInterval</strong>
|
||||
</a>
|
||||
@ -4820,7 +4834,7 @@ self</p>
|
||||
<dt>
|
||||
|
||||
<a id="#(DETECTION_TYPES).DetectedItemReportSummary" >
|
||||
<strong>DETECTION_TYPES:DetectedItemReportSummary(Index, DetectedTypeName, AttackGroup)</strong>
|
||||
<strong>DETECTION_TYPES:DetectedItemReportSummary(Index, AttackGroup, Settings, DetectedTypeName)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
@ -4836,12 +4850,19 @@ self</p>
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> DetectedTypeName </em></code>: </p>
|
||||
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> AttackGroup </em></code>:
|
||||
The group to generate the report for.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> AttackGroup </em></code>: </p>
|
||||
<p><code><em><a href="Core.Settings.html##(SETTINGS)">Core.Settings#SETTINGS</a> Settings </em></code>:
|
||||
Message formatting settings to use.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> DetectedTypeName </em></code>: </p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
@ -4867,7 +4888,8 @@ self</p>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em> AttackGroup </em></code>: </p>
|
||||
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> AttackGroup </em></code>:
|
||||
The group to generate the report for.</p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
@ -5099,7 +5121,7 @@ self</p>
|
||||
<dt>
|
||||
|
||||
<a id="#(DETECTION_UNITS).DetectedItemReportSummary" >
|
||||
<strong>DETECTION_UNITS:DetectedItemReportSummary(Index, AttackGroup)</strong>
|
||||
<strong>DETECTION_UNITS:DetectedItemReportSummary(Index, AttackGroup, Settings)</strong>
|
||||
</a>
|
||||
</dt>
|
||||
<dd>
|
||||
@ -5115,7 +5137,14 @@ self</p>
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em> AttackGroup </em></code>: </p>
|
||||
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> AttackGroup </em></code>:
|
||||
The group to generate the report for.</p>
|
||||
|
||||
</li>
|
||||
<li>
|
||||
|
||||
<p><code><em><a href="Core.Settings.html##(SETTINGS)">Core.Settings#SETTINGS</a> Settings </em></code>:
|
||||
Message formatting settings to use.</p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
@ -5141,7 +5170,8 @@ self</p>
|
||||
<ul>
|
||||
<li>
|
||||
|
||||
<p><code><em> AttackGroup </em></code>: </p>
|
||||
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> AttackGroup </em></code>:
|
||||
The group to generate the report for.</p>
|
||||
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
@ -1598,7 +1598,7 @@ A string defining the start state.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em></em>
|
||||
<em>#string</em>
|
||||
<a id="#(FSM)._StartState" >
|
||||
<strong>FSM._StartState</strong>
|
||||
</a>
|
||||
@ -1897,7 +1897,6 @@ A string defining the start state.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em></em>
|
||||
<a id="#(FSM).current" >
|
||||
<strong>FSM.current</strong>
|
||||
</a>
|
||||
|
||||
@ -2829,6 +2829,7 @@ The y coordinate.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em></em>
|
||||
<a id="#(POINT_VEC2).z" >
|
||||
<strong>POINT_VEC2.z</strong>
|
||||
</a>
|
||||
|
||||
@ -1142,7 +1142,7 @@ true if metric.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em></em>
|
||||
<em>#boolean</em>
|
||||
<a id="#(SETTINGS).Metric" >
|
||||
<strong>SETTINGS.Metric</strong>
|
||||
</a>
|
||||
|
||||
@ -2200,6 +2200,9 @@ The group that was spawned. You can use this group for further actions.</p>
|
||||
|
||||
|
||||
|
||||
|
||||
<p> Don't repeat the group from Take-Off till Landing and back Take-Off by ReSpawning.</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
@ -2732,6 +2735,9 @@ when nothing was spawned.</p>
|
||||
|
||||
|
||||
|
||||
|
||||
<p> Overwrite unit names by default with group name.</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="function">
|
||||
@ -3129,7 +3135,7 @@ Spawn_BE_KA50 = SPAWN:New( 'BE KA-50@RAMP-Ground Defense' ):Schedule( 600, 0.5 )
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em>#boolean</em>
|
||||
<em></em>
|
||||
<a id="#(SPAWN).SpawnUnControlled" >
|
||||
<strong>SPAWN.SpawnUnControlled</strong>
|
||||
</a>
|
||||
@ -3153,7 +3159,7 @@ Spawn_BE_KA50 = SPAWN:New( 'BE KA-50@RAMP-Ground Defense' ):Schedule( 600, 0.5 )
|
||||
|
||||
|
||||
|
||||
<p> When the first Spawn executes, all the Groups need to be made visible before start.</p>
|
||||
<p> Flag that indicates if all the Groups of the SpawnGroup need to be visible when Spawned.</p>
|
||||
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
@ -436,6 +436,7 @@ ptional) The name of the new static.</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em>#number</em>
|
||||
<a id="#(SPAWNSTATIC).SpawnIndex" >
|
||||
<strong>SPAWNSTATIC.SpawnIndex</strong>
|
||||
</a>
|
||||
|
||||
@ -765,7 +765,6 @@ true if it is lasing</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em></em>
|
||||
<a id="#(SPOT).ScheduleID" >
|
||||
<strong>SPOT.ScheduleID</strong>
|
||||
</a>
|
||||
@ -779,7 +778,6 @@ true if it is lasing</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em></em>
|
||||
<a id="#(SPOT).SpotIR" >
|
||||
<strong>SPOT.SpotIR</strong>
|
||||
</a>
|
||||
@ -793,7 +791,6 @@ true if it is lasing</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em></em>
|
||||
<a id="#(SPOT).SpotLaser" >
|
||||
<strong>SPOT.SpotLaser</strong>
|
||||
</a>
|
||||
@ -807,7 +804,6 @@ true if it is lasing</p>
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em></em>
|
||||
<a id="#(SPOT).Target" >
|
||||
<strong>SPOT.Target</strong>
|
||||
</a>
|
||||
|
||||
@ -552,7 +552,7 @@ based on the tasking capabilities defined in <a href="Task.html##(TASK)">Task#TA
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em><a href="Core.Cargo.html##(CARGO_GROUP)">Core.Cargo#CARGO_GROUP</a></em>
|
||||
<em><a href="Core.Cargo.html##(CARGO)">Core.Cargo#CARGO</a></em>
|
||||
<a id="#(FSM_PROCESS).Cargo" >
|
||||
<strong>FSM_PROCESS.Cargo</strong>
|
||||
</a>
|
||||
@ -631,7 +631,7 @@ based on the tasking capabilities defined in <a href="Task.html##(TASK)">Task#TA
|
||||
<dl class="function">
|
||||
<dt>
|
||||
|
||||
<em></em>
|
||||
<em>#number</em>
|
||||
<a id="#(TASK_CARGO).CargoLimit" >
|
||||
<strong>TASK_CARGO.CargoLimit</strong>
|
||||
</a>
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user