Don't push player out of item stack nodes
This commit is contained in:
parent
ede533034c
commit
a5985dd43e
@ -9,10 +9,10 @@ ISSUES-GAME: Gameplay-affecting issues
|
||||
# # # # # # # # # # # #
|
||||
#### # #### # ###### ###### # # ####
|
||||
|
||||
- Unconfirmed: bug involving a player dropping all inventory into
|
||||
a narrow vertical shaft (on VE-NC server) and having items cycle
|
||||
indefinitely without settling to a steady state.
|
||||
https://discord.com/channels/507234450615042048/507234451085066248/901132356977578044
|
||||
- Hints for new anvil system
|
||||
- Test/fix hints for affected crafts
|
||||
- Hook in recipe after() for discovery for general anvil uses
|
||||
- Add hints to try each anvil type
|
||||
|
||||
- Shelf recipe (and any other 3x3 recipe) reform
|
||||
- Add a "shelf frame" node made from wooden frames
|
||||
@ -31,6 +31,11 @@ ISSUES-GAME: Gameplay-affecting issues
|
||||
- Lode prills should be able to drain from glowing ore into
|
||||
glass cases and crates
|
||||
|
||||
- Unconfirmed: bug involving a player dropping all inventory into
|
||||
a narrow vertical shaft (on VE-NC server) and having items cycle
|
||||
indefinitely without settling to a steady state.
|
||||
https://discord.com/channels/507234450615042048/507234451085066248/901132356977578044
|
||||
|
||||
- Fix crappy sponge death mechanic
|
||||
- Remove special treatment of glass case and glass nodes
|
||||
- May need to find a new use-case for glass case?
|
||||
|
@ -17,16 +17,22 @@ local function normalbox(box)
|
||||
if not box then return true end
|
||||
if type(box) ~= "table" then return end
|
||||
if box.fixed then return normalbox(box.fixed) end
|
||||
if #box == 1 then return box[1] end
|
||||
if #box == 1 then return normalbox(box[1]) end
|
||||
return box[1] == -0.5 and box[2] == -0.5 and box[3] == -0.5
|
||||
and box[4] == 0.5 and box[5] == 0.5 and box[6] == 0.5
|
||||
end
|
||||
|
||||
local function ispushout(def)
|
||||
if not def.walkable then return end
|
||||
if def.liquidtype ~= "none" then return end
|
||||
if def.groups and def.groups.is_stack_only then return end
|
||||
return normalbox(def.collision_box)
|
||||
end
|
||||
|
||||
local solids = {}
|
||||
minetest.after(0, function()
|
||||
for k, v in pairs(minetest.registered_nodes) do
|
||||
if v.walkable and v.liquidtype == "none"
|
||||
and normalbox(v.collision_box) then
|
||||
if ispushout(v) then
|
||||
solids[k] = true
|
||||
end
|
||||
end
|
||||
|
Loading…
x
Reference in New Issue
Block a user