diff --git a/addons/nlaw/functions/fnc_navigation.sqf b/addons/nlaw/functions/fnc_navigation.sqf index e0a1716f03..c8b2a9b0d3 100644 --- a/addons/nlaw/functions/fnc_navigation.sqf +++ b/addons/nlaw/functions/fnc_navigation.sqf @@ -15,16 +15,16 @@ * Public: No */ // arbitrary constant -#define PROPORTIONALITY_CONSTANT 3 +#define PROPORTIONALITY_CONSTANT 10 params ["_args", "_timestep", "_seekerTargetPos", "_profileAdjustedTargetPos", "_targetData", "_navigationParams"]; _args params ["_firedEH"]; _firedEH params ["","","","","","","_projectile"]; -_navigationParams params ["_yawChange", "_pitchChange", "_lastPitch", "_lastYaw", "_initialPitch"]; +_navigationParams params ["_yawChange", "_pitchChange", "_lastPitch", "_lastYaw", "_initialPitch", "_pitchUp"]; -// for some reason we need to double this. I don't know why, but it just works -_pitchChange = _pitchChange * 2; -_yawChange = _yawChange * 2; +// for some reason we need to multiply this. I don't know why, but it just works +_pitchChange = _pitchChange * 1.5; +_yawChange = _yawChange * 1.5; ((velocity _projectile) call CBA_fnc_vect2polar) params ["", "_currentYaw", "_currentPitch"]; @@ -41,7 +41,7 @@ private _pitchModifier = if (_pitchChange == 0) then { abs (_pitchRate / _pitchChange) }; private _desiredPitchChange = (_pitchChange - _pitchRate) * PROPORTIONALITY_CONSTANT * _pitchModifier; -_desiredPitchChange = _desiredPitchChange + (_initialPitch - _currentPitch) * PROPORTIONALITY_CONSTANT * _pitchModifier; +_desiredPitchChange = _desiredPitchChange + _pitchUp * (_initialPitch - _currentPitch) * PROPORTIONALITY_CONSTANT * _pitchModifier; private _yawRate = if (_timestep == 0) then { 0 diff --git a/addons/nlaw/functions/fnc_navigation_onFired.sqf b/addons/nlaw/functions/fnc_navigation_onFired.sqf index da0f6692c7..5b997679d5 100644 --- a/addons/nlaw/functions/fnc_navigation_onFired.sqf +++ b/addons/nlaw/functions/fnc_navigation_onFired.sqf @@ -52,8 +52,8 @@ if (_shooter == ACE_player) then { }; // Limit Max Deflection -_yawChange = -10 max _yawChange min 10; -_pitchChange = -10 max _pitchChange min 10; +//_yawChange = -10 max _yawChange min 10; +//_pitchChange = -10 max _pitchChange min 10; ((velocity _projectile) call CBA_fnc_vect2polar) params ["", "_currentYaw", "_currentPitch"]; ((ACE_player weaponDirection (currentWeapon ACE_player)) call CBA_fnc_vect2Polar) params ["", "_yaw", "_pitch"]; diff --git a/addons/nlaw/functions/fnc_seeker.sqf b/addons/nlaw/functions/fnc_seeker.sqf index dfd073e10d..520dc48820 100644 --- a/addons/nlaw/functions/fnc_seeker.sqf +++ b/addons/nlaw/functions/fnc_seeker.sqf @@ -16,7 +16,7 @@ * * Public: No */ -#define PITCH_UP_TIME 1 +#define PITCH_UP_TIME 0.5 params ["", "_args", "_seekerStateParams", "", "", "_targetData"]; _args params ["_firedEH", "_launchParams", "", "_seekerParams", "_stateParams"];