]> git.lizzy.rs Git - Crafter.git/commitdiff
Fix time check for beds
authoroilboi <47129783+oilboi@users.noreply.github.com>
Thu, 25 Jun 2020 08:58:03 +0000 (04:58 -0400)
committeroilboi <47129783+oilboi@users.noreply.github.com>
Thu, 25 Jun 2020 08:58:03 +0000 (04:58 -0400)
mods/bed/init.lua

index 2daca910f122152f333e2f717dd6210b2f907f18..e44239b6ed089729edad16b55c36fb162a3a9d7c 100644 (file)
@@ -111,28 +111,29 @@ local do_sleep = function(player,pos,dir)
        local time = minetest.get_timeofday() * 24000
        name = player:get_player_name()
        minetest.chat_send_all(tostring(time))
-       if time < time_night.begin and time > time_night.ending then
-               minetest.chat_send_player(name, "You can only sleep at night")
-               return
-       end
-       local real_dir = minetest.facedir_to_dir(dir)
-       player:add_player_velocity(vector.multiply(player:get_player_velocity(),-1))
-       local new_pos = vector.subtract(pos,vector.divide(real_dir,2))
-       player:move_to(new_pos)
-       player:set_look_vertical(0)
-       player:set_look_horizontal(yaw_translation[dir])
-       
-       minetest.show_formspec(name, "bed", bed_gui)
+       if time > time_night.begin or time < time_night.ending then
+               local real_dir = minetest.facedir_to_dir(dir)
+               player:add_player_velocity(vector.multiply(player:get_player_velocity(),-1))
+               local new_pos = vector.subtract(pos,vector.divide(real_dir,2))
+               player:move_to(new_pos)
+               player:set_look_vertical(0)
+               player:set_look_horizontal(yaw_translation[dir])
+               
+               minetest.show_formspec(name, "bed", bed_gui)
+
+               player_is_sleeping(player,true)
+               set_player_animation(player,"lay",0,false)
+               player:set_eye_offset({x=0,y=-12,z=-7},{x=0,y=0,z=0})
 
-       player_is_sleeping(player,true)
-       set_player_animation(player,"lay",0,false)
-       player:set_eye_offset({x=0,y=-12,z=-7},{x=0,y=0,z=0})
+               pool[name] = {pos=new_pos,sleeping=false}
 
-       pool[name] = {pos=new_pos,sleeping=false}
+               csm_send_player_to_sleep(player)
 
-       csm_send_player_to_sleep(player)
+               global_sleep_check()
+       else
+               minetest.chat_send_player(name, "You can only sleep at night")
+       end
 
-       global_sleep_check()
 end
 
 minetest.register_on_player_receive_fields(function(player, formname, fields)