ACE3/addons/zeus/functions/fnc_handleZeusUnitAssigned.sqf
mharis001 bca8b01860 Various additions to ace_zeus (#6036)
* Add search to teleport players UI

* Change group side icons to look better

* Improve teleport UI and add stringtable entries

* Add Assign Repair Vehicle module

* Add Assign Repair Facility module

* Add Assign Engineer module

* Add Full Heal module

* Add Suicide Bomber module

* Make heal module work without ace_medical

* Add suicide bomber module translations

* Improve attribute cargo to use displayName

* Improve set engineer ui

* ACE_Curator for repair modules + author array

* Add angle param to getModuleDestination

* Prevent multiple suicide bomber modules on same target

* Heal module: support BI scripted revive system

* Requested changes
2018-02-24 11:44:57 -06:00

47 lines
1.1 KiB
Plaintext

/*
* Author: SilentSpike
* Contextually removes addons (given in ACE_Curator) from zeus based on their required addon(s)
*
* ACE_Curator format:
* ModuleAddon = "RequiredAddon";
* OR
* ModuleAddon[] = {"RequiredAddon1","RequiredAddon2",...}
*
* Arguments:
* 0: The zeus logic <LOGIC>
* 1: The zeus player <UNIT>
*
* Return Value:
* None
*
* Example:
* [LOGIC, bob] call ace_zeus_fnc_handleZeusUnitAssigned
*
* Public: No
*/
#include "script_component.hpp"
if !(isClass (configFile >> "ACE_Curator")) exitWith { ERROR("The ACE_Curator class does not exist") };
params ["_logic"];
private _removeAddons = [];
{
private _addon = _x;
if (isArray _addon) then {
{
if !(isClass (configFile >> "CfgPatches" >> _x)) exitWith {
_removeAddons pushBack (configName _addon);
};
} forEach (getArray _addon);
};
if (isText _addon) then {
if !(isClass (configFile >> "CfgPatches" >> getText _addon)) then {
_removeAddons pushBack (configName _addon);
};
};
} forEach configProperties [configFile >> "ACE_Curator"];
_logic removeCuratorAddons _removeAddons;