speedH += v3f(1,0,0) *
(control.sidew_move_joystick_axis / 32767.f);
}
+ if (m_autojump) {
+ // release autojump after a given time
+ m_autojump_time -= dtime;
+ if (m_autojump_time <= 0.0f)
+ m_autojump = false;
+ }
if(control.jump)
{
if (free_move) {
if (!player_settings.autojump)
return;
- if (m_autojump) {
- // release autojump after a given time
- m_autojump_time -= dtime;
- if (m_autojump_time <= 0.0f)
- m_autojump = false;
+ if (m_autojump)
return;
- }
- bool control_forward = control.up ||
- (!control.up && !control.down &&
- control.forw_move_joystick_axis < -0.05);
+ bool control_forward = control.up || player_settings.continuous_forward ||
+ (!control.up && !control.down &&
+ control.forw_move_joystick_axis < -0.05);
bool could_autojump =
m_can_jump && !control.jump && !control.sneak && control_forward;
if (!could_autojump)