Skip to content
Permalink
Browse files

Fix simple bed height, make player lay down just above it, not inside it

  • Loading branch information
paramat committed Feb 8, 2020
1 parent f255e36 commit 9bf64b61c28abb408e1b89bf87d7ae330e140824
Showing with 10 additions and 4 deletions.
  1. +3 −3 mods/beds/beds.lua
  2. +7 −1 mods/beds/functions.lua
@@ -79,10 +79,10 @@ beds.register_bed("beds:bed", {
}
},
nodebox = {
bottom = {-0.5, -0.5, -0.5, 0.5, 0.06, 0.5},
top = {-0.5, -0.5, -0.5, 0.5, 0.06, 0.5},
bottom = {-0.5, -0.5, -0.5, 0.5, 0.0625, 0.5},
top = {-0.5, -0.5, -0.5, 0.5, 0.0625, 0.5},
},
selectionbox = {-0.5, -0.5, -0.5, 0.5, 0.06, 1.5},
selectionbox = {-0.5, -0.5, -0.5, 0.5, 0.0625, 1.5},
recipe = {
{"wool:white", "wool:white", "wool:white"},
{"group:wood", "group:wood", "group:wood"}
@@ -90,7 +90,13 @@ local function lay_down(player, pos, bed_pos, state, skip)
local yaw, param2 = get_look_yaw(bed_pos)
player:set_look_horizontal(yaw)
local dir = minetest.facedir_to_dir(param2)
local p = {x = bed_pos.x + dir.x / 2, y = bed_pos.y, z = bed_pos.z + dir.z / 2}
-- p.y is just above the nodebox height of the 'Simple Bed' (the highest bed),
-- to avoid sinking down through the bed.
local p = {
x = bed_pos.x + dir.x / 2,
y = bed_pos.y + 0.07,
z = bed_pos.z + dir.z / 2
}
player:set_physics_override(0, 0, 0)
player:set_pos(p)
default.player_attached[name] = true

0 comments on commit 9bf64b6

Please sign in to comment.
You can’t perform that action at this time.