2023-09-12 18:58:10 +00:00
|
|
|
#include "..\script_component.hpp"
|
2015-10-14 22:26:31 +00:00
|
|
|
/*
|
|
|
|
* Author: joko // Jonas, Emperias, Zigomarvin
|
|
|
|
* Detect if the player and play the Gesture Animation
|
|
|
|
*
|
|
|
|
* Arguments:
|
|
|
|
* Animation <STRING>
|
|
|
|
*
|
|
|
|
* Return Value:
|
2017-06-08 13:31:51 +00:00
|
|
|
* Boolean <BOOL>
|
2015-10-14 22:26:31 +00:00
|
|
|
*
|
|
|
|
* Example:
|
2015-10-26 15:49:39 +00:00
|
|
|
* "GeniusAnimation" call ace_gestures_fnc_playSignal
|
2015-10-14 22:26:31 +00:00
|
|
|
*
|
|
|
|
* Public: No
|
|
|
|
*/
|
2016-05-03 00:32:44 +00:00
|
|
|
|
2015-10-26 15:49:39 +00:00
|
|
|
TRACE_1("params",_this);
|
2015-10-14 22:26:31 +00:00
|
|
|
|
2015-12-09 05:08:09 +00:00
|
|
|
if (GVAR(showOnInteractionMenu) == 0) exitWith {false};
|
2017-08-22 18:30:56 +00:00
|
|
|
if !([ACE_player, objNull, ["isNotSwimming"]] call EFUNC(common,canInteractWith)) exitWith {false};
|
2015-10-26 15:49:39 +00:00
|
|
|
|
2015-12-09 05:08:09 +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
|
2015-10-14 22:26:31 +00:00
|
|
|
_this select [2]
|
|
|
|
} else {
|
2015-12-09 05:08:09 +00:00
|
|
|
//Adjust gesture based on stance:
|
2015-10-14 22:26:31 +00:00
|
|
|
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
|
|
|
|
2015-12-09 05:08:09 +00:00
|
|
|
TRACE_1("playing gesture",_gesture);
|
2016-07-12 14:16:01 +00:00
|
|
|
[ACE_player, _gesture] call EFUNC(common,doGesture);
|
2015-10-14 22:26:31 +00:00
|
|
|
true
|