mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
1b86063ade
* Initial commit
* Change order
* ace-ify functions
* Add function headers, tweak onPylonMirror function
* Finish localization
* Fix trivial idc collision
* Styling
* Add self as author
* Add interaction for the dialog
* Add settings to enable menu and change behaviour
* Add strings
* Move changes into pylons component
* Progress
* Only one function left!
* Fix issues with overlapping players, Use LINKFUNC
* Add progress bar
* I need to switch branches
* Remove old pylon weapons from aircraft
* Explicitly set new pylon's ammo to 0
* Replace magic numbers with ID list
* Align controls properly
* Remove space before eol
* Add ability to add/remove FRIES
* 🐛 Whoops
* Fix logic errors
* Value of 1 means helicopter has built-in FRIES
* Add pilot/gunner switch button
Working on those buttons also helped me improve both the static and
on-the-fly (pun intended) parts of the dialog.
* Add quick zeus module
* Add a way to retrieve scripted pylon turrets
Not entirely reliable, but if used in both rearm and pylons, missions
that only use ace will work perfectly.
* Use getNumber default
* Use common's getPylonTurret
* Make dialog close on apply for zeus
* Handle UI Scaling better
* Prevent progressBar from failing in zeus
* Remove unnecessary stringtable key
59 lines
1.8 KiB
Plaintext
59 lines
1.8 KiB
Plaintext
/*
|
|
* Author: 654wak654
|
|
* Loads selected pylon configuration from either config or profileNamespace.
|
|
*
|
|
* Arguments:
|
|
* None
|
|
*
|
|
* Return Value:
|
|
* None
|
|
*
|
|
* Example:
|
|
* [] call ace_pylons_fnc_onButtonLoad
|
|
*
|
|
* Public: No
|
|
*/
|
|
#include "script_component.hpp"
|
|
|
|
[false] call FUNC(onPylonMirror);
|
|
(CONTROL(ID_DIALOG) ID_CHECKBOX_MIRROR) cbSetChecked false;
|
|
|
|
private _loadoutName = ctrlText ID_EDIT_LOADOUTNAME;
|
|
private _fnc_setSelections = {
|
|
params ["_mags", "_turrets"];
|
|
|
|
{
|
|
_x params ["_combo", "_mirroredIndex", "_button"];
|
|
|
|
private _index = 0;
|
|
for "_i" from 1 to ((lbSize _combo) - 1) do {
|
|
if ((_combo lbData _i) == (_mags param [_forEachIndex, ""])) exitWith {
|
|
_index = _i;
|
|
};
|
|
};
|
|
_combo lbSetCurSel _index;
|
|
|
|
[_button, false, _turrets select _forEachIndex] call FUNC(onButtonTurret);
|
|
} forEach GVAR(comboBoxes);
|
|
};
|
|
|
|
private _pylonComponent = configFile >> "CfgVehicles" >> typeOf GVAR(currentAircraft) >> "Components" >> "TransportPylonsComponent";
|
|
private _loadoutFound = {
|
|
if (getText (_x >> "displayName") isEqualTo _loadoutName) exitWith {
|
|
// Get default turrets from config
|
|
private _turrets = ("true" configClasses (_pylonComponent >> "Pylons")) apply {getArray (_x >> "turret")};
|
|
[getArray (_x >> "attachment"), _turrets] call _fnc_setSelections;
|
|
true
|
|
};
|
|
false
|
|
} forEach ("true" configClasses (_pylonComponent >> "Presets"));
|
|
|
|
if (_loadoutFound) exitWith {};
|
|
|
|
private _aircraftLoadouts = profileNamespace getVariable [QGVAR(aircraftLoadouts), []];
|
|
{
|
|
if ((_x select 0) isEqualTo _loadoutName && {(_x select 3) isEqualTo typeOf GVAR(currentAircraft)}) exitWith {
|
|
[_x select 1, _x select 2] call _fnc_setSelections;
|
|
};
|
|
} forEach _aircraftLoadouts;
|