MOOSE/docs/Documentation/MOVEMENT.html
FlightControl 0ebcbb4879 Fix of bug #97
-- Fixed GROUP:IsAlive()
--- Returns if the Group is alive.
-- The Group must:
--
--   * Exist at run-time.
--   * Has at least one unit.
--
-- When the first @{Unit} of the Group is active, it will return true.
-- If the first @{Unit} of the Group is inactive, it will return false.
--
-- @param #GROUP self
-- @return #boolean true if the Group is alive and active.
-- @return #boolean false if the Group is alive but inactive.
-- @return #nil if the group does not exist anymore.

-- Fixed Identifiable:IsAlive()
--- Returns if the Identifiable is alive.
-- If the Identifiable is not alive, nil is returned.
-- If the Identifiable is alive, true is returned.
-- @param #IDENTIFIABLE self
-- @return #boolean true if Identifiable is alive.
-- @return #nil if the Identifiable is not existing or is not alive.

-- Fixed UNIT:IsAlive()
--- Returns if the Unit is alive.
-- If the Unit is not alive, nil is returned.
-- If the Unit is alive and active, true is returned.
-- If the Unit is alive but not active, false is returned.
-- @param #UNIT self
-- @return #boolean true if Unit is alive and active.
-- @return #boolean false if Unit is alive but not active.
-- @return #nil if the Unit is not existing or is not alive.

-- Updated all test missions, as this is a core change.
2017-03-27 10:34:51 +02:00

404 lines
9.1 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_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_Patrol.html">AI_Patrol</a></li>
<li><a href="Account.html">Account</a></li>
<li><a href="Airbase.html">Airbase</a></li>
<li><a href="AirbasePolice.html">AirbasePolice</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="Database.html">Database</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="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>Movement</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="Radio.html">Radio</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="Smoke.html">Smoke</a></li>
<li><a href="Spawn.html">Spawn</a></li>
<li><a href="Static.html">Static</a></li>
<li><a href="Task.html">Task</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_PICKUP.html">Task_PICKUP</a></li>
<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="routines.html">routines</a></li>
</ul>
</div>
<div id="content">
<h1>Module <code>Movement</code></h1>
<p>Limit the simultaneous movement of Groups within a running Mission.</p>
<p>This module is defined to improve the performance in missions, and to bring additional realism for GROUND vehicles.
Performance: If in a DCSRTE there are a lot of moving GROUND units, then in a multi player mission, this WILL create lag if
the main DCS execution core of your CPU is fully utilized. So, this class will limit the amount of simultaneous moving GROUND units
on defined intervals (currently every minute).</p>
<h2>Global(s)</h2>
<table class="function_list">
<tr>
<td class="name" nowrap="nowrap"><a href="#MOVEMENT">MOVEMENT</a></td>
<td class="summary">
</td>
</tr>
</table>
<h2><a id="#(MOVEMENT)">Type <code>MOVEMENT</code></a></h2>
<table class="function_list">
<tr>
<td class="name" nowrap="nowrap"><a href="##(MOVEMENT).AliveUnits">MOVEMENT.AliveUnits</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(MOVEMENT).ClassName">MOVEMENT.ClassName</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(MOVEMENT).MoveCount">MOVEMENT.MoveCount</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(MOVEMENT).MoveMaximum">MOVEMENT.MoveMaximum</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(MOVEMENT).MovePrefixes">MOVEMENT.MovePrefixes</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(MOVEMENT).MoveUnits">MOVEMENT.MoveUnits</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(MOVEMENT).New">MOVEMENT:New(MovePrefixes, MoveMaximum)</a></td>
<td class="summary">
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(MOVEMENT).OnDeadOrCrash">MOVEMENT:OnDeadOrCrash(Event)</a></td>
<td class="summary">
<p>Captures the Dead or Crash events when Units crash or are destroyed.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(MOVEMENT).OnEventBirth">MOVEMENT:OnEventBirth(self, EventData)</a></td>
<td class="summary">
<p>Captures the birth events when new Units were spawned.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(MOVEMENT).ScheduleStart">MOVEMENT:ScheduleStart()</a></td>
<td class="summary">
<p>Call this function to start the MOVEMENT scheduling.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(MOVEMENT).ScheduleStop">MOVEMENT:ScheduleStop()</a></td>
<td class="summary">
<p>Call this function to stop the MOVEMENT scheduling.</p>
</td>
</tr>
<tr>
<td class="name" nowrap="nowrap"><a href="##(MOVEMENT)._Scheduler">MOVEMENT:_Scheduler()</a></td>
<td class="summary">
<p>This function is called automatically by the MOVEMENT scheduler.</p>
</td>
</tr>
</table>
<h2>Global(s)</h2>
<dl class="function">
<dt>
<em><a href="##(MOVEMENT)">#MOVEMENT</a></em>
<a id="MOVEMENT" >
<strong>MOVEMENT</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<h2><a id="#(Movement)" >Type <code>Movement</code></a></h2>
<h2><a id="#(MOVEMENT)" >Type <code>MOVEMENT</code></a></h2>
<p>the MOVEMENT class</p>
<h3>Field(s)</h3>
<dl class="function">
<dt>
<a id="#(MOVEMENT).AliveUnits" >
<strong>MOVEMENT.AliveUnits</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<em>#string</em>
<a id="#(MOVEMENT).ClassName" >
<strong>MOVEMENT.ClassName</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<em>#number</em>
<a id="#(MOVEMENT).MoveCount" >
<strong>MOVEMENT.MoveCount</strong>
</a>
</dt>
<dd>
<p> The internal counter of the amount of Moveing the has happened since MoveStart.</p>
</dd>
</dl>
<dl class="function">
<dt>
<em></em>
<a id="#(MOVEMENT).MoveMaximum" >
<strong>MOVEMENT.MoveMaximum</strong>
</a>
</dt>
<dd>
<p> Contains the Maximum amount of units that are allowed to move...</p>
</dd>
</dl>
<dl class="function">
<dt>
<em></em>
<a id="#(MOVEMENT).MovePrefixes" >
<strong>MOVEMENT.MovePrefixes</strong>
</a>
</dt>
<dd>
</dd>
</dl>
<dl class="function">
<dt>
<em></em>
<a id="#(MOVEMENT).MoveUnits" >
<strong>MOVEMENT.MoveUnits</strong>
</a>
</dt>
<dd>
<p> Reflects if the Moving for this MovePrefixes is going to be scheduled or not.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(MOVEMENT).New" >
<strong>MOVEMENT:New(MovePrefixes, MoveMaximum)</strong>
</a>
</dt>
<dd>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em> MovePrefixes </em></code>: </p>
</li>
<li>
<p><code><em> MoveMaximum </em></code>: </p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(MOVEMENT).OnDeadOrCrash" >
<strong>MOVEMENT:OnDeadOrCrash(Event)</strong>
</a>
</dt>
<dd>
<p>Captures the Dead or Crash events when Units crash or are destroyed.</p>
<h3>Parameter</h3>
<ul>
<li>
<p><code><em> Event </em></code>: </p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(MOVEMENT).OnEventBirth" >
<strong>MOVEMENT:OnEventBirth(self, EventData)</strong>
</a>
</dt>
<dd>
<p>Captures the birth events when new Units were spawned.</p>
<h3>Parameters</h3>
<ul>
<li>
<p><code><em><a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a> self </em></code>: </p>
</li>
<li>
<p><code><em> EventData </em></code>: </p>
</li>
</ul>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(MOVEMENT).ScheduleStart" >
<strong>MOVEMENT:ScheduleStart()</strong>
</a>
</dt>
<dd>
<p>Call this function to start the MOVEMENT scheduling.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(MOVEMENT).ScheduleStop" >
<strong>MOVEMENT:ScheduleStop()</strong>
</a>
</dt>
<dd>
<p>Call this function to stop the MOVEMENT scheduling.</p>
</dd>
</dl>
<dl class="function">
<dt>
<a id="#(MOVEMENT)._Scheduler" >
<strong>MOVEMENT:_Scheduler()</strong>
</a>
</dt>
<dd>
<p>This function is called automatically by the MOVEMENT scheduler.</p>
<p>A new function is scheduled when MoveScheduled is true.</p>
</dd>
</dl>
</div>
</div>
</body>
</html>