ACE3/addons/gestures/functions/fnc_playSignal.sqf
jonpas 742626ff1a
General - Relative script_component.hpp includes (#9378)
Co-authored-by: PabstMirror <pabstmirror@gmail.com>
2023-09-12 20:58:10 +02:00

38 lines
1012 B
Plaintext

#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:
* "GeniusAnimation" call ace_gestures_fnc_playSignal
*
* Public: No
*/
TRACE_1("params",_this);
if (GVAR(showOnInteractionMenu) == 0) exitWith {false};
if !([ACE_player, objNull, ["isNotSwimming"]] call EFUNC(common,canInteractWith)) exitWith {false};
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
};
};
TRACE_1("playing gesture",_gesture);
[ACE_player, _gesture] call EFUNC(common,doGesture);
true