mirror of
https://github.com/FlightControl-Master/MOOSE.git
synced 2025-10-29 16:58:06 +00:00
FSM Documentation
This commit is contained in:
@@ -28,19 +28,6 @@
|
||||
<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="DCSWorld.html">DCSWorld</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="Detection.html">Detection</a></li>
|
||||
<li><a href="Escort.html">Escort</a></li>
|
||||
@@ -68,7 +55,6 @@
|
||||
<li><a href="Smoke.html">Smoke</a></li>
|
||||
<li><a href="Spawn.html">Spawn</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="Task_A2G.html">Task_A2G</a></li>
|
||||
<li><a href="Task_PICKUP.html">Task_PICKUP</a></li>
|
||||
@@ -76,8 +62,6 @@
|
||||
<li><a href="Unit.html">Unit</a></li>
|
||||
<li><a href="Utils.html">Utils</a></li>
|
||||
<li><a href="Zone.html">Zone</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>
|
||||
@@ -105,7 +89,7 @@ It is a fantastic development, this module.</p>
|
||||
<li>An <strong>Event</strong> describes an action, that can be triggered both internally as externally in the FSM. An Event can be triggered Embedded or Delayed over time.</li>
|
||||
</ul>
|
||||
|
||||
<p> <img src="../Presentations/MOOSE - FSM - 1. Concepts/Dia3.jpg" alt="Test Image"/></p>
|
||||
<p><img src=".\Presentations\DOC.MOOSE - FSM - 1. Concepts\Dia1.jpg" alt="Test Image"/></p>
|
||||
|
||||
<p>An FSM transitions in <strong>4 moments</strong> when an Event is being handled. <br/>
|
||||
Each moment can be catched by handling methods defined by the mission designer, <br/>
|
||||
@@ -113,23 +97,23 @@ that will be called by the FSM while executing the transition. <br/>
|
||||
These methods define the flow of the FSM process; because in those methods the FSM Internal Events will be fired.</p>
|
||||
|
||||
<ul>
|
||||
<li>To catch State moments, create methods starting with OnLeave or OnEnter concatenated with the State name.</li>
|
||||
<li>To catch Event moments, create methods starting with OnBefore or OnAfter concatenated with the Event name.</li>
|
||||
<li>To handle <strong>State</strong> moments, create methods starting with OnLeave or OnEnter concatenated with the State name.</li>
|
||||
<li>To handle <strong>Event</strong> moments, create methods starting with OnBefore or OnAfter concatenated with the Event name.</li>
|
||||
</ul>
|
||||
|
||||
<p><em>* The OnLeave and OnBefore transition methods may return false to cancel the transition.</em>*</p>
|
||||
|
||||
<p> <img src="../Presentations/MOOSE - FSM - 1. Concepts/Dia4.jpg" alt="Test Image"/></p>
|
||||
<p> <img src=".\Presentations\DOC.MOOSE - FSM - 1. Concepts\Dia3.jpg" alt="Test Image"/></p>
|
||||
|
||||
<p>The FSM creates for each Event <strong>two Event trigger methods</strong>. <br/>
|
||||
There are two modes how Events can be triggered, which is <strong>embedded</strong> and <strong>delayed</strong>:</p>
|
||||
|
||||
<ul>
|
||||
<li>The <strong>FSM:Event()</strong> creates an Event that will be processed <strong>embedded</strong> or immediately.</li>
|
||||
<li>The <strong>FSM:__Event( seconds )</strong> creates an Event that will be processed <strong>delayed</strong> over time, waiting x seconds.</li>
|
||||
<li>The method <strong>FSM:Event()</strong> triggers an Event that will be processed <strong>embedded</strong> or <strong>immediately</strong>.</li>
|
||||
<li>The method <strong>FSM:__Event( seconds )</strong> triggers an Event that will be processed <strong>delayed</strong> over time, waiting x seconds.</li>
|
||||
</ul>
|
||||
|
||||
<p> <img src="../Presentations/MOOSE - FSM - 1. Concepts/Dia5.jpg" alt="Test Image"/></p>
|
||||
<p> <img src=".\Presentations\DOC.MOOSE - FSM - 1. Concepts\Dia4.jpg" alt="Test Image"/></p>
|
||||
|
||||
<h2>1.1) Define the FSM Rules</h2>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user