ACE3/addons/advanced_ballistics/functions/fnc_readWeaponDataFromConfig.sqf

39 lines
1023 B
Plaintext
Raw Normal View History

#include "script_component.hpp"
/*
* Author: Ruthberg
*
* Reads the weapon class config and updates the config cache
*
* Arguments:
2015-08-05 16:33:28 +00:00
* weapon - classname <STRING>
*
* Return Value:
* 0: _barrelTwist <NUMBER>
* 1: _twistDirection <NUMBER>
* 2: _barrelLength <NUMBER>
*
* Example:
* ["weapon"] call ace_advanced_ballistics_fnc_readWeaponDataFromConfig
2015-08-05 02:38:04 +00:00
*
* Public: No
*/
private _weaponConfig = (configFile >> "CfgWeapons" >> _this);
private _barrelTwist = 0 max getNumber(_weaponConfig >> "ACE_barrelTwist");
private _twistDirection = [0, 1] select (_barrelTwist != 0);
2015-11-11 07:58:12 +00:00
if (isNumber (_weaponConfig >> "ACE_twistDirection")) then {
_twistDirection = getNumber (_weaponConfig >> "ACE_twistDirection");
if !(_twistDirection in [-1, 0, 1]) then {
_twistDirection = 1;
};
};
2015-08-05 16:33:28 +00:00
private _barrelLength = 0 max getNumber(_weaponConfig >> "ACE_barrelLength");
private _result = [_barrelTwist, _twistDirection, _barrelLength];
uiNamespace setVariable [format[QGVAR(%1), _this], _result];
_result