Difference between revisions of "VN ms fnc tracker attackArea"
Jump to navigation
Jump to search
Lou Montana (talk | contribs) m (Text replacement - " {{Function" to "Category:TODO {{Function") |
Lou Montana (talk | contribs) m (Text replacement - "]]; |p1n=" to "]] |p1n=") |
||
| Line 88: | Line 88: | ||
</pre><small>''(Placeholder description extracted from the function header by '''LM_exportFunctionsToWiki.sqf''')''</small> | </pre><small>''(Placeholder description extracted from the function header by '''LM_exportFunctionsToWiki.sqf''')''</small> | ||
| − | |s= [] call [[vn_ms_fnc_tracker_attackArea]] | + | |s= [] call [[vn_ms_fnc_tracker_attackArea]] |
|p1n= | |p1n= | ||
Revision as of 21:02, 20 January 2021
| ← back to Functions | Introduced in S.O.G. Prairie Fire v1.00 by Wyqer, veteran29 |
|
Description
/*
Author: Wyqer, veteran29
Date: 2019-12-03
Public: Yes
Description:
Spawn waves attacking area.
Parameter(s):
_target - Position to attack [ARRAY, defaults to []]
_spawn - Positions to spawn attackers or radius around target [ARRAY, NUMBER, defaults to 200]
_count - Amount of waves [NUMBER, defaults to 10]
_delay - Delay between waves [NUMBER, defaults to 45]
_condition - Condition code, spawning will stop if it will return false [CODE, defaults to {true}]
_ao - Area, if provided spawned units will have a chance to become avalanche [ARRAY or STRING, defaults to ""]
_side - Side of the attacking groups [SIDE, defaults to EAST]
_onSpawned - Callback function to execute on each spawned group (passed as _this) [CODE, defaults to {}]
_completionRadius - Attack waypoint completion radius [NUMBER, defaults to 20]
_completionStatment - Attack waypoint statment, if ommited default Tracker/Avalanche is applied on completion [STRING, defaults to nil]
Example:
[markerPos "vn_wp1", 150, 3, 15] call vn_ms_fnc_tracker_attackArea;
Returns:
Spawned groups [ARRAY]
*/
if (!canSuspend) exitWith {
_this spawn (missionNamespace getVariable _fnc_scriptName);
};
params [
["_target", [], [[]], 3],
["_spawn", 200, [0, []]],
["_count", 10, [0]],
["_delay", 45, [0]],
["_condition", {true}, [{}]],
["_ao", "", ["", []], [4,5,6]],
["_side", EAST, [sideUnknown]],
["_onSpawned", {}, [{}]],
["_completionRadius", 20, [0]],
["_completionStatement", nil, [""]]
];
private _msg = format ["[VN] Area attack starting - %1", _this select [0, 4]];
diag_log text _msg;
#ifdef VN_DEBUG
systemChat _msg;
#endif
// spawn pos fetching function
// depends if radius or array of positions given
private _fnc_getPos = {};
if (_spawn isEqualType []) then {
// select one of provided positions randomly
_fnc_getPos = {
private _spawnPos = [];
waitUntil {
sleep 1;
_spawnPos = selectRandom _spawn;
if (_spawnPos isEqualType "") then {
_spawnPos = markerPos _spawnPos;
};
!([allPlayers, _spawnPos] call vn_ms_fnc_tracker_positionVisible)
&& !surfaceIsWater _spawnPos
};
_spawnPos
};
} else {
// find random position around target position
_fnc_getPos = vn_ms_fnc_tracker_getHiddenPos;
(Placeholder description extracted from the function header by LM_exportFunctionsToWiki.sqf)
Syntax
- Syntax
- [] call vn_ms_fnc_tracker_attackArea
- Return value
- Nothing
Examples
- Example 1
-