ACE3/addons/minedetector/XEH_clientInit.sqf

41 lines
1.6 KiB
Plaintext
Raw Normal View History

2016-05-03 20:37:02 +00:00
#include "script_component.hpp"
2016-06-11 19:57:04 +00:00
[QGVAR(detectorEnabled), {
2016-05-03 20:37:02 +00:00
params ["_unit", "_type"];
private _config = [_type] call FUNC(getDetectorConfig);
private _helperObject = "ACE_LogicDummy" createVehicleLocal (getPos _unit);
2016-06-16 15:33:21 +00:00
_unit setVariable [QGVAR(helperLogic), _helperObject];
2016-05-03 20:37:02 +00:00
2016-06-12 15:22:44 +00:00
[FUNC(detectorLoop), 0.01, [_unit, _type, _config, CBA_missionTime, _helperObject]] call CBA_fnc_addPerFrameHandler;
2016-06-11 19:57:04 +00:00
}] call CBA_fnc_addEventHandler;
2016-05-03 20:37:02 +00:00
2016-06-11 19:57:04 +00:00
[QGVAR(detectorDisabled), {
2016-05-03 20:37:02 +00:00
params ["_unit", "_type"];
2016-06-16 15:33:21 +00:00
private _helperObject = _unit getVariable [QGVAR(helperLogic), objNull];
2016-05-03 20:37:02 +00:00
if !(isNull _helperObject) then {
deleteVehicle _helperObject;
};
2016-06-11 19:57:04 +00:00
}] call CBA_fnc_addEventHandler;
2016-05-07 17:08:36 +00:00
//Shows detector and mine posistions in 3d when debug is on
#ifdef DEBUG_MODE_FULL
GVAR(debugDetector) = [];
addMissionEventHandler ["Draw3D", {
if (GVAR(debugDetector) isEqualTo []) exitWith {};
GVAR(debugDetector) params ["_detectorPointAGL", "_mines"];
drawIcon3D ["\A3\ui_f\data\map\markers\military\dot_CA.paa", [0,0,1,1], _detectorPointAGL, 1, 1, 0, "detector", 1, 0.02, "PuristaMedium"];
{
_name = format ["%1@%2", typeOf _x, (floor ((_x distance _detectorPointAGL) * 10)) / 10];
if ((getNumber (configFile >> "CfgVehicles" >> (typeOf _x) >> QGVAR(detectable))) == 1) then {
drawIcon3D ["\A3\ui_f\data\map\markers\military\dot_CA.paa", [1,0,0,1], (ASLtoAGL (getPosASL _x)), 1, 1, 0, _name, 1, 0.02, "PuristaMedium"];
} else {
drawIcon3D ["\A3\ui_f\data\map\markers\military\dot_CA.paa", [1,1,0,1], (ASLtoAGL (getPosASL _x)), 1, 1, 0, _name, 1, 0.02, "PuristaMedium"];
};
} forEach _mines;
}];
#endif