local in_water = false
local old_in_water = false
minetest.register_globalstep(function(dtime)
+ if not minetest.localplayer then
+ return
+ end
+
+ local vel = minetest.localplayer:get_velocity().y
local pos = minetest.localplayer:get_pos()
- pos.y = pos.y - 0.1
+
local node = minetest.get_node_or_nil(pos)
if node then
local name = node.name
if name == "main:water" or name == "main:water_flowing" then
in_water = true
-
- if in_water == true and old_in_water == false then
- minetest.sound_play("splash", {gain = 0.4, pitch = math.random(80,100)/100})
+ if in_water == true and old_in_water == false and vel < 0 then
+ minetest.sound_play("splash", {gain = 0.4, pitch = math.random(80,100)/100, gain = 0.05})
end
else
in_water = false
local old_up = false
local sneak = false
local old_sneak = false
-bunny_hop = false
+local bunny_hop = false
--attempt to tell the server to allow us to run
local send_server_movement_state = function(state)
if not minetest.localplayer then
return
end
+
local input = minetest.get_control_bits(minetest.localplayer)
local vel = minetest.localplayer:get_velocity().y
local oldvel = minetest.localplayer:get_last_velocity().y