From 073bfbf9c97a7382e55f2c91b9a24f07ec75efdc Mon Sep 17 00:00:00 2001 From: FlightControl_Master Date: Sun, 27 May 2018 08:57:44 +0200 Subject: [PATCH] Documentation Improvements --- Moose Development/Moose/AI/AI_A2A.lua | 2 +- Moose Development/Moose/AI/AI_A2A_Cap.lua | 2 +- .../Moose/AI/AI_A2A_Dispatcher.lua | 2 +- Moose Development/Moose/AI/AI_A2A_Gci.lua | 1 + Moose Development/Moose/AI/AI_A2A_Patrol.lua | 2 +- Moose Development/Moose/AI/AI_BAI.lua | 2 +- Moose Development/Moose/AI/AI_CAP.lua | 2 +- Moose Development/Moose/AI/AI_CAS.lua | 6 +- Moose Development/Moose/AI/AI_Cargo_APC.lua | 1 + .../Moose/AI/AI_Cargo_Airplane.lua | 1 + .../Moose/AI/AI_Cargo_Dispatcher.lua | 1 + .../Moose/AI/AI_Cargo_Dispatcher_APC.lua | 2 +- .../Moose/AI/AI_Cargo_Dispatcher_Airplane.lua | 3 +- .../AI/AI_Cargo_Dispatcher_Helicopter.lua | 1 + .../Moose/AI/AI_Cargo_Helicopter.lua | 1 + Moose Development/Moose/AI/AI_Formation.lua | 5 +- Moose Development/Moose/AI/AI_Patrol.lua | 6 +- Moose Development/Moose/Cargo/Cargo.lua | 10 +- Moose Development/Moose/Cargo/CargoCrate.lua | 5 +- Moose Development/Moose/Cargo/CargoGroup.lua | 1 + .../Moose/Cargo/CargoSlingload.lua | 5 +- Moose Development/Moose/Cargo/CargoUnit.lua | 5 +- Moose Development/Moose/Core/Base.lua | 9 +- Moose Development/Moose/Core/Database.lua | 5 +- Moose Development/Moose/Core/Event.lua | 3 +- Moose Development/Moose/Core/Fsm.lua | 23 +--- Moose Development/Moose/Core/Goal.lua | 5 +- Moose Development/Moose/Core/Menu.lua | 40 ++----- Moose Development/Moose/Core/Message.lua | 7 +- Moose Development/Moose/Core/Point.lua | 16 +-- Moose Development/Moose/Core/Radio.lua | 3 +- Moose Development/Moose/Core/Report.lua | 1 + .../Moose/Core/ScheduleDispatcher.lua | 1 + Moose Development/Moose/Core/Scheduler.lua | 8 +- Moose Development/Moose/Core/Set.lua | 108 ++++++++---------- Moose Development/Moose/Core/Settings.lua | 56 ++++----- Moose Development/Moose/Core/Spawn.lua | 11 +- Moose Development/Moose/Core/SpawnStatic.lua | 7 +- Moose Development/Moose/Core/Spot.lua | 7 +- Moose Development/Moose/Core/UserFlag.lua | 8 +- Moose Development/Moose/Core/UserSound.lua | 7 +- Moose Development/Moose/Core/Velocity.lua | 5 +- Moose Development/Moose/Core/Zone.lua | 31 ++--- 43 files changed, 151 insertions(+), 276 deletions(-) diff --git a/Moose Development/Moose/AI/AI_A2A.lua b/Moose Development/Moose/AI/AI_A2A.lua index 10f7507cd..faaeb3745 100644 --- a/Moose Development/Moose/AI/AI_A2A.lua +++ b/Moose Development/Moose/AI/AI_A2A.lua @@ -7,7 +7,7 @@ -- === -- -- @module AI.AI_A2A --- @image Air_To_Air_Dispatching.JPG +-- @image AI_Air_To_Air_Dispatching.JPG --BASE:TraceClass("AI_A2A") diff --git a/Moose Development/Moose/AI/AI_A2A_Cap.lua b/Moose Development/Moose/AI/AI_A2A_Cap.lua index 50cdf48bd..5917ed848 100644 --- a/Moose Development/Moose/AI/AI_A2A_Cap.lua +++ b/Moose Development/Moose/AI/AI_A2A_Cap.lua @@ -7,7 +7,7 @@ -- === -- -- @module AI.AI_A2A_Cap --- @image Combat_Air_Patrol.JPG +-- @image AI_Combat_Air_Patrol.JPG --- @type AI_A2A_CAP -- @extends AI.AI_A2A_Patrol#AI_A2A_PATROL diff --git a/Moose Development/Moose/AI/AI_A2A_Dispatcher.lua b/Moose Development/Moose/AI/AI_A2A_Dispatcher.lua index 0edff73b5..146f35d4d 100644 --- a/Moose Development/Moose/AI/AI_A2A_Dispatcher.lua +++ b/Moose Development/Moose/AI/AI_A2A_Dispatcher.lua @@ -150,7 +150,7 @@ -- ### Authors: **Stonehouse**, **SNAFU** in terms of the advice, documentation, and the original GCICAP script. -- -- @module AI.AI_A2A_Dispatcher --- @image Air_To_Air_Dispatching.JPG +-- @image AI_Air_To_Air_Dispatching.JPG diff --git a/Moose Development/Moose/AI/AI_A2A_Gci.lua b/Moose Development/Moose/AI/AI_A2A_Gci.lua index 98670a381..5d2e2567f 100644 --- a/Moose Development/Moose/AI/AI_A2A_Gci.lua +++ b/Moose Development/Moose/AI/AI_A2A_Gci.lua @@ -9,6 +9,7 @@ -- === -- -- @module AI.AI_A2A_GCI +-- @image AI_AI_Ground_Control_Intercept.JPG diff --git a/Moose Development/Moose/AI/AI_A2A_Patrol.lua b/Moose Development/Moose/AI/AI_A2A_Patrol.lua index ab97e5942..73d814ef6 100644 --- a/Moose Development/Moose/AI/AI_A2A_Patrol.lua +++ b/Moose Development/Moose/AI/AI_A2A_Patrol.lua @@ -7,7 +7,7 @@ -- === -- -- @module AI.AI_A2A_Patrol --- @image Air_Patrolling.JPG +-- @image AI_Air_Patrolling.JPG --- @type AI_A2A_PATROL diff --git a/Moose Development/Moose/AI/AI_BAI.lua b/Moose Development/Moose/AI/AI_BAI.lua index 160516b8b..84ef87f92 100644 --- a/Moose Development/Moose/AI/AI_BAI.lua +++ b/Moose Development/Moose/AI/AI_BAI.lua @@ -18,7 +18,7 @@ -- === -- -- @module AI.AI_Bai --- @image Battlefield_Air_Interdiction.JPG +-- @image AI_Battlefield_Air_Interdiction.JPG --- AI_BAI_ZONE class diff --git a/Moose Development/Moose/AI/AI_CAP.lua b/Moose Development/Moose/AI/AI_CAP.lua index 033baa443..af783bc37 100644 --- a/Moose Development/Moose/AI/AI_CAP.lua +++ b/Moose Development/Moose/AI/AI_CAP.lua @@ -22,7 +22,7 @@ -- === -- -- @module AI.AI_Cap --- @image Combat_Air_Patrol.JPG +-- @image AI_Combat_Air_Patrol.JPG --- @type AI_CAP_ZONE diff --git a/Moose Development/Moose/AI/AI_CAS.lua b/Moose Development/Moose/AI/AI_CAS.lua index 74e18c3b5..a80e348ac 100644 --- a/Moose Development/Moose/AI/AI_CAS.lua +++ b/Moose Development/Moose/AI/AI_CAS.lua @@ -1,10 +1,6 @@ --- **AI** -- (R2.1) - Manages the independent process of Close Air Support for airplanes. -- -- === --- --- ![Banner Image](..\Presentations\AI_CAS\Dia1.JPG) --- --- === -- -- ### [Demo Missions](https://github.com/FlightControl-Master/MOOSE_MISSIONS/tree/master-release/CAS%20-%20Close%20Air%20Support) -- @@ -24,7 +20,7 @@ -- === -- -- @module AI.AI_Cas - +-- @image AI_Close_Air_Support.JPG --- AI_CAS_ZONE class -- @type AI_CAS_ZONE diff --git a/Moose Development/Moose/AI/AI_Cargo_APC.lua b/Moose Development/Moose/AI/AI_Cargo_APC.lua index db1a05e55..e0de55ecc 100644 --- a/Moose Development/Moose/AI/AI_Cargo_APC.lua +++ b/Moose Development/Moose/AI/AI_Cargo_APC.lua @@ -7,6 +7,7 @@ -- === -- -- @module AI.AI_Cargo_APC +-- @image AI_Cargo_Dispatching_For_APC.JPG --- @type AI_CARGO_APC -- @extends Core.Fsm#FSM_CONTROLLABLE diff --git a/Moose Development/Moose/AI/AI_Cargo_Airplane.lua b/Moose Development/Moose/AI/AI_Cargo_Airplane.lua index e216d0aff..ed10d2e5d 100644 --- a/Moose Development/Moose/AI/AI_Cargo_Airplane.lua +++ b/Moose Development/Moose/AI/AI_Cargo_Airplane.lua @@ -7,6 +7,7 @@ -- === -- -- @module AI.AI_Cargo_Airplane +-- @image AI_Cargo_Dispatching_For_Airplanes.JPG --- @type AI_CARGO_AIRPLANE -- @extends Core.Fsm#FSM_CONTROLLABLE diff --git a/Moose Development/Moose/AI/AI_Cargo_Dispatcher.lua b/Moose Development/Moose/AI/AI_Cargo_Dispatcher.lua index a3858a7c7..378c881fe 100644 --- a/Moose Development/Moose/AI/AI_Cargo_Dispatcher.lua +++ b/Moose Development/Moose/AI/AI_Cargo_Dispatcher.lua @@ -7,6 +7,7 @@ -- === -- -- @module AI.AI_Cargo_Dispatcher +-- @image AI_Cargo_Dispatching_For_Helicopters.JPG --- @type AI_CARGO_DISPATCHER -- @extends Core.Fsm#FSM diff --git a/Moose Development/Moose/AI/AI_Cargo_Dispatcher_APC.lua b/Moose Development/Moose/AI/AI_Cargo_Dispatcher_APC.lua index a78ad4ff4..cb400cecc 100644 --- a/Moose Development/Moose/AI/AI_Cargo_Dispatcher_APC.lua +++ b/Moose Development/Moose/AI/AI_Cargo_Dispatcher_APC.lua @@ -7,7 +7,7 @@ -- === -- -- @module AI.AI_Cargo_Dispatcher_APC --- @image Cargo_Dispatching_For_APC.JPG +-- @image AI_Cargo_Dispatching_For_APC.JPG --- @type AI_CARGO_DISPATCHER_APC -- @extends AI.AI_Cargo_Dispatcher#AI_CARGO_DISPATCHER diff --git a/Moose Development/Moose/AI/AI_Cargo_Dispatcher_Airplane.lua b/Moose Development/Moose/AI/AI_Cargo_Dispatcher_Airplane.lua index 6007e9973..409699733 100644 --- a/Moose Development/Moose/AI/AI_Cargo_Dispatcher_Airplane.lua +++ b/Moose Development/Moose/AI/AI_Cargo_Dispatcher_Airplane.lua @@ -7,7 +7,8 @@ -- === -- -- @module AI.AI_Cargo_Dispatcher_Airplane - +-- @image AI_Cargo_Dispatching_For_Airplanes.JPG +-- --- @type AI_CARGO_DISPATCHER_AIRPLANE -- @extends AI.AI_Cargo_Dispatcher#AI_CARGO_DISPATCHER diff --git a/Moose Development/Moose/AI/AI_Cargo_Dispatcher_Helicopter.lua b/Moose Development/Moose/AI/AI_Cargo_Dispatcher_Helicopter.lua index aa3b264fc..bfa86e06e 100644 --- a/Moose Development/Moose/AI/AI_Cargo_Dispatcher_Helicopter.lua +++ b/Moose Development/Moose/AI/AI_Cargo_Dispatcher_Helicopter.lua @@ -9,6 +9,7 @@ -- === -- -- @module AI.AI_Cargo_Dispatcher_Helicopter +-- @image AI_Cargo_Dispatching_For_Helicopters.JPG --- @type AI_CARGO_DISPATCHER_HELICOPTER -- @extends AI.AI_Cargo_Dispatcher#AI_CARGO_DISPATCHER diff --git a/Moose Development/Moose/AI/AI_Cargo_Helicopter.lua b/Moose Development/Moose/AI/AI_Cargo_Helicopter.lua index 555cb858b..b0725cc0a 100644 --- a/Moose Development/Moose/AI/AI_Cargo_Helicopter.lua +++ b/Moose Development/Moose/AI/AI_Cargo_Helicopter.lua @@ -7,6 +7,7 @@ -- === -- -- @module AI.AI_Cargo_Helicopter +-- @image AI_Cargo_Dispatching_For_Helicopters.JPG --- @type AI_CARGO_HELICOPTER -- @extends Core.Fsm#FSM_CONTROLLABLE diff --git a/Moose Development/Moose/AI/AI_Formation.lua b/Moose Development/Moose/AI/AI_Formation.lua index db5e6edad..ebc5d2b6f 100644 --- a/Moose Development/Moose/AI/AI_Formation.lua +++ b/Moose Development/Moose/AI/AI_Formation.lua @@ -2,10 +2,6 @@ -- -- === -- --- ![Banner Image](..\Presentations\AI_FORMATION\Dia1.JPG) --- --- === --- -- AI_FORMATION makes AI @{Wrapper.Group}s fly in formation of various compositions. -- The AI_FORMATION class models formations in a different manner than the internal DCS formation logic!!! -- The purpose of the class is to: @@ -46,6 +42,7 @@ -- === -- -- @module AI.AI_Formation +-- @image AI_Large_Formations.JPG --- AI_FORMATION class -- @type AI_FORMATION diff --git a/Moose Development/Moose/AI/AI_Patrol.lua b/Moose Development/Moose/AI/AI_Patrol.lua index 77026ce02..74e06492b 100644 --- a/Moose Development/Moose/AI/AI_Patrol.lua +++ b/Moose Development/Moose/AI/AI_Patrol.lua @@ -2,10 +2,6 @@ -- -- === -- --- ![Banner Image](..\Presentations\AI_PATROL\Dia1.JPG) --- --- === --- -- AI PATROL classes makes AI Controllables execute an Patrol. -- -- There are the following types of PATROL classes defined: @@ -31,7 +27,7 @@ -- === -- -- @module AI.AI_Patrol - +-- @image AI_Air_Patrolling.JPG --- AI_PATROL_ZONE class -- @type AI_PATROL_ZONE diff --git a/Moose Development/Moose/Cargo/Cargo.lua b/Moose Development/Moose/Cargo/Cargo.lua index 566ba7beb..31fa1644e 100644 --- a/Moose Development/Moose/Cargo/Cargo.lua +++ b/Moose Development/Moose/Cargo/Cargo.lua @@ -1,15 +1,6 @@ --- **Core** -- Management of CARGO logistics, that can be transported from and to transportation carriers. -- -- === --- --- ![Banner Image](..\Presentations\CARGO\Dia1.JPG) --- --- === --- --- --- This module is still under construction, but is described above works already, and will keep working ... --- --- === -- -- ### Author: **FlightControl** -- ### Contributions: @@ -17,6 +8,7 @@ -- === -- -- @module Cargo.Cargo +-- @image Cargo.JPG -- Events diff --git a/Moose Development/Moose/Cargo/CargoCrate.lua b/Moose Development/Moose/Cargo/CargoCrate.lua index 0256721da..c3e12ddea 100644 --- a/Moose Development/Moose/Cargo/CargoCrate.lua +++ b/Moose Development/Moose/Cargo/CargoCrate.lua @@ -1,10 +1,6 @@ --- **Cargo** -- Management of single cargo crates, which are based on a @{Static} object. -- -- === --- --- ![Banner Image](..\Presentations\CARGO\Dia1.JPG) --- --- === -- -- ### [Demo Missions]() -- @@ -18,6 +14,7 @@ -- === -- -- @module Cargo.CargoCrate +-- @image Cargo_Crates.JPG do -- CARGO_CRATE diff --git a/Moose Development/Moose/Cargo/CargoGroup.lua b/Moose Development/Moose/Cargo/CargoGroup.lua index b2fab505c..98435b25c 100644 --- a/Moose Development/Moose/Cargo/CargoGroup.lua +++ b/Moose Development/Moose/Cargo/CargoGroup.lua @@ -18,6 +18,7 @@ -- === -- -- @module Cargo.CargoGroup +-- @image Cargo_Groups.JPG do -- CARGO_GROUP diff --git a/Moose Development/Moose/Cargo/CargoSlingload.lua b/Moose Development/Moose/Cargo/CargoSlingload.lua index b16e1ffe6..617cc4770 100644 --- a/Moose Development/Moose/Cargo/CargoSlingload.lua +++ b/Moose Development/Moose/Cargo/CargoSlingload.lua @@ -1,10 +1,6 @@ --- **Cargo** -- Management of single cargo crates, which are based on a @{Static} object. The cargo can only be slingloaded. -- -- === --- --- ![Banner Image](..\Presentations\CARGO\Dia1.JPG) --- --- === -- -- ### [Demo Missions]() -- @@ -18,6 +14,7 @@ -- === -- -- @module Cargo.CargoSlingload +-- @image Cargo_Slingload.JPG do -- CARGO_SLINGLOAD diff --git a/Moose Development/Moose/Cargo/CargoUnit.lua b/Moose Development/Moose/Cargo/CargoUnit.lua index 43d5a7350..09fd9f0ce 100644 --- a/Moose Development/Moose/Cargo/CargoUnit.lua +++ b/Moose Development/Moose/Cargo/CargoUnit.lua @@ -1,10 +1,6 @@ --- **Cargo** -- Management of single cargo logistics, which are based on a @{Wrapper.Unit} object. -- -- === --- --- ![Banner Image](..\Presentations\CARGO\Dia1.JPG) --- --- === -- -- ### [Demo Missions]() -- @@ -18,6 +14,7 @@ -- === -- -- @module Cargo.CargoUnit +-- @image Cargo_Units.JPG do -- CARGO_UNIT diff --git a/Moose Development/Moose/Core/Base.lua b/Moose Development/Moose/Core/Base.lua index f9577a7d1..12a8a5efe 100644 --- a/Moose Development/Moose/Core/Base.lua +++ b/Moose Development/Moose/Core/Base.lua @@ -1,15 +1,12 @@ --- **Core** -- BASE forms **the basis of the MOOSE framework**. Each class within the MOOSE framework derives from BASE. -- --- ![Banner Image](..\Presentations\BASE\Dia1.JPG) --- --- === --- -- ### Author: **FlightControl** -- ### Contributions: -- -- === -- -- @module Core.Base +-- @image Core_Base.JPG @@ -26,9 +23,7 @@ local _ClassID = 0 -- @field ClassID The ID number of the class. -- @field ClassNameAndID The name of the class concatenated with the ID number of the class. ---- # 1) #BASE class --- --- All classes within the MOOSE framework are derived from the BASE class. +--- All classes within the MOOSE framework are derived from the BASE class. -- -- BASE provides facilities for : -- diff --git a/Moose Development/Moose/Core/Database.lua b/Moose Development/Moose/Core/Database.lua index ec7c4c9e5..eea110521 100644 --- a/Moose Development/Moose/Core/Database.lua +++ b/Moose Development/Moose/Core/Database.lua @@ -8,14 +8,13 @@ -- === -- -- @module Core.Database +-- @image Core_Database.JPG --- @type DATABASE -- @extends Core.Base#BASE ---- # DATABASE class, extends @{Core.Base#BASE} --- --- Mission designers can use the DATABASE class to refer to: +--- Mission designers can use the DATABASE class to refer to: -- -- * STATICS -- * UNITS diff --git a/Moose Development/Moose/Core/Event.lua b/Moose Development/Moose/Core/Event.lua index d786101fa..dd739a0d9 100644 --- a/Moose Development/Moose/Core/Event.lua +++ b/Moose Development/Moose/Core/Event.lua @@ -1,7 +1,5 @@ --- **Core** -- EVENT models DCS **event dispatching** using a **publish-subscribe** model. -- --- ![Banner Image](..\Presentations\EVENT\Dia1.JPG) --- -- === -- -- # 1) Event Handling Overview @@ -165,6 +163,7 @@ -- === -- -- @module Core.Event +-- @image Core_Event.JPG --- The EVENT structure diff --git a/Moose Development/Moose/Core/Fsm.lua b/Moose Development/Moose/Core/Fsm.lua index e81bb9519..b92beb1c1 100644 --- a/Moose Development/Moose/Core/Fsm.lua +++ b/Moose Development/Moose/Core/Fsm.lua @@ -1,8 +1,6 @@ --- **Core** -- The **FSM** (**F**inite **S**tate **M**achine) class and derived **FSM\_** classes -- are design patterns allowing efficient (long-lasting) processes and workflows. -- --- ![Banner Image](..\Presentations\FSM\Dia1.JPG) --- -- === -- -- A Finite State Machine (FSM) models a process flow that transitions between various **States** through triggered **Events**. @@ -65,6 +63,7 @@ -- === -- -- @module Core.Fsm +-- @image Core_Finite_State_Machine.JPG do -- FSM @@ -72,9 +71,7 @@ do -- FSM -- @extends Core.Base#BASE - --- # FSM class, extends @{Core.Base#BASE} - -- - -- A Finite State Machine (FSM) models a process flow that transitions between various **States** through triggered **Events**. + --- A Finite State Machine (FSM) models a process flow that transitions between various **States** through triggered **Events**. -- -- A FSM can only be in one of a finite number of states. -- The machine is in only one state at a time; the state it is in at any given time is called the **current state**. @@ -804,9 +801,7 @@ do -- FSM_CONTROLLABLE -- @field Wrapper.Controllable#CONTROLLABLE Controllable -- @extends Core.Fsm#FSM - --- # FSM_CONTROLLABLE, extends @{#FSM} - -- - -- FSM_CONTROLLABLE class models Finite State Machines for @{Wrapper.Controllable}s, which are @{Wrapper.Group}s, @{Wrapper.Unit}s, @{Client}s. + --- FSM_CONTROLLABLE class models Finite State Machines for @{Wrapper.Controllable}s, which are @{Wrapper.Group}s, @{Wrapper.Unit}s, @{Client}s. -- -- === -- @@ -939,9 +934,7 @@ do -- FSM_PROCESS -- @extends Core.Fsm#FSM_CONTROLLABLE - --- # FSM_PROCESS, extends @{#FSM} - -- - -- FSM_PROCESS class models Finite State Machines for @{Task} actions, which control @{Client}s. + --- FSM_PROCESS class models Finite State Machines for @{Task} actions, which control @{Client}s. -- -- === -- @@ -1184,9 +1177,7 @@ do -- FSM_TASK -- @field Tasking.Task#TASK Task -- @extends #FSM - --- # FSM_TASK, extends @{#FSM} - -- - -- FSM_TASK class models Finite State Machines for @{Task}s. + --- FSM_TASK class models Finite State Machines for @{Task}s. -- -- === -- @@ -1230,9 +1221,7 @@ do -- FSM_SET -- @extends Core.Fsm#FSM - --- # FSM_SET, extends @{#FSM} - -- - -- FSM_SET class models Finite State Machines for @{Set}s. Note that these FSMs control multiple objects!!! So State concerns here + --- FSM_SET class models Finite State Machines for @{Set}s. Note that these FSMs control multiple objects!!! So State concerns here -- for multiple objects or the position of the state machine in the process. -- -- === diff --git a/Moose Development/Moose/Core/Goal.lua b/Moose Development/Moose/Core/Goal.lua index ba8e9ea1d..608c4ecc0 100644 --- a/Moose Development/Moose/Core/Goal.lua +++ b/Moose Development/Moose/Core/Goal.lua @@ -11,6 +11,7 @@ -- === -- -- @module Core.Goal +-- @image Core_Goal.JPG do -- Goal @@ -18,9 +19,7 @@ do -- Goal -- @extends Core.Fsm#FSM - --- # GOAL class, extends @{Core.Fsm#FSM} - -- - -- GOAL models processes that have an objective with a defined achievement. Derived classes implement the ways how the achievements can be realized. + --- GOAL models processes that have an objective with a defined achievement. Derived classes implement the ways how the achievements can be realized. -- -- ## 1. GOAL constructor -- diff --git a/Moose Development/Moose/Core/Menu.lua b/Moose Development/Moose/Core/Menu.lua index 6850b9213..b93cb59c9 100644 --- a/Moose Development/Moose/Core/Menu.lua +++ b/Moose Development/Moose/Core/Menu.lua @@ -31,6 +31,7 @@ -- === -- -- @module Core.Menu +-- @image Core_Menu.JPG MENU_INDEX = {} @@ -182,8 +183,7 @@ do -- MENU_BASE --- @type MENU_BASE -- @extends Base#BASE - --- # MENU_BASE class, extends @{Core.Base#BASE} - -- The MENU_BASE class defines the main MENU class where other MENU classes are derived from. + --- The MENU_BASE class defines the main MENU class where other MENU classes are derived from. -- This is an abstract class, so don't use it. -- @field #MENU_BASE MENU_BASE = { @@ -286,9 +286,7 @@ do -- MENU_COMMAND_BASE -- @field #function MenuCallHandler -- @extends Core.Menu#MENU_BASE - --- # MENU_COMMAND_BASE class, extends @{Core.Base#BASE} - -- ---------------------------------------------------------- - -- The MENU_COMMAND_BASE class defines the main MENU class where other MENU COMMAND_ + --- The MENU_COMMAND_BASE class defines the main MENU class where other MENU COMMAND_ -- classes are derived from, in order to set commands. -- -- @field #MENU_COMMAND_BASE @@ -358,9 +356,7 @@ do -- MENU_MISSION --- @type MENU_MISSION -- @extends Core.Menu#MENU_BASE - --- # MENU_MISSION class, extends @{Menu#MENU_BASE} - -- - -- The MENU_MISSION class manages the main menus for a complete mission. + --- The MENU_MISSION class manages the main menus for a complete mission. -- You can add menus with the @{#MENU_MISSION.New} method, which constructs a MENU_MISSION object and returns you the object reference. -- Using this object reference, you can then remove ALL the menus and submenus underlying automatically with @{#MENU_MISSION.Remove}. -- @field #MENU_MISSION @@ -455,9 +451,7 @@ do -- MENU_MISSION_COMMAND --- @type MENU_MISSION_COMMAND -- @extends Core.Menu#MENU_COMMAND_BASE - --- # MENU_MISSION_COMMAND class, extends @{Menu#MENU_COMMAND_BASE} - -- - -- The MENU_MISSION_COMMAND class manages the command menus for a complete mission, which allow players to execute functions during mission execution. + --- The MENU_MISSION_COMMAND class manages the command menus for a complete mission, which allow players to execute functions during mission execution. -- You can add menus with the @{#MENU_MISSION_COMMAND.New} method, which constructs a MENU_MISSION_COMMAND object and returns you the object reference. -- Using this object reference, you can then remove ALL the menus and submenus underlying automatically with @{#MENU_MISSION_COMMAND.Remove}. -- @@ -542,9 +536,7 @@ do -- MENU_COALITION --- @type MENU_COALITION -- @extends Core.Menu#MENU_BASE - --- # MENU_COALITION class, extends @{Menu#MENU_BASE} - -- - -- The @{Menu#MENU_COALITION} class manages the main menus for coalitions. + --- The @{Menu#MENU_COALITION} class manages the main menus for coalitions. -- You can add menus with the @{#MENU_COALITION.New} method, which constructs a MENU_COALITION object and returns you the object reference. -- Using this object reference, you can then remove ALL the menus and submenus underlying automatically with @{#MENU_COALITION.Remove}. -- @@ -680,9 +672,7 @@ do -- MENU_COALITION_COMMAND --- @type MENU_COALITION_COMMAND -- @extends Core.Menu#MENU_COMMAND_BASE - --- # MENU_COALITION_COMMAND class, extends @{Menu#MENU_COMMAND_BASE} - -- - -- The MENU_COALITION_COMMAND class manages the command menus for coalitions, which allow players to execute functions during mission execution. + --- The MENU_COALITION_COMMAND class manages the command menus for coalitions, which allow players to execute functions during mission execution. -- You can add menus with the @{#MENU_COALITION_COMMAND.New} method, which constructs a MENU_COALITION_COMMAND object and returns you the object reference. -- Using this object reference, you can then remove ALL the menus and submenus underlying automatically with @{#MENU_COALITION_COMMAND.Remove}. -- @@ -780,9 +770,7 @@ do -- @extends Core.Menu#MENU_BASE - --- #MENU_GROUP class, extends @{Menu#MENU_BASE} - -- - -- The MENU_GROUP class manages the main menus for coalitions. + --- The MENU_GROUP class manages the main menus for coalitions. -- You can add menus with the @{#MENU_GROUP.New} method, which constructs a MENU_GROUP object and returns you the object reference. -- Using this object reference, you can then remove ALL the menus and submenus underlying automatically with @{#MENU_GROUP.Remove}. -- @@ -938,9 +926,7 @@ do --- @type MENU_GROUP_COMMAND -- @extends Core.Menu#MENU_COMMAND_BASE - --- # MENU_GROUP_COMMAND class, extends @{Menu#MENU_COMMAND_BASE} - -- - -- The @{Menu#MENU_GROUP_COMMAND} class manages the command menus for coalitions, which allow players to execute functions during mission execution. + --- The @{Menu#MENU_GROUP_COMMAND} class manages the command menus for coalitions, which allow players to execute functions during mission execution. -- You can add menus with the @{#MENU_GROUP_COMMAND.New} method, which constructs a MENU_GROUP_COMMAND object and returns you the object reference. -- Using this object reference, you can then remove ALL the menus and submenus underlying automatically with @{#MENU_GROUP_COMMAND.Remove}. -- @@ -1035,9 +1021,7 @@ do -- @extends Core.Menu#MENU_BASE - --- #MENU_GROUP_DELAYED class, extends @{Menu#MENU_BASE} - -- - -- The MENU_GROUP_DELAYED class manages the main menus for groups. + --- The MENU_GROUP_DELAYED class manages the main menus for groups. -- You can add menus with the @{#MENU_GROUP.New} method, which constructs a MENU_GROUP object and returns you the object reference. -- Using this object reference, you can then remove ALL the menus and submenus underlying automatically with @{#MENU_GROUP.Remove}. -- The creation of the menu item is delayed however, and must be created using the @{#MENU_GROUP.Set} method. @@ -1171,9 +1155,7 @@ do --- @type MENU_GROUP_COMMAND_DELAYED -- @extends Core.Menu#MENU_COMMAND_BASE - --- # MENU_GROUP_COMMAND_DELAYED class, extends @{Menu#MENU_COMMAND_BASE} - -- - -- The @{Menu#MENU_GROUP_COMMAND_DELAYED} class manages the command menus for coalitions, which allow players to execute functions during mission execution. + --- The @{Menu#MENU_GROUP_COMMAND_DELAYED} class manages the command menus for coalitions, which allow players to execute functions during mission execution. -- You can add menus with the @{#MENU_GROUP_COMMAND_DELAYED.New} method, which constructs a MENU_GROUP_COMMAND_DELAYED object and returns you the object reference. -- Using this object reference, you can then remove ALL the menus and submenus underlying automatically with @{#MENU_GROUP_COMMAND_DELAYED.Remove}. -- diff --git a/Moose Development/Moose/Core/Message.lua b/Moose Development/Moose/Core/Message.lua index d2256e436..926284332 100644 --- a/Moose Development/Moose/Core/Message.lua +++ b/Moose Development/Moose/Core/Message.lua @@ -1,18 +1,15 @@ --- **Core** -- MESSAGE class takes are of the **real-time notifications** and **messages to players** during a simulation. -- --- ![Banner Image](..\Presentations\MESSAGE\Dia1.JPG) --- -- === -- -- @module Core.Message +-- @image Core_Message.JPG --- The MESSAGE class -- @type MESSAGE -- @extends Core.Base#BASE ---- # MESSAGE class, extends @{Core.Base#BASE} --- --- Message System to display Messages to Clients, Coalitions or All. +--- Message System to display Messages to Clients, Coalitions or All. -- Messages are shown on the display panel for an amount of seconds, and will then disappear. -- Messages can contain a category which is indicating the category of the message. -- diff --git a/Moose Development/Moose/Core/Point.lua b/Moose Development/Moose/Core/Point.lua index cd8390f7b..6f1f25468 100644 --- a/Moose Development/Moose/Core/Point.lua +++ b/Moose Development/Moose/Core/Point.lua @@ -1,7 +1,5 @@ --- **Core** -- **POINT\_VEC** classes define an **extensive API** to **manage 3D points** in the simulation space. -- --- ![Banner Image](..\Presentations\POINT\Dia1.JPG) --- -- === -- -- # Demo Missions @@ -27,7 +25,7 @@ -- ### Contributions: -- -- @module Core.Point - +-- @image Core_Coordinate.JPG @@ -38,9 +36,7 @@ do -- COORDINATE -- @extends Core.Base#BASE - --- # COORDINATE class, extends @{Core.Base#BASE} - -- - -- COORDINATE defines a 3D point in the simulator and with its methods, you can use or manipulate the point in 3D space. + --- COORDINATE defines a 3D point in the simulator and with its methods, you can use or manipulate the point in 3D space. -- -- ## COORDINATE constructor -- @@ -1584,9 +1580,7 @@ do -- POINT_VEC3 -- @extends Core.Point#COORDINATE - --- # POINT_VEC3 class, extends @{Point#COORDINATE} - -- - -- POINT_VEC3 defines a 3D point in the simulator and with its methods, you can use or manipulate the point in 3D space. + --- POINT_VEC3 defines a 3D point in the simulator and with its methods, you can use or manipulate the point in 3D space. -- -- **Important Note:** Most of the functions in this section were taken from MIST, and reworked to OO concepts. -- In order to keep the credibility of the the author, @@ -1797,9 +1791,7 @@ do -- POINT_VEC2 -- @field Dcs.DCSTypes#Distance y the y coordinate in meters. -- @extends Core.Point#COORDINATE - --- # POINT_VEC2 class, extends @{Point#COORDINATE} - -- - -- The @{Point#POINT_VEC2} class defines a 2D point in the simulator. The height coordinate (if needed) will be the land height + an optional added height specified. + --- The @{Point#POINT_VEC2} class defines a 2D point in the simulator. The height coordinate (if needed) will be the land height + an optional added height specified. -- -- ## POINT_VEC2 constructor -- diff --git a/Moose Development/Moose/Core/Radio.lua b/Moose Development/Moose/Core/Radio.lua index 4bc0c24a1..1e1d96aaf 100644 --- a/Moose Development/Moose/Core/Radio.lua +++ b/Moose Development/Moose/Core/Radio.lua @@ -1,7 +1,5 @@ --- **Core** -- The RADIO Module is responsible for everything that is related to radio transmission and you can hear in DCS, be it TACAN beacons, Radio transmissions... -- --- ![Banner Image](..\Presentations\RADIO\Dia1.JPG) --- -- === -- -- The Radio contains 2 classes : RADIO and BEACON @@ -33,6 +31,7 @@ -- ### Author: Hugues "Grey_Echo" Bousquet -- -- @module Core.Radio +-- @image Core_Radio.JPG --- # RADIO class, extends @{Core.Base#BASE} diff --git a/Moose Development/Moose/Core/Report.lua b/Moose Development/Moose/Core/Report.lua index c6a66fca8..c570bb39b 100644 --- a/Moose Development/Moose/Core/Report.lua +++ b/Moose Development/Moose/Core/Report.lua @@ -9,6 +9,7 @@ -- ### Contributions: -- -- @module Core.Report +-- @image Core_Report.JPG --- The REPORT class diff --git a/Moose Development/Moose/Core/ScheduleDispatcher.lua b/Moose Development/Moose/Core/ScheduleDispatcher.lua index 20f3b5185..a9d27adbc 100644 --- a/Moose Development/Moose/Core/ScheduleDispatcher.lua +++ b/Moose Development/Moose/Core/ScheduleDispatcher.lua @@ -31,6 +31,7 @@ -- ### Authors: FlightControl : Design & Programming -- -- @module Core.ScheduleDispatcher +-- @image Core_Schedule_Dispatcher.JPG --- The SCHEDULEDISPATCHER structure -- @type SCHEDULEDISPATCHER diff --git a/Moose Development/Moose/Core/Scheduler.lua b/Moose Development/Moose/Core/Scheduler.lua index 98b824205..734c31c01 100644 --- a/Moose Development/Moose/Core/Scheduler.lua +++ b/Moose Development/Moose/Core/Scheduler.lua @@ -1,7 +1,5 @@ --- **Core** -- SCHEDULER prepares and handles the **execution of functions over scheduled time (intervals)**. -- --- ![Banner Image](..\Presentations\SCHEDULER\Dia1.JPG) --- -- === -- -- SCHEDULER manages the **scheduling of functions**: @@ -40,7 +38,7 @@ -- === -- -- @module Core.Scheduler - +-- @image Core_Scheduler.JPG --- The SCHEDULER class -- @type SCHEDULER @@ -48,9 +46,7 @@ -- @extends Core.Base#BASE ---- # SCHEDULER class, extends @{Core.Base#BASE} --- --- The SCHEDULER class creates schedule. +--- The SCHEDULER class creates schedule. -- -- A SCHEDULER can manage **multiple** (repeating) schedules. Each planned or executing schedule has a unique **ScheduleID**. -- The ScheduleID is returned when the method @{#SCHEDULER.Schedule}() is called. diff --git a/Moose Development/Moose/Core/Set.lua b/Moose Development/Moose/Core/Set.lua index 800511352..fbaed636e 100644 --- a/Moose Development/Moose/Core/Set.lua +++ b/Moose Development/Moose/Core/Set.lua @@ -1,7 +1,5 @@ --- **Core** -- SET_ classes define **collections** of objects to perform **bulk actions** and logically **group** objects. -- --- ![Banner Image](..\Presentations\SET\Dia1.JPG) --- -- === -- -- SET_ classes group objects of the same type into a collection, which is either: @@ -31,6 +29,7 @@ -- === -- -- @module Core.Set +-- @image Core_Sets.JPG --- @type SET_BASE @@ -41,18 +40,17 @@ -- @extends Core.Base#BASE ---- # 1) SET_BASE class, extends @{Core.Base#BASE} --- The @{Core.Set#SET_BASE} class defines the core functions that define a collection of objects. +--- The @{Core.Set#SET_BASE} class defines the core functions that define a collection of objects. -- A SET provides iterators to iterate the SET, but will **temporarily** yield the ForEach interator loop at defined **"intervals"** to the mail simulator loop. -- In this way, large loops can be done while not blocking the simulator main processing loop. -- The default **"yield interval"** is after 10 objects processed. -- The default **"time interval"** is after 0.001 seconds. -- --- ## 1.1) Add or remove objects from the SET +-- ## Add or remove objects from the SET -- -- Some key core functions are @{Core.Set#SET_BASE.Add} and @{Core.Set#SET_BASE.Remove} to add or remove objects from the SET in your logic. -- --- ## 1.2) Define the SET iterator **"yield interval"** and the **"time interval"** +-- ## Define the SET iterator **"yield interval"** and the **"time interval"** -- -- Modify the iterator intervals with the @{Core.Set#SET_BASE.SetInteratorIntervals} method. -- You can set the **"yield interval"**, and the **"time interval"**. (See above). @@ -647,27 +645,25 @@ end --- @type SET_GROUP -- @extends Core.Set#SET_BASE ---- # SET_GROUP class, extends @{Core.Set#SET_BASE} --- --- Mission designers can use the @{Core.Set#SET_GROUP} class to build sets of groups belonging to certain: +--- Mission designers can use the @{Core.Set#SET_GROUP} class to build sets of groups belonging to certain: -- -- * Coalitions -- * Categories -- * Countries -- * Starting with certain prefix strings. -- --- ## 1. SET_GROUP constructor +-- ## SET_GROUP constructor -- -- Create a new SET_GROUP object with the @{#SET_GROUP.New} method: -- -- * @{#SET_GROUP.New}: Creates a new SET_GROUP object. -- --- ## 2. Add or Remove GROUP(s) from SET_GROUP +-- ## Add or Remove GROUP(s) from SET_GROUP -- -- GROUPS can be added and removed using the @{Core.Set#SET_GROUP.AddGroupsByName} and @{Core.Set#SET_GROUP.RemoveGroupsByName} respectively. -- These methods take a single GROUP name or an array of GROUP names to be added or removed from SET_GROUP. -- --- ## 3. SET_GROUP filter criteria +-- ## SET_GROUP filter criteria -- -- You can set filter criteria to define the set of groups within the SET_GROUP. -- Filter criteria are defined by: @@ -694,7 +690,7 @@ end -- -- * @{#SET_GROUP.FilterZones}: Builds the SET_GROUP with the groups within a @{Core.Zone#ZONE}. -- --- ## 4. SET_GROUP iterators +-- ## SET_GROUP iterators -- -- Once the filters have been defined and the SET_GROUP has been built, you can iterate the SET_GROUP with the available iterator methods. -- The iterator methods will walk the SET_GROUP set, and call for each element within the set a function that you provide. @@ -706,11 +702,11 @@ end -- * @{#SET_GROUP.ForEachGroupNotInZone}: Iterate the SET_GROUP and call an iterator function for each **alive** GROUP presence not in a @{Zone}, providing the GROUP and optional parameters to the called function. -- -- --- ## 5. SET_GROUP trigger events on the GROUP objects. +-- ## SET_GROUP trigger events on the GROUP objects. -- -- The SET is derived from the FSM class, which provides extra capabilities to track the contents of the GROUP objects in the SET_GROUP. -- --- ### 5.1. When a GROUP object crashes or is dead, the SET_GROUP will trigger a **Dead** event. +-- ### When a GROUP object crashes or is dead, the SET_GROUP will trigger a **Dead** event. -- -- You can handle the event using the OnBefore and OnAfter event handlers. -- The event handlers need to have the paramters From, Event, To, GroupObject. @@ -1423,9 +1419,7 @@ do -- SET_UNIT --- @type SET_UNIT -- @extends Core.Set#SET_BASE - --- # 3) SET_UNIT class, extends @{Core.Set#SET_BASE} - -- - -- Mission designers can use the SET_UNIT class to build sets of units belonging to certain: + --- Mission designers can use the SET_UNIT class to build sets of units belonging to certain: -- -- * Coalitions -- * Categories @@ -1433,18 +1427,18 @@ do -- SET_UNIT -- * Unit types -- * Starting with certain prefix strings. -- - -- ## 3.1) SET_UNIT constructor + -- ## SET_UNIT constructor -- -- Create a new SET_UNIT object with the @{#SET_UNIT.New} method: -- -- * @{#SET_UNIT.New}: Creates a new SET_UNIT object. -- - -- ## 3.2) Add or Remove UNIT(s) from SET_UNIT + -- ## Add or Remove UNIT(s) from SET_UNIT -- -- UNITs can be added and removed using the @{Core.Set#SET_UNIT.AddUnitsByName} and @{Core.Set#SET_UNIT.RemoveUnitsByName} respectively. -- These methods take a single UNIT name or an array of UNIT names to be added or removed from SET_UNIT. -- - -- ## 3.3) SET_UNIT filter criteria + -- ## SET_UNIT filter criteria -- -- You can set filter criteria to define the set of units within the SET_UNIT. -- Filter criteria are defined by: @@ -1463,7 +1457,7 @@ do -- SET_UNIT -- -- * @{#SET_UNIT.FilterZones}: Builds the SET_UNIT with the units within a @{Core.Zone#ZONE}. -- - -- ## 3.4) SET_UNIT iterators + -- ## SET_UNIT iterators -- -- Once the filters have been defined and the SET_UNIT has been built, you can iterate the SET_UNIT with the available iterator methods. -- The iterator methods will walk the SET_UNIT set, and call for each element within the set a function that you provide. @@ -1479,13 +1473,13 @@ do -- SET_UNIT -- * @{#SET_UNIT.ForEachUnitCompletelyInZone}: Iterate and call an iterator function for each **alive** UNIT presence completely in a @{Zone}, providing the UNIT and optional parameters to the called function. -- * @{#SET_UNIT.ForEachUnitNotInZone}: Iterate and call an iterator function for each **alive** UNIT presence not in a @{Zone}, providing the UNIT and optional parameters to the called function. -- - -- ## 3.5 ) SET_UNIT atomic methods + -- ## SET_UNIT atomic methods -- -- Various methods exist for a SET_UNIT to perform actions or calculations and retrieve results from the SET_UNIT: -- -- * @{#SET_UNIT.GetTypeNames}(): Retrieve the type names of the @{Wrapper.Unit}s in the SET, delimited by a comma. -- - -- ## 4. SET_UNIT iterators + -- ## SET_UNIT iterators -- -- Once the filters have been defined and the SET_UNIT has been built, you can iterate the SET_UNIT with the available iterator methods. -- The iterator methods will walk the SET_UNIT set, and call for each element within the set a function that you provide. @@ -1495,11 +1489,11 @@ do -- SET_UNIT -- * @{#SET_UNIT.ForEachUnitInZone}: Iterate the SET_UNIT and call an iterator function for each **alive** UNIT object presence completely in a @{Zone}, providing the UNIT object and optional parameters to the called function. -- * @{#SET_UNIT.ForEachUnitNotInZone}: Iterate the SET_UNIT and call an iterator function for each **alive** UNIT object presence not in a @{Zone}, providing the UNIT object and optional parameters to the called function. -- - -- ## 5. SET_UNIT trigger events on the UNIT objects. + -- ## SET_UNIT trigger events on the UNIT objects. -- -- The SET is derived from the FSM class, which provides extra capabilities to track the contents of the UNIT objects in the SET_UNIT. -- - -- ### 5.1. When a UNIT object crashes or is dead, the SET_UNIT will trigger a **Dead** event. + -- ### When a UNIT object crashes or is dead, the SET_UNIT will trigger a **Dead** event. -- -- You can handle the event using the OnBefore and OnAfter event handlers. -- The event handlers need to have the paramters From, Event, To, GroupObject. @@ -2423,9 +2417,7 @@ do -- SET_STATIC --- @type SET_STATIC -- @extends Core.Set#SET_BASE - --- # 3) SET_STATIC class, extends @{Core.Set#SET_BASE} - -- - -- Mission designers can use the SET_STATIC class to build sets of Statics belonging to certain: + --- Mission designers can use the SET_STATIC class to build sets of Statics belonging to certain: -- -- * Coalitions -- * Categories @@ -2433,18 +2425,18 @@ do -- SET_STATIC -- * Static types -- * Starting with certain prefix strings. -- - -- ## 3.1) SET_STATIC constructor + -- ## SET_STATIC constructor -- -- Create a new SET_STATIC object with the @{#SET_STATIC.New} method: -- -- * @{#SET_STATIC.New}: Creates a new SET_STATIC object. -- - -- ## 3.2) Add or Remove STATIC(s) from SET_STATIC + -- ## Add or Remove STATIC(s) from SET_STATIC -- -- STATICs can be added and removed using the @{Core.Set#SET_STATIC.AddStaticsByName} and @{Core.Set#SET_STATIC.RemoveStaticsByName} respectively. -- These methods take a single STATIC name or an array of STATIC names to be added or removed from SET_STATIC. -- - -- ## 3.3) SET_STATIC filter criteria + -- ## SET_STATIC filter criteria -- -- You can set filter criteria to define the set of units within the SET_STATIC. -- Filter criteria are defined by: @@ -2463,7 +2455,7 @@ do -- SET_STATIC -- -- * @{#SET_STATIC.FilterZones}: Builds the SET_STATIC with the units within a @{Core.Zone#ZONE}. -- - -- ## 3.4) SET_STATIC iterators + -- ## SET_STATIC iterators -- -- Once the filters have been defined and the SET_STATIC has been built, you can iterate the SET_STATIC with the available iterator methods. -- The iterator methods will walk the SET_STATIC set, and call for each element within the set a function that you provide. @@ -2479,7 +2471,7 @@ do -- SET_STATIC -- * @{#SET_STATIC.ForEachStaticCompletelyInZone}: Iterate and call an iterator function for each **alive** STATIC presence completely in a @{Zone}, providing the STATIC and optional parameters to the called function. -- * @{#SET_STATIC.ForEachStaticNotInZone}: Iterate and call an iterator function for each **alive** STATIC presence not in a @{Zone}, providing the STATIC and optional parameters to the called function. -- - -- ## 3.5 ) SET_STATIC atomic methods + -- ## SET_STATIC atomic methods -- -- Various methods exist for a SET_STATIC to perform actions or calculations and retrieve results from the SET_STATIC: -- @@ -3099,9 +3091,7 @@ end ---- # 4) SET_CLIENT class, extends @{Core.Set#SET_BASE} --- --- Mission designers can use the @{Core.Set#SET_CLIENT} class to build sets of units belonging to certain: +--- Mission designers can use the @{Core.Set#SET_CLIENT} class to build sets of units belonging to certain: -- -- * Coalitions -- * Categories @@ -3109,18 +3099,18 @@ end -- * Client types -- * Starting with certain prefix strings. -- --- ## 4.1) SET_CLIENT constructor +-- ## SET_CLIENT constructor -- -- Create a new SET_CLIENT object with the @{#SET_CLIENT.New} method: -- -- * @{#SET_CLIENT.New}: Creates a new SET_CLIENT object. -- --- ## 4.2) Add or Remove CLIENT(s) from SET_CLIENT +-- ## Add or Remove CLIENT(s) from SET_CLIENT -- -- CLIENTs can be added and removed using the @{Core.Set#SET_CLIENT.AddClientsByName} and @{Core.Set#SET_CLIENT.RemoveClientsByName} respectively. -- These methods take a single CLIENT name or an array of CLIENT names to be added or removed from SET_CLIENT. -- --- ## 4.3) SET_CLIENT filter criteria +-- ## SET_CLIENT filter criteria -- -- You can set filter criteria to define the set of clients within the SET_CLIENT. -- Filter criteria are defined by: @@ -3139,7 +3129,7 @@ end -- -- * @{#SET_CLIENT.FilterZones}: Builds the SET_CLIENT with the clients within a @{Core.Zone#ZONE}. -- --- ## 4.4) SET_CLIENT iterators +-- ## SET_CLIENT iterators -- -- Once the filters have been defined and the SET_CLIENT has been built, you can iterate the SET_CLIENT with the available iterator methods. -- The iterator methods will walk the SET_CLIENT set, and call for each element within the set a function that you provide. @@ -3512,17 +3502,15 @@ end ---- # 4) SET_PLAYER class, extends @{Core.Set#SET_BASE} +--- Mission designers can use the @{Core.Set#SET_PLAYER} class to build sets of units belonging to alive players: -- --- Mission designers can use the @{Core.Set#SET_PLAYER} class to build sets of units belonging to alive players: --- --- ## 4.1) SET_PLAYER constructor +-- ## SET_PLAYER constructor -- -- Create a new SET_PLAYER object with the @{#SET_PLAYER.New} method: -- -- * @{#SET_PLAYER.New}: Creates a new SET_PLAYER object. -- --- ## 4.3) SET_PLAYER filter criteria +-- ## SET_PLAYER filter criteria -- -- You can set filter criteria to define the set of clients within the SET_PLAYER. -- Filter criteria are defined by: @@ -3541,7 +3529,7 @@ end -- -- * @{#SET_PLAYER.FilterZones}: Builds the SET_PLAYER with the clients within a @{Core.Zone#ZONE}. -- --- ## 4.4) SET_PLAYER iterators +-- ## SET_PLAYER iterators -- -- Once the filters have been defined and the SET_PLAYER has been built, you can iterate the SET_PLAYER with the available iterator methods. -- The iterator methods will walk the SET_PLAYER set, and call for each element within the set a function that you provide. @@ -3909,24 +3897,22 @@ end --- @type SET_AIRBASE -- @extends Core.Set#SET_BASE ---- # 5) SET_AIRBASE class, extends @{Core.Set#SET_BASE} --- --- Mission designers can use the @{Core.Set#SET_AIRBASE} class to build sets of airbases optionally belonging to certain: +--- Mission designers can use the @{Core.Set#SET_AIRBASE} class to build sets of airbases optionally belonging to certain: -- -- * Coalitions -- --- ## 5.1) SET_AIRBASE constructor +-- ## SET_AIRBASE constructor -- -- Create a new SET_AIRBASE object with the @{#SET_AIRBASE.New} method: -- -- * @{#SET_AIRBASE.New}: Creates a new SET_AIRBASE object. -- --- ## 5.2) Add or Remove AIRBASEs from SET_AIRBASE +-- ## Add or Remove AIRBASEs from SET_AIRBASE -- -- AIRBASEs can be added and removed using the @{Core.Set#SET_AIRBASE.AddAirbasesByName} and @{Core.Set#SET_AIRBASE.RemoveAirbasesByName} respectively. -- These methods take a single AIRBASE name or an array of AIRBASE names to be added or removed from SET_AIRBASE. -- --- ## 5.3) SET_AIRBASE filter criteria +-- ## SET_AIRBASE filter criteria -- -- You can set filter criteria to define the set of clients within the SET_AIRBASE. -- Filter criteria are defined by: @@ -3937,7 +3923,7 @@ end -- -- * @{#SET_AIRBASE.FilterStart}: Starts the filtering of the airbases within the SET_AIRBASE. -- --- ## 5.4) SET_AIRBASE iterators +-- ## SET_AIRBASE iterators -- -- Once the filters have been defined and the SET_AIRBASE has been built, you can iterate the SET_AIRBASE with the available iterator methods. -- The iterator methods will walk the SET_AIRBASE set, and call for each airbase within the set a function that you provide. @@ -4198,9 +4184,7 @@ end --- @type SET_CARGO -- @extends Core.Set#SET_BASE ---- # (R2.1) SET_CARGO class, extends @{Core.Set#SET_BASE} --- --- Mission designers can use the @{Core.Set#SET_CARGO} class to build sets of cargos optionally belonging to certain: +--- Mission designers can use the @{Core.Set#SET_CARGO} class to build sets of cargos optionally belonging to certain: -- -- * Coalitions -- * Types @@ -4260,7 +4244,7 @@ SET_CARGO = { } ---- (R2.1) Creates a new SET_CARGO object, building a set of cargos belonging to a coalitions and categories. +--- Creates a new SET_CARGO object, building a set of cargos belonging to a coalitions and categories. -- @param #SET_CARGO self -- @return #SET_CARGO -- @usage @@ -4632,9 +4616,7 @@ end --- @type SET_ZONE -- @extends Core.Set#SET_BASE ---- # SET_ZONE class, extends @{Core.Set#SET_BASE} --- --- Mission designers can use the @{Core.Set#SET_ZONE} class to build sets of zones of various types. +--- Mission designers can use the @{Core.Set#SET_ZONE} class to build sets of zones of various types. -- -- ## SET_ZONE constructor -- @@ -4647,7 +4629,7 @@ end -- ZONEs can be added and removed using the @{Core.Set#SET_ZONE.AddZonesByName} and @{Core.Set#SET_ZONE.RemoveZonesByName} respectively. -- These methods take a single ZONE name or an array of ZONE names to be added or removed from SET_ZONE. -- --- ## 5.3) SET_ZONE filter criteria +-- ## SET_ZONE filter criteria -- -- You can set filter criteria to build the collection of zones in SET_ZONE. -- Filter criteria are defined by: @@ -4658,7 +4640,7 @@ end -- -- * @{#SET_ZONE.FilterStart}: Starts the filtering of the zones within the SET_ZONE. -- --- ## 5.4) SET_ZONE iterators +-- ## SET_ZONE iterators -- -- Once the filters have been defined and the SET_ZONE has been built, you can iterate the SET_ZONE with the available iterator methods. -- The iterator methods will walk the SET_ZONE set, and call for each airbase within the set a function that you provide. diff --git a/Moose Development/Moose/Core/Settings.lua b/Moose Development/Moose/Core/Settings.lua index 86a607fc1..8bd51a63b 100644 --- a/Moose Development/Moose/Core/Settings.lua +++ b/Moose Development/Moose/Core/Settings.lua @@ -1,7 +1,5 @@ --- **Core** -- Manages various settings for MOOSE classes. -- --- ![Banner Image](..\Presentations\SETTINGS\Dia1.JPG) --- -- === -- -- The documentation of the SETTINGS class can be found further in this document. @@ -17,20 +15,16 @@ -- * **FlightControl**: Design & Programming -- -- @module Core.Settings +-- @image Core_Settings.JPG --- @type SETTINGS -- @extends Core.Base#BASE ---- # SETTINGS class, extends @{Core.Base#BASE} --- The SETTINGS class takes care of various settings that influence the behaviour of certain functionalities and classes within the MOOSE framework. +--- The SETTINGS class takes care of various settings that influence the behaviour of certain functionalities and classes within the MOOSE framework. -- -- === -- --- ![Banner Image](..\Presentations\SETTINGS\Dia1.JPG) --- --- === --- -- The SETTINGS class takes care of various settings that influence the behaviour of certain functionalities and classes within the MOOSE framework. -- SETTINGS can work on 2 levels: -- @@ -39,29 +33,29 @@ -- -- So, when there isn't any **Player setting** defined for a player for a specific setting, or, the player cannot be identified, the **Default setting** will be used instead. -- --- ## 1. \_SETTINGS object +-- ## \_SETTINGS object -- -- MOOSE defines by default a singleton object called **\_SETTINGS**. Use this object to modify all the **Default settings** for a running mission. -- For each player, MOOSE will automatically allocate also a **player settings** object, and will expose a radio menu to allow the player to adapt the settings to his own preferences. -- --- ## 2. SETTINGS Menu +-- ## SETTINGS Menu -- -- Settings can be adapted by the Players and by the Mission Administrator through **radio menus, which are automatically available in the mission**. -- These menus can be found **on level F10 under "Settings"**. There are two kinds of menus generated by the system. -- --- ### 2.1. Default settings menu +-- ### Default settings menu -- -- A menu is created automatically per Command Center that allows to modify the **Default** settings. -- So, when joining a CC unit, a menu will be available that allows to change the settings parameters **FOR ALL THE PLAYERS**! -- Note that the **Default settings** will only be used when a player has not choosen its own settings. -- --- ### 2.2. Player settings menu +-- ### Player settings menu -- -- A menu is created automatically per Player Slot (group) that allows to modify the **Player** settings. -- So, when joining a slot, a menu wil be available that allows to change the settings parameters **FOR THE PLAYER ONLY**! -- Note that when a player has not chosen a specific setting, the **Default settings** will be used. -- --- ### 2.3. Show or Hide the Player Setting menus +-- ### Show or Hide the Player Setting menus -- -- Of course, it may be requried not to show any setting menus. In this case, a method is available on the **\_SETTINGS object**. -- Use @{#SETTINGS.SetPlayerMenuOff}() to hide the player menus, and use @{#SETTINGS.SetPlayerMenuOn}() show the player menus. @@ -75,14 +69,14 @@ -- -- But only when a player exits and reenters the slot these settings will have effect! -- -- --- ## 3. Settings +-- ## Settings -- -- There are different settings that are managed and applied within the MOOSE framework. -- See below a comprehensive description of each. -- --- ### 3.1. **A2G coordinates** display formatting +-- ### **A2G coordinates** display formatting -- --- #### 3.1.1. A2G coordinates setting **types** +-- #### A2G coordinates setting **types** -- -- Will customize which display format is used to indicate A2G coordinates in text as part of the Command Center communications. -- @@ -91,11 +85,11 @@ -- - A2G LL DMS: Lattitude Longitude [Degrees Minutes Seconds](https://en.wikipedia.org/wiki/Geographic_coordinate_conversion). The accuracy can also be adapted. -- - A2G LL DDM: Lattitude Longitude [Decimal Degrees Minutes](https://en.wikipedia.org/wiki/Decimal_degrees). The accuracy can also be adapted. -- --- #### 3.1.2. A2G coordinates setting **menu** +-- #### A2G coordinates setting **menu** -- -- The settings can be changed by using the **Default settings menu** on the Command Center or the **Player settings menu** on the Player Slot. -- --- #### 3.1.3. A2G coordinates setting **methods** +-- #### A2G coordinates setting **methods** -- -- There are different methods that can be used to change the **System settings** using the \_SETTINGS object. -- @@ -104,14 +98,14 @@ -- - @{#SETTINGS.SetA2G_LL_DMS}(): Enable the LL DMS display formatting by default. Use @{SETTINGS.SetLL_Accuracy}() to adapt the accuracy of the Seconds formatting. -- - @{#SETTINGS.SetA2G_LL_DDM}(): Enable the LL DDM display formatting by default. Use @{SETTINGS.SetLL_Accuracy}() to adapt the accuracy of the Seconds formatting. -- --- #### 3.1.4. A2G coordinates setting - additional notes +-- #### A2G coordinates setting - additional notes -- -- One additional note on BR. In a situation when a BR coordinate should be given, -- but there isn't any player context (no player unit to reference from), the MGRS formatting will be applied! -- --- ### 3.2. **A2A coordinates** formatting +-- ### **A2A coordinates** formatting -- --- #### 3.2.1. A2A coordinates setting **types** +-- #### A2A coordinates setting **types** -- -- Will customize which display format is used to indicate A2A coordinates in text as part of the Command Center communications. -- @@ -121,11 +115,11 @@ -- - A2A LL DDM: Lattitude Longitude [Decimal Degrees and Minutes](https://en.wikipedia.org/wiki/Decimal_degrees). The accuracy can also be adapted. -- - A2A BULLS: [Bullseye](http://falcon4.wikidot.com/concepts:bullseye). -- --- #### 3.2.2. A2A coordinates setting **menu** +-- #### A2A coordinates setting **menu** -- -- The settings can be changed by using the **Default settings menu** on the Command Center or the **Player settings menu** on the Player Slot. -- --- #### 3.2.3. A2A coordinates setting **methods** +-- #### A2A coordinates setting **methods** -- -- There are different methods that can be used to change the **System settings** using the \_SETTINGS object. -- @@ -135,34 +129,34 @@ -- - @{#SETTINGS.SetA2A_LL_DDM}(): Enable the LL DDM display formatting by default. Use @{SETTINGS.SetLL_Accuracy}() to adapt the accuracy of the Seconds formatting. -- - @{#SETTINGS.SetA2A_BULLS}(): Enable the BULLSeye display formatting by default. -- --- #### 3.2.4. A2A coordinates settings - additional notes +-- #### A2A coordinates settings - additional notes -- -- One additional note on BRAA. In a situation when a BRAA coordinate should be given, -- but there isn't any player context (no player unit to reference from), the MGRS formatting will be applied! -- --- ### 3.3. **Measurements** formatting +-- ### **Measurements** formatting -- --- #### 3.3.1. Measurements setting **types** +-- #### Measurements setting **types** -- -- Will customize the measurements system being used as part as part of the Command Center communications. -- -- - **Metrics** system: Applies the [Metrics system](https://en.wikipedia.org/wiki/Metric_system) ... -- - **Imperial** system: Applies the [Imperial system](https://en.wikipedia.org/wiki/Imperial_units) ... -- --- #### 3.3.2. Measurements setting **menu** +-- #### Measurements setting **menu** -- -- The settings can be changed by using the **Default settings menu** on the Command Center or the **Player settings menu** on the Player Slot. -- --- #### 3.3.3. Measurements setting **methods** +-- #### Measurements setting **methods** -- -- There are different methods that can be used to change the **Default settings** using the \_SETTINGS object. -- -- - @{#SETTINGS.SetMetric}(): Enable the Metric system. -- - @{#SETTINGS.SetImperial}(): Enable the Imperial system. -- --- ### 3.4. **Message** display times +-- ### **Message** display times -- --- #### 3.4.1. Message setting **types** +-- #### Message setting **types** -- -- There are various **Message Types** that will influence the duration how long a message will appear as part of the Command Center communications. -- @@ -172,7 +166,7 @@ -- - **Overview report**: Provides a short report overview, the summary of the report. -- - **Detailed report**: Provides a complete report. -- --- #### 3.4.2. Message setting **menu** +-- #### Message setting **menu** -- -- The settings can be changed by using the **Default settings menu** on the Command Center or the **Player settings menu** on the Player Slot. -- diff --git a/Moose Development/Moose/Core/Spawn.lua b/Moose Development/Moose/Core/Spawn.lua index a42d6b7c5..919623334 100644 --- a/Moose Development/Moose/Core/Spawn.lua +++ b/Moose Development/Moose/Core/Spawn.lua @@ -1,7 +1,5 @@ --- **Core** -- SPAWN class dynamically spawns new groups of units in your missions. -- --- ![Banner Image](..\Presentations\SPAWN\SPAWN.JPG) --- -- === -- -- The documentation of the SPAWN class can be found further in this document. @@ -22,6 +20,7 @@ -- === -- -- @module Core.Spawn +-- @image Core_Spawn.JPG --- SPAWN Class @@ -37,13 +36,7 @@ -- @extends Core.Base#BASE ---- # SPAWN class, extends @{Core.Base#BASE} --- --- -- ![Banner Image](..\Presentations\SPAWN\SPAWN.JPG) --- --- === --- --- The SPAWN class allows to spawn dynamically new groups. +--- The SPAWN class allows to spawn dynamically new groups. -- Each SPAWN object needs to be have related **template groups** setup in the Mission Editor (ME), -- which is a normal group with the **Late Activation** flag set. -- This template group will never be activated in your mission. diff --git a/Moose Development/Moose/Core/SpawnStatic.lua b/Moose Development/Moose/Core/SpawnStatic.lua index f1715465a..52df548da 100644 --- a/Moose Development/Moose/Core/SpawnStatic.lua +++ b/Moose Development/Moose/Core/SpawnStatic.lua @@ -1,7 +1,5 @@ --- **Core** -- Spawn dynamically new STATICs in your missions. -- --- ![Banner Image](..\Presentations\SPAWNSTATIC\Dia1.JPG) --- -- === -- -- SPAWNSTATIC spawns static structures in your missions dynamically. See below the SPAWNSTATIC class documentation. @@ -30,6 +28,7 @@ -- === -- -- @module Core.SpawnStatic +-- @image Core_Spawnstatic.JPG @@ -37,9 +36,7 @@ -- @extends Core.Base#BASE ---- # SPAWNSTATIC class, extends @{Core.Base#BASE} --- --- The SPAWNSTATIC class allows to spawn dynamically new @{Static}s. +--- The SPAWNSTATIC class allows to spawn dynamically new @{Static}s. -- Through creating a copy of an existing static object template as defined in the Mission Editor (ME), -- SPAWNSTATIC can retireve the properties of the defined static object template (like type, category etc), and "copy" -- these properties to create a new static object and place it at the desired coordinate. diff --git a/Moose Development/Moose/Core/Spot.lua b/Moose Development/Moose/Core/Spot.lua index 22ba7eee8..0af7a7b02 100644 --- a/Moose Development/Moose/Core/Spot.lua +++ b/Moose Development/Moose/Core/Spot.lua @@ -1,7 +1,5 @@ --- **Core** -- Management of SPOT logistics, that can be transported from and to transportation carriers. -- --- ![Banner Image](..\Presentations\SPOT\Dia1.JPG) --- -- === -- -- SPOT implements the DCS Spot class functionality, but adds additional luxury to be able to: @@ -39,6 +37,7 @@ -- === -- -- @module Core.Spot +-- @image Core_Spot.JPG do @@ -47,9 +46,7 @@ do -- @extends Core.Fsm#FSM - --- # SPOT class, extends @{Fsm#FSM} - -- - -- SPOT implements the DCS Spot class functionality, but adds additional luxury to be able to: + --- SPOT implements the DCS Spot class functionality, but adds additional luxury to be able to: -- -- * Mark targets for a defined duration. -- * wiggle the spot at the target. diff --git a/Moose Development/Moose/Core/UserFlag.lua b/Moose Development/Moose/Core/UserFlag.lua index 8cfff730f..9bfa5a628 100644 --- a/Moose Development/Moose/Core/UserFlag.lua +++ b/Moose Development/Moose/Core/UserFlag.lua @@ -11,6 +11,8 @@ -- === -- -- @module Core.UserFlag +-- @image Core_Userflag.JPG +-- do -- UserFlag @@ -18,11 +20,9 @@ do -- UserFlag -- @extends Core.Base#BASE - --- # USERFLAG class, extends @{Core.Base#BASE} + --- Management of DCS User Flags. -- - -- Management of DCS User Flags. - -- - -- ## 1. USERFLAG constructor + -- ## USERFLAG constructor -- -- * @{#USERFLAG.New}(): Creates a new USERFLAG object. -- diff --git a/Moose Development/Moose/Core/UserSound.lua b/Moose Development/Moose/Core/UserSound.lua index 2a7614384..9b7204b2f 100644 --- a/Moose Development/Moose/Core/UserSound.lua +++ b/Moose Development/Moose/Core/UserSound.lua @@ -11,6 +11,7 @@ -- === -- -- @module Core.UserSound +-- @image Core_Usersound.JPG do -- UserSound @@ -18,11 +19,9 @@ do -- UserSound -- @extends Core.Base#BASE - --- # USERSOUND class, extends @{Core.Base#BASE} + --- Management of DCS User Sound. -- - -- Management of DCS User Sound. - -- - -- ## 1. USERSOUND constructor + -- ## USERSOUND constructor -- -- * @{#USERSOUND.New}(): Creates a new USERSOUND object. -- diff --git a/Moose Development/Moose/Core/Velocity.lua b/Moose Development/Moose/Core/Velocity.lua index 0888aa210..c8ef325f3 100644 --- a/Moose Development/Moose/Core/Velocity.lua +++ b/Moose Development/Moose/Core/Velocity.lua @@ -8,6 +8,7 @@ -- === -- -- @module Core.Velocity +-- @image Core_Velocity.JPG do -- Velocity @@ -15,11 +16,9 @@ do -- Velocity -- @extends Core.Base#BASE - --- # VELOCITY class, extends @{Core.Base#BASE} - -- -- VELOCITY models a speed, which can be expressed in various formats according the Settings. -- - -- ## 1. VELOCITY constructor + -- ## VELOCITY constructor -- -- * @{#VELOCITY.New}(): Creates a new VELOCITY object. -- diff --git a/Moose Development/Moose/Core/Zone.lua b/Moose Development/Moose/Core/Zone.lua index a6201d28a..ee8180931 100644 --- a/Moose Development/Moose/Core/Zone.lua +++ b/Moose Development/Moose/Core/Zone.lua @@ -1,7 +1,5 @@ --- **Core** -- ZONE classes define **zones** within your mission of **various forms**, with **various capabilities**. -- --- ![Banner Image](..\Presentations\ZONE\Dia1.JPG) --- -- === -- -- There are essentially two core functions that zones accomodate: @@ -35,6 +33,7 @@ -- === -- -- @module Core.Zone +-- @image Core_Zones.JPG --- @type ZONE_BASE @@ -43,9 +42,7 @@ -- @extends Core.Base#BASE ---- # ZONE_BASE class, extends @{Core.Base#BASE} --- --- This class is an abstract BASE class for derived classes, and is not meant to be instantiated. +--- This class is an abstract BASE class for derived classes, and is not meant to be instantiated. -- -- ## Each zone has a name: -- @@ -380,9 +377,7 @@ end -- @field Dcs.DCSTypes#Distance Radius The radius of the zone. -- @extends #ZONE_BASE ---- # ZONE_RADIUS class, extends @{Core.Zone#ZONE_BASE} --- --- The ZONE_RADIUS class defined by a zone name, a location and a radius. +--- The ZONE_RADIUS class defined by a zone name, a location and a radius. -- This class implements the inherited functions from Core.Zone#ZONE_BASE taking into account the own zone format and properties. -- -- ## ZONE_RADIUS constructor @@ -951,9 +946,7 @@ end -- @extends #ZONE_RADIUS ---- # ZONE class, extends @{Core.Zone#ZONE_RADIUS} --- --- The ZONE class, defined by the zone name as defined within the Mission Editor. +--- The ZONE class, defined by the zone name as defined within the Mission Editor. -- This class implements the inherited functions from @{#ZONE_RADIUS} taking into account the own zone format and properties. -- -- ## ZONE constructor @@ -1023,9 +1016,7 @@ end -- @field Wrapper.Unit#UNIT ZoneUNIT -- @extends Core.Zone#ZONE_RADIUS ---- # ZONE_UNIT class, extends @{Core.Zone#ZONE_RADIUS} --- --- The ZONE_UNIT class defined by a zone around a @{Unit#UNIT} with a radius. +--- The ZONE_UNIT class defined by a zone around a @{Unit#UNIT} with a radius. -- This class implements the inherited functions from @{#ZONE_RADIUS} taking into account the own zone format and properties. -- -- @field #ZONE_UNIT @@ -1116,9 +1107,7 @@ end -- @extends #ZONE_RADIUS ---- # ZONE_GROUP class, extends @{Core.Zone#ZONE_RADIUS} --- --- The ZONE_GROUP class defines by a zone around a @{Wrapper.Group#GROUP} with a radius. The current leader of the group defines the center of the zone. +--- The ZONE_GROUP class defines by a zone around a @{Wrapper.Group#GROUP} with a radius. The current leader of the group defines the center of the zone. -- This class implements the inherited functions from @{Core.Zone#ZONE_RADIUS} taking into account the own zone format and properties. -- -- @field #ZONE_GROUP @@ -1197,9 +1186,7 @@ end -- @extends #ZONE_BASE ---- # ZONE_POLYGON_BASE class, extends @{Core.Zone#ZONE_BASE} --- --- The ZONE_POLYGON_BASE class defined by a sequence of @{Wrapper.Group#GROUP} waypoints within the Mission Editor, forming a polygon. +--- The ZONE_POLYGON_BASE class defined by a sequence of @{Wrapper.Group#GROUP} waypoints within the Mission Editor, forming a polygon. -- This class implements the inherited functions from @{Core.Zone#ZONE_RADIUS} taking into account the own zone format and properties. -- This class is an abstract BASE class for derived classes, and is not meant to be instantiated. -- @@ -1474,9 +1461,7 @@ end -- @extends #ZONE_POLYGON_BASE ---- # ZONE_POLYGON class, extends @{Core.Zone#ZONE_POLYGON_BASE} --- --- The ZONE_POLYGON class defined by a sequence of @{Wrapper.Group#GROUP} waypoints within the Mission Editor, forming a polygon. +--- The ZONE_POLYGON class defined by a sequence of @{Wrapper.Group#GROUP} waypoints within the Mission Editor, forming a polygon. -- This class implements the inherited functions from @{Core.Zone#ZONE_RADIUS} taking into account the own zone format and properties. -- -- ## Declare a ZONE_POLYGON directly in the DCS mission editor!