ACE3/addons/laserpointer/functions/fnc_onDraw.sqf
2015-04-30 23:18:45 +02:00

42 lines
1.1 KiB
Plaintext

// by commy2
#include "script_component.hpp"
_brightness = 2 - call EFUNC(common,ambientBrightness);
_isIR = currentVisionMode ACE_player;
if (_isIR == 2) exitWith {};
_isIR = _isIR == 1;
{
_weapon = currentWeapon _x;
_laser = switch (_weapon) do {
case (""): {""};
case (primaryWeapon _x): {
primaryWeaponItems _x select 1;
};
case (secondaryWeapon _x): {
secondaryWeaponItems _x select 1;
};
case (handgunWeapon _x): {
handgunItems _x select 1;
};
default {""};
};
if (_laser != "") then {
_cacheName = format [QGVAR(laser_%1), _laser];
_laserID = missionNamespace getVariable [_cacheName, -1];
if (missionNamespace getVariable [_cacheName, -1] == -1) then {
_laserID = getNumber (configFile >> "CfgWeapons" >> _laser >> "ACE_laserpointer");
missionNamespace setVariable [_cacheName, _laserID];
};
if (_laserID > 0 && {_x isFlashlightOn _weapon}) then {
[_x, 50, _laserID == 2 || _isIR] call FUNC(drawLaserpoint);
};
};
} forEach GVAR(nearUnits);