1
0
Fork 0
mirror of https://github.com/luanti-org/luanti.git synced 2025-06-27 16:36:03 +00:00

Sneak: Fix various problems with sneaking

Sneaking won't actually hover you in the air, releasing shift guarantees not
falling down (same as in MC).
Sneak-jump no longer goes higher than a normal jump (^ was required for this).
Sneaking no longer avoids fall damage.
You can sneak on partial nodes (slabs, sideways slabs) correctly.
Sneaking doesn't "go out" as far anymore (0.29 instead of 0.4).
Can't jump when sneaking out as far as possible (breaks the sneak ladder).
This commit is contained in:
sfan5 2017-03-01 20:10:30 +01:00 committed by paramat
parent c05dfac9a3
commit 14aa990cdd
2 changed files with 46 additions and 64 deletions

View file

@ -141,9 +141,9 @@ private:
bool m_sneak_node_exists;
// Whether recalculation of the sneak node is needed
bool m_need_to_get_new_sneak_node;
// Stores the max player uplift by m_sneak_node and is updated
// Stores the top bounding box of m_sneak_node and is updated
// when m_need_to_get_new_sneak_node == true
f32 m_sneak_node_bb_ymax;
aabb3f m_sneak_node_bb_top;
// Node below player, used to determine whether it has been removed,
// and its old type
v3s16 m_old_node_below;