mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
Merge branch 'flashlight_housekeeping' of https://github.com/voiperr/ACE3 into voiperr-flashlight_housekeeping
This commit is contained in:
@ -3,37 +3,44 @@
|
||||
* Add or remove global flashlight glow for when player is looking at map.
|
||||
*
|
||||
* Arguments:
|
||||
* 0: Flashlight classname ("" for off) <STRING>
|
||||
* 0: Unit <OBJECT>
|
||||
* 1: Flashlight classname ("" for off) <STRING>
|
||||
* 2: Set the PVAR? <BOOL> (default: true)
|
||||
*
|
||||
* Return Value:
|
||||
* None
|
||||
* Glow object <OBJECT>
|
||||
*
|
||||
* Example:
|
||||
* ["ACE_Flashlight_MX991"] call ace_map_fnc_flashlightGlow;
|
||||
* [ACE_player, "ACE_Flashlight_MX991"] call ace_map_fnc_flashlightGlow;
|
||||
*
|
||||
* Public: No
|
||||
*/
|
||||
|
||||
#include "script_component.hpp"
|
||||
|
||||
private ["_light", "_color", "_class"];
|
||||
params ["_flashlight"];
|
||||
params ["_unit", "_flashlightType", ["_set", true]];
|
||||
|
||||
_light = GVAR(glow);
|
||||
if (!isNull _light) then {
|
||||
detach _light;
|
||||
deleteVehicle _light;
|
||||
private _unitLight = _unit getVariable [QGVAR(flashlight), ["", objNull]];
|
||||
_unitLight params ["_flashlight", "_glow"];
|
||||
|
||||
if (!isNull _glow) then {
|
||||
detach _glow;
|
||||
deleteVehicle _glow;
|
||||
};
|
||||
|
||||
if (_flashlight != "") then {
|
||||
_color = getText (configFile >> "CfgWeapons" >> _flashlight >> "ItemInfo" >> "FlashLight" >> "ACE_Flashlight_Colour");
|
||||
if !(_color in ["white", "red", "green", "blue", "yellow"]) then {_color = "white"};
|
||||
_class = format["ACE_FlashlightProxy_%1", _color];
|
||||
if !(_flashlightType isEqualTo "") then {
|
||||
private _color = getText (configFile >> "CfgWeapons" >> _flashlightType >> "ItemInfo" >> "FlashLight" >> "ACE_Flashlight_Colour");
|
||||
if !(_color in ["white", "red", "green", "blue", "yellow", "orange"]) then {_color = "white"};
|
||||
private _class = format ["ACE_FlashlightProxy_%1", _color];
|
||||
|
||||
_light = _class createVehicle [0,0,0];
|
||||
_light attachTo [ACE_player, [0,0.1,-0.05], "neck"];
|
||||
_glow = _class createVehicle [0,0,0];
|
||||
_glow attachTo [_unit, [0,0.1,-0.05], "neck"];
|
||||
} else {
|
||||
_light = objNull;
|
||||
_glow = objNull;
|
||||
};
|
||||
|
||||
GVAR(glow) = _light;
|
||||
if (_set) then {
|
||||
_unit setVariable [QGVAR(flashlight), [_flashlight, _glow], true];
|
||||
};
|
||||
|
||||
_glow
|
||||
|
Reference in New Issue
Block a user