Arsenal - Fix script stat script errors for odd weapons (#6794)

This commit is contained in:
PabstMirror 2019-01-26 14:13:19 -06:00 committed by GitHub
parent 547dfff683
commit 3df805306b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 10 additions and 3 deletions

View File

@ -18,14 +18,18 @@
params ["_stat", "_config", "_args"]; params ["_stat", "_config", "_args"];
_args params ["_statMinMax", "_barLimits"]; _args params ["_statMinMax", "_barLimits"];
TRACE_4("statBarStatement_accuracy",_stat,_config,_statMinMax,_barLimits);
private _fireModes = getArray (_config >> "modes"); private _fireModes = getArray (_config >> "modes");
private _dispersion = []; private _dispersion = [];
{ {
_dispersion pushBackUnique log (getNumber (_config >> _x >> "dispersion")); private _n = log (getNumber (_config >> _x >> "dispersion"));
if (!finite _n) then {_n = 0;};
_dispersion pushBackUnique _n;
} foreach _fireModes; } foreach _fireModes;
_dispersion sort true; _dispersion sort true;
TRACE_1("",_dispersion);
linearConversion [_statMinMax select 0, _statMinMax select 1, _dispersion param [0, 0], _barLimits select 0, _barLimits select 1] linearConversion [_statMinMax select 0, _statMinMax select 1, _dispersion param [0, 0], _barLimits select 0, _barLimits select 1]

View File

@ -23,7 +23,9 @@ private _fireModes = getArray (_config >> "modes");
private _fireRate = []; private _fireRate = [];
{ {
_fireRate pushBackUnique log (getNumber (_config >> _x >> "reloadTime")); private _n = log (getNumber (_config >> _x >> "reloadTime"));
if (!finite _n) then {_n = 0;};
_fireRate pushBackUnique _n;
} foreach _fireModes; } foreach _fireModes;
_fireRate sort true; _fireRate sort true;

View File

@ -11,7 +11,7 @@
* 2.2: Evaluate as a logarithmic number (BOOL) * 2.2: Evaluate as a logarithmic number (BOOL)
* *
* Return Value: * Return Value:
* Number * String
* *
* Public: No * Public: No
*/ */
@ -29,4 +29,5 @@ private _fireRate = [];
_fireRate sort true; _fireRate sort true;
_fireRate = _fireRate param [0, 0]; _fireRate = _fireRate param [0, 0];
if (_fireRate == 0) exitWith {"PEWPEWPEW"};
format ["%1 rpm", round (60 / _fireRate)] format ["%1 rpm", round (60 / _fireRate)]