From fddbcfd1456a0db898d39a9fc3eb5bcf22d672a9 Mon Sep 17 00:00:00 2001 From: funkyfranky Date: Fri, 1 Mar 2024 16:04:33 +0000 Subject: [PATCH] ExtractMissionScripts --- .../STA-100-Mark-target-with-containers.lua | 57 +++++++++++++++++++ .../050-Spawn-FARPs/SPS-050-Spawn-FARPs.lua | 20 +------ 2 files changed, 59 insertions(+), 18 deletions(-) create mode 100644 Core/SpawnStatic/020-Mark-target-with-containers/STA-100-Mark-target-with-containers.lua diff --git a/Core/SpawnStatic/020-Mark-target-with-containers/STA-100-Mark-target-with-containers.lua b/Core/SpawnStatic/020-Mark-target-with-containers/STA-100-Mark-target-with-containers.lua new file mode 100644 index 0000000..4e73757 --- /dev/null +++ b/Core/SpawnStatic/020-Mark-target-with-containers/STA-100-Mark-target-with-containers.lua @@ -0,0 +1,57 @@ +--- +-- Author: buur +-- Created: 29.02.2024 +-- Contributors: kaltokri +-- Modified: 01.03.2024 +-- +-- # Documentation: +-- https://flightcontrol-master.github.io/MOOSE_DOCS_DEVELOP/Documentation/Core.SpawnStatic.html +-- https://flightcontrol-master.github.io/MOOSE_DOCS_DEVELOP/Documentation/Wrapper.Static.html +-- +-- # Description: +-- +-- In this mission we search for a placed container with the UNIT name CircleCenterContainer. +-- Around this object we create two circles with containers to mark the target area. +-- NOTE: Instead of a STATIC object you can also use other objects (like UNITS) to define the center position! +-- +-- # Guide: +-- +-- 1. Start the mission and take a look at the placed containers. + +--- Creates a circle with static objects around a given coordinate. +-- @param Core.Point#COORDINATE circleCenter The coordinate for the center of the circle. +-- @param #number radius (Optional) The radius of the circle. Default 150. +-- @param #number step (Optional) The distance in degrees between the objects. Default 15. +-- @param #string prefix (Optional) The prefix for the name of the STATIC objects. Default is innerCircle. +-- @param #string category (Optional) The category of the STATIC object to use. Default is Fortifications. +-- @param #string staticType (Optional) The type of the STATIC object to use. Default is container_40ft. +-- @param #string staticShape (Optional) The shape of the STATIC object to use. Default is container_40ft. +-- @param #string staticLivery (Optional) The livery name of the STATIC object to use. Default is summer. +function targetcircle( circleCenter, radius, step, prefix, category, staticType, staticShape, staticLivery ) + local circleCenter = circleCenter + local radius = radius or 150 + local step = step or 15 + local prefix = prefix or "innerCircle" -- Must be unique! + local category = category or "Fortifications" + local staticType = statictype or "container_40ft" + local staticShape = staticshape or "container_40ft" + local staticLivery = staticlivery or "summer" + + for angle = 0, 360-step , step do + local name = string.format( "%s#%f", prefix, angle ) + local circle = circleCenter:Translate( radius, angle, false, false ) + SPAWNSTATIC + :NewFromType( staticType, category ) + :InitCoordinate( circle ) + :InitLivery( staticLivery ) + :InitHeading( angle ) + :InitShape( staticShape ) + :Spawn( nil, name ) + end +end + +local circleCenter = STATIC:FindByName( "CircleCenterContainer", true ):GetCoordinate() +targetcircle( circleCenter ) +targetcircle( circleCenter, 250, nil, "outerCircle" ) + +MESSAGE:New( "Containers are in place now", 35, "INFO" ):ToAll():ToLog() diff --git a/Core/SpawnStatic/050-Spawn-FARPs/SPS-050-Spawn-FARPs.lua b/Core/SpawnStatic/050-Spawn-FARPs/SPS-050-Spawn-FARPs.lua index b6dc418..a241e3f 100644 --- a/Core/SpawnStatic/050-Spawn-FARPs/SPS-050-Spawn-FARPs.lua +++ b/Core/SpawnStatic/050-Spawn-FARPs/SPS-050-Spawn-FARPs.lua @@ -1,17 +1,5 @@ --- --- Author: Unknown --- Created: Unknown --- Contributors: kaltokri --- Modified: 01.03.2024 --- --- # Documentation: --- https://flightcontrol-master.github.io/MOOSE_DOCS_DEVELOP/Documentation/Core.SpawnStatic.html --- https://flightcontrol-master.github.io/MOOSE_DOCS_DEVELOP/Documentation/Wrapper.Static.html --- https://flightcontrol-master.github.io/MOOSE_DOCS_DEVELOP/Documentation/Core.Zone.html --- https://flightcontrol-master.github.io/MOOSE_DOCS_DEVELOP/Documentation/Wrapper.Airbase.html --- --- # Description: --- +-- FARPS -- This demo shows how to dynamically spawn FARPs into a mission. -- -- We spawn two FARPS in a zone near Batumi. @@ -24,11 +12,7 @@ -- -- As FARPS in DCS are strange creatures, which are hybrids of groups -- and statics, the function :InitFARP is necessary. --- --- # Guide: --- --- 1. Start the mission and watch the created FARPs. - +--- -- Zone near Batumi on land. local zoneSpawn1 = ZONE:FindByName( "SpawnZone1" )