ACE3/addons/pylons/functions/fnc_onButtonTurret.sqf

49 lines
1.4 KiB
Plaintext
Raw Normal View History

/*
* Author: 654wak654
* Handles init and click events of turret switch buttons.
*
* Arguments:
* 0: Button <CONTROL>
* 1: Should switch icons <BOOL>
* 2: Turret path <ARRAY>
*
* Return Value:
* None
*
* Example:
* [_button, true, []] call ace_pylons_fnc_onButtonTurret
*
* Public: No
*/
#include "script_component.hpp"
params ["_ctrl", "_switch", "_turret"];
if (_switch) then {
_turret = [[0], [-1]] select ((_ctrl getVariable QGVAR(turret)) isEqualTo [0]);
{
_x params ["", "_mirroredIndex", "_button"];
if (_ctrl == _button) exitWith {
if (_mirroredIndex == -1) then {
private _indexOf = _forEachIndex;
{
_x params ["", "_mirroredIndex", "_button"];
if (_mirroredIndex == _indexOf && {!ctrlEnabled _button}) exitWith {
[_button, false, _turret] call FUNC(onButtonTurret);
};
} forEach GVAR(comboBoxes);
};
};
} forEach GVAR(comboBoxes);
};
_ctrl setVariable [QGVAR(turret), _turret];
if (_turret isEqualTo [-1]) then {
_ctrl ctrlSetText "a3\ui_f\data\IGUI\RscIngameUI\RscUnitInfo\role_driver_ca.paa";
_ctrl ctrlSetTooltip localize "str_driver";
} else {
_ctrl ctrlSetText "a3\ui_f\data\IGUI\RscIngameUI\RscUnitInfo\role_gunner_ca.paa";
_ctrl ctrlSetTooltip localize "str_gunner";
};