changes per code review

This commit is contained in:
flux 2019-08-26 13:18:20 -07:00
parent 36b0d029ce
commit e5a8995f60
1 changed files with 12 additions and 15 deletions

View File

@ -1,21 +1,29 @@
local has_monoids = minetest.global_exists("player_monoids")
local function freeze(player) local function freeze(player)
if minetest.global_exists("player_monoids") then local player_name = player:get_player_name()
if has_monoids then
player_monoids.speed:add_change(player, 0, "cozy:speed") player_monoids.speed:add_change(player, 0, "cozy:speed")
player_monoids.jump:add_change(player, 0, "cozy:jump") player_monoids.jump:add_change(player, 0, "cozy:jump")
player_monoids.gravity:add_change(player, 0, "cozy:gravity") player_monoids.gravity:add_change(player, 0, "cozy:gravity")
else else
player:set_physics_override({speed = 0, jump = 0, gravity = 0}) player:set_physics_override({speed = 0, jump = 0, gravity = 0})
end end
default.player_attached[player_name] = true
end end
local function unfreeze(player) local function unfreeze(player)
if minetest.global_exists("player_monoids") then local player_name = player:get_player_name()
if has_monoids then
player_monoids.speed:del_change(player, "cozy:speed") player_monoids.speed:del_change(player, "cozy:speed")
player_monoids.jump:del_change(player, "cozy:jump") player_monoids.jump:del_change(player, "cozy:jump")
player_monoids.gravity:del_change(player, "cozy:gravity") player_monoids.gravity:del_change(player, "cozy:gravity")
else else
player:set_physics_override({speed = 1, jump = 1, gravity = 1}) player:set_physics_override({speed = 1, jump = 1, gravity = 1})
end end
default.player_attached[player_name] = nil
default.player_set_animation(player, "stand", 30)
player:set_eye_offset({x=0, y=0, z=0}, {x=0, y=0, z=0})
end end
minetest.register_globalstep(function(dtime) minetest.register_globalstep(function(dtime)
@ -31,10 +39,7 @@ minetest.register_globalstep(function(dtime)
control.right == true or control.right == true or
control.jump == true control.jump == true
) then ) then
players[i]:set_eye_offset({x=0, y=0, z=0}, {x=0, y=0, z=0})
unfreeze(player) unfreeze(player)
default.player_attached[name] = false
default.player_set_animation(players[i], "stand", 30)
end end
end end
end) end)
@ -44,15 +49,11 @@ minetest.register_chatcommand("sit", {
func = function(name) func = function(name)
local player = minetest.get_player_by_name(name) local player = minetest.get_player_by_name(name)
if default.player_attached[name] then if default.player_attached[name] then
player:set_eye_offset({x=0, y=0, z=0}, {x=0, y=0, z=0})
unfreeze(player) unfreeze(player)
default.player_attached[name] = false
default.player_set_animation(player, "stand", 30)
else else
player:set_eye_offset({x=0, y=-7, z=2}, {x=0, y=0, z=0})
freeze(player) freeze(player)
default.player_attached[name] = true
default.player_set_animation(player, "sit", 30) default.player_set_animation(player, "sit", 30)
player:set_eye_offset({x=0, y=-7, z=2}, {x=0, y=0, z=0})
end end
end end
}) })
@ -62,15 +63,11 @@ minetest.register_chatcommand("lay", {
func = function(name) func = function(name)
local player = minetest.get_player_by_name(name) local player = minetest.get_player_by_name(name)
if default.player_attached[name] then if default.player_attached[name] then
player:set_eye_offset({x=0, y=0, z=0}, {x=0, y=0, z=0})
unfreeze(player) unfreeze(player)
default.player_attached[name] = false
default.player_set_animation(player, "stand", 30)
else else
player:set_eye_offset({x=0, y=-13, z=0}, {x=0, y=0, z=0})
freeze(player) freeze(player)
default.player_attached[name] = true
default.player_set_animation(player, "lay", 0) default.player_set_animation(player, "lay", 0)
player:set_eye_offset({x=0, y=-13, z=0}, {x=0, y=0, z=0})
end end
end end
}) })