diff --git a/Documentation/AI.AI_A2A_Dispatcher.html b/Documentation/AI.AI_A2A_Dispatcher.html index 8b397ea9b..297a66a07 100644 --- a/Documentation/AI.AI_A2A_Dispatcher.html +++ b/Documentation/AI.AI_A2A_Dispatcher.html @@ -4876,11 +4876,14 @@ When Moose is loaded statically, (as one file), tracing is switched off by defau
Flash messages to player
+Flash messages to player
+Flash messages to player
+Flash messages to player
+|
onafter State Transition for Event Patrol. + |
+
+
| Fields and Methods inherited from AI_AIR_ENGAGE | +Description | +
|---|---|
| + |
+ Synchronous Event Trigger for Event Abort. + |
+
| + |
+ Synchronous Event Trigger for Event Accomplish. + |
+
| + | + + | +
| + | + + | +
| + |
+ Synchronous Event Trigger for Event Destroy. + |
+
| + |
+ Synchronous Event Trigger for Event Engage. + |
+
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + |
+ Synchronous Event Trigger for Event EngageRoute. + |
+
| + | + + | +
| + |
+ Synchronous Event Trigger for Event Fired. + |
+
| + |
+ Creates a new AI_AIR_ENGAGE object + |
+
| + |
+ OnAfter Transition Handler for Event Abort. + |
+
| + |
+ OnAfter Transition Handler for Event Accomplish. + |
+
| + |
+ OnAfter Transition Handler for Event Destroy. + |
+
| + |
+ OnAfter Transition Handler for Event Engage. + |
+
| + |
+ OnAfter Transition Handler for Event EngageRoute. + |
+
| + |
+ OnAfter Transition Handler for Event Fired. + |
+
| + |
+ OnBefore Transition Handler for Event Abort. + |
+
| + |
+ OnBefore Transition Handler for Event Accomplish. + |
+
| + |
+ OnBefore Transition Handler for Event Destroy. + |
+
| + |
+ OnBefore Transition Handler for Event Engage. + |
+
| + |
+ OnBefore Transition Handler for Event EngageRoute. + |
+
| + |
+ OnBefore Transition Handler for Event Fired. + |
+
| + |
+ OnEnter Transition Handler for State Engaging. + |
+
| + | + + | +
| + |
+ OnLeave Transition Handler for State Engaging. + |
+
| + | + + | +
| + |
+ Asynchronous Event Trigger for Event Abort. + |
+
| + |
+ Asynchronous Event Trigger for Event Accomplish. + |
+
| + |
+ Asynchronous Event Trigger for Event Destroy. + |
+
| + |
+ Asynchronous Event Trigger for Event Engage. + |
+
| + |
+ Asynchronous Event Trigger for Event EngageRoute. + |
+
| + |
+ Asynchronous Event Trigger for Event Fired. + |
+
AI_A2A_GCI.___Engage(AIControllable, AIGroup, Fsm, AttackSetUnit) |
+ + + | +
AI_A2A_GCI.___EngageRoute(AIControllable, AIGroup, Fsm, AttackSetUnit) |
+ + + | +
| + |
+ onafter event handler for Abort event. + |
+
| + | + + | +
AI_A2A_GCI:onafterDestroy(AIGroup, From, Event, To, EventData) |
+ + + | +
| + |
+ onafter event handler for Engage event. + |
+
AI_A2A_GCI:onafterEngageRoute(DefenderGroup, From, Event, To, AttackSetUnit) |
+ + + | +
| + |
+ onafter event handler for Start event. + |
+
| + |
+ onbefore event handler for Engage event. + |
+
| Fields and Methods inherited from AI_AIR | +Description | +
|---|---|
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + |
+ Creates a new AI_AIR process. + |
+
| + |
+ OnAfter Transition Handler for Event RTB. + |
+
| + |
+ Refuel Handler OnAfter for AI_AIR + |
+
| + |
+ Start Handler OnAfter for AI_AIR + |
+
| + |
+ OnAfter Transition Handler for Event Status. + |
+
| + |
+ OnAfter Transition Handler for Event Stop. + |
+
| + |
+ OnBefore Transition Handler for Event RTB. + |
+
| + |
+ Refuel Handler OnBefore for AI_AIR + |
+
| + |
+ Start Handler OnBefore for AI_AIR + |
+
| + |
+ OnBefore Transition Handler for Event Status. + |
+
| + |
+ OnBefore Transition Handler for Event Stop. + |
+
| + | + + | +
| + | + + | +
| + |
+ OnEnter Transition Handler for State Returning. + |
+
| + |
+ OnEnter Transition Handler for State Stopped. + |
+
| + |
+ OnLeave Transition Handler for State Returning. + |
+
| + |
+ OnLeave Transition Handler for State Stopped. + |
+
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + |
+ Synchronous Event Trigger for Event RTB. + |
+
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + |
+ Refuel Trigger for AI_AIR + |
+
| + | + + | +
AI_A2A_GCI:SetAltitude(PatrolFloorAltitude, PatrolCeilingAltitude) |
+
+ Sets the floor and ceiling altitude of the patrol. + |
+
| + |
+ When the AI is damaged beyond a certain threshold, it is required that the AI returns to the home base. + |
+
| + |
+ Sets the disengage range, that when engaging a target beyond the specified range, the engagement will be cancelled and the plane will RTB. + |
+
| + | + + | +
AI_A2A_GCI:SetFuelThreshold(FuelThresholdPercentage, OutOfFuelOrbitTime) |
+
+ When the AI is out of fuel, it is required that a new AI is started, before the old AI can return to the home base. + |
+
| + |
+ Sets the home airbase. + |
+
| + |
+ Sets (modifies) the minimum and maximum RTB speed of the patrol. + |
+
| + |
+ Set the min and max factors on RTB speed. + |
+
| + |
+ Sets (modifies) the minimum and maximum speed of the patrol. + |
+
| + |
+ Set the status checking off. + |
+
| + |
+ Sets to refuel at the given tanker. + |
+
| + | + + | +
| + |
+ Start Trigger for AI_AIR + |
+
| + |
+ Synchronous Event Trigger for Event Status. + |
+
| + |
+ Synchronous Event Trigger for Event Stop. + |
+
| + | + + | +
| + | + + | +
| + |
+ Asynchronous Event Trigger for Event RTB. + |
+
| + |
+ Refuel Asynchronous Trigger for AI_AIR + |
+
| + |
+ Start Asynchronous Trigger for AI_AIR + |
+
| + |
+ Asynchronous Event Trigger for Event Status. + |
+
| + |
+ Asynchronous Event Trigger for Event Stop. + |
+
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + |
+ Coordinates the approriate returning action. + |
+
| + |
+ Defines a new patrol route using the AI.AI_Patrol#AI_PATROL_ZONE parameters and settings. + |
+
| + | + + | +
| + | + + | +
| Fields and Methods inherited from FSM_CONTROLLABLE | +Description | +
|---|---|
| + | + + | +
| + |
+ Gets the CONTROLLABLE object that the FSM_CONTROLLABLE governs. + |
+
| + |
+ Creates a new FSM_CONTROLLABLE object. + |
+
| + |
+ OnAfter Transition Handler for Event Stop. + |
+
| + |
+ OnBefore Transition Handler for Event Stop. + |
+
| + |
+ OnEnter Transition Handler for State Stopped. + |
+
| + |
+ OnLeave Transition Handler for State Stopped. + |
+
| + |
+ Sets the CONTROLLABLE object that the FSM_CONTROLLABLE governs. + |
+
| + |
+ Synchronous Event Trigger for Event Stop. + |
+
| + |
+ Asynchronous Event Trigger for Event Stop. + |
+
| + | + + | +
| Fields and Methods inherited from FSM | +Description | +
|---|---|
| + |
+ Adds an End state. + |
+
| + |
+ Set the default #FSM_PROCESS template with key ProcessName providing the ProcessClass and the process object when it is assigned to a Wrapper.Controllable by the task. + |
+
| + |
+ Adds a score for the FSM to be achieved. + |
+
AI_A2A_GCI:AddScoreProcess(From, Event, State, ScoreText, Score) |
+
+ Adds a score for the FSM_PROCESS to be achieved. + |
+
| + |
+ Add a new transition rule to the FSM. + |
+
| + |
+ Call scheduler. + |
+
| + |
+ Name of the class. + |
+
| + | + + | +
| + |
+ Get current state. + |
+
| + |
+ Returns the End states. + |
+
| + | + + | +
| + |
+ Returns a table of the SubFSM rules defined within the FSM. + |
+
| + |
+ Returns a table with the scores defined. + |
+
| + |
+ Returns the start state of the FSM. + |
+
| + |
+ Get current state. + |
+
| + |
+ Returns a table with the Subs defined. + |
+
| + |
+ Returns a table of the transition rules defined within the FSM. + |
+
| + |
+ Check if FSM is in state. + |
+
| + |
+ Load call backs. + |
+
| + |
+ Creates a new FSM object. + |
+
| + |
+ Scores. + |
+
| + | + + | +
| + |
+ Sets the start state of the FSM. + |
+
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + |
+ Add to map. + |
+
| + |
+ Call handler. + |
+
| + |
+ Create transition. + |
+
| + |
+ Delayed transition. + |
+
| + |
+ Event map. + |
+
| + |
+ Go sub. + |
+
| + |
+ Handler. + |
+
| + |
+ Is end state. + |
+
| + |
+ Sub maps. + |
+
| + |
+ Check if can do an event. + |
+
| + |
+ Check if cannot do an event. + |
+
| + |
+ Current state name. + |
+
| + | + + | +
| + |
+ Check if FSM is in state. + |
+
| + |
+ Options. + |
+
| + |
+ Subs. + |
+
| Fields and Methods inherited from BASE | +Description | +
|---|---|
| + |
+ The ID number of the class. + |
+
| + |
+ The name of the class. + |
+
| + |
+ The name of the class concatenated with the ID number of the class. + |
+
| + |
+ Clear the state of an object. + |
+
AI_A2A_GCI:CreateEventBirth(EventTime, Initiator, IniUnitName, place, subplace) |
+
+ Creation of a Birth Event. + |
+
AI_A2A_GCI:CreateEventCrash(EventTime, Initiator, IniObjectCategory) |
+
+ Creation of a Crash Event. + |
+
AI_A2A_GCI:CreateEventDead(EventTime, Initiator, IniObjectCategory) |
+
+ Creation of a Dead Event. + |
+
| + |
+ Creation of a |
+
| + |
+ Creation of a Remove Unit Event. + |
+
| + |
+ Creation of a Takeoff Event. + |
+
| + |
+ Creation of a Crash Event. + |
+
| + |
+ Log an exception which will be traced always. + |
+
| + |
+ Returns the event dispatcher + |
+
| + |
+ Remove all subscribed events + |
+
| + |
+ Trace a function call. + |
+
| + |
+ Trace a function call level 2. + |
+
| + |
+ Trace a function call level 3. + |
+
| + |
+ Get the ClassID of the class instance. + |
+
| + |
+ Get the ClassName of the class instance. + |
+
| + |
+ Get the ClassName + ClassID of the class instance. + |
+
| + |
+ Get the Class Core.Event processing Priority. + |
+
| + |
+ This is the worker method to retrieve the Parent class. + |
+
| + |
+ Get a Value given a Key from the Object. + |
+
| + |
+ Subscribe to a DCS Event. + |
+
| + |
+ Log an information which will be traced always. + |
+
| + |
+ This is the worker method to inherit from a parent class. + |
+
| + |
+ This is the worker method to check if an object is an (sub)instance of a class. + |
+
| + |
+ Enquires if tracing is on (for the class). + |
+
| + |
+ BASE constructor. + |
+
| + |
+ Occurs when an Event for an object is triggered. + |
+
| + |
+ BDA. + |
+
| + |
+ Occurs when a ground unit captures either an airbase or a farp. + |
+
| + |
+ Occurs when any object is spawned into the mission. + |
+
| + |
+ Occurs when any aircraft crashes into the ground and is completely destroyed. + |
+
| + |
+ Occurs when an object is dead. + |
+
| + |
+ Unknown precisely what creates this event, likely tied into newer damage model. + |
+
| + |
+ Discard chair after ejection. + |
+
| + |
+ Occurs when a pilot ejects from an aircraft +Have a look at the class Core.Event#EVENT as these are just the prototypes. + |
+
| + |
+ Occurs when any aircraft shuts down its engines. + |
+
| + |
+ Occurs when any aircraft starts its engines. + |
+
| + |
+ Occurs whenever an object is hit by a weapon. + |
+
| + |
+ Occurs when any system fails on a human controlled aircraft. + |
+
| + |
+ Occurs on the death of a unit. + |
+
| + |
+ Occurs when an aircraft lands at an airbase, farp or ship +Have a look at the class Core.Event#EVENT as these are just the prototypes. + |
+
| + |
+ Occurs shortly after the landing animation of an ejected pilot touching the ground and standing up. + |
+
| + |
+ Landing quality mark. + |
+
| + |
+ Occurs when a new mark was added. + |
+
| + |
+ Occurs when a mark text was changed. + |
+
| + |
+ Occurs when a mark was removed. + |
+
| + |
+ Occurs when a mission ends +Have a look at the class Core.Event#EVENT as these are just the prototypes. + |
+
| + |
+ Occurs when a mission starts +Have a look at the class Core.Event#EVENT as these are just the prototypes. + |
+
| + |
+ Weapon add. + |
+
| + |
+ Occurs when the pilot of an aircraft is killed. + |
+
| + |
+ Occurs when a player enters a slot and takes control of an aircraft. + |
+
| + |
+ Occurs when any player assumes direct control of a unit. + |
+
| + |
+ Occurs when any player relieves control of a unit to the AI. + |
+
| + |
+ Occurs when an aircraft connects with a tanker and begins taking on fuel. + |
+
| + |
+ Occurs when an aircraft is finished taking fuel. + |
+
| + |
+ Occurs when any modification to the "Score" as seen on the debrief menu would occur. + |
+
| + |
+ Occurs when any unit stops firing its weapon. + |
+
| + |
+ Occurs when any unit begins firing a weapon that has a high rate of fire. + |
+
| + |
+ Occurs whenever any unit in a mission fires a weapon. + |
+
| + |
+ Occurs when an aircraft takes off from an airbase, farp, or ship. + |
+
| + |
+ Trigger zone. + |
+
| + |
+ Occurs when the game thinks an object is destroyed. + |
+
| + |
+ Schedule a new time event. + |
+
AI_A2A_GCI:ScheduleRepeat(Start, Repeat, RandomizeFactor, Stop, SchedulerFunction, ...) |
+
+ Schedule a new time event. + |
+
| + |
+ Stops the Schedule. + |
+
| + | + + | +
| + |
+ Set the Class Core.Event processing Priority. + |
+
| + |
+ Set a state or property of the Object given a Key and a Value. + |
+
| + |
+ Trace a function logic level 1. + |
+
| + |
+ Trace a function logic level 2. + |
+
| + |
+ Trace a function logic level 3. + |
+
| + |
+ Trace all methods in MOOSE + |
+
| + |
+ Set tracing for a class + |
+
| + |
+ Set tracing for a specific method of class + |
+
| + |
+ Set trace level + |
+
| + |
+ Set trace off. + |
+
| + |
+ Set trace on. + |
+
| + |
+ Set trace on or off +Note that when trace is off, no BASE.Debug statement is performed, increasing performance! +When Moose is loaded statically, (as one file), tracing is switched off by default. + |
+
| + |
+ UnSubscribe to a DCS event. + |
+
| + | + + | +
AI_A2A_GCI:_F(Arguments, DebugInfoCurrentParam, DebugInfoFromParam) |
+
+ Trace a function call. + |
+
AI_A2A_GCI:_T(Arguments, DebugInfoCurrentParam, DebugInfoFromParam) |
+
+ Trace a function logic. + |
+
| + | + + | +
| + |
+ The main event handling function... |
Synchronous Event Trigger for Event Abort.
+ +Synchronous Event Trigger for Event Accomplish.
+ +Synchronous Event Trigger for Event Destroy.
+ +Synchronous Event Trigger for Event Engage.
+ +Synchronous Event Trigger for Event EngageRoute.
+ +Synchronous Event Trigger for Event Fired.
+ +Creates a new AI_AIR_ENGAGE object
+ ++ AI.AI_Air#AI_AIR + AI_Air +
+The AI_AIR FSM.
+ ++ Wrapper.Group#GROUP + AIGroup +
+The AI group.
+ ++ DCS#Speed + EngageMinSpeed +
+(optional, default = 50% of max speed) The minimum speed of the Wrapper.Group in km/h when engaging a target.
+ ++ DCS#Speed + EngageMaxSpeed +
+(optional, default = 75% of max speed) The maximum speed of the Wrapper.Group in km/h when engaging a target.
+ ++ DCS#Altitude + EngageFloorAltitude +
+(optional, default = 1000m ) The lowest altitude in meters where to execute the engagement.
+ ++ DCS#Altitude + EngageCeilingAltitude +
+(optional, default = 1500m ) The highest altitude in meters where to execute the engagement.
+ ++ DCS#AltitudeType + EngageAltType +
+The altitude type ("RADIO"=="AGL", "BARO"=="ASL"). Defaults to "RADIO".
+ +OnAfter Transition Handler for Event Abort.
+ ++ Wrapper.Group#GROUP + AIGroup +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnAfter Transition Handler for Event Accomplish.
+ ++ Wrapper.Group#GROUP + AIGroup +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnAfter Transition Handler for Event Destroy.
+ ++ Wrapper.Group#GROUP + AIGroup +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnAfter Transition Handler for Event Engage.
+ ++ Wrapper.Group#GROUP + AIGroup +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnAfter Transition Handler for Event EngageRoute.
+ ++ Wrapper.Group#GROUP + AIGroup +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnAfter Transition Handler for Event Fired.
+ ++ Wrapper.Group#GROUP + AIGroup +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnBefore Transition Handler for Event Abort.
+ ++ Wrapper.Group#GROUP + AIGroup +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnBefore Transition Handler for Event Accomplish.
+ ++ Wrapper.Group#GROUP + AIGroup +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnBefore Transition Handler for Event Destroy.
+ ++ Wrapper.Group#GROUP + AIGroup +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnBefore Transition Handler for Event Engage.
+ ++ Wrapper.Group#GROUP + AIGroup +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnBefore Transition Handler for Event EngageRoute.
+ ++ Wrapper.Group#GROUP + AIGroup +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnBefore Transition Handler for Event Fired.
+ ++ Wrapper.Group#GROUP + AIGroup +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnEnter Transition Handler for State Engaging.
+ ++ Wrapper.Group#GROUP + AIGroup +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnLeave Transition Handler for State Engaging.
+ ++ Wrapper.Group#GROUP + AIGroup +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ ++ Wrapper.Group#GROUP + AIEngage +
++ Fsm +
+Asynchronous Event Trigger for Event Abort.
+ ++ #number + Delay +
+The delay in seconds.
+ +Asynchronous Event Trigger for Event Accomplish.
+ ++ #number + Delay +
+The delay in seconds.
+ +Asynchronous Event Trigger for Event Destroy.
+ ++ #number + Delay +
+The delay in seconds.
+ +Asynchronous Event Trigger for Event Engage.
+ ++ #number + Delay +
+The delay in seconds.
+ +Asynchronous Event Trigger for Event EngageRoute.
+ ++ #number + Delay +
+The delay in seconds.
+ +Asynchronous Event Trigger for Event Fired.
+ ++ #number + Delay +
+The delay in seconds.
+ ++ Wrapper.Group#GROUP + AIControllable +
++ AIGroup +
++ Fsm +
++ AttackSetUnit +
++ Wrapper.Group#GROUP + AIControllable +
++ AIGroup +
++ Fsm +
++ AttackSetUnit +
+onafter event handler for Abort event.
+ ++ Wrapper.Group#GROUP + AIGroup +
+The AI Group managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ ++ Wrapper.Group#GROUP + AIGroup +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ ++ Wrapper.Group#GROUP + AIGroup +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ ++ Core.Event#EVENTDATA + EventData +
+onafter event handler for Engage event.
+ ++ Wrapper.Group#GROUP + AIGroup +
+The AI Group managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ ++ Wrapper.Group#GROUP + DefenderGroup +
+The GroupGroup managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ ++ Core.Set#SET_UNIT + AttackSetUnit +
+Unit set to be attacked.
+ +onafter event handler for Start event.
+ ++ Wrapper.Group#GROUP + AIGroup +
+The AI group managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +onbefore event handler for Engage event.
+ ++ Wrapper.Group#GROUP + AIGroup +
+The group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +Creates a new AI_AIR process.
+ ++ Wrapper.Group#GROUP + AIGroup +
+The group object to receive the A2G Process.
+ +OnAfter Transition Handler for Event RTB.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +Refuel Handler OnAfter for AI_AIR
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
++ #string + Event +
++ #string + To +
+Start Handler OnAfter for AI_AIR
+ ++ #string + From +
++ #string + Event +
++ #string + To +
+OnAfter Transition Handler for Event Status.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnAfter Transition Handler for Event Stop.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnBefore Transition Handler for Event RTB.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +Refuel Handler OnBefore for AI_AIR
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
++ #string + Event +
++ #string + To +
+#boolean:
+Start Handler OnBefore for AI_AIR
+ ++ #string + From +
++ #string + Event +
++ #string + To +
+#boolean:
+OnBefore Transition Handler for Event Status.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnBefore Transition Handler for Event Stop.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnEnter Transition Handler for State Returning.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnEnter Transition Handler for State Stopped.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnLeave Transition Handler for State Returning.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnLeave Transition Handler for State Stopped.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +Synchronous Event Trigger for Event RTB.
+ ++ Wrapper.Group#GROUP + AIGroup +
++ Fsm +
++ Wrapper.Group#GROUP + AIGroup +
++ Fsm +
+Refuel Trigger for AI_AIR
+ ++ Wrapper.Group#GROUP + AIGroup +
++ Fsm +
+Sets the floor and ceiling altitude of the patrol.
+ ++ DCS#Altitude + PatrolFloorAltitude +
+The lowest altitude in meters where to execute the patrol.
+ ++ DCS#Altitude + PatrolCeilingAltitude +
+The highest altitude in meters where to execute the patrol.
+ +self
+ +When the AI is damaged beyond a certain threshold, it is required that the AI returns to the home base.
+ + +However, damage cannot be foreseen early on. +Therefore, when the damage threshold is reached, +the AI will return immediately to the home base (RTB). +Note that for groups, the average damage of the complete group will be calculated. +So, in a group of 4 airplanes, 2 lost and 2 with damage 0.2, the damage threshold will be 0.25.
+ ++ #number + PatrolDamageThreshold +
+The threshold in percentage (between 0 and 1) when the AI is considered to be damaged.
+ +self
+ +Sets the disengage range, that when engaging a target beyond the specified range, the engagement will be cancelled and the plane will RTB.
+ ++ #number + DisengageRadius +
+The disengage range.
+ +self
+ +When the AI is out of fuel, it is required that a new AI is started, before the old AI can return to the home base.
+ + +Therefore, with a parameter and a calculation of the distance to the home base, the fuel threshold is calculated. +When the fuel threshold is reached, the AI will continue for a given time its patrol task in orbit, while a new AIControllable is targeted to the AI_AIR. +Once the time is finished, the old AI will return to the base.
+ ++ #number + FuelThresholdPercentage +
+The threshold in percentage (between 0 and 1) when the AIControllable is considered to get out of fuel.
+ ++ #number + OutOfFuelOrbitTime +
+The amount of seconds the out of fuel AIControllable will orbit before returning to the base.
+ +self
+ +Sets the home airbase.
+ ++ Wrapper.Airbase#AIRBASE + HomeAirbase +
+self
+ +Sets (modifies) the minimum and maximum RTB speed of the patrol.
+ ++ DCS#Speed + RTBMinSpeed +
+The minimum speed of the Wrapper.Controllable in km/h.
+ ++ DCS#Speed + RTBMaxSpeed +
+The maximum speed of the Wrapper.Controllable in km/h.
+ +self
+ +Set the min and max factors on RTB speed.
+ + +Use this, if your planes are heading back to base too fast. Default values are 0.5 and 0.6. +The RTB speed is calculated as the max speed of the unit multiplied by MinFactor (lower bracket) and multiplied by MaxFactor (upper bracket). +A random value in this bracket is then applied in the waypoint routing generation.
+ ++ #number + MinFactor +
+Lower bracket factor. Defaults to 0.5.
+ ++ #number + MaxFactor +
+Upper bracket factor. Defaults to 0.6.
+ +self
+ +Sets (modifies) the minimum and maximum speed of the patrol.
+ ++ DCS#Speed + PatrolMinSpeed +
+The minimum speed of the Wrapper.Controllable in km/h.
+ ++ DCS#Speed + PatrolMaxSpeed +
+The maximum speed of the Wrapper.Controllable in km/h.
+ +self
+ +Set the status checking off.
+ +Sets to refuel at the given tanker.
+ ++ Wrapper.Group#GROUP + TankerName +
+The group name of the tanker as defined within the Mission Editor or spawned.
+ +self
+ +Start Trigger for AI_AIR
+ +Synchronous Event Trigger for Event Status.
+ +Synchronous Event Trigger for Event Stop.
+ +Asynchronous Event Trigger for Event RTB.
+ ++ #number + Delay +
+The delay in seconds.
+ +Refuel Asynchronous Trigger for AI_AIR
+ +Start Asynchronous Trigger for AI_AIR
+ +Asynchronous Event Trigger for Event Status.
+ ++ #number + Delay +
+The delay in seconds.
+ +Asynchronous Event Trigger for Event Stop.
+ ++ #number + Delay +
+The delay in seconds.
+ ++ Wrapper.Group#GROUP + AIGroup +
++ From +
++ Event +
++ To +
++ HoldTime +
++ Wrapper.Group#GROUP + AIGroup +
++ From +
++ Event +
++ To +
++ Wrapper.Group#GROUP + AIGroup +
++ From +
++ Event +
++ To +
++ Wrapper.Group#GROUP + AIGroup +
++ From +
++ Event +
++ To +
+Coordinates the approriate returning action.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +self
+ +Defines a new patrol route using the AI.AI_Patrol#AI_PATROL_ZONE parameters and settings.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +self
+ +Gets the CONTROLLABLE object that the FSM_CONTROLLABLE governs.
+ +Creates a new FSM_CONTROLLABLE object.
+ ++ #table + FSMT +
+Finite State Machine Table
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+(optional) The CONTROLLABLE object that the FSM_CONTROLLABLE governs.
+ +OnAfter Transition Handler for Event Stop.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnBefore Transition Handler for Event Stop.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnEnter Transition Handler for State Stopped.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnLeave Transition Handler for State Stopped.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +Sets the CONTROLLABLE object that the FSM_CONTROLLABLE governs.
+ ++ Wrapper.Controllable#CONTROLLABLE + FSMControllable +
+Synchronous Event Trigger for Event Stop.
+ +Asynchronous Event Trigger for Event Stop.
+ ++ #number + Delay +
+The delay in seconds.
+ ++ step +
++ trigger +
++ params +
++ EventName +
+Adds an End state.
+ ++ #string + State +
+The FSM state.
+ +Set the default #FSM_PROCESS template with key ProcessName providing the ProcessClass and the process object when it is assigned to a Wrapper.Controllable by the task.
+ ++ #table + From +
+Can contain a string indicating the From state or a table of strings containing multiple From states.
+ ++ #string + Event +
+The Event name.
+ ++ Core.Fsm#FSM_PROCESS + Process +
+An sub-process FSM.
+ ++ #table + ReturnEvents +
+A table indicating for which returned events of the SubFSM which Event must be triggered in the FSM.
+ +The SubFSM.
+ +Adds a score for the FSM to be achieved.
+ ++ #string + State +
+is the state of the process when the score needs to be given. (See the relevant state descriptions of the process).
+ ++ #string + ScoreText +
+is a text describing the score that is given according the status.
+ ++ #number + Score +
+is a number providing the score of the status.
+ +#FSM:
+self
+ +Adds a score for the FSM_PROCESS to be achieved.
+ ++ #string + From +
+is the From State of the main process.
+ ++ #string + Event +
+is the Event of the main process.
+ ++ #string + State +
+is the state of the process when the score needs to be given. (See the relevant state descriptions of the process).
+ ++ #string + ScoreText +
+is a text describing the score that is given according the status.
+ ++ #number + Score +
+is a number providing the score of the status.
+ +#FSM:
+self
+ +Add a new transition rule to the FSM.
+ + +A transition rule defines when and if the FSM can transition from a state towards another state upon a triggered event.
+ ++ #table + From +
+Can contain a string indicating the From state or a table of strings containing multiple From states.
+ ++ #string + Event +
+The Event name.
+ ++ #string + To +
+The To state.
+ +Get current state.
+ +Returns the End states.
+ +Returns a table of the SubFSM rules defined within the FSM.
+ +Returns a table with the scores defined.
+ +Returns the start state of the FSM.
+ +#string:
+A string containing the start state.
+ +Get current state.
+ +Returns a table with the Subs defined.
+ +Returns a table of the transition rules defined within the FSM.
+ +Check if FSM is in state.
+ ++ #string + State +
+State name.
+ +#boolean:
+If true, FSM is in this state.
+ +Load call backs.
+ ++ #table + CallBackTable +
+Table of call backs.
+ +Creates a new FSM object.
+ ++ From +
++ Event +
++ Fsm +
+Sets the start state of the FSM.
+ ++ #string + State +
+A string defining the start state.
+ +Add to map.
+ ++ #table + Map +
+Map.
+ ++ #table + Event +
+Event table.
+ +Call handler.
+ ++ #string + step +
+Step "onafter", "onbefore", "onenter", "onleave".
+ ++ #string + trigger +
+Trigger.
+ ++ #table + params +
+Parameters.
+ ++ #string + EventName +
+Event name.
+ +Value.
+ +Create transition.
+ ++ #string + EventName +
+Event name.
+ +#function:
+Function.
+ +Delayed transition.
+ ++ #string + EventName +
+Event name.
+ +#function:
+Function.
+ +Event map.
+ ++ #table + Events +
+Events.
+ ++ #table + EventStructure +
+Event structure.
+ +Go sub.
+ ++ #string + ParentFrom +
+Parent from state.
+ ++ #string + ParentEvent +
+Parent event name.
+ +#table:
+Subs.
+ +Handler.
+ ++ #string + EventName +
+Event name.
+ ++ ... +
+Arguments.
+ +Is end state.
+ ++ #string + Current +
+Current state name.
+ +#table:
+FSM parent.
+ +#string:
+Event name.
+ +Sub maps.
+ ++ #table + subs +
+Subs.
+ ++ #table + sub +
+Sub.
+ ++ #string + name +
+Name.
+ +Check if can do an event.
+ ++ #string + e +
+Event name.
+ +#boolean:
+If true, FSM can do the event.
+ +#string:
+To state.
+ +Check if cannot do an event.
+ ++ #string + e +
+Event name.
+ +#boolean:
+If true, FSM cannot do the event.
+ +Check if FSM is in state.
+ ++ #string + State +
+State name.
+ ++ state +
+#boolean:
+If true, FSM is in this state.
+ +Clear the state of an object.
+ ++ Object +
+The object that holds the Value set by the Key.
+ ++ StateName +
+The key that is should be cleared.
+ +Creation of a Birth Event.
+ ++ DCS#Time + EventTime +
+The time stamp of the event.
+ ++ DCS#Object + Initiator +
+The initiating object of the event.
+ ++ #string + IniUnitName +
+The initiating unit name.
+ ++ place +
++ subplace +
+Creation of a Crash Event.
+ ++ DCS#Time + EventTime +
+The time stamp of the event.
+ ++ DCS#Object + Initiator +
+The initiating object of the event.
+ ++ IniObjectCategory +
+Creation of a Dead Event.
+ ++ DCS#Time + EventTime +
+The time stamp of the event.
+ ++ DCS#Object + Initiator +
+The initiating object of the event.
+ ++ IniObjectCategory +
+Creation of a S_EVENT_PLAYER_ENTER_AIRCRAFT event.
+ Wrapper.Unit#UNIT + PlayerUnit +
+The aircraft unit the player entered.
+ +Creation of a Remove Unit Event.
+ ++ DCS#Time + EventTime +
+The time stamp of the event.
+ ++ DCS#Object + Initiator +
+The initiating object of the event.
+ +Creation of a Takeoff Event.
+ ++ DCS#Time + EventTime +
+The time stamp of the event.
+ ++ DCS#Object + Initiator +
+The initiating object of the event.
+ +Creation of a Crash Event.
+ ++ DCS#Time + EventTime +
+The time stamp of the event.
+ ++ DCS#Object + Initiator +
+The initiating object of the event.
+ +Log an exception which will be traced always.
+ + +Can be anywhere within the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Returns the event dispatcher
+ +Remove all subscribed events
+ +Trace a function call.
+ + +Must be at the beginning of the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Trace a function call level 2.
+ + +Must be at the beginning of the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Trace a function call level 3.
+ + +Must be at the beginning of the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Get the ClassID of the class instance.
+ +#string:
+The ClassID of the class instance.
+ +Get the ClassName of the class instance.
+ +#string:
+The ClassName of the class instance.
+ +Get the ClassName + ClassID of the class instance.
+ + +The ClassName + ClassID is formatted as '%s#%09d'.
+ +#string:
+The ClassName + ClassID of the class instance.
+ +Get the Class Core.Event processing Priority.
+ + +The Event processing Priority is a number from 1 to 10, +reflecting the order of the classes subscribed to the Event to be processed.
+ +This is the worker method to retrieve the Parent class.
+ + +Note that the Parent class must be passed to call the parent class method.
+ +self:GetParent(self):ParentMethod()
+
+
+
+
+
+Get a Value given a Key from the Object.
+ + +Note that if the Object is destroyed, set to nil, or garbage collected, then the Values and Keys will also be gone.
+ ++ Object +
+The object that holds the Value set by the Key.
+ ++ Key +
+The key that is used to retrieve the value. Note that the key can be a #string, but it can also be any other type!
+ +The Value retrieved or nil if the Key was not found and thus the Value could not be retrieved.
+ +Subscribe to a DCS Event.
+ ++ Core.Event#EVENTS + EventID +
+Event ID.
+ ++ #function + EventFunction +
+(optional) The function to be called when the event occurs for the unit.
+ +Log an information which will be traced always.
+ + +Can be anywhere within the function logic.
+ ++ Arguments +
+A #table or any field.
+ +This is the worker method to inherit from a parent class.
+ ++ Child +
+is the Child class that inherits.
+ ++ #BASE + Parent +
+is the Parent class that the Child inherits from.
+ +Child
+ +This is the worker method to check if an object is an (sub)instance of a class.
+ + + +ZONE:New( 'some zone' ):IsInstanceOf( ZONE ) will return true
ZONE:New( 'some zone' ):IsInstanceOf( 'ZONE' ) will return true
ZONE:New( 'some zone' ):IsInstanceOf( 'zone' ) will return true
ZONE:New( 'some zone' ):IsInstanceOf( 'BASE' ) will return true
ZONE:New( 'some zone' ):IsInstanceOf( 'GROUP' ) will return false
+ ClassName +
+is the name of the class or the class itself to run the check against
+ +#boolean:
+Enquires if tracing is on (for the class).
+ +BASE constructor.
+ + + +This is an example how to use the BASE:New() constructor in a new class definition when inheriting from BASE.
+ +function EVENT:New()
+ local self = BASE:Inherit( self, BASE:New() ) -- #EVENT
+ return self
+end
+
+
+
+Occurs when an Event for an object is triggered.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that triggered the event.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +BDA.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a ground unit captures either an airbase or a farp.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that captured the base +place: The airbase that was captured, can be a FARP or Airbase. When calling place:getCoalition() the faction will already be the new owning faction.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any object is spawned into the mission.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that was spawned
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any aircraft crashes into the ground and is completely destroyed.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that has crashed
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when an object is dead.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that is dead.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Unknown precisely what creates this event, likely tied into newer damage model.
+ + +Will update this page when new information become available.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Discard chair after ejection.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a pilot ejects from an aircraft +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ + +initiator : The unit that has ejected
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any aircraft shuts down its engines.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that is stopping its engines.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any aircraft starts its engines.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that is starting its engines.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs whenever an object is hit by a weapon.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit object the fired the weapon +weapon: Weapon object that hit the target +target: The Object that was hit.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any system fails on a human controlled aircraft.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that had the failure
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs on the death of a unit.
+ + +Contains more and different information. Similar to unit_lost it will occur for aircraft before the aircraft crash event occurs. +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when an aircraft lands at an airbase, farp or ship +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ + +initiator : The unit that has landed +place: Object that the unit landed on. Can be an Airbase Object, FARP, or Ships
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs shortly after the landing animation of an ejected pilot touching the ground and standing up.
+ + +Event does not occur if the pilot lands in the water and sub combs to Davey Jones Locker. +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Landing quality mark.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a new mark was added.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +MarkID: ID of the mark.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a mark text was changed.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +MarkID: ID of the mark.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a mark was removed.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +MarkID: ID of the mark.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a mission ends +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a mission starts +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Weapon add.
+ + +Fires when entering a mission per pylon with the name of the weapon (double pylons not counted, infinite wep reload not counted. +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when the pilot of an aircraft is killed.
+ + +Can occur either if the player is alive and crashes or if a weapon kills the pilot without completely destroying the plane. +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that the pilot has died in.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a player enters a slot and takes control of an aircraft.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +NOTE: This is a workaround of a long standing DCS bug with the PLAYER_ENTER_UNIT event. +initiator : The unit that is being taken control of.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any player assumes direct control of a unit.
+ + +Note - not Mulitplayer safe. Use PlayerEnterAircraft. +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that is being taken control of.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any player relieves control of a unit to the AI.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that the player left.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when an aircraft connects with a tanker and begins taking on fuel.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that is receiving fuel.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when an aircraft is finished taking fuel.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that was receiving fuel.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any modification to the "Score" as seen on the debrief menu would occur.
+ + +There is no information on what values the score was changed to. Event is likely similar to player_comment in this regard. +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any unit stops firing its weapon.
+ + +Event will always correspond with a shooting start event. +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that was doing the shooting.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any unit begins firing a weapon that has a high rate of fire.
+ + +Most common with aircraft cannons (GAU-8), autocannons, and machine guns. +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that is doing the shooting. +target: The unit that is being targeted.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs whenever any unit in a mission fires a weapon.
+ + +But not any machine gun or autocannon based weapon, those are handled by EVENT.ShootingStart. +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when an aircraft takes off from an airbase, farp, or ship.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that tookoff +place: Object from where the AI took-off from. Can be an Airbase Object, FARP, or Ships
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Trigger zone.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when the game thinks an object is destroyed.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Schedule a new time event.
+ + +Note that the schedule will only take place if the scheduler is started. Even for a single schedule event, the scheduler needs to be started also.
+ ++ #number + Start +
+Specifies the amount of seconds that will be waited before the scheduling is started, and the event function is called.
+ ++ #function + SchedulerFunction +
+The event function to be called when a timer event occurs. The event function needs to accept the parameters specified in SchedulerArguments.
+ ++ #table + ... +
+Optional arguments that can be given as part of scheduler. The arguments need to be given as a table { param1, param 2, ... }.
+ +#string:
+The Schedule ID of the planned schedule.
+ +Schedule a new time event.
+ + +Note that the schedule will only take place if the scheduler is started. Even for a single schedule event, the scheduler needs to be started also.
+ ++ #number + Start +
+Specifies the amount of seconds that will be waited before the scheduling is started, and the event function is called.
+ ++ #number + Repeat +
+Specifies the interval in seconds when the scheduler will call the event function.
+ ++ #number + RandomizeFactor +
+Specifies a randomization factor between 0 and 1 to randomize the Repeat.
+ ++ #number + Stop +
+Specifies the amount of seconds when the scheduler will be stopped.
+ ++ #function + SchedulerFunction +
+The event function to be called when a timer event occurs. The event function needs to accept the parameters specified in SchedulerArguments.
+ ++ #table + ... +
+Optional arguments that can be given as part of scheduler. The arguments need to be given as a table { param1, param 2, ... }.
+ +#string:
+The Schedule ID of the planned schedule.
+ +Stops the Schedule.
+ ++ #string + SchedulerID +
+(Optional) Scheduler ID to be stopped. If nil, all pending schedules are stopped.
+ +Set the Class Core.Event processing Priority.
+ + +The Event processing Priority is a number from 1 to 10, +reflecting the order of the classes subscribed to the Event to be processed.
+ ++ #number + EventPriority +
+The Core.Event processing Priority.
+ +self
+ +Set a state or property of the Object given a Key and a Value.
+ + +Note that if the Object is destroyed, set to nil, or garbage collected, then the Values and Keys will also be gone.
+ ++ Object +
+The object that will hold the Value set by the Key.
+ ++ Key +
+The key that is used as a reference of the value. Note that the key can be a #string, but it can also be any other type!
+ ++ Value +
+The value to is stored in the object.
+ +The Value set.
+ +Trace a function logic level 1.
+ + +Can be anywhere within the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Trace a function logic level 2.
+ + +Can be anywhere within the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Trace a function logic level 3.
+ + +Can be anywhere within the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Trace all methods in MOOSE
+ ++ #boolean + TraceAll +
+true = trace all methods in MOOSE.
+ +Set tracing for a class
+ +Set tracing for a specific method of class
+ ++ #string + Class +
+Class name.
+ ++ #string + Method +
+Method.
+ +Set trace level
+ +Set trace off.
+ +Set trace on.
+ +Set trace on or off +Note that when trace is off, no BASE.Debug statement is performed, increasing performance! +When Moose is loaded statically, (as one file), tracing is switched off by default.
+ + +So tracing must be switched on manually in your mission if you are using Moose statically. +When moose is loading dynamically (for moose class development), tracing is switched on by default.
+ ++ #boolean + TraceOnOff +
+Switch the tracing on or off.
+ +
+ -- Switch the tracing On
+ BASE:TraceOnOff( true )
+
+ -- Switch the tracing Off
+ BASE:TraceOnOff( false )
+
+
+UnSubscribe to a DCS event.
+ ++ Core.Event#EVENTS + EventID +
+Event ID.
+ +Trace a function call.
+ + +This function is private.
+ ++ Arguments +
+A #table or any field.
+ ++ DebugInfoCurrentParam +
++ DebugInfoFromParam +
+Trace a function logic.
+ ++ Arguments +
+A #table or any field.
+ ++ DebugInfoCurrentParam +
++ DebugInfoFromParam +
+The main event handling function...
+ + +This function captures all events generated for the class.
+ +|
Defines a new patrol route using the AI.AI_Patrol#AI_PATROL_ZONE parameters and settings. + |
+
+
| Fields and Methods inherited from AI_AIR_PATROL | +Description | +
|---|---|
| + | + + | +
| + |
+ Creates a new AI_AIR_PATROL object + |
+
| + |
+ OnAfter Transition Handler for Event Patrol. + |
+
| + |
+ OnAfter Transition Handler for Event PatrolRoute. + |
+
| + |
+ OnBefore Transition Handler for Event Patrol. + |
+
AI_A2A_PATROL:OnBeforePatrolRoute(AIPatrol, From, Event, To) |
+
+ OnBefore Transition Handler for Event PatrolRoute. + |
+
| + |
+ OnEnter Transition Handler for State Patrolling. + |
+
| + |
+ OnLeave Transition Handler for State Patrolling. + |
+
| + |
+ Synchronous Event Trigger for Event Patrol. + |
+
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + |
+ Synchronous Event Trigger for Event PatrolRoute. + |
+
| + | + + | +
| + |
+ Resumes the AIPatrol + |
+
| + |
+ Set the Engage Range when the AI will engage with airborne enemies. + |
+
| + |
+ Set race track parameters. + |
+
| + |
+ Asynchronous Event Trigger for Event Patrol. + |
+
| + |
+ Asynchronous Event Trigger for Event PatrolRoute. + |
+
| + |
+ This static method is called from the route path within the last task at the last waypoint of the AIPatrol. + |
+
| + |
+ Defines a new patrol route using the AI.AI_Patrol#AI_PATROL_ZONE parameters and settings. + |
+
| + |
+ Defines a new patrol route using the AI.AI_Patrol#AI_PATROL_ZONE parameters and settings. + |
+
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| Fields and Methods inherited from AI_AIR | +Description | +
|---|---|
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + |
+ Creates a new AI_AIR process. + |
+
| + |
+ OnAfter Transition Handler for Event RTB. + |
+
| + |
+ Refuel Handler OnAfter for AI_AIR + |
+
| + |
+ Start Handler OnAfter for AI_AIR + |
+
| + |
+ OnAfter Transition Handler for Event Status. + |
+
| + |
+ OnAfter Transition Handler for Event Stop. + |
+
| + |
+ OnBefore Transition Handler for Event RTB. + |
+
| + |
+ Refuel Handler OnBefore for AI_AIR + |
+
| + |
+ Start Handler OnBefore for AI_AIR + |
+
| + |
+ OnBefore Transition Handler for Event Status. + |
+
| + |
+ OnBefore Transition Handler for Event Stop. + |
+
| + | + + | +
| + | + + | +
AI_A2A_PATROL:OnEnterReturning(Controllable, From, Event, To) |
+
+ OnEnter Transition Handler for State Returning. + |
+
| + |
+ OnEnter Transition Handler for State Stopped. + |
+
AI_A2A_PATROL:OnLeaveReturning(Controllable, From, Event, To) |
+
+ OnLeave Transition Handler for State Returning. + |
+
| + |
+ OnLeave Transition Handler for State Stopped. + |
+
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + |
+ Synchronous Event Trigger for Event RTB. + |
+
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + |
+ Refuel Trigger for AI_AIR + |
+
| + | + + | +
AI_A2A_PATROL:SetAltitude(PatrolFloorAltitude, PatrolCeilingAltitude) |
+
+ Sets the floor and ceiling altitude of the patrol. + |
+
| + |
+ When the AI is damaged beyond a certain threshold, it is required that the AI returns to the home base. + |
+
| + |
+ Sets the disengage range, that when engaging a target beyond the specified range, the engagement will be cancelled and the plane will RTB. + |
+
| + | + + | +
AI_A2A_PATROL:SetFuelThreshold(FuelThresholdPercentage, OutOfFuelOrbitTime) |
+
+ When the AI is out of fuel, it is required that a new AI is started, before the old AI can return to the home base. + |
+
| + |
+ Sets the home airbase. + |
+
| + |
+ Sets (modifies) the minimum and maximum RTB speed of the patrol. + |
+
| + |
+ Set the min and max factors on RTB speed. + |
+
| + |
+ Sets (modifies) the minimum and maximum speed of the patrol. + |
+
| + |
+ Set the status checking off. + |
+
| + |
+ Sets to refuel at the given tanker. + |
+
| + | + + | +
| + |
+ Start Trigger for AI_AIR + |
+
| + |
+ Synchronous Event Trigger for Event Status. + |
+
| + |
+ Synchronous Event Trigger for Event Stop. + |
+
| + | + + | +
| + | + + | +
| + |
+ Asynchronous Event Trigger for Event RTB. + |
+
| + |
+ Refuel Asynchronous Trigger for AI_AIR + |
+
| + |
+ Start Asynchronous Trigger for AI_AIR + |
+
| + |
+ Asynchronous Event Trigger for Event Status. + |
+
| + |
+ Asynchronous Event Trigger for Event Stop. + |
+
| + | + + | +
AI_A2A_PATROL:onafterHold(AIGroup, From, Event, To, HoldTime) |
+ + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + |
+ Coordinates the approriate returning action. + |
+
| + |
+ Defines a new patrol route using the AI.AI_Patrol#AI_PATROL_ZONE parameters and settings. + |
+
| + | + + | +
| + | + + | +
| Fields and Methods inherited from FSM_CONTROLLABLE | +Description | +
|---|---|
| + | + + | +
| + |
+ Gets the CONTROLLABLE object that the FSM_CONTROLLABLE governs. + |
+
| + |
+ Creates a new FSM_CONTROLLABLE object. + |
+
| + |
+ OnAfter Transition Handler for Event Stop. + |
+
| + |
+ OnBefore Transition Handler for Event Stop. + |
+
| + |
+ OnEnter Transition Handler for State Stopped. + |
+
| + |
+ OnLeave Transition Handler for State Stopped. + |
+
| + |
+ Sets the CONTROLLABLE object that the FSM_CONTROLLABLE governs. + |
+
| + |
+ Synchronous Event Trigger for Event Stop. + |
+
| + |
+ Asynchronous Event Trigger for Event Stop. + |
+
AI_A2A_PATROL:_call_handler(step, trigger, params, EventName) |
+ + + | +
| Fields and Methods inherited from FSM | +Description | +
|---|---|
| + |
+ Adds an End state. + |
+
AI_A2A_PATROL:AddProcess(From, Event, Process, ReturnEvents) |
+
+ Set the default #FSM_PROCESS template with key ProcessName providing the ProcessClass and the process object when it is assigned to a Wrapper.Controllable by the task. + |
+
| + |
+ Adds a score for the FSM to be achieved. + |
+
AI_A2A_PATROL:AddScoreProcess(From, Event, State, ScoreText, Score) |
+
+ Adds a score for the FSM_PROCESS to be achieved. + |
+
| + |
+ Add a new transition rule to the FSM. + |
+
| + |
+ Call scheduler. + |
+
| + |
+ Name of the class. + |
+
| + | + + | +
| + |
+ Get current state. + |
+
| + |
+ Returns the End states. + |
+
| + | + + | +
| + |
+ Returns a table of the SubFSM rules defined within the FSM. + |
+
| + |
+ Returns a table with the scores defined. + |
+
| + |
+ Returns the start state of the FSM. + |
+
| + |
+ Get current state. + |
+
| + |
+ Returns a table with the Subs defined. + |
+
| + |
+ Returns a table of the transition rules defined within the FSM. + |
+
| + |
+ Check if FSM is in state. + |
+
| + |
+ Load call backs. + |
+
| + |
+ Creates a new FSM object. + |
+
| + |
+ Scores. + |
+
| + | + + | +
| + |
+ Sets the start state of the FSM. + |
+
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + |
+ Add to map. + |
+
AI_A2A_PATROL:_call_handler(step, trigger, params, EventName) |
+
+ Call handler. + |
+
| + |
+ Create transition. + |
+
| + |
+ Delayed transition. + |
+
| + |
+ Event map. + |
+
| + |
+ Go sub. + |
+
| + |
+ Handler. + |
+
| + |
+ Is end state. + |
+
| + |
+ Sub maps. + |
+
| + |
+ Check if can do an event. + |
+
| + |
+ Check if cannot do an event. + |
+
| + |
+ Current state name. + |
+
| + | + + | +
| + |
+ Check if FSM is in state. + |
+
| + |
+ Options. + |
+
| + |
+ Subs. + |
+
| Fields and Methods inherited from BASE | +Description | +
|---|---|
| + |
+ The ID number of the class. + |
+
| + |
+ The name of the class. + |
+
| + |
+ The name of the class concatenated with the ID number of the class. + |
+
| + |
+ Clear the state of an object. + |
+
AI_A2A_PATROL:CreateEventBirth(EventTime, Initiator, IniUnitName, place, subplace) |
+
+ Creation of a Birth Event. + |
+
AI_A2A_PATROL:CreateEventCrash(EventTime, Initiator, IniObjectCategory) |
+
+ Creation of a Crash Event. + |
+
AI_A2A_PATROL:CreateEventDead(EventTime, Initiator, IniObjectCategory) |
+
+ Creation of a Dead Event. + |
+
| + |
+ Creation of a |
+
| + |
+ Creation of a Remove Unit Event. + |
+
| + |
+ Creation of a Takeoff Event. + |
+
| + |
+ Creation of a Crash Event. + |
+
| + |
+ Log an exception which will be traced always. + |
+
| + |
+ Returns the event dispatcher + |
+
| + |
+ Remove all subscribed events + |
+
| + |
+ Trace a function call. + |
+
| + |
+ Trace a function call level 2. + |
+
| + |
+ Trace a function call level 3. + |
+
| + |
+ Get the ClassID of the class instance. + |
+
| + |
+ Get the ClassName of the class instance. + |
+
| + |
+ Get the ClassName + ClassID of the class instance. + |
+
| + |
+ Get the Class Core.Event processing Priority. + |
+
| + |
+ This is the worker method to retrieve the Parent class. + |
+
| + |
+ Get a Value given a Key from the Object. + |
+
| + |
+ Subscribe to a DCS Event. + |
+
| + |
+ Log an information which will be traced always. + |
+
| + |
+ This is the worker method to inherit from a parent class. + |
+
| + |
+ This is the worker method to check if an object is an (sub)instance of a class. + |
+
| + |
+ Enquires if tracing is on (for the class). + |
+
| + |
+ BASE constructor. + |
+
| + |
+ Occurs when an Event for an object is triggered. + |
+
| + |
+ BDA. + |
+
| + |
+ Occurs when a ground unit captures either an airbase or a farp. + |
+
| + |
+ Occurs when any object is spawned into the mission. + |
+
| + |
+ Occurs when any aircraft crashes into the ground and is completely destroyed. + |
+
| + |
+ Occurs when an object is dead. + |
+
| + |
+ Unknown precisely what creates this event, likely tied into newer damage model. + |
+
| + |
+ Discard chair after ejection. + |
+
| + |
+ Occurs when a pilot ejects from an aircraft +Have a look at the class Core.Event#EVENT as these are just the prototypes. + |
+
| + |
+ Occurs when any aircraft shuts down its engines. + |
+
| + |
+ Occurs when any aircraft starts its engines. + |
+
| + |
+ Occurs whenever an object is hit by a weapon. + |
+
| + |
+ Occurs when any system fails on a human controlled aircraft. + |
+
| + |
+ Occurs on the death of a unit. + |
+
| + |
+ Occurs when an aircraft lands at an airbase, farp or ship +Have a look at the class Core.Event#EVENT as these are just the prototypes. + |
+
| + |
+ Occurs shortly after the landing animation of an ejected pilot touching the ground and standing up. + |
+
| + |
+ Landing quality mark. + |
+
| + |
+ Occurs when a new mark was added. + |
+
| + |
+ Occurs when a mark text was changed. + |
+
| + |
+ Occurs when a mark was removed. + |
+
| + |
+ Occurs when a mission ends +Have a look at the class Core.Event#EVENT as these are just the prototypes. + |
+
| + |
+ Occurs when a mission starts +Have a look at the class Core.Event#EVENT as these are just the prototypes. + |
+
| + |
+ Weapon add. + |
+
| + |
+ Occurs when the pilot of an aircraft is killed. + |
+
| + |
+ Occurs when a player enters a slot and takes control of an aircraft. + |
+
| + |
+ Occurs when any player assumes direct control of a unit. + |
+
| + |
+ Occurs when any player relieves control of a unit to the AI. + |
+
| + |
+ Occurs when an aircraft connects with a tanker and begins taking on fuel. + |
+
| + |
+ Occurs when an aircraft is finished taking fuel. + |
+
| + |
+ Occurs when any modification to the "Score" as seen on the debrief menu would occur. + |
+
| + |
+ Occurs when any unit stops firing its weapon. + |
+
| + |
+ Occurs when any unit begins firing a weapon that has a high rate of fire. + |
+
| + |
+ Occurs whenever any unit in a mission fires a weapon. + |
+
| + |
+ Occurs when an aircraft takes off from an airbase, farp, or ship. + |
+
| + |
+ Trigger zone. + |
+
| + |
+ Occurs when the game thinks an object is destroyed. + |
+
| + |
+ Schedule a new time event. + |
+
AI_A2A_PATROL:ScheduleRepeat(Start, Repeat, RandomizeFactor, Stop, SchedulerFunction, ...) |
+
+ Schedule a new time event. + |
+
| + |
+ Stops the Schedule. + |
+
| + | + + | +
| + |
+ Set the Class Core.Event processing Priority. + |
+
| + |
+ Set a state or property of the Object given a Key and a Value. + |
+
| + |
+ Trace a function logic level 1. + |
+
| + |
+ Trace a function logic level 2. + |
+
| + |
+ Trace a function logic level 3. + |
+
| + |
+ Trace all methods in MOOSE + |
+
| + |
+ Set tracing for a class + |
+
| + |
+ Set tracing for a specific method of class + |
+
| + |
+ Set trace level + |
+
| + |
+ Set trace off. + |
+
| + |
+ Set trace on. + |
+
| + |
+ Set trace on or off +Note that when trace is off, no BASE.Debug statement is performed, increasing performance! +When Moose is loaded statically, (as one file), tracing is switched off by default. + |
+
| + |
+ UnSubscribe to a DCS event. + |
+
| + | + + | +
AI_A2A_PATROL:_F(Arguments, DebugInfoCurrentParam, DebugInfoFromParam) |
+
+ Trace a function call. + |
+
AI_A2A_PATROL:_T(Arguments, DebugInfoCurrentParam, DebugInfoFromParam) |
+
+ Trace a function logic. + |
+
| + | + + | +
| + |
+ The main event handling function... |
Creates a new AI_AIR_PATROL object
+ ++ AI.AI_Air#AI_AIR + AI_Air +
+The AI_AIR FSM.
+ ++ Wrapper.Group#GROUP + AIGroup +
+The AI group.
+ ++ Core.Zone#ZONE_BASE + PatrolZone +
+The Core.Zone where the patrol needs to be executed.
+ ++ DCS#Altitude + PatrolFloorAltitude +
+(optional, default = 1000m ) The lowest altitude in meters where to execute the patrol.
+ ++ DCS#Altitude + PatrolCeilingAltitude +
+(optional, default = 1500m ) The highest altitude in meters where to execute the patrol.
+ ++ DCS#Speed + PatrolMinSpeed +
+(optional, default = 50% of max speed) The minimum speed of the Wrapper.Group in km/h.
+ ++ DCS#Speed + PatrolMaxSpeed +
+(optional, default = 75% of max speed) The maximum speed of the Wrapper.Group in km/h.
+ ++ DCS#AltitudeType + PatrolAltType +
+The altitude type ("RADIO"=="AGL", "BARO"=="ASL"). Defaults to RADIO.
+ +OnAfter Transition Handler for Event Patrol.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnAfter Transition Handler for Event PatrolRoute.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnBefore Transition Handler for Event Patrol.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnBefore Transition Handler for Event PatrolRoute.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnEnter Transition Handler for State Patrolling.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnLeave Transition Handler for State Patrolling.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +Synchronous Event Trigger for Event Patrol.
+ +Synchronous Event Trigger for Event PatrolRoute.
+ +Resumes the AIPatrol
+ ++ Wrapper.Group#GROUP + AIPatrol +
++ Core.Fsm#FSM + Fsm +
+Set the Engage Range when the AI will engage with airborne enemies.
+ ++ #number + EngageRange +
+The Engage Range.
+ +self
+ +Set race track parameters.
+ + +CAP flights will perform race track patterns rather than randomly patrolling the zone.
+ ++ #number + LegMin +
+Min Length of the race track leg in meters. Default 10,000 m.
+ ++ #number + LegMax +
+Max length of the race track leg in meters. Default 15,000 m.
+ ++ #number + HeadingMin +
+Min heading of the race track in degrees. Default 0 deg, i.e. from South to North.
+ ++ #number + HeadingMax +
+Max heading of the race track in degrees. Default 180 deg, i.e. from South to North.
+ ++ #number + DurationMin +
+(Optional) Min duration before switching the orbit position. Default is keep same orbit until RTB or engage.
+ ++ #number + DurationMax +
+(Optional) Max duration before switching the orbit position. Default is keep same orbit until RTB or engage.
+ ++ #table + CapCoordinates +
+Table of coordinates of first race track point. Second point is determined by leg length and heading.
+ +self
+ +Asynchronous Event Trigger for Event Patrol.
+ ++ #number + Delay +
+The delay in seconds.
+ +Asynchronous Event Trigger for Event PatrolRoute.
+ ++ #number + Delay +
+The delay in seconds.
+ +This static method is called from the route path within the last task at the last waypoint of the AIPatrol.
+ + +Note that this method is required, as triggers the next route when patrolling for the AIPatrol.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The AI group.
+ ++ #AI_AIR_PATROL + Fsm +
+The FSM.
+ +Defines a new patrol route using the AI.AI_Patrol#AI_PATROL_ZONE parameters and settings.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +self
+ +Defines a new patrol route using the AI.AI_Patrol#AI_PATROL_ZONE parameters and settings.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The Group managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +Creates a new AI_AIR process.
+ ++ Wrapper.Group#GROUP + AIGroup +
+The group object to receive the A2G Process.
+ +OnAfter Transition Handler for Event RTB.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +Refuel Handler OnAfter for AI_AIR
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
++ #string + Event +
++ #string + To +
+Start Handler OnAfter for AI_AIR
+ ++ #string + From +
++ #string + Event +
++ #string + To +
+OnAfter Transition Handler for Event Status.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnAfter Transition Handler for Event Stop.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnBefore Transition Handler for Event RTB.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +Refuel Handler OnBefore for AI_AIR
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
++ #string + Event +
++ #string + To +
+#boolean:
+Start Handler OnBefore for AI_AIR
+ ++ #string + From +
++ #string + Event +
++ #string + To +
+#boolean:
+OnBefore Transition Handler for Event Status.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnBefore Transition Handler for Event Stop.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnEnter Transition Handler for State Returning.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnEnter Transition Handler for State Stopped.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnLeave Transition Handler for State Returning.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnLeave Transition Handler for State Stopped.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +Synchronous Event Trigger for Event RTB.
+ ++ Wrapper.Group#GROUP + AIGroup +
++ Fsm +
++ Wrapper.Group#GROUP + AIGroup +
++ Fsm +
+Refuel Trigger for AI_AIR
+ ++ Wrapper.Group#GROUP + AIGroup +
++ Fsm +
+Sets the floor and ceiling altitude of the patrol.
+ ++ DCS#Altitude + PatrolFloorAltitude +
+The lowest altitude in meters where to execute the patrol.
+ ++ DCS#Altitude + PatrolCeilingAltitude +
+The highest altitude in meters where to execute the patrol.
+ +self
+ +When the AI is damaged beyond a certain threshold, it is required that the AI returns to the home base.
+ + +However, damage cannot be foreseen early on. +Therefore, when the damage threshold is reached, +the AI will return immediately to the home base (RTB). +Note that for groups, the average damage of the complete group will be calculated. +So, in a group of 4 airplanes, 2 lost and 2 with damage 0.2, the damage threshold will be 0.25.
+ ++ #number + PatrolDamageThreshold +
+The threshold in percentage (between 0 and 1) when the AI is considered to be damaged.
+ +self
+ +Sets the disengage range, that when engaging a target beyond the specified range, the engagement will be cancelled and the plane will RTB.
+ ++ #number + DisengageRadius +
+The disengage range.
+ +self
+ +When the AI is out of fuel, it is required that a new AI is started, before the old AI can return to the home base.
+ + +Therefore, with a parameter and a calculation of the distance to the home base, the fuel threshold is calculated. +When the fuel threshold is reached, the AI will continue for a given time its patrol task in orbit, while a new AIControllable is targeted to the AI_AIR. +Once the time is finished, the old AI will return to the base.
+ ++ #number + FuelThresholdPercentage +
+The threshold in percentage (between 0 and 1) when the AIControllable is considered to get out of fuel.
+ ++ #number + OutOfFuelOrbitTime +
+The amount of seconds the out of fuel AIControllable will orbit before returning to the base.
+ +self
+ +Sets the home airbase.
+ ++ Wrapper.Airbase#AIRBASE + HomeAirbase +
+self
+ +Sets (modifies) the minimum and maximum RTB speed of the patrol.
+ ++ DCS#Speed + RTBMinSpeed +
+The minimum speed of the Wrapper.Controllable in km/h.
+ ++ DCS#Speed + RTBMaxSpeed +
+The maximum speed of the Wrapper.Controllable in km/h.
+ +self
+ +Set the min and max factors on RTB speed.
+ + +Use this, if your planes are heading back to base too fast. Default values are 0.5 and 0.6. +The RTB speed is calculated as the max speed of the unit multiplied by MinFactor (lower bracket) and multiplied by MaxFactor (upper bracket). +A random value in this bracket is then applied in the waypoint routing generation.
+ ++ #number + MinFactor +
+Lower bracket factor. Defaults to 0.5.
+ ++ #number + MaxFactor +
+Upper bracket factor. Defaults to 0.6.
+ +self
+ +Sets (modifies) the minimum and maximum speed of the patrol.
+ ++ DCS#Speed + PatrolMinSpeed +
+The minimum speed of the Wrapper.Controllable in km/h.
+ ++ DCS#Speed + PatrolMaxSpeed +
+The maximum speed of the Wrapper.Controllable in km/h.
+ +self
+ +Set the status checking off.
+ +Sets to refuel at the given tanker.
+ ++ Wrapper.Group#GROUP + TankerName +
+The group name of the tanker as defined within the Mission Editor or spawned.
+ +self
+ +Start Trigger for AI_AIR
+ +Synchronous Event Trigger for Event Status.
+ +Synchronous Event Trigger for Event Stop.
+ +Asynchronous Event Trigger for Event RTB.
+ ++ #number + Delay +
+The delay in seconds.
+ +Refuel Asynchronous Trigger for AI_AIR
+ +Start Asynchronous Trigger for AI_AIR
+ +Asynchronous Event Trigger for Event Status.
+ ++ #number + Delay +
+The delay in seconds.
+ +Asynchronous Event Trigger for Event Stop.
+ ++ #number + Delay +
+The delay in seconds.
+ ++ Wrapper.Group#GROUP + AIGroup +
++ From +
++ Event +
++ To +
++ HoldTime +
++ Wrapper.Group#GROUP + AIGroup +
++ From +
++ Event +
++ To +
++ Wrapper.Group#GROUP + AIGroup +
++ From +
++ Event +
++ To +
++ Wrapper.Group#GROUP + AIGroup +
++ From +
++ Event +
++ To +
+Coordinates the approriate returning action.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +self
+ +Defines a new patrol route using the AI.AI_Patrol#AI_PATROL_ZONE parameters and settings.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +self
+ +Gets the CONTROLLABLE object that the FSM_CONTROLLABLE governs.
+ +Creates a new FSM_CONTROLLABLE object.
+ ++ #table + FSMT +
+Finite State Machine Table
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+(optional) The CONTROLLABLE object that the FSM_CONTROLLABLE governs.
+ +OnAfter Transition Handler for Event Stop.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnBefore Transition Handler for Event Stop.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnEnter Transition Handler for State Stopped.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnLeave Transition Handler for State Stopped.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +Sets the CONTROLLABLE object that the FSM_CONTROLLABLE governs.
+ ++ Wrapper.Controllable#CONTROLLABLE + FSMControllable +
+Synchronous Event Trigger for Event Stop.
+ +Asynchronous Event Trigger for Event Stop.
+ ++ #number + Delay +
+The delay in seconds.
+ ++ step +
++ trigger +
++ params +
++ EventName +
+Adds an End state.
+ ++ #string + State +
+The FSM state.
+ +Set the default #FSM_PROCESS template with key ProcessName providing the ProcessClass and the process object when it is assigned to a Wrapper.Controllable by the task.
+ ++ #table + From +
+Can contain a string indicating the From state or a table of strings containing multiple From states.
+ ++ #string + Event +
+The Event name.
+ ++ Core.Fsm#FSM_PROCESS + Process +
+An sub-process FSM.
+ ++ #table + ReturnEvents +
+A table indicating for which returned events of the SubFSM which Event must be triggered in the FSM.
+ +The SubFSM.
+ +Adds a score for the FSM to be achieved.
+ ++ #string + State +
+is the state of the process when the score needs to be given. (See the relevant state descriptions of the process).
+ ++ #string + ScoreText +
+is a text describing the score that is given according the status.
+ ++ #number + Score +
+is a number providing the score of the status.
+ +#FSM:
+self
+ +Adds a score for the FSM_PROCESS to be achieved.
+ ++ #string + From +
+is the From State of the main process.
+ ++ #string + Event +
+is the Event of the main process.
+ ++ #string + State +
+is the state of the process when the score needs to be given. (See the relevant state descriptions of the process).
+ ++ #string + ScoreText +
+is a text describing the score that is given according the status.
+ ++ #number + Score +
+is a number providing the score of the status.
+ +#FSM:
+self
+ +Add a new transition rule to the FSM.
+ + +A transition rule defines when and if the FSM can transition from a state towards another state upon a triggered event.
+ ++ #table + From +
+Can contain a string indicating the From state or a table of strings containing multiple From states.
+ ++ #string + Event +
+The Event name.
+ ++ #string + To +
+The To state.
+ +Get current state.
+ +Returns the End states.
+ +Returns a table of the SubFSM rules defined within the FSM.
+ +Returns a table with the scores defined.
+ +Returns the start state of the FSM.
+ +#string:
+A string containing the start state.
+ +Get current state.
+ +Returns a table with the Subs defined.
+ +Returns a table of the transition rules defined within the FSM.
+ +Check if FSM is in state.
+ ++ #string + State +
+State name.
+ +#boolean:
+If true, FSM is in this state.
+ +Load call backs.
+ ++ #table + CallBackTable +
+Table of call backs.
+ +Creates a new FSM object.
+ ++ From +
++ Event +
++ Fsm +
+Sets the start state of the FSM.
+ ++ #string + State +
+A string defining the start state.
+ +Add to map.
+ ++ #table + Map +
+Map.
+ ++ #table + Event +
+Event table.
+ +Call handler.
+ ++ #string + step +
+Step "onafter", "onbefore", "onenter", "onleave".
+ ++ #string + trigger +
+Trigger.
+ ++ #table + params +
+Parameters.
+ ++ #string + EventName +
+Event name.
+ +Value.
+ +Create transition.
+ ++ #string + EventName +
+Event name.
+ +#function:
+Function.
+ +Delayed transition.
+ ++ #string + EventName +
+Event name.
+ +#function:
+Function.
+ +Event map.
+ ++ #table + Events +
+Events.
+ ++ #table + EventStructure +
+Event structure.
+ +Go sub.
+ ++ #string + ParentFrom +
+Parent from state.
+ ++ #string + ParentEvent +
+Parent event name.
+ +#table:
+Subs.
+ +Handler.
+ ++ #string + EventName +
+Event name.
+ ++ ... +
+Arguments.
+ +Is end state.
+ ++ #string + Current +
+Current state name.
+ +#table:
+FSM parent.
+ +#string:
+Event name.
+ +Sub maps.
+ ++ #table + subs +
+Subs.
+ ++ #table + sub +
+Sub.
+ ++ #string + name +
+Name.
+ +Check if can do an event.
+ ++ #string + e +
+Event name.
+ +#boolean:
+If true, FSM can do the event.
+ +#string:
+To state.
+ +Check if cannot do an event.
+ ++ #string + e +
+Event name.
+ +#boolean:
+If true, FSM cannot do the event.
+ +Check if FSM is in state.
+ ++ #string + State +
+State name.
+ ++ state +
+#boolean:
+If true, FSM is in this state.
+ +Clear the state of an object.
+ ++ Object +
+The object that holds the Value set by the Key.
+ ++ StateName +
+The key that is should be cleared.
+ +Creation of a Birth Event.
+ ++ DCS#Time + EventTime +
+The time stamp of the event.
+ ++ DCS#Object + Initiator +
+The initiating object of the event.
+ ++ #string + IniUnitName +
+The initiating unit name.
+ ++ place +
++ subplace +
+Creation of a Crash Event.
+ ++ DCS#Time + EventTime +
+The time stamp of the event.
+ ++ DCS#Object + Initiator +
+The initiating object of the event.
+ ++ IniObjectCategory +
+Creation of a Dead Event.
+ ++ DCS#Time + EventTime +
+The time stamp of the event.
+ ++ DCS#Object + Initiator +
+The initiating object of the event.
+ ++ IniObjectCategory +
+Creation of a S_EVENT_PLAYER_ENTER_AIRCRAFT event.
+ Wrapper.Unit#UNIT + PlayerUnit +
+The aircraft unit the player entered.
+ +Creation of a Remove Unit Event.
+ ++ DCS#Time + EventTime +
+The time stamp of the event.
+ ++ DCS#Object + Initiator +
+The initiating object of the event.
+ +Creation of a Takeoff Event.
+ ++ DCS#Time + EventTime +
+The time stamp of the event.
+ ++ DCS#Object + Initiator +
+The initiating object of the event.
+ +Creation of a Crash Event.
+ ++ DCS#Time + EventTime +
+The time stamp of the event.
+ ++ DCS#Object + Initiator +
+The initiating object of the event.
+ +Log an exception which will be traced always.
+ + +Can be anywhere within the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Returns the event dispatcher
+ +Remove all subscribed events
+ +Trace a function call.
+ + +Must be at the beginning of the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Trace a function call level 2.
+ + +Must be at the beginning of the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Trace a function call level 3.
+ + +Must be at the beginning of the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Get the ClassID of the class instance.
+ +#string:
+The ClassID of the class instance.
+ +Get the ClassName of the class instance.
+ +#string:
+The ClassName of the class instance.
+ +Get the ClassName + ClassID of the class instance.
+ + +The ClassName + ClassID is formatted as '%s#%09d'.
+ +#string:
+The ClassName + ClassID of the class instance.
+ +Get the Class Core.Event processing Priority.
+ + +The Event processing Priority is a number from 1 to 10, +reflecting the order of the classes subscribed to the Event to be processed.
+ +This is the worker method to retrieve the Parent class.
+ + +Note that the Parent class must be passed to call the parent class method.
+ +self:GetParent(self):ParentMethod()
+
+
+
+
+
+Get a Value given a Key from the Object.
+ + +Note that if the Object is destroyed, set to nil, or garbage collected, then the Values and Keys will also be gone.
+ ++ Object +
+The object that holds the Value set by the Key.
+ ++ Key +
+The key that is used to retrieve the value. Note that the key can be a #string, but it can also be any other type!
+ +The Value retrieved or nil if the Key was not found and thus the Value could not be retrieved.
+ +Subscribe to a DCS Event.
+ ++ Core.Event#EVENTS + EventID +
+Event ID.
+ ++ #function + EventFunction +
+(optional) The function to be called when the event occurs for the unit.
+ +Log an information which will be traced always.
+ + +Can be anywhere within the function logic.
+ ++ Arguments +
+A #table or any field.
+ +This is the worker method to inherit from a parent class.
+ ++ Child +
+is the Child class that inherits.
+ ++ #BASE + Parent +
+is the Parent class that the Child inherits from.
+ +Child
+ +This is the worker method to check if an object is an (sub)instance of a class.
+ + + +ZONE:New( 'some zone' ):IsInstanceOf( ZONE ) will return true
ZONE:New( 'some zone' ):IsInstanceOf( 'ZONE' ) will return true
ZONE:New( 'some zone' ):IsInstanceOf( 'zone' ) will return true
ZONE:New( 'some zone' ):IsInstanceOf( 'BASE' ) will return true
ZONE:New( 'some zone' ):IsInstanceOf( 'GROUP' ) will return false
+ ClassName +
+is the name of the class or the class itself to run the check against
+ +#boolean:
+Enquires if tracing is on (for the class).
+ +BASE constructor.
+ + + +This is an example how to use the BASE:New() constructor in a new class definition when inheriting from BASE.
+ +function EVENT:New()
+ local self = BASE:Inherit( self, BASE:New() ) -- #EVENT
+ return self
+end
+
+
+
+Occurs when an Event for an object is triggered.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that triggered the event.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +BDA.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a ground unit captures either an airbase or a farp.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that captured the base +place: The airbase that was captured, can be a FARP or Airbase. When calling place:getCoalition() the faction will already be the new owning faction.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any object is spawned into the mission.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that was spawned
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any aircraft crashes into the ground and is completely destroyed.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that has crashed
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when an object is dead.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that is dead.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Unknown precisely what creates this event, likely tied into newer damage model.
+ + +Will update this page when new information become available.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Discard chair after ejection.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a pilot ejects from an aircraft +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ + +initiator : The unit that has ejected
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any aircraft shuts down its engines.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that is stopping its engines.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any aircraft starts its engines.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that is starting its engines.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs whenever an object is hit by a weapon.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit object the fired the weapon +weapon: Weapon object that hit the target +target: The Object that was hit.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any system fails on a human controlled aircraft.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that had the failure
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs on the death of a unit.
+ + +Contains more and different information. Similar to unit_lost it will occur for aircraft before the aircraft crash event occurs. +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when an aircraft lands at an airbase, farp or ship +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ + +initiator : The unit that has landed +place: Object that the unit landed on. Can be an Airbase Object, FARP, or Ships
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs shortly after the landing animation of an ejected pilot touching the ground and standing up.
+ + +Event does not occur if the pilot lands in the water and sub combs to Davey Jones Locker. +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Landing quality mark.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a new mark was added.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +MarkID: ID of the mark.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a mark text was changed.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +MarkID: ID of the mark.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a mark was removed.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +MarkID: ID of the mark.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a mission ends +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a mission starts +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Weapon add.
+ + +Fires when entering a mission per pylon with the name of the weapon (double pylons not counted, infinite wep reload not counted. +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when the pilot of an aircraft is killed.
+ + +Can occur either if the player is alive and crashes or if a weapon kills the pilot without completely destroying the plane. +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that the pilot has died in.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a player enters a slot and takes control of an aircraft.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +NOTE: This is a workaround of a long standing DCS bug with the PLAYER_ENTER_UNIT event. +initiator : The unit that is being taken control of.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any player assumes direct control of a unit.
+ + +Note - not Mulitplayer safe. Use PlayerEnterAircraft. +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that is being taken control of.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any player relieves control of a unit to the AI.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that the player left.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when an aircraft connects with a tanker and begins taking on fuel.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that is receiving fuel.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when an aircraft is finished taking fuel.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that was receiving fuel.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any modification to the "Score" as seen on the debrief menu would occur.
+ + +There is no information on what values the score was changed to. Event is likely similar to player_comment in this regard. +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any unit stops firing its weapon.
+ + +Event will always correspond with a shooting start event. +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that was doing the shooting.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any unit begins firing a weapon that has a high rate of fire.
+ + +Most common with aircraft cannons (GAU-8), autocannons, and machine guns. +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that is doing the shooting. +target: The unit that is being targeted.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs whenever any unit in a mission fires a weapon.
+ + +But not any machine gun or autocannon based weapon, those are handled by EVENT.ShootingStart. +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when an aircraft takes off from an airbase, farp, or ship.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that tookoff +place: Object from where the AI took-off from. Can be an Airbase Object, FARP, or Ships
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Trigger zone.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when the game thinks an object is destroyed.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Schedule a new time event.
+ + +Note that the schedule will only take place if the scheduler is started. Even for a single schedule event, the scheduler needs to be started also.
+ ++ #number + Start +
+Specifies the amount of seconds that will be waited before the scheduling is started, and the event function is called.
+ ++ #function + SchedulerFunction +
+The event function to be called when a timer event occurs. The event function needs to accept the parameters specified in SchedulerArguments.
+ ++ #table + ... +
+Optional arguments that can be given as part of scheduler. The arguments need to be given as a table { param1, param 2, ... }.
+ +#string:
+The Schedule ID of the planned schedule.
+ +Schedule a new time event.
+ + +Note that the schedule will only take place if the scheduler is started. Even for a single schedule event, the scheduler needs to be started also.
+ ++ #number + Start +
+Specifies the amount of seconds that will be waited before the scheduling is started, and the event function is called.
+ ++ #number + Repeat +
+Specifies the interval in seconds when the scheduler will call the event function.
+ ++ #number + RandomizeFactor +
+Specifies a randomization factor between 0 and 1 to randomize the Repeat.
+ ++ #number + Stop +
+Specifies the amount of seconds when the scheduler will be stopped.
+ ++ #function + SchedulerFunction +
+The event function to be called when a timer event occurs. The event function needs to accept the parameters specified in SchedulerArguments.
+ ++ #table + ... +
+Optional arguments that can be given as part of scheduler. The arguments need to be given as a table { param1, param 2, ... }.
+ +#string:
+The Schedule ID of the planned schedule.
+ +Stops the Schedule.
+ ++ #string + SchedulerID +
+(Optional) Scheduler ID to be stopped. If nil, all pending schedules are stopped.
+ +Set the Class Core.Event processing Priority.
+ + +The Event processing Priority is a number from 1 to 10, +reflecting the order of the classes subscribed to the Event to be processed.
+ ++ #number + EventPriority +
+The Core.Event processing Priority.
+ +self
+ +Set a state or property of the Object given a Key and a Value.
+ + +Note that if the Object is destroyed, set to nil, or garbage collected, then the Values and Keys will also be gone.
+ ++ Object +
+The object that will hold the Value set by the Key.
+ ++ Key +
+The key that is used as a reference of the value. Note that the key can be a #string, but it can also be any other type!
+ ++ Value +
+The value to is stored in the object.
+ +The Value set.
+ +Trace a function logic level 1.
+ + +Can be anywhere within the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Trace a function logic level 2.
+ + +Can be anywhere within the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Trace a function logic level 3.
+ + +Can be anywhere within the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Trace all methods in MOOSE
+ ++ #boolean + TraceAll +
+true = trace all methods in MOOSE.
+ +Set tracing for a class
+ +Set tracing for a specific method of class
+ ++ #string + Class +
+Class name.
+ ++ #string + Method +
+Method.
+ +Set trace level
+ +Set trace off.
+ +Set trace on.
+ +Set trace on or off +Note that when trace is off, no BASE.Debug statement is performed, increasing performance! +When Moose is loaded statically, (as one file), tracing is switched off by default.
+ + +So tracing must be switched on manually in your mission if you are using Moose statically. +When moose is loading dynamically (for moose class development), tracing is switched on by default.
+ ++ #boolean + TraceOnOff +
+Switch the tracing on or off.
+ +
+ -- Switch the tracing On
+ BASE:TraceOnOff( true )
+
+ -- Switch the tracing Off
+ BASE:TraceOnOff( false )
+
+
+UnSubscribe to a DCS event.
+ ++ Core.Event#EVENTS + EventID +
+Event ID.
+ +Trace a function call.
+ + +This function is private.
+ ++ Arguments +
+A #table or any field.
+ ++ DebugInfoCurrentParam +
++ DebugInfoFromParam +
+Trace a function logic.
+ ++ Arguments +
+A #table or any field.
+ ++ DebugInfoCurrentParam +
++ DebugInfoFromParam +
+The main event handling function...
+ + +This function captures all events generated for the class.
+ +|
Creates a new AI_A2G_BAI object + |
+
+
| Fields and Methods inherited from AI_AIR_PATROL | +Description | +
|---|---|
| + | + + | +
| + |
+ Creates a new AI_AIR_PATROL object + |
+
| + |
+ OnAfter Transition Handler for Event Patrol. + |
+
| + |
+ OnAfter Transition Handler for Event PatrolRoute. + |
+
| + |
+ OnBefore Transition Handler for Event Patrol. + |
+
| + |
+ OnBefore Transition Handler for Event PatrolRoute. + |
+
| + |
+ OnEnter Transition Handler for State Patrolling. + |
+
| + |
+ OnLeave Transition Handler for State Patrolling. + |
+
| + |
+ Synchronous Event Trigger for Event Patrol. + |
+
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + |
+ Synchronous Event Trigger for Event PatrolRoute. + |
+
| + | + + | +
| + |
+ Resumes the AIPatrol + |
+
| + |
+ Set the Engage Range when the AI will engage with airborne enemies. + |
+
| + |
+ Set race track parameters. + |
+
| + |
+ Asynchronous Event Trigger for Event Patrol. + |
+
| + |
+ Asynchronous Event Trigger for Event PatrolRoute. + |
+
| + |
+ This static method is called from the route path within the last task at the last waypoint of the AIPatrol. + |
+
| + |
+ Defines a new patrol route using the AI.AI_Patrol#AI_PATROL_ZONE parameters and settings. + |
+
| + |
+ Defines a new patrol route using the AI.AI_Patrol#AI_PATROL_ZONE parameters and settings. + |
+
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| Fields and Methods inherited from AI_AIR | +Description | +
|---|---|
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + |
+ Creates a new AI_AIR process. + |
+
| + |
+ OnAfter Transition Handler for Event RTB. + |
+
| + |
+ Refuel Handler OnAfter for AI_AIR + |
+
| + |
+ Start Handler OnAfter for AI_AIR + |
+
| + |
+ OnAfter Transition Handler for Event Status. + |
+
| + |
+ OnAfter Transition Handler for Event Stop. + |
+
| + |
+ OnBefore Transition Handler for Event RTB. + |
+
| + |
+ Refuel Handler OnBefore for AI_AIR + |
+
| + |
+ Start Handler OnBefore for AI_AIR + |
+
| + |
+ OnBefore Transition Handler for Event Status. + |
+
| + |
+ OnBefore Transition Handler for Event Stop. + |
+
| + | + + | +
| + | + + | +
| + |
+ OnEnter Transition Handler for State Returning. + |
+
| + |
+ OnEnter Transition Handler for State Stopped. + |
+
| + |
+ OnLeave Transition Handler for State Returning. + |
+
| + |
+ OnLeave Transition Handler for State Stopped. + |
+
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + |
+ Synchronous Event Trigger for Event RTB. + |
+
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + |
+ Refuel Trigger for AI_AIR + |
+
| + | + + | +
AI_A2G_BAI:SetAltitude(PatrolFloorAltitude, PatrolCeilingAltitude) |
+
+ Sets the floor and ceiling altitude of the patrol. + |
+
| + |
+ When the AI is damaged beyond a certain threshold, it is required that the AI returns to the home base. + |
+
| + |
+ Sets the disengage range, that when engaging a target beyond the specified range, the engagement will be cancelled and the plane will RTB. + |
+
| + | + + | +
AI_A2G_BAI:SetFuelThreshold(FuelThresholdPercentage, OutOfFuelOrbitTime) |
+
+ When the AI is out of fuel, it is required that a new AI is started, before the old AI can return to the home base. + |
+
| + |
+ Sets the home airbase. + |
+
| + |
+ Sets (modifies) the minimum and maximum RTB speed of the patrol. + |
+
| + |
+ Set the min and max factors on RTB speed. + |
+
| + |
+ Sets (modifies) the minimum and maximum speed of the patrol. + |
+
| + |
+ Set the status checking off. + |
+
| + |
+ Sets to refuel at the given tanker. + |
+
| + | + + | +
| + |
+ Start Trigger for AI_AIR + |
+
| + |
+ Synchronous Event Trigger for Event Status. + |
+
| + |
+ Synchronous Event Trigger for Event Stop. + |
+
| + | + + | +
| + | + + | +
| + |
+ Asynchronous Event Trigger for Event RTB. + |
+
| + |
+ Refuel Asynchronous Trigger for AI_AIR + |
+
| + |
+ Start Asynchronous Trigger for AI_AIR + |
+
| + |
+ Asynchronous Event Trigger for Event Status. + |
+
| + |
+ Asynchronous Event Trigger for Event Stop. + |
+
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + |
+ Coordinates the approriate returning action. + |
+
| + |
+ Defines a new patrol route using the AI.AI_Patrol#AI_PATROL_ZONE parameters and settings. + |
+
| + | + + | +
| + | + + | +
| Fields and Methods inherited from FSM_CONTROLLABLE | +Description | +
|---|---|
| + | + + | +
| + |
+ Gets the CONTROLLABLE object that the FSM_CONTROLLABLE governs. + |
+
| + |
+ Creates a new FSM_CONTROLLABLE object. + |
+
| + |
+ OnAfter Transition Handler for Event Stop. + |
+
| + |
+ OnBefore Transition Handler for Event Stop. + |
+
| + |
+ OnEnter Transition Handler for State Stopped. + |
+
| + |
+ OnLeave Transition Handler for State Stopped. + |
+
| + |
+ Sets the CONTROLLABLE object that the FSM_CONTROLLABLE governs. + |
+
| + |
+ Synchronous Event Trigger for Event Stop. + |
+
| + |
+ Asynchronous Event Trigger for Event Stop. + |
+
| + | + + | +
| Fields and Methods inherited from FSM | +Description | +
|---|---|
| + |
+ Adds an End state. + |
+
| + |
+ Set the default #FSM_PROCESS template with key ProcessName providing the ProcessClass and the process object when it is assigned to a Wrapper.Controllable by the task. + |
+
| + |
+ Adds a score for the FSM to be achieved. + |
+
AI_A2G_BAI:AddScoreProcess(From, Event, State, ScoreText, Score) |
+
+ Adds a score for the FSM_PROCESS to be achieved. + |
+
| + |
+ Add a new transition rule to the FSM. + |
+
| + |
+ Call scheduler. + |
+
| + |
+ Name of the class. + |
+
| + | + + | +
| + |
+ Get current state. + |
+
| + |
+ Returns the End states. + |
+
| + | + + | +
| + |
+ Returns a table of the SubFSM rules defined within the FSM. + |
+
| + |
+ Returns a table with the scores defined. + |
+
| + |
+ Returns the start state of the FSM. + |
+
| + |
+ Get current state. + |
+
| + |
+ Returns a table with the Subs defined. + |
+
| + |
+ Returns a table of the transition rules defined within the FSM. + |
+
| + |
+ Check if FSM is in state. + |
+
| + |
+ Load call backs. + |
+
| + |
+ Creates a new FSM object. + |
+
| + |
+ Scores. + |
+
| + | + + | +
| + |
+ Sets the start state of the FSM. + |
+
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + |
+ Add to map. + |
+
| + |
+ Call handler. + |
+
| + |
+ Create transition. + |
+
| + |
+ Delayed transition. + |
+
| + |
+ Event map. + |
+
| + |
+ Go sub. + |
+
| + |
+ Handler. + |
+
| + |
+ Is end state. + |
+
| + |
+ Sub maps. + |
+
| + |
+ Check if can do an event. + |
+
| + |
+ Check if cannot do an event. + |
+
| + |
+ Current state name. + |
+
| + | + + | +
| + |
+ Check if FSM is in state. + |
+
| + |
+ Options. + |
+
| + |
+ Subs. + |
+
| Fields and Methods inherited from BASE | +Description | +
|---|---|
| + |
+ The ID number of the class. + |
+
| + |
+ The name of the class. + |
+
| + |
+ The name of the class concatenated with the ID number of the class. + |
+
| + |
+ Clear the state of an object. + |
+
AI_A2G_BAI:CreateEventBirth(EventTime, Initiator, IniUnitName, place, subplace) |
+
+ Creation of a Birth Event. + |
+
AI_A2G_BAI:CreateEventCrash(EventTime, Initiator, IniObjectCategory) |
+
+ Creation of a Crash Event. + |
+
AI_A2G_BAI:CreateEventDead(EventTime, Initiator, IniObjectCategory) |
+
+ Creation of a Dead Event. + |
+
| + |
+ Creation of a |
+
| + |
+ Creation of a Remove Unit Event. + |
+
| + |
+ Creation of a Takeoff Event. + |
+
| + |
+ Creation of a Crash Event. + |
+
| + |
+ Log an exception which will be traced always. + |
+
| + |
+ Returns the event dispatcher + |
+
| + |
+ Remove all subscribed events + |
+
| + |
+ Trace a function call. + |
+
| + |
+ Trace a function call level 2. + |
+
| + |
+ Trace a function call level 3. + |
+
| + |
+ Get the ClassID of the class instance. + |
+
| + |
+ Get the ClassName of the class instance. + |
+
| + |
+ Get the ClassName + ClassID of the class instance. + |
+
| + |
+ Get the Class Core.Event processing Priority. + |
+
| + |
+ This is the worker method to retrieve the Parent class. + |
+
| + |
+ Get a Value given a Key from the Object. + |
+
| + |
+ Subscribe to a DCS Event. + |
+
| + |
+ Log an information which will be traced always. + |
+
| + |
+ This is the worker method to inherit from a parent class. + |
+
| + |
+ This is the worker method to check if an object is an (sub)instance of a class. + |
+
| + |
+ Enquires if tracing is on (for the class). + |
+
| + |
+ BASE constructor. + |
+
| + |
+ Occurs when an Event for an object is triggered. + |
+
| + |
+ BDA. + |
+
| + |
+ Occurs when a ground unit captures either an airbase or a farp. + |
+
| + |
+ Occurs when any object is spawned into the mission. + |
+
| + |
+ Occurs when any aircraft crashes into the ground and is completely destroyed. + |
+
| + |
+ Occurs when an object is dead. + |
+
| + |
+ Unknown precisely what creates this event, likely tied into newer damage model. + |
+
| + |
+ Discard chair after ejection. + |
+
| + |
+ Occurs when a pilot ejects from an aircraft +Have a look at the class Core.Event#EVENT as these are just the prototypes. + |
+
| + |
+ Occurs when any aircraft shuts down its engines. + |
+
| + |
+ Occurs when any aircraft starts its engines. + |
+
| + |
+ Occurs whenever an object is hit by a weapon. + |
+
| + |
+ Occurs when any system fails on a human controlled aircraft. + |
+
| + |
+ Occurs on the death of a unit. + |
+
| + |
+ Occurs when an aircraft lands at an airbase, farp or ship +Have a look at the class Core.Event#EVENT as these are just the prototypes. + |
+
| + |
+ Occurs shortly after the landing animation of an ejected pilot touching the ground and standing up. + |
+
| + |
+ Landing quality mark. + |
+
| + |
+ Occurs when a new mark was added. + |
+
| + |
+ Occurs when a mark text was changed. + |
+
| + |
+ Occurs when a mark was removed. + |
+
| + |
+ Occurs when a mission ends +Have a look at the class Core.Event#EVENT as these are just the prototypes. + |
+
| + |
+ Occurs when a mission starts +Have a look at the class Core.Event#EVENT as these are just the prototypes. + |
+
| + |
+ Weapon add. + |
+
| + |
+ Occurs when the pilot of an aircraft is killed. + |
+
| + |
+ Occurs when a player enters a slot and takes control of an aircraft. + |
+
| + |
+ Occurs when any player assumes direct control of a unit. + |
+
| + |
+ Occurs when any player relieves control of a unit to the AI. + |
+
| + |
+ Occurs when an aircraft connects with a tanker and begins taking on fuel. + |
+
| + |
+ Occurs when an aircraft is finished taking fuel. + |
+
| + |
+ Occurs when any modification to the "Score" as seen on the debrief menu would occur. + |
+
| + |
+ Occurs when any unit stops firing its weapon. + |
+
| + |
+ Occurs when any unit begins firing a weapon that has a high rate of fire. + |
+
| + |
+ Occurs whenever any unit in a mission fires a weapon. + |
+
| + |
+ Occurs when an aircraft takes off from an airbase, farp, or ship. + |
+
| + |
+ Trigger zone. + |
+
| + |
+ Occurs when the game thinks an object is destroyed. + |
+
| + |
+ Schedule a new time event. + |
+
AI_A2G_BAI:ScheduleRepeat(Start, Repeat, RandomizeFactor, Stop, SchedulerFunction, ...) |
+
+ Schedule a new time event. + |
+
| + |
+ Stops the Schedule. + |
+
| + | + + | +
| + |
+ Set the Class Core.Event processing Priority. + |
+
| + |
+ Set a state or property of the Object given a Key and a Value. + |
+
| + |
+ Trace a function logic level 1. + |
+
| + |
+ Trace a function logic level 2. + |
+
| + |
+ Trace a function logic level 3. + |
+
| + |
+ Trace all methods in MOOSE + |
+
| + |
+ Set tracing for a class + |
+
| + |
+ Set tracing for a specific method of class + |
+
| + |
+ Set trace level + |
+
| + |
+ Set trace off. + |
+
| + |
+ Set trace on. + |
+
| + |
+ Set trace on or off +Note that when trace is off, no BASE.Debug statement is performed, increasing performance! +When Moose is loaded statically, (as one file), tracing is switched off by default. + |
+
| + |
+ UnSubscribe to a DCS event. + |
+
| + | + + | +
AI_A2G_BAI:_F(Arguments, DebugInfoCurrentParam, DebugInfoFromParam) |
+
+ Trace a function call. + |
+
AI_A2G_BAI:_T(Arguments, DebugInfoCurrentParam, DebugInfoFromParam) |
+
+ Trace a function logic. + |
+
| + | + + | +
| + |
+ The main event handling function... |
Creates a new AI_AIR_PATROL object
+ ++ AI.AI_Air#AI_AIR + AI_Air +
+The AI_AIR FSM.
+ ++ Wrapper.Group#GROUP + AIGroup +
+The AI group.
+ ++ Core.Zone#ZONE_BASE + PatrolZone +
+The Core.Zone where the patrol needs to be executed.
+ ++ DCS#Altitude + PatrolFloorAltitude +
+(optional, default = 1000m ) The lowest altitude in meters where to execute the patrol.
+ ++ DCS#Altitude + PatrolCeilingAltitude +
+(optional, default = 1500m ) The highest altitude in meters where to execute the patrol.
+ ++ DCS#Speed + PatrolMinSpeed +
+(optional, default = 50% of max speed) The minimum speed of the Wrapper.Group in km/h.
+ ++ DCS#Speed + PatrolMaxSpeed +
+(optional, default = 75% of max speed) The maximum speed of the Wrapper.Group in km/h.
+ ++ DCS#AltitudeType + PatrolAltType +
+The altitude type ("RADIO"=="AGL", "BARO"=="ASL"). Defaults to RADIO.
+ +OnAfter Transition Handler for Event Patrol.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnAfter Transition Handler for Event PatrolRoute.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnBefore Transition Handler for Event Patrol.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnBefore Transition Handler for Event PatrolRoute.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnEnter Transition Handler for State Patrolling.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnLeave Transition Handler for State Patrolling.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +Synchronous Event Trigger for Event Patrol.
+ +Synchronous Event Trigger for Event PatrolRoute.
+ +Resumes the AIPatrol
+ ++ Wrapper.Group#GROUP + AIPatrol +
++ Core.Fsm#FSM + Fsm +
+Set the Engage Range when the AI will engage with airborne enemies.
+ ++ #number + EngageRange +
+The Engage Range.
+ +self
+ +Set race track parameters.
+ + +CAP flights will perform race track patterns rather than randomly patrolling the zone.
+ ++ #number + LegMin +
+Min Length of the race track leg in meters. Default 10,000 m.
+ ++ #number + LegMax +
+Max length of the race track leg in meters. Default 15,000 m.
+ ++ #number + HeadingMin +
+Min heading of the race track in degrees. Default 0 deg, i.e. from South to North.
+ ++ #number + HeadingMax +
+Max heading of the race track in degrees. Default 180 deg, i.e. from South to North.
+ ++ #number + DurationMin +
+(Optional) Min duration before switching the orbit position. Default is keep same orbit until RTB or engage.
+ ++ #number + DurationMax +
+(Optional) Max duration before switching the orbit position. Default is keep same orbit until RTB or engage.
+ ++ #table + CapCoordinates +
+Table of coordinates of first race track point. Second point is determined by leg length and heading.
+ +self
+ +Asynchronous Event Trigger for Event Patrol.
+ ++ #number + Delay +
+The delay in seconds.
+ +Asynchronous Event Trigger for Event PatrolRoute.
+ ++ #number + Delay +
+The delay in seconds.
+ +This static method is called from the route path within the last task at the last waypoint of the AIPatrol.
+ + +Note that this method is required, as triggers the next route when patrolling for the AIPatrol.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The AI group.
+ ++ #AI_AIR_PATROL + Fsm +
+The FSM.
+ +Defines a new patrol route using the AI.AI_Patrol#AI_PATROL_ZONE parameters and settings.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +self
+ +Defines a new patrol route using the AI.AI_Patrol#AI_PATROL_ZONE parameters and settings.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The Group managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +Creates a new AI_AIR process.
+ ++ Wrapper.Group#GROUP + AIGroup +
+The group object to receive the A2G Process.
+ +OnAfter Transition Handler for Event RTB.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +Refuel Handler OnAfter for AI_AIR
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
++ #string + Event +
++ #string + To +
+Start Handler OnAfter for AI_AIR
+ ++ #string + From +
++ #string + Event +
++ #string + To +
+OnAfter Transition Handler for Event Status.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnAfter Transition Handler for Event Stop.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnBefore Transition Handler for Event RTB.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +Refuel Handler OnBefore for AI_AIR
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
++ #string + Event +
++ #string + To +
+#boolean:
+Start Handler OnBefore for AI_AIR
+ ++ #string + From +
++ #string + Event +
++ #string + To +
+#boolean:
+OnBefore Transition Handler for Event Status.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnBefore Transition Handler for Event Stop.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnEnter Transition Handler for State Returning.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnEnter Transition Handler for State Stopped.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnLeave Transition Handler for State Returning.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnLeave Transition Handler for State Stopped.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +Synchronous Event Trigger for Event RTB.
+ ++ Wrapper.Group#GROUP + AIGroup +
++ Fsm +
++ Wrapper.Group#GROUP + AIGroup +
++ Fsm +
+Refuel Trigger for AI_AIR
+ ++ Wrapper.Group#GROUP + AIGroup +
++ Fsm +
+Sets the floor and ceiling altitude of the patrol.
+ ++ DCS#Altitude + PatrolFloorAltitude +
+The lowest altitude in meters where to execute the patrol.
+ ++ DCS#Altitude + PatrolCeilingAltitude +
+The highest altitude in meters where to execute the patrol.
+ +self
+ +When the AI is damaged beyond a certain threshold, it is required that the AI returns to the home base.
+ + +However, damage cannot be foreseen early on. +Therefore, when the damage threshold is reached, +the AI will return immediately to the home base (RTB). +Note that for groups, the average damage of the complete group will be calculated. +So, in a group of 4 airplanes, 2 lost and 2 with damage 0.2, the damage threshold will be 0.25.
+ ++ #number + PatrolDamageThreshold +
+The threshold in percentage (between 0 and 1) when the AI is considered to be damaged.
+ +self
+ +Sets the disengage range, that when engaging a target beyond the specified range, the engagement will be cancelled and the plane will RTB.
+ ++ #number + DisengageRadius +
+The disengage range.
+ +self
+ +When the AI is out of fuel, it is required that a new AI is started, before the old AI can return to the home base.
+ + +Therefore, with a parameter and a calculation of the distance to the home base, the fuel threshold is calculated. +When the fuel threshold is reached, the AI will continue for a given time its patrol task in orbit, while a new AIControllable is targeted to the AI_AIR. +Once the time is finished, the old AI will return to the base.
+ ++ #number + FuelThresholdPercentage +
+The threshold in percentage (between 0 and 1) when the AIControllable is considered to get out of fuel.
+ ++ #number + OutOfFuelOrbitTime +
+The amount of seconds the out of fuel AIControllable will orbit before returning to the base.
+ +self
+ +Sets the home airbase.
+ ++ Wrapper.Airbase#AIRBASE + HomeAirbase +
+self
+ +Sets (modifies) the minimum and maximum RTB speed of the patrol.
+ ++ DCS#Speed + RTBMinSpeed +
+The minimum speed of the Wrapper.Controllable in km/h.
+ ++ DCS#Speed + RTBMaxSpeed +
+The maximum speed of the Wrapper.Controllable in km/h.
+ +self
+ +Set the min and max factors on RTB speed.
+ + +Use this, if your planes are heading back to base too fast. Default values are 0.5 and 0.6. +The RTB speed is calculated as the max speed of the unit multiplied by MinFactor (lower bracket) and multiplied by MaxFactor (upper bracket). +A random value in this bracket is then applied in the waypoint routing generation.
+ ++ #number + MinFactor +
+Lower bracket factor. Defaults to 0.5.
+ ++ #number + MaxFactor +
+Upper bracket factor. Defaults to 0.6.
+ +self
+ +Sets (modifies) the minimum and maximum speed of the patrol.
+ ++ DCS#Speed + PatrolMinSpeed +
+The minimum speed of the Wrapper.Controllable in km/h.
+ ++ DCS#Speed + PatrolMaxSpeed +
+The maximum speed of the Wrapper.Controllable in km/h.
+ +self
+ +Set the status checking off.
+ +Sets to refuel at the given tanker.
+ ++ Wrapper.Group#GROUP + TankerName +
+The group name of the tanker as defined within the Mission Editor or spawned.
+ +self
+ +Start Trigger for AI_AIR
+ +Synchronous Event Trigger for Event Status.
+ +Synchronous Event Trigger for Event Stop.
+ +Asynchronous Event Trigger for Event RTB.
+ ++ #number + Delay +
+The delay in seconds.
+ +Refuel Asynchronous Trigger for AI_AIR
+ +Start Asynchronous Trigger for AI_AIR
+ +Asynchronous Event Trigger for Event Status.
+ ++ #number + Delay +
+The delay in seconds.
+ +Asynchronous Event Trigger for Event Stop.
+ ++ #number + Delay +
+The delay in seconds.
+ ++ Wrapper.Group#GROUP + AIGroup +
++ From +
++ Event +
++ To +
++ HoldTime +
++ Wrapper.Group#GROUP + AIGroup +
++ From +
++ Event +
++ To +
++ Wrapper.Group#GROUP + AIGroup +
++ From +
++ Event +
++ To +
++ Wrapper.Group#GROUP + AIGroup +
++ From +
++ Event +
++ To +
+Coordinates the approriate returning action.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +self
+ +Defines a new patrol route using the AI.AI_Patrol#AI_PATROL_ZONE parameters and settings.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +self
+ +Gets the CONTROLLABLE object that the FSM_CONTROLLABLE governs.
+ +Creates a new FSM_CONTROLLABLE object.
+ ++ #table + FSMT +
+Finite State Machine Table
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+(optional) The CONTROLLABLE object that the FSM_CONTROLLABLE governs.
+ +OnAfter Transition Handler for Event Stop.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnBefore Transition Handler for Event Stop.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnEnter Transition Handler for State Stopped.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnLeave Transition Handler for State Stopped.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +Sets the CONTROLLABLE object that the FSM_CONTROLLABLE governs.
+ ++ Wrapper.Controllable#CONTROLLABLE + FSMControllable +
+Synchronous Event Trigger for Event Stop.
+ +Asynchronous Event Trigger for Event Stop.
+ ++ #number + Delay +
+The delay in seconds.
+ ++ step +
++ trigger +
++ params +
++ EventName +
+Adds an End state.
+ ++ #string + State +
+The FSM state.
+ +Set the default #FSM_PROCESS template with key ProcessName providing the ProcessClass and the process object when it is assigned to a Wrapper.Controllable by the task.
+ ++ #table + From +
+Can contain a string indicating the From state or a table of strings containing multiple From states.
+ ++ #string + Event +
+The Event name.
+ ++ Core.Fsm#FSM_PROCESS + Process +
+An sub-process FSM.
+ ++ #table + ReturnEvents +
+A table indicating for which returned events of the SubFSM which Event must be triggered in the FSM.
+ +The SubFSM.
+ +Adds a score for the FSM to be achieved.
+ ++ #string + State +
+is the state of the process when the score needs to be given. (See the relevant state descriptions of the process).
+ ++ #string + ScoreText +
+is a text describing the score that is given according the status.
+ ++ #number + Score +
+is a number providing the score of the status.
+ +#FSM:
+self
+ +Adds a score for the FSM_PROCESS to be achieved.
+ ++ #string + From +
+is the From State of the main process.
+ ++ #string + Event +
+is the Event of the main process.
+ ++ #string + State +
+is the state of the process when the score needs to be given. (See the relevant state descriptions of the process).
+ ++ #string + ScoreText +
+is a text describing the score that is given according the status.
+ ++ #number + Score +
+is a number providing the score of the status.
+ +#FSM:
+self
+ +Add a new transition rule to the FSM.
+ + +A transition rule defines when and if the FSM can transition from a state towards another state upon a triggered event.
+ ++ #table + From +
+Can contain a string indicating the From state or a table of strings containing multiple From states.
+ ++ #string + Event +
+The Event name.
+ ++ #string + To +
+The To state.
+ +Get current state.
+ +Returns the End states.
+ +Returns a table of the SubFSM rules defined within the FSM.
+ +Returns a table with the scores defined.
+ +Returns the start state of the FSM.
+ +#string:
+A string containing the start state.
+ +Get current state.
+ +Returns a table with the Subs defined.
+ +Returns a table of the transition rules defined within the FSM.
+ +Check if FSM is in state.
+ ++ #string + State +
+State name.
+ +#boolean:
+If true, FSM is in this state.
+ +Load call backs.
+ ++ #table + CallBackTable +
+Table of call backs.
+ +Creates a new FSM object.
+ ++ From +
++ Event +
++ Fsm +
+Sets the start state of the FSM.
+ ++ #string + State +
+A string defining the start state.
+ +Add to map.
+ ++ #table + Map +
+Map.
+ ++ #table + Event +
+Event table.
+ +Call handler.
+ ++ #string + step +
+Step "onafter", "onbefore", "onenter", "onleave".
+ ++ #string + trigger +
+Trigger.
+ ++ #table + params +
+Parameters.
+ ++ #string + EventName +
+Event name.
+ +Value.
+ +Create transition.
+ ++ #string + EventName +
+Event name.
+ +#function:
+Function.
+ +Delayed transition.
+ ++ #string + EventName +
+Event name.
+ +#function:
+Function.
+ +Event map.
+ ++ #table + Events +
+Events.
+ ++ #table + EventStructure +
+Event structure.
+ +Go sub.
+ ++ #string + ParentFrom +
+Parent from state.
+ ++ #string + ParentEvent +
+Parent event name.
+ +#table:
+Subs.
+ +Handler.
+ ++ #string + EventName +
+Event name.
+ ++ ... +
+Arguments.
+ +Is end state.
+ ++ #string + Current +
+Current state name.
+ +#table:
+FSM parent.
+ +#string:
+Event name.
+ +Sub maps.
+ ++ #table + subs +
+Subs.
+ ++ #table + sub +
+Sub.
+ ++ #string + name +
+Name.
+ +Check if can do an event.
+ ++ #string + e +
+Event name.
+ +#boolean:
+If true, FSM can do the event.
+ +#string:
+To state.
+ +Check if cannot do an event.
+ ++ #string + e +
+Event name.
+ +#boolean:
+If true, FSM cannot do the event.
+ +Check if FSM is in state.
+ ++ #string + State +
+State name.
+ ++ state +
+#boolean:
+If true, FSM is in this state.
+ +Clear the state of an object.
+ ++ Object +
+The object that holds the Value set by the Key.
+ ++ StateName +
+The key that is should be cleared.
+ +Creation of a Birth Event.
+ ++ DCS#Time + EventTime +
+The time stamp of the event.
+ ++ DCS#Object + Initiator +
+The initiating object of the event.
+ ++ #string + IniUnitName +
+The initiating unit name.
+ ++ place +
++ subplace +
+Creation of a Crash Event.
+ ++ DCS#Time + EventTime +
+The time stamp of the event.
+ ++ DCS#Object + Initiator +
+The initiating object of the event.
+ ++ IniObjectCategory +
+Creation of a Dead Event.
+ ++ DCS#Time + EventTime +
+The time stamp of the event.
+ ++ DCS#Object + Initiator +
+The initiating object of the event.
+ ++ IniObjectCategory +
+Creation of a S_EVENT_PLAYER_ENTER_AIRCRAFT event.
+ Wrapper.Unit#UNIT + PlayerUnit +
+The aircraft unit the player entered.
+ +Creation of a Remove Unit Event.
+ ++ DCS#Time + EventTime +
+The time stamp of the event.
+ ++ DCS#Object + Initiator +
+The initiating object of the event.
+ +Creation of a Takeoff Event.
+ ++ DCS#Time + EventTime +
+The time stamp of the event.
+ ++ DCS#Object + Initiator +
+The initiating object of the event.
+ +Creation of a Crash Event.
+ ++ DCS#Time + EventTime +
+The time stamp of the event.
+ ++ DCS#Object + Initiator +
+The initiating object of the event.
+ +Log an exception which will be traced always.
+ + +Can be anywhere within the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Returns the event dispatcher
+ +Remove all subscribed events
+ +Trace a function call.
+ + +Must be at the beginning of the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Trace a function call level 2.
+ + +Must be at the beginning of the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Trace a function call level 3.
+ + +Must be at the beginning of the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Get the ClassID of the class instance.
+ +#string:
+The ClassID of the class instance.
+ +Get the ClassName of the class instance.
+ +#string:
+The ClassName of the class instance.
+ +Get the ClassName + ClassID of the class instance.
+ + +The ClassName + ClassID is formatted as '%s#%09d'.
+ +#string:
+The ClassName + ClassID of the class instance.
+ +Get the Class Core.Event processing Priority.
+ + +The Event processing Priority is a number from 1 to 10, +reflecting the order of the classes subscribed to the Event to be processed.
+ +This is the worker method to retrieve the Parent class.
+ + +Note that the Parent class must be passed to call the parent class method.
+ +self:GetParent(self):ParentMethod()
+
+
+
+
+
+Get a Value given a Key from the Object.
+ + +Note that if the Object is destroyed, set to nil, or garbage collected, then the Values and Keys will also be gone.
+ ++ Object +
+The object that holds the Value set by the Key.
+ ++ Key +
+The key that is used to retrieve the value. Note that the key can be a #string, but it can also be any other type!
+ +The Value retrieved or nil if the Key was not found and thus the Value could not be retrieved.
+ +Subscribe to a DCS Event.
+ ++ Core.Event#EVENTS + EventID +
+Event ID.
+ ++ #function + EventFunction +
+(optional) The function to be called when the event occurs for the unit.
+ +Log an information which will be traced always.
+ + +Can be anywhere within the function logic.
+ ++ Arguments +
+A #table or any field.
+ +This is the worker method to inherit from a parent class.
+ ++ Child +
+is the Child class that inherits.
+ ++ #BASE + Parent +
+is the Parent class that the Child inherits from.
+ +Child
+ +This is the worker method to check if an object is an (sub)instance of a class.
+ + + +ZONE:New( 'some zone' ):IsInstanceOf( ZONE ) will return true
ZONE:New( 'some zone' ):IsInstanceOf( 'ZONE' ) will return true
ZONE:New( 'some zone' ):IsInstanceOf( 'zone' ) will return true
ZONE:New( 'some zone' ):IsInstanceOf( 'BASE' ) will return true
ZONE:New( 'some zone' ):IsInstanceOf( 'GROUP' ) will return false
+ ClassName +
+is the name of the class or the class itself to run the check against
+ +#boolean:
+Enquires if tracing is on (for the class).
+ +BASE constructor.
+ + + +This is an example how to use the BASE:New() constructor in a new class definition when inheriting from BASE.
+ +function EVENT:New()
+ local self = BASE:Inherit( self, BASE:New() ) -- #EVENT
+ return self
+end
+
+
+
+Occurs when an Event for an object is triggered.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that triggered the event.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +BDA.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a ground unit captures either an airbase or a farp.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that captured the base +place: The airbase that was captured, can be a FARP or Airbase. When calling place:getCoalition() the faction will already be the new owning faction.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any object is spawned into the mission.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that was spawned
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any aircraft crashes into the ground and is completely destroyed.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that has crashed
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when an object is dead.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that is dead.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Unknown precisely what creates this event, likely tied into newer damage model.
+ + +Will update this page when new information become available.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Discard chair after ejection.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a pilot ejects from an aircraft +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ + +initiator : The unit that has ejected
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any aircraft shuts down its engines.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that is stopping its engines.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any aircraft starts its engines.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that is starting its engines.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs whenever an object is hit by a weapon.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit object the fired the weapon +weapon: Weapon object that hit the target +target: The Object that was hit.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any system fails on a human controlled aircraft.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that had the failure
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs on the death of a unit.
+ + +Contains more and different information. Similar to unit_lost it will occur for aircraft before the aircraft crash event occurs. +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when an aircraft lands at an airbase, farp or ship +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ + +initiator : The unit that has landed +place: Object that the unit landed on. Can be an Airbase Object, FARP, or Ships
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs shortly after the landing animation of an ejected pilot touching the ground and standing up.
+ + +Event does not occur if the pilot lands in the water and sub combs to Davey Jones Locker. +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Landing quality mark.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a new mark was added.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +MarkID: ID of the mark.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a mark text was changed.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +MarkID: ID of the mark.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a mark was removed.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +MarkID: ID of the mark.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a mission ends +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a mission starts +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Weapon add.
+ + +Fires when entering a mission per pylon with the name of the weapon (double pylons not counted, infinite wep reload not counted. +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when the pilot of an aircraft is killed.
+ + +Can occur either if the player is alive and crashes or if a weapon kills the pilot without completely destroying the plane. +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that the pilot has died in.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a player enters a slot and takes control of an aircraft.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +NOTE: This is a workaround of a long standing DCS bug with the PLAYER_ENTER_UNIT event. +initiator : The unit that is being taken control of.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any player assumes direct control of a unit.
+ + +Note - not Mulitplayer safe. Use PlayerEnterAircraft. +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that is being taken control of.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any player relieves control of a unit to the AI.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that the player left.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when an aircraft connects with a tanker and begins taking on fuel.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that is receiving fuel.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when an aircraft is finished taking fuel.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that was receiving fuel.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any modification to the "Score" as seen on the debrief menu would occur.
+ + +There is no information on what values the score was changed to. Event is likely similar to player_comment in this regard. +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any unit stops firing its weapon.
+ + +Event will always correspond with a shooting start event. +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that was doing the shooting.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any unit begins firing a weapon that has a high rate of fire.
+ + +Most common with aircraft cannons (GAU-8), autocannons, and machine guns. +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that is doing the shooting. +target: The unit that is being targeted.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs whenever any unit in a mission fires a weapon.
+ + +But not any machine gun or autocannon based weapon, those are handled by EVENT.ShootingStart. +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when an aircraft takes off from an airbase, farp, or ship.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that tookoff +place: Object from where the AI took-off from. Can be an Airbase Object, FARP, or Ships
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Trigger zone.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when the game thinks an object is destroyed.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Schedule a new time event.
+ + +Note that the schedule will only take place if the scheduler is started. Even for a single schedule event, the scheduler needs to be started also.
+ ++ #number + Start +
+Specifies the amount of seconds that will be waited before the scheduling is started, and the event function is called.
+ ++ #function + SchedulerFunction +
+The event function to be called when a timer event occurs. The event function needs to accept the parameters specified in SchedulerArguments.
+ ++ #table + ... +
+Optional arguments that can be given as part of scheduler. The arguments need to be given as a table { param1, param 2, ... }.
+ +#string:
+The Schedule ID of the planned schedule.
+ +Schedule a new time event.
+ + +Note that the schedule will only take place if the scheduler is started. Even for a single schedule event, the scheduler needs to be started also.
+ ++ #number + Start +
+Specifies the amount of seconds that will be waited before the scheduling is started, and the event function is called.
+ ++ #number + Repeat +
+Specifies the interval in seconds when the scheduler will call the event function.
+ ++ #number + RandomizeFactor +
+Specifies a randomization factor between 0 and 1 to randomize the Repeat.
+ ++ #number + Stop +
+Specifies the amount of seconds when the scheduler will be stopped.
+ ++ #function + SchedulerFunction +
+The event function to be called when a timer event occurs. The event function needs to accept the parameters specified in SchedulerArguments.
+ ++ #table + ... +
+Optional arguments that can be given as part of scheduler. The arguments need to be given as a table { param1, param 2, ... }.
+ +#string:
+The Schedule ID of the planned schedule.
+ +Stops the Schedule.
+ ++ #string + SchedulerID +
+(Optional) Scheduler ID to be stopped. If nil, all pending schedules are stopped.
+ +Set the Class Core.Event processing Priority.
+ + +The Event processing Priority is a number from 1 to 10, +reflecting the order of the classes subscribed to the Event to be processed.
+ ++ #number + EventPriority +
+The Core.Event processing Priority.
+ +self
+ +Set a state or property of the Object given a Key and a Value.
+ + +Note that if the Object is destroyed, set to nil, or garbage collected, then the Values and Keys will also be gone.
+ ++ Object +
+The object that will hold the Value set by the Key.
+ ++ Key +
+The key that is used as a reference of the value. Note that the key can be a #string, but it can also be any other type!
+ ++ Value +
+The value to is stored in the object.
+ +The Value set.
+ +Trace a function logic level 1.
+ + +Can be anywhere within the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Trace a function logic level 2.
+ + +Can be anywhere within the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Trace a function logic level 3.
+ + +Can be anywhere within the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Trace all methods in MOOSE
+ ++ #boolean + TraceAll +
+true = trace all methods in MOOSE.
+ +Set tracing for a class
+ +Set tracing for a specific method of class
+ ++ #string + Class +
+Class name.
+ ++ #string + Method +
+Method.
+ +Set trace level
+ +Set trace off.
+ +Set trace on.
+ +Set trace on or off +Note that when trace is off, no BASE.Debug statement is performed, increasing performance! +When Moose is loaded statically, (as one file), tracing is switched off by default.
+ + +So tracing must be switched on manually in your mission if you are using Moose statically. +When moose is loading dynamically (for moose class development), tracing is switched on by default.
+ ++ #boolean + TraceOnOff +
+Switch the tracing on or off.
+ +
+ -- Switch the tracing On
+ BASE:TraceOnOff( true )
+
+ -- Switch the tracing Off
+ BASE:TraceOnOff( false )
+
+
+UnSubscribe to a DCS event.
+ ++ Core.Event#EVENTS + EventID +
+Event ID.
+ +Trace a function call.
+ + +This function is private.
+ ++ Arguments +
+A #table or any field.
+ ++ DebugInfoCurrentParam +
++ DebugInfoFromParam +
+Trace a function logic.
+ ++ Arguments +
+A #table or any field.
+ ++ DebugInfoCurrentParam +
++ DebugInfoFromParam +
+The main event handling function...
+ + +This function captures all events generated for the class.
+ +|
Creates a new AI_A2G_CAS object + |
+
+
| Fields and Methods inherited from AI_AIR_PATROL | +Description | +
|---|---|
| + | + + | +
| + |
+ Creates a new AI_AIR_PATROL object + |
+
| + |
+ OnAfter Transition Handler for Event Patrol. + |
+
| + |
+ OnAfter Transition Handler for Event PatrolRoute. + |
+
| + |
+ OnBefore Transition Handler for Event Patrol. + |
+
| + |
+ OnBefore Transition Handler for Event PatrolRoute. + |
+
| + |
+ OnEnter Transition Handler for State Patrolling. + |
+
| + |
+ OnLeave Transition Handler for State Patrolling. + |
+
| + |
+ Synchronous Event Trigger for Event Patrol. + |
+
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + |
+ Synchronous Event Trigger for Event PatrolRoute. + |
+
| + | + + | +
| + |
+ Resumes the AIPatrol + |
+
| + |
+ Set the Engage Range when the AI will engage with airborne enemies. + |
+
| + |
+ Set race track parameters. + |
+
| + |
+ Asynchronous Event Trigger for Event Patrol. + |
+
| + |
+ Asynchronous Event Trigger for Event PatrolRoute. + |
+
| + |
+ This static method is called from the route path within the last task at the last waypoint of the AIPatrol. + |
+
| + |
+ Defines a new patrol route using the AI.AI_Patrol#AI_PATROL_ZONE parameters and settings. + |
+
| + |
+ Defines a new patrol route using the AI.AI_Patrol#AI_PATROL_ZONE parameters and settings. + |
+
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| Fields and Methods inherited from AI_AIR | +Description | +
|---|---|
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + |
+ Creates a new AI_AIR process. + |
+
| + |
+ OnAfter Transition Handler for Event RTB. + |
+
| + |
+ Refuel Handler OnAfter for AI_AIR + |
+
| + |
+ Start Handler OnAfter for AI_AIR + |
+
| + |
+ OnAfter Transition Handler for Event Status. + |
+
| + |
+ OnAfter Transition Handler for Event Stop. + |
+
| + |
+ OnBefore Transition Handler for Event RTB. + |
+
| + |
+ Refuel Handler OnBefore for AI_AIR + |
+
| + |
+ Start Handler OnBefore for AI_AIR + |
+
| + |
+ OnBefore Transition Handler for Event Status. + |
+
| + |
+ OnBefore Transition Handler for Event Stop. + |
+
| + | + + | +
| + | + + | +
| + |
+ OnEnter Transition Handler for State Returning. + |
+
| + |
+ OnEnter Transition Handler for State Stopped. + |
+
| + |
+ OnLeave Transition Handler for State Returning. + |
+
| + |
+ OnLeave Transition Handler for State Stopped. + |
+
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + |
+ Synchronous Event Trigger for Event RTB. + |
+
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + |
+ Refuel Trigger for AI_AIR + |
+
| + | + + | +
AI_A2G_CAS:SetAltitude(PatrolFloorAltitude, PatrolCeilingAltitude) |
+
+ Sets the floor and ceiling altitude of the patrol. + |
+
| + |
+ When the AI is damaged beyond a certain threshold, it is required that the AI returns to the home base. + |
+
| + |
+ Sets the disengage range, that when engaging a target beyond the specified range, the engagement will be cancelled and the plane will RTB. + |
+
| + | + + | +
AI_A2G_CAS:SetFuelThreshold(FuelThresholdPercentage, OutOfFuelOrbitTime) |
+
+ When the AI is out of fuel, it is required that a new AI is started, before the old AI can return to the home base. + |
+
| + |
+ Sets the home airbase. + |
+
| + |
+ Sets (modifies) the minimum and maximum RTB speed of the patrol. + |
+
| + |
+ Set the min and max factors on RTB speed. + |
+
| + |
+ Sets (modifies) the minimum and maximum speed of the patrol. + |
+
| + |
+ Set the status checking off. + |
+
| + |
+ Sets to refuel at the given tanker. + |
+
| + | + + | +
| + |
+ Start Trigger for AI_AIR + |
+
| + |
+ Synchronous Event Trigger for Event Status. + |
+
| + |
+ Synchronous Event Trigger for Event Stop. + |
+
| + | + + | +
| + | + + | +
| + |
+ Asynchronous Event Trigger for Event RTB. + |
+
| + |
+ Refuel Asynchronous Trigger for AI_AIR + |
+
| + |
+ Start Asynchronous Trigger for AI_AIR + |
+
| + |
+ Asynchronous Event Trigger for Event Status. + |
+
| + |
+ Asynchronous Event Trigger for Event Stop. + |
+
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + |
+ Coordinates the approriate returning action. + |
+
| + |
+ Defines a new patrol route using the AI.AI_Patrol#AI_PATROL_ZONE parameters and settings. + |
+
| + | + + | +
| + | + + | +
| Fields and Methods inherited from FSM_CONTROLLABLE | +Description | +
|---|---|
| + | + + | +
| + |
+ Gets the CONTROLLABLE object that the FSM_CONTROLLABLE governs. + |
+
| + |
+ Creates a new FSM_CONTROLLABLE object. + |
+
| + |
+ OnAfter Transition Handler for Event Stop. + |
+
| + |
+ OnBefore Transition Handler for Event Stop. + |
+
| + |
+ OnEnter Transition Handler for State Stopped. + |
+
| + |
+ OnLeave Transition Handler for State Stopped. + |
+
| + |
+ Sets the CONTROLLABLE object that the FSM_CONTROLLABLE governs. + |
+
| + |
+ Synchronous Event Trigger for Event Stop. + |
+
| + |
+ Asynchronous Event Trigger for Event Stop. + |
+
| + | + + | +
| Fields and Methods inherited from FSM | +Description | +
|---|---|
| + |
+ Adds an End state. + |
+
| + |
+ Set the default #FSM_PROCESS template with key ProcessName providing the ProcessClass and the process object when it is assigned to a Wrapper.Controllable by the task. + |
+
| + |
+ Adds a score for the FSM to be achieved. + |
+
AI_A2G_CAS:AddScoreProcess(From, Event, State, ScoreText, Score) |
+
+ Adds a score for the FSM_PROCESS to be achieved. + |
+
| + |
+ Add a new transition rule to the FSM. + |
+
| + |
+ Call scheduler. + |
+
| + |
+ Name of the class. + |
+
| + | + + | +
| + |
+ Get current state. + |
+
| + |
+ Returns the End states. + |
+
| + | + + | +
| + |
+ Returns a table of the SubFSM rules defined within the FSM. + |
+
| + |
+ Returns a table with the scores defined. + |
+
| + |
+ Returns the start state of the FSM. + |
+
| + |
+ Get current state. + |
+
| + |
+ Returns a table with the Subs defined. + |
+
| + |
+ Returns a table of the transition rules defined within the FSM. + |
+
| + |
+ Check if FSM is in state. + |
+
| + |
+ Load call backs. + |
+
| + |
+ Creates a new FSM object. + |
+
| + |
+ Scores. + |
+
| + | + + | +
| + |
+ Sets the start state of the FSM. + |
+
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + |
+ Add to map. + |
+
| + |
+ Call handler. + |
+
| + |
+ Create transition. + |
+
| + |
+ Delayed transition. + |
+
| + |
+ Event map. + |
+
| + |
+ Go sub. + |
+
| + |
+ Handler. + |
+
| + |
+ Is end state. + |
+
| + |
+ Sub maps. + |
+
| + |
+ Check if can do an event. + |
+
| + |
+ Check if cannot do an event. + |
+
| + |
+ Current state name. + |
+
| + | + + | +
| + |
+ Check if FSM is in state. + |
+
| + |
+ Options. + |
+
| + |
+ Subs. + |
+
| Fields and Methods inherited from BASE | +Description | +
|---|---|
| + |
+ The ID number of the class. + |
+
| + |
+ The name of the class. + |
+
| + |
+ The name of the class concatenated with the ID number of the class. + |
+
| + |
+ Clear the state of an object. + |
+
AI_A2G_CAS:CreateEventBirth(EventTime, Initiator, IniUnitName, place, subplace) |
+
+ Creation of a Birth Event. + |
+
AI_A2G_CAS:CreateEventCrash(EventTime, Initiator, IniObjectCategory) |
+
+ Creation of a Crash Event. + |
+
AI_A2G_CAS:CreateEventDead(EventTime, Initiator, IniObjectCategory) |
+
+ Creation of a Dead Event. + |
+
| + |
+ Creation of a |
+
| + |
+ Creation of a Remove Unit Event. + |
+
| + |
+ Creation of a Takeoff Event. + |
+
| + |
+ Creation of a Crash Event. + |
+
| + |
+ Log an exception which will be traced always. + |
+
| + |
+ Returns the event dispatcher + |
+
| + |
+ Remove all subscribed events + |
+
| + |
+ Trace a function call. + |
+
| + |
+ Trace a function call level 2. + |
+
| + |
+ Trace a function call level 3. + |
+
| + |
+ Get the ClassID of the class instance. + |
+
| + |
+ Get the ClassName of the class instance. + |
+
| + |
+ Get the ClassName + ClassID of the class instance. + |
+
| + |
+ Get the Class Core.Event processing Priority. + |
+
| + |
+ This is the worker method to retrieve the Parent class. + |
+
| + |
+ Get a Value given a Key from the Object. + |
+
| + |
+ Subscribe to a DCS Event. + |
+
| + |
+ Log an information which will be traced always. + |
+
| + |
+ This is the worker method to inherit from a parent class. + |
+
| + |
+ This is the worker method to check if an object is an (sub)instance of a class. + |
+
| + |
+ Enquires if tracing is on (for the class). + |
+
| + |
+ BASE constructor. + |
+
| + |
+ Occurs when an Event for an object is triggered. + |
+
| + |
+ BDA. + |
+
| + |
+ Occurs when a ground unit captures either an airbase or a farp. + |
+
| + |
+ Occurs when any object is spawned into the mission. + |
+
| + |
+ Occurs when any aircraft crashes into the ground and is completely destroyed. + |
+
| + |
+ Occurs when an object is dead. + |
+
| + |
+ Unknown precisely what creates this event, likely tied into newer damage model. + |
+
| + |
+ Discard chair after ejection. + |
+
| + |
+ Occurs when a pilot ejects from an aircraft +Have a look at the class Core.Event#EVENT as these are just the prototypes. + |
+
| + |
+ Occurs when any aircraft shuts down its engines. + |
+
| + |
+ Occurs when any aircraft starts its engines. + |
+
| + |
+ Occurs whenever an object is hit by a weapon. + |
+
| + |
+ Occurs when any system fails on a human controlled aircraft. + |
+
| + |
+ Occurs on the death of a unit. + |
+
| + |
+ Occurs when an aircraft lands at an airbase, farp or ship +Have a look at the class Core.Event#EVENT as these are just the prototypes. + |
+
| + |
+ Occurs shortly after the landing animation of an ejected pilot touching the ground and standing up. + |
+
| + |
+ Landing quality mark. + |
+
| + |
+ Occurs when a new mark was added. + |
+
| + |
+ Occurs when a mark text was changed. + |
+
| + |
+ Occurs when a mark was removed. + |
+
| + |
+ Occurs when a mission ends +Have a look at the class Core.Event#EVENT as these are just the prototypes. + |
+
| + |
+ Occurs when a mission starts +Have a look at the class Core.Event#EVENT as these are just the prototypes. + |
+
| + |
+ Weapon add. + |
+
| + |
+ Occurs when the pilot of an aircraft is killed. + |
+
| + |
+ Occurs when a player enters a slot and takes control of an aircraft. + |
+
| + |
+ Occurs when any player assumes direct control of a unit. + |
+
| + |
+ Occurs when any player relieves control of a unit to the AI. + |
+
| + |
+ Occurs when an aircraft connects with a tanker and begins taking on fuel. + |
+
| + |
+ Occurs when an aircraft is finished taking fuel. + |
+
| + |
+ Occurs when any modification to the "Score" as seen on the debrief menu would occur. + |
+
| + |
+ Occurs when any unit stops firing its weapon. + |
+
| + |
+ Occurs when any unit begins firing a weapon that has a high rate of fire. + |
+
| + |
+ Occurs whenever any unit in a mission fires a weapon. + |
+
| + |
+ Occurs when an aircraft takes off from an airbase, farp, or ship. + |
+
| + |
+ Trigger zone. + |
+
| + |
+ Occurs when the game thinks an object is destroyed. + |
+
| + |
+ Schedule a new time event. + |
+
AI_A2G_CAS:ScheduleRepeat(Start, Repeat, RandomizeFactor, Stop, SchedulerFunction, ...) |
+
+ Schedule a new time event. + |
+
| + |
+ Stops the Schedule. + |
+
| + | + + | +
| + |
+ Set the Class Core.Event processing Priority. + |
+
| + |
+ Set a state or property of the Object given a Key and a Value. + |
+
| + |
+ Trace a function logic level 1. + |
+
| + |
+ Trace a function logic level 2. + |
+
| + |
+ Trace a function logic level 3. + |
+
| + |
+ Trace all methods in MOOSE + |
+
| + |
+ Set tracing for a class + |
+
| + |
+ Set tracing for a specific method of class + |
+
| + |
+ Set trace level + |
+
| + |
+ Set trace off. + |
+
| + |
+ Set trace on. + |
+
| + |
+ Set trace on or off +Note that when trace is off, no BASE.Debug statement is performed, increasing performance! +When Moose is loaded statically, (as one file), tracing is switched off by default. + |
+
| + |
+ UnSubscribe to a DCS event. + |
+
| + | + + | +
AI_A2G_CAS:_F(Arguments, DebugInfoCurrentParam, DebugInfoFromParam) |
+
+ Trace a function call. + |
+
AI_A2G_CAS:_T(Arguments, DebugInfoCurrentParam, DebugInfoFromParam) |
+
+ Trace a function logic. + |
+
| + | + + | +
| + |
+ The main event handling function... |
Creates a new AI_AIR_PATROL object
+ ++ AI.AI_Air#AI_AIR + AI_Air +
+The AI_AIR FSM.
+ ++ Wrapper.Group#GROUP + AIGroup +
+The AI group.
+ ++ Core.Zone#ZONE_BASE + PatrolZone +
+The Core.Zone where the patrol needs to be executed.
+ ++ DCS#Altitude + PatrolFloorAltitude +
+(optional, default = 1000m ) The lowest altitude in meters where to execute the patrol.
+ ++ DCS#Altitude + PatrolCeilingAltitude +
+(optional, default = 1500m ) The highest altitude in meters where to execute the patrol.
+ ++ DCS#Speed + PatrolMinSpeed +
+(optional, default = 50% of max speed) The minimum speed of the Wrapper.Group in km/h.
+ ++ DCS#Speed + PatrolMaxSpeed +
+(optional, default = 75% of max speed) The maximum speed of the Wrapper.Group in km/h.
+ ++ DCS#AltitudeType + PatrolAltType +
+The altitude type ("RADIO"=="AGL", "BARO"=="ASL"). Defaults to RADIO.
+ +OnAfter Transition Handler for Event Patrol.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnAfter Transition Handler for Event PatrolRoute.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnBefore Transition Handler for Event Patrol.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnBefore Transition Handler for Event PatrolRoute.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnEnter Transition Handler for State Patrolling.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnLeave Transition Handler for State Patrolling.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +Synchronous Event Trigger for Event Patrol.
+ +Synchronous Event Trigger for Event PatrolRoute.
+ +Resumes the AIPatrol
+ ++ Wrapper.Group#GROUP + AIPatrol +
++ Core.Fsm#FSM + Fsm +
+Set the Engage Range when the AI will engage with airborne enemies.
+ ++ #number + EngageRange +
+The Engage Range.
+ +self
+ +Set race track parameters.
+ + +CAP flights will perform race track patterns rather than randomly patrolling the zone.
+ ++ #number + LegMin +
+Min Length of the race track leg in meters. Default 10,000 m.
+ ++ #number + LegMax +
+Max length of the race track leg in meters. Default 15,000 m.
+ ++ #number + HeadingMin +
+Min heading of the race track in degrees. Default 0 deg, i.e. from South to North.
+ ++ #number + HeadingMax +
+Max heading of the race track in degrees. Default 180 deg, i.e. from South to North.
+ ++ #number + DurationMin +
+(Optional) Min duration before switching the orbit position. Default is keep same orbit until RTB or engage.
+ ++ #number + DurationMax +
+(Optional) Max duration before switching the orbit position. Default is keep same orbit until RTB or engage.
+ ++ #table + CapCoordinates +
+Table of coordinates of first race track point. Second point is determined by leg length and heading.
+ +self
+ +Asynchronous Event Trigger for Event Patrol.
+ ++ #number + Delay +
+The delay in seconds.
+ +Asynchronous Event Trigger for Event PatrolRoute.
+ ++ #number + Delay +
+The delay in seconds.
+ +This static method is called from the route path within the last task at the last waypoint of the AIPatrol.
+ + +Note that this method is required, as triggers the next route when patrolling for the AIPatrol.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The AI group.
+ ++ #AI_AIR_PATROL + Fsm +
+The FSM.
+ +Defines a new patrol route using the AI.AI_Patrol#AI_PATROL_ZONE parameters and settings.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +self
+ +Defines a new patrol route using the AI.AI_Patrol#AI_PATROL_ZONE parameters and settings.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The Group managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +Creates a new AI_AIR process.
+ ++ Wrapper.Group#GROUP + AIGroup +
+The group object to receive the A2G Process.
+ +OnAfter Transition Handler for Event RTB.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +Refuel Handler OnAfter for AI_AIR
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
++ #string + Event +
++ #string + To +
+Start Handler OnAfter for AI_AIR
+ ++ #string + From +
++ #string + Event +
++ #string + To +
+OnAfter Transition Handler for Event Status.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnAfter Transition Handler for Event Stop.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnBefore Transition Handler for Event RTB.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +Refuel Handler OnBefore for AI_AIR
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
++ #string + Event +
++ #string + To +
+#boolean:
+Start Handler OnBefore for AI_AIR
+ ++ #string + From +
++ #string + Event +
++ #string + To +
+#boolean:
+OnBefore Transition Handler for Event Status.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnBefore Transition Handler for Event Stop.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnEnter Transition Handler for State Returning.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnEnter Transition Handler for State Stopped.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnLeave Transition Handler for State Returning.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnLeave Transition Handler for State Stopped.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +Synchronous Event Trigger for Event RTB.
+ ++ Wrapper.Group#GROUP + AIGroup +
++ Fsm +
++ Wrapper.Group#GROUP + AIGroup +
++ Fsm +
+Refuel Trigger for AI_AIR
+ ++ Wrapper.Group#GROUP + AIGroup +
++ Fsm +
+Sets the floor and ceiling altitude of the patrol.
+ ++ DCS#Altitude + PatrolFloorAltitude +
+The lowest altitude in meters where to execute the patrol.
+ ++ DCS#Altitude + PatrolCeilingAltitude +
+The highest altitude in meters where to execute the patrol.
+ +self
+ +When the AI is damaged beyond a certain threshold, it is required that the AI returns to the home base.
+ + +However, damage cannot be foreseen early on. +Therefore, when the damage threshold is reached, +the AI will return immediately to the home base (RTB). +Note that for groups, the average damage of the complete group will be calculated. +So, in a group of 4 airplanes, 2 lost and 2 with damage 0.2, the damage threshold will be 0.25.
+ ++ #number + PatrolDamageThreshold +
+The threshold in percentage (between 0 and 1) when the AI is considered to be damaged.
+ +self
+ +Sets the disengage range, that when engaging a target beyond the specified range, the engagement will be cancelled and the plane will RTB.
+ ++ #number + DisengageRadius +
+The disengage range.
+ +self
+ +When the AI is out of fuel, it is required that a new AI is started, before the old AI can return to the home base.
+ + +Therefore, with a parameter and a calculation of the distance to the home base, the fuel threshold is calculated. +When the fuel threshold is reached, the AI will continue for a given time its patrol task in orbit, while a new AIControllable is targeted to the AI_AIR. +Once the time is finished, the old AI will return to the base.
+ ++ #number + FuelThresholdPercentage +
+The threshold in percentage (between 0 and 1) when the AIControllable is considered to get out of fuel.
+ ++ #number + OutOfFuelOrbitTime +
+The amount of seconds the out of fuel AIControllable will orbit before returning to the base.
+ +self
+ +Sets the home airbase.
+ ++ Wrapper.Airbase#AIRBASE + HomeAirbase +
+self
+ +Sets (modifies) the minimum and maximum RTB speed of the patrol.
+ ++ DCS#Speed + RTBMinSpeed +
+The minimum speed of the Wrapper.Controllable in km/h.
+ ++ DCS#Speed + RTBMaxSpeed +
+The maximum speed of the Wrapper.Controllable in km/h.
+ +self
+ +Set the min and max factors on RTB speed.
+ + +Use this, if your planes are heading back to base too fast. Default values are 0.5 and 0.6. +The RTB speed is calculated as the max speed of the unit multiplied by MinFactor (lower bracket) and multiplied by MaxFactor (upper bracket). +A random value in this bracket is then applied in the waypoint routing generation.
+ ++ #number + MinFactor +
+Lower bracket factor. Defaults to 0.5.
+ ++ #number + MaxFactor +
+Upper bracket factor. Defaults to 0.6.
+ +self
+ +Sets (modifies) the minimum and maximum speed of the patrol.
+ ++ DCS#Speed + PatrolMinSpeed +
+The minimum speed of the Wrapper.Controllable in km/h.
+ ++ DCS#Speed + PatrolMaxSpeed +
+The maximum speed of the Wrapper.Controllable in km/h.
+ +self
+ +Set the status checking off.
+ +Sets to refuel at the given tanker.
+ ++ Wrapper.Group#GROUP + TankerName +
+The group name of the tanker as defined within the Mission Editor or spawned.
+ +self
+ +Start Trigger for AI_AIR
+ +Synchronous Event Trigger for Event Status.
+ +Synchronous Event Trigger for Event Stop.
+ +Asynchronous Event Trigger for Event RTB.
+ ++ #number + Delay +
+The delay in seconds.
+ +Refuel Asynchronous Trigger for AI_AIR
+ +Start Asynchronous Trigger for AI_AIR
+ +Asynchronous Event Trigger for Event Status.
+ ++ #number + Delay +
+The delay in seconds.
+ +Asynchronous Event Trigger for Event Stop.
+ ++ #number + Delay +
+The delay in seconds.
+ ++ Wrapper.Group#GROUP + AIGroup +
++ From +
++ Event +
++ To +
++ HoldTime +
++ Wrapper.Group#GROUP + AIGroup +
++ From +
++ Event +
++ To +
++ Wrapper.Group#GROUP + AIGroup +
++ From +
++ Event +
++ To +
++ Wrapper.Group#GROUP + AIGroup +
++ From +
++ Event +
++ To +
+Coordinates the approriate returning action.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +self
+ +Defines a new patrol route using the AI.AI_Patrol#AI_PATROL_ZONE parameters and settings.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +self
+ +Gets the CONTROLLABLE object that the FSM_CONTROLLABLE governs.
+ +Creates a new FSM_CONTROLLABLE object.
+ ++ #table + FSMT +
+Finite State Machine Table
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+(optional) The CONTROLLABLE object that the FSM_CONTROLLABLE governs.
+ +OnAfter Transition Handler for Event Stop.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnBefore Transition Handler for Event Stop.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnEnter Transition Handler for State Stopped.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnLeave Transition Handler for State Stopped.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +Sets the CONTROLLABLE object that the FSM_CONTROLLABLE governs.
+ ++ Wrapper.Controllable#CONTROLLABLE + FSMControllable +
+Synchronous Event Trigger for Event Stop.
+ +Asynchronous Event Trigger for Event Stop.
+ ++ #number + Delay +
+The delay in seconds.
+ ++ step +
++ trigger +
++ params +
++ EventName +
+Adds an End state.
+ ++ #string + State +
+The FSM state.
+ +Set the default #FSM_PROCESS template with key ProcessName providing the ProcessClass and the process object when it is assigned to a Wrapper.Controllable by the task.
+ ++ #table + From +
+Can contain a string indicating the From state or a table of strings containing multiple From states.
+ ++ #string + Event +
+The Event name.
+ ++ Core.Fsm#FSM_PROCESS + Process +
+An sub-process FSM.
+ ++ #table + ReturnEvents +
+A table indicating for which returned events of the SubFSM which Event must be triggered in the FSM.
+ +The SubFSM.
+ +Adds a score for the FSM to be achieved.
+ ++ #string + State +
+is the state of the process when the score needs to be given. (See the relevant state descriptions of the process).
+ ++ #string + ScoreText +
+is a text describing the score that is given according the status.
+ ++ #number + Score +
+is a number providing the score of the status.
+ +#FSM:
+self
+ +Adds a score for the FSM_PROCESS to be achieved.
+ ++ #string + From +
+is the From State of the main process.
+ ++ #string + Event +
+is the Event of the main process.
+ ++ #string + State +
+is the state of the process when the score needs to be given. (See the relevant state descriptions of the process).
+ ++ #string + ScoreText +
+is a text describing the score that is given according the status.
+ ++ #number + Score +
+is a number providing the score of the status.
+ +#FSM:
+self
+ +Add a new transition rule to the FSM.
+ + +A transition rule defines when and if the FSM can transition from a state towards another state upon a triggered event.
+ ++ #table + From +
+Can contain a string indicating the From state or a table of strings containing multiple From states.
+ ++ #string + Event +
+The Event name.
+ ++ #string + To +
+The To state.
+ +Get current state.
+ +Returns the End states.
+ +Returns a table of the SubFSM rules defined within the FSM.
+ +Returns a table with the scores defined.
+ +Returns the start state of the FSM.
+ +#string:
+A string containing the start state.
+ +Get current state.
+ +Returns a table with the Subs defined.
+ +Returns a table of the transition rules defined within the FSM.
+ +Check if FSM is in state.
+ ++ #string + State +
+State name.
+ +#boolean:
+If true, FSM is in this state.
+ +Load call backs.
+ ++ #table + CallBackTable +
+Table of call backs.
+ +Creates a new FSM object.
+ ++ From +
++ Event +
++ Fsm +
+Sets the start state of the FSM.
+ ++ #string + State +
+A string defining the start state.
+ +Add to map.
+ ++ #table + Map +
+Map.
+ ++ #table + Event +
+Event table.
+ +Call handler.
+ ++ #string + step +
+Step "onafter", "onbefore", "onenter", "onleave".
+ ++ #string + trigger +
+Trigger.
+ ++ #table + params +
+Parameters.
+ ++ #string + EventName +
+Event name.
+ +Value.
+ +Create transition.
+ ++ #string + EventName +
+Event name.
+ +#function:
+Function.
+ +Delayed transition.
+ ++ #string + EventName +
+Event name.
+ +#function:
+Function.
+ +Event map.
+ ++ #table + Events +
+Events.
+ ++ #table + EventStructure +
+Event structure.
+ +Go sub.
+ ++ #string + ParentFrom +
+Parent from state.
+ ++ #string + ParentEvent +
+Parent event name.
+ +#table:
+Subs.
+ +Handler.
+ ++ #string + EventName +
+Event name.
+ ++ ... +
+Arguments.
+ +Is end state.
+ ++ #string + Current +
+Current state name.
+ +#table:
+FSM parent.
+ +#string:
+Event name.
+ +Sub maps.
+ ++ #table + subs +
+Subs.
+ ++ #table + sub +
+Sub.
+ ++ #string + name +
+Name.
+ +Check if can do an event.
+ ++ #string + e +
+Event name.
+ +#boolean:
+If true, FSM can do the event.
+ +#string:
+To state.
+ +Check if cannot do an event.
+ ++ #string + e +
+Event name.
+ +#boolean:
+If true, FSM cannot do the event.
+ +Check if FSM is in state.
+ ++ #string + State +
+State name.
+ ++ state +
+#boolean:
+If true, FSM is in this state.
+ +Clear the state of an object.
+ ++ Object +
+The object that holds the Value set by the Key.
+ ++ StateName +
+The key that is should be cleared.
+ +Creation of a Birth Event.
+ ++ DCS#Time + EventTime +
+The time stamp of the event.
+ ++ DCS#Object + Initiator +
+The initiating object of the event.
+ ++ #string + IniUnitName +
+The initiating unit name.
+ ++ place +
++ subplace +
+Creation of a Crash Event.
+ ++ DCS#Time + EventTime +
+The time stamp of the event.
+ ++ DCS#Object + Initiator +
+The initiating object of the event.
+ ++ IniObjectCategory +
+Creation of a Dead Event.
+ ++ DCS#Time + EventTime +
+The time stamp of the event.
+ ++ DCS#Object + Initiator +
+The initiating object of the event.
+ ++ IniObjectCategory +
+Creation of a S_EVENT_PLAYER_ENTER_AIRCRAFT event.
+ Wrapper.Unit#UNIT + PlayerUnit +
+The aircraft unit the player entered.
+ +Creation of a Remove Unit Event.
+ ++ DCS#Time + EventTime +
+The time stamp of the event.
+ ++ DCS#Object + Initiator +
+The initiating object of the event.
+ +Creation of a Takeoff Event.
+ ++ DCS#Time + EventTime +
+The time stamp of the event.
+ ++ DCS#Object + Initiator +
+The initiating object of the event.
+ +Creation of a Crash Event.
+ ++ DCS#Time + EventTime +
+The time stamp of the event.
+ ++ DCS#Object + Initiator +
+The initiating object of the event.
+ +Log an exception which will be traced always.
+ + +Can be anywhere within the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Returns the event dispatcher
+ +Remove all subscribed events
+ +Trace a function call.
+ + +Must be at the beginning of the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Trace a function call level 2.
+ + +Must be at the beginning of the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Trace a function call level 3.
+ + +Must be at the beginning of the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Get the ClassID of the class instance.
+ +#string:
+The ClassID of the class instance.
+ +Get the ClassName of the class instance.
+ +#string:
+The ClassName of the class instance.
+ +Get the ClassName + ClassID of the class instance.
+ + +The ClassName + ClassID is formatted as '%s#%09d'.
+ +#string:
+The ClassName + ClassID of the class instance.
+ +Get the Class Core.Event processing Priority.
+ + +The Event processing Priority is a number from 1 to 10, +reflecting the order of the classes subscribed to the Event to be processed.
+ +This is the worker method to retrieve the Parent class.
+ + +Note that the Parent class must be passed to call the parent class method.
+ +self:GetParent(self):ParentMethod()
+
+
+
+
+
+Get a Value given a Key from the Object.
+ + +Note that if the Object is destroyed, set to nil, or garbage collected, then the Values and Keys will also be gone.
+ ++ Object +
+The object that holds the Value set by the Key.
+ ++ Key +
+The key that is used to retrieve the value. Note that the key can be a #string, but it can also be any other type!
+ +The Value retrieved or nil if the Key was not found and thus the Value could not be retrieved.
+ +Subscribe to a DCS Event.
+ ++ Core.Event#EVENTS + EventID +
+Event ID.
+ ++ #function + EventFunction +
+(optional) The function to be called when the event occurs for the unit.
+ +Log an information which will be traced always.
+ + +Can be anywhere within the function logic.
+ ++ Arguments +
+A #table or any field.
+ +This is the worker method to inherit from a parent class.
+ ++ Child +
+is the Child class that inherits.
+ ++ #BASE + Parent +
+is the Parent class that the Child inherits from.
+ +Child
+ +This is the worker method to check if an object is an (sub)instance of a class.
+ + + +ZONE:New( 'some zone' ):IsInstanceOf( ZONE ) will return true
ZONE:New( 'some zone' ):IsInstanceOf( 'ZONE' ) will return true
ZONE:New( 'some zone' ):IsInstanceOf( 'zone' ) will return true
ZONE:New( 'some zone' ):IsInstanceOf( 'BASE' ) will return true
ZONE:New( 'some zone' ):IsInstanceOf( 'GROUP' ) will return false
+ ClassName +
+is the name of the class or the class itself to run the check against
+ +#boolean:
+Enquires if tracing is on (for the class).
+ +BASE constructor.
+ + + +This is an example how to use the BASE:New() constructor in a new class definition when inheriting from BASE.
+ +function EVENT:New()
+ local self = BASE:Inherit( self, BASE:New() ) -- #EVENT
+ return self
+end
+
+
+
+Occurs when an Event for an object is triggered.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that triggered the event.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +BDA.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a ground unit captures either an airbase or a farp.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that captured the base +place: The airbase that was captured, can be a FARP or Airbase. When calling place:getCoalition() the faction will already be the new owning faction.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any object is spawned into the mission.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that was spawned
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any aircraft crashes into the ground and is completely destroyed.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that has crashed
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when an object is dead.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that is dead.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Unknown precisely what creates this event, likely tied into newer damage model.
+ + +Will update this page when new information become available.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Discard chair after ejection.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a pilot ejects from an aircraft +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ + +initiator : The unit that has ejected
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any aircraft shuts down its engines.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that is stopping its engines.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any aircraft starts its engines.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that is starting its engines.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs whenever an object is hit by a weapon.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit object the fired the weapon +weapon: Weapon object that hit the target +target: The Object that was hit.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any system fails on a human controlled aircraft.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that had the failure
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs on the death of a unit.
+ + +Contains more and different information. Similar to unit_lost it will occur for aircraft before the aircraft crash event occurs. +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when an aircraft lands at an airbase, farp or ship +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ + +initiator : The unit that has landed +place: Object that the unit landed on. Can be an Airbase Object, FARP, or Ships
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs shortly after the landing animation of an ejected pilot touching the ground and standing up.
+ + +Event does not occur if the pilot lands in the water and sub combs to Davey Jones Locker. +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Landing quality mark.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a new mark was added.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +MarkID: ID of the mark.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a mark text was changed.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +MarkID: ID of the mark.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a mark was removed.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +MarkID: ID of the mark.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a mission ends +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a mission starts +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Weapon add.
+ + +Fires when entering a mission per pylon with the name of the weapon (double pylons not counted, infinite wep reload not counted. +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when the pilot of an aircraft is killed.
+ + +Can occur either if the player is alive and crashes or if a weapon kills the pilot without completely destroying the plane. +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that the pilot has died in.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a player enters a slot and takes control of an aircraft.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +NOTE: This is a workaround of a long standing DCS bug with the PLAYER_ENTER_UNIT event. +initiator : The unit that is being taken control of.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any player assumes direct control of a unit.
+ + +Note - not Mulitplayer safe. Use PlayerEnterAircraft. +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that is being taken control of.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any player relieves control of a unit to the AI.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that the player left.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when an aircraft connects with a tanker and begins taking on fuel.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that is receiving fuel.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when an aircraft is finished taking fuel.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that was receiving fuel.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any modification to the "Score" as seen on the debrief menu would occur.
+ + +There is no information on what values the score was changed to. Event is likely similar to player_comment in this regard. +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any unit stops firing its weapon.
+ + +Event will always correspond with a shooting start event. +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that was doing the shooting.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any unit begins firing a weapon that has a high rate of fire.
+ + +Most common with aircraft cannons (GAU-8), autocannons, and machine guns. +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that is doing the shooting. +target: The unit that is being targeted.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs whenever any unit in a mission fires a weapon.
+ + +But not any machine gun or autocannon based weapon, those are handled by EVENT.ShootingStart. +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when an aircraft takes off from an airbase, farp, or ship.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that tookoff +place: Object from where the AI took-off from. Can be an Airbase Object, FARP, or Ships
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Trigger zone.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when the game thinks an object is destroyed.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Schedule a new time event.
+ + +Note that the schedule will only take place if the scheduler is started. Even for a single schedule event, the scheduler needs to be started also.
+ ++ #number + Start +
+Specifies the amount of seconds that will be waited before the scheduling is started, and the event function is called.
+ ++ #function + SchedulerFunction +
+The event function to be called when a timer event occurs. The event function needs to accept the parameters specified in SchedulerArguments.
+ ++ #table + ... +
+Optional arguments that can be given as part of scheduler. The arguments need to be given as a table { param1, param 2, ... }.
+ +#string:
+The Schedule ID of the planned schedule.
+ +Schedule a new time event.
+ + +Note that the schedule will only take place if the scheduler is started. Even for a single schedule event, the scheduler needs to be started also.
+ ++ #number + Start +
+Specifies the amount of seconds that will be waited before the scheduling is started, and the event function is called.
+ ++ #number + Repeat +
+Specifies the interval in seconds when the scheduler will call the event function.
+ ++ #number + RandomizeFactor +
+Specifies a randomization factor between 0 and 1 to randomize the Repeat.
+ ++ #number + Stop +
+Specifies the amount of seconds when the scheduler will be stopped.
+ ++ #function + SchedulerFunction +
+The event function to be called when a timer event occurs. The event function needs to accept the parameters specified in SchedulerArguments.
+ ++ #table + ... +
+Optional arguments that can be given as part of scheduler. The arguments need to be given as a table { param1, param 2, ... }.
+ +#string:
+The Schedule ID of the planned schedule.
+ +Stops the Schedule.
+ ++ #string + SchedulerID +
+(Optional) Scheduler ID to be stopped. If nil, all pending schedules are stopped.
+ +Set the Class Core.Event processing Priority.
+ + +The Event processing Priority is a number from 1 to 10, +reflecting the order of the classes subscribed to the Event to be processed.
+ ++ #number + EventPriority +
+The Core.Event processing Priority.
+ +self
+ +Set a state or property of the Object given a Key and a Value.
+ + +Note that if the Object is destroyed, set to nil, or garbage collected, then the Values and Keys will also be gone.
+ ++ Object +
+The object that will hold the Value set by the Key.
+ ++ Key +
+The key that is used as a reference of the value. Note that the key can be a #string, but it can also be any other type!
+ ++ Value +
+The value to is stored in the object.
+ +The Value set.
+ +Trace a function logic level 1.
+ + +Can be anywhere within the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Trace a function logic level 2.
+ + +Can be anywhere within the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Trace a function logic level 3.
+ + +Can be anywhere within the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Trace all methods in MOOSE
+ ++ #boolean + TraceAll +
+true = trace all methods in MOOSE.
+ +Set tracing for a class
+ +Set tracing for a specific method of class
+ ++ #string + Class +
+Class name.
+ ++ #string + Method +
+Method.
+ +Set trace level
+ +Set trace off.
+ +Set trace on.
+ +Set trace on or off +Note that when trace is off, no BASE.Debug statement is performed, increasing performance! +When Moose is loaded statically, (as one file), tracing is switched off by default.
+ + +So tracing must be switched on manually in your mission if you are using Moose statically. +When moose is loading dynamically (for moose class development), tracing is switched on by default.
+ ++ #boolean + TraceOnOff +
+Switch the tracing on or off.
+ +
+ -- Switch the tracing On
+ BASE:TraceOnOff( true )
+
+ -- Switch the tracing Off
+ BASE:TraceOnOff( false )
+
+
+UnSubscribe to a DCS event.
+ ++ Core.Event#EVENTS + EventID +
+Event ID.
+ +Trace a function call.
+ + +This function is private.
+ ++ Arguments +
+A #table or any field.
+ ++ DebugInfoCurrentParam +
++ DebugInfoFromParam +
+Trace a function logic.
+ ++ Arguments +
+A #table or any field.
+ ++ DebugInfoCurrentParam +
++ DebugInfoFromParam +
+The main event handling function...
+ + +This function captures all events generated for the class.
+ +The Defender Default Settings over all Squadrons.
+ + + +The Defender Default Settings over all Squadrons.
+ + + +The Defender Default Settings over all Squadrons.
+ + + +The Defender Default Settings over all Squadrons.
+ + + +|
Creates a new AI_A2G_SEAD object + |
+
+
| Fields and Methods inherited from AI_AIR_PATROL | +Description | +
|---|---|
| + | + + | +
| + |
+ Creates a new AI_AIR_PATROL object + |
+
| + |
+ OnAfter Transition Handler for Event Patrol. + |
+
| + |
+ OnAfter Transition Handler for Event PatrolRoute. + |
+
| + |
+ OnBefore Transition Handler for Event Patrol. + |
+
| + |
+ OnBefore Transition Handler for Event PatrolRoute. + |
+
| + |
+ OnEnter Transition Handler for State Patrolling. + |
+
| + |
+ OnLeave Transition Handler for State Patrolling. + |
+
| + |
+ Synchronous Event Trigger for Event Patrol. + |
+
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + |
+ Synchronous Event Trigger for Event PatrolRoute. + |
+
| + | + + | +
| + |
+ Resumes the AIPatrol + |
+
| + |
+ Set the Engage Range when the AI will engage with airborne enemies. + |
+
| + |
+ Set race track parameters. + |
+
| + |
+ Asynchronous Event Trigger for Event Patrol. + |
+
| + |
+ Asynchronous Event Trigger for Event PatrolRoute. + |
+
| + |
+ This static method is called from the route path within the last task at the last waypoint of the AIPatrol. + |
+
| + |
+ Defines a new patrol route using the AI.AI_Patrol#AI_PATROL_ZONE parameters and settings. + |
+
| + |
+ Defines a new patrol route using the AI.AI_Patrol#AI_PATROL_ZONE parameters and settings. + |
+
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| Fields and Methods inherited from AI_AIR | +Description | +
|---|---|
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + |
+ Creates a new AI_AIR process. + |
+
| + |
+ OnAfter Transition Handler for Event RTB. + |
+
| + |
+ Refuel Handler OnAfter for AI_AIR + |
+
| + |
+ Start Handler OnAfter for AI_AIR + |
+
| + |
+ OnAfter Transition Handler for Event Status. + |
+
| + |
+ OnAfter Transition Handler for Event Stop. + |
+
| + |
+ OnBefore Transition Handler for Event RTB. + |
+
| + |
+ Refuel Handler OnBefore for AI_AIR + |
+
| + |
+ Start Handler OnBefore for AI_AIR + |
+
| + |
+ OnBefore Transition Handler for Event Status. + |
+
| + |
+ OnBefore Transition Handler for Event Stop. + |
+
| + | + + | +
| + | + + | +
| + |
+ OnEnter Transition Handler for State Returning. + |
+
| + |
+ OnEnter Transition Handler for State Stopped. + |
+
| + |
+ OnLeave Transition Handler for State Returning. + |
+
| + |
+ OnLeave Transition Handler for State Stopped. + |
+
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + |
+ Synchronous Event Trigger for Event RTB. + |
+
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + |
+ Refuel Trigger for AI_AIR + |
+
| + | + + | +
AI_A2G_SEAD:SetAltitude(PatrolFloorAltitude, PatrolCeilingAltitude) |
+
+ Sets the floor and ceiling altitude of the patrol. + |
+
| + |
+ When the AI is damaged beyond a certain threshold, it is required that the AI returns to the home base. + |
+
| + |
+ Sets the disengage range, that when engaging a target beyond the specified range, the engagement will be cancelled and the plane will RTB. + |
+
| + | + + | +
AI_A2G_SEAD:SetFuelThreshold(FuelThresholdPercentage, OutOfFuelOrbitTime) |
+
+ When the AI is out of fuel, it is required that a new AI is started, before the old AI can return to the home base. + |
+
| + |
+ Sets the home airbase. + |
+
| + |
+ Sets (modifies) the minimum and maximum RTB speed of the patrol. + |
+
| + |
+ Set the min and max factors on RTB speed. + |
+
| + |
+ Sets (modifies) the minimum and maximum speed of the patrol. + |
+
| + |
+ Set the status checking off. + |
+
| + |
+ Sets to refuel at the given tanker. + |
+
| + | + + | +
| + |
+ Start Trigger for AI_AIR + |
+
| + |
+ Synchronous Event Trigger for Event Status. + |
+
| + |
+ Synchronous Event Trigger for Event Stop. + |
+
| + | + + | +
| + | + + | +
| + |
+ Asynchronous Event Trigger for Event RTB. + |
+
| + |
+ Refuel Asynchronous Trigger for AI_AIR + |
+
| + |
+ Start Asynchronous Trigger for AI_AIR + |
+
| + |
+ Asynchronous Event Trigger for Event Status. + |
+
| + |
+ Asynchronous Event Trigger for Event Stop. + |
+
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + |
+ Coordinates the approriate returning action. + |
+
| + |
+ Defines a new patrol route using the AI.AI_Patrol#AI_PATROL_ZONE parameters and settings. + |
+
| + | + + | +
| + | + + | +
| Fields and Methods inherited from FSM_CONTROLLABLE | +Description | +
|---|---|
| + | + + | +
| + |
+ Gets the CONTROLLABLE object that the FSM_CONTROLLABLE governs. + |
+
| + |
+ Creates a new FSM_CONTROLLABLE object. + |
+
| + |
+ OnAfter Transition Handler for Event Stop. + |
+
| + |
+ OnBefore Transition Handler for Event Stop. + |
+
| + |
+ OnEnter Transition Handler for State Stopped. + |
+
| + |
+ OnLeave Transition Handler for State Stopped. + |
+
| + |
+ Sets the CONTROLLABLE object that the FSM_CONTROLLABLE governs. + |
+
| + |
+ Synchronous Event Trigger for Event Stop. + |
+
| + |
+ Asynchronous Event Trigger for Event Stop. + |
+
| + | + + | +
| Fields and Methods inherited from FSM | +Description | +
|---|---|
| + |
+ Adds an End state. + |
+
| + |
+ Set the default #FSM_PROCESS template with key ProcessName providing the ProcessClass and the process object when it is assigned to a Wrapper.Controllable by the task. + |
+
| + |
+ Adds a score for the FSM to be achieved. + |
+
AI_A2G_SEAD:AddScoreProcess(From, Event, State, ScoreText, Score) |
+
+ Adds a score for the FSM_PROCESS to be achieved. + |
+
| + |
+ Add a new transition rule to the FSM. + |
+
| + |
+ Call scheduler. + |
+
| + |
+ Name of the class. + |
+
| + | + + | +
| + |
+ Get current state. + |
+
| + |
+ Returns the End states. + |
+
| + | + + | +
| + |
+ Returns a table of the SubFSM rules defined within the FSM. + |
+
| + |
+ Returns a table with the scores defined. + |
+
| + |
+ Returns the start state of the FSM. + |
+
| + |
+ Get current state. + |
+
| + |
+ Returns a table with the Subs defined. + |
+
| + |
+ Returns a table of the transition rules defined within the FSM. + |
+
| + |
+ Check if FSM is in state. + |
+
| + |
+ Load call backs. + |
+
| + |
+ Creates a new FSM object. + |
+
| + |
+ Scores. + |
+
| + | + + | +
| + |
+ Sets the start state of the FSM. + |
+
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + | + + | +
| + |
+ Add to map. + |
+
| + |
+ Call handler. + |
+
| + |
+ Create transition. + |
+
| + |
+ Delayed transition. + |
+
| + |
+ Event map. + |
+
| + |
+ Go sub. + |
+
| + |
+ Handler. + |
+
| + |
+ Is end state. + |
+
| + |
+ Sub maps. + |
+
| + |
+ Check if can do an event. + |
+
| + |
+ Check if cannot do an event. + |
+
| + |
+ Current state name. + |
+
| + | + + | +
| + |
+ Check if FSM is in state. + |
+
| + |
+ Options. + |
+
| + |
+ Subs. + |
+
| Fields and Methods inherited from BASE | +Description | +
|---|---|
| + |
+ The ID number of the class. + |
+
| + |
+ The name of the class. + |
+
| + |
+ The name of the class concatenated with the ID number of the class. + |
+
| + |
+ Clear the state of an object. + |
+
AI_A2G_SEAD:CreateEventBirth(EventTime, Initiator, IniUnitName, place, subplace) |
+
+ Creation of a Birth Event. + |
+
AI_A2G_SEAD:CreateEventCrash(EventTime, Initiator, IniObjectCategory) |
+
+ Creation of a Crash Event. + |
+
AI_A2G_SEAD:CreateEventDead(EventTime, Initiator, IniObjectCategory) |
+
+ Creation of a Dead Event. + |
+
| + |
+ Creation of a |
+
| + |
+ Creation of a Remove Unit Event. + |
+
| + |
+ Creation of a Takeoff Event. + |
+
| + |
+ Creation of a Crash Event. + |
+
| + |
+ Log an exception which will be traced always. + |
+
| + |
+ Returns the event dispatcher + |
+
| + |
+ Remove all subscribed events + |
+
| + |
+ Trace a function call. + |
+
| + |
+ Trace a function call level 2. + |
+
| + |
+ Trace a function call level 3. + |
+
| + |
+ Get the ClassID of the class instance. + |
+
| + |
+ Get the ClassName of the class instance. + |
+
| + |
+ Get the ClassName + ClassID of the class instance. + |
+
| + |
+ Get the Class Core.Event processing Priority. + |
+
| + |
+ This is the worker method to retrieve the Parent class. + |
+
| + |
+ Get a Value given a Key from the Object. + |
+
| + |
+ Subscribe to a DCS Event. + |
+
| + |
+ Log an information which will be traced always. + |
+
| + |
+ This is the worker method to inherit from a parent class. + |
+
| + |
+ This is the worker method to check if an object is an (sub)instance of a class. + |
+
| + |
+ Enquires if tracing is on (for the class). + |
+
| + |
+ BASE constructor. + |
+
| + |
+ Occurs when an Event for an object is triggered. + |
+
| + |
+ BDA. + |
+
| + |
+ Occurs when a ground unit captures either an airbase or a farp. + |
+
| + |
+ Occurs when any object is spawned into the mission. + |
+
| + |
+ Occurs when any aircraft crashes into the ground and is completely destroyed. + |
+
| + |
+ Occurs when an object is dead. + |
+
| + |
+ Unknown precisely what creates this event, likely tied into newer damage model. + |
+
| + |
+ Discard chair after ejection. + |
+
| + |
+ Occurs when a pilot ejects from an aircraft +Have a look at the class Core.Event#EVENT as these are just the prototypes. + |
+
| + |
+ Occurs when any aircraft shuts down its engines. + |
+
| + |
+ Occurs when any aircraft starts its engines. + |
+
| + |
+ Occurs whenever an object is hit by a weapon. + |
+
| + |
+ Occurs when any system fails on a human controlled aircraft. + |
+
| + |
+ Occurs on the death of a unit. + |
+
| + |
+ Occurs when an aircraft lands at an airbase, farp or ship +Have a look at the class Core.Event#EVENT as these are just the prototypes. + |
+
| + |
+ Occurs shortly after the landing animation of an ejected pilot touching the ground and standing up. + |
+
| + |
+ Landing quality mark. + |
+
| + |
+ Occurs when a new mark was added. + |
+
| + |
+ Occurs when a mark text was changed. + |
+
| + |
+ Occurs when a mark was removed. + |
+
| + |
+ Occurs when a mission ends +Have a look at the class Core.Event#EVENT as these are just the prototypes. + |
+
| + |
+ Occurs when a mission starts +Have a look at the class Core.Event#EVENT as these are just the prototypes. + |
+
| + |
+ Weapon add. + |
+
| + |
+ Occurs when the pilot of an aircraft is killed. + |
+
| + |
+ Occurs when a player enters a slot and takes control of an aircraft. + |
+
| + |
+ Occurs when any player assumes direct control of a unit. + |
+
| + |
+ Occurs when any player relieves control of a unit to the AI. + |
+
| + |
+ Occurs when an aircraft connects with a tanker and begins taking on fuel. + |
+
| + |
+ Occurs when an aircraft is finished taking fuel. + |
+
| + |
+ Occurs when any modification to the "Score" as seen on the debrief menu would occur. + |
+
| + |
+ Occurs when any unit stops firing its weapon. + |
+
| + |
+ Occurs when any unit begins firing a weapon that has a high rate of fire. + |
+
| + |
+ Occurs whenever any unit in a mission fires a weapon. + |
+
| + |
+ Occurs when an aircraft takes off from an airbase, farp, or ship. + |
+
| + |
+ Trigger zone. + |
+
| + |
+ Occurs when the game thinks an object is destroyed. + |
+
| + |
+ Schedule a new time event. + |
+
AI_A2G_SEAD:ScheduleRepeat(Start, Repeat, RandomizeFactor, Stop, SchedulerFunction, ...) |
+
+ Schedule a new time event. + |
+
| + |
+ Stops the Schedule. + |
+
| + | + + | +
| + |
+ Set the Class Core.Event processing Priority. + |
+
| + |
+ Set a state or property of the Object given a Key and a Value. + |
+
| + |
+ Trace a function logic level 1. + |
+
| + |
+ Trace a function logic level 2. + |
+
| + |
+ Trace a function logic level 3. + |
+
| + |
+ Trace all methods in MOOSE + |
+
| + |
+ Set tracing for a class + |
+
| + |
+ Set tracing for a specific method of class + |
+
| + |
+ Set trace level + |
+
| + |
+ Set trace off. + |
+
| + |
+ Set trace on. + |
+
| + |
+ Set trace on or off +Note that when trace is off, no BASE.Debug statement is performed, increasing performance! +When Moose is loaded statically, (as one file), tracing is switched off by default. + |
+
| + |
+ UnSubscribe to a DCS event. + |
+
| + | + + | +
AI_A2G_SEAD:_F(Arguments, DebugInfoCurrentParam, DebugInfoFromParam) |
+
+ Trace a function call. + |
+
AI_A2G_SEAD:_T(Arguments, DebugInfoCurrentParam, DebugInfoFromParam) |
+
+ Trace a function logic. + |
+
| + | + + | +
| + |
+ The main event handling function... |
Creates a new AI_AIR_PATROL object
+ ++ AI.AI_Air#AI_AIR + AI_Air +
+The AI_AIR FSM.
+ ++ Wrapper.Group#GROUP + AIGroup +
+The AI group.
+ ++ Core.Zone#ZONE_BASE + PatrolZone +
+The Core.Zone where the patrol needs to be executed.
+ ++ DCS#Altitude + PatrolFloorAltitude +
+(optional, default = 1000m ) The lowest altitude in meters where to execute the patrol.
+ ++ DCS#Altitude + PatrolCeilingAltitude +
+(optional, default = 1500m ) The highest altitude in meters where to execute the patrol.
+ ++ DCS#Speed + PatrolMinSpeed +
+(optional, default = 50% of max speed) The minimum speed of the Wrapper.Group in km/h.
+ ++ DCS#Speed + PatrolMaxSpeed +
+(optional, default = 75% of max speed) The maximum speed of the Wrapper.Group in km/h.
+ ++ DCS#AltitudeType + PatrolAltType +
+The altitude type ("RADIO"=="AGL", "BARO"=="ASL"). Defaults to RADIO.
+ +OnAfter Transition Handler for Event Patrol.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnAfter Transition Handler for Event PatrolRoute.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnBefore Transition Handler for Event Patrol.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnBefore Transition Handler for Event PatrolRoute.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnEnter Transition Handler for State Patrolling.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnLeave Transition Handler for State Patrolling.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +Synchronous Event Trigger for Event Patrol.
+ +Synchronous Event Trigger for Event PatrolRoute.
+ +Resumes the AIPatrol
+ ++ Wrapper.Group#GROUP + AIPatrol +
++ Core.Fsm#FSM + Fsm +
+Set the Engage Range when the AI will engage with airborne enemies.
+ ++ #number + EngageRange +
+The Engage Range.
+ +self
+ +Set race track parameters.
+ + +CAP flights will perform race track patterns rather than randomly patrolling the zone.
+ ++ #number + LegMin +
+Min Length of the race track leg in meters. Default 10,000 m.
+ ++ #number + LegMax +
+Max length of the race track leg in meters. Default 15,000 m.
+ ++ #number + HeadingMin +
+Min heading of the race track in degrees. Default 0 deg, i.e. from South to North.
+ ++ #number + HeadingMax +
+Max heading of the race track in degrees. Default 180 deg, i.e. from South to North.
+ ++ #number + DurationMin +
+(Optional) Min duration before switching the orbit position. Default is keep same orbit until RTB or engage.
+ ++ #number + DurationMax +
+(Optional) Max duration before switching the orbit position. Default is keep same orbit until RTB or engage.
+ ++ #table + CapCoordinates +
+Table of coordinates of first race track point. Second point is determined by leg length and heading.
+ +self
+ +Asynchronous Event Trigger for Event Patrol.
+ ++ #number + Delay +
+The delay in seconds.
+ +Asynchronous Event Trigger for Event PatrolRoute.
+ ++ #number + Delay +
+The delay in seconds.
+ +This static method is called from the route path within the last task at the last waypoint of the AIPatrol.
+ + +Note that this method is required, as triggers the next route when patrolling for the AIPatrol.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The AI group.
+ ++ #AI_AIR_PATROL + Fsm +
+The FSM.
+ +Defines a new patrol route using the AI.AI_Patrol#AI_PATROL_ZONE parameters and settings.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The Group Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +self
+ +Defines a new patrol route using the AI.AI_Patrol#AI_PATROL_ZONE parameters and settings.
+ ++ Wrapper.Group#GROUP + AIPatrol +
+The Group managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +Creates a new AI_AIR process.
+ ++ Wrapper.Group#GROUP + AIGroup +
+The group object to receive the A2G Process.
+ +OnAfter Transition Handler for Event RTB.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +Refuel Handler OnAfter for AI_AIR
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
++ #string + Event +
++ #string + To +
+Start Handler OnAfter for AI_AIR
+ ++ #string + From +
++ #string + Event +
++ #string + To +
+OnAfter Transition Handler for Event Status.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnAfter Transition Handler for Event Stop.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnBefore Transition Handler for Event RTB.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +Refuel Handler OnBefore for AI_AIR
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
++ #string + Event +
++ #string + To +
+#boolean:
+Start Handler OnBefore for AI_AIR
+ ++ #string + From +
++ #string + Event +
++ #string + To +
+#boolean:
+OnBefore Transition Handler for Event Status.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnBefore Transition Handler for Event Stop.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnEnter Transition Handler for State Returning.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnEnter Transition Handler for State Stopped.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnLeave Transition Handler for State Returning.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnLeave Transition Handler for State Stopped.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +Synchronous Event Trigger for Event RTB.
+ ++ Wrapper.Group#GROUP + AIGroup +
++ Fsm +
++ Wrapper.Group#GROUP + AIGroup +
++ Fsm +
+Refuel Trigger for AI_AIR
+ ++ Wrapper.Group#GROUP + AIGroup +
++ Fsm +
+Sets the floor and ceiling altitude of the patrol.
+ ++ DCS#Altitude + PatrolFloorAltitude +
+The lowest altitude in meters where to execute the patrol.
+ ++ DCS#Altitude + PatrolCeilingAltitude +
+The highest altitude in meters where to execute the patrol.
+ +self
+ +When the AI is damaged beyond a certain threshold, it is required that the AI returns to the home base.
+ + +However, damage cannot be foreseen early on. +Therefore, when the damage threshold is reached, +the AI will return immediately to the home base (RTB). +Note that for groups, the average damage of the complete group will be calculated. +So, in a group of 4 airplanes, 2 lost and 2 with damage 0.2, the damage threshold will be 0.25.
+ ++ #number + PatrolDamageThreshold +
+The threshold in percentage (between 0 and 1) when the AI is considered to be damaged.
+ +self
+ +Sets the disengage range, that when engaging a target beyond the specified range, the engagement will be cancelled and the plane will RTB.
+ ++ #number + DisengageRadius +
+The disengage range.
+ +self
+ +When the AI is out of fuel, it is required that a new AI is started, before the old AI can return to the home base.
+ + +Therefore, with a parameter and a calculation of the distance to the home base, the fuel threshold is calculated. +When the fuel threshold is reached, the AI will continue for a given time its patrol task in orbit, while a new AIControllable is targeted to the AI_AIR. +Once the time is finished, the old AI will return to the base.
+ ++ #number + FuelThresholdPercentage +
+The threshold in percentage (between 0 and 1) when the AIControllable is considered to get out of fuel.
+ ++ #number + OutOfFuelOrbitTime +
+The amount of seconds the out of fuel AIControllable will orbit before returning to the base.
+ +self
+ +Sets the home airbase.
+ ++ Wrapper.Airbase#AIRBASE + HomeAirbase +
+self
+ +Sets (modifies) the minimum and maximum RTB speed of the patrol.
+ ++ DCS#Speed + RTBMinSpeed +
+The minimum speed of the Wrapper.Controllable in km/h.
+ ++ DCS#Speed + RTBMaxSpeed +
+The maximum speed of the Wrapper.Controllable in km/h.
+ +self
+ +Set the min and max factors on RTB speed.
+ + +Use this, if your planes are heading back to base too fast. Default values are 0.5 and 0.6. +The RTB speed is calculated as the max speed of the unit multiplied by MinFactor (lower bracket) and multiplied by MaxFactor (upper bracket). +A random value in this bracket is then applied in the waypoint routing generation.
+ ++ #number + MinFactor +
+Lower bracket factor. Defaults to 0.5.
+ ++ #number + MaxFactor +
+Upper bracket factor. Defaults to 0.6.
+ +self
+ +Sets (modifies) the minimum and maximum speed of the patrol.
+ ++ DCS#Speed + PatrolMinSpeed +
+The minimum speed of the Wrapper.Controllable in km/h.
+ ++ DCS#Speed + PatrolMaxSpeed +
+The maximum speed of the Wrapper.Controllable in km/h.
+ +self
+ +Set the status checking off.
+ +Sets to refuel at the given tanker.
+ ++ Wrapper.Group#GROUP + TankerName +
+The group name of the tanker as defined within the Mission Editor or spawned.
+ +self
+ +Start Trigger for AI_AIR
+ +Synchronous Event Trigger for Event Status.
+ +Synchronous Event Trigger for Event Stop.
+ +Asynchronous Event Trigger for Event RTB.
+ ++ #number + Delay +
+The delay in seconds.
+ +Refuel Asynchronous Trigger for AI_AIR
+ +Start Asynchronous Trigger for AI_AIR
+ +Asynchronous Event Trigger for Event Status.
+ ++ #number + Delay +
+The delay in seconds.
+ +Asynchronous Event Trigger for Event Stop.
+ ++ #number + Delay +
+The delay in seconds.
+ ++ Wrapper.Group#GROUP + AIGroup +
++ From +
++ Event +
++ To +
++ HoldTime +
++ Wrapper.Group#GROUP + AIGroup +
++ From +
++ Event +
++ To +
++ Wrapper.Group#GROUP + AIGroup +
++ From +
++ Event +
++ To +
++ Wrapper.Group#GROUP + AIGroup +
++ From +
++ Event +
++ To +
+Coordinates the approriate returning action.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +self
+ +Defines a new patrol route using the AI.AI_Patrol#AI_PATROL_ZONE parameters and settings.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +self
+ +Gets the CONTROLLABLE object that the FSM_CONTROLLABLE governs.
+ +Creates a new FSM_CONTROLLABLE object.
+ ++ #table + FSMT +
+Finite State Machine Table
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+(optional) The CONTROLLABLE object that the FSM_CONTROLLABLE governs.
+ +OnAfter Transition Handler for Event Stop.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnBefore Transition Handler for Event Stop.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +OnEnter Transition Handler for State Stopped.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +OnLeave Transition Handler for State Stopped.
+ ++ Wrapper.Controllable#CONTROLLABLE + Controllable +
+The Controllable Object managed by the FSM.
+ ++ #string + From +
+The From State string.
+ ++ #string + Event +
+The Event string.
+ ++ #string + To +
+The To State string.
+ +#boolean:
+Return false to cancel Transition.
+ +Sets the CONTROLLABLE object that the FSM_CONTROLLABLE governs.
+ ++ Wrapper.Controllable#CONTROLLABLE + FSMControllable +
+Synchronous Event Trigger for Event Stop.
+ +Asynchronous Event Trigger for Event Stop.
+ ++ #number + Delay +
+The delay in seconds.
+ ++ step +
++ trigger +
++ params +
++ EventName +
+Adds an End state.
+ ++ #string + State +
+The FSM state.
+ +Set the default #FSM_PROCESS template with key ProcessName providing the ProcessClass and the process object when it is assigned to a Wrapper.Controllable by the task.
+ ++ #table + From +
+Can contain a string indicating the From state or a table of strings containing multiple From states.
+ ++ #string + Event +
+The Event name.
+ ++ Core.Fsm#FSM_PROCESS + Process +
+An sub-process FSM.
+ ++ #table + ReturnEvents +
+A table indicating for which returned events of the SubFSM which Event must be triggered in the FSM.
+ +The SubFSM.
+ +Adds a score for the FSM to be achieved.
+ ++ #string + State +
+is the state of the process when the score needs to be given. (See the relevant state descriptions of the process).
+ ++ #string + ScoreText +
+is a text describing the score that is given according the status.
+ ++ #number + Score +
+is a number providing the score of the status.
+ +#FSM:
+self
+ +Adds a score for the FSM_PROCESS to be achieved.
+ ++ #string + From +
+is the From State of the main process.
+ ++ #string + Event +
+is the Event of the main process.
+ ++ #string + State +
+is the state of the process when the score needs to be given. (See the relevant state descriptions of the process).
+ ++ #string + ScoreText +
+is a text describing the score that is given according the status.
+ ++ #number + Score +
+is a number providing the score of the status.
+ +#FSM:
+self
+ +Add a new transition rule to the FSM.
+ + +A transition rule defines when and if the FSM can transition from a state towards another state upon a triggered event.
+ ++ #table + From +
+Can contain a string indicating the From state or a table of strings containing multiple From states.
+ ++ #string + Event +
+The Event name.
+ ++ #string + To +
+The To state.
+ +Get current state.
+ +Returns the End states.
+ +Returns a table of the SubFSM rules defined within the FSM.
+ +Returns a table with the scores defined.
+ +Returns the start state of the FSM.
+ +#string:
+A string containing the start state.
+ +Get current state.
+ +Returns a table with the Subs defined.
+ +Returns a table of the transition rules defined within the FSM.
+ +Check if FSM is in state.
+ ++ #string + State +
+State name.
+ +#boolean:
+If true, FSM is in this state.
+ +Load call backs.
+ ++ #table + CallBackTable +
+Table of call backs.
+ +Creates a new FSM object.
+ ++ From +
++ Event +
++ Fsm +
+Sets the start state of the FSM.
+ ++ #string + State +
+A string defining the start state.
+ +Add to map.
+ ++ #table + Map +
+Map.
+ ++ #table + Event +
+Event table.
+ +Call handler.
+ ++ #string + step +
+Step "onafter", "onbefore", "onenter", "onleave".
+ ++ #string + trigger +
+Trigger.
+ ++ #table + params +
+Parameters.
+ ++ #string + EventName +
+Event name.
+ +Value.
+ +Create transition.
+ ++ #string + EventName +
+Event name.
+ +#function:
+Function.
+ +Delayed transition.
+ ++ #string + EventName +
+Event name.
+ +#function:
+Function.
+ +Event map.
+ ++ #table + Events +
+Events.
+ ++ #table + EventStructure +
+Event structure.
+ +Go sub.
+ ++ #string + ParentFrom +
+Parent from state.
+ ++ #string + ParentEvent +
+Parent event name.
+ +#table:
+Subs.
+ +Handler.
+ ++ #string + EventName +
+Event name.
+ ++ ... +
+Arguments.
+ +Is end state.
+ ++ #string + Current +
+Current state name.
+ +#table:
+FSM parent.
+ +#string:
+Event name.
+ +Sub maps.
+ ++ #table + subs +
+Subs.
+ ++ #table + sub +
+Sub.
+ ++ #string + name +
+Name.
+ +Check if can do an event.
+ ++ #string + e +
+Event name.
+ +#boolean:
+If true, FSM can do the event.
+ +#string:
+To state.
+ +Check if cannot do an event.
+ ++ #string + e +
+Event name.
+ +#boolean:
+If true, FSM cannot do the event.
+ +Check if FSM is in state.
+ ++ #string + State +
+State name.
+ ++ state +
+#boolean:
+If true, FSM is in this state.
+ +Clear the state of an object.
+ ++ Object +
+The object that holds the Value set by the Key.
+ ++ StateName +
+The key that is should be cleared.
+ +Creation of a Birth Event.
+ ++ DCS#Time + EventTime +
+The time stamp of the event.
+ ++ DCS#Object + Initiator +
+The initiating object of the event.
+ ++ #string + IniUnitName +
+The initiating unit name.
+ ++ place +
++ subplace +
+Creation of a Crash Event.
+ ++ DCS#Time + EventTime +
+The time stamp of the event.
+ ++ DCS#Object + Initiator +
+The initiating object of the event.
+ ++ IniObjectCategory +
+Creation of a Dead Event.
+ ++ DCS#Time + EventTime +
+The time stamp of the event.
+ ++ DCS#Object + Initiator +
+The initiating object of the event.
+ ++ IniObjectCategory +
+Creation of a S_EVENT_PLAYER_ENTER_AIRCRAFT event.
+ Wrapper.Unit#UNIT + PlayerUnit +
+The aircraft unit the player entered.
+ +Creation of a Remove Unit Event.
+ ++ DCS#Time + EventTime +
+The time stamp of the event.
+ ++ DCS#Object + Initiator +
+The initiating object of the event.
+ +Creation of a Takeoff Event.
+ ++ DCS#Time + EventTime +
+The time stamp of the event.
+ ++ DCS#Object + Initiator +
+The initiating object of the event.
+ +Creation of a Crash Event.
+ ++ DCS#Time + EventTime +
+The time stamp of the event.
+ ++ DCS#Object + Initiator +
+The initiating object of the event.
+ +Log an exception which will be traced always.
+ + +Can be anywhere within the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Returns the event dispatcher
+ +Remove all subscribed events
+ +Trace a function call.
+ + +Must be at the beginning of the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Trace a function call level 2.
+ + +Must be at the beginning of the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Trace a function call level 3.
+ + +Must be at the beginning of the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Get the ClassID of the class instance.
+ +#string:
+The ClassID of the class instance.
+ +Get the ClassName of the class instance.
+ +#string:
+The ClassName of the class instance.
+ +Get the ClassName + ClassID of the class instance.
+ + +The ClassName + ClassID is formatted as '%s#%09d'.
+ +#string:
+The ClassName + ClassID of the class instance.
+ +Get the Class Core.Event processing Priority.
+ + +The Event processing Priority is a number from 1 to 10, +reflecting the order of the classes subscribed to the Event to be processed.
+ +This is the worker method to retrieve the Parent class.
+ + +Note that the Parent class must be passed to call the parent class method.
+ +self:GetParent(self):ParentMethod()
+
+
+
+
+
+Get a Value given a Key from the Object.
+ + +Note that if the Object is destroyed, set to nil, or garbage collected, then the Values and Keys will also be gone.
+ ++ Object +
+The object that holds the Value set by the Key.
+ ++ Key +
+The key that is used to retrieve the value. Note that the key can be a #string, but it can also be any other type!
+ +The Value retrieved or nil if the Key was not found and thus the Value could not be retrieved.
+ +Subscribe to a DCS Event.
+ ++ Core.Event#EVENTS + EventID +
+Event ID.
+ ++ #function + EventFunction +
+(optional) The function to be called when the event occurs for the unit.
+ +Log an information which will be traced always.
+ + +Can be anywhere within the function logic.
+ ++ Arguments +
+A #table or any field.
+ +This is the worker method to inherit from a parent class.
+ ++ Child +
+is the Child class that inherits.
+ ++ #BASE + Parent +
+is the Parent class that the Child inherits from.
+ +Child
+ +This is the worker method to check if an object is an (sub)instance of a class.
+ + + +ZONE:New( 'some zone' ):IsInstanceOf( ZONE ) will return true
ZONE:New( 'some zone' ):IsInstanceOf( 'ZONE' ) will return true
ZONE:New( 'some zone' ):IsInstanceOf( 'zone' ) will return true
ZONE:New( 'some zone' ):IsInstanceOf( 'BASE' ) will return true
ZONE:New( 'some zone' ):IsInstanceOf( 'GROUP' ) will return false
+ ClassName +
+is the name of the class or the class itself to run the check against
+ +#boolean:
+Enquires if tracing is on (for the class).
+ +BASE constructor.
+ + + +This is an example how to use the BASE:New() constructor in a new class definition when inheriting from BASE.
+ +function EVENT:New()
+ local self = BASE:Inherit( self, BASE:New() ) -- #EVENT
+ return self
+end
+
+
+
+Occurs when an Event for an object is triggered.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that triggered the event.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +BDA.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a ground unit captures either an airbase or a farp.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that captured the base +place: The airbase that was captured, can be a FARP or Airbase. When calling place:getCoalition() the faction will already be the new owning faction.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any object is spawned into the mission.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that was spawned
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any aircraft crashes into the ground and is completely destroyed.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that has crashed
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when an object is dead.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that is dead.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Unknown precisely what creates this event, likely tied into newer damage model.
+ + +Will update this page when new information become available.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Discard chair after ejection.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a pilot ejects from an aircraft +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ + +initiator : The unit that has ejected
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any aircraft shuts down its engines.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that is stopping its engines.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any aircraft starts its engines.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that is starting its engines.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs whenever an object is hit by a weapon.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit object the fired the weapon +weapon: Weapon object that hit the target +target: The Object that was hit.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any system fails on a human controlled aircraft.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that had the failure
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs on the death of a unit.
+ + +Contains more and different information. Similar to unit_lost it will occur for aircraft before the aircraft crash event occurs. +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when an aircraft lands at an airbase, farp or ship +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ + +initiator : The unit that has landed +place: Object that the unit landed on. Can be an Airbase Object, FARP, or Ships
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs shortly after the landing animation of an ejected pilot touching the ground and standing up.
+ + +Event does not occur if the pilot lands in the water and sub combs to Davey Jones Locker. +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Landing quality mark.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a new mark was added.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +MarkID: ID of the mark.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a mark text was changed.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +MarkID: ID of the mark.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a mark was removed.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +MarkID: ID of the mark.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a mission ends +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a mission starts +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Weapon add.
+ + +Fires when entering a mission per pylon with the name of the weapon (double pylons not counted, infinite wep reload not counted. +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when the pilot of an aircraft is killed.
+ + +Can occur either if the player is alive and crashes or if a weapon kills the pilot without completely destroying the plane. +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that the pilot has died in.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when a player enters a slot and takes control of an aircraft.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +NOTE: This is a workaround of a long standing DCS bug with the PLAYER_ENTER_UNIT event. +initiator : The unit that is being taken control of.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any player assumes direct control of a unit.
+ + +Note - not Mulitplayer safe. Use PlayerEnterAircraft. +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that is being taken control of.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any player relieves control of a unit to the AI.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that the player left.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when an aircraft connects with a tanker and begins taking on fuel.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that is receiving fuel.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when an aircraft is finished taking fuel.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that was receiving fuel.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any modification to the "Score" as seen on the debrief menu would occur.
+ + +There is no information on what values the score was changed to. Event is likely similar to player_comment in this regard. +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any unit stops firing its weapon.
+ + +Event will always correspond with a shooting start event. +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that was doing the shooting.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when any unit begins firing a weapon that has a high rate of fire.
+ + +Most common with aircraft cannons (GAU-8), autocannons, and machine guns. +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that is doing the shooting. +target: The unit that is being targeted.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs whenever any unit in a mission fires a weapon.
+ + +But not any machine gun or autocannon based weapon, those are handled by EVENT.ShootingStart. +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when an aircraft takes off from an airbase, farp, or ship.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes. +initiator : The unit that tookoff +place: Object from where the AI took-off from. Can be an Airbase Object, FARP, or Ships
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Trigger zone.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Occurs when the game thinks an object is destroyed.
+ + +Have a look at the class Core.Event#EVENT as these are just the prototypes.
+ ++ Core.Event#EVENTDATA + EventData +
+The EventData structure.
+ +Schedule a new time event.
+ + +Note that the schedule will only take place if the scheduler is started. Even for a single schedule event, the scheduler needs to be started also.
+ ++ #number + Start +
+Specifies the amount of seconds that will be waited before the scheduling is started, and the event function is called.
+ ++ #function + SchedulerFunction +
+The event function to be called when a timer event occurs. The event function needs to accept the parameters specified in SchedulerArguments.
+ ++ #table + ... +
+Optional arguments that can be given as part of scheduler. The arguments need to be given as a table { param1, param 2, ... }.
+ +#string:
+The Schedule ID of the planned schedule.
+ +Schedule a new time event.
+ + +Note that the schedule will only take place if the scheduler is started. Even for a single schedule event, the scheduler needs to be started also.
+ ++ #number + Start +
+Specifies the amount of seconds that will be waited before the scheduling is started, and the event function is called.
+ ++ #number + Repeat +
+Specifies the interval in seconds when the scheduler will call the event function.
+ ++ #number + RandomizeFactor +
+Specifies a randomization factor between 0 and 1 to randomize the Repeat.
+ ++ #number + Stop +
+Specifies the amount of seconds when the scheduler will be stopped.
+ ++ #function + SchedulerFunction +
+The event function to be called when a timer event occurs. The event function needs to accept the parameters specified in SchedulerArguments.
+ ++ #table + ... +
+Optional arguments that can be given as part of scheduler. The arguments need to be given as a table { param1, param 2, ... }.
+ +#string:
+The Schedule ID of the planned schedule.
+ +Stops the Schedule.
+ ++ #string + SchedulerID +
+(Optional) Scheduler ID to be stopped. If nil, all pending schedules are stopped.
+ +Set the Class Core.Event processing Priority.
+ + +The Event processing Priority is a number from 1 to 10, +reflecting the order of the classes subscribed to the Event to be processed.
+ ++ #number + EventPriority +
+The Core.Event processing Priority.
+ +self
+ +Set a state or property of the Object given a Key and a Value.
+ + +Note that if the Object is destroyed, set to nil, or garbage collected, then the Values and Keys will also be gone.
+ ++ Object +
+The object that will hold the Value set by the Key.
+ ++ Key +
+The key that is used as a reference of the value. Note that the key can be a #string, but it can also be any other type!
+ ++ Value +
+The value to is stored in the object.
+ +The Value set.
+ +Trace a function logic level 1.
+ + +Can be anywhere within the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Trace a function logic level 2.
+ + +Can be anywhere within the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Trace a function logic level 3.
+ + +Can be anywhere within the function logic.
+ ++ Arguments +
+A #table or any field.
+ +Trace all methods in MOOSE
+ ++ #boolean + TraceAll +
+true = trace all methods in MOOSE.
+ +Set tracing for a class
+ +Set tracing for a specific method of class
+ ++ #string + Class +
+Class name.
+ ++ #string + Method +
+Method.
+ +Set trace level
+ +Set trace off.
+ +Set trace on.
+ +Set trace on or off +Note that when trace is off, no BASE.Debug statement is performed, increasing performance! +When Moose is loaded statically, (as one file), tracing is switched off by default.
+ + +So tracing must be switched on manually in your mission if you are using Moose statically. +When moose is loading dynamically (for moose class development), tracing is switched on by default.
+ ++ #boolean + TraceOnOff +
+Switch the tracing on or off.
+ +
+ -- Switch the tracing On
+ BASE:TraceOnOff( true )
+
+ -- Switch the tracing Off
+ BASE:TraceOnOff( false )
+
+
+UnSubscribe to a DCS event.
+ ++ Core.Event#EVENTS + EventID +
+Event ID.
+ +Trace a function call.
+ + +This function is private.
+ ++ Arguments +
+A #table or any field.
+ ++ DebugInfoCurrentParam +
++ DebugInfoFromParam +
+Trace a function logic.
+ ++ Arguments +
+A #table or any field.
+ ++ DebugInfoCurrentParam +
++ DebugInfoFromParam +
+The main event handling function...
+ + +This function captures all events generated for the class.
+ +No loading happened, so we need to pickup something else.
+No loading happened, so we need to pickup something else.
+No loading happened, so we need to pickup something else.
+No loading happened, so we need to pickup something else.
+Set destination airbase for next :Route() command.
- @@ -2790,9 +2787,6 @@ When Moose is loaded statically, (as one file), tracing is switched off by defau - -Aircraft is on a depoly mission.
- @@ -4544,9 +4538,6 @@ When Moose is loaded statically, (as one file), tracing is switched off by defau - -Set destination airbase for next :Route() command.
- @@ -4580,9 +4571,6 @@ When Moose is loaded statically, (as one file), tracing is switched off by defau - -Aircraft is on a depoly mission.
- @@ -5176,9 +5164,6 @@ When Moose is loaded statically, (as one file), tracing is switched off by defau - -Set destination airbase for next :Route() command.
- @@ -5212,9 +5197,6 @@ When Moose is loaded statically, (as one file), tracing is switched off by defau - -Aircraft is on a depoly mission.
- @@ -6696,9 +6678,6 @@ When Moose is loaded statically, (as one file), tracing is switched off by defau - -Set destination airbase for next :Route() command.
- @@ -6732,9 +6711,6 @@ When Moose is loaded statically, (as one file), tracing is switched off by defau - -Aircraft is on a depoly mission.
- diff --git a/Documentation/AI.AI_Cargo_Helicopter.html b/Documentation/AI.AI_Cargo_Helicopter.html index dcf9819bc..1088c9eae 100644 --- a/Documentation/AI.AI_Cargo_Helicopter.html +++ b/Documentation/AI.AI_Cargo_Helicopter.html @@ -2911,22 +2911,28 @@ When Moose is loaded statically, (as one file), tracing is switched off by defaumeter
+kph
+meter
+kph
+meter
+kph
+meter
+kph
+The main event handling function...
-| Fields and Methods inherited from MENUPARAM | -Description | -
|---|---|
| - | - - | -
| - | - - | -
| - | - - | -
| - | - |
MENUPARAM type
- -| Fields and Methods inherited from MENUPARAM | -Description | -
|---|---|
| - | - - | -
| - | - - | -
| - | - - | -
| - | - |
MENUPARAM type
- -This table contains the targets detected during patrol.
-This table contains the targets detected during patrol.
- @@ -7259,9 +7253,6 @@ Note that this method is required, as triggers the next route when patrolling fo - -This table contains the targets detected during patrol.
- @@ -8894,9 +8885,6 @@ Note that this method is required, as triggers the next route when patrolling fo - -This table contains the targets detected during patrol.
- diff --git a/Documentation/Cargo.CargoCrate.html b/Documentation/Cargo.CargoCrate.html index e7b130cb3..912d4862a 100644 --- a/Documentation/Cargo.CargoCrate.html +++ b/Documentation/Cargo.CargoCrate.html @@ -1867,17 +1867,6 @@ Therefore, this class is considered to be deprecatedNow we spawn the new group based on the template created.
-Now we spawn the new group based on the template created.
-BASE:E( {PlayerUnit:GetName(), A2GSystem } )
-BASE:E( {PlayerUnit:GetName(), A2GSystem } )
-By default, no InitLimit
+Function to get the HQ object for further use
+The ME name of the HQ object
- - - -Prefix for logging
-switch alarm state RED
+self.SAMCheckRanges = {}
-The ME name of the HQ object
- - - -Prefix for logging
-switch alarm state RED
+self.SAMCheckRanges = {}
-Type of terminal to be used when spawning at an airbase.
-Type of terminal to be used when spawning at an airbase.
- - - -Type of terminal to be used when spawning at an airbase.
- - - -Create the CSV file.
-Create the CSV file.
-Radio queue of LSO.
- - - -Radio queue of marshal.
- - - -Radio queue of LSO.
- - - -Radio queue of marshal.
- - - -Radio queue of LSO.
- - - -Radio queue of marshal.
- - - -Set case to that of lead.
- @@ -40817,6 +40748,9 @@ When moose is loading dynamically (for moose class development), tracing is swit + +Set Stable Hover
+ @@ -40850,6 +40784,9 @@ When moose is loading dynamically (for moose class development), tracing is swit + +Set time stamp.
+ diff --git a/Documentation/Ops.CSAR.html b/Documentation/Ops.CSAR.html index 2932a688d..9f1e806ba 100644 --- a/Documentation/Ops.CSAR.html +++ b/Documentation/Ops.CSAR.html @@ -4400,11 +4400,14 @@ When Moose is loaded statically, (as one file), tracing is switched off by defauReplacement woundedGroups
+Replacement woundedGroups
+Replacement woundedGroups
+use as counter
- -holds #CTLD_ENGINEERING objects
-#1570
-use as counter
- -holds #CTLD_ENGINEERING objects
-#1570
-use as counter
- -holds #CTLD_ENGINEERING objects
-#1570
-Flag for direct loading.
+Flag for direct loading.
+template for a group of 10 paratroopers
+template for a group of 10 paratroopers
+Coordinate of the mark.
+Text displayed in the mark panel.
-Coordinate of the mark.
+Text displayed in the mark panel.
-Coordinate of the mark.
+Text displayed in the mark panel.
-