mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
57 lines
1.7 KiB
Plaintext
57 lines
1.7 KiB
Plaintext
#include "script_component.hpp"
|
|
/*
|
|
* Author: shukari (template from refuel makeSource)
|
|
* Makes an object into a rearm source.
|
|
* Run on server only.
|
|
*
|
|
* Arguments:
|
|
* 0: Rearm Source <OBJECT>
|
|
* 1: Rearm amount <NUMBER> (default: 0)
|
|
* 2: add rearm amount instead of set <BOOL> (default: false)
|
|
*
|
|
* Return Value:
|
|
* None
|
|
*
|
|
* Example:
|
|
* [cursorObject, 1200] call ace_rearm_fnc_makeSource
|
|
*
|
|
* Public: Yes
|
|
*/
|
|
if (!isServer) exitWith {};
|
|
|
|
// Only run this after the settings are initialized
|
|
if !(EGVAR(common,settingsInitFinished)) exitWith {
|
|
EGVAR(common,runAtSettingsInitialized) pushBack [FUNC(makeSource), _this];
|
|
};
|
|
|
|
params [
|
|
["_source", objNull, [objNull]],
|
|
["_rearmCargo", 0, [0]],
|
|
["_addToCurrent", false, [false]]
|
|
];
|
|
TRACE_3("makeSource",_source,_rearmCargo,_addToCurrent);
|
|
|
|
if (isNull _source) exitWith {};
|
|
|
|
private _currentSupply = if (_addToCurrent) then {
|
|
_source getVariable [QGVAR(currentSupply), 0]
|
|
} else {
|
|
0
|
|
};
|
|
|
|
_source setVariable [QGVAR(currentSupply), _currentSupply + _rearmCargo, true];
|
|
|
|
private _rearmCargoConfig = getNumber (configFile >> "CfgVehicles" >> typeOf _source >> QGVAR(defaultSupply));
|
|
|
|
// already initialized because this is a config rearm vehicle
|
|
if (_rearmCargoConfig > 0 || _source getVariable [QGVAR(isSupplyVehicle), false]) exitWith {};
|
|
|
|
_source setVariable [QGVAR(isSupplyVehicle), true, true];
|
|
|
|
// check if menu already exists
|
|
if (!isNil {_source getVariable QGVAR(initSupplyVehicle_jipID)}) exitWith {};
|
|
|
|
private _jipID = [QGVAR(initSupplyVehicle), [_source]] call CBA_fnc_globalEventJIP;
|
|
[_jipID, _source] call CBA_fnc_removeGlobalEventJIP;
|
|
_source setVariable [QGVAR(initSupplyVehicle_jipID), _jipID];
|