mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
afe3e5ccd3
- Fix #4200 (add delay for units created via zeus) - Use ace_settingsInitialized to add events
39 lines
1.1 KiB
Plaintext
39 lines
1.1 KiB
Plaintext
/*
|
|
* Author: Jonpas
|
|
* Adds spare parts to the vehicle. Before SettingsInitialized only collect for later execution.
|
|
*
|
|
* Arguments:
|
|
* 0: Vehicle <OBJECT>
|
|
* 1: Amount <NUMBER> (default: 1)
|
|
* 2: Spare Part Classname <STRING> (default: "")
|
|
* 3: Force (add even if setting is disabled) <BOOL> (default: false)
|
|
*
|
|
* Return Value:
|
|
* None
|
|
*
|
|
* Example:
|
|
* [vehicle] call ace_repair_fnc_addSpareParts
|
|
*
|
|
* Public: No
|
|
*/
|
|
#include "script_component.hpp"
|
|
|
|
params ["_vehicle", ["_amount", 1], ["_part", ""], ["_force", false]];
|
|
TRACE_2("params",_vehicle,_amount);
|
|
|
|
// Exit if ace_cargo is not loaded or no part supplied
|
|
if (!(["ace_cargo"] call EFUNC(common,isModLoaded)) || {_part == ""}) exitWith {};
|
|
|
|
// Collect until SettingsInitialized
|
|
if (!EGVAR(common,settingsInitFinished)) exitWith {
|
|
EGVAR(common,runAtSettingsInitialized) pushBack [FUNC(addSpareParts), _this];
|
|
};
|
|
|
|
// Exit if not forced and add spare parts is disabled (after settings initted to make sure it really is)
|
|
if (!_force && !GVAR(addSpareParts)) exitWith {};
|
|
|
|
// Load
|
|
[{
|
|
["ace_addCargo", _this] call CBA_fnc_localEvent;
|
|
}, [_part, _vehicle, _amount]] call CBA_fnc_execNextFrame;
|