Don't fall off nodes if sneaking with free_move on but without fly privileges
authorShadowNinja <noreply@gmail.com>
Mon, 4 Feb 2013 03:22:42 +0000 (22:22 -0500)
committerPilzAdam <PilzAdam@gmx.de>
Sun, 10 Feb 2013 11:35:04 +0000 (12:35 +0100)
src/localplayer.cpp

index b6dd0f42e22ace39b6649679acd5dc627517383f..2d0d77140bdb781365ed4c6aa4e37a2a60a0a977 100644 (file)
@@ -159,7 +159,7 @@ void LocalPlayer::move(f32 dtime, Map &map, f32 pos_max_d,
                If sneaking, keep in range from the last walked node and don't
                fall off from it
        */
-       if(control.sneak && m_sneak_node_exists && !g_settings->getBool("free_move"))
+       if(control.sneak && m_sneak_node_exists && !(fly_allowed && g_settings->getBool("free_move")))
        {
                f32 maxd = 0.5*BS + sneak_max;
                v3f lwn_f = intToFloat(m_sneak_node, BS);