From 90303158adc5c99f2bc4abbfea63f4ae89da7474 Mon Sep 17 00:00:00 2001 From: rudzik8 Date: Mon, 16 May 2022 21:22:48 +0700 Subject: [PATCH] Check the node below on globalstep, and if it's air just unmount (fixes #1) cora, thanks again ^^ --- init.lua | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/init.lua b/init.lua index 96eedd8..a3f117a 100644 --- a/init.lua +++ b/init.lua @@ -34,19 +34,25 @@ minetest.register_globalstep(function(dtime) for i=1, #players do local name = players[i]:get_player_name() if mcl_player.player_attached[name] and not players[i]:get_attach() and - (players[i]:get_player_control().up == true or - players[i]:get_player_control().down == true or - players[i]:get_player_control().left == true or - players[i]:get_player_control().right == true or - players[i]:get_player_control().jump == true or - players[i]:get_player_control().sneak == true) then + (players[i]:get_player_control().up == true or + players[i]:get_player_control().down == true or + players[i]:get_player_control().left == true or + players[i]:get_player_control().right == true or + players[i]:get_player_control().jump == true or + players[i]:get_player_control().sneak == true) then + players[i]:set_eye_offset({x=0, y=0, z=0}, {x=0, y=0, z=0}) + players[i]:set_physics_override(1, 1, 1) + mcl_player.player_attached[name] = false + mcl_player.player_set_animation(players[i], "stand", 30) + end + -- check the node below player (and if it's air, just unmount) + if minetest.get_node(vector.offset(players[i]:get_pos(),0,-1,0)).name == "air" then players[i]:set_eye_offset({x=0, y=0, z=0}, {x=0, y=0, z=0}) players[i]:set_physics_override(1, 1, 1) mcl_player.player_attached[name] = false - mcl_player.player_set_animation(players[i], "stand", 30) end end -end) +end) minetest.register_chatcommand("sit", { description = S("Sit down"),