/* * Author: VKing * Initializes mortar for use with ammunition handling magazines. * * Arguments: * 0: Mortar * * Return Value: * None * * Example: * [mortar1] call ace_mk6mortar_fnc_mortarInit * * Public: No */ #include "script_component.hpp" params ["_mortar"]; if (_mortar getVariable [QGVAR(initialized),false] || _mortar getVariable [QGVAR(exclude),false]) exitWith {TRACE_1("Exit",_mortar)}; // Remove all magazines if (count magazines _mortar > 0) then { { [QGVAR(removeMagazine), [_mortar, _x]] call EFUNC(common,globalEvent); } forEach magazines _mortar; }; // Replace current weapon with ammo handling weapon private _currentWeapon = _mortar weaponsTurret [0] select 0; private _newWeapon = ""; if (_currentWeapon == "mortar_82mm") then { _newWeapon = "ace_mortar_82mm"; } else { _newWeapon = getText (configFile >> "CfgWeapons" >> _currentWeapon >> QGVAR(replaceWith)); }; if (_newWeapon != "") then { _mortar removeWeaponGlobal _currentWeapon; _mortar addWeaponGlobal _newWeapon; }; _mortar setVariable [QGVAR(initialized),true,true]; TRACE_1("Init complete",_mortar);