Initial baseline - KP Liberation v0.96.7a Ruha variant
This commit is contained in:
52
scripts/server/sector/fn_spawnSectorIntel.sqf
Normal file
52
scripts/server/sector/fn_spawnSectorIntel.sqf
Normal file
@@ -0,0 +1,52 @@
|
||||
/*
|
||||
File: fn_spawnSectorIntel.sqf
|
||||
Author: KP Liberation Dev Team - https://github.com/KillahPotatoes
|
||||
Date: 2020-05-01
|
||||
Last Update: 2020-05-06
|
||||
License: MIT License - http://www.opensource.org/licenses/MIT
|
||||
|
||||
Description:
|
||||
Spawns intel objects in valid buildings at given sector.
|
||||
|
||||
Parameter(s):
|
||||
_sector - Sector to spawn intel for [STRING, defaults to ""]
|
||||
_range - Range from the sector center to look for valid buildings [NUMBER, defaults to 150]
|
||||
_amount - Amount of intel objects to spawn at the sector [NUMBER, defaults to 2 + (floor (random 3))]
|
||||
|
||||
Returns:
|
||||
Function reached the end [BOOL]
|
||||
*/
|
||||
|
||||
params [
|
||||
["_sector", "", [""]],
|
||||
["_range", 150, [0]],
|
||||
["_amount", 2 + (floor (random 3)), [0]]
|
||||
];
|
||||
|
||||
if (_sector isEqualTo "") exitWith {["Empty string given"] call BIS_fnc_error; false};
|
||||
if (isNil "KPLIB_sectorIntelSpawned") then {KPLIB_sectorIntelSpawned = []};
|
||||
|
||||
if !(_sector in KPLIB_sectorIntelSpawned) then {
|
||||
KPLIB_sectorIntelSpawned pushBack _sector;
|
||||
private _buildings = (nearestObjects [markerPos _sector, KPLIB_intelBuildingClasses, _range]) select {alive _x};
|
||||
|
||||
if !(_buildings isEqualTo []) then {
|
||||
private _positions = [];
|
||||
{_positions append _x;} forEach (_buildings apply {[_x] call BIS_fnc_buildingPositions});
|
||||
|
||||
if ((count _positions) >= (_amount * 4)) then {
|
||||
private _spawnPos = [];
|
||||
private _obj = objNull;
|
||||
|
||||
for "_i" from 1 to _amount do {
|
||||
_spawnPos = _positions deleteAt (floor random (count _positions));
|
||||
_obj = (selectRandom KPLIB_intelObjectClasses) createVehicle _spawnPos;
|
||||
_obj setdir (random 360);
|
||||
_obj setPosATL _spawnPos;
|
||||
_obj allowDamage false;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
true
|
||||
Reference in New Issue
Block a user