From f82d07ebc09380dfd801e60a481727b34c97d84f Mon Sep 17 00:00:00 2001
From: FlightControl_Master
Date: Thu, 2 Nov 2017 08:19:46 +0100
Subject: [PATCH] Extended the Waypoint functions of COORDINATE with new
methods for Air operations:
* function COORDINATE:WaypointAirTurningPoint( AltType, Speed )
* function COORDINATE:WaypointAirFlyOverPoint( AltType, Speed )
* function COORDINATE:WaypointAirTakeOffParkingHot( AltType, Speed )
* function COORDINATE:WaypointAirTakeOffParking( AltType, Speed )
* function COORDINATE:WaypointAirTakeOffRunway( AltType, Speed )
* function COORDINATE:WaypointAirLanding( Speed )
---
Moose Development/Moose/Core/Point.lua | 100 +++++++-
docs/Documentation/AI_Patrol.html | 3 -
docs/Documentation/Designate.html | 3 +-
docs/Documentation/Detection.html | 3 +-
docs/Documentation/Movement.html | 4 -
docs/Documentation/Point.html | 308 ++++++++++++++++++++++++-
docs/Documentation/Rat.html | 20 --
docs/Documentation/Settings.html | 2 +-
docs/Documentation/Spawn.html | 7 +-
docs/Documentation/SpawnStatic.html | 1 +
docs/Documentation/Task_Cargo.html | 2 +-
11 files changed, 409 insertions(+), 44 deletions(-)
diff --git a/Moose Development/Moose/Core/Point.lua b/Moose Development/Moose/Core/Point.lua
index db575a2ab..d520365cd 100644
--- a/Moose Development/Moose/Core/Point.lua
+++ b/Moose Development/Moose/Core/Point.lua
@@ -150,6 +150,31 @@ do -- COORDINATE
ClassName = "COORDINATE",
}
+ --- @field COORDINATE.WaypointAltType
+ COORDINATE.WaypointAltType = {
+ BARO = "BARO",
+ RADIO = "RADIO",
+ }
+
+ --- @field COORDINATE.WaypointAction
+ COORDINATE.WaypointAction = {
+ TurningPoint = "Turning Point",
+ FlyoverPoint = "Fly Over Point",
+ FromParkingArea = "From Parking Area",
+ FromParkingAreaHot = "From Parking Area Hot",
+ FromRunway = "From Runway",
+ Landing = "Landing",
+ }
+
+ --- @field COORDINATE.WaypointType
+ COORDINATE.WaypointType = {
+ TakeOffParking = "TakeOffParking",
+ TakeOffParkingHot = "TakeOffParkingHot",
+ TakeOff = "TakeOffParkingHot",
+ TurningPoint = "Turning Point",
+ Land = "Land",
+ }
+
--- COORDINATE constructor.
-- @param #COORDINATE self
@@ -553,9 +578,9 @@ do -- COORDINATE
--- Build an air type route point.
-- @param #COORDINATE self
- -- @param #COORDINATE.RoutePointAltType AltType The altitude type.
- -- @param #COORDINATE.RoutePointType Type The route point type.
- -- @param #COORDINATE.RoutePointAction Action The route point action.
+ -- @param #COORDINATE.WaypointAltType AltType The altitude type.
+ -- @param #COORDINATE.WaypointType Type The route point type.
+ -- @param #COORDINATE.WaypointAction Action The route point action.
-- @param Dcs.DCSTypes#Speed Speed Airspeed in km/h.
-- @param #boolean SpeedLocked true means the speed is locked.
-- @return #table The route point.
@@ -595,6 +620,75 @@ do -- COORDINATE
return RoutePoint
end
+
+ --- Build a Waypoint Air "Turning Point".
+ -- @param #COORDINATE self
+ -- @param #COORDINATE.WaypointAltType AltType The altitude type.
+ -- @param Dcs.DCSTypes#Speed Speed Airspeed in km/h.
+ -- @return #table The route point.
+ function COORDINATE:WaypointAirTurningPoint( AltType, Speed )
+ return self:WaypointAir( AltType, COORDINATE.WaypointType.TurningPoint, COORDINATE.WaypointAction.TurningPoint, Speed )
+ end
+
+
+ --- Build a Waypoint Air "Fly Over Point".
+ -- @param #COORDINATE self
+ -- @param #COORDINATE.WaypointAltType AltType The altitude type.
+ -- @param Dcs.DCSTypes#Speed Speed Airspeed in km/h.
+ -- @return #table The route point.
+ function COORDINATE:WaypointAirFlyOverPoint( AltType, Speed )
+ return self:WaypointAir( AltType, COORDINATE.WaypointType.TurningPoint, COORDINATE.WaypointAction.FlyoverPoint, Speed )
+ end
+
+
+ --- Build a Waypoint Air "Take Off Parking Hot".
+ -- @param #COORDINATE self
+ -- @param #COORDINATE.WaypointAltType AltType The altitude type.
+ -- @param Dcs.DCSTypes#Speed Speed Airspeed in km/h.
+ -- @return #table The route point.
+ function COORDINATE:WaypointAirTakeOffParkingHot( AltType, Speed )
+ return self:WaypointAir( AltType, COORDINATE.WaypointType.TakeOffParkingHot, COORDINATE.WaypointAction.FromParkingAreaHot, Speed )
+ end
+
+
+ --- Build a Waypoint Air "Take Off Parking".
+ -- @param #COORDINATE self
+ -- @param #COORDINATE.WaypointAltType AltType The altitude type.
+ -- @param Dcs.DCSTypes#Speed Speed Airspeed in km/h.
+ -- @return #table The route point.
+ function COORDINATE:WaypointAirTakeOffParking( AltType, Speed )
+ return self:WaypointAir( AltType, COORDINATE.WaypointType.TakeOffParking, COORDINATE.WaypointAction.FromParkingArea, Speed )
+ end
+
+
+ --- Build a Waypoint Air "Take Off Runway".
+ -- @param #COORDINATE self
+ -- @param #COORDINATE.WaypointAltType AltType The altitude type.
+ -- @param Dcs.DCSTypes#Speed Speed Airspeed in km/h.
+ -- @return #table The route point.
+ function COORDINATE:WaypointAirTakeOffRunway( AltType, Speed )
+ return self:WaypointAir( AltType, COORDINATE.WaypointType.TakeOff, COORDINATE.WaypointAction.FromRunway, Speed )
+ end
+
+
+ --- Build a Waypoint Air "Landing".
+ -- @param #COORDINATE self
+ -- @param Dcs.DCSTypes#Speed Speed Airspeed in km/h.
+ -- @return #table The route point.
+ -- @usage
+ --
+ -- LandingZone = ZONE:New( "LandingZone" )
+ -- LandingCoord = LandingZone:GetCoordinate()
+ -- LandingWaypoint = LandingCoord:WaypointAirLanding( 60 )
+ -- HeliGroup:Route( { LandWaypoint }, 1 ) -- Start landing the helicopter in one second.
+ --
+ function COORDINATE:WaypointAirLanding( Speed )
+ return self:WaypointAir( nil, COORDINATE.WaypointType.Land, COORDINATE.WaypointAction.Landing, Speed )
+ end
+
+
+
+
--- Build an ground type route point.
-- @param #COORDINATE self
-- @param #number Speed (optional) Speed in km/h. The default speed is 999 km/h.
diff --git a/docs/Documentation/AI_Patrol.html b/docs/Documentation/AI_Patrol.html
index e015fe835..9e1850d93 100644
--- a/docs/Documentation/AI_Patrol.html
+++ b/docs/Documentation/AI_Patrol.html
@@ -937,9 +937,6 @@ Use the method AIPATROLZONE.M
-
- This table contains the targets detected during patrol.
-
diff --git a/docs/Documentation/Designate.html b/docs/Documentation/Designate.html
index 0df1c3540..03e24e109 100644
--- a/docs/Documentation/Designate.html
+++ b/docs/Documentation/Designate.html
@@ -1107,7 +1107,7 @@ function below will use the range 1-7 just in case
-
- #number
+
DESIGNATE.LaseDuration
@@ -1161,7 +1161,6 @@ function below will use the range 1-7 just in case
-
-
DESIGNATE.LaserCodes
diff --git a/docs/Documentation/Detection.html b/docs/Documentation/Detection.html
index b6e1a9ed4..570490cec 100644
--- a/docs/Documentation/Detection.html
+++ b/docs/Documentation/Detection.html
@@ -2483,7 +2483,6 @@ The index of the DetectedItem.
-
- #number
DETECTION_BASE.DetectedItemMax
@@ -4061,7 +4060,7 @@ Return false to cancel Transition.
-
-
+ #number
DETECTION_BASE.RefreshTimeInterval
diff --git a/docs/Documentation/Movement.html b/docs/Documentation/Movement.html
index c3c16e25c..32b0acb34 100644
--- a/docs/Documentation/Movement.html
+++ b/docs/Documentation/Movement.html
@@ -238,7 +238,6 @@ on defined intervals (currently every minute).
-
- #number
MOVEMENT.AliveUnits
@@ -247,9 +246,6 @@ on defined intervals (currently every minute).
-
-
Contains the counter how many units are currently alive
-
diff --git a/docs/Documentation/Point.html b/docs/Documentation/Point.html
index c08621bf2..6caec0549 100644
--- a/docs/Documentation/Point.html
+++ b/docs/Documentation/Point.html
@@ -556,18 +556,72 @@
| COORDINATE.Velocity |
+ |
+
+
+ | COORDINATE.WaypointAction |
+
+
|
| COORDINATE:WaypointAir(AltType, Type, Action, Speed, SpeedLocked) |
Build an air type route point.
+ |
+
+
+ | COORDINATE:WaypointAirFlyOverPoint(AltType, Speed) |
+
+ Build a Waypoint Air "Fly Over Point".
+ |
+
+
+ | COORDINATE:WaypointAirLanding(Speed) |
+
+ Build a Waypoint Air "Landing".
+ |
+
+
+ | COORDINATE:WaypointAirTakeOffParking(AltType, Speed) |
+
+ Build a Waypoint Air "Take Off Parking".
+ |
+
+
+ | COORDINATE:WaypointAirTakeOffParkingHot(AltType, Speed) |
+
+ Build a Waypoint Air "Take Off Parking Hot".
+ |
+
+
+ | COORDINATE:WaypointAirTakeOffRunway(AltType, Speed) |
+
+ Build a Waypoint Air "Take Off Runway".
+ |
+
+
+ | COORDINATE:WaypointAirTurningPoint(AltType, Speed) |
+
+ Build a Waypoint Air "Turning Point".
+ |
+
+
+ | COORDINATE.WaypointAltType |
+
+
|
| COORDINATE:WaypointGround(Speed, Formation) |
Build an ground type route point.
+ |
+
+
+ | COORDINATE.WaypointType |
+
+
|
@@ -2860,6 +2914,20 @@ The new calculated COORDINATE.
+
+
+
+-
+
+
+
+COORDINATE.WaypointAction
+
+
+-
+
+
+
@@ -2877,19 +2945,19 @@ The new calculated COORDINATE.
+
+-
+
+
+COORDINATE:WaypointAirFlyOverPoint(AltType, Speed)
+
+
+-
+
+
Build a Waypoint Air "Fly Over Point".
+
+ Parameters
+
+ Return value
+
+#table:
+The route point.
+
+
+
+
+-
+
+
+COORDINATE:WaypointAirLanding(Speed)
+
+
+-
+
+
Build a Waypoint Air "Landing".
+
+ Parameter
+
+ Return value
+
+#table:
+The route point.
+
+ Usage:
+
+ LandingZone = ZONE:New( "LandingZone" )
+ LandingCoord = LandingZone:GetCoordinate()
+ LandingWaypoint = LandingCoord:WaypointAirLanding( 60 )
+ HeliGroup:Route( { LandWaypoint }, 1 ) -- Start landing the helicopter in one second.
+
+
+
+
+
+-
+
+
+COORDINATE:WaypointAirTakeOffParking(AltType, Speed)
+
+
+-
+
+
Build a Waypoint Air "Take Off Parking".
+
+ Parameters
+
+ Return value
+
+#table:
+The route point.
+
+
+
+
+-
+
+
+COORDINATE:WaypointAirTakeOffParkingHot(AltType, Speed)
+
+
+-
+
+
Build a Waypoint Air "Take Off Parking Hot".
+
+ Parameters
+
+ Return value
+
+#table:
+The route point.
+
+
+
+
+-
+
+
+COORDINATE:WaypointAirTakeOffRunway(AltType, Speed)
+
+
+-
+
+
Build a Waypoint Air "Take Off Runway".
+
+ Parameters
+
+ Return value
+
+#table:
+The route point.
+
+
+
+
+-
+
+
+COORDINATE:WaypointAirTurningPoint(AltType, Speed)
+
+
+-
+
+
Build a Waypoint Air "Turning Point".
+
+ Parameters
+
+ Return value
+
+#table:
+The route point.
+
+
+
+
+-
+
+
+
+COORDINATE.WaypointAltType
+
+
+-
+
+
+
@@ -2944,6 +3226,20 @@ The route point.
#table:
The route point.
+
+
+
+-
+
+
+
+COORDINATE.WaypointType
+
+
+-
+
+
+
@@ -2989,11 +3285,11 @@ The route point.
-
+
-
+
-
+
Field(s)
diff --git a/docs/Documentation/Rat.html b/docs/Documentation/Rat.html
index 7f597274e..81e84e622 100644
--- a/docs/Documentation/Rat.html
+++ b/docs/Documentation/Rat.html
@@ -1321,12 +1321,6 @@
RAT.templategroup |
Group serving as template for the RAT aircraft.
- |
-
-
- | RAT.type |
-
-
|
@@ -5549,20 +5543,6 @@ True if zone exsits, false otherwise.
Group serving as template for the RAT aircraft.
-
-
-
--
-
-
-
-RAT.type
-
-
--
-
-
-
diff --git a/docs/Documentation/Settings.html b/docs/Documentation/Settings.html
index 6ecb40ac1..7558ad0f0 100644
--- a/docs/Documentation/Settings.html
+++ b/docs/Documentation/Settings.html
@@ -1251,7 +1251,7 @@ true if metric.
-
-
+ #boolean
SETTINGS.Metric
diff --git a/docs/Documentation/Spawn.html b/docs/Documentation/Spawn.html
index c777276f0..f5f2eb3ff 100644
--- a/docs/Documentation/Spawn.html
+++ b/docs/Documentation/Spawn.html
@@ -2309,6 +2309,9 @@ The group that was spawned. You can use this group for further actions.
+
+
Don't repeat the group from Take-Off till Landing and back Take-Off by ReSpawning.
+
@@ -3384,7 +3387,7 @@ Spawn_BE_KA50 = SPAWN:New( 'BE KA-50@RAMP-Ground Defense' ):Schedule( 600, 0.5 )
-
-
+ #boolean
SPAWN.SpawnUnControlled
@@ -3408,7 +3411,7 @@ Spawn_BE_KA50 = SPAWN:New( 'BE KA-50@RAMP-Ground Defense' ):Schedule( 600, 0.5 )
-
When the first Spawn executes, all the Groups need to be made visible before start.
+ Flag that indicates if all the Groups of the SpawnGroup need to be visible when Spawned.
diff --git a/docs/Documentation/SpawnStatic.html b/docs/Documentation/SpawnStatic.html
index 12b659f1e..b9cd35a99 100644
--- a/docs/Documentation/SpawnStatic.html
+++ b/docs/Documentation/SpawnStatic.html
@@ -491,6 +491,7 @@ ptional) The name of the new static.
-
+ #number
SPAWNSTATIC.SpawnIndex
diff --git a/docs/Documentation/Task_Cargo.html b/docs/Documentation/Task_Cargo.html
index 532a155cb..092a671c6 100644
--- a/docs/Documentation/Task_Cargo.html
+++ b/docs/Documentation/Task_Cargo.html
@@ -563,7 +563,7 @@ based on the tasking capabilities defined in Task#TA
-
- Core.Cargo#CARGO_GROUP
+ Core.Cargo#CARGO
FSM_PROCESS.Cargo