-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
cd27e63
commit fddbcfd
Showing
2 changed files
with
59 additions
and
18 deletions.
There are no files selected for viewing
57 changes: 57 additions & 0 deletions
57
Core/SpawnStatic/020-Mark-target-with-containers/STA-100-Mark-target-with-containers.lua
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters