ACE3/addons/cookoff/functions/fnc_cookOffBox.sqf
2024-02-05 17:31:27 +01:00

40 lines
980 B
Plaintext

#include "..\script_component.hpp"
/*
* Author: KoffeinFlummi, commy2, kymckay, johnb43
* Start a cook-off in the given ammo box.
*
* Arguments:
* 0: Ammo box <OBJECT>
* 1: Killer <OBJECT> (default: objNull)
* 2: Instigator <OBJECT> (default: objNull)
*
* Return Value:
* None
*
* Example:
* cursorObject call ace_cookoff_fnc_cookOffBox
*
* Public: No
*/
if (!isServer) exitWith {};
params ["_box", ["_killer", objNull], ["_instigator", objNull]];
if (_box getVariable [QGVAR(isCookingOff), false]) exitWith {};
_box setVariable [QGVAR(isCookingOff), true, true];
// Spawn cook-off effects on all connected machines
private _jipID = [QGVAR(cookOffBoxLocal), [
_box,
_killer,
_instigator,
CBA_missionTime,
random [SMOKE_DELAY / 2, SMOKE_DELAY, SMOKE_DELAY / 2 * 3] // generate random timer that is global synced
]] call CBA_fnc_globalEventJIP;
[_jipID, _box] call CBA_fnc_removeGlobalEventJIP;
_box setVariable [QGVAR(jipIDs), [_jipID]];