2015-01-11 16:42:31 +00:00
|
|
|
/*
|
|
|
|
* Author: commy2
|
2015-04-11 13:46:41 +00:00
|
|
|
* Unmutes the unit. Only unmutes if the last reason was removed.
|
2015-01-12 04:02:33 +00:00
|
|
|
*
|
2015-09-17 16:25:02 +00:00
|
|
|
* Arguments:
|
|
|
|
* 0: Unit <OBJECT>
|
|
|
|
* 1: Reason to unmute the unit. <STRING>
|
2015-01-12 04:02:33 +00:00
|
|
|
*
|
2015-09-17 16:25:02 +00:00
|
|
|
* Return Value:
|
|
|
|
* None
|
|
|
|
*
|
2017-06-08 13:31:51 +00:00
|
|
|
* Example:
|
|
|
|
* [bob, "because"] call ace_common_fnc_unmuteUnit
|
|
|
|
*
|
2015-09-17 16:25:02 +00:00
|
|
|
* Public: Yes
|
2015-01-11 16:42:31 +00:00
|
|
|
*/
|
2015-01-13 19:56:02 +00:00
|
|
|
#include "script_component.hpp"
|
2015-01-11 16:42:31 +00:00
|
|
|
|
2015-09-17 16:25:02 +00:00
|
|
|
params ["_unit", "_reason"];
|
2015-01-11 16:42:31 +00:00
|
|
|
|
|
|
|
if (isNull _unit) exitWith {};
|
|
|
|
|
2015-04-11 13:46:41 +00:00
|
|
|
// remove reason to mute to the unit
|
2015-12-14 12:08:19 +00:00
|
|
|
private _muteUnitReasons = _unit getVariable [QGVAR(muteUnitReasons), []];
|
2015-04-11 13:46:41 +00:00
|
|
|
|
|
|
|
if (_reason in _muteUnitReasons) then {
|
|
|
|
_muteUnitReasons deleteAt (_muteUnitReasons find _reason);
|
|
|
|
_unit setVariable [QGVAR(muteUnitReasons), _muteUnitReasons, true];
|
|
|
|
};
|
|
|
|
|
2015-04-11 18:26:43 +00:00
|
|
|
// don't unmute if there is another mute reason!
|
|
|
|
if (count _muteUnitReasons > 0) exitWith {};
|
|
|
|
|
2015-12-14 12:08:19 +00:00
|
|
|
private _speaker = _unit getVariable ["ACE_OriginalSpeaker", ""];
|
2015-04-11 13:46:41 +00:00
|
|
|
|
2015-01-11 16:42:31 +00:00
|
|
|
if (_speaker == "") exitWith {};
|
|
|
|
|
2016-06-04 10:12:56 +00:00
|
|
|
[QGVAR(setSpeaker), [_unit, _speaker], _unit] call CBA_fnc_targetEvent;
|