ACE3/addons/medical/functions/fnc_actionPlaceInBodyBag.sqf

40 lines
1.1 KiB
Plaintext
Raw Normal View History

2015-02-21 20:53:07 +00:00
/*
* Author: Glowbal
* Replace a dead body by a bodybag
*
* Arguments:
* 0: The patient <OBJECT>
* 1: The new item classname <STRING>
*
* Return Value:
* nil
*
* Public: Yes
*/
#include "script_component.hpp"
private ["_target","_caller", "_nameOfUnit", "_onPosition", "_bodyBagCreated"];
_caller = _this select 0;
_target = _this select 1;
if !([_caller, "ACE_itemBodyBag"] call EFUNC(common,hasItem)) exitwith {};
[_caller, "ACE_itemBodyBag"] call EFUNC(common,useItem);
2015-04-05 17:27:53 +00:00
_nameOfUnit = [_target] call EFUNC(common,getName);
if (alive _target) then {
2015-02-21 20:53:07 +00:00
// force kill the unit.
2015-04-05 17:27:53 +00:00
[_target, true] call FUNC(setDead);
2015-02-21 20:53:07 +00:00
};
2015-04-05 17:27:53 +00:00
_onPosition = getPos _target;
deleteVehicle _target;
2015-02-21 20:53:07 +00:00
_bodyBagCreated = createVehicle ["ACE_bodyBag", _onPosition, [], 0, "NONE"];
// reset the position to ensure it is on the correct one.
_bodyBagCreated setPos _onPosition;
// TODO Does this need to be something with QUOTE(DEFUNC)?
2015-04-05 17:27:53 +00:00
[[_bodyBagCreated], QUOTE(DEFUNC(common,revealObject)), true] call call EFUNC(common,execRemoteFnc); /* TODO Replace by event system */
2015-02-21 20:53:07 +00:00
_bodyBagCreated;