2015-08-20 17:51:22 +00:00
|
|
|
/*
|
|
|
|
* Author: GitHawk
|
|
|
|
* Takes a magazine from an ammo truck.
|
|
|
|
*
|
|
|
|
* Arguments:
|
|
|
|
* 0: Params <ARRAY>
|
|
|
|
* 0: Unit <OBJECT>
|
|
|
|
* 1: Magazine Classname <STRING>
|
|
|
|
* 2: Ammo Truck <OBJECT>
|
|
|
|
*
|
|
|
|
* Return Value:
|
|
|
|
* None
|
|
|
|
*
|
|
|
|
* Example:
|
|
|
|
* [[player, "500Rnd_127x99_mag_Tracer_Red"]] call ace_rearm_fnc_takeSuccess
|
|
|
|
*
|
|
|
|
* Public: No
|
|
|
|
*/
|
|
|
|
#include "script_component.hpp"
|
|
|
|
|
2017-09-29 19:53:25 +00:00
|
|
|
params ["_args"];
|
2016-02-27 20:05:19 +00:00
|
|
|
_args params ["_unit", "_magazineClass", "_truck"];
|
2017-06-08 16:47:52 +00:00
|
|
|
TRACE_3("takeSuccess",_unit,_magazineClass,_truck);
|
2016-02-27 19:31:07 +00:00
|
|
|
|
|
|
|
private _success = true;
|
|
|
|
if (GVAR(supply) > 0) then {
|
2016-02-27 20:05:19 +00:00
|
|
|
_success = [_truck, _magazineClass] call FUNC(removeMagazineFromSupply);
|
2016-02-27 19:31:07 +00:00
|
|
|
};
|
2017-06-08 16:47:52 +00:00
|
|
|
if !(_success) exitWith {WARNING_2("takeSuccess failed to take [%1] from [%2]",_magazineClass,_truck);};
|
2015-08-20 17:51:22 +00:00
|
|
|
|
2016-01-19 15:34:59 +00:00
|
|
|
[_unit, "forceWalk", QGVAR(vehRearm), true] call EFUNC(common,statusEffect_set);
|
2016-02-27 19:31:07 +00:00
|
|
|
private _dummy = [_unit, _magazineClass] call FUNC(createDummy);
|
2015-08-20 17:51:22 +00:00
|
|
|
[_dummy, _unit] call FUNC(pickUpAmmo);
|
|
|
|
|
2016-02-27 19:31:07 +00:00
|
|
|
private _actionID = _unit addAction [
|
2015-08-21 20:57:14 +00:00
|
|
|
format ["<t color='#FF0000'>%1</t>", localize ELSTRING(dragging,Drop)],
|
2015-08-20 17:51:22 +00:00
|
|
|
'(_this select 0) call FUNC(dropAmmo)',
|
|
|
|
nil,
|
|
|
|
20,
|
|
|
|
false,
|
|
|
|
true,
|
|
|
|
"",
|
2017-06-08 16:47:52 +00:00
|
|
|
'!isNull (_target getVariable [QGVAR(dummy), objNull])'
|
2015-08-20 17:51:22 +00:00
|
|
|
];
|
|
|
|
_unit setVariable [QGVAR(ReleaseActionID), _actionID];
|