2015-03-15 08:02:11 +00:00
|
|
|
/*
|
|
|
|
* Author: commy2
|
|
|
|
*
|
|
|
|
* Add a condition that gets checked by ace_common_fnc_canInteractWith.
|
|
|
|
*
|
|
|
|
* Arguments:
|
|
|
|
* 0: The conditions id. Used to remove later or as exception name. An already existing name overwrites. (String)
|
|
|
|
* 1: The condition to check. format of "_this" is "[_player, _target]". (Code)
|
|
|
|
*
|
|
|
|
* Return Value:
|
|
|
|
* Unit can interact?
|
|
|
|
*
|
|
|
|
*/
|
|
|
|
#include "script_component.hpp"
|
|
|
|
|
|
|
|
private ["_conditionName", "_conditionFunc"];
|
|
|
|
|
|
|
|
_conditionName = toLower (_this select 0);
|
|
|
|
_conditionFunc = _this select 1;
|
|
|
|
|
|
|
|
private ["_conditions", "_conditionNames", "_conditionFuncs"];
|
|
|
|
|
|
|
|
_conditions = missionNamespace getVariable [QGVAR(InteractionConditions), [[],[]]];
|
|
|
|
|
|
|
|
_conditionNames = _conditions select 0;
|
|
|
|
_conditionFuncs = _conditions select 1;
|
|
|
|
|
|
|
|
private "_index";
|
|
|
|
_index = _conditionNames find _conditionName;
|
|
|
|
|
|
|
|
if (_index == -1) then {
|
2015-04-06 16:22:43 +00:00
|
|
|
_index = count _conditionNames;
|
2015-03-15 08:02:11 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
_conditionNames set [_index, _conditionName];
|
|
|
|
_conditionFuncs set [_index, _conditionFunc];
|
|
|
|
|
|
|
|
GVAR(InteractionConditions) = [_conditionNames, _conditionFuncs];
|