mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
81e02a7336
* Everything * Fixed missing ; * Fix missing ; and double private * Fixed cannot isNull on number * Turn _temparture back to isNil * Fix error from merge
53 lines
1.6 KiB
Plaintext
53 lines
1.6 KiB
Plaintext
/*
|
|
* Authors: Ruthberg
|
|
* Updates the ammo and weapon class names
|
|
*
|
|
* Arguments:
|
|
* unit <OBJECT>
|
|
*
|
|
* Return Value:
|
|
* Update successful? <BOOLEAN>
|
|
*
|
|
* Example:
|
|
* unit call ace_rangecard_fnc_updateClassNames
|
|
*
|
|
* Public: No
|
|
*/
|
|
#include "script_component.hpp"
|
|
|
|
private _unit = _this;
|
|
|
|
private _ammoClass = "";
|
|
private _magazineClass = "";
|
|
private _weaponClass = primaryWeapon _unit;
|
|
|
|
if (_weaponClass == "") exitWith { (GVAR(ammoClass) != "" && GVAR(magazineClass) != "" && GVAR(weaponClass) != "") };
|
|
|
|
{
|
|
private _ammo = getText (configFile >> "CfgMagazines" >> _x >> "ammo");
|
|
private _ammoConfig = (configFile >> "CfgAmmo" >> _ammo);
|
|
private _parentClasses = [_ammoConfig, true] call BIS_fnc_returnParents;
|
|
if ("BulletBase" in _parentClasses) exitWith {
|
|
_ammoClass = _ammo;
|
|
_magazineClass = _x;
|
|
};
|
|
} forEach (primaryWeaponMagazine _unit);
|
|
|
|
if (_ammoClass == "") exitWith { (GVAR(ammoClass) != "" && GVAR(magazineClass) != "" && GVAR(weaponClass) != "") };
|
|
|
|
if (_unit == ACE_player) then {
|
|
GVAR(zeroRange) = [_unit] call EFUNC(scopes,getCurrentZeroRange);
|
|
GVAR(boreHeight) = [_unit, 0] call EFUNC(scopes,getBoreHeight);
|
|
GVAR(ammoClass) = _ammoClass;
|
|
GVAR(magazineClass) = _magazineClass;
|
|
GVAR(weaponClass) = _weaponClass;
|
|
} else {
|
|
GVAR(zeroRangeCopy) = [_unit] call EFUNC(scopes,getCurrentZeroRange);
|
|
GVAR(boreHeightCopy) = [_unit, 0] call EFUNC(scopes,getBoreHeight);
|
|
GVAR(ammoClassCopy) = _ammoClass;
|
|
GVAR(magazineClassCopy) = _magazineClass;
|
|
GVAR(weaponClassCopy) = _weaponClass;
|
|
};
|
|
|
|
true
|