http://github.com/jastevenson303/sjssm
Requires CSM part: viewtopic.php?f=53&t=22683
Code: Select all
-- sneakjump server-side mod
-- copyright 2019 james stevenson
-- gnu lgpl 2.1+
local settings = minetest.settings
local function player_physics(player, speed, jump, gravity,
sneak, sneak_glitch, new_move)
player:set_physics_override({
speed = speed or 1,
jump = jump or 1,
gravity = gravity or 1,
sneak = sneak or true,
sneak_glitch = sneak_glitch or true,
new_move = new_move or false,
})
end
local function sprint(name, enabled)
local player = minetest.get_player_by_name(name)
if enabled then
player:set_physics_override({
speed = 1.8,
jump = 1.25,
gravity = 0.85,
})
else
player:set_physics_override({
speed = 1,
jump = 1,
gravity = 1,
})
end
end
minetest.register_on_joinplayer(function(player)
player_physics(player)
end)
minetest.register_on_modchannel_message(function(channel_name,
sender, message)
if message == "t" then
sprint(sender, true)
else
sprint(sender, false)
end
end)
Here's a video.