ACE3/addons/gestures/functions/fnc_playSignal.sqf

38 lines
1009 B
Plaintext
Raw Normal View History

#include "script_component.hpp"
/*
* Author: joko // Jonas, Emperias, Zigomarvin
* Detect if the player and play the Gesture Animation
*
* Arguments:
* Animation <STRING>
*
* Return Value:
* Boolean <BOOL>
*
* Example:
2015-10-26 15:49:39 +00:00
* "GeniusAnimation" call ace_gestures_fnc_playSignal
*
* Public: No
*/
2016-05-03 00:32:44 +00:00
2015-10-26 15:49:39 +00:00
TRACE_1("params",_this);
if (GVAR(showOnInteractionMenu) == 0) exitWith {false};
if !([ACE_player, objNull, ["isNotSwimming"]] call EFUNC(common,canInteractWith)) exitWith {false};
2015-10-26 15:49:39 +00:00
private _gesture = if ((_this select [0,2]) == "BI") then {
//If it starts with BI, just strip off the leading BI and use it directly
_this select [2]
} else {
//Adjust gesture based on stance:
if (((animationState ACE_player) select [0, 12]) in ["amovpercmstp", "amovpercmwlk", "amovpercmtac"] && weaponLowered ACE_player) then {
format ["%1StandLowered", _this]
} else {
_this
};
};
2015-10-26 15:49:39 +00:00
TRACE_1("playing gesture",_gesture);
2016-07-12 14:16:01 +00:00
[ACE_player, _gesture] call EFUNC(common,doGesture);
true