MOOSE_DOCS/Documentation/Sound.SRS.html
2023-12-14 11:45:11 +00:00

14402 lines
501 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-97385487-1"></script>
<script>window.dataLayer = window.dataLayer || [];function gtag(){dataLayer.push(arguments);}gtag('js', new Date());gtag('config', 'UA-97385487-1');</script>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.0.13/css/all.css" integrity="sha384-DNOHZ68U8hZfKXOrtjWvjxusGo9WQnrNx2sqG0tfsghAvtVlRW3tvkXWZh58N9jp" crossorigin="anonymous">
<link rel="stylesheet" href="https://www.w3schools.com/lib/w3-theme-indigo.css">
<link rel="stylesheet" href="../Highlight/styles/github.css">
<script src="../Highlight/highlight.pack.js"></script>
<script>hljs.initHighlightingOnLoad();</script>
<link rel="stylesheet" href="w3.css" type="text/css"/>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<style>
.picturebox {
height:100px;
}
</style>
</head>
<body onload="myLoadFunction()" >
<div id="myHeader" class="w3-container sticky w3-border-white w3-bottombar" style="background-image:url('../Images/MOOSE.JPG');">
<h1>
<i class="fa fa-bars w3-text-white fa-2x" onclick="w3_open()"></i>
</h1>
</div>
<div id="main">
<nav class="w3-sidenav w3-theme-l5 w3-animate-left" style="display:none">
<a href="javascript:void(0)"
onclick="w3_close()"
class="w3-closenav w3-large">Close &times;</a>
<div class="w3-row">
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/AI_Combat_Air_Patrol.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_A2A_Cap.html">AI.AI_A2A_Cap</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Models the process of Combat Air Patrol (CAP) for airplanes.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/AI_Air_To_Air_Dispatching.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_A2A_Dispatcher.html">AI.AI_A2A_Dispatcher</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Manages the process of an automatic A2A defense system based on an EWR network targets and coordinating CAP and GCI.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/AI_Ground_Control_Intercept.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_A2A_Gci.html">AI.AI_A2A_Gci</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Models the process of Ground Controlled Interception (GCI) for airplanes.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/AI_Air_Patrolling.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_A2A_Patrol.html">AI.AI_A2A_Patrol</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Models the process of air patrol of airplanes.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/AI_Air_To_Ground_Engage.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_A2G_BAI.html">AI.AI_A2G_BAI</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Models the process of air to ground BAI engagement for airplanes and helicopters.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/AI_Air_To_Ground_Engage.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_A2G_CAS.html">AI.AI_A2G_CAS</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Models the process of air to ground engagement for airplanes and helicopters.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/AI_Air_To_Ground_Dispatching.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_A2G_Dispatcher.html">AI.AI_A2G_Dispatcher</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Create an automated A2G defense system with reconnaissance units, coordinating SEAD, BAI and CAS operations.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/AI_Air_To_Ground_Engage.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_A2G_SEAD.html">AI.AI_A2G_SEAD</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Models the process of air to ground SEAD engagement for airplanes and helicopters.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_Air.html">AI.AI_Air</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Models the process of AI air operations.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/AI_Air_To_Ground_Dispatching.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_Air_Dispatcher.html">AI.AI_Air_Dispatcher</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Create an automated AIR defense system with reconnaissance units, coordinating SEAD, BAI and CAP operations.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/AI_Air_To_Ground_Engage.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_Air_Engage.html">AI.AI_Air_Engage</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Models the process of air to ground engagement for airplanes and helicopters.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/AI_Air_To_Ground_Patrol.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_Air_Patrol.html">AI.AI_Air_Patrol</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Models the process of A2G patrolling and engaging ground targets for airplanes and helicopters.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_Air_Squadron.html">AI.AI_Air_Squadron</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Models squadrons for airplanes and helicopters.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/AI_Battlefield_Air_Interdiction.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_BAI.html">AI.AI_BAI</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Peform Battlefield Area Interdiction (BAI) within an engagement zone.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/AI_Balancing.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_Balancer.html">AI.AI_Balancer</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Balance player slots with AI to create an engaging simulation environment, independent of the amount of players.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/AI_Combat_Air_Patrol.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_CAP.html">AI.AI_CAP</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Perform Combat Air Patrolling (CAP) for airplanes.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/AI_Close_Air_Support.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_CAS.html">AI.AI_CAS</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Perform Close Air Support (CAS) near friendlies.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Cargo.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_Cargo.html">AI.AI_Cargo</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Models the intelligent transportation of infantry and other cargo.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/AI_Cargo_Dispatching_For_APC.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_Cargo_APC.html">AI.AI_Cargo_APC</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Models the intelligent transportation of cargo using ground vehicles.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/AI_Cargo_Dispatching_For_Airplanes.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_Cargo_Airplane.html">AI.AI_Cargo_Airplane</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Models the intelligent transportation of cargo using airplanes.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/AI_Cargo_Dispatcher.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_Cargo_Dispatcher.html">AI.AI_Cargo_Dispatcher</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Models the intelligent transportation of infantry and other cargo.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/AI_Cargo_Dispatching_For_APC.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_Cargo_Dispatcher_APC.html">AI.AI_Cargo_Dispatcher_APC</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Models the intelligent transportation of infantry and other cargo using APCs.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/AI_Cargo_Dispatching_For_Airplanes.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_Cargo_Dispatcher_Airplane.html">AI.AI_Cargo_Dispatcher_Airplane</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Models the intelligent transportation of infantry and other cargo using Planes.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/AI_Cargo_Dispatching_For_Helicopters.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_Cargo_Dispatcher_Helicopter.html">AI.AI_Cargo_Dispatcher_Helicopter</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Models the intelligent transportation of infantry and other cargo using Helicopters.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/AI_Cargo_Dispatcher.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_Cargo_Dispatcher_Ship.html">AI.AI_Cargo_Dispatcher_Ship</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Models the intelligent transportation of infantry and other cargo using Ships.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/AI_Cargo_Dispatching_For_Helicopters.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_Cargo_Helicopter.html">AI.AI_Cargo_Helicopter</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Models the intelligent transportation of cargo using helicopters.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/AI_Cargo_Dispatcher.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_Cargo_Ship.html">AI.AI_Cargo_Ship</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Models the intelligent transportation of infantry and other cargo.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Escorting.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_Escort.html">AI.AI_Escort</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Taking the lead of AI escorting your flight or of other AI.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_Escort_Dispatcher.html">AI.AI_Escort_Dispatcher</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Models the automatic assignment of AI escorts to player flights.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_Escort_Dispatcher_Request.html">AI.AI_Escort_Dispatcher_Request</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Models the assignment of AI escorts to player flights upon request using the radio menu.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Escorting.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_Escort_Request.html">AI.AI_Escort_Request</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Taking the lead of AI escorting your flight or of other AI, upon request using the menu.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/AI_Large_Formations.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_Formation.html">AI.AI_Formation</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Build large airborne formations of aircraft.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/AI_Air_Patrolling.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="AI.AI_Patrol.html">AI.AI_Patrol</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>AI</strong> - Perform Air Patrolling for airplanes.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Actions.Act_Account.html">Actions.Act_Account</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Actions</strong> - ACT_ACCOUNT_ classes <strong>account for</strong> (detect, count &amp; report) various DCS events occurring on UNITs.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Actions.Act_Assign.html">Actions.Act_Assign</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p>(SP) (MP) (FSM) Accept or reject process for player (task) assignments.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Actions.Act_Assist.html">Actions.Act_Assist</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p>(SP) (MP) (FSM) Route AI or players through waypoints or to zones.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Actions.Act_Route.html">Actions.Act_Route</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p>(SP) (MP) (FSM) Route AI or players through waypoints or to zones.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Cargo.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Cargo.Cargo.html">Cargo.Cargo</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Cargo</strong> - Management of CARGO logistics, that can be transported from and to transportation carriers.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Cargo_Crates.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Cargo.CargoCrate.html">Cargo.CargoCrate</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Cargo</strong> - Management of single cargo crates, which are based on a STATIC object.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Cargo_Groups.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Cargo.CargoGroup.html">Cargo.CargoGroup</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Cargo</strong> - Management of grouped cargo logistics, which are based on a GROUP object.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Cargo_Slingload.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Cargo.CargoSlingload.html">Cargo.CargoSlingload</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Cargo</strong> - Management of single cargo crates, which are based on a STATIC object.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Cargo_Units.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Cargo.CargoUnit.html">Cargo.CargoUnit</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Cargo</strong> - Management of single cargo logistics, which are based on a UNIT object.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/CORE_Astar.png" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Core.Astar.html">Core.Astar</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Core</strong> - A* Pathfinding.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Core_Base.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Core.Base.html">Core.Base</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Core</strong> - The base class within the framework.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Core_Radio.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Core.Beacon.html">Core.Beacon</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Core</strong> - TACAN and other beacons.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Core.Condition.html">Core.Condition</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Core</strong> - Define any or all conditions to be evaluated.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Core_Database.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Core.Database.html">Core.Database</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Core</strong> - Manages several databases containing templates, mission objects, and mission information.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Core_Event.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Core.Event.html">Core.Event</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Core</strong> - Models DCS event dispatching using a publish-subscribe model.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Core_Finite_State_Machine.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Core.Fsm.html">Core.Fsm</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Core</strong> - FSM (Finite State Machine) are objects that model and control long lasting business processes and workflow.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Core_Goal.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Core.Goal.html">Core.Goal</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Core</strong> - Models the process to achieve goal(s).</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE_Core.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Core.MarkerOps_Base.html">Core.MarkerOps_Base</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Core</strong> - Tap into markers added to the F10 map by users.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Core_Menu.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Core.Menu.html">Core.Menu</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Core</strong> - Manage hierarchical menu structures and commands for players within a mission.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Core_Message.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Core.Message.html">Core.Message</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Core</strong> - Informs the players using messages during a simulation.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/CORE_Pathline.png" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Core.Pathline.html">Core.Pathline</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Core</strong> - Path from A to B.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Core_Coordinate.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Core.Point.html">Core.Point</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Core</strong> - Defines an extensive API to manage 3D points in the DCS World 3D simulation space.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Core_Report.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Core.Report.html">Core.Report</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Core</strong> - Provides a handy means to create messages and reports.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Core_Schedule_Dispatcher.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Core.ScheduleDispatcher.html">Core.ScheduleDispatcher</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Core</strong> - SCHEDULEDISPATCHER dispatches the different schedules.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Core_Scheduler.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Core.Scheduler.html">Core.Scheduler</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Core</strong> - Prepares and handles the execution of functions over scheduled time (intervals).</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Core_Sets.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Core.Set.html">Core.Set</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Core</strong> - Define collections of objects to perform bulk actions and logically group objects.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Core_Settings.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Core.Settings.html">Core.Settings</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Core</strong> - Manages various settings for missions, providing a menu for players to tweak settings in running missions.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Core_Spawn.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Core.Spawn.html">Core.Spawn</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Core</strong> - Spawn dynamically new groups of units in running missions.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Core_Spawnstatic.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Core.SpawnStatic.html">Core.SpawnStatic</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Core</strong> - Spawn statics.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Core_Spot.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Core.Spot.html">Core.Spot</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Core</strong> - Management of spotting logistics, that can be activated and deactivated upon command.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Core.TextAndSound.html">Core.TextAndSound</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Core</strong> - A Moose GetText system.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Core_Scheduler.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Core.Timer.html">Core.Timer</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Core</strong> - Timer scheduler.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Core_Userflag.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Core.UserFlag.html">Core.UserFlag</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Core</strong> - Manage user flags to interact with the mission editor trigger system and server side scripts.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Core.Velocity.html">Core.Velocity</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Core</strong> - Models a velocity or speed, which can be expressed in various formats according the settings.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Core_Zones.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Core.Zone.html">Core.Zone</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Core</strong> - Define zones within your mission of various forms, with various capabilities.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Core.Zone_Detection.html">Core.Zone_Detection</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Core</strong> - The ZONE_DETECTION class, defined by a zone name, a detection object and a radius.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="DCS.html">DCS</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>DCS API</strong> Prototypes.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Air_Traffic_Control_Ground_Operations.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Functional.ATC_Ground.html">Functional.ATC_Ground</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Functional</strong> - Monitor airbase traffic and regulate speed while taxiing.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Artillery.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Functional.Artillery.html">Functional.Artillery</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Functional</strong> - Control artillery units.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/CleanUp_Airbases.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Functional.CleanUp.html">Functional.CleanUp</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Functional</strong> - Keep airbases clean of crashing or colliding airplanes, and kill missiles when being fired at airbases.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Designation.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Functional.Designate.html">Functional.Designate</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Functional</strong> - Management of target <strong>Designation</strong>.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Detection.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Functional.Detection.html">Functional.Detection</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Functional</strong> - Models the detection of enemy units by FACs or RECCEs and group them according various methods.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Functional.DetectionZones.html">Functional.DetectionZones</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Functional</strong> - Captures the class DETECTION_ZONES.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Escorting.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Functional.Escort.html">Functional.Escort</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Functional</strong> - Taking the lead of AI escorting your flight.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Functional_FOX.png" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Functional.Fox.html">Functional.Fox</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Functional</strong> - Yet Another Missile Trainer.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Functional.Mantis.jpg" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Functional.Mantis.html">Functional.Mantis</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Functional</strong> - Modular, Automatic and Network capable Targeting and Interception System for Air Defenses.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Missile_Trainer.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Functional.MissileTrainer.html">Functional.MissileTrainer</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Functional</strong> - Train missile defence and deflection.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Functional.Movement.html">Functional.Movement</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Functional</strong> - Limit the movement of simulaneous moving ground vehicles.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Pseudo_ATC.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Functional.PseudoATC.html">Functional.PseudoATC</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Functional</strong> - Basic ATC.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/RAT.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Functional.RAT.html">Functional.RAT</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Functional</strong> - Create random airtraffic in your missions.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Range.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Functional.Range.html">Functional.Range</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Functional</strong> - Range Practice.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Scoring.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Functional.Scoring.html">Functional.Scoring</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Functional</strong> - Administer the scoring of player achievements, file and log the scoring events for use at websites.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/SEAD.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Functional.Sead.html">Functional.Sead</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Functional</strong> - Make SAM sites evasive and execute defensive behaviour when being fired upon.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Functional.Shorad.jpg" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Functional.Shorad.html">Functional.Shorad</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Functional</strong> - Short Range Air Defense System.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Suppression.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Functional.Suppression.html">Functional.Suppression</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Functional</strong> - Suppress fire of ground units when they get hit.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Warehouse.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Functional.Warehouse.html">Functional.Warehouse</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Functional</strong> - Simulation of logistic operations.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Capture_Zones.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Functional.ZoneCaptureCoalition.html">Functional.ZoneCaptureCoalition</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Functional</strong> - Models the process to zone guarding and capturing.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Functional.ZoneGoal.html">Functional.ZoneGoal</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Functional</strong> - Base class that models processes to achieve goals involving a Zone.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Functional.ZoneGoalCargo.html">Functional.ZoneGoalCargo</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Functional</strong> - Base class that models processes to achieve goals involving a Zone and Cargo.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Functional.ZoneGoalCoalition.html">Functional.ZoneGoalCoalition</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Functional</strong> - Base class that models processes to achieve goals involving a Zone for a Coalition.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/OPS_ATIS.png" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Ops.ATIS.html">Ops.ATIS</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Ops_Airboss.png" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Ops.Airboss.html">Ops.Airboss</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Ops</strong> - Manages aircraft CASE X recoveries for carrier operations (X=I, II, III).</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/OPS_CSAR.jpg" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Ops.CSAR.html">Ops.CSAR</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Ops</strong> - Combat Search and Rescue.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/OPS_CTLD.jpg" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Ops.CTLD.html">Ops.CTLD</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Ops</strong> - Combat Troops &amp; Logistics Department.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Ops_RecoveryTanker.png" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Ops.RecoveryTanker.html">Ops.RecoveryTanker</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Ops</strong> - Recovery tanker for carrier operations.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Ops_RescueHelo.png" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Ops.RescueHelo.html">Ops.RescueHelo</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Ops</strong> - Rescue helicopter for carrier operations.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Core_Radio.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Sound.Radio.html">Sound.Radio</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Sound</strong> - Radio transmissions.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Core_Radio.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Sound.RadioQueue.html">Sound.RadioQueue</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Sound</strong> - Queues Radio Transmissions.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Core_Radio.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Sound.RadioSpeech.html">Sound.RadioSpeech</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Core</strong> - Makes the radio talk.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Sound_MSRS.png" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Sound.SRS.html">Sound.SRS</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Sound</strong> - Simple Radio Standalone (SRS) Integration and Text-to-Speech.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Sound_SoundOutput.png" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Sound.SoundOutput.html">Sound.SoundOutput</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Sound</strong> - Sound output classes.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Core_Usersound.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Sound.UserSound.html">Sound.UserSound</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Sound</strong> - Manage user sound.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Task_Command_Center.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Tasking.CommandCenter.html">Tasking.CommandCenter</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Tasking</strong> - A command center governs multiple missions, and takes care of the reporting and communications.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Task_Detection_Manager.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Tasking.DetectionManager.html">Tasking.DetectionManager</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Tasking</strong> - This module contains the DETECTION_MANAGER class and derived classes.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Task_Mission.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Tasking.Mission.html">Tasking.Mission</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Tasking</strong> - A mission models a goal to be achieved through the execution and completion of tasks by human players.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Tasking.Task.html">Tasking.Task</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Tasking</strong> - A task object governs the main engine to administer human taskings.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Tasking.TaskInfo.html">Tasking.TaskInfo</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Tasking</strong> - Controls the information of a Task.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Tasking.Task_A2A.html">Tasking.Task_A2A</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Tasking</strong> - The TASK_A2A models tasks for players in Air to Air engagements.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Task_A2A_Dispatcher.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Tasking.Task_A2A_Dispatcher.html">Tasking.Task_A2A_Dispatcher</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Tasking</strong> - Dynamically allocates A2A tasks to human players, based on detected airborne targets through an EWR network.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Tasking.Task_A2G.html">Tasking.Task_A2G</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Tasking</strong> - The TASK_A2G models tasks for players in Air to Ground engagements.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Task_A2G_Dispatcher.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Tasking.Task_A2G_Dispatcher.html">Tasking.Task_A2G_Dispatcher</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Tasking</strong> - Dynamically allocates A2G tasks to human players, based on detected ground targets through reconnaissance.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Tasking.Task_CARGO.html">Tasking.Task_CARGO</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Tasking</strong> - Base class to model tasks for players to transport cargo.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Tasking.Task_Capture_Dispatcher.html">Tasking.Task_Capture_Dispatcher</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Tasking</strong> - Creates and manages player TASK_ZONE_CAPTURE tasks.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Tasking.Task_Capture_Zone.html">Tasking.Task_Capture_Zone</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Tasking</strong> - The TASK_Protect models tasks for players to protect or capture specific zones.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Task_Cargo_CSAR.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Tasking.Task_Cargo_CSAR.html">Tasking.Task_Cargo_CSAR</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Tasking</strong> - Orchestrates the task for players to execute CSAR for downed pilots.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Task_Cargo_Dispatcher.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Tasking.Task_Cargo_Dispatcher.html">Tasking.Task_Cargo_Dispatcher</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Tasking</strong> - Creates and manages player TASK_CARGO tasks.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Task_Cargo_Transport.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Tasking.Task_Cargo_Transport.html">Tasking.Task_Cargo_Transport</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Tasking</strong> - Models tasks for players to transport cargo.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Tasking.Task_Manager.html">Tasking.Task_Manager</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Tasking</strong> - This module contains the TASK_MANAGER class and derived classes.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Utilities.Enums.html">Utilities.Enums</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Utilities</strong> Enumerators.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Utilities.FiFo.html">Utilities.FiFo</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p> <strong>UTILS</strong> - Classic FiFo Stack.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Utils_Profiler.jpg" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Utilities.Profiler.html">Utilities.Profiler</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Utils</strong> - Lua Profiler.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Utilities.STTS.html">Utilities.STTS</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Utilities</strong> - DCS Simple Text-To-Speech (STTS).</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Utilities.Socket.html">Utilities.Socket</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Utilities</strong> - Socket.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Utilities.Templates.html">Utilities.Templates</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Utilities</strong> - Templates.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Utilities.Utils.html">Utilities.Utils</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Utilities</strong> - Derived utilities taken from the MIST framework, added helpers from the MOOSE community.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Wrapper_Airbase.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Wrapper.Airbase.html">Wrapper.Airbase</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Wrapper</strong> - AIRBASE is a wrapper class to handle the DCS Airbase objects.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Wrapper_Client.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Wrapper.Client.html">Wrapper.Client</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Wrapper</strong> - CLIENT wraps DCS Unit objects acting as a <strong>Client</strong> or <strong>Player</strong> within a mission.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Wrapper_Controllable.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Wrapper.Controllable.html">Wrapper.Controllable</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Wrapper</strong> - CONTROLLABLE is an intermediate class wrapping Group and Unit classes "controllers".</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Wrapper_Group.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Wrapper.Group.html">Wrapper.Group</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Wrapper</strong> - GROUP wraps the DCS Class Group objects.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Wrapper.Identifiable.html">Wrapper.Identifiable</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Wrapper</strong> - IDENTIFIABLE is an intermediate class wrapping DCS Object class derived Objects.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE_Core.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Wrapper.Marker.html">Wrapper.Marker</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Wrapper</strong> - Markers On the F10 map.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Utils_Profiler.jpg" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Wrapper.Net.html">Wrapper.Net</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Wrapper</strong> - DCS net functions.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/MOOSE.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Wrapper.Object.html">Wrapper.Object</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Wrapper</strong> - OBJECT wraps the DCS Object derived objects.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Wrapper_Positionable.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Wrapper.Positionable.html">Wrapper.Positionable</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Wrapper</strong> - POSITIONABLE wraps DCS classes that are "positionable".</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Wrapper_Scenery.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Wrapper.Scenery.html">Wrapper.Scenery</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Wrapper</strong> - SCENERY models scenery within the DCS simulator.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Wrapper_Static.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Wrapper.Static.html">Wrapper.Static</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Wrapper</strong> - STATIC wraps the DCS StaticObject class.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Wrapper_Storage.png" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Wrapper.Storage.html">Wrapper.Storage</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Wrapper</strong> - Warehouse storage of DCS airbases.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Wrapper_Unit.JPG" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Wrapper.Unit.html">Wrapper.Unit</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Wrapper</strong> - UNIT is a wrapper class for the DCS Class Unit.</p>
</p></div>
</div>
</div>
<div class="w3-col s12 m6 l4">
<div class="w3-card-4 w3-white w3-margin-16">
<div class="w3-display-container w3-text-white w3-text-shadow">
<img src= "../Images/Wrapper_Weapon.png" alt="Image">
<div class="w3-display-bottommiddle" style="word-break:break-word;"><h2><strong><a href="Wrapper.Weapon.html">Wrapper.Weapon</a></strong></h2></div>
</div>
<div class="w3-container w3-padding w3-white picturebox" style="word-break:break-word;"><p>
<p><strong>Wrapper</strong> - Weapon functions.</p>
</p></div>
</div>
</div>
</div>
</nav>
<img src="..\Images\Sound_MSRS.png" alt="Banner Image"/>
<div id="content">
<div class="w3-container w3-theme-d5" id="module_title">
<h1>Module <strong>Sound.SRS</strong></h1>
</div>
<div class="w3-container w3-white" id="module_description">
<p><strong>Sound</strong> - Simple Radio Standalone (SRS) Integration and Text-to-Speech.</p>
<hr/>
<p><strong>Main Features:</strong></p>
<ul>
<li>Play sound files via SRS</li>
<li>Play text-to-speach via SRS</li>
</ul>
<hr/>
<h2>Youtube Videos: None yet</h2>
<hr/>
<h2>Missions: None yet</h2>
<hr/>
<h2>Sound files: <a href="https://github.com/FlightControl-Master/MOOSE_SOUND/releases">MOOSE Sound Files</a></h2>
<hr/>
<p>The goal of the <a href="https://github.com/ciribob/DCS-SimpleRadioStandalone">SRS</a> project is to bring VoIP communication into DCS and to make communication as frictionless as possible.</p>
<hr/>
<h3>Author: <strong>funkyfranky</strong></h3>
</div>
<div class="w3-container w3-theme-d2"><h2><strong>Global(s)</strong></h2></div>
<div class="w3-theme-d2 w3-margin-top ">
<table class="w3-table w3-left-align w3-theme-d2" onclick="myFunction('#Globals##MSRS')">
<tr>
<td class="style="width:40%;"><p><h2>Global <strong>MSRS</strong></h2></p></td>
<td class="style="width:60%;">
<p><em>It is a very sad thing that nowadays there is so little useless information.</em> - Oscar Wilde</p>
<hr/>
<h1>The MSRS Concept</h1>
<p>This class allows to broadcast sound files or text via Simple Radio Standalone (SRS).</p>
</td>
</tr>
</table>
</div>
<div id= "#Globals##MSRS" class="w3-container w3-white w3-padding-small">
<div class="w3-card-2 w3-padding-small w3-margin-top">
<a href="##(MSRS)">#MSRS</a>
<a id="MSRS" ><strong>MSRS</strong></a>
<p><em>It is a very sad thing that nowadays there is so little useless information.</em> - Oscar Wilde</p>
<hr/>
<h1>The MSRS Concept</h1>
<p>This class allows to broadcast sound files or text via Simple Radio Standalone (SRS).</p>
<h2>Prerequisites</h2>
<p>This script needs SRS version >= 1.9.6.</p>
<h1>Play Sound Files</h1>
<pre><code>local soundfile=SOUNDFILE:New("My Soundfile.ogg", "D:\\Sounds For DCS")
local msrs=MSRS:New("C:\\Path To SRS", 251, radio.modulation.AM)
msrs:PlaySoundFile(soundfile)
</code></pre>
<h1>Play Text-To-Speech</h1>
<p>Basic example:</p>
<pre><code>-- Create a SOUNDTEXT object.
local text=SOUNDTEXT:New("All Enemies destroyed")
-- MOOSE SRS
local msrs=MSRS:New("D:\\DCS\\_SRS\\", 305, radio.modulation.AM)
-- Text-to speech with default voice after 2 seconds.
msrs:PlaySoundText(text, 2)
</code></pre>
<h2>Set Gender</h2>
<p>Use a specific gender with the <a href="##(MSRS).SetGender">MSRS.SetGender</a> function, e.g. <code>SetGender("male")</code> or <code>:SetGender("female")</code>.</p>
<h2>Set Culture</h2>
<p>Use a specific "culture" with the <a href="##(MSRS).SetCulture">MSRS.SetCulture</a> function, e.g. <code>:SetCulture("en-US")</code> or <code>:SetCulture("de-DE")</code>.</p>
<h2>Set Google</h2>
<p>Use Google's text-to-speech engine with the <a href="##(MSRS).SetGoogle">MSRS.SetGoogle</a> function, e.g. ':SetGoogle()'.
By enabling this it also allows you to utilize SSML in your text for added flexibility.
For more information on setting up a cloud account, visit: https://cloud.google.com/text-to-speech
Google's supported SSML reference: https://cloud.google.com/text-to-speech/docs/ssml</p>
<p><strong>Pro-Tipp</strong> - use the command line with power shell to call DCS-SR-ExternalAudio.exe - it will tell you what is missing. <br/>
and also the Google Console error, in case you have missed a step in setting up your Google TTS. <br/>
E.g. <code>.\DCS-SR-ExternalAudio.exe -t "Text Message" -f 255 -m AM -c 2 -s 2 -z -G "Path_To_You_Google.Json"</code> <br/>
Plays a message on 255AM for the blue coalition in-game.</p>
<h2>Set Voice</h2>
<p>Use a specific voice with the <a href="##(MSRS).SetVoice">MSRS.SetVoice</a> function, e.g, <code>:SetVoice("Microsoft Hedda Desktop")</code>.
Note that this must be installed on your windows system.
If enabling SetGoogle(), you can use voices provided by Google
Google's supported voices: https://cloud.google.com/text-to-speech/docs/voices
For voices there are enumerators in this class to help you out on voice names:</p>
<pre><code> MSRS.Voices.Microsoft -- e.g. MSRS.Voices.Microsoft.Hedda - the Microsoft enumerator contains all voices known to work with SRS
MSRS.Voices.Google -- e.g. MSRS.Voices.Google.Standard.en_AU_Standard_A or MSRS.Voices.Google.Wavenet.de_DE_Wavenet_C - The Google enumerator contains voices for EN, DE, IT, FR and ES.
</code></pre>
<h2>Set Coordinate</h2>
<p>Use <a href="##(MSRS).SetCoordinate">MSRS.SetCoordinate</a> to define the origin from where the transmission is broadcasted.</p>
<h2>Set SRS Port</h2>
<p>Use <a href="##(MSRS).SetPort">MSRS.SetPort</a> to define the SRS port. Defaults to 5002.</p>
<h2>Set SRS Volume</h2>
<p>Use <a href="##(MSRS).SetVolume">MSRS.SetVolume</a> to define the SRS volume. Defaults to 1.0. Allowed values are between 0.0 and 1.0, from silent to loudest.</p>
<h2>Config file for many variables, auto-loaded by Moose</h2>
<p>See <a href="##(MSRS).LoadConfigFile">MSRS.LoadConfigFile</a> for details on how to set this up.</p>
<h2>Set DCS-gRPC as an alternative to 'DCS-SR-ExternalAudio.exe' for TTS</h2>
<p>Use <a href="##(MSRS).SetDefaultBackendGRPC">MSRS.SetDefaultBackendGRPC</a> to enable <a href="https://github.com/DCS-gRPC/rust-server">DCS-gRPC</a> as an alternate backend for transmitting text-to-speech over SRS.
This can be useful if 'DCS-SR-ExternalAudio.exe' cannot be used in the environment, or to use Azure or AWS clouds for TTS. Note that DCS-gRPC does not (yet?) support
all of the features and options available with 'DCS-SR-ExternalAudio.exe'. Of note, only text-to-speech is supported and it it cannot be used to transmit audio files.</p>
<p>DCS-gRPC must be installed and configured per the <a href="https://github.com/DCS-gRPC/rust-server">DCS-gRPC documentation</a> and already running via either the 'autostart' mechanism
or a Lua call to 'GRPC.load()' prior to use of the alternate DCS-gRPC backend. If a cloud TTS provider is being used, the API key must be set via the 'Config\dcs-grpc.lua'
configuration file prior DCS-gRPC being started. DCS-gRPC can be used both with DCS dedicated server and regular DCS installations.</p>
<p>To use the default local Windows TTS with DCS-gRPC, Windows 2019 Server (or newer) or Windows 10/11 are required. Voices for non-local languages and dialects may need to
be explicitly installed.</p>
<p>To set the MSRS class to use the DCS-gRPC backend for all future instances, call the function <code>MSRS.SetDefaultBackendGRPC()</code>.</p>
<p><strong>Note</strong> - When using other classes that use MSRS with the alternate DCS-gRPC backend, pass them strings instead of nil values for non-applicable fields with filesystem paths,
such as the SRS path or Google credential path. This will help maximize compatibility with other classes that were written for the default backend.</p>
<p>Basic Play Text-To-Speech example using alternate DCS-gRPC backend (DCS-gRPC not previously started):</p>
<pre><code>-- Start DCS-gRPC
GRPC.load()
-- Select the alternate DCS-gRPC backend for new MSRS instances
MSRS.SetDefaultBackendGRPC()
-- Create a SOUNDTEXT object.
local text=SOUNDTEXT:New("All Enemies destroyed")
-- MOOSE SRS
local msrs=MSRS:New('', 305.0)
-- Text-to speech with default voice after 30 seconds.
msrs:PlaySoundText(text, 30)
</code></pre>
<p>Basic example of using another class (ATIS) with SRS and the DCS-gRPC backend (DCS-gRPC not previously started):</p>
<pre><code>-- Start DCS-gRPC
GRPC.load()
-- Select the alternate DCS-gRPC backend for new MSRS instances
MSRS.SetDefaultBackendGRPC()
-- Create new ATIS as usual
atis=ATIS:New("Nellis", 251, radio.modulation.AM)
-- ATIS:SetSRS() expects a string for the SRS path even though it is not needed with DCS-gRPC
atis:SetSRS('')
-- Start ATIS
atis:Start()
</code></pre>
</div>
</div>
<div class="w3-theme-d2 w3-margin-top ">
<table class="w3-table w3-left-align w3-theme-d2" onclick="myFunction('#Globals##MSRSQUEUE')">
<tr>
<td class="style="width:40%;"><p><h2>Global <strong>MSRSQUEUE</strong></h2></p></td>
<td class="style="width:60%;">
</td>
</tr>
</table>
</div>
<div id= "#Globals##MSRSQUEUE" class="w3-container w3-white w3-padding-small">
<div class="w3-card-2 w3-padding-small w3-margin-top">
<a href="##(MSRSQUEUE)">#MSRSQUEUE</a>
<a id="MSRSQUEUE" ><strong>MSRSQUEUE</strong></a>
</div>
</div>
<div class="w3-container w3-theme-l2 w3-margin-top"><h2><strong>Type(s)</strong></h2></div>
<div class="w3-container w3-theme-l2 w3-margin-top"><h2><a id="#(MSRS)">Type <strong>MSRS</strong></a></h2></div>
<div class="w3-card-4 w3-padding w3-margin w3-theme-l1">
<strong><a href="##(MSRS)">MSRS</a></strong>
, extends <strong><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></strong>
</div>
<div class="w3-card w3-margin">
<table class="w3-table w3-border-bottom w3-border-theme-l2">
<tr class="w3-theme-l1">
<th class="w3-half w3-left-align w3-container w3-padding-16"word-wrap: break-word">Fields and Methods inherited from MSRS</th>
<th class="w3-half w3-left-align w3-container w3-padding-16">Description</th>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).APIKey">MSRS.APIKey</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).AddFrequencies">MSRS:AddFrequencies(Frequencies)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Add frequencies.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).AddModulations">MSRS:AddModulations(Modulations)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Add modulations.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).AltBackend">MSRS.AltBackend</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Table containing functions and variables to enable an alternate backend to transmit to SRS.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).ClassName">MSRS.ClassName</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Name of the class.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).ConfigFileName">MSRS.ConfigFileName</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Name of the standard config file</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).ConfigFilePath">MSRS.ConfigFilePath</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Path to the standard config file</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).ConfigLoaded">MSRS.ConfigLoaded</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).GRPCOptions">MSRS.GRPCOptions</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).GetCoalition">MSRS:GetCoalition()</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Get coalition.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).GetFrequencies">MSRS:GetFrequencies(Frequencies)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Get frequencies.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).GetLabel">MSRS:GetLabel()</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Get label.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).GetModulations">MSRS:GetModulations(Modulations)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Get modulations.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).GetPath">MSRS:GetPath()</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Get path to SRS directory.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).GetPort">MSRS:GetPort()</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Get port.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).GetVolume">MSRS:GetVolume()</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Get SRS volume.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).Help">MSRS:Help()</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Print SRS STTS help to DCS log file.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).Label">MSRS.Label</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Label showing up on the SRS radio overlay. Default is "ROBOT". No spaces allowed.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).LoadConfigFile">MSRS:LoadConfigFile(Path, Filename)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Get central SRS configuration to be able to play tts over SRS radio using the <code>DCS-SR-ExternalAudio.exe</code>.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).New">MSRS:New(PathToSRS, Frequency, Modulation, Volume, AltBackend)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Create a new MSRS object.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).PlaySoundFile">MSRS:PlaySoundFile(Soundfile, Delay)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Play sound file (ogg or mp3) via SRS.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).PlaySoundText">MSRS:PlaySoundText(SoundText, Delay)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Play a SOUNDTEXT text-to-speech object.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).PlayText">MSRS:PlayText(Text, Delay, Coordinate)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Play text message via STTS.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).PlayTextExt">MSRS:PlayTextExt(Text, Delay, Frequencies, Modulations, Gender, Culture, Voice, Volume, Label, Coordinate)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Play text message via STTS with explicitly specified options.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).PlayTextFile">MSRS:PlayTextFile(TextFile, Delay)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Play text file via STTS.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).ResetDefaultBackend">MSRS.ResetDefaultBackend()</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Restores default SRS backend (DCS-SR-ExternalAudio.exe) to be used by all new MSRS class instances to transmit over SRS.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).SetCoalition">MSRS:SetCoalition(Coalition)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Set coalition.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).SetCoordinate">MSRS:SetCoordinate(Coordinate)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Set the coordinate from which the transmissions will be broadcasted.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).SetCulture">MSRS:SetCulture(Culture)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Set culture.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).SetDefaultBackend">MSRS.SetDefaultBackend(Backend)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Sets an alternate SRS backend to be used by MSRS to transmit over SRS for all new MSRS class instances.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).SetDefaultBackendGRPC">MSRS.SetDefaultBackendGRPC()</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Sets DCS-gRPC as the default SRS backend for all new MSRS class instances.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).SetDefaultVoice">MSRS:SetDefaultVoice(Voice)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Set to use a specific voice.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).SetFrequencies">MSRS:SetFrequencies(Frequencies)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Set frequencies.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).SetGender">MSRS:SetGender(Gender)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Set gender.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).SetGoogle">MSRS:SetGoogle(PathToCredentials)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Use google text-to-speech credentials.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).SetGoogleAPIKey">MSRS:SetGoogleAPIKey(APIKey)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>gRPC Backend: Use google text-to-speech set the API key.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).SetLabel">MSRS:SetLabel(Label)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Set label.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).SetModulations">MSRS:SetModulations(Modulations)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Set modulations.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).SetPath">MSRS:SetPath(Path)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Set path to SRS install directory.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).SetPort">MSRS:SetPort(Port)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Set port.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).SetTTSProviderGoogle">MSRS:SetTTSProviderGoogle()</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Use Google text-to-speech as default.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).SetTTSProviderMicrosoft">MSRS:SetTTSProviderMicrosoft()</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Use Microsoft text-to-speech as default.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).SetVoice">MSRS:SetVoice(Voice)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Set to use a specific voice.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).SetVolume">MSRS:SetVolume(Volume)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Set SRS volume.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).Voices">MSRS.Voices</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS)._ExecCommand">MSRS:_ExecCommand(command)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Execute SRS command to play sound using the <code>DCS-SR-ExternalAudio.exe</code>.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS)._GetCommand">MSRS:_GetCommand(freqs, modus, coal, gender, voice, culture, volume, speed, port, label, coordinate)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Get SRS command to play sound using the <code>DCS-SR-ExternalAudio.exe</code>.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS)._GetLatLongAlt">MSRS:_GetLatLongAlt(Coordinate)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Get lat, long and alt from coordinate.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS)._NewAltBackend">MSRS:_NewAltBackend(A, Backend)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Adds or replaces functions and variables in the current MSRS class instance to enable an alternate backends for transmitting to SRS.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).coalition">MSRS.coalition</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Coalition of the transmission.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).coordinate">MSRS.coordinate</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Coordinate from where the transmission is send.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).culture">MSRS.culture</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Culture. Default "en-GB".</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).defaultVoice">MSRS.defaultVoice</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).frequencies">MSRS.frequencies</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Frequencies used in the transmissions.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).gender">MSRS.gender</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Gender. Default "female".</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).google">MSRS.google</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Full path google credentials JSON file, e.g. "C:\Users\username\Downloads\service-account-file.json".</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).lid">MSRS.lid</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Class id string for output to DCS log file.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).modulations">MSRS.modulations</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Modulations used in the transmissions.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).name">MSRS.name</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Name. Default "DCS-STTS".</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).path">MSRS.path</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Path to the SRS exe. This includes the final slash "/".</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).port">MSRS.port</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Port. Default 5002.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).provider">MSRS.provider</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).region">MSRS.region</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).secret">MSRS.secret</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).ttsprovider">MSRS.ttsprovider</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Default provider TTS backend, e.g. "Google" or "Microsoft", default is Microsoft</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).version">MSRS.version</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>MSRS class version.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).voice">MSRS.voice</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Specific voce.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).volume">MSRS.volume</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Volume between 0 (min) and 1 (max). Default 1.</p>
</td>
</tr>
</table>
</div>
<div class="w3-card w3-margin">
<table class="w3-table w3-border-bottom w3-border-theme-l2">
<tr class="w3-theme-l1">
<th class="w3-half w3-left-align w3-container w3-padding-16"word-wrap: break-word">Fields and Methods inherited from BASE</th>
<th class="w3-half w3-left-align w3-container w3-padding-16">Description</th>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).ClassID">MSRS.ClassID</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>The ID number of the class.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).ClassName">MSRS.ClassName</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>The name of the class.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).ClassNameAndID">MSRS.ClassNameAndID</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>The name of the class concatenated with the ID number of the class.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).ClearState">MSRS:ClearState(Object, StateName)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Clear the state of an object.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).CreateEventBirth">MSRS:CreateEventBirth(EventTime, Initiator, IniUnitName, place, subplace)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Creation of a Birth Event.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).CreateEventCrash">MSRS:CreateEventCrash(EventTime, Initiator, IniObjectCategory)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Creation of a Crash Event.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).CreateEventDead">MSRS:CreateEventDead(EventTime, Initiator, IniObjectCategory)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Creation of a Dead Event.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).CreateEventPlayerEnterAircraft">MSRS:CreateEventPlayerEnterAircraft(PlayerUnit)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Creation of a <code>S_EVENT_PLAYER_ENTER_AIRCRAFT</code> event.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).CreateEventRemoveUnit">MSRS:CreateEventRemoveUnit(EventTime, Initiator)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Creation of a Remove Unit Event.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).CreateEventTakeoff">MSRS:CreateEventTakeoff(EventTime, Initiator)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Creation of a Takeoff Event.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).CreateEventUnitLost">MSRS:CreateEventUnitLost(EventTime, Initiator)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Creation of a Crash Event.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).E">MSRS:E(Arguments)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Log an exception which will be traced always.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).EventDispatcher">MSRS:EventDispatcher()</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Returns the event dispatcher</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).EventRemoveAll">MSRS:EventRemoveAll()</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Remove all subscribed events</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).F">MSRS:F(Arguments)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Trace a function call.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).F2">MSRS:F2(Arguments)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Trace a function call level 2.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).F3">MSRS:F3(Arguments)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Trace a function call level 3.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).GetClassID">MSRS:GetClassID()</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Get the ClassID of the class instance.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).GetClassName">MSRS:GetClassName()</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Get the ClassName of the class instance.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).GetClassNameAndID">MSRS:GetClassNameAndID()</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Get the ClassName + ClassID of the class instance.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).GetEventPriority">MSRS:GetEventPriority()</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Get the Class <a href="Core.Event.html">Core.Event</a> processing Priority.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).GetParent">MSRS:GetParent(Child, FromClass)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>This is the worker method to retrieve the Parent class.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).GetState">MSRS:GetState(Object, Key)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Get a Value given a Key from the Object.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).HandleEvent">MSRS:HandleEvent(EventID, EventFunction)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Subscribe to a DCS Event.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).I">MSRS:I(Arguments)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Log an information which will be traced always.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).Inherit">MSRS:Inherit(Child, Parent)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>This is the worker method to inherit from a parent class.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).IsInstanceOf">MSRS:IsInstanceOf(ClassName)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>This is the worker method to check if an object is an (sub)instance of a class.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).IsTrace">MSRS:IsTrace()</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Enquires if tracing is on (for the class).</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).New">MSRS:New()</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>BASE constructor.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEvent">MSRS:OnEvent(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when an Event for an object is triggered.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventBDA">MSRS:OnEventBDA(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>BDA.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventBaseCaptured">MSRS:OnEventBaseCaptured(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when a ground unit captures either an airbase or a farp.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventBirth">MSRS:OnEventBirth(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when any object is spawned into the mission.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventCrash">MSRS:OnEventCrash(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when any aircraft crashes into the ground and is completely destroyed.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventDead">MSRS:OnEventDead(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when an object is dead.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventDetailedFailure">MSRS:OnEventDetailedFailure(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Unknown precisely what creates this event, likely tied into newer damage model.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventDiscardChairAfterEjection">MSRS:OnEventDiscardChairAfterEjection(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Discard chair after ejection.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventEjection">MSRS:OnEventEjection(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when a pilot ejects from an aircraft
Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventEngineShutdown">MSRS:OnEventEngineShutdown(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when any aircraft shuts down its engines.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventEngineStartup">MSRS:OnEventEngineStartup(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when any aircraft starts its engines.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventHit">MSRS:OnEventHit(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs whenever an object is hit by a weapon.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventHumanFailure">MSRS:OnEventHumanFailure(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when any system fails on a human controlled aircraft.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventKill">MSRS:OnEventKill(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs on the death of a unit.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventLand">MSRS:OnEventLand(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when an aircraft lands at an airbase, farp or ship
Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventLandingAfterEjection">MSRS:OnEventLandingAfterEjection(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs shortly after the landing animation of an ejected pilot touching the ground and standing up.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventLandingQualityMark">MSRS:OnEventLandingQualityMark(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Landing quality mark.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventMarkAdded">MSRS:OnEventMarkAdded(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when a new mark was added.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventMarkChange">MSRS:OnEventMarkChange(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when a mark text was changed.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventMarkRemoved">MSRS:OnEventMarkRemoved(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when a mark was removed.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventMissionEnd">MSRS:OnEventMissionEnd(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when a mission ends
Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventMissionStart">MSRS:OnEventMissionStart(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when a mission starts
Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes. </p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventParatrooperLanding">MSRS:OnEventParatrooperLanding(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Weapon add.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventPilotDead">MSRS:OnEventPilotDead(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when the pilot of an aircraft is killed.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventPlayerEnterAircraft">MSRS:OnEventPlayerEnterAircraft(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when a player enters a slot and takes control of an aircraft.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventPlayerEnterUnit">MSRS:OnEventPlayerEnterUnit(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when any player assumes direct control of a unit.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventPlayerLeaveUnit">MSRS:OnEventPlayerLeaveUnit(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when any player relieves control of a unit to the AI.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventRefueling">MSRS:OnEventRefueling(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when an aircraft connects with a tanker and begins taking on fuel.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventRefuelingStop">MSRS:OnEventRefuelingStop(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when an aircraft is finished taking fuel.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventScore">MSRS:OnEventScore(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when any modification to the "Score" as seen on the debrief menu would occur.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventShootingEnd">MSRS:OnEventShootingEnd(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when any unit stops firing its weapon.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventShootingStart">MSRS:OnEventShootingStart(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when any unit begins firing a weapon that has a high rate of fire.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventShot">MSRS:OnEventShot(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs whenever any unit in a mission fires a weapon.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventTakeoff">MSRS:OnEventTakeoff(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when an aircraft takes off from an airbase, farp, or ship.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventTriggerZone">MSRS:OnEventTriggerZone(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Trigger zone.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).OnEventUnitLost">MSRS:OnEventUnitLost(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when the game thinks an object is destroyed.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).ScheduleOnce">MSRS:ScheduleOnce(Start, SchedulerFunction, ...)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Schedule a new time event.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).ScheduleRepeat">MSRS:ScheduleRepeat(Start, Repeat, RandomizeFactor, Stop, SchedulerFunction, ...)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Schedule a new time event.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).ScheduleStop">MSRS:ScheduleStop(SchedulerID)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Stops the Schedule.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).Scheduler">MSRS.Scheduler</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).SetEventPriority">MSRS:SetEventPriority(EventPriority)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Set the Class <a href="Core.Event.html">Core.Event</a> processing Priority.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).SetState">MSRS:SetState(Object, Key, Value)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Set a state or property of the Object given a Key and a Value.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).T">MSRS:T(Arguments)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Trace a function logic level 1.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).T2">MSRS:T2(Arguments)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Trace a function logic level 2.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).T3">MSRS:T3(Arguments)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Trace a function logic level 3.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).TraceAll">MSRS:TraceAll(TraceAll)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Trace all methods in MOOSE</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).TraceClass">MSRS:TraceClass(Class)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Set tracing for a class</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).TraceClassMethod">MSRS:TraceClassMethod(Class, Method)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Set tracing for a specific method of class</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).TraceLevel">MSRS:TraceLevel(Level)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Set trace level</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).TraceOff">MSRS:TraceOff()</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Set trace off.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).TraceOn">MSRS:TraceOn()</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Set trace on.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).TraceOnOff">MSRS:TraceOnOff(TraceOnOff)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>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.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).UnHandleEvent">MSRS:UnHandleEvent(EventID)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>UnSubscribe to a DCS event.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS)._">MSRS._</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS)._F">MSRS:_F(Arguments, DebugInfoCurrentParam, DebugInfoFromParam)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Trace a function call.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS)._T">MSRS:_T(Arguments, DebugInfoCurrentParam, DebugInfoFromParam)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Trace a function logic.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).__">MSRS.__</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS).onEvent">MSRS:onEvent(event)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>The main event handling function...</p>
</td>
</tr>
</table>
</div>
<div class="w3-container w3-theme-l2 w3-margin-top"><h2><a id="#(MSRS.GRPCOptions)">Type <strong>MSRS.GRPCOptions</strong></a></h2></div>
<div class="w3-card-4 w3-padding w3-margin w3-theme-l1">
<strong><a href="##(MSRS.GRPCOptions)">MSRS.GRPCOptions</a></strong>
</div>
<div class="w3-card w3-margin">
<table class="w3-table w3-border-bottom w3-border-theme-l2">
<tr class="w3-theme-l1">
<th class="w3-half w3-left-align w3-container w3-padding-16"word-wrap: break-word">Fields and Methods inherited from MSRS.GRPCOptions</th>
<th class="w3-half w3-left-align w3-container w3-padding-16">Description</th>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS.GRPCOptions).DefaultProvider">MSRS.GRPCOptions.DefaultProvider</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS.GRPCOptions).aws">MSRS.GRPCOptions.aws</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS.GRPCOptions).azure">MSRS.GRPCOptions.azure</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS.GRPCOptions).coalition">MSRS.GRPCOptions.coalition</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS.GRPCOptions).gcloud">MSRS.GRPCOptions.gcloud</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS.GRPCOptions).plaintext">MSRS.GRPCOptions.plaintext</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS.GRPCOptions).position">MSRS.GRPCOptions.position</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS.GRPCOptions).provider">MSRS.GRPCOptions.provider</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS.GRPCOptions).srsClientName">MSRS.GRPCOptions.srsClientName</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS.GRPCOptions).win">MSRS.GRPCOptions.win</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
</table>
</div>
<div class="w3-container w3-theme-l2 w3-margin-top"><h2><a id="#(MSRS.ProviderOptions)">Type <strong>MSRS.ProviderOptions</strong></a></h2></div>
<div class="w3-card-4 w3-padding w3-margin w3-theme-l1">
<strong><a href="##(MSRS.ProviderOptions)">MSRS.ProviderOptions</a></strong>
</div>
<div class="w3-card w3-margin">
<table class="w3-table w3-border-bottom w3-border-theme-l2">
<tr class="w3-theme-l1">
<th class="w3-half w3-left-align w3-container w3-padding-16"word-wrap: break-word">Fields and Methods inherited from MSRS.ProviderOptions</th>
<th class="w3-half w3-left-align w3-container w3-padding-16">Description</th>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS.ProviderOptions).defaultVoice">MSRS.ProviderOptions.defaultVoice</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS.ProviderOptions).key">MSRS.ProviderOptions.key</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS.ProviderOptions).region">MSRS.ProviderOptions.region</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS.ProviderOptions).secret">MSRS.ProviderOptions.secret</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS.ProviderOptions).voice">MSRS.ProviderOptions.voice</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
</table>
</div>
<div class="w3-container w3-theme-l2 w3-margin-top"><h2><a id="#(MSRS.Voices)">Type <strong>MSRS.Voices</strong></a></h2></div>
<div class="w3-card-4 w3-padding w3-margin w3-theme-l1">
<strong><a href="##(MSRS.Voices)">MSRS.Voices</a></strong>
</div>
<div class="w3-card w3-margin">
<table class="w3-table w3-border-bottom w3-border-theme-l2">
<tr class="w3-theme-l1">
<th class="w3-half w3-left-align w3-container w3-padding-16"word-wrap: break-word">Fields and Methods inherited from MSRS.Voices</th>
<th class="w3-half w3-left-align w3-container w3-padding-16">Description</th>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS.Voices).Google">MSRS.Voices.Google</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS.Voices).Microsoft">MSRS.Voices.Microsoft</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
</table>
</div>
<div class="w3-container w3-theme-l2 w3-margin-top"><h2><a id="#(MSRSQUEUE)">Type <strong>MSRSQUEUE</strong></a></h2></div>
<div class="w3-card-4 w3-padding w3-margin w3-theme-l1">
<strong><a href="##(MSRSQUEUE)">MSRSQUEUE</a></strong>
, extends <strong><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></strong>
</div>
<div class="w3-card w3-margin">
<table class="w3-table w3-border-bottom w3-border-theme-l2">
<tr class="w3-theme-l1">
<th class="w3-half w3-left-align w3-container w3-padding-16"word-wrap: break-word">Fields and Methods inherited from MSRSQUEUE</th>
<th class="w3-half w3-left-align w3-container w3-padding-16">Description</th>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).AddTransmission">MSRSQUEUE:AddTransmission(transmission)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Add a transmission to the radio queue.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).Broadcast">MSRSQUEUE:Broadcast(transmission)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Broadcast radio message.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).CalcTransmisstionDuration">MSRSQUEUE:CalcTransmisstionDuration()</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Calculate total transmission duration of all transmission in the queue.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).ClassName">MSRSQUEUE.ClassName</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Name of the class "MSRSQUEUE".</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).Clear">MSRSQUEUE:Clear()</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Clear the radio queue.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).Debugmode">MSRSQUEUE.Debugmode</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).New">MSRSQUEUE:New(alias)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Create a new MSRSQUEUE object for a given radio frequency/modulation.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).NewTransmission">MSRSQUEUE:NewTransmission(text, duration, msrs, tstart, interval, subgroups, subtitle, subduration, frequency, modulation, gender, culture, voice, volume, label, coordinate)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Create a new transmission and add it to the radio queue.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).PlayerSet">MSRSQUEUE.PlayerSet</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).SetTransmitOnlyWithPlayers">MSRSQUEUE:SetTransmitOnlyWithPlayers(Switch)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Switch to only transmit if there are players on the server.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).Tlast">MSRSQUEUE.Tlast</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Time (abs) when the last transmission finished.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).TransmitOnlyWithPlayers">MSRSQUEUE.TransmitOnlyWithPlayers</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE)._CheckRadioQueue">MSRSQUEUE:_CheckRadioQueue(delay)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Check radio queue for transmissions to be broadcasted.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).alias">MSRSQUEUE.alias</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Name of the radio queue.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).checking">MSRSQUEUE.checking</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>If <code>true</code>, the queue update function is scheduled to be called again.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).dt">MSRSQUEUE.dt</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Time interval in seconds for checking the radio queue. </p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).lid">MSRSQUEUE.lid</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>ID for dcs.log.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).queue">MSRSQUEUE.queue</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>The queue of transmissions.</p>
</td>
</tr>
</table>
</div>
<div class="w3-card w3-margin">
<table class="w3-table w3-border-bottom w3-border-theme-l2">
<tr class="w3-theme-l1">
<th class="w3-half w3-left-align w3-container w3-padding-16"word-wrap: break-word">Fields and Methods inherited from BASE</th>
<th class="w3-half w3-left-align w3-container w3-padding-16">Description</th>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).ClassID">MSRSQUEUE.ClassID</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>The ID number of the class.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).ClassName">MSRSQUEUE.ClassName</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>The name of the class.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).ClassNameAndID">MSRSQUEUE.ClassNameAndID</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>The name of the class concatenated with the ID number of the class.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).ClearState">MSRSQUEUE:ClearState(Object, StateName)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Clear the state of an object.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).CreateEventBirth">MSRSQUEUE:CreateEventBirth(EventTime, Initiator, IniUnitName, place, subplace)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Creation of a Birth Event.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).CreateEventCrash">MSRSQUEUE:CreateEventCrash(EventTime, Initiator, IniObjectCategory)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Creation of a Crash Event.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).CreateEventDead">MSRSQUEUE:CreateEventDead(EventTime, Initiator, IniObjectCategory)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Creation of a Dead Event.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).CreateEventPlayerEnterAircraft">MSRSQUEUE:CreateEventPlayerEnterAircraft(PlayerUnit)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Creation of a <code>S_EVENT_PLAYER_ENTER_AIRCRAFT</code> event.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).CreateEventRemoveUnit">MSRSQUEUE:CreateEventRemoveUnit(EventTime, Initiator)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Creation of a Remove Unit Event.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).CreateEventTakeoff">MSRSQUEUE:CreateEventTakeoff(EventTime, Initiator)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Creation of a Takeoff Event.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).CreateEventUnitLost">MSRSQUEUE:CreateEventUnitLost(EventTime, Initiator)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Creation of a Crash Event.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).E">MSRSQUEUE:E(Arguments)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Log an exception which will be traced always.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).EventDispatcher">MSRSQUEUE:EventDispatcher()</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Returns the event dispatcher</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).EventRemoveAll">MSRSQUEUE:EventRemoveAll()</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Remove all subscribed events</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).F">MSRSQUEUE:F(Arguments)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Trace a function call.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).F2">MSRSQUEUE:F2(Arguments)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Trace a function call level 2.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).F3">MSRSQUEUE:F3(Arguments)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Trace a function call level 3.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).GetClassID">MSRSQUEUE:GetClassID()</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Get the ClassID of the class instance.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).GetClassName">MSRSQUEUE:GetClassName()</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Get the ClassName of the class instance.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).GetClassNameAndID">MSRSQUEUE:GetClassNameAndID()</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Get the ClassName + ClassID of the class instance.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).GetEventPriority">MSRSQUEUE:GetEventPriority()</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Get the Class <a href="Core.Event.html">Core.Event</a> processing Priority.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).GetParent">MSRSQUEUE:GetParent(Child, FromClass)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>This is the worker method to retrieve the Parent class.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).GetState">MSRSQUEUE:GetState(Object, Key)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Get a Value given a Key from the Object.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).HandleEvent">MSRSQUEUE:HandleEvent(EventID, EventFunction)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Subscribe to a DCS Event.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).I">MSRSQUEUE:I(Arguments)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Log an information which will be traced always.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).Inherit">MSRSQUEUE:Inherit(Child, Parent)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>This is the worker method to inherit from a parent class.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).IsInstanceOf">MSRSQUEUE:IsInstanceOf(ClassName)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>This is the worker method to check if an object is an (sub)instance of a class.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).IsTrace">MSRSQUEUE:IsTrace()</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Enquires if tracing is on (for the class).</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).New">MSRSQUEUE:New()</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>BASE constructor.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEvent">MSRSQUEUE:OnEvent(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when an Event for an object is triggered.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventBDA">MSRSQUEUE:OnEventBDA(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>BDA.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventBaseCaptured">MSRSQUEUE:OnEventBaseCaptured(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when a ground unit captures either an airbase or a farp.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventBirth">MSRSQUEUE:OnEventBirth(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when any object is spawned into the mission.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventCrash">MSRSQUEUE:OnEventCrash(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when any aircraft crashes into the ground and is completely destroyed.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventDead">MSRSQUEUE:OnEventDead(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when an object is dead.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventDetailedFailure">MSRSQUEUE:OnEventDetailedFailure(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Unknown precisely what creates this event, likely tied into newer damage model.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventDiscardChairAfterEjection">MSRSQUEUE:OnEventDiscardChairAfterEjection(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Discard chair after ejection.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventEjection">MSRSQUEUE:OnEventEjection(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when a pilot ejects from an aircraft
Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventEngineShutdown">MSRSQUEUE:OnEventEngineShutdown(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when any aircraft shuts down its engines.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventEngineStartup">MSRSQUEUE:OnEventEngineStartup(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when any aircraft starts its engines.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventHit">MSRSQUEUE:OnEventHit(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs whenever an object is hit by a weapon.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventHumanFailure">MSRSQUEUE:OnEventHumanFailure(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when any system fails on a human controlled aircraft.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventKill">MSRSQUEUE:OnEventKill(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs on the death of a unit.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventLand">MSRSQUEUE:OnEventLand(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when an aircraft lands at an airbase, farp or ship
Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventLandingAfterEjection">MSRSQUEUE:OnEventLandingAfterEjection(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs shortly after the landing animation of an ejected pilot touching the ground and standing up.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventLandingQualityMark">MSRSQUEUE:OnEventLandingQualityMark(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Landing quality mark.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventMarkAdded">MSRSQUEUE:OnEventMarkAdded(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when a new mark was added.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventMarkChange">MSRSQUEUE:OnEventMarkChange(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when a mark text was changed.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventMarkRemoved">MSRSQUEUE:OnEventMarkRemoved(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when a mark was removed.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventMissionEnd">MSRSQUEUE:OnEventMissionEnd(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when a mission ends
Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventMissionStart">MSRSQUEUE:OnEventMissionStart(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when a mission starts
Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes. </p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventParatrooperLanding">MSRSQUEUE:OnEventParatrooperLanding(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Weapon add.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventPilotDead">MSRSQUEUE:OnEventPilotDead(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when the pilot of an aircraft is killed.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventPlayerEnterAircraft">MSRSQUEUE:OnEventPlayerEnterAircraft(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when a player enters a slot and takes control of an aircraft.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventPlayerEnterUnit">MSRSQUEUE:OnEventPlayerEnterUnit(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when any player assumes direct control of a unit.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventPlayerLeaveUnit">MSRSQUEUE:OnEventPlayerLeaveUnit(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when any player relieves control of a unit to the AI.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventRefueling">MSRSQUEUE:OnEventRefueling(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when an aircraft connects with a tanker and begins taking on fuel.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventRefuelingStop">MSRSQUEUE:OnEventRefuelingStop(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when an aircraft is finished taking fuel.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventScore">MSRSQUEUE:OnEventScore(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when any modification to the "Score" as seen on the debrief menu would occur.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventShootingEnd">MSRSQUEUE:OnEventShootingEnd(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when any unit stops firing its weapon.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventShootingStart">MSRSQUEUE:OnEventShootingStart(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when any unit begins firing a weapon that has a high rate of fire.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventShot">MSRSQUEUE:OnEventShot(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs whenever any unit in a mission fires a weapon.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventTakeoff">MSRSQUEUE:OnEventTakeoff(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when an aircraft takes off from an airbase, farp, or ship.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventTriggerZone">MSRSQUEUE:OnEventTriggerZone(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Trigger zone.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).OnEventUnitLost">MSRSQUEUE:OnEventUnitLost(EventData)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Occurs when the game thinks an object is destroyed.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).ScheduleOnce">MSRSQUEUE:ScheduleOnce(Start, SchedulerFunction, ...)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Schedule a new time event.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).ScheduleRepeat">MSRSQUEUE:ScheduleRepeat(Start, Repeat, RandomizeFactor, Stop, SchedulerFunction, ...)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Schedule a new time event.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).ScheduleStop">MSRSQUEUE:ScheduleStop(SchedulerID)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Stops the Schedule.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).Scheduler">MSRSQUEUE.Scheduler</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).SetEventPriority">MSRSQUEUE:SetEventPriority(EventPriority)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Set the Class <a href="Core.Event.html">Core.Event</a> processing Priority.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).SetState">MSRSQUEUE:SetState(Object, Key, Value)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Set a state or property of the Object given a Key and a Value.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).T">MSRSQUEUE:T(Arguments)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Trace a function logic level 1.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).T2">MSRSQUEUE:T2(Arguments)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Trace a function logic level 2.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).T3">MSRSQUEUE:T3(Arguments)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Trace a function logic level 3.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).TraceAll">MSRSQUEUE:TraceAll(TraceAll)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Trace all methods in MOOSE</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).TraceClass">MSRSQUEUE:TraceClass(Class)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Set tracing for a class</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).TraceClassMethod">MSRSQUEUE:TraceClassMethod(Class, Method)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Set tracing for a specific method of class</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).TraceLevel">MSRSQUEUE:TraceLevel(Level)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Set trace level</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).TraceOff">MSRSQUEUE:TraceOff()</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Set trace off.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).TraceOn">MSRSQUEUE:TraceOn()</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Set trace on.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).TraceOnOff">MSRSQUEUE:TraceOnOff(TraceOnOff)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>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.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).UnHandleEvent">MSRSQUEUE:UnHandleEvent(EventID)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>UnSubscribe to a DCS event.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE)._">MSRSQUEUE._</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE)._F">MSRSQUEUE:_F(Arguments, DebugInfoCurrentParam, DebugInfoFromParam)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Trace a function call.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE)._T">MSRSQUEUE:_T(Arguments, DebugInfoCurrentParam, DebugInfoFromParam)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Trace a function logic.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).__">MSRSQUEUE.__</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE).onEvent">MSRSQUEUE:onEvent(event)</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>The main event handling function...</p>
</td>
</tr>
</table>
</div>
<div class="w3-container w3-theme-l2 w3-margin-top"><h2><a id="#(MSRSQUEUE.Transmission)">Type <strong>MSRSQUEUE.Transmission</strong></a></h2></div>
<div class="w3-card-4 w3-padding w3-margin w3-theme-l1">
<strong><a href="##(MSRSQUEUE.Transmission)">MSRSQUEUE.Transmission</a></strong>
</div>
<div class="w3-card w3-margin">
<table class="w3-table w3-border-bottom w3-border-theme-l2">
<tr class="w3-theme-l1">
<th class="w3-half w3-left-align w3-container w3-padding-16"word-wrap: break-word">Fields and Methods inherited from MSRSQUEUE.Transmission</th>
<th class="w3-half w3-left-align w3-container w3-padding-16">Description</th>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE.Transmission).PlayerSet">MSRSQUEUE.Transmission.PlayerSet</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>PlayerSet created when TransmitOnlyWithPlayers == true</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE.Transmission).Tplay">MSRSQUEUE.Transmission.Tplay</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Mission time (abs) in seconds when the transmission should be played.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE.Transmission).TransmitOnlyWithPlayers">MSRSQUEUE.Transmission.TransmitOnlyWithPlayers</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>If true, only transmit if there are alive Players.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE.Transmission).Tstarted">MSRSQUEUE.Transmission.Tstarted</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Mission time (abs) in seconds when the transmission started.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE.Transmission).coordinate">MSRSQUEUE.Transmission.coordinate</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Coordinate for this transmission</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE.Transmission).culture">MSRSQUEUE.Transmission.culture</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Voice culture</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE.Transmission).duration">MSRSQUEUE.Transmission.duration</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Duration in seconds.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE.Transmission).frequency">MSRSQUEUE.Transmission.frequency</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Frequency.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE.Transmission).gender">MSRSQUEUE.Transmission.gender</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Voice gender</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE.Transmission).interval">MSRSQUEUE.Transmission.interval</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Interval in seconds before next transmission.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE.Transmission).isplaying">MSRSQUEUE.Transmission.isplaying</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>If true, transmission is currently playing.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE.Transmission).label">MSRSQUEUE.Transmission.label</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Label to be used</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE.Transmission).modulation">MSRSQUEUE.Transmission.modulation</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Modulation.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE.Transmission).msrs">MSRSQUEUE.Transmission.msrs</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>MOOSE SRS object.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE.Transmission).subduration">MSRSQUEUE.Transmission.subduration</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Duration of the subtitle being displayed.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE.Transmission).subgroups">MSRSQUEUE.Transmission.subgroups</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Groups to send subtitle to.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE.Transmission).subtitle">MSRSQUEUE.Transmission.subtitle</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Subtitle of the transmission.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE.Transmission).text">MSRSQUEUE.Transmission.text</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Text to be transmitted.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE.Transmission).voice">MSRSQUEUE.Transmission.voice</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Voice if any</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRSQUEUE.Transmission).volume">MSRSQUEUE.Transmission.volume</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Volume</p>
</td>
</tr>
</table>
</div>
<div class="w3-container w3-theme-l2 w3-margin-top"><h2><a id="#(MSRS_BACKEND_DCSGRPC)">Type <strong>MSRS_BACKEND_DCSGRPC</strong></a></h2></div>
<div class="w3-card-4 w3-padding w3-margin w3-theme-l1">
<strong><a href="##(MSRS_BACKEND_DCSGRPC)">MSRS_BACKEND_DCSGRPC</a></strong>
</div>
<div class="w3-card w3-margin">
<table class="w3-table w3-border-bottom w3-border-theme-l2">
<tr class="w3-theme-l1">
<th class="w3-half w3-left-align w3-container w3-padding-16"word-wrap: break-word">Fields and Methods inherited from MSRS_BACKEND_DCSGRPC</th>
<th class="w3-half w3-left-align w3-container w3-padding-16">Description</th>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS_BACKEND_DCSGRPC).Functions">MSRS_BACKEND_DCSGRPC.Functions</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>A table of functions that will add or replace the default MSRS class functions.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS_BACKEND_DCSGRPC).Vars">MSRS_BACKEND_DCSGRPC.Vars</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>A table of variables that will add or replace the default MSRS class variables.</p>
</td>
</tr>
<tr class="w3-border">
<td class="name w3-half w3-container" style="word-wrap: break-word"><p><a href="##(MSRS_BACKEND_DCSGRPC).version">MSRS_BACKEND_DCSGRPC.version</a></p></td>
<td class="summary w3-half w3-container" style="word-wrap: break-word">
<p>Version number of this alternate backend.</p>
</td>
</tr>
</table>
</div>
<div class="w3-container w3-theme-l2 w3-margin-top"><h2><a id="#(Sound.SRS)" >Type <strong>Sound.SRS</strong></a></h2></div>
<div class="w3-container w3-white w3-padding-16" id="module_current_type">
<div class="w3-white" id="record_type">
</div>
</div>
<div onclick="myFunction('#Types##MSRS')" class="w3-container w3-theme-l2 w3-margin-top"><h2><a id="#(MSRS)">Type <strong>MSRS</strong></a></h2></div>
<div id= "#Types##MSRS" class="w3-container w3-white w3-padding-16" id="module_other_types">
<div class="w3-white" id="record_type">
<p>MSRS class.</p>
<div class="fields w3-container w3-theme-l2">
<h2>Field(s)</h2>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<a id="#(MSRS).APIKey" ><strong>MSRS.APIKey</strong></a>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#table
<a id="#(MSRS).AltBackend" ><strong>MSRS.AltBackend</strong></a>
<p>Table containing functions and variables to enable an alternate backend to transmit to SRS.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS).ClassName" ><strong>MSRS.ClassName</strong></a>
<p>Name of the class.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS).ConfigFileName" ><strong>MSRS.ConfigFileName</strong></a>
<p>Name of the standard config file</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS).ConfigFilePath" ><strong>MSRS.ConfigFilePath</strong></a>
<p>Path to the standard config file</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#boolean
<a id="#(MSRS).ConfigLoaded" ><strong>MSRS.ConfigLoaded</strong></a>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<a href="##(MSRS.GRPCOptions)">#MSRS.GRPCOptions</a>
<a id="#(MSRS).GRPCOptions" ><strong>MSRS.GRPCOptions</strong></a>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS).Label" ><strong>MSRS.Label</strong></a>
<p>Label showing up on the SRS radio overlay. Default is "ROBOT". No spaces allowed.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<a href="##(MSRS.Voices)">#MSRS.Voices</a>
<a id="#(MSRS).Voices" ><strong>MSRS.Voices</strong></a>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#number
<a id="#(MSRS).coalition" ><strong>MSRS.coalition</strong></a>
<p>Coalition of the transmission.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<a href="Core.Point.html##(COORDINATE)">Core.Point#COORDINATE</a>
<a id="#(MSRS).coordinate" ><strong>MSRS.coordinate</strong></a>
<p>Coordinate from where the transmission is send.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS).culture" ><strong>MSRS.culture</strong></a>
<p>Culture. Default "en-GB".</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<a id="#(MSRS).defaultVoice" ><strong>MSRS.defaultVoice</strong></a>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#table
<a id="#(MSRS).frequencies" ><strong>MSRS.frequencies</strong></a>
<p>Frequencies used in the transmissions.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS).gender" ><strong>MSRS.gender</strong></a>
<p>Gender. Default "female".</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS).google" ><strong>MSRS.google</strong></a>
<p>Full path google credentials JSON file, e.g. "C:\Users\username\Downloads\service-account-file.json".</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS).lid" ><strong>MSRS.lid</strong></a>
<p>Class id string for output to DCS log file.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#table
<a id="#(MSRS).modulations" ><strong>MSRS.modulations</strong></a>
<p>Modulations used in the transmissions.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS).name" ><strong>MSRS.name</strong></a>
<p>Name. Default "DCS-STTS".</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS).path" ><strong>MSRS.path</strong></a>
<p>Path to the SRS exe. This includes the final slash "/".</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#number
<a id="#(MSRS).port" ><strong>MSRS.port</strong></a>
<p>Port. Default 5002.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<a id="#(MSRS).provider" ><strong>MSRS.provider</strong></a>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<a id="#(MSRS).region" ><strong>MSRS.region</strong></a>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<a id="#(MSRS).secret" ><strong>MSRS.secret</strong></a>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS).ttsprovider" ><strong>MSRS.ttsprovider</strong></a>
<p>Default provider TTS backend, e.g. "Google" or "Microsoft", default is Microsoft</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS).version" ><strong>MSRS.version</strong></a>
<p>MSRS class version.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS).voice" ><strong>MSRS.voice</strong></a>
<p>Specific voce.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#number
<a id="#(MSRS).volume" ><strong>MSRS.volume</strong></a>
<p>Volume between 0 (min) and 1 (max). Default 1.</p>
</div>
</div>
<div class="functions w3-container w3-theme-l2">
<h2>Function(s)</h2>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).AddFrequencies" ><strong>MSRS:AddFrequencies(Frequencies)</strong></a></h2>
</div>
<p>Add frequencies.</p>
<div id= "#Functions##AddFrequencies" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#table
<strong><strong>Frequencies</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Frequencies in MHz. Can also be given as a #number if only one frequency should be used.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(MSRS)">#MSRS</a>:</p>
</div>
<div class="w3-half">
<p>self</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).AddModulations" ><strong>MSRS:AddModulations(Modulations)</strong></a></h2>
</div>
<p>Add modulations.</p>
<div id= "#Functions##AddModulations" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#table
<strong><strong>Modulations</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Modulations. Can also be given as a #number if only one modulation should be used.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(MSRS)">#MSRS</a>:</p>
</div>
<div class="w3-half">
<p>self</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).GetCoalition" ><strong>MSRS:GetCoalition()</strong></a></h2>
</div>
<p>Get coalition.</p>
<div id= "#Functions##GetCoalition" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p>#number:</p>
</div>
<div class="w3-half">
<p>Coalition.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).GetFrequencies" ><strong>MSRS:GetFrequencies(Frequencies)</strong></a></h2>
</div>
<p>Get frequencies.</p>
<div id= "#Functions##GetFrequencies" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#table
<strong><strong>Frequencies</strong></strong>
</p>
</div>
<div class="w3-half">
<p>in MHz.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).GetLabel" ><strong>MSRS:GetLabel()</strong></a></h2>
</div>
<p>Get label.</p>
<div id= "#Functions##GetLabel" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p>#number:</p>
</div>
<div class="w3-half">
<p>Label.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).GetModulations" ><strong>MSRS:GetModulations(Modulations)</strong></a></h2>
</div>
<p>Get modulations.</p>
<div id= "#Functions##GetModulations" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#table
<strong><strong>Modulations</strong></strong>
</p>
</div>
<div class="w3-half">
<p></p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).GetPath" ><strong>MSRS:GetPath()</strong></a></h2>
</div>
<p>Get path to SRS directory.</p>
<div id= "#Functions##GetPath" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p>#string:</p>
</div>
<div class="w3-half">
<p>Path to the directory. This includes the final slash "/".</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).GetPort" ><strong>MSRS:GetPort()</strong></a></h2>
</div>
<p>Get port.</p>
<div id= "#Functions##GetPort" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p>#number:</p>
</div>
<div class="w3-half">
<p>Port.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).GetVolume" ><strong>MSRS:GetVolume()</strong></a></h2>
</div>
<p>Get SRS volume.</p>
<div id= "#Functions##GetVolume" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p>#number:</p>
</div>
<div class="w3-half">
<p>Volume Volume - 1.0 is max, 0.0 is silence</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).Help" ><strong>MSRS:Help()</strong></a></h2>
</div>
<p>Print SRS STTS help to DCS log file.</p>
<div id= "#Functions##Help" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(MSRS)">#MSRS</a>:</p>
</div>
<div class="w3-half">
<p>self</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).LoadConfigFile" ><strong>MSRS:LoadConfigFile(Path, Filename)</strong></a></h2>
</div>
<p>Get central SRS configuration to be able to play tts over SRS radio using the <code>DCS-SR-ExternalAudio.exe</code>.</p>
<div id= "#Functions##LoadConfigFile" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>Path</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Path to config file, defaults to "C:\Users\<yourname>\Saved Games\DCS\Config"</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>Filename</strong></strong>
</p>
</div>
<div class="w3-half">
<p>File to load, defaults to "Moose_MSRS.lua"</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p>#boolean:</p>
</div>
<div class="w3-half">
<p>success</p>
</div>
</div>
<h2><strong>Usage:</strong></h2>
<pre class="example"><code> 0) Benefits: Centralize configuration of SRS, keep paths and keys out of the mission source code, making it safer and easier to move missions to/between servers,
and also make config easier to use in the code.
1) Create a config file named "Moose_MSRS.lua" at this location "C:\Users\&lt;yourname&gt;\Saved Games\DCS\Config" (or wherever your Saved Games folder resides).
2) The file needs the following structure:
-- Moose MSRS default Config
MSRS_Config = {
Path = "C:\\Program Files\\DCS-SimpleRadio-Standalone", -- adjust as needed, note double \\
Port = 5002, -- adjust as needed
Frequency = {127,243}, -- must be a table, 1..n entries!
Modulation = {0,0}, -- must be a table, 1..n entries, one for each frequency!
Volume = 1.0, -- 0.0 to 1.0
Coalition = 0, -- 0 = Neutral, 1 = Red, 2 = Blue
Coordinate = {0,0,0}, -- x,y,altitude - optional, all in meters
Culture = "en-GB",
Gender = "male",
Google = "C:\\Program Files\\DCS-SimpleRadio-Standalone\\yourfilename.json", -- path to google json key file - optional.
Label = "MSRS",
Voice = "Microsoft Hazel Desktop",
Provider = "Microsoft", -- this is the default TTS provider, e.g. "Google" or "Microsoft"
-- gRPC (optional)
GRPC = { -- see https://github.com/DCS-gRPC/rust-server
coalition = "blue", -- blue, red, neutral
DefaultProvider = "gcloud", -- win, gcloud, aws, or azure, some of the values below depend on your cloud provider
gcloud = {
key = "&lt;API Google Key&gt;", -- for gRPC Google API key
--secret = "", -- needed for aws
--region = "",-- needed for aws
defaultVoice = MSRS.Voices.Google.Standard.en_GB_Standard_F,
},
win = {
defaultVoice = "Hazel",
},
}
}
3) The config file is automatically loaded when Moose starts. YOu can also load the config into the MSRS raw class manually before you do anything else:
MSRS.LoadConfigFile() -- Note the "." here
Optionally, your might want to provide a specific path and filename:
MSRS.LoadConfigFile(nil,MyPath,MyFilename) -- Note the "." here
This will populate variables for the MSRS raw class and all instances you create with e.g. `mysrs = MSRS:New()`
Optionally you can also load this per **single instance** if so needed, i.e.
mysrs:LoadConfigFile(Path,Filename)
4) Use the config in your code like so, variable names are basically the same as in the config file, but all lower case, examples:
-- Needed once only
MESSAGE.SetMSRS(MSRS.path,nil,MSRS.google,243,radio.modulation.AM,nil,nil,
MSRS.Voices.Google.Standard.de_DE_Standard_B,coalition.side.BLUE)
-- later on in your code
MESSAGE:New("Test message!",15,"SPAWN"):ToSRS(243,radio.modulation.AM,nil,nil,MSRS.Voices.Google.Standard.fr_FR_Standard_C)
-- Create new ATIS as usual
atis=ATIS:New(AIRBASE.Caucasus.Batumi, 123, radio.modulation.AM)
atis:SetSRS(nil,nil,nil,MSRS.Voices.Google.Standard.en_US_Standard_H)
--Start ATIS
atis:Start()</code></pre>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).New" ><strong>MSRS:New(PathToSRS, Frequency, Modulation, Volume, AltBackend)</strong></a></h2>
</div>
<p>Create a new MSRS object.</p>
<div id= "#Functions##New" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>PathToSRS</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Path to the directory, where SRS is located.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>Frequency</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Radio frequency in MHz. Default 143.00 MHz. Can also be given as a #table of multiple frequencies.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>Modulation</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Radio modulation: 0=AM (default), 1=FM. See <code>radio.modulation.AM</code> and <code>radio.modulation.FM</code> enumerators. Can also be given as a #table of multiple modulations.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>Volume</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Volume - 1.0 is max, 0.0 is silence</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#table
<strong><strong>AltBackend</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Optional table containing tables 'Functions' and 'Vars' which add/replace functions and variables for the MSRS instance to allow alternate backends for transmitting to SRS.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(MSRS)">#MSRS</a>:</p>
</div>
<div class="w3-half">
<p>self</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).PlaySoundFile" ><strong>MSRS:PlaySoundFile(Soundfile, Delay)</strong></a></h2>
</div>
<p>Play sound file (ogg or mp3) via SRS.</p>
<div id= "#Functions##PlaySoundFile" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Sound.SoundOutput.html##(SOUNDFILE)">Sound.SoundOutput#SOUNDFILE</a>
<strong><strong>Soundfile</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Sound file to play.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>Delay</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Delay in seconds, before the sound file is played.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(MSRS)">#MSRS</a>:</p>
</div>
<div class="w3-half">
<p>self</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).PlaySoundText" ><strong>MSRS:PlaySoundText(SoundText, Delay)</strong></a></h2>
</div>
<p>Play a SOUNDTEXT text-to-speech object.</p>
<div id= "#Functions##PlaySoundText" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Sound.SoundOutput.html##(SOUNDTEXT)">Sound.SoundOutput#SOUNDTEXT</a>
<strong><strong>SoundText</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Sound text.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>Delay</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Delay in seconds, before the sound file is played.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(MSRS)">#MSRS</a>:</p>
</div>
<div class="w3-half">
<p>self</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).PlayText" ><strong>MSRS:PlayText(Text, Delay, Coordinate)</strong></a></h2>
</div>
<p>Play text message via STTS.</p>
<div id= "#Functions##PlayText" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>Text</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Text message.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>Delay</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Delay in seconds, before the message is played.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Point.html##(COORDINATE)">Core.Point#COORDINATE</a>
<strong><strong>Coordinate</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Coordinate.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(MSRS)">#MSRS</a>:</p>
</div>
<div class="w3-half">
<p>self</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).PlayTextExt" ><strong>MSRS:PlayTextExt(Text, Delay, Frequencies, Modulations, Gender, Culture, Voice, Volume, Label, Coordinate)</strong></a></h2>
</div>
<p>Play text message via STTS with explicitly specified options.</p>
<div id= "#Functions##PlayTextExt" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>Text</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Text message.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>Delay</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Delay in seconds, before the message is played.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#table
<strong><strong>Frequencies</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Radio frequencies.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#table
<strong><strong>Modulations</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Radio modulations.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>Gender</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Gender.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>Culture</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Culture.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>Voice</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Voice.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>Volume</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Volume.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>Label</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Label.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Point.html##(COORDINATE)">Core.Point#COORDINATE</a>
<strong><strong>Coordinate</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Coordinate.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(MSRS)">#MSRS</a>:</p>
</div>
<div class="w3-half">
<p>self</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).PlayTextFile" ><strong>MSRS:PlayTextFile(TextFile, Delay)</strong></a></h2>
</div>
<p>Play text file via STTS.</p>
<div id= "#Functions##PlayTextFile" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>TextFile</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Full path to the file.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>Delay</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Delay in seconds, before the message is played.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(MSRS)">#MSRS</a>:</p>
</div>
<div class="w3-half">
<p>self</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).ResetDefaultBackend" ><strong>MSRS.ResetDefaultBackend()</strong></a></h2>
</div>
<p>Restores default SRS backend (DCS-SR-ExternalAudio.exe) to be used by all new MSRS class instances to transmit over SRS.</p>
<div id= "#Functions##ResetDefaultBackend" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p>#boolean:</p>
</div>
<div class="w3-half">
<p>Returns 'true' on success.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).SetCoalition" ><strong>MSRS:SetCoalition(Coalition)</strong></a></h2>
</div>
<p>Set coalition.</p>
<div id= "#Functions##SetCoalition" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>Coalition</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Coalition. Default 0.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(MSRS)">#MSRS</a>:</p>
</div>
<div class="w3-half">
<p>self</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).SetCoordinate" ><strong>MSRS:SetCoordinate(Coordinate)</strong></a></h2>
</div>
<p>Set the coordinate from which the transmissions will be broadcasted.</p>
<div id= "#Functions##SetCoordinate" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Point.html##(COORDINATE)">Core.Point#COORDINATE</a>
<strong><strong>Coordinate</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Origin of the transmission.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(MSRS)">#MSRS</a>:</p>
</div>
<div class="w3-half">
<p>self</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).SetCulture" ><strong>MSRS:SetCulture(Culture)</strong></a></h2>
</div>
<p>Set culture.</p>
<div id= "#Functions##SetCulture" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>Culture</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Culture, e.g. "en-GB" (default).</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(MSRS)">#MSRS</a>:</p>
</div>
<div class="w3-half">
<p>self</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).SetDefaultBackend" ><strong>MSRS.SetDefaultBackend(Backend)</strong></a></h2>
</div>
<p>Sets an alternate SRS backend to be used by MSRS to transmit over SRS for all new MSRS class instances.</p>
<div id= "#Functions##SetDefaultBackend" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#table
<strong><strong>Backend</strong></strong>
</p>
</div>
<div class="w3-half">
<p>A table containing a table <code>Functions</code> with new/replacement class functions and <code>Vars</code> with new/replacement variables. </p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p>#boolean:</p>
</div>
<div class="w3-half">
<p>Returns 'true' on success.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).SetDefaultBackendGRPC" ><strong>MSRS.SetDefaultBackendGRPC()</strong></a></h2>
</div>
<p>Sets DCS-gRPC as the default SRS backend for all new MSRS class instances.</p>
<div id= "#Functions##SetDefaultBackendGRPC" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p>#boolean:</p>
</div>
<div class="w3-half">
<p>Returns 'true' on success.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).SetDefaultVoice" ><strong>MSRS:SetDefaultVoice(Voice)</strong></a></h2>
</div>
<p>Set to use a specific voice.</p>
<p>Will override gender and culture settings. </p>
<div id= "#Functions##SetDefaultVoice" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>Voice</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Voice.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(MSRS)">#MSRS</a>:</p>
</div>
<div class="w3-half">
<p>self</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).SetFrequencies" ><strong>MSRS:SetFrequencies(Frequencies)</strong></a></h2>
</div>
<p>Set frequencies.</p>
<div id= "#Functions##SetFrequencies" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#table
<strong><strong>Frequencies</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Frequencies in MHz. Can also be given as a #number if only one frequency should be used.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(MSRS)">#MSRS</a>:</p>
</div>
<div class="w3-half">
<p>self</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).SetGender" ><strong>MSRS:SetGender(Gender)</strong></a></h2>
</div>
<p>Set gender.</p>
<div id= "#Functions##SetGender" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>Gender</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Gender: "male" or "female" (default).</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(MSRS)">#MSRS</a>:</p>
</div>
<div class="w3-half">
<p>self</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).SetGoogle" ><strong>MSRS:SetGoogle(PathToCredentials)</strong></a></h2>
</div>
<p>Use google text-to-speech credentials.</p>
<p>Also sets Google as default TTS provider.</p>
<div id= "#Functions##SetGoogle" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>PathToCredentials</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Full path to the google credentials JSON file, e.g. "C:\Users\username\Downloads\service-account-file.json". Can also be the Google API key.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(MSRS)">#MSRS</a>:</p>
</div>
<div class="w3-half">
<p>self</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).SetGoogleAPIKey" ><strong>MSRS:SetGoogleAPIKey(APIKey)</strong></a></h2>
</div>
<p>gRPC Backend: Use google text-to-speech set the API key.</p>
<div id= "#Functions##SetGoogleAPIKey" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>APIKey</strong></strong>
</p>
</div>
<div class="w3-half">
<p>API Key, usually a string of length 40 with characters and numbers.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(MSRS)">#MSRS</a>:</p>
</div>
<div class="w3-half">
<p>self</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).SetLabel" ><strong>MSRS:SetLabel(Label)</strong></a></h2>
</div>
<p>Set label.</p>
<div id= "#Functions##SetLabel" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>Label</strong></strong>
</p>
</div>
<div class="w3-half">
<p> Default "ROBOT"</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(MSRS)">#MSRS</a>:</p>
</div>
<div class="w3-half">
<p>self</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).SetModulations" ><strong>MSRS:SetModulations(Modulations)</strong></a></h2>
</div>
<p>Set modulations.</p>
<div id= "#Functions##SetModulations" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#table
<strong><strong>Modulations</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Modulations. Can also be given as a #number if only one modulation should be used.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(MSRS)">#MSRS</a>:</p>
</div>
<div class="w3-half">
<p>self</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).SetPath" ><strong>MSRS:SetPath(Path)</strong></a></h2>
</div>
<p>Set path to SRS install directory.</p>
<p>More precisely, path to where the DCS-</p>
<div id= "#Functions##SetPath" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>Path</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Path to the directory, where the sound file is located. This does <strong>not</strong> contain a final backslash or slash.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(MSRS)">#MSRS</a>:</p>
</div>
<div class="w3-half">
<p>self</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).SetPort" ><strong>MSRS:SetPort(Port)</strong></a></h2>
</div>
<p>Set port.</p>
<div id= "#Functions##SetPort" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>Port</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Port. Default 5002.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(MSRS)">#MSRS</a>:</p>
</div>
<div class="w3-half">
<p>self</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).SetTTSProviderGoogle" ><strong>MSRS:SetTTSProviderGoogle()</strong></a></h2>
</div>
<p>Use Google text-to-speech as default.</p>
<div id= "#Functions##SetTTSProviderGoogle" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(MSRS)">#MSRS</a>:</p>
</div>
<div class="w3-half">
<p>self</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).SetTTSProviderMicrosoft" ><strong>MSRS:SetTTSProviderMicrosoft()</strong></a></h2>
</div>
<p>Use Microsoft text-to-speech as default.</p>
<div id= "#Functions##SetTTSProviderMicrosoft" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(MSRS)">#MSRS</a>:</p>
</div>
<div class="w3-half">
<p>self</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).SetVoice" ><strong>MSRS:SetVoice(Voice)</strong></a></h2>
</div>
<p>Set to use a specific voice.</p>
<p>Will override gender and culture settings. </p>
<div id= "#Functions##SetVoice" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>Voice</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Voice.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(MSRS)">#MSRS</a>:</p>
</div>
<div class="w3-half">
<p>self</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).SetVolume" ><strong>MSRS:SetVolume(Volume)</strong></a></h2>
</div>
<p>Set SRS volume.</p>
<div id= "#Functions##SetVolume" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>Volume</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Volume - 1.0 is max, 0.0 is silence</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(MSRS)">#MSRS</a>:</p>
</div>
<div class="w3-half">
<p>self</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS)._ExecCommand" ><strong>MSRS:_ExecCommand(command)</strong></a></h2>
</div>
<p>Execute SRS command to play sound using the <code>DCS-SR-ExternalAudio.exe</code>.</p>
<div id= "#Functions##_ExecCommand" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>command</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Command to executer</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p>#number:</p>
</div>
<div class="w3-half">
<p>Return value of os.execute() command.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS)._GetCommand" ><strong>MSRS:_GetCommand(freqs, modus, coal, gender, voice, culture, volume, speed, port, label, coordinate)</strong></a></h2>
</div>
<p>Get SRS command to play sound using the <code>DCS-SR-ExternalAudio.exe</code>.</p>
<div id= "#Functions##_GetCommand" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#table
<strong><strong>freqs</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Frequencies in MHz.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#table
<strong><strong>modus</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Modulations.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>coal</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Coalition.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>gender</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Gender.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>voice</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Voice.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>culture</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Culture.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>volume</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Volume.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>speed</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Speed.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>port</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Port.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>label</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Label, defaults to "ROBOT" (displayed sender name in the radio overlay of SRS) - No spaces allowed!</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Point.html##(COORDINATE)">Core.Point#COORDINATE</a>
<strong><strong>coordinate</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Coordinate.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p>#string:</p>
</div>
<div class="w3-half">
<p>Command.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS)._GetLatLongAlt" ><strong>MSRS:_GetLatLongAlt(Coordinate)</strong></a></h2>
</div>
<p>Get lat, long and alt from coordinate.</p>
<div id= "#Functions##_GetLatLongAlt" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Point.html##(Coordinate)">Core.Point#Coordinate</a>
<strong><strong>Coordinate</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Coordinate. Can also be a DCS#Vec3.</p>
</div>
</div>
<h2><strong>Return values:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p>#number:</p>
</div>
<div class="w3-half">
<p>Latitude.</p>
</div>
<div class="w3-half">
<p>#number:</p>
</div>
<div class="w3-half">
<p>Longitude.</p>
</div>
<div class="w3-half">
<p>#number:</p>
</div>
<div class="w3-half">
<p>Altitude.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS)._NewAltBackend" ><strong>MSRS:_NewAltBackend(A, Backend)</strong></a></h2>
</div>
<p>Adds or replaces functions and variables in the current MSRS class instance to enable an alternate backends for transmitting to SRS.</p>
<div id= "#Functions##_NewAltBackend" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRS</p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#table
<strong><strong>A</strong></strong>
</p>
</div>
<div class="w3-half">
<p>table containing a table <code>Functions</code> with new/replacement class functions and <code>Vars</code> with new/replacement variables. </p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Backend</strong></strong>
</p>
</div>
<div class="w3-half">
<p></p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(MSRS)">#MSRS</a>:</p>
</div>
<div class="w3-half">
<p>self</p>
</div>
</div>
</div>
</div>
</div>
<div class="fields w3-container w3-theme-l2">
<h2>Field(s)</h2>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<a id="#(MSRS).APIKey" ><strong>MSRS.APIKey</strong></a>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#table
<a id="#(MSRS).AltBackend" ><strong>MSRS.AltBackend</strong></a>
<p>Table containing functions and variables to enable an alternate backend to transmit to SRS.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS).ClassName" ><strong>MSRS.ClassName</strong></a>
<p>Name of the class.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS).ConfigFileName" ><strong>MSRS.ConfigFileName</strong></a>
<p>Name of the standard config file</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS).ConfigFilePath" ><strong>MSRS.ConfigFilePath</strong></a>
<p>Path to the standard config file</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#boolean
<a id="#(MSRS).ConfigLoaded" ><strong>MSRS.ConfigLoaded</strong></a>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<a href="##(MSRS.GRPCOptions)">#MSRS.GRPCOptions</a>
<a id="#(MSRS).GRPCOptions" ><strong>MSRS.GRPCOptions</strong></a>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS).Label" ><strong>MSRS.Label</strong></a>
<p>Label showing up on the SRS radio overlay. Default is "ROBOT". No spaces allowed.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<a href="##(MSRS.Voices)">#MSRS.Voices</a>
<a id="#(MSRS).Voices" ><strong>MSRS.Voices</strong></a>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#number
<a id="#(MSRS).coalition" ><strong>MSRS.coalition</strong></a>
<p>Coalition of the transmission.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<a href="Core.Point.html##(COORDINATE)">Core.Point#COORDINATE</a>
<a id="#(MSRS).coordinate" ><strong>MSRS.coordinate</strong></a>
<p>Coordinate from where the transmission is send.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS).culture" ><strong>MSRS.culture</strong></a>
<p>Culture. Default "en-GB".</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<a id="#(MSRS).defaultVoice" ><strong>MSRS.defaultVoice</strong></a>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#table
<a id="#(MSRS).frequencies" ><strong>MSRS.frequencies</strong></a>
<p>Frequencies used in the transmissions.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS).gender" ><strong>MSRS.gender</strong></a>
<p>Gender. Default "female".</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS).google" ><strong>MSRS.google</strong></a>
<p>Full path google credentials JSON file, e.g. "C:\Users\username\Downloads\service-account-file.json".</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS).lid" ><strong>MSRS.lid</strong></a>
<p>Class id string for output to DCS log file.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#table
<a id="#(MSRS).modulations" ><strong>MSRS.modulations</strong></a>
<p>Modulations used in the transmissions.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS).name" ><strong>MSRS.name</strong></a>
<p>Name. Default "DCS-STTS".</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS).path" ><strong>MSRS.path</strong></a>
<p>Path to the SRS exe. This includes the final slash "/".</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#number
<a id="#(MSRS).port" ><strong>MSRS.port</strong></a>
<p>Port. Default 5002.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<a id="#(MSRS).provider" ><strong>MSRS.provider</strong></a>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<a id="#(MSRS).region" ><strong>MSRS.region</strong></a>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<a id="#(MSRS).secret" ><strong>MSRS.secret</strong></a>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS).ttsprovider" ><strong>MSRS.ttsprovider</strong></a>
<p>Default provider TTS backend, e.g. "Google" or "Microsoft", default is Microsoft</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS).version" ><strong>MSRS.version</strong></a>
<p>MSRS class version.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS).voice" ><strong>MSRS.voice</strong></a>
<p>Specific voce.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#number
<a id="#(MSRS).volume" ><strong>MSRS.volume</strong></a>
<p>Volume between 0 (min) and 1 (max). Default 1.</p>
</div>
</div>
<div class="functions w3-container w3-theme-l2">
<h2>Function(s)</h2>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).ClearState" ><strong>MSRS:ClearState(Object, StateName)</strong></a></h2>
</div>
<p>Clear the state of an object.</p>
<div id= "#Functions##ClearState" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Object</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The object that holds the Value set by the Key.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>StateName</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The key that is should be cleared.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).CreateEventBirth" ><strong>MSRS:CreateEventBirth(EventTime, Initiator, IniUnitName, place, subplace)</strong></a></h2>
</div>
<p>Creation of a Birth Event.</p>
<div id= "#Functions##CreateEventBirth" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="DCS.html##(Time)">DCS#Time</a>
<strong><strong>EventTime</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The time stamp of the event.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="DCS.html##(Object)">DCS#Object</a>
<strong><strong>Initiator</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The initiating object of the event.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>IniUnitName</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The initiating unit name.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>place</strong></strong>
</p>
</div>
<div class="w3-half">
<p></p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>subplace</strong></strong>
</p>
</div>
<div class="w3-half">
<p></p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).CreateEventCrash" ><strong>MSRS:CreateEventCrash(EventTime, Initiator, IniObjectCategory)</strong></a></h2>
</div>
<p>Creation of a Crash Event.</p>
<div id= "#Functions##CreateEventCrash" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="DCS.html##(Time)">DCS#Time</a>
<strong><strong>EventTime</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The time stamp of the event.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="DCS.html##(Object)">DCS#Object</a>
<strong><strong>Initiator</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The initiating object of the event.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>IniObjectCategory</strong></strong>
</p>
</div>
<div class="w3-half">
<p></p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).CreateEventDead" ><strong>MSRS:CreateEventDead(EventTime, Initiator, IniObjectCategory)</strong></a></h2>
</div>
<p>Creation of a Dead Event.</p>
<div id= "#Functions##CreateEventDead" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="DCS.html##(Time)">DCS#Time</a>
<strong><strong>EventTime</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The time stamp of the event.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="DCS.html##(Object)">DCS#Object</a>
<strong><strong>Initiator</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The initiating object of the event.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>IniObjectCategory</strong></strong>
</p>
</div>
<div class="w3-half">
<p></p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).CreateEventPlayerEnterAircraft" ><strong>MSRS:CreateEventPlayerEnterAircraft(PlayerUnit)</strong></a></h2>
</div>
<p>Creation of a <code>S_EVENT_PLAYER_ENTER_AIRCRAFT</code> event.</p>
<div id= "#Functions##CreateEventPlayerEnterAircraft" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Wrapper.Unit.html##(UNIT)">Wrapper.Unit#UNIT</a>
<strong><strong>PlayerUnit</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The aircraft unit the player entered.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).CreateEventRemoveUnit" ><strong>MSRS:CreateEventRemoveUnit(EventTime, Initiator)</strong></a></h2>
</div>
<p>Creation of a Remove Unit Event.</p>
<div id= "#Functions##CreateEventRemoveUnit" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="DCS.html##(Time)">DCS#Time</a>
<strong><strong>EventTime</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The time stamp of the event.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="DCS.html##(Object)">DCS#Object</a>
<strong><strong>Initiator</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The initiating object of the event.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).CreateEventTakeoff" ><strong>MSRS:CreateEventTakeoff(EventTime, Initiator)</strong></a></h2>
</div>
<p>Creation of a Takeoff Event.</p>
<div id= "#Functions##CreateEventTakeoff" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="DCS.html##(Time)">DCS#Time</a>
<strong><strong>EventTime</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The time stamp of the event.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="DCS.html##(Object)">DCS#Object</a>
<strong><strong>Initiator</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The initiating object of the event.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).CreateEventUnitLost" ><strong>MSRS:CreateEventUnitLost(EventTime, Initiator)</strong></a></h2>
</div>
<p>Creation of a Crash Event.</p>
<div id= "#Functions##CreateEventUnitLost" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="DCS.html##(Time)">DCS#Time</a>
<strong><strong>EventTime</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The time stamp of the event.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="DCS.html##(Object)">DCS#Object</a>
<strong><strong>Initiator</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The initiating object of the event.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).E" ><strong>MSRS:E(Arguments)</strong></a></h2>
</div>
<p>Log an exception which will be traced always.</p>
<p>Can be anywhere within the function logic.</p>
<div id= "#Functions##E" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Arguments</strong></strong>
</p>
</div>
<div class="w3-half">
<p>A #table or any field.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).EventDispatcher" ><strong>MSRS:EventDispatcher()</strong></a></h2>
</div>
<p>Returns the event dispatcher</p>
<div id= "#Functions##EventDispatcher" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a>:</p>
</div>
<div class="w3-half">
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).EventRemoveAll" ><strong>MSRS:EventRemoveAll()</strong></a></h2>
</div>
<p>Remove all subscribed events</p>
<div id= "#Functions##EventRemoveAll" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(BASE)">#BASE</a>:</p>
</div>
<div class="w3-half">
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).F" ><strong>MSRS:F(Arguments)</strong></a></h2>
</div>
<p>Trace a function call.</p>
<p>Must be at the beginning of the function logic.</p>
<div id= "#Functions##F" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Arguments</strong></strong>
</p>
</div>
<div class="w3-half">
<p>A #table or any field.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).F2" ><strong>MSRS:F2(Arguments)</strong></a></h2>
</div>
<p>Trace a function call level 2.</p>
<p>Must be at the beginning of the function logic.</p>
<div id= "#Functions##F2" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Arguments</strong></strong>
</p>
</div>
<div class="w3-half">
<p>A #table or any field.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).F3" ><strong>MSRS:F3(Arguments)</strong></a></h2>
</div>
<p>Trace a function call level 3.</p>
<p>Must be at the beginning of the function logic.</p>
<div id= "#Functions##F3" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Arguments</strong></strong>
</p>
</div>
<div class="w3-half">
<p>A #table or any field.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).GetClassID" ><strong>MSRS:GetClassID()</strong></a></h2>
</div>
<p>Get the ClassID of the class instance.</p>
<div id= "#Functions##GetClassID" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p>#string:</p>
</div>
<div class="w3-half">
<p>The ClassID of the class instance.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).GetClassName" ><strong>MSRS:GetClassName()</strong></a></h2>
</div>
<p>Get the ClassName of the class instance.</p>
<div id= "#Functions##GetClassName" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p>#string:</p>
</div>
<div class="w3-half">
<p>The ClassName of the class instance.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).GetClassNameAndID" ><strong>MSRS:GetClassNameAndID()</strong></a></h2>
</div>
<p>Get the ClassName + ClassID of the class instance.</p>
<p>The ClassName + ClassID is formatted as '%s#%09d'.</p>
<div id= "#Functions##GetClassNameAndID" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p>#string:</p>
</div>
<div class="w3-half">
<p>The ClassName + ClassID of the class instance.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).GetEventPriority" ><strong>MSRS:GetEventPriority()</strong></a></h2>
</div>
<p>Get the Class <a href="Core.Event.html">Core.Event</a> processing Priority.</p>
<p>The Event processing Priority is a number from 1 to 10,
reflecting the order of the classes subscribed to the Event to be processed.</p>
<div id= "#Functions##GetEventPriority" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p>#number:</p>
</div>
<div class="w3-half">
<p>The <a href="Core.Event.html">Core.Event</a> processing Priority.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).GetParent" ><strong>MSRS:GetParent(Child, FromClass)</strong></a></h2>
</div>
<p>This is the worker method to retrieve the Parent class.</p>
<p>Note that the Parent class must be passed to call the parent class method.</p>
<pre><code>self:GetParent(self):ParentMethod()
</code></pre>
<div id= "#Functions##GetParent" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="##(BASE)">#BASE</a>
<strong><strong>Child</strong></strong>
</p>
</div>
<div class="w3-half">
<p>This is the Child class from which the Parent class needs to be retrieved.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="##(BASE)">#BASE</a>
<strong><strong>FromClass</strong></strong>
</p>
</div>
<div class="w3-half">
<p>(Optional) The class from which to get the parent.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(BASE)">#BASE</a>:</p>
</div>
<div class="w3-half">
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).GetState" ><strong>MSRS:GetState(Object, Key)</strong></a></h2>
</div>
<p>Get a Value given a Key from the Object.</p>
<p>Note that if the Object is destroyed, set to nil, or garbage collected, then the Values and Keys will also be gone.</p>
<div id= "#Functions##GetState" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Object</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The object that holds the Value set by the Key.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Key</strong></strong>
</p>
</div>
<div class="w3-half">
<p>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!</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
</div>
<div class="w3-half">
<p>The Value retrieved or nil if the Key was not found and thus the Value could not be retrieved.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).HandleEvent" ><strong>MSRS:HandleEvent(EventID, EventFunction)</strong></a></h2>
</div>
<p>Subscribe to a DCS Event.</p>
<div id= "#Functions##HandleEvent" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTS)">Core.Event#EVENTS</a>
<strong><strong>EventID</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Event ID.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#function
<strong><strong>EventFunction</strong></strong>
</p>
</div>
<div class="w3-half">
<p>(optional) The function to be called when the event occurs for the unit.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(BASE)">#BASE</a>:</p>
</div>
<div class="w3-half">
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).I" ><strong>MSRS:I(Arguments)</strong></a></h2>
</div>
<p>Log an information which will be traced always.</p>
<p>Can be anywhere within the function logic.</p>
<div id= "#Functions##I" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Arguments</strong></strong>
</p>
</div>
<div class="w3-half">
<p>A #table or any field.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).Inherit" ><strong>MSRS:Inherit(Child, Parent)</strong></a></h2>
</div>
<p>This is the worker method to inherit from a parent class.</p>
<div id= "#Functions##Inherit" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Child</strong></strong>
</p>
</div>
<div class="w3-half">
<p>is the Child class that inherits.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="##(BASE)">#BASE</a>
<strong><strong>Parent</strong></strong>
</p>
</div>
<div class="w3-half">
<p>is the Parent class that the Child inherits from.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(BASE)">#BASE</a>:</p>
</div>
<div class="w3-half">
<p>Child</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).IsInstanceOf" ><strong>MSRS:IsInstanceOf(ClassName)</strong></a></h2>
</div>
<p>This is the worker method to check if an object is an (sub)instance of a class.</p>
<h3>Examples:</h3>
<ul>
<li><p>ZONE:New( 'some zone' ):IsInstanceOf( ZONE ) will return true</p></li>
<li><p>ZONE:New( 'some zone' ):IsInstanceOf( 'ZONE' ) will return true</p></li>
<li><p>ZONE:New( 'some zone' ):IsInstanceOf( 'zone' ) will return true</p></li>
<li><p>ZONE:New( 'some zone' ):IsInstanceOf( 'BASE' ) will return true</p></li>
<li><p>ZONE:New( 'some zone' ):IsInstanceOf( 'GROUP' ) will return false</p></li>
</ul>
<div id= "#Functions##IsInstanceOf" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>ClassName</strong></strong>
</p>
</div>
<div class="w3-half">
<p>is the name of the class or the class itself to run the check against</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p>#boolean:</p>
</div>
<div class="w3-half">
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).IsTrace" ><strong>MSRS:IsTrace()</strong></a></h2>
</div>
<p>Enquires if tracing is on (for the class).</p>
<div id= "#Functions##IsTrace" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p>#boolean:</p>
</div>
<div class="w3-half">
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).New" ><strong>MSRS:New()</strong></a></h2>
</div>
<p>BASE constructor.</p>
<p>This is an example how to use the BASE:New() constructor in a new class definition when inheriting from BASE.</p>
<pre><code>function EVENT:New()
local self = BASE:Inherit( self, BASE:New() ) -- #EVENT
return self
end
</code></pre>
<div id= "#Functions##New" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(BASE)">#BASE</a>:</p>
</div>
<div class="w3-half">
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEvent" ><strong>MSRS:OnEvent(EventData)</strong></a></h2>
</div>
<p>Occurs when an Event for an object is triggered.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
initiator : The unit that triggered the event. </p>
<div id= "#Functions##OnEvent" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventBDA" ><strong>MSRS:OnEventBDA(EventData)</strong></a></h2>
</div>
<p>BDA.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.</p>
<div id= "#Functions##OnEventBDA" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventBaseCaptured" ><strong>MSRS:OnEventBaseCaptured(EventData)</strong></a></h2>
</div>
<p>Occurs when a ground unit captures either an airbase or a farp.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> 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. </p>
<div id= "#Functions##OnEventBaseCaptured" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventBirth" ><strong>MSRS:OnEventBirth(EventData)</strong></a></h2>
</div>
<p>Occurs when any object is spawned into the mission.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
initiator : The unit that was spawned </p>
<div id= "#Functions##OnEventBirth" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventCrash" ><strong>MSRS:OnEventCrash(EventData)</strong></a></h2>
</div>
<p>Occurs when any aircraft crashes into the ground and is completely destroyed.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
initiator : The unit that has crashed </p>
<div id= "#Functions##OnEventCrash" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventDead" ><strong>MSRS:OnEventDead(EventData)</strong></a></h2>
</div>
<p>Occurs when an object is dead.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
initiator : The unit that is dead. </p>
<div id= "#Functions##OnEventDead" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventDetailedFailure" ><strong>MSRS:OnEventDetailedFailure(EventData)</strong></a></h2>
</div>
<p>Unknown precisely what creates this event, likely tied into newer damage model.</p>
<p>Will update this page when new information become available.</p>
<ul>
<li>initiator: The unit that had the failure.</li>
</ul>
<div id= "#Functions##OnEventDetailedFailure" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventDiscardChairAfterEjection" ><strong>MSRS:OnEventDiscardChairAfterEjection(EventData)</strong></a></h2>
</div>
<p>Discard chair after ejection.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.</p>
<div id= "#Functions##OnEventDiscardChairAfterEjection" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventEjection" ><strong>MSRS:OnEventEjection(EventData)</strong></a></h2>
</div>
<p>Occurs when a pilot ejects from an aircraft
Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.</p>
<p>initiator : The unit that has ejected </p>
<div id= "#Functions##OnEventEjection" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventEngineShutdown" ><strong>MSRS:OnEventEngineShutdown(EventData)</strong></a></h2>
</div>
<p>Occurs when any aircraft shuts down its engines.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
initiator : The unit that is stopping its engines. </p>
<div id= "#Functions##OnEventEngineShutdown" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventEngineStartup" ><strong>MSRS:OnEventEngineStartup(EventData)</strong></a></h2>
</div>
<p>Occurs when any aircraft starts its engines.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
initiator : The unit that is starting its engines. </p>
<div id= "#Functions##OnEventEngineStartup" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventHit" ><strong>MSRS:OnEventHit(EventData)</strong></a></h2>
</div>
<p>Occurs whenever an object is hit by a weapon.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> 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. </p>
<div id= "#Functions##OnEventHit" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventHumanFailure" ><strong>MSRS:OnEventHumanFailure(EventData)</strong></a></h2>
</div>
<p>Occurs when any system fails on a human controlled aircraft.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
initiator : The unit that had the failure </p>
<div id= "#Functions##OnEventHumanFailure" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventKill" ><strong>MSRS:OnEventKill(EventData)</strong></a></h2>
</div>
<p>Occurs on the death of a unit.</p>
<p>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 <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.</p>
<ul>
<li>initiator: The unit that killed the target</li>
<li>target: Target Object</li>
<li>weapon: Weapon Object</li>
</ul>
<div id= "#Functions##OnEventKill" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventLand" ><strong>MSRS:OnEventLand(EventData)</strong></a></h2>
</div>
<p>Occurs when an aircraft lands at an airbase, farp or ship
Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.</p>
<p>initiator : The unit that has landed
place: Object that the unit landed on. Can be an Airbase Object, FARP, or Ships </p>
<div id= "#Functions##OnEventLand" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventLandingAfterEjection" ><strong>MSRS:OnEventLandingAfterEjection(EventData)</strong></a></h2>
</div>
<p>Occurs shortly after the landing animation of an ejected pilot touching the ground and standing up.</p>
<p>Event does not occur if the pilot lands in the water and sub combs to Davey Jones Locker.
Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.</p>
<ul>
<li>initiator: Static object representing the ejected pilot. Place : Aircraft that the pilot ejected from.</li>
<li>place: may not return as a valid object if the aircraft has crashed into the ground and no longer exists.</li>
<li>subplace: is always 0 for unknown reasons.</li>
</ul>
<div id= "#Functions##OnEventLandingAfterEjection" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventLandingQualityMark" ><strong>MSRS:OnEventLandingQualityMark(EventData)</strong></a></h2>
</div>
<p>Landing quality mark.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.</p>
<div id= "#Functions##OnEventLandingQualityMark" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventMarkAdded" ><strong>MSRS:OnEventMarkAdded(EventData)</strong></a></h2>
</div>
<p>Occurs when a new mark was added.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
MarkID: ID of the mark. </p>
<div id= "#Functions##OnEventMarkAdded" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventMarkChange" ><strong>MSRS:OnEventMarkChange(EventData)</strong></a></h2>
</div>
<p>Occurs when a mark text was changed.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
MarkID: ID of the mark. </p>
<div id= "#Functions##OnEventMarkChange" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventMarkRemoved" ><strong>MSRS:OnEventMarkRemoved(EventData)</strong></a></h2>
</div>
<p>Occurs when a mark was removed.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
MarkID: ID of the mark. </p>
<div id= "#Functions##OnEventMarkRemoved" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventMissionEnd" ><strong>MSRS:OnEventMissionEnd(EventData)</strong></a></h2>
</div>
<p>Occurs when a mission ends
Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.</p>
<div id= "#Functions##OnEventMissionEnd" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventMissionStart" ><strong>MSRS:OnEventMissionStart(EventData)</strong></a></h2>
</div>
<p>Occurs when a mission starts
Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes. </p>
<div id= "#Functions##OnEventMissionStart" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventParatrooperLanding" ><strong>MSRS:OnEventParatrooperLanding(EventData)</strong></a></h2>
</div>
<p>Weapon add.</p>
<p>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 <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.</p>
<div id= "#Functions##OnEventParatrooperLanding" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventPilotDead" ><strong>MSRS:OnEventPilotDead(EventData)</strong></a></h2>
</div>
<p>Occurs when the pilot of an aircraft is killed.</p>
<p>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 <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
initiator : The unit that the pilot has died in. </p>
<div id= "#Functions##OnEventPilotDead" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventPlayerEnterAircraft" ><strong>MSRS:OnEventPlayerEnterAircraft(EventData)</strong></a></h2>
</div>
<p>Occurs when a player enters a slot and takes control of an aircraft.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
<strong>NOTE</strong>: 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. </p>
<div id= "#Functions##OnEventPlayerEnterAircraft" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventPlayerEnterUnit" ><strong>MSRS:OnEventPlayerEnterUnit(EventData)</strong></a></h2>
</div>
<p>Occurs when any player assumes direct control of a unit.</p>
<p>Note - not Mulitplayer safe. Use PlayerEnterAircraft.
Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
initiator : The unit that is being taken control of. </p>
<div id= "#Functions##OnEventPlayerEnterUnit" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventPlayerLeaveUnit" ><strong>MSRS:OnEventPlayerLeaveUnit(EventData)</strong></a></h2>
</div>
<p>Occurs when any player relieves control of a unit to the AI.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
initiator : The unit that the player left. </p>
<div id= "#Functions##OnEventPlayerLeaveUnit" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventRefueling" ><strong>MSRS:OnEventRefueling(EventData)</strong></a></h2>
</div>
<p>Occurs when an aircraft connects with a tanker and begins taking on fuel.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
initiator : The unit that is receiving fuel. </p>
<div id= "#Functions##OnEventRefueling" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventRefuelingStop" ><strong>MSRS:OnEventRefuelingStop(EventData)</strong></a></h2>
</div>
<p>Occurs when an aircraft is finished taking fuel.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
initiator : The unit that was receiving fuel. </p>
<div id= "#Functions##OnEventRefuelingStop" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventScore" ><strong>MSRS:OnEventScore(EventData)</strong></a></h2>
</div>
<p>Occurs when any modification to the "Score" as seen on the debrief menu would occur.</p>
<p>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 <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.</p>
<div id= "#Functions##OnEventScore" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventShootingEnd" ><strong>MSRS:OnEventShootingEnd(EventData)</strong></a></h2>
</div>
<p>Occurs when any unit stops firing its weapon.</p>
<p>Event will always correspond with a shooting start event.
Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
initiator : The unit that was doing the shooting. </p>
<div id= "#Functions##OnEventShootingEnd" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventShootingStart" ><strong>MSRS:OnEventShootingStart(EventData)</strong></a></h2>
</div>
<p>Occurs when any unit begins firing a weapon that has a high rate of fire.</p>
<p>Most common with aircraft cannons (GAU-8), autocannons, and machine guns.
Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
initiator : The unit that is doing the shooting.
target: The unit that is being targeted.</p>
<div id= "#Functions##OnEventShootingStart" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventShot" ><strong>MSRS:OnEventShot(EventData)</strong></a></h2>
</div>
<p>Occurs whenever any unit in a mission fires a weapon.</p>
<p>But not any machine gun or autocannon based weapon, those are handled by EVENT.ShootingStart.
Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.</p>
<div id= "#Functions##OnEventShot" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventTakeoff" ><strong>MSRS:OnEventTakeoff(EventData)</strong></a></h2>
</div>
<p>Occurs when an aircraft takes off from an airbase, farp, or ship.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> 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 </p>
<div id= "#Functions##OnEventTakeoff" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventTriggerZone" ><strong>MSRS:OnEventTriggerZone(EventData)</strong></a></h2>
</div>
<p>Trigger zone.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.</p>
<div id= "#Functions##OnEventTriggerZone" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).OnEventUnitLost" ><strong>MSRS:OnEventUnitLost(EventData)</strong></a></h2>
</div>
<p>Occurs when the game thinks an object is destroyed.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.</p>
<ul>
<li>initiator: The unit that is was destroyed.</li>
</ul>
<div id= "#Functions##OnEventUnitLost" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).ScheduleOnce" ><strong>MSRS:ScheduleOnce(Start, SchedulerFunction, ...)</strong></a></h2>
</div>
<p>Schedule a new time event.</p>
<p>Note that the schedule will only take place if the scheduler is <em>started</em>. Even for a single schedule event, the scheduler needs to be started also.</p>
<div id= "#Functions##ScheduleOnce" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>Start</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Specifies the amount of seconds that will be waited before the scheduling is started, and the event function is called.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#function
<strong><strong>SchedulerFunction</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The event function to be called when a timer event occurs. The event function needs to accept the parameters specified in SchedulerArguments.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#table
<strong><strong>...</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Optional arguments that can be given as part of scheduler. The arguments need to be given as a table { param1, param 2, ... }.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p>#string:</p>
</div>
<div class="w3-half">
<p>The Schedule ID of the planned schedule.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).ScheduleRepeat" ><strong>MSRS:ScheduleRepeat(Start, Repeat, RandomizeFactor, Stop, SchedulerFunction, ...)</strong></a></h2>
</div>
<p>Schedule a new time event.</p>
<p>Note that the schedule will only take place if the scheduler is <em>started</em>. Even for a single schedule event, the scheduler needs to be started also.</p>
<div id= "#Functions##ScheduleRepeat" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>Start</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Specifies the amount of seconds that will be waited before the scheduling is started, and the event function is called.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>Repeat</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Specifies the interval in seconds when the scheduler will call the event function.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>RandomizeFactor</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Specifies a randomization factor between 0 and 1 to randomize the Repeat.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>Stop</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Specifies the amount of seconds when the scheduler will be stopped.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#function
<strong><strong>SchedulerFunction</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The event function to be called when a timer event occurs. The event function needs to accept the parameters specified in SchedulerArguments.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#table
<strong><strong>...</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Optional arguments that can be given as part of scheduler. The arguments need to be given as a table { param1, param 2, ... }.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p>#string:</p>
</div>
<div class="w3-half">
<p>The Schedule ID of the planned schedule.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).ScheduleStop" ><strong>MSRS:ScheduleStop(SchedulerID)</strong></a></h2>
</div>
<p>Stops the Schedule.</p>
<div id= "#Functions##ScheduleStop" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>SchedulerID</strong></strong>
</p>
</div>
<div class="w3-half">
<p>(Optional) Scheduler ID to be stopped. If nil, all pending schedules are stopped.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).SetEventPriority" ><strong>MSRS:SetEventPriority(EventPriority)</strong></a></h2>
</div>
<p>Set the Class <a href="Core.Event.html">Core.Event</a> processing Priority.</p>
<p>The Event processing Priority is a number from 1 to 10,
reflecting the order of the classes subscribed to the Event to be processed.</p>
<div id= "#Functions##SetEventPriority" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>EventPriority</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The <a href="Core.Event.html">Core.Event</a> processing Priority.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(BASE)">#BASE</a>:</p>
</div>
<div class="w3-half">
<p>self</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).SetState" ><strong>MSRS:SetState(Object, Key, Value)</strong></a></h2>
</div>
<p>Set a state or property of the Object given a Key and a Value.</p>
<p>Note that if the Object is destroyed, set to nil, or garbage collected, then the Values and Keys will also be gone.</p>
<div id= "#Functions##SetState" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Object</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The object that will hold the Value set by the Key.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Key</strong></strong>
</p>
</div>
<div class="w3-half">
<p>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!</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Value</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The value to is stored in the object.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
</div>
<div class="w3-half">
<p>The Value set. </p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).T" ><strong>MSRS:T(Arguments)</strong></a></h2>
</div>
<p>Trace a function logic level 1.</p>
<p>Can be anywhere within the function logic.</p>
<div id= "#Functions##T" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Arguments</strong></strong>
</p>
</div>
<div class="w3-half">
<p>A #table or any field.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).T2" ><strong>MSRS:T2(Arguments)</strong></a></h2>
</div>
<p>Trace a function logic level 2.</p>
<p>Can be anywhere within the function logic.</p>
<div id= "#Functions##T2" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Arguments</strong></strong>
</p>
</div>
<div class="w3-half">
<p>A #table or any field.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).T3" ><strong>MSRS:T3(Arguments)</strong></a></h2>
</div>
<p>Trace a function logic level 3.</p>
<p>Can be anywhere within the function logic.</p>
<div id= "#Functions##T3" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Arguments</strong></strong>
</p>
</div>
<div class="w3-half">
<p>A #table or any field.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).TraceAll" ><strong>MSRS:TraceAll(TraceAll)</strong></a></h2>
</div>
<p>Trace all methods in MOOSE</p>
<div id= "#Functions##TraceAll" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#boolean
<strong><strong>TraceAll</strong></strong>
</p>
</div>
<div class="w3-half">
<p>true = trace all methods in MOOSE.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).TraceClass" ><strong>MSRS:TraceClass(Class)</strong></a></h2>
</div>
<p>Set tracing for a class</p>
<div id= "#Functions##TraceClass" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>Class</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Class name.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).TraceClassMethod" ><strong>MSRS:TraceClassMethod(Class, Method)</strong></a></h2>
</div>
<p>Set tracing for a specific method of class</p>
<div id= "#Functions##TraceClassMethod" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>Class</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Class name.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>Method</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Method.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).TraceLevel" ><strong>MSRS:TraceLevel(Level)</strong></a></h2>
</div>
<p>Set trace level</p>
<div id= "#Functions##TraceLevel" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>Level</strong></strong>
</p>
</div>
<div class="w3-half">
<p></p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).TraceOff" ><strong>MSRS:TraceOff()</strong></a></h2>
</div>
<p>Set trace off.</p>
<div id= "#Functions##TraceOff" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Usage:</strong></h2>
<pre class="example"><code>-- Switch the tracing Off
BASE:TraceOff()</code></pre>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).TraceOn" ><strong>MSRS:TraceOn()</strong></a></h2>
</div>
<p>Set trace on.</p>
<div id= "#Functions##TraceOn" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Usage:</strong></h2>
<pre class="example"><code>-- Switch the tracing On
BASE:TraceOn()</code></pre>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).TraceOnOff" ><strong>MSRS:TraceOnOff(TraceOnOff)</strong></a></h2>
</div>
<p>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.</p>
<p>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.</p>
<div id= "#Functions##TraceOnOff" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#boolean
<strong><strong>TraceOnOff</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Switch the tracing on or off.</p>
</div>
</div>
<h2><strong>Usage:</strong></h2>
<pre class="example"><code>
-- Switch the tracing On
BASE:TraceOnOff( true )
-- Switch the tracing Off
BASE:TraceOnOff( false )
</code></pre>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).UnHandleEvent" ><strong>MSRS:UnHandleEvent(EventID)</strong></a></h2>
</div>
<p>UnSubscribe to a DCS event.</p>
<div id= "#Functions##UnHandleEvent" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTS)">Core.Event#EVENTS</a>
<strong><strong>EventID</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Event ID.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(BASE)">#BASE</a>:</p>
</div>
<div class="w3-half">
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS)._F" ><strong>MSRS:_F(Arguments, DebugInfoCurrentParam, DebugInfoFromParam)</strong></a></h2>
</div>
<p>Trace a function call.</p>
<p>This function is private.</p>
<div id= "#Functions##_F" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Arguments</strong></strong>
</p>
</div>
<div class="w3-half">
<p>A #table or any field.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>DebugInfoCurrentParam</strong></strong>
</p>
</div>
<div class="w3-half">
<p></p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>DebugInfoFromParam</strong></strong>
</p>
</div>
<div class="w3-half">
<p></p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS)._T" ><strong>MSRS:_T(Arguments, DebugInfoCurrentParam, DebugInfoFromParam)</strong></a></h2>
</div>
<p>Trace a function logic.</p>
<div id= "#Functions##_T" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Arguments</strong></strong>
</p>
</div>
<div class="w3-half">
<p>A #table or any field.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>DebugInfoCurrentParam</strong></strong>
</p>
</div>
<div class="w3-half">
<p></p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>DebugInfoFromParam</strong></strong>
</p>
</div>
<div class="w3-half">
<p></p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRS).onEvent" ><strong>MSRS:onEvent(event)</strong></a></h2>
</div>
<p>The main event handling function...</p>
<p>This function captures all events generated for the class.</p>
<div id= "#Functions##onEvent" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="DCS.html##(Event)">DCS#Event</a>
<strong><strong>event</strong></strong>
</p>
</div>
<div class="w3-half">
<p></p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div onclick="myFunction('#Types##MSRS.GRPCOptions')" class="w3-container w3-theme-l2 w3-margin-top"><h2><a id="#(MSRS.GRPCOptions)">Type <strong>MSRS.GRPCOptions</strong></a></h2></div>
<div id= "#Types##MSRS.GRPCOptions" class="w3-container w3-white w3-padding-16" id="module_other_types">
<div class="w3-white" id="record_type">
<p>GRPC options</p>
<div class="fields w3-container w3-theme-l2">
<h2>Field(s)</h2>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS.GRPCOptions).DefaultProvider" ><strong>MSRS.GRPCOptions.DefaultProvider</strong></a>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<a href="##(MSRS.ProviderOptions)">#MSRS.ProviderOptions</a>
<a id="#(MSRS.GRPCOptions).aws" ><strong>MSRS.GRPCOptions.aws</strong></a>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<a href="##(MSRS.ProviderOptions)">#MSRS.ProviderOptions</a>
<a id="#(MSRS.GRPCOptions).azure" ><strong>MSRS.GRPCOptions.azure</strong></a>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS.GRPCOptions).coalition" ><strong>MSRS.GRPCOptions.coalition</strong></a>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<a href="##(MSRS.ProviderOptions)">#MSRS.ProviderOptions</a>
<a id="#(MSRS.GRPCOptions).gcloud" ><strong>MSRS.GRPCOptions.gcloud</strong></a>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS.GRPCOptions).plaintext" ><strong>MSRS.GRPCOptions.plaintext</strong></a>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#table
<a id="#(MSRS.GRPCOptions).position" ><strong>MSRS.GRPCOptions.position</strong></a>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#table
<a id="#(MSRS.GRPCOptions).provider" ><strong>MSRS.GRPCOptions.provider</strong></a>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS.GRPCOptions).srsClientName" ><strong>MSRS.GRPCOptions.srsClientName</strong></a>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<a href="##(MSRS.ProviderOptions)">#MSRS.ProviderOptions</a>
<a id="#(MSRS.GRPCOptions).win" ><strong>MSRS.GRPCOptions.win</strong></a>
</div>
</div>
<div class="functions w3-container w3-theme-l2">
<h2>Function(s)</h2>
</div>
</div>
</div>
<div onclick="myFunction('#Types##MSRS.ProviderOptions')" class="w3-container w3-theme-l2 w3-margin-top"><h2><a id="#(MSRS.ProviderOptions)">Type <strong>MSRS.ProviderOptions</strong></a></h2></div>
<div id= "#Types##MSRS.ProviderOptions" class="w3-container w3-white w3-padding-16" id="module_other_types">
<div class="w3-white" id="record_type">
<div class="fields w3-container w3-theme-l2">
<h2>Field(s)</h2>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS.ProviderOptions).defaultVoice" ><strong>MSRS.ProviderOptions.defaultVoice</strong></a>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS.ProviderOptions).key" ><strong>MSRS.ProviderOptions.key</strong></a>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS.ProviderOptions).region" ><strong>MSRS.ProviderOptions.region</strong></a>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS.ProviderOptions).secret" ><strong>MSRS.ProviderOptions.secret</strong></a>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRS.ProviderOptions).voice" ><strong>MSRS.ProviderOptions.voice</strong></a>
</div>
</div>
<div class="functions w3-container w3-theme-l2">
<h2>Function(s)</h2>
</div>
</div>
</div>
<div onclick="myFunction('#Types##MSRS.Voices')" class="w3-container w3-theme-l2 w3-margin-top"><h2><a id="#(MSRS.Voices)">Type <strong>MSRS.Voices</strong></a></h2></div>
<div id= "#Types##MSRS.Voices" class="w3-container w3-white w3-padding-16" id="module_other_types">
<div class="w3-white" id="record_type">
<p>Voices</p>
<div class="fields w3-container w3-theme-l2">
<h2>Field(s)</h2>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#table
<a id="#(MSRS.Voices).Google" ><strong>MSRS.Voices.Google</strong></a>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#table
<a id="#(MSRS.Voices).Microsoft" ><strong>MSRS.Voices.Microsoft</strong></a>
</div>
</div>
<div class="functions w3-container w3-theme-l2">
<h2>Function(s)</h2>
</div>
</div>
</div>
<div onclick="myFunction('#Types##MSRSQUEUE')" class="w3-container w3-theme-l2 w3-margin-top"><h2><a id="#(MSRSQUEUE)">Type <strong>MSRSQUEUE</strong></a></h2></div>
<div id= "#Types##MSRSQUEUE" class="w3-container w3-white w3-padding-16" id="module_other_types">
<div class="w3-white" id="record_type">
<p>Manages radio transmissions.</p>
<p>The purpose of the MSRSQUEUE class is to manage SRS text-to-speech (TTS) messages using the MSRS class.
This can be used to submit multiple TTS messages and the class takes care that they are transmitted one after the other (and not overlapping).</p>
<div class="fields w3-container w3-theme-l2">
<h2>Field(s)</h2>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRSQUEUE).ClassName" ><strong>MSRSQUEUE.ClassName</strong></a>
<p>Name of the class "MSRSQUEUE".</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#number
<a id="#(MSRSQUEUE).Tlast" ><strong>MSRSQUEUE.Tlast</strong></a>
<p>Time (abs) when the last transmission finished.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<a id="#(MSRSQUEUE).TransmitOnlyWithPlayers" ><strong>MSRSQUEUE.TransmitOnlyWithPlayers</strong></a>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRSQUEUE).alias" ><strong>MSRSQUEUE.alias</strong></a>
<p>Name of the radio queue.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#boolean
<a id="#(MSRSQUEUE).checking" ><strong>MSRSQUEUE.checking</strong></a>
<p>If <code>true</code>, the queue update function is scheduled to be called again.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#number
<a id="#(MSRSQUEUE).dt" ><strong>MSRSQUEUE.dt</strong></a>
<p>Time interval in seconds for checking the radio queue. </p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRSQUEUE).lid" ><strong>MSRSQUEUE.lid</strong></a>
<p>ID for dcs.log.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#table
<a id="#(MSRSQUEUE).queue" ><strong>MSRSQUEUE.queue</strong></a>
<p>The queue of transmissions.</p>
</div>
</div>
<div class="functions w3-container w3-theme-l2">
<h2>Function(s)</h2>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).AddTransmission" ><strong>MSRSQUEUE:AddTransmission(transmission)</strong></a></h2>
</div>
<p>Add a transmission to the radio queue.</p>
<div id= "#Functions##AddTransmission" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRSQUEUE</p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="##(MSRSQUEUE.Transmission)">#MSRSQUEUE.Transmission</a>
<strong><strong>transmission</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The transmission data table. </p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(MSRSQUEUE)">#MSRSQUEUE</a>:</p>
</div>
<div class="w3-half">
<p>self</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).Broadcast" ><strong>MSRSQUEUE:Broadcast(transmission)</strong></a></h2>
</div>
<p>Broadcast radio message.</p>
<div id= "#Functions##Broadcast" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRSQUEUE</p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="##(MSRSQUEUE.Transmission)">#MSRSQUEUE.Transmission</a>
<strong><strong>transmission</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The transmission.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).CalcTransmisstionDuration" ><strong>MSRSQUEUE:CalcTransmisstionDuration()</strong></a></h2>
</div>
<p>Calculate total transmission duration of all transmission in the queue.</p>
<div id= "#Functions##CalcTransmisstionDuration" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRSQUEUE</p>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p>#number:</p>
</div>
<div class="w3-half">
<p>Total transmission duration.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).Clear" ><strong>MSRSQUEUE:Clear()</strong></a></h2>
</div>
<p>Clear the radio queue.</p>
<div id= "#Functions##Clear" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRSQUEUE</p>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(MSRSQUEUE)">#MSRSQUEUE</a>:</p>
</div>
<div class="w3-half">
<p>self The MSRSQUEUE object.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).New" ><strong>MSRSQUEUE:New(alias)</strong></a></h2>
</div>
<p>Create a new MSRSQUEUE object for a given radio frequency/modulation.</p>
<div id= "#Functions##New" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRSQUEUE</p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>alias</strong></strong>
</p>
</div>
<div class="w3-half">
<p>(Optional) Name of the radio queue.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(MSRSQUEUE)">#MSRSQUEUE</a>:</p>
</div>
<div class="w3-half">
<p>self The MSRSQUEUE object.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).NewTransmission" ><strong>MSRSQUEUE:NewTransmission(text, duration, msrs, tstart, interval, subgroups, subtitle, subduration, frequency, modulation, gender, culture, voice, volume, label, coordinate)</strong></a></h2>
</div>
<p>Create a new transmission and add it to the radio queue.</p>
<div id= "#Functions##NewTransmission" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRSQUEUE</p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>text</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Text to play.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>duration</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Duration in seconds the file lasts. Default is determined by number of characters of the text message.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Sound.SRS.html##(MSRS)">Sound.SRS#MSRS</a>
<strong><strong>msrs</strong></strong>
</p>
</div>
<div class="w3-half">
<p>MOOSE SRS object.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>tstart</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Start time (abs) seconds. Default now.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>interval</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Interval in seconds after the last transmission finished.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#table
<strong><strong>subgroups</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Groups that should receive the subtiltle.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>subtitle</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Subtitle displayed when the message is played.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>subduration</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Duration [sec] of the subtitle being displayed. Default 5 sec.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>frequency</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Radio frequency if other than MSRS default.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>modulation</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Radio modulation if other then MSRS default.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>gender</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Gender of the voice</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>culture</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Culture of the voice</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>voice</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Specific voice</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>volume</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Volume setting</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>label</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Label to be used</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Point.html##(COORDINATE)">Core.Point#COORDINATE</a>
<strong><strong>coordinate</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Coordinate to be used</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(MSRSQUEUE.Transmission)">#MSRSQUEUE.Transmission</a>:</p>
</div>
<div class="w3-half">
<p>Radio transmission table.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).SetTransmitOnlyWithPlayers" ><strong>MSRSQUEUE:SetTransmitOnlyWithPlayers(Switch)</strong></a></h2>
</div>
<p>Switch to only transmit if there are players on the server.</p>
<div id= "#Functions##SetTransmitOnlyWithPlayers" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRSQUEUE</p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#boolean
<strong><strong>Switch</strong></strong>
</p>
</div>
<div class="w3-half">
<p>If true, only send SRS if there are alive Players.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(MSRSQUEUE)">#MSRSQUEUE</a>:</p>
</div>
<div class="w3-half">
<p>self</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE)._CheckRadioQueue" ><strong>MSRSQUEUE:_CheckRadioQueue(delay)</strong></a></h2>
</div>
<p>Check radio queue for transmissions to be broadcasted.</p>
<div id= "#Functions##_CheckRadioQueue" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p>MSRSQUEUE</p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>delay</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Delay in seconds before checking.</p>
</div>
</div>
</div>
</div>
</div>
<div class="fields w3-container w3-theme-l2">
<h2>Field(s)</h2>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRSQUEUE).ClassName" ><strong>MSRSQUEUE.ClassName</strong></a>
<p>Name of the class "MSRSQUEUE".</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#number
<a id="#(MSRSQUEUE).Tlast" ><strong>MSRSQUEUE.Tlast</strong></a>
<p>Time (abs) when the last transmission finished.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<a id="#(MSRSQUEUE).TransmitOnlyWithPlayers" ><strong>MSRSQUEUE.TransmitOnlyWithPlayers</strong></a>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRSQUEUE).alias" ><strong>MSRSQUEUE.alias</strong></a>
<p>Name of the radio queue.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#boolean
<a id="#(MSRSQUEUE).checking" ><strong>MSRSQUEUE.checking</strong></a>
<p>If <code>true</code>, the queue update function is scheduled to be called again.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#number
<a id="#(MSRSQUEUE).dt" ><strong>MSRSQUEUE.dt</strong></a>
<p>Time interval in seconds for checking the radio queue. </p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRSQUEUE).lid" ><strong>MSRSQUEUE.lid</strong></a>
<p>ID for dcs.log.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#table
<a id="#(MSRSQUEUE).queue" ><strong>MSRSQUEUE.queue</strong></a>
<p>The queue of transmissions.</p>
</div>
</div>
<div class="functions w3-container w3-theme-l2">
<h2>Function(s)</h2>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).ClearState" ><strong>MSRSQUEUE:ClearState(Object, StateName)</strong></a></h2>
</div>
<p>Clear the state of an object.</p>
<div id= "#Functions##ClearState" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Object</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The object that holds the Value set by the Key.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>StateName</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The key that is should be cleared.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).CreateEventBirth" ><strong>MSRSQUEUE:CreateEventBirth(EventTime, Initiator, IniUnitName, place, subplace)</strong></a></h2>
</div>
<p>Creation of a Birth Event.</p>
<div id= "#Functions##CreateEventBirth" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="DCS.html##(Time)">DCS#Time</a>
<strong><strong>EventTime</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The time stamp of the event.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="DCS.html##(Object)">DCS#Object</a>
<strong><strong>Initiator</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The initiating object of the event.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>IniUnitName</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The initiating unit name.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>place</strong></strong>
</p>
</div>
<div class="w3-half">
<p></p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>subplace</strong></strong>
</p>
</div>
<div class="w3-half">
<p></p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).CreateEventCrash" ><strong>MSRSQUEUE:CreateEventCrash(EventTime, Initiator, IniObjectCategory)</strong></a></h2>
</div>
<p>Creation of a Crash Event.</p>
<div id= "#Functions##CreateEventCrash" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="DCS.html##(Time)">DCS#Time</a>
<strong><strong>EventTime</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The time stamp of the event.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="DCS.html##(Object)">DCS#Object</a>
<strong><strong>Initiator</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The initiating object of the event.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>IniObjectCategory</strong></strong>
</p>
</div>
<div class="w3-half">
<p></p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).CreateEventDead" ><strong>MSRSQUEUE:CreateEventDead(EventTime, Initiator, IniObjectCategory)</strong></a></h2>
</div>
<p>Creation of a Dead Event.</p>
<div id= "#Functions##CreateEventDead" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="DCS.html##(Time)">DCS#Time</a>
<strong><strong>EventTime</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The time stamp of the event.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="DCS.html##(Object)">DCS#Object</a>
<strong><strong>Initiator</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The initiating object of the event.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>IniObjectCategory</strong></strong>
</p>
</div>
<div class="w3-half">
<p></p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).CreateEventPlayerEnterAircraft" ><strong>MSRSQUEUE:CreateEventPlayerEnterAircraft(PlayerUnit)</strong></a></h2>
</div>
<p>Creation of a <code>S_EVENT_PLAYER_ENTER_AIRCRAFT</code> event.</p>
<div id= "#Functions##CreateEventPlayerEnterAircraft" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Wrapper.Unit.html##(UNIT)">Wrapper.Unit#UNIT</a>
<strong><strong>PlayerUnit</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The aircraft unit the player entered.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).CreateEventRemoveUnit" ><strong>MSRSQUEUE:CreateEventRemoveUnit(EventTime, Initiator)</strong></a></h2>
</div>
<p>Creation of a Remove Unit Event.</p>
<div id= "#Functions##CreateEventRemoveUnit" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="DCS.html##(Time)">DCS#Time</a>
<strong><strong>EventTime</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The time stamp of the event.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="DCS.html##(Object)">DCS#Object</a>
<strong><strong>Initiator</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The initiating object of the event.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).CreateEventTakeoff" ><strong>MSRSQUEUE:CreateEventTakeoff(EventTime, Initiator)</strong></a></h2>
</div>
<p>Creation of a Takeoff Event.</p>
<div id= "#Functions##CreateEventTakeoff" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="DCS.html##(Time)">DCS#Time</a>
<strong><strong>EventTime</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The time stamp of the event.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="DCS.html##(Object)">DCS#Object</a>
<strong><strong>Initiator</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The initiating object of the event.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).CreateEventUnitLost" ><strong>MSRSQUEUE:CreateEventUnitLost(EventTime, Initiator)</strong></a></h2>
</div>
<p>Creation of a Crash Event.</p>
<div id= "#Functions##CreateEventUnitLost" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="DCS.html##(Time)">DCS#Time</a>
<strong><strong>EventTime</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The time stamp of the event.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="DCS.html##(Object)">DCS#Object</a>
<strong><strong>Initiator</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The initiating object of the event.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).E" ><strong>MSRSQUEUE:E(Arguments)</strong></a></h2>
</div>
<p>Log an exception which will be traced always.</p>
<p>Can be anywhere within the function logic.</p>
<div id= "#Functions##E" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Arguments</strong></strong>
</p>
</div>
<div class="w3-half">
<p>A #table or any field.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).EventDispatcher" ><strong>MSRSQUEUE:EventDispatcher()</strong></a></h2>
</div>
<p>Returns the event dispatcher</p>
<div id= "#Functions##EventDispatcher" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a>:</p>
</div>
<div class="w3-half">
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).EventRemoveAll" ><strong>MSRSQUEUE:EventRemoveAll()</strong></a></h2>
</div>
<p>Remove all subscribed events</p>
<div id= "#Functions##EventRemoveAll" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(BASE)">#BASE</a>:</p>
</div>
<div class="w3-half">
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).F" ><strong>MSRSQUEUE:F(Arguments)</strong></a></h2>
</div>
<p>Trace a function call.</p>
<p>Must be at the beginning of the function logic.</p>
<div id= "#Functions##F" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Arguments</strong></strong>
</p>
</div>
<div class="w3-half">
<p>A #table or any field.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).F2" ><strong>MSRSQUEUE:F2(Arguments)</strong></a></h2>
</div>
<p>Trace a function call level 2.</p>
<p>Must be at the beginning of the function logic.</p>
<div id= "#Functions##F2" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Arguments</strong></strong>
</p>
</div>
<div class="w3-half">
<p>A #table or any field.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).F3" ><strong>MSRSQUEUE:F3(Arguments)</strong></a></h2>
</div>
<p>Trace a function call level 3.</p>
<p>Must be at the beginning of the function logic.</p>
<div id= "#Functions##F3" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Arguments</strong></strong>
</p>
</div>
<div class="w3-half">
<p>A #table or any field.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).GetClassID" ><strong>MSRSQUEUE:GetClassID()</strong></a></h2>
</div>
<p>Get the ClassID of the class instance.</p>
<div id= "#Functions##GetClassID" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p>#string:</p>
</div>
<div class="w3-half">
<p>The ClassID of the class instance.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).GetClassName" ><strong>MSRSQUEUE:GetClassName()</strong></a></h2>
</div>
<p>Get the ClassName of the class instance.</p>
<div id= "#Functions##GetClassName" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p>#string:</p>
</div>
<div class="w3-half">
<p>The ClassName of the class instance.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).GetClassNameAndID" ><strong>MSRSQUEUE:GetClassNameAndID()</strong></a></h2>
</div>
<p>Get the ClassName + ClassID of the class instance.</p>
<p>The ClassName + ClassID is formatted as '%s#%09d'.</p>
<div id= "#Functions##GetClassNameAndID" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p>#string:</p>
</div>
<div class="w3-half">
<p>The ClassName + ClassID of the class instance.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).GetEventPriority" ><strong>MSRSQUEUE:GetEventPriority()</strong></a></h2>
</div>
<p>Get the Class <a href="Core.Event.html">Core.Event</a> processing Priority.</p>
<p>The Event processing Priority is a number from 1 to 10,
reflecting the order of the classes subscribed to the Event to be processed.</p>
<div id= "#Functions##GetEventPriority" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p>#number:</p>
</div>
<div class="w3-half">
<p>The <a href="Core.Event.html">Core.Event</a> processing Priority.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).GetParent" ><strong>MSRSQUEUE:GetParent(Child, FromClass)</strong></a></h2>
</div>
<p>This is the worker method to retrieve the Parent class.</p>
<p>Note that the Parent class must be passed to call the parent class method.</p>
<pre><code>self:GetParent(self):ParentMethod()
</code></pre>
<div id= "#Functions##GetParent" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="##(BASE)">#BASE</a>
<strong><strong>Child</strong></strong>
</p>
</div>
<div class="w3-half">
<p>This is the Child class from which the Parent class needs to be retrieved.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="##(BASE)">#BASE</a>
<strong><strong>FromClass</strong></strong>
</p>
</div>
<div class="w3-half">
<p>(Optional) The class from which to get the parent.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(BASE)">#BASE</a>:</p>
</div>
<div class="w3-half">
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).GetState" ><strong>MSRSQUEUE:GetState(Object, Key)</strong></a></h2>
</div>
<p>Get a Value given a Key from the Object.</p>
<p>Note that if the Object is destroyed, set to nil, or garbage collected, then the Values and Keys will also be gone.</p>
<div id= "#Functions##GetState" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Object</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The object that holds the Value set by the Key.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Key</strong></strong>
</p>
</div>
<div class="w3-half">
<p>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!</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
</div>
<div class="w3-half">
<p>The Value retrieved or nil if the Key was not found and thus the Value could not be retrieved.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).HandleEvent" ><strong>MSRSQUEUE:HandleEvent(EventID, EventFunction)</strong></a></h2>
</div>
<p>Subscribe to a DCS Event.</p>
<div id= "#Functions##HandleEvent" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTS)">Core.Event#EVENTS</a>
<strong><strong>EventID</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Event ID.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#function
<strong><strong>EventFunction</strong></strong>
</p>
</div>
<div class="w3-half">
<p>(optional) The function to be called when the event occurs for the unit.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(BASE)">#BASE</a>:</p>
</div>
<div class="w3-half">
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).I" ><strong>MSRSQUEUE:I(Arguments)</strong></a></h2>
</div>
<p>Log an information which will be traced always.</p>
<p>Can be anywhere within the function logic.</p>
<div id= "#Functions##I" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Arguments</strong></strong>
</p>
</div>
<div class="w3-half">
<p>A #table or any field.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).Inherit" ><strong>MSRSQUEUE:Inherit(Child, Parent)</strong></a></h2>
</div>
<p>This is the worker method to inherit from a parent class.</p>
<div id= "#Functions##Inherit" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Child</strong></strong>
</p>
</div>
<div class="w3-half">
<p>is the Child class that inherits.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="##(BASE)">#BASE</a>
<strong><strong>Parent</strong></strong>
</p>
</div>
<div class="w3-half">
<p>is the Parent class that the Child inherits from.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(BASE)">#BASE</a>:</p>
</div>
<div class="w3-half">
<p>Child</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).IsInstanceOf" ><strong>MSRSQUEUE:IsInstanceOf(ClassName)</strong></a></h2>
</div>
<p>This is the worker method to check if an object is an (sub)instance of a class.</p>
<h3>Examples:</h3>
<ul>
<li><p>ZONE:New( 'some zone' ):IsInstanceOf( ZONE ) will return true</p></li>
<li><p>ZONE:New( 'some zone' ):IsInstanceOf( 'ZONE' ) will return true</p></li>
<li><p>ZONE:New( 'some zone' ):IsInstanceOf( 'zone' ) will return true</p></li>
<li><p>ZONE:New( 'some zone' ):IsInstanceOf( 'BASE' ) will return true</p></li>
<li><p>ZONE:New( 'some zone' ):IsInstanceOf( 'GROUP' ) will return false</p></li>
</ul>
<div id= "#Functions##IsInstanceOf" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>ClassName</strong></strong>
</p>
</div>
<div class="w3-half">
<p>is the name of the class or the class itself to run the check against</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p>#boolean:</p>
</div>
<div class="w3-half">
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).IsTrace" ><strong>MSRSQUEUE:IsTrace()</strong></a></h2>
</div>
<p>Enquires if tracing is on (for the class).</p>
<div id= "#Functions##IsTrace" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p>#boolean:</p>
</div>
<div class="w3-half">
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).New" ><strong>MSRSQUEUE:New()</strong></a></h2>
</div>
<p>BASE constructor.</p>
<p>This is an example how to use the BASE:New() constructor in a new class definition when inheriting from BASE.</p>
<pre><code>function EVENT:New()
local self = BASE:Inherit( self, BASE:New() ) -- #EVENT
return self
end
</code></pre>
<div id= "#Functions##New" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(BASE)">#BASE</a>:</p>
</div>
<div class="w3-half">
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEvent" ><strong>MSRSQUEUE:OnEvent(EventData)</strong></a></h2>
</div>
<p>Occurs when an Event for an object is triggered.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
initiator : The unit that triggered the event. </p>
<div id= "#Functions##OnEvent" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventBDA" ><strong>MSRSQUEUE:OnEventBDA(EventData)</strong></a></h2>
</div>
<p>BDA.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.</p>
<div id= "#Functions##OnEventBDA" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventBaseCaptured" ><strong>MSRSQUEUE:OnEventBaseCaptured(EventData)</strong></a></h2>
</div>
<p>Occurs when a ground unit captures either an airbase or a farp.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> 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. </p>
<div id= "#Functions##OnEventBaseCaptured" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventBirth" ><strong>MSRSQUEUE:OnEventBirth(EventData)</strong></a></h2>
</div>
<p>Occurs when any object is spawned into the mission.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
initiator : The unit that was spawned </p>
<div id= "#Functions##OnEventBirth" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventCrash" ><strong>MSRSQUEUE:OnEventCrash(EventData)</strong></a></h2>
</div>
<p>Occurs when any aircraft crashes into the ground and is completely destroyed.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
initiator : The unit that has crashed </p>
<div id= "#Functions##OnEventCrash" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventDead" ><strong>MSRSQUEUE:OnEventDead(EventData)</strong></a></h2>
</div>
<p>Occurs when an object is dead.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
initiator : The unit that is dead. </p>
<div id= "#Functions##OnEventDead" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventDetailedFailure" ><strong>MSRSQUEUE:OnEventDetailedFailure(EventData)</strong></a></h2>
</div>
<p>Unknown precisely what creates this event, likely tied into newer damage model.</p>
<p>Will update this page when new information become available.</p>
<ul>
<li>initiator: The unit that had the failure.</li>
</ul>
<div id= "#Functions##OnEventDetailedFailure" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventDiscardChairAfterEjection" ><strong>MSRSQUEUE:OnEventDiscardChairAfterEjection(EventData)</strong></a></h2>
</div>
<p>Discard chair after ejection.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.</p>
<div id= "#Functions##OnEventDiscardChairAfterEjection" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventEjection" ><strong>MSRSQUEUE:OnEventEjection(EventData)</strong></a></h2>
</div>
<p>Occurs when a pilot ejects from an aircraft
Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.</p>
<p>initiator : The unit that has ejected </p>
<div id= "#Functions##OnEventEjection" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventEngineShutdown" ><strong>MSRSQUEUE:OnEventEngineShutdown(EventData)</strong></a></h2>
</div>
<p>Occurs when any aircraft shuts down its engines.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
initiator : The unit that is stopping its engines. </p>
<div id= "#Functions##OnEventEngineShutdown" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventEngineStartup" ><strong>MSRSQUEUE:OnEventEngineStartup(EventData)</strong></a></h2>
</div>
<p>Occurs when any aircraft starts its engines.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
initiator : The unit that is starting its engines. </p>
<div id= "#Functions##OnEventEngineStartup" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventHit" ><strong>MSRSQUEUE:OnEventHit(EventData)</strong></a></h2>
</div>
<p>Occurs whenever an object is hit by a weapon.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> 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. </p>
<div id= "#Functions##OnEventHit" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventHumanFailure" ><strong>MSRSQUEUE:OnEventHumanFailure(EventData)</strong></a></h2>
</div>
<p>Occurs when any system fails on a human controlled aircraft.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
initiator : The unit that had the failure </p>
<div id= "#Functions##OnEventHumanFailure" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventKill" ><strong>MSRSQUEUE:OnEventKill(EventData)</strong></a></h2>
</div>
<p>Occurs on the death of a unit.</p>
<p>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 <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.</p>
<ul>
<li>initiator: The unit that killed the target</li>
<li>target: Target Object</li>
<li>weapon: Weapon Object</li>
</ul>
<div id= "#Functions##OnEventKill" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventLand" ><strong>MSRSQUEUE:OnEventLand(EventData)</strong></a></h2>
</div>
<p>Occurs when an aircraft lands at an airbase, farp or ship
Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.</p>
<p>initiator : The unit that has landed
place: Object that the unit landed on. Can be an Airbase Object, FARP, or Ships </p>
<div id= "#Functions##OnEventLand" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventLandingAfterEjection" ><strong>MSRSQUEUE:OnEventLandingAfterEjection(EventData)</strong></a></h2>
</div>
<p>Occurs shortly after the landing animation of an ejected pilot touching the ground and standing up.</p>
<p>Event does not occur if the pilot lands in the water and sub combs to Davey Jones Locker.
Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.</p>
<ul>
<li>initiator: Static object representing the ejected pilot. Place : Aircraft that the pilot ejected from.</li>
<li>place: may not return as a valid object if the aircraft has crashed into the ground and no longer exists.</li>
<li>subplace: is always 0 for unknown reasons.</li>
</ul>
<div id= "#Functions##OnEventLandingAfterEjection" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventLandingQualityMark" ><strong>MSRSQUEUE:OnEventLandingQualityMark(EventData)</strong></a></h2>
</div>
<p>Landing quality mark.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.</p>
<div id= "#Functions##OnEventLandingQualityMark" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventMarkAdded" ><strong>MSRSQUEUE:OnEventMarkAdded(EventData)</strong></a></h2>
</div>
<p>Occurs when a new mark was added.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
MarkID: ID of the mark. </p>
<div id= "#Functions##OnEventMarkAdded" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventMarkChange" ><strong>MSRSQUEUE:OnEventMarkChange(EventData)</strong></a></h2>
</div>
<p>Occurs when a mark text was changed.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
MarkID: ID of the mark. </p>
<div id= "#Functions##OnEventMarkChange" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventMarkRemoved" ><strong>MSRSQUEUE:OnEventMarkRemoved(EventData)</strong></a></h2>
</div>
<p>Occurs when a mark was removed.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
MarkID: ID of the mark. </p>
<div id= "#Functions##OnEventMarkRemoved" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventMissionEnd" ><strong>MSRSQUEUE:OnEventMissionEnd(EventData)</strong></a></h2>
</div>
<p>Occurs when a mission ends
Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.</p>
<div id= "#Functions##OnEventMissionEnd" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventMissionStart" ><strong>MSRSQUEUE:OnEventMissionStart(EventData)</strong></a></h2>
</div>
<p>Occurs when a mission starts
Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes. </p>
<div id= "#Functions##OnEventMissionStart" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventParatrooperLanding" ><strong>MSRSQUEUE:OnEventParatrooperLanding(EventData)</strong></a></h2>
</div>
<p>Weapon add.</p>
<p>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 <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.</p>
<div id= "#Functions##OnEventParatrooperLanding" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventPilotDead" ><strong>MSRSQUEUE:OnEventPilotDead(EventData)</strong></a></h2>
</div>
<p>Occurs when the pilot of an aircraft is killed.</p>
<p>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 <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
initiator : The unit that the pilot has died in. </p>
<div id= "#Functions##OnEventPilotDead" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventPlayerEnterAircraft" ><strong>MSRSQUEUE:OnEventPlayerEnterAircraft(EventData)</strong></a></h2>
</div>
<p>Occurs when a player enters a slot and takes control of an aircraft.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
<strong>NOTE</strong>: 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. </p>
<div id= "#Functions##OnEventPlayerEnterAircraft" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventPlayerEnterUnit" ><strong>MSRSQUEUE:OnEventPlayerEnterUnit(EventData)</strong></a></h2>
</div>
<p>Occurs when any player assumes direct control of a unit.</p>
<p>Note - not Mulitplayer safe. Use PlayerEnterAircraft.
Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
initiator : The unit that is being taken control of. </p>
<div id= "#Functions##OnEventPlayerEnterUnit" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventPlayerLeaveUnit" ><strong>MSRSQUEUE:OnEventPlayerLeaveUnit(EventData)</strong></a></h2>
</div>
<p>Occurs when any player relieves control of a unit to the AI.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
initiator : The unit that the player left. </p>
<div id= "#Functions##OnEventPlayerLeaveUnit" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventRefueling" ><strong>MSRSQUEUE:OnEventRefueling(EventData)</strong></a></h2>
</div>
<p>Occurs when an aircraft connects with a tanker and begins taking on fuel.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
initiator : The unit that is receiving fuel. </p>
<div id= "#Functions##OnEventRefueling" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventRefuelingStop" ><strong>MSRSQUEUE:OnEventRefuelingStop(EventData)</strong></a></h2>
</div>
<p>Occurs when an aircraft is finished taking fuel.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
initiator : The unit that was receiving fuel. </p>
<div id= "#Functions##OnEventRefuelingStop" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventScore" ><strong>MSRSQUEUE:OnEventScore(EventData)</strong></a></h2>
</div>
<p>Occurs when any modification to the "Score" as seen on the debrief menu would occur.</p>
<p>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 <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.</p>
<div id= "#Functions##OnEventScore" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventShootingEnd" ><strong>MSRSQUEUE:OnEventShootingEnd(EventData)</strong></a></h2>
</div>
<p>Occurs when any unit stops firing its weapon.</p>
<p>Event will always correspond with a shooting start event.
Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
initiator : The unit that was doing the shooting. </p>
<div id= "#Functions##OnEventShootingEnd" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventShootingStart" ><strong>MSRSQUEUE:OnEventShootingStart(EventData)</strong></a></h2>
</div>
<p>Occurs when any unit begins firing a weapon that has a high rate of fire.</p>
<p>Most common with aircraft cannons (GAU-8), autocannons, and machine guns.
Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.
initiator : The unit that is doing the shooting.
target: The unit that is being targeted.</p>
<div id= "#Functions##OnEventShootingStart" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventShot" ><strong>MSRSQUEUE:OnEventShot(EventData)</strong></a></h2>
</div>
<p>Occurs whenever any unit in a mission fires a weapon.</p>
<p>But not any machine gun or autocannon based weapon, those are handled by EVENT.ShootingStart.
Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.</p>
<div id= "#Functions##OnEventShot" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventTakeoff" ><strong>MSRSQUEUE:OnEventTakeoff(EventData)</strong></a></h2>
</div>
<p>Occurs when an aircraft takes off from an airbase, farp, or ship.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> 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 </p>
<div id= "#Functions##OnEventTakeoff" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventTriggerZone" ><strong>MSRSQUEUE:OnEventTriggerZone(EventData)</strong></a></h2>
</div>
<p>Trigger zone.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.</p>
<div id= "#Functions##OnEventTriggerZone" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).OnEventUnitLost" ><strong>MSRSQUEUE:OnEventUnitLost(EventData)</strong></a></h2>
</div>
<p>Occurs when the game thinks an object is destroyed.</p>
<p>Have a look at the class <a href="Core.Event.html##(EVENT)">Core.Event#EVENT</a> as these are just the prototypes.</p>
<ul>
<li>initiator: The unit that is was destroyed.</li>
</ul>
<div id= "#Functions##OnEventUnitLost" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTDATA)">Core.Event#EVENTDATA</a>
<strong><strong>EventData</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The EventData structure.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).ScheduleOnce" ><strong>MSRSQUEUE:ScheduleOnce(Start, SchedulerFunction, ...)</strong></a></h2>
</div>
<p>Schedule a new time event.</p>
<p>Note that the schedule will only take place if the scheduler is <em>started</em>. Even for a single schedule event, the scheduler needs to be started also.</p>
<div id= "#Functions##ScheduleOnce" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>Start</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Specifies the amount of seconds that will be waited before the scheduling is started, and the event function is called.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#function
<strong><strong>SchedulerFunction</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The event function to be called when a timer event occurs. The event function needs to accept the parameters specified in SchedulerArguments.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#table
<strong><strong>...</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Optional arguments that can be given as part of scheduler. The arguments need to be given as a table { param1, param 2, ... }.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p>#string:</p>
</div>
<div class="w3-half">
<p>The Schedule ID of the planned schedule.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).ScheduleRepeat" ><strong>MSRSQUEUE:ScheduleRepeat(Start, Repeat, RandomizeFactor, Stop, SchedulerFunction, ...)</strong></a></h2>
</div>
<p>Schedule a new time event.</p>
<p>Note that the schedule will only take place if the scheduler is <em>started</em>. Even for a single schedule event, the scheduler needs to be started also.</p>
<div id= "#Functions##ScheduleRepeat" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>Start</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Specifies the amount of seconds that will be waited before the scheduling is started, and the event function is called.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>Repeat</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Specifies the interval in seconds when the scheduler will call the event function.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>RandomizeFactor</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Specifies a randomization factor between 0 and 1 to randomize the Repeat.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>Stop</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Specifies the amount of seconds when the scheduler will be stopped.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#function
<strong><strong>SchedulerFunction</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The event function to be called when a timer event occurs. The event function needs to accept the parameters specified in SchedulerArguments.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#table
<strong><strong>...</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Optional arguments that can be given as part of scheduler. The arguments need to be given as a table { param1, param 2, ... }.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p>#string:</p>
</div>
<div class="w3-half">
<p>The Schedule ID of the planned schedule.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).ScheduleStop" ><strong>MSRSQUEUE:ScheduleStop(SchedulerID)</strong></a></h2>
</div>
<p>Stops the Schedule.</p>
<div id= "#Functions##ScheduleStop" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>SchedulerID</strong></strong>
</p>
</div>
<div class="w3-half">
<p>(Optional) Scheduler ID to be stopped. If nil, all pending schedules are stopped.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).SetEventPriority" ><strong>MSRSQUEUE:SetEventPriority(EventPriority)</strong></a></h2>
</div>
<p>Set the Class <a href="Core.Event.html">Core.Event</a> processing Priority.</p>
<p>The Event processing Priority is a number from 1 to 10,
reflecting the order of the classes subscribed to the Event to be processed.</p>
<div id= "#Functions##SetEventPriority" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>EventPriority</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The <a href="Core.Event.html">Core.Event</a> processing Priority.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(BASE)">#BASE</a>:</p>
</div>
<div class="w3-half">
<p>self</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).SetState" ><strong>MSRSQUEUE:SetState(Object, Key, Value)</strong></a></h2>
</div>
<p>Set a state or property of the Object given a Key and a Value.</p>
<p>Note that if the Object is destroyed, set to nil, or garbage collected, then the Values and Keys will also be gone.</p>
<div id= "#Functions##SetState" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Object</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The object that will hold the Value set by the Key.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Key</strong></strong>
</p>
</div>
<div class="w3-half">
<p>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!</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Value</strong></strong>
</p>
</div>
<div class="w3-half">
<p>The value to is stored in the object.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
</div>
<div class="w3-half">
<p>The Value set. </p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).T" ><strong>MSRSQUEUE:T(Arguments)</strong></a></h2>
</div>
<p>Trace a function logic level 1.</p>
<p>Can be anywhere within the function logic.</p>
<div id= "#Functions##T" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Arguments</strong></strong>
</p>
</div>
<div class="w3-half">
<p>A #table or any field.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).T2" ><strong>MSRSQUEUE:T2(Arguments)</strong></a></h2>
</div>
<p>Trace a function logic level 2.</p>
<p>Can be anywhere within the function logic.</p>
<div id= "#Functions##T2" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Arguments</strong></strong>
</p>
</div>
<div class="w3-half">
<p>A #table or any field.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).T3" ><strong>MSRSQUEUE:T3(Arguments)</strong></a></h2>
</div>
<p>Trace a function logic level 3.</p>
<p>Can be anywhere within the function logic.</p>
<div id= "#Functions##T3" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Arguments</strong></strong>
</p>
</div>
<div class="w3-half">
<p>A #table or any field.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).TraceAll" ><strong>MSRSQUEUE:TraceAll(TraceAll)</strong></a></h2>
</div>
<p>Trace all methods in MOOSE</p>
<div id= "#Functions##TraceAll" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#boolean
<strong><strong>TraceAll</strong></strong>
</p>
</div>
<div class="w3-half">
<p>true = trace all methods in MOOSE.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).TraceClass" ><strong>MSRSQUEUE:TraceClass(Class)</strong></a></h2>
</div>
<p>Set tracing for a class</p>
<div id= "#Functions##TraceClass" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>Class</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Class name.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).TraceClassMethod" ><strong>MSRSQUEUE:TraceClassMethod(Class, Method)</strong></a></h2>
</div>
<p>Set tracing for a specific method of class</p>
<div id= "#Functions##TraceClassMethod" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>Class</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Class name.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#string
<strong><strong>Method</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Method.</p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).TraceLevel" ><strong>MSRSQUEUE:TraceLevel(Level)</strong></a></h2>
</div>
<p>Set trace level</p>
<div id= "#Functions##TraceLevel" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#number
<strong><strong>Level</strong></strong>
</p>
</div>
<div class="w3-half">
<p></p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).TraceOff" ><strong>MSRSQUEUE:TraceOff()</strong></a></h2>
</div>
<p>Set trace off.</p>
<div id= "#Functions##TraceOff" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Usage:</strong></h2>
<pre class="example"><code>-- Switch the tracing Off
BASE:TraceOff()</code></pre>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).TraceOn" ><strong>MSRSQUEUE:TraceOn()</strong></a></h2>
</div>
<p>Set trace on.</p>
<div id= "#Functions##TraceOn" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Usage:</strong></h2>
<pre class="example"><code>-- Switch the tracing On
BASE:TraceOn()</code></pre>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).TraceOnOff" ><strong>MSRSQUEUE:TraceOnOff(TraceOnOff)</strong></a></h2>
</div>
<p>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.</p>
<p>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.</p>
<div id= "#Functions##TraceOnOff" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
#boolean
<strong><strong>TraceOnOff</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Switch the tracing on or off.</p>
</div>
</div>
<h2><strong>Usage:</strong></h2>
<pre class="example"><code>
-- Switch the tracing On
BASE:TraceOnOff( true )
-- Switch the tracing Off
BASE:TraceOnOff( false )
</code></pre>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).UnHandleEvent" ><strong>MSRSQUEUE:UnHandleEvent(EventID)</strong></a></h2>
</div>
<p>UnSubscribe to a DCS event.</p>
<div id= "#Functions##UnHandleEvent" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="Core.Event.html##(EVENTS)">Core.Event#EVENTS</a>
<strong><strong>EventID</strong></strong>
</p>
</div>
<div class="w3-half">
<p>Event ID.</p>
</div>
</div>
<h2><strong>Return value:</strong></h2>
<div class="w3-row w3-border-bottom w3-margin-left">
<div class="w3-half">
<p><a href="##(BASE)">#BASE</a>:</p>
</div>
<div class="w3-half">
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE)._F" ><strong>MSRSQUEUE:_F(Arguments, DebugInfoCurrentParam, DebugInfoFromParam)</strong></a></h2>
</div>
<p>Trace a function call.</p>
<p>This function is private.</p>
<div id= "#Functions##_F" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Arguments</strong></strong>
</p>
</div>
<div class="w3-half">
<p>A #table or any field.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>DebugInfoCurrentParam</strong></strong>
</p>
</div>
<div class="w3-half">
<p></p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>DebugInfoFromParam</strong></strong>
</p>
</div>
<div class="w3-half">
<p></p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE)._T" ><strong>MSRSQUEUE:_T(Arguments, DebugInfoCurrentParam, DebugInfoFromParam)</strong></a></h2>
</div>
<p>Trace a function logic.</p>
<div id= "#Functions##_T" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameters:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>Arguments</strong></strong>
</p>
</div>
<div class="w3-half">
<p>A #table or any field.</p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>DebugInfoCurrentParam</strong></strong>
</p>
</div>
<div class="w3-half">
<p></p>
</div>
</div>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<strong><strong>DebugInfoFromParam</strong></strong>
</p>
</div>
<div class="w3-half">
<p></p>
</div>
</div>
</div>
</div>
</div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<div class="w3-theme-l2">
<h2><a id="#(MSRSQUEUE).onEvent" ><strong>MSRSQUEUE:onEvent(event)</strong></a></h2>
</div>
<p>The main event handling function...</p>
<p>This function captures all events generated for the class.</p>
<div id= "#Functions##onEvent" class="w3-show w3-white">
<div class="w3-container w3-white" id="functiontype">
<h2><strong>Defined in:</strong></h2>
<div class="w3-margin-left">
<p><a href="Core.Base.html##(BASE)">Core.Base#BASE</a></p>
</div>
<h2><strong>Parameter:</strong></h2>
<div class="w3-row w3-margin-left w3-border-bottom w3-border-l2">
<div class="w3-half">
<p>
<a href="DCS.html##(Event)">DCS#Event</a>
<strong><strong>event</strong></strong>
</p>
</div>
<div class="w3-half">
<p></p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div onclick="myFunction('#Types##MSRSQUEUE.Transmission')" class="w3-container w3-theme-l2 w3-margin-top"><h2><a id="#(MSRSQUEUE.Transmission)">Type <strong>MSRSQUEUE.Transmission</strong></a></h2></div>
<div id= "#Types##MSRSQUEUE.Transmission" class="w3-container w3-white w3-padding-16" id="module_other_types">
<div class="w3-white" id="record_type">
<p>Radio queue transmission data.</p>
<div class="fields w3-container w3-theme-l2">
<h2>Field(s)</h2>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<a href="Core.Set.html##(SET_CLIENT)">Core.Set#SET_CLIENT</a>
<a id="#(MSRSQUEUE.Transmission).PlayerSet" ><strong>MSRSQUEUE.Transmission.PlayerSet</strong></a>
<p>PlayerSet created when TransmitOnlyWithPlayers == true</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#number
<a id="#(MSRSQUEUE.Transmission).Tplay" ><strong>MSRSQUEUE.Transmission.Tplay</strong></a>
<p>Mission time (abs) in seconds when the transmission should be played.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#boolean
<a id="#(MSRSQUEUE.Transmission).TransmitOnlyWithPlayers" ><strong>MSRSQUEUE.Transmission.TransmitOnlyWithPlayers</strong></a>
<p>If true, only transmit if there are alive Players.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#number
<a id="#(MSRSQUEUE.Transmission).Tstarted" ><strong>MSRSQUEUE.Transmission.Tstarted</strong></a>
<p>Mission time (abs) in seconds when the transmission started.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<a href="Core.Point.html##(COORDINATE)">Core.Point#COORDINATE</a>
<a id="#(MSRSQUEUE.Transmission).coordinate" ><strong>MSRSQUEUE.Transmission.coordinate</strong></a>
<p>Coordinate for this transmission</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRSQUEUE.Transmission).culture" ><strong>MSRSQUEUE.Transmission.culture</strong></a>
<p>Voice culture</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#number
<a id="#(MSRSQUEUE.Transmission).duration" ><strong>MSRSQUEUE.Transmission.duration</strong></a>
<p>Duration in seconds.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#number
<a id="#(MSRSQUEUE.Transmission).frequency" ><strong>MSRSQUEUE.Transmission.frequency</strong></a>
<p>Frequency.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRSQUEUE.Transmission).gender" ><strong>MSRSQUEUE.Transmission.gender</strong></a>
<p>Voice gender</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#number
<a id="#(MSRSQUEUE.Transmission).interval" ><strong>MSRSQUEUE.Transmission.interval</strong></a>
<p>Interval in seconds before next transmission.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#boolean
<a id="#(MSRSQUEUE.Transmission).isplaying" ><strong>MSRSQUEUE.Transmission.isplaying</strong></a>
<p>If true, transmission is currently playing.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRSQUEUE.Transmission).label" ><strong>MSRSQUEUE.Transmission.label</strong></a>
<p>Label to be used</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#number
<a id="#(MSRSQUEUE.Transmission).modulation" ><strong>MSRSQUEUE.Transmission.modulation</strong></a>
<p>Modulation.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
<a href="Sound.SRS.html##(MSRS)">Sound.SRS#MSRS</a>
<a id="#(MSRSQUEUE.Transmission).msrs" ><strong>MSRSQUEUE.Transmission.msrs</strong></a>
<p>MOOSE SRS object.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#number
<a id="#(MSRSQUEUE.Transmission).subduration" ><strong>MSRSQUEUE.Transmission.subduration</strong></a>
<p>Duration of the subtitle being displayed.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#table
<a id="#(MSRSQUEUE.Transmission).subgroups" ><strong>MSRSQUEUE.Transmission.subgroups</strong></a>
<p>Groups to send subtitle to.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRSQUEUE.Transmission).subtitle" ><strong>MSRSQUEUE.Transmission.subtitle</strong></a>
<p>Subtitle of the transmission.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRSQUEUE.Transmission).text" ><strong>MSRSQUEUE.Transmission.text</strong></a>
<p>Text to be transmitted.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#string
<a id="#(MSRSQUEUE.Transmission).voice" ><strong>MSRSQUEUE.Transmission.voice</strong></a>
<p>Voice if any</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#number
<a id="#(MSRSQUEUE.Transmission).volume" ><strong>MSRSQUEUE.Transmission.volume</strong></a>
<p>Volume</p>
</div>
</div>
<div class="functions w3-container w3-theme-l2">
<h2>Function(s)</h2>
</div>
</div>
</div>
<div onclick="myFunction('#Types##MSRS_BACKEND_DCSGRPC')" class="w3-container w3-theme-l2 w3-margin-top"><h2><a id="#(MSRS_BACKEND_DCSGRPC)">Type <strong>MSRS_BACKEND_DCSGRPC</strong></a></h2></div>
<div id= "#Types##MSRS_BACKEND_DCSGRPC" class="w3-container w3-white w3-padding-16" id="module_other_types">
<div class="w3-white" id="record_type">
<p>Alternate backend for MSRS to enable text-to-speech via DCS-gRPC.</p>
<h3>Author: <strong>dogjutsu</strong></h3>
<p>A table containing functions and variables for MSRS to use DCS-gRPC <a href="https://github.com/DCS-gRPC/rust-server">DCS-gRPC</a> 0.7.0 or newer as a backend to transmit over SRS.
This is not a standalone class. Instead, variables and functions under the <code>Vars</code> and <code>Functions</code> tables get added to or replace MSRS variables/functions when activated.</p>
<div class="fields w3-container w3-theme-l2">
<h2>Field(s)</h2>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#table
<a id="#(MSRS_BACKEND_DCSGRPC).Functions" ><strong>MSRS_BACKEND_DCSGRPC.Functions</strong></a>
<p>A table of functions that will add or replace the default MSRS class functions.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#table
<a id="#(MSRS_BACKEND_DCSGRPC).Vars" ><strong>MSRS_BACKEND_DCSGRPC.Vars</strong></a>
<p>A table of variables that will add or replace the default MSRS class variables.</p>
</div>
</div>
<div>
<div class="w3-card-2 w3-padding-small w3-margin-top">
#number
<a id="#(MSRS_BACKEND_DCSGRPC).version" ><strong>MSRS_BACKEND_DCSGRPC.version</strong></a>
<p>Version number of this alternate backend.</p>
</div>
</div>
<div class="functions w3-container w3-theme-l2">
<h2>Function(s)</h2>
</div>
</div>
</div>
</div>
<script>
function myLoadFunction() {
document.getElementById("myHeader").style.backgroundImage = "url('../Images/Sound_MSRS.png')";
}
</script>
</div>
<script>
function w3_open() {
document.getElementsByClassName("w3-sidenav")[0].style.width = "95vw";
document.getElementsByClassName("w3-sidenav")[0].style.maxWidth = "1400px";
document.getElementsByClassName("w3-sidenav")[0].style.display = "block";
}
function w3_close() {
document.getElementsByClassName("w3-sidenav")[0].style.display = "none";
}
function myFunction(id) {
var x = document.getElementById(id);
if (x.className.indexOf("w3-show") == -1) {
x.className += " w3-show";
} else {
x.className = x.className.replace(" w3-show", "");
}
}
</script>
</body>
</html>