mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
39 lines
1.8 KiB
Plaintext
39 lines
1.8 KiB
Plaintext
#include "script_component.hpp"
|
|
|
|
// Create a dictionary to store detector configs
|
|
GVAR(detectorConfigs) = call CBA_fnc_createNamespace;
|
|
|
|
// Create a dictionary of detectable classnames
|
|
GVAR(detectableClasses) = call CBA_fnc_createNamespace;
|
|
{
|
|
if ((getNumber (_x >> QGVAR(detectable))) == 1) then {
|
|
GVAR(detectableClasses) setVariable [configName _x, true];
|
|
};
|
|
} forEach (configProperties [configFile >> "CfgVehicles", "isClass _x", true]);
|
|
{
|
|
if ((getNumber (_x >> QGVAR(detectable))) == 1) then {
|
|
GVAR(detectableClasses) setVariable [configName _x, true];
|
|
};
|
|
} forEach (configProperties [configFile >> "CfgAmmo", "isClass _x", true]);
|
|
|
|
[QGVAR(enableDetector), FUNC(enableDetector)] call CBA_fnc_addEventHandler;
|
|
[QGVAR(disableDetector), FUNC(disableDetector)] call CBA_fnc_addEventHandler;
|
|
|
|
// 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
|