mirror of
https://github.com/FlightControl-Master/MOOSE.git
synced 2025-08-15 10:47:21 +00:00
1634 lines
37 KiB
HTML
1634 lines
37 KiB
HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
<html>
|
|
<head>
|
|
<link rel="stylesheet" href="stylesheet.css" type="text/css"/>
|
|
</head>
|
|
<body>
|
|
<div id="container">
|
|
<div id="product">
|
|
<div id="product_logo"></div>
|
|
<div id="product_name"><big><b></b></big></div>
|
|
<div id="product_description"></div>
|
|
</div>
|
|
<div id="main">
|
|
<div id="navigation">
|
|
<h2>Modules</h2>
|
|
<ul><li>
|
|
<a href="index.html">index</a>
|
|
</li></ul>
|
|
<ul>
|
|
<li><a href="AI_A2A.html">AI_A2A</a></li>
|
|
<li><a href="AI_A2A_Cap.html">AI_A2A_Cap</a></li>
|
|
<li><a href="AI_A2A_Dispatcher.html">AI_A2A_Dispatcher</a></li>
|
|
<li>AI_A2A_GCI</li>
|
|
<li><a href="AI_A2A_Patrol.html">AI_A2A_Patrol</a></li>
|
|
<li><a href="AI_Bai.html">AI_Bai</a></li>
|
|
<li><a href="AI_Balancer.html">AI_Balancer</a></li>
|
|
<li><a href="AI_Cap.html">AI_Cap</a></li>
|
|
<li><a href="AI_Cas.html">AI_Cas</a></li>
|
|
<li><a href="AI_Formation.html">AI_Formation</a></li>
|
|
<li><a href="AI_Patrol.html">AI_Patrol</a></li>
|
|
<li><a href="ATC_Ground.html">ATC_Ground</a></li>
|
|
<li><a href="Account.html">Account</a></li>
|
|
<li><a href="Airbase.html">Airbase</a></li>
|
|
<li><a href="Assign.html">Assign</a></li>
|
|
<li><a href="Base.html">Base</a></li>
|
|
<li><a href="Cargo.html">Cargo</a></li>
|
|
<li><a href="CleanUp.html">CleanUp</a></li>
|
|
<li><a href="Client.html">Client</a></li>
|
|
<li><a href="CommandCenter.html">CommandCenter</a></li>
|
|
<li><a href="Controllable.html">Controllable</a></li>
|
|
<li><a href="DCSAirbase.html">DCSAirbase</a></li>
|
|
<li><a href="DCSCoalitionObject.html">DCSCoalitionObject</a></li>
|
|
<li><a href="DCSCommand.html">DCSCommand</a></li>
|
|
<li><a href="DCSController.html">DCSController</a></li>
|
|
<li><a href="DCSGroup.html">DCSGroup</a></li>
|
|
<li><a href="DCSObject.html">DCSObject</a></li>
|
|
<li><a href="DCSTask.html">DCSTask</a></li>
|
|
<li><a href="DCSTypes.html">DCSTypes</a></li>
|
|
<li><a href="DCSUnit.html">DCSUnit</a></li>
|
|
<li><a href="DCSVec3.html">DCSVec3</a></li>
|
|
<li><a href="DCSWorld.html">DCSWorld</a></li>
|
|
<li><a href="DCSZone.html">DCSZone</a></li>
|
|
<li><a href="DCScountry.html">DCScountry</a></li>
|
|
<li><a href="DCStimer.html">DCStimer</a></li>
|
|
<li><a href="DCStrigger.html">DCStrigger</a></li>
|
|
<li><a href="Database.html">Database</a></li>
|
|
<li><a href="Designate.html">Designate</a></li>
|
|
<li><a href="Detection.html">Detection</a></li>
|
|
<li><a href="DetectionManager.html">DetectionManager</a></li>
|
|
<li><a href="Escort.html">Escort</a></li>
|
|
<li><a href="Event.html">Event</a></li>
|
|
<li><a href="Fsm.html">Fsm</a></li>
|
|
<li><a href="Goal.html">Goal</a></li>
|
|
<li><a href="Group.html">Group</a></li>
|
|
<li><a href="Identifiable.html">Identifiable</a></li>
|
|
<li><a href="Menu.html">Menu</a></li>
|
|
<li><a href="Message.html">Message</a></li>
|
|
<li><a href="MissileTrainer.html">MissileTrainer</a></li>
|
|
<li><a href="Mission.html">Mission</a></li>
|
|
<li><a href="Movement.html">Movement</a></li>
|
|
<li><a href="Object.html">Object</a></li>
|
|
<li><a href="Point.html">Point</a></li>
|
|
<li><a href="Positionable.html">Positionable</a></li>
|
|
<li><a href="Process_JTAC.html">Process_JTAC</a></li>
|
|
<li><a href="Process_Pickup.html">Process_Pickup</a></li>
|
|
<li><a href="Protect.html">Protect</a></li>
|
|
<li><a href="Radio.html">Radio</a></li>
|
|
<li><a href="Rat.html">Rat</a></li>
|
|
<li><a href="Route.html">Route</a></li>
|
|
<li><a href="Scenery.html">Scenery</a></li>
|
|
<li><a href="ScheduleDispatcher.html">ScheduleDispatcher</a></li>
|
|
<li><a href="Scheduler.html">Scheduler</a></li>
|
|
<li><a href="Scoring.html">Scoring</a></li>
|
|
<li><a href="Sead.html">Sead</a></li>
|
|
<li><a href="Set.html">Set</a></li>
|
|
<li><a href="Settings.html">Settings</a></li>
|
|
<li><a href="Smoke.html">Smoke</a></li>
|
|
<li><a href="Spawn.html">Spawn</a></li>
|
|
<li><a href="SpawnStatic.html">SpawnStatic</a></li>
|
|
<li><a href="Spot.html">Spot</a></li>
|
|
<li><a href="Static.html">Static</a></li>
|
|
<li><a href="StaticObject.html">StaticObject</a></li>
|
|
<li><a href="Task.html">Task</a></li>
|
|
<li><a href="TaskZoneCapture.html">TaskZoneCapture</a></li>
|
|
<li><a href="Task_A2A.html">Task_A2A</a></li>
|
|
<li><a href="Task_A2A_Dispatcher.html">Task_A2A_Dispatcher</a></li>
|
|
<li><a href="Task_A2G.html">Task_A2G</a></li>
|
|
<li><a href="Task_A2G_Dispatcher.html">Task_A2G_Dispatcher</a></li>
|
|
<li><a href="Task_Cargo.html">Task_Cargo</a></li>
|
|
<li><a href="Task_PICKUP.html">Task_PICKUP</a></li>
|
|
<li><a href="Unit.html">Unit</a></li>
|
|
<li><a href="UserFlag.html">UserFlag</a></li>
|
|
<li><a href="UserSound.html">UserSound</a></li>
|
|
<li><a href="Utils.html">Utils</a></li>
|
|
<li><a href="Velocity.html">Velocity</a></li>
|
|
<li><a href="Zone.html">Zone</a></li>
|
|
<li><a href="ZoneCaptureCoalition.html">ZoneCaptureCoalition</a></li>
|
|
<li><a href="ZoneGoal.html">ZoneGoal</a></li>
|
|
<li><a href="ZoneGoalCargo.html">ZoneGoalCargo</a></li>
|
|
<li><a href="ZoneGoalCoalition.html">ZoneGoalCoalition</a></li>
|
|
<li><a href="env.html">env</a></li>
|
|
<li><a href="land.html">land</a></li>
|
|
<li><a href="routines.html">routines</a></li>
|
|
</ul>
|
|
</div>
|
|
<div id="content">
|
|
<h1>Module <code>AI_A2A_GCI</code></h1>
|
|
|
|
<p><strong>AI</strong> -- <strong>Execute Ground Controlled Interception (GCI).</strong></p>
|
|
|
|
<p><img src="..\Presentations\AI_GCI\Dia1.JPG" alt="Banner Image"/></p>
|
|
|
|
<hr/>
|
|
|
|
<p>AI A2A_INTEREPT class makes AI Groups execute an Intercept.</p>
|
|
|
|
|
|
|
|
<p>There are the following types of GCI classes defined:</p>
|
|
|
|
<ul>
|
|
<li><a href="##(AI_A2A_GCI)">#AI<em>A2A</em>GCI</a>: Perform a GCI in a zone.</li>
|
|
</ul>
|
|
|
|
<hr/>
|
|
|
|
<h3>Author: <strong>Sven Van de Velde (FlightControl)</strong></h3>
|
|
|
|
<h3>Contributions:</h3>
|
|
|
|
<hr/>
|
|
|
|
|
|
<h2>Global(s)</h2>
|
|
<table class="function_list">
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="#AI_A2A_GCI">AI_A2A_GCI</a></td>
|
|
<td class="summary">
|
|
<h1>AI<em>A2A</em>GCI class, extends <a href="AI_A2A.html##(AI_A2A)">AI<em>A2A#AI</em>A2A</a></h1>
|
|
|
|
<p>The AI<em>A2A</em>GCI class implements the core functions to intercept intruders.</p>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
<h2><a id="#(AI_A2A_GCI)" >Type <code>AI_A2A_GCI</code></a></h2>
|
|
<table class="function_list">
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).Abort">AI_A2A_GCI:Abort()</a></td>
|
|
<td class="summary">
|
|
<p>Synchronous Event Trigger for Event Abort.</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).Accomplish">AI_A2A_GCI:Accomplish()</a></td>
|
|
<td class="summary">
|
|
<p>Synchronous Event Trigger for Event Accomplish.</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).Accomplished">AI_A2A_GCI.Accomplished</a></td>
|
|
<td class="summary">
|
|
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).AttackSetUnit">AI_A2A_GCI.AttackSetUnit</a></td>
|
|
<td class="summary">
|
|
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).Destroy">AI_A2A_GCI:Destroy()</a></td>
|
|
<td class="summary">
|
|
<p>Synchronous Event Trigger for Event Destroy.</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).Engage">AI_A2A_GCI:Engage()</a></td>
|
|
<td class="summary">
|
|
<p>Synchronous Event Trigger for Event Engage.</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).EngageMaxSpeed">AI_A2A_GCI.EngageMaxSpeed</a></td>
|
|
<td class="summary">
|
|
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).EngageMinSpeed">AI_A2A_GCI.EngageMinSpeed</a></td>
|
|
<td class="summary">
|
|
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).Engaging">AI_A2A_GCI.Engaging</a></td>
|
|
<td class="summary">
|
|
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).Fired">AI_A2A_GCI:Fired()</a></td>
|
|
<td class="summary">
|
|
<p>Synchronous Event Trigger for Event Fired.</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).InterceptRoute">AI_A2A_GCI.InterceptRoute(AIControllable, AIIntercept, Fsm)</a></td>
|
|
<td class="summary">
|
|
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).New">AI_A2A_GCI:New(AIIntercept, EngageMinSpeed, EngageMaxSpeed)</a></td>
|
|
<td class="summary">
|
|
<p>Creates a new AI<em>A2A</em>GCI object</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).OnAfterAbort">AI_A2A_GCI:OnAfterAbort(AIIntercept, From, Event, To)</a></td>
|
|
<td class="summary">
|
|
<p>OnAfter Transition Handler for Event Abort.</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).OnAfterAccomplish">AI_A2A_GCI:OnAfterAccomplish(AIIntercept, From, Event, To)</a></td>
|
|
<td class="summary">
|
|
<p>OnAfter Transition Handler for Event Accomplish.</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).OnAfterDestroy">AI_A2A_GCI:OnAfterDestroy(AIIntercept, From, Event, To)</a></td>
|
|
<td class="summary">
|
|
<p>OnAfter Transition Handler for Event Destroy.</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).OnAfterEngage">AI_A2A_GCI:OnAfterEngage(AIIntercept, From, Event, To)</a></td>
|
|
<td class="summary">
|
|
<p>OnAfter Transition Handler for Event Engage.</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).OnAfterFired">AI_A2A_GCI:OnAfterFired(AIIntercept, From, Event, To)</a></td>
|
|
<td class="summary">
|
|
<p>OnAfter Transition Handler for Event Fired.</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).OnBeforeAbort">AI_A2A_GCI:OnBeforeAbort(AIIntercept, From, Event, To)</a></td>
|
|
<td class="summary">
|
|
<p>OnBefore Transition Handler for Event Abort.</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).OnBeforeAccomplish">AI_A2A_GCI:OnBeforeAccomplish(AIIntercept, From, Event, To)</a></td>
|
|
<td class="summary">
|
|
<p>OnBefore Transition Handler for Event Accomplish.</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).OnBeforeDestroy">AI_A2A_GCI:OnBeforeDestroy(AIIntercept, From, Event, To)</a></td>
|
|
<td class="summary">
|
|
<p>OnBefore Transition Handler for Event Destroy.</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).OnBeforeEngage">AI_A2A_GCI:OnBeforeEngage(AIIntercept, From, Event, To)</a></td>
|
|
<td class="summary">
|
|
<p>OnBefore Transition Handler for Event Engage.</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).OnBeforeFired">AI_A2A_GCI:OnBeforeFired(AIIntercept, From, Event, To)</a></td>
|
|
<td class="summary">
|
|
<p>OnBefore Transition Handler for Event Fired.</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).OnEnterEngaging">AI_A2A_GCI:OnEnterEngaging(AIIntercept, From, Event, To)</a></td>
|
|
<td class="summary">
|
|
<p>OnEnter Transition Handler for State Engaging.</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).OnEventDead">AI_A2A_GCI:OnEventDead(EventData)</a></td>
|
|
<td class="summary">
|
|
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).OnLeaveEngaging">AI_A2A_GCI:OnLeaveEngaging(AIIntercept, From, Event, To)</a></td>
|
|
<td class="summary">
|
|
<p>OnLeave Transition Handler for State Engaging.</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).PatrolAltType">AI_A2A_GCI.PatrolAltType</a></td>
|
|
<td class="summary">
|
|
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).PatrolMaxSpeed">AI_A2A_GCI.PatrolMaxSpeed</a></td>
|
|
<td class="summary">
|
|
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).PatrolMinSpeed">AI_A2A_GCI.PatrolMinSpeed</a></td>
|
|
<td class="summary">
|
|
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).__Abort">AI_A2A_GCI:__Abort(Delay)</a></td>
|
|
<td class="summary">
|
|
<p>Asynchronous Event Trigger for Event Abort.</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).__Accomplish">AI_A2A_GCI:__Accomplish(Delay)</a></td>
|
|
<td class="summary">
|
|
<p>Asynchronous Event Trigger for Event Accomplish.</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).__Destroy">AI_A2A_GCI:__Destroy(Delay)</a></td>
|
|
<td class="summary">
|
|
<p>Asynchronous Event Trigger for Event Destroy.</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).__Engage">AI_A2A_GCI:__Engage(Delay)</a></td>
|
|
<td class="summary">
|
|
<p>Asynchronous Event Trigger for Event Engage.</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).__Fired">AI_A2A_GCI:__Fired(Delay)</a></td>
|
|
<td class="summary">
|
|
<p>Asynchronous Event Trigger for Event Fired.</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).onafterAbort">AI_A2A_GCI:onafterAbort(AIIntercept, From, Event, To)</a></td>
|
|
<td class="summary">
|
|
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).onafterAccomplish">AI_A2A_GCI:onafterAccomplish(AIIntercept, From, Event, To)</a></td>
|
|
<td class="summary">
|
|
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).onafterDestroy">AI_A2A_GCI:onafterDestroy(AIIntercept, From, Event, To, EventData)</a></td>
|
|
<td class="summary">
|
|
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).onafterEngage">AI_A2A_GCI:onafterEngage(AIIntercept, From, Event, To)</a></td>
|
|
<td class="summary">
|
|
<p>onafter State Transition for Event Patrol.</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).onafterStart">AI_A2A_GCI:onafterStart(AIIntercept, From, Event, To)</a></td>
|
|
<td class="summary">
|
|
<p>onafter State Transition for Event Patrol.</p>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td class="name" nowrap="nowrap"><a href="##(AI_A2A_GCI).onbeforeEngage">AI_A2A_GCI:onbeforeEngage(AIIntercept, From, Event, To)</a></td>
|
|
<td class="summary">
|
|
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<h2>Global(s)</h2>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<em><a href="##(AI_A2A_GCI)">#AI_A2A_GCI</a></em>
|
|
<a id="AI_A2A_GCI" >
|
|
<strong>AI_A2A_GCI</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
<h1>AI<em>A2A</em>GCI class, extends <a href="AI_A2A.html##(AI_A2A)">AI<em>A2A#AI</em>A2A</a></h1>
|
|
|
|
<p>The AI<em>A2A</em>GCI class implements the core functions to intercept intruders.</p>
|
|
|
|
|
|
<p>The Engage function will intercept intruders.</p>
|
|
|
|
<p><img src="..\Presentations\AI_GCI\Dia3.JPG" alt="Process"/></p>
|
|
|
|
<p>The AI<em>A2A</em>GCI is assigned a <a href="Group.html">Group</a> and this must be done before the AI<em>A2A</em>GCI process can be started using the <strong>Start</strong> event.</p>
|
|
|
|
<p><img src="..\Presentations\AI_GCI\Dia4.JPG" alt="Process"/></p>
|
|
|
|
<p>The AI will fly towards the random 3D point within the patrol zone, using a random speed within the given altitude and speed limits.
|
|
Upon arrival at the 3D point, a new random 3D point will be selected within the patrol zone using the given limits.</p>
|
|
|
|
<p><img src="..\Presentations\AI_GCI\Dia5.JPG" alt="Process"/></p>
|
|
|
|
<p>This cycle will continue.</p>
|
|
|
|
<p><img src="..\Presentations\AI_GCI\Dia6.JPG" alt="Process"/></p>
|
|
|
|
<p>During the patrol, the AI will detect enemy targets, which are reported through the <strong>Detected</strong> event.</p>
|
|
|
|
<p><img src="..\Presentations\AI_GCI\Dia9.JPG" alt="Process"/></p>
|
|
|
|
<p>When enemies are detected, the AI will automatically engage the enemy.</p>
|
|
|
|
<p><img src="..\Presentations\AI_GCI\Dia10.JPG" alt="Process"/></p>
|
|
|
|
<p>Until a fuel or damage treshold has been reached by the AI, or when the AI is commanded to RTB.
|
|
When the fuel treshold has been reached, the airplane will fly towards the nearest friendly airbase and will land.</p>
|
|
|
|
<p><img src="..\Presentations\AI_GCI\Dia13.JPG" alt="Process"/></p>
|
|
|
|
<h2>1. AI<em>A2A</em>GCI constructor</h2>
|
|
|
|
<ul>
|
|
<li><a href="##(AI_A2A_GCI).New">AI<em>A2A</em>GCI.New</a>(): Creates a new AI<em>A2A</em>GCI object.</li>
|
|
</ul>
|
|
|
|
<h2>2. AI<em>A2A</em>GCI is a FSM</h2>
|
|
|
|
<p><img src="..\Presentations\AI_GCI\Dia2.JPG" alt="Process"/></p>
|
|
|
|
<h3>2.1 AI<em>A2A</em>GCI States</h3>
|
|
|
|
<ul>
|
|
<li><strong>None</strong> ( Group ): The process is not started yet.</li>
|
|
<li><strong>Patrolling</strong> ( Group ): The AI is patrolling the Patrol Zone.</li>
|
|
<li><strong>Engaging</strong> ( Group ): The AI is engaging the bogeys.</li>
|
|
<li><strong>Returning</strong> ( Group ): The AI is returning to Base..</li>
|
|
</ul>
|
|
|
|
<h3>2.2 AI<em>A2A</em>GCI Events</h3>
|
|
|
|
<ul>
|
|
<li>**<a href="AI_Patrol.html##(AI_PATROL_ZONE).Start">AI<em>Patrol#AI</em>PATROL_ZONE.Start</a>**: Start the process.</li>
|
|
<li>**<a href="AI_Patrol.html##(AI_PATROL_ZONE).Route">AI<em>Patrol#AI</em>PATROL_ZONE.Route</a>**: Route the AI to a new random 3D point within the Patrol Zone.</li>
|
|
<li>**<a href="##(AI_A2A_GCI).Engage">AI<em>A2A</em>GCI.Engage</a>**: Let the AI engage the bogeys.</li>
|
|
<li>**<a href="##(AI_A2A_GCI).Abort">AI<em>A2A</em>GCI.Abort</a>**: Aborts the engagement and return patrolling in the patrol zone.</li>
|
|
<li>**<a href="AI_Patrol.html##(AI_PATROL_ZONE).RTB">AI<em>Patrol#AI</em>PATROL_ZONE.RTB</a>**: Route the AI to the home base.</li>
|
|
<li>**<a href="AI_Patrol.html##(AI_PATROL_ZONE).Detect">AI<em>Patrol#AI</em>PATROL_ZONE.Detect</a>**: The AI is detecting targets.</li>
|
|
<li>**<a href="AI_Patrol.html##(AI_PATROL_ZONE).Detected">AI<em>Patrol#AI</em>PATROL_ZONE.Detected</a>**: The AI has detected new targets.</li>
|
|
<li>**<a href="##(AI_A2A_GCI).Destroy">AI<em>A2A</em>GCI.Destroy</a>**: The AI has destroyed a bogey <a href="Unit.html">Unit</a>.</li>
|
|
<li>**<a href="##(AI_A2A_GCI).Destroyed">AI<em>A2A</em>GCI.Destroyed</a>**: The AI has destroyed all bogeys <a href="Unit.html">Unit</a>s assigned in the CAS task.</li>
|
|
<li><strong>Status</strong> ( Group ): The AI is checking status (fuel and damage). When the tresholds have been reached, the AI will RTB.</li>
|
|
</ul>
|
|
|
|
<h2>3. Set the Range of Engagement</h2>
|
|
|
|
<p><img src="..\Presentations\AI_GCI\Dia11.JPG" alt="Range"/></p>
|
|
|
|
<p>An optional range can be set in meters,
|
|
that will define when the AI will engage with the detected airborne enemy targets.
|
|
The range can be beyond or smaller than the range of the Patrol Zone.
|
|
The range is applied at the position of the AI.
|
|
Use the method <a href="AI_GCI.html##(AI_A2A_GCI).SetEngageRange">AI<em>GCI#AI</em>A2A_GCI.SetEngageRange</a>() to define that range.</p>
|
|
|
|
<h2>4. Set the Zone of Engagement</h2>
|
|
|
|
<p><img src="..\Presentations\AI_GCI\Dia12.JPG" alt="Zone"/></p>
|
|
|
|
<p>An optional <a href="Zone.html">Zone</a> can be set,
|
|
that will define when the AI will engage with the detected airborne enemy targets.
|
|
Use the method <a href="AI_Cap.html##(AI_A2A_GCI).SetEngageZone">AI<em>Cap#AI</em>A2A_GCI.SetEngageZone</a>() to define that Zone.</p>
|
|
|
|
<hr/>
|
|
|
|
|
|
</dd>
|
|
</dl>
|
|
<h2><a id="#(AI_A2A_GCI)" >Type <code>AI_A2A_GCI</code></a></h2>
|
|
<h3>Field(s)</h3>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<a id="#(AI_A2A_GCI).Abort" >
|
|
<strong>AI_A2A_GCI:Abort()</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
<p>Synchronous Event Trigger for Event Abort.</p>
|
|
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<a id="#(AI_A2A_GCI).Accomplish" >
|
|
<strong>AI_A2A_GCI:Accomplish()</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
<p>Synchronous Event Trigger for Event Accomplish.</p>
|
|
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<em>#boolean</em>
|
|
<a id="#(AI_A2A_GCI).Accomplished" >
|
|
<strong>AI_A2A_GCI.Accomplished</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
|
|
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<em><a href="Core.Set.html##(SET_UNIT)">Core.Set#SET_UNIT</a></em>
|
|
<a id="#(AI_A2A_GCI).AttackSetUnit" >
|
|
<strong>AI_A2A_GCI.AttackSetUnit</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
|
|
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<a id="#(AI_A2A_GCI).Destroy" >
|
|
<strong>AI_A2A_GCI:Destroy()</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
<p>Synchronous Event Trigger for Event Destroy.</p>
|
|
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<a id="#(AI_A2A_GCI).Engage" >
|
|
<strong>AI_A2A_GCI:Engage()</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
<p>Synchronous Event Trigger for Event Engage.</p>
|
|
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<em></em>
|
|
<a id="#(AI_A2A_GCI).EngageMaxSpeed" >
|
|
<strong>AI_A2A_GCI.EngageMaxSpeed</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
|
|
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<em></em>
|
|
<a id="#(AI_A2A_GCI).EngageMinSpeed" >
|
|
<strong>AI_A2A_GCI.EngageMinSpeed</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
|
|
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<em>#boolean</em>
|
|
<a id="#(AI_A2A_GCI).Engaging" >
|
|
<strong>AI_A2A_GCI.Engaging</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
|
|
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<a id="#(AI_A2A_GCI).Fired" >
|
|
<strong>AI_A2A_GCI:Fired()</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
<p>Synchronous Event Trigger for Event Fired.</p>
|
|
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<a id="#(AI_A2A_GCI).InterceptRoute" >
|
|
<strong>AI_A2A_GCI.InterceptRoute(AIControllable, AIIntercept, Fsm)</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
|
|
|
|
<h3>Parameters</h3>
|
|
<ul>
|
|
<li>
|
|
|
|
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> AIControllable </em></code>: </p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em> AIIntercept </em></code>: </p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em> Fsm </em></code>: </p>
|
|
|
|
</li>
|
|
</ul>
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<a id="#(AI_A2A_GCI).New" >
|
|
<strong>AI_A2A_GCI:New(AIIntercept, EngageMinSpeed, EngageMaxSpeed)</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
<p>Creates a new AI<em>A2A</em>GCI object</p>
|
|
|
|
<h3>Parameters</h3>
|
|
<ul>
|
|
<li>
|
|
|
|
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> AIIntercept </em></code>: </p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em> EngageMinSpeed </em></code>: </p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em> EngageMaxSpeed </em></code>: </p>
|
|
|
|
</li>
|
|
</ul>
|
|
<h3>Return value</h3>
|
|
|
|
<p><em><a href="##(AI_A2A_GCI)">#AI<em>A2A</em>GCI</a>:</em></p>
|
|
|
|
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<a id="#(AI_A2A_GCI).OnAfterAbort" >
|
|
<strong>AI_A2A_GCI:OnAfterAbort(AIIntercept, From, Event, To)</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
<p>OnAfter Transition Handler for Event Abort.</p>
|
|
|
|
<h3>Parameters</h3>
|
|
<ul>
|
|
<li>
|
|
|
|
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> AIIntercept </em></code>:
|
|
The Group Object managed by the FSM.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string From </em></code>:
|
|
The From State string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string Event </em></code>:
|
|
The Event string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string To </em></code>:
|
|
The To State string.</p>
|
|
|
|
</li>
|
|
</ul>
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<a id="#(AI_A2A_GCI).OnAfterAccomplish" >
|
|
<strong>AI_A2A_GCI:OnAfterAccomplish(AIIntercept, From, Event, To)</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
<p>OnAfter Transition Handler for Event Accomplish.</p>
|
|
|
|
<h3>Parameters</h3>
|
|
<ul>
|
|
<li>
|
|
|
|
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> AIIntercept </em></code>:
|
|
The Group Object managed by the FSM.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string From </em></code>:
|
|
The From State string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string Event </em></code>:
|
|
The Event string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string To </em></code>:
|
|
The To State string.</p>
|
|
|
|
</li>
|
|
</ul>
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<a id="#(AI_A2A_GCI).OnAfterDestroy" >
|
|
<strong>AI_A2A_GCI:OnAfterDestroy(AIIntercept, From, Event, To)</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
<p>OnAfter Transition Handler for Event Destroy.</p>
|
|
|
|
<h3>Parameters</h3>
|
|
<ul>
|
|
<li>
|
|
|
|
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> AIIntercept </em></code>:
|
|
The Group Object managed by the FSM.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string From </em></code>:
|
|
The From State string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string Event </em></code>:
|
|
The Event string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string To </em></code>:
|
|
The To State string.</p>
|
|
|
|
</li>
|
|
</ul>
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<a id="#(AI_A2A_GCI).OnAfterEngage" >
|
|
<strong>AI_A2A_GCI:OnAfterEngage(AIIntercept, From, Event, To)</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
<p>OnAfter Transition Handler for Event Engage.</p>
|
|
|
|
<h3>Parameters</h3>
|
|
<ul>
|
|
<li>
|
|
|
|
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> AIIntercept </em></code>:
|
|
The Group Object managed by the FSM.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string From </em></code>:
|
|
The From State string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string Event </em></code>:
|
|
The Event string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string To </em></code>:
|
|
The To State string.</p>
|
|
|
|
</li>
|
|
</ul>
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<a id="#(AI_A2A_GCI).OnAfterFired" >
|
|
<strong>AI_A2A_GCI:OnAfterFired(AIIntercept, From, Event, To)</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
<p>OnAfter Transition Handler for Event Fired.</p>
|
|
|
|
<h3>Parameters</h3>
|
|
<ul>
|
|
<li>
|
|
|
|
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> AIIntercept </em></code>:
|
|
The Group Object managed by the FSM.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string From </em></code>:
|
|
The From State string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string Event </em></code>:
|
|
The Event string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string To </em></code>:
|
|
The To State string.</p>
|
|
|
|
</li>
|
|
</ul>
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<a id="#(AI_A2A_GCI).OnBeforeAbort" >
|
|
<strong>AI_A2A_GCI:OnBeforeAbort(AIIntercept, From, Event, To)</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
<p>OnBefore Transition Handler for Event Abort.</p>
|
|
|
|
<h3>Parameters</h3>
|
|
<ul>
|
|
<li>
|
|
|
|
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> AIIntercept </em></code>:
|
|
The Group Object managed by the FSM.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string From </em></code>:
|
|
The From State string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string Event </em></code>:
|
|
The Event string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string To </em></code>:
|
|
The To State string.</p>
|
|
|
|
</li>
|
|
</ul>
|
|
<h3>Return value</h3>
|
|
|
|
<p><em>#boolean:</em>
|
|
Return false to cancel Transition.</p>
|
|
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<a id="#(AI_A2A_GCI).OnBeforeAccomplish" >
|
|
<strong>AI_A2A_GCI:OnBeforeAccomplish(AIIntercept, From, Event, To)</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
<p>OnBefore Transition Handler for Event Accomplish.</p>
|
|
|
|
<h3>Parameters</h3>
|
|
<ul>
|
|
<li>
|
|
|
|
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> AIIntercept </em></code>:
|
|
The Group Object managed by the FSM.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string From </em></code>:
|
|
The From State string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string Event </em></code>:
|
|
The Event string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string To </em></code>:
|
|
The To State string.</p>
|
|
|
|
</li>
|
|
</ul>
|
|
<h3>Return value</h3>
|
|
|
|
<p><em>#boolean:</em>
|
|
Return false to cancel Transition.</p>
|
|
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<a id="#(AI_A2A_GCI).OnBeforeDestroy" >
|
|
<strong>AI_A2A_GCI:OnBeforeDestroy(AIIntercept, From, Event, To)</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
<p>OnBefore Transition Handler for Event Destroy.</p>
|
|
|
|
<h3>Parameters</h3>
|
|
<ul>
|
|
<li>
|
|
|
|
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> AIIntercept </em></code>:
|
|
The Group Object managed by the FSM.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string From </em></code>:
|
|
The From State string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string Event </em></code>:
|
|
The Event string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string To </em></code>:
|
|
The To State string.</p>
|
|
|
|
</li>
|
|
</ul>
|
|
<h3>Return value</h3>
|
|
|
|
<p><em>#boolean:</em>
|
|
Return false to cancel Transition.</p>
|
|
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<a id="#(AI_A2A_GCI).OnBeforeEngage" >
|
|
<strong>AI_A2A_GCI:OnBeforeEngage(AIIntercept, From, Event, To)</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
<p>OnBefore Transition Handler for Event Engage.</p>
|
|
|
|
<h3>Parameters</h3>
|
|
<ul>
|
|
<li>
|
|
|
|
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> AIIntercept </em></code>:
|
|
The Group Object managed by the FSM.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string From </em></code>:
|
|
The From State string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string Event </em></code>:
|
|
The Event string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string To </em></code>:
|
|
The To State string.</p>
|
|
|
|
</li>
|
|
</ul>
|
|
<h3>Return value</h3>
|
|
|
|
<p><em>#boolean:</em>
|
|
Return false to cancel Transition.</p>
|
|
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<a id="#(AI_A2A_GCI).OnBeforeFired" >
|
|
<strong>AI_A2A_GCI:OnBeforeFired(AIIntercept, From, Event, To)</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
<p>OnBefore Transition Handler for Event Fired.</p>
|
|
|
|
<h3>Parameters</h3>
|
|
<ul>
|
|
<li>
|
|
|
|
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> AIIntercept </em></code>:
|
|
The Group Object managed by the FSM.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string From </em></code>:
|
|
The From State string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string Event </em></code>:
|
|
The Event string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string To </em></code>:
|
|
The To State string.</p>
|
|
|
|
</li>
|
|
</ul>
|
|
<h3>Return value</h3>
|
|
|
|
<p><em>#boolean:</em>
|
|
Return false to cancel Transition.</p>
|
|
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<a id="#(AI_A2A_GCI).OnEnterEngaging" >
|
|
<strong>AI_A2A_GCI:OnEnterEngaging(AIIntercept, From, Event, To)</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
<p>OnEnter Transition Handler for State Engaging.</p>
|
|
|
|
<h3>Parameters</h3>
|
|
<ul>
|
|
<li>
|
|
|
|
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> AIIntercept </em></code>:
|
|
The Group Object managed by the FSM.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string From </em></code>:
|
|
The From State string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string Event </em></code>:
|
|
The Event string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string To </em></code>:
|
|
The To State string.</p>
|
|
|
|
</li>
|
|
</ul>
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<a id="#(AI_A2A_GCI).OnEventDead" >
|
|
<strong>AI_A2A_GCI:OnEventDead(EventData)</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
|
|
|
|
<h3>Parameter</h3>
|
|
<ul>
|
|
<li>
|
|
|
|
<p><code><em><a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a> EventData </em></code>: </p>
|
|
|
|
</li>
|
|
</ul>
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<a id="#(AI_A2A_GCI).OnLeaveEngaging" >
|
|
<strong>AI_A2A_GCI:OnLeaveEngaging(AIIntercept, From, Event, To)</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
<p>OnLeave Transition Handler for State Engaging.</p>
|
|
|
|
<h3>Parameters</h3>
|
|
<ul>
|
|
<li>
|
|
|
|
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> AIIntercept </em></code>:
|
|
The Group Object managed by the FSM.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string From </em></code>:
|
|
The From State string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string Event </em></code>:
|
|
The Event string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string To </em></code>:
|
|
The To State string.</p>
|
|
|
|
</li>
|
|
</ul>
|
|
<h3>Return value</h3>
|
|
|
|
<p><em>#boolean:</em>
|
|
Return false to cancel Transition.</p>
|
|
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<em>#string</em>
|
|
<a id="#(AI_A2A_GCI).PatrolAltType" >
|
|
<strong>AI_A2A_GCI.PatrolAltType</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
|
|
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<em></em>
|
|
<a id="#(AI_A2A_GCI).PatrolMaxSpeed" >
|
|
<strong>AI_A2A_GCI.PatrolMaxSpeed</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
|
|
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<em></em>
|
|
<a id="#(AI_A2A_GCI).PatrolMinSpeed" >
|
|
<strong>AI_A2A_GCI.PatrolMinSpeed</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
|
|
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<a id="#(AI_A2A_GCI).__Abort" >
|
|
<strong>AI_A2A_GCI:__Abort(Delay)</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
<p>Asynchronous Event Trigger for Event Abort.</p>
|
|
|
|
<h3>Parameter</h3>
|
|
<ul>
|
|
<li>
|
|
|
|
<p><code><em>#number Delay </em></code>:
|
|
The delay in seconds.</p>
|
|
|
|
</li>
|
|
</ul>
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<a id="#(AI_A2A_GCI).__Accomplish" >
|
|
<strong>AI_A2A_GCI:__Accomplish(Delay)</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
<p>Asynchronous Event Trigger for Event Accomplish.</p>
|
|
|
|
<h3>Parameter</h3>
|
|
<ul>
|
|
<li>
|
|
|
|
<p><code><em>#number Delay </em></code>:
|
|
The delay in seconds. </p>
|
|
|
|
</li>
|
|
</ul>
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<a id="#(AI_A2A_GCI).__Destroy" >
|
|
<strong>AI_A2A_GCI:__Destroy(Delay)</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
<p>Asynchronous Event Trigger for Event Destroy.</p>
|
|
|
|
<h3>Parameter</h3>
|
|
<ul>
|
|
<li>
|
|
|
|
<p><code><em>#number Delay </em></code>:
|
|
The delay in seconds.</p>
|
|
|
|
</li>
|
|
</ul>
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<a id="#(AI_A2A_GCI).__Engage" >
|
|
<strong>AI_A2A_GCI:__Engage(Delay)</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
<p>Asynchronous Event Trigger for Event Engage.</p>
|
|
|
|
<h3>Parameter</h3>
|
|
<ul>
|
|
<li>
|
|
|
|
<p><code><em>#number Delay </em></code>:
|
|
The delay in seconds.</p>
|
|
|
|
</li>
|
|
</ul>
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<a id="#(AI_A2A_GCI).__Fired" >
|
|
<strong>AI_A2A_GCI:__Fired(Delay)</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
<p>Asynchronous Event Trigger for Event Fired.</p>
|
|
|
|
<h3>Parameter</h3>
|
|
<ul>
|
|
<li>
|
|
|
|
<p><code><em>#number Delay </em></code>:
|
|
The delay in seconds.</p>
|
|
|
|
</li>
|
|
</ul>
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<a id="#(AI_A2A_GCI).onafterAbort" >
|
|
<strong>AI_A2A_GCI:onafterAbort(AIIntercept, From, Event, To)</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
|
|
|
|
<h3>Parameters</h3>
|
|
<ul>
|
|
<li>
|
|
|
|
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> AIIntercept </em></code>:
|
|
The AI Group managed by the FSM.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string From </em></code>:
|
|
The From State string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string Event </em></code>:
|
|
The Event string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string To </em></code>:
|
|
The To State string.</p>
|
|
|
|
</li>
|
|
</ul>
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<a id="#(AI_A2A_GCI).onafterAccomplish" >
|
|
<strong>AI_A2A_GCI:onafterAccomplish(AIIntercept, From, Event, To)</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
|
|
|
|
<h3>Parameters</h3>
|
|
<ul>
|
|
<li>
|
|
|
|
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> AIIntercept </em></code>:
|
|
The Group Object managed by the FSM.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string From </em></code>:
|
|
The From State string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string Event </em></code>:
|
|
The Event string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string To </em></code>:
|
|
The To State string.</p>
|
|
|
|
</li>
|
|
</ul>
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<a id="#(AI_A2A_GCI).onafterDestroy" >
|
|
<strong>AI_A2A_GCI:onafterDestroy(AIIntercept, From, Event, To, EventData)</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
|
|
|
|
<h3>Parameters</h3>
|
|
<ul>
|
|
<li>
|
|
|
|
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> AIIntercept </em></code>:
|
|
The Group Object managed by the FSM.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string From </em></code>:
|
|
The From State string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string Event </em></code>:
|
|
The Event string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string To </em></code>:
|
|
The To State string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em><a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a> EventData </em></code>: </p>
|
|
|
|
</li>
|
|
</ul>
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<a id="#(AI_A2A_GCI).onafterEngage" >
|
|
<strong>AI_A2A_GCI:onafterEngage(AIIntercept, From, Event, To)</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
<p>onafter State Transition for Event Patrol.</p>
|
|
|
|
<h3>Parameters</h3>
|
|
<ul>
|
|
<li>
|
|
|
|
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> AIIntercept </em></code>:
|
|
The AI Group managed by the FSM.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string From </em></code>:
|
|
The From State string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string Event </em></code>:
|
|
The Event string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string To </em></code>:
|
|
The To State string.</p>
|
|
|
|
</li>
|
|
</ul>
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<a id="#(AI_A2A_GCI).onafterStart" >
|
|
<strong>AI_A2A_GCI:onafterStart(AIIntercept, From, Event, To)</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
<p>onafter State Transition for Event Patrol.</p>
|
|
|
|
<h3>Parameters</h3>
|
|
<ul>
|
|
<li>
|
|
|
|
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> AIIntercept </em></code>:
|
|
The AI Group managed by the FSM.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string From </em></code>:
|
|
The From State string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string Event </em></code>:
|
|
The Event string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string To </em></code>:
|
|
The To State string.</p>
|
|
|
|
</li>
|
|
</ul>
|
|
</dd>
|
|
</dl>
|
|
<dl class="function">
|
|
<dt>
|
|
|
|
<a id="#(AI_A2A_GCI).onbeforeEngage" >
|
|
<strong>AI_A2A_GCI:onbeforeEngage(AIIntercept, From, Event, To)</strong>
|
|
</a>
|
|
</dt>
|
|
<dd>
|
|
|
|
|
|
|
|
<h3>Parameters</h3>
|
|
<ul>
|
|
<li>
|
|
|
|
<p><code><em><a href="Wrapper.Group.html##(GROUP)">Wrapper.Group#GROUP</a> AIIntercept </em></code>:
|
|
The Group Object managed by the FSM.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string From </em></code>:
|
|
The From State string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string Event </em></code>:
|
|
The Event string.</p>
|
|
|
|
</li>
|
|
<li>
|
|
|
|
<p><code><em>#string To </em></code>:
|
|
The To State string.</p>
|
|
|
|
</li>
|
|
</ul>
|
|
</dd>
|
|
</dl>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
</body>
|
|
</html>
|