53 lines
2.5 KiB
Plaintext
53 lines
2.5 KiB
Plaintext
private ["_kp_markers_array","_kp_markers_start","_kp_markers_change","_kp_markers_pos","_kp_markers_posx","_kp_markers_posy","_kp_markers_name","_kp_markers_color"];
|
|
|
|
waitUntil {sleep 0.1; !isNil "save_is_loaded" && {save_is_loaded}};
|
|
|
|
_kp_markers_array = [];
|
|
_kp_markers_start = 0.2;
|
|
_kp_markers_change = 0.05;
|
|
|
|
while {true} do {
|
|
{deleteMarkerLocal _x;} forEach _kp_markers_array;
|
|
_kp_markers_array = [];
|
|
{
|
|
if ((side _x == GRLIB_side_enemy) && (({!captive _x} count (units _x) ) > 0) && ([(getpos leader _x), GRLIB_side_friendly, GRLIB_radiotower_size] call KPLIB_fnc_getNearestTower != "")) then {
|
|
_kp_markers_pos = getPosATL leader _x;
|
|
_kp_markers_posx = floor (_kp_markers_pos select 0);
|
|
_kp_markers_posx = _kp_markers_posx - (_kp_markers_posx mod 500);
|
|
_kp_markers_posy = floor (_kp_markers_pos select 1);
|
|
_kp_markers_posy = _kp_markers_posy - (_kp_markers_posy mod 500);
|
|
|
|
// Chernarus Grid Fix
|
|
if (worldName == "Chernarus") then {
|
|
_kp_markers_posy = _kp_markers_posy - 140;
|
|
if ((_kp_markers_posy + 500) < (_kp_markers_pos select 1)) then {
|
|
_kp_markers_posy = _kp_markers_posy + 500;
|
|
};
|
|
};
|
|
|
|
// Sahrani Grid Fix
|
|
if (worldName == "Sara") then {
|
|
_kp_markers_posy = _kp_markers_posy - 20;
|
|
if ((_kp_markers_posy + 500) < (_kp_markers_pos select 1)) then {
|
|
_kp_markers_posy = _kp_markers_posy + 500;
|
|
};
|
|
};
|
|
|
|
_kp_markers_name = format["kp_marker_grid_%1_%2", _kp_markers_posx, _kp_markers_posy];
|
|
_kp_markers_color = format["Color%1", side _x];
|
|
|
|
if ((markerShape _kp_markers_name) isEqualTo "RECTANGLE") then {
|
|
_kp_markers_name setMarkerAlphaLocal ((markerAlpha _kp_markers_name) + _kp_markers_change);
|
|
} else {
|
|
createMarkerLocal[_kp_markers_name, [_kp_markers_posx + 250, _kp_markers_posy + 250, 0]];
|
|
_kp_markers_name setMarkerShapeLocal "RECTANGLE";
|
|
_kp_markers_name setMarkerSizeLocal [250,250];
|
|
_kp_markers_name setMarkerColorLocal _kp_markers_color;
|
|
_kp_markers_name setMarkerAlphaLocal (_kp_markers_start + _kp_markers_change);
|
|
_kp_markers_array pushBack _kp_markers_name;
|
|
};
|
|
};
|
|
} forEach allGroups;
|
|
uiSleep (60 + (random 60));
|
|
};
|