mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
7781c721a8
Nightvision - Fix adjustable brightness
42 lines
1.3 KiB
Plaintext
42 lines
1.3 KiB
Plaintext
/*
|
|
* Author: commy2
|
|
* Change the brightness of the unit's NVG.
|
|
*
|
|
* Arguments:
|
|
* 0: The Unit <OBJECT>
|
|
* 1: Change in brightness (1 or -1) <NUMBER>
|
|
*
|
|
* Return Value:
|
|
* None
|
|
*
|
|
* Example:
|
|
* [player, 1] call ace_nightvision_fnc_changeNVGBrightness
|
|
*
|
|
* Public: No
|
|
*/
|
|
#include "script_component.hpp"
|
|
|
|
params ["_player", "_changeInBrightness"];
|
|
TRACE_2("changeNVGBrightness",_player,_changeInBrightness);
|
|
|
|
private _effectsEnabled = GVAR(effectScaling) != 0;
|
|
private _defaultBrightness = [-3, 0] select _effectsEnabled;
|
|
|
|
private _brightness = _player getVariable [QGVAR(NVGBrightness), _defaultBrightness];
|
|
_brightness = ((_brightness + _changeInBrightness) min 0) max -6;
|
|
_player setVariable [QGVAR(NVGBrightness), _brightness, false];
|
|
|
|
// Display default setting as 0
|
|
[format [LLSTRING(NVGBrightness), _brightness - _defaultBrightness]] call EFUNC(common,displayTextStructured);
|
|
playSound "ACE_Sound_Click";
|
|
|
|
// Handle brightness only if effects are disabled
|
|
if (!_effectsEnabled) exitWith {
|
|
_brightness = linearConversion [-6, 0, _brightness, 0.4, 1.6, true];
|
|
GVAR(ppEffectNVGBrightness) ppEffectAdjust [1, _brightness, 0, [0, 0, 0, 0], [0, 0, 0, 1], [0, 0, 0, 1]];
|
|
GVAR(ppEffectNVGBrightness) ppEffectCommit 0;
|
|
};
|
|
|
|
// Trigger full ppEffects update next time run in the PFEH
|
|
GVAR(nextEffectsUpdate) = -1;
|