2015-06-12 21:54:51 +00:00
|
|
|
/*
|
|
|
|
* Author: Rocko, Ruthberg
|
|
|
|
* Position tactical ladder
|
|
|
|
*
|
|
|
|
* Arguments:
|
2015-09-26 01:16:55 +00:00
|
|
|
* 0: unit <OBJECT>
|
|
|
|
* 1: ladder <OBJECT>
|
2015-06-12 21:54:51 +00:00
|
|
|
*
|
|
|
|
* Return Value:
|
|
|
|
* None
|
|
|
|
*
|
|
|
|
* Example:
|
2015-09-26 01:16:55 +00:00
|
|
|
* [_unit, _ladder] call ace_tacticalladder_fnc_positionTL
|
2015-06-12 21:54:51 +00:00
|
|
|
*
|
|
|
|
* Public: No
|
|
|
|
*/
|
2015-06-03 18:27:52 +00:00
|
|
|
#include "script_component.hpp"
|
|
|
|
|
|
|
|
#define __ANIMS ["extract_1","extract_2","extract_3","extract_4","extract_5","extract_6","extract_7","extract_8","extract_9","extract_10","extract_11"]
|
|
|
|
|
2015-09-26 01:16:55 +00:00
|
|
|
params ["_unit", "_ladder"];
|
|
|
|
|
|
|
|
// prevent the placing unit from running
|
|
|
|
[_unit, "ACE_Ladder", true] call EFUNC(common,setForceWalkStatus);
|
2015-06-03 18:27:52 +00:00
|
|
|
|
2015-06-12 20:45:41 +00:00
|
|
|
{
|
|
|
|
_ladder animate [_x, 0];
|
2015-08-07 06:19:15 +00:00
|
|
|
} count __ANIMS;
|
2015-06-03 18:27:52 +00:00
|
|
|
|
2015-09-26 01:16:55 +00:00
|
|
|
[_unit, "amovpercmstpslowwrfldnon_player_idlesteady03", 2] call EFUNC(common,doAnimation);
|
|
|
|
|
2015-06-12 20:45:41 +00:00
|
|
|
_ladder attachTo [_unit, [0, 0.75, 0], ""]; // Position ladder in front of player
|
2015-06-03 18:27:52 +00:00
|
|
|
|
2015-06-12 20:45:41 +00:00
|
|
|
_ladder animate ["rotate", 0];
|
|
|
|
{
|
|
|
|
_ladder animate [_x, 1];
|
2015-08-07 06:19:15 +00:00
|
|
|
} count ["extract_1", "extract_2", "extract_3"]; // Extract ladder at head height (extract_3)
|
2015-06-03 18:27:52 +00:00
|
|
|
|
|
|
|
GVAR(ladder) = _ladder;
|
2015-06-12 22:01:48 +00:00
|
|
|
GVAR(cancelTime) = ACE_time + 1; // Workaround to prevent accidental canceling
|
2015-06-03 18:27:52 +00:00
|
|
|
GVAR(currentStep) = 3;
|
|
|
|
GVAR(currentAngle) = 0;
|
|
|
|
|
2015-09-26 01:16:55 +00:00
|
|
|
// add mouse buttons and hints
|
2015-06-13 07:51:49 +00:00
|
|
|
[localize LSTRING(Deploy), localize LSTRING(Drop), localize LSTRING(Adjust)] call EFUNC(interaction,showMouseHint);
|
2015-06-03 18:27:52 +00:00
|
|
|
|
2015-09-26 01:16:55 +00:00
|
|
|
_unit setVariable [QGVAR(Deploy), [
|
|
|
|
_unit, "DefaultAction",
|
2015-06-12 21:54:51 +00:00
|
|
|
{!isNull GVAR(ladder)},
|
2015-09-26 01:16:55 +00:00
|
|
|
{[_this select 0, GVAR(ladder)] call FUNC(confirmTLdeploy)}
|
|
|
|
] call EFUNC(common,addActionEventHandler)];
|
2015-06-03 18:27:52 +00:00
|
|
|
|
2015-09-26 01:16:55 +00:00
|
|
|
_unit setVariable [QGVAR(Cancel), [
|
|
|
|
_unit, "zoomtemp",
|
2015-06-12 21:54:51 +00:00
|
|
|
{!isNull GVAR(ladder)},
|
2015-09-26 01:16:55 +00:00
|
|
|
{[_this select 0, GVAR(ladder)] call FUNC(cancelTLdeploy)}
|
|
|
|
] call EFUNC(common,addActionEventHandler)];
|