Fix empty array error

This commit is contained in:
SilentSpike 2015-07-21 20:00:09 +01:00
parent c8a7bbba3b
commit 43ecd308eb

View File

@ -26,28 +26,33 @@ _units = GVAR(unitList);
_visions = GVAR(availableVisions); _visions = GVAR(availableVisions);
// Get current index // Get current index
_iMode = abs(_modes find GVAR(camMode)); _iMode = (_modes find GVAR(camMode)) max 0;
_iUnit = abs(_units find GVAR(camUnit)); _iUnit = (_units find GVAR(camUnit)) max 0;
_iVision = abs(_visions find GVAR(camVision)); _iVision = (_visions find GVAR(camVision)) max 0;
_countModes = count _modes; _countModes = count _modes;
_countUnits = count _units; _countUnits = count _units;
_countVisions = count _visions; _countVisions = count _visions;
// Step index by step number (lopp ends) // Step index by step number (loop at ends)
_iMode = (_iMode + _stepMode) % _countModes; if (_countModes != 0) then {
if (_iMode < 0) then { _iMode = _countModes + _iMode; }; _iMode = (_iMode + _stepMode) % _countModes;
if (_iMode < 0) then { _iMode = _countModes + _iMode; };
};
_iUnit = (_iUnit + _stepUnit) % _countUnits; if (_countUnits != 0) then {
if (_iUnit < 0) then { _iUnit = _countUnits + _iUnit; }; _iUnit = (_iUnit + _stepUnit) % _countUnits;
if (_iUnit < 0) then { _iUnit = _countUnits + _iUnit; };
};
_iVision = (_iVision + _stepVision) % _countVisions; if (_countVisions != 0) then {
if (_iVision < 0) then { _iVision = _countVisions + _iVision; }; _iVision = (_iVision + _stepVision) % _countVisions;
if (_iVision < 0) then { _iVision = _countVisions + _iVision; };
};
// Get value at new index // Get value at new index
_newMode = _modes select _iMode; _newMode = _modes select _iMode;
_newUnit = _units select _iUnit; _newUnit = _units select _iUnit;
_newVision = _visions select _iVision; _newVision = _visions select _iVision;
[_newMode, _newUnit, _newVision] call FUNC(transitionCamera); [_newMode, _newUnit, _newVision] call FUNC(transitionCamera);