ACE3/addons/explosives/functions/fnc_startTimer.sqf
2015-01-15 17:06:38 -03:00

38 lines
956 B
Plaintext

/*
Author(s):
Garth de Wet (LH)
Description:
Starts a timer for an explosive.
Parameters:
0: OBJECT - Explosive
1: NUMBER - time till detonation
Returns:
Nothing
Example:
[_explosive, 10] call ACE_Explosives_fnc_startTimer;
*/
#include "script_component.hpp"
[{
private ["_explosive", "_params", "_pfhId", "_placeTime", "_fuseTime"];
_params = _this select 0;
_pfhId = _this select 1;
_placeTime = _params select 1;
_fuseTime = _params select 0 select 1;
// Skip first execution
if (diag_tickTime < _placeTime + _fuseTime / 2) exitWith {};
_explosive = (_params select 0) select 0;
if (!isNull _explosive) then {
[_explosive, -1, [_explosive, 0], true] call FUNC(detonateExplosive);
};
// Remove the PFH
[_pfhId] call cba_fnc_removePerFrameHandler;
},_this select 1, [_this, diag_tickTime]] call CBA_fnc_addPerFrameHandler;