/*
Author: Aaron Clark - EpochMod.com
Contributors:
Description:
Base building maintain base code
Licence:
Arma Public License Share Alike (APL-SA) - https://www.bistudio.com/community/licenses/arma-public-license-share-alike
Github:
https://github.com/EpochModTeam/Epoch/tree/master/Sources/epoch_code/compile/building/EPOCH_maintainIT.sqf
Example:
cursorTarget call EPOCH_maintainIT;
Parameter(s):
_this: OBJECT - Base building object ("Constructions_static_F","Constructions_foundation_F","Buildable_Storage","Constructions_lockedstatic_F")
Returns:
NOTHING
*/
private ["_dt","_buildingJammerRange","_maintainCount","_rnd","_config"];
if !(isNil "EPOCH_maintainLockout") exitWith {_dt = ["Already Maintaining a base.", 0, 1, 5, 2, 0, 1] spawn bis_fnc_dynamictext;};
if (EPOCH_playerCrypto > 0) then {
_config = "CfgEpochClient" call EPOCH_returnConfig;
_buildingJammerRange = getNumber(_config >> "buildingJammerRange");
if (_buildingJammerRange == 0) then { _buildingJammerRange = 75; };
_maintainCount = {(damage _x) > 0} count nearestObjects[_this, ["Constructions_static_F","Constructions_foundation_F","Buildable_Storage","Constructions_lockedstatic_F"], _buildingJammerRange];
if (_maintainCount > 0) then {
if (EPOCH_playerCrypto < _maintainCount) then {
_maintainCount = EPOCH_playerCrypto;
};
_rnd = format ["rmx_var_temp%1%2",floor random 100, ["A","B","C","D","E","F"] select random 5];
[_this modelToWorld [0,0,0.2],20,"x\addons\a3_epoch_code\Data\UI\buttons\timer.paa", "Maintaining",60,_rnd] call epoch_gui3dWorldPos;
EPOCH_maintainLockout = true;
EPOCH_MAINTBUILD = [_this, player, _maintainCount, Epoch_personalToken];
publicVariableServer "EPOCH_MAINTBUILD";
[_rnd,_maintainCount] spawn {
params ["_rnd","_maintainCount"];
uiSleep _maintainCount;
missionNamespace setVariable [_rnd,false];
uiSleep 1;
missionNamespace setVariable [_rnd,nil];
EPOCH_maintainLockout = nil;
};
_dt = [format["Cost %1 Krypto to maintain base.", _maintainCount], 0, 1, 5, 2, 0, 1] spawn bis_fnc_dynamictext;
} else {
_dt = ["Nothing needs Maintaining", 0, 1, 5, 2, 0, 1] spawn bis_fnc_dynamictext;
};
} else {
_dt = ["You need Krypto to maintain a base.", 0, 1, 5, 2, 0, 1] spawn bis_fnc_dynamictext;
};