mirror of
https://github.com/mt-mods/pipeworks.git
synced 2024-12-24 18:00:22 +01:00
Merge pull request #45 from hdastwb/lockedchest
Locked chest integration
This commit is contained in:
commit
f42486f038
@ -218,7 +218,50 @@ function tube_autoroute(pos)
|
||||
|
||||
-- does not scan for the front side of the node.
|
||||
|
||||
--chests
|
||||
--locked chests
|
||||
|
||||
-- check for left/right connects
|
||||
|
||||
if string.find(nxm.name, "default:chest_locked") ~= nil
|
||||
and (nxm.param2 == 0 or nxm.param2 == 2) then
|
||||
pxm=1 end
|
||||
if string.find(nxp.name, "default:chest_locked") ~= nil
|
||||
and (nxp.param2 == 0 or nxp.param2 == 2) then
|
||||
pxp=1 end
|
||||
|
||||
if string.find(nzm.name, "default:chest_locked") ~= nil
|
||||
and (nzm.param2 == 1 or nzm.param2 == 3) then
|
||||
pzm=1 end
|
||||
if string.find(nzp.name, "default:chest_locked") ~= nil
|
||||
and (nzp.param2 == 1 or nzp.param2 == 3) then
|
||||
pzp=1 end
|
||||
|
||||
-- check for backside connects
|
||||
|
||||
if string.find(nxm.name, "default:chest_locked") ~= nil
|
||||
and nxm.param2 == 1 then
|
||||
pxm = 1 end
|
||||
|
||||
if string.find(nxp.name, "default:chest_locked") ~= nil
|
||||
and nxp.param2 == 3 then
|
||||
pxp = 1 end
|
||||
|
||||
if string.find(nzm.name, "default:chest_locked") ~= nil
|
||||
and nzm.param2 == 0 then
|
||||
pzm = 1 end
|
||||
|
||||
if string.find(nzp.name, "default:chest_locked") ~= nil
|
||||
and nzp.param2 == 2 then
|
||||
pzp = 1 end
|
||||
|
||||
-- check for top/bottom connections
|
||||
|
||||
if string.find(nym.name, "default:chest_locked") ~= nil then pym = 1 end
|
||||
if string.find(nyp.name, "default:chest_locked") ~= nil then pyp = 1 end
|
||||
|
||||
-- does not scan for the front side of the node.
|
||||
|
||||
--furnaces
|
||||
|
||||
-- check for left/right connects
|
||||
|
||||
|
25
compat.lua
25
compat.lua
@ -97,3 +97,28 @@ chest=clone_node("default:chest")
|
||||
end
|
||||
|
||||
minetest.register_node(":default:chest",chest)
|
||||
|
||||
|
||||
chest_locked=clone_node("default:chest_locked")
|
||||
chest_locked.groups.tubedevice=1
|
||||
chest_locked.groups.tubedevice_receiver=1
|
||||
chest_locked.tube={insert_object = function(pos,node,stack,direction)
|
||||
local meta=minetest.env:get_meta(pos)
|
||||
local inv=meta:get_inventory()
|
||||
return inv:add_item("main",stack)
|
||||
end,
|
||||
can_insert=function(pos,node,stack,direction)
|
||||
local meta=minetest.env:get_meta(pos)
|
||||
local inv=meta:get_inventory()
|
||||
return inv:room_for_item("main",stack)
|
||||
end}
|
||||
local old_after_place = minetest.registered_nodes["default:chest_locked"].after_place_node;
|
||||
chest_locked.after_place_node = function(pos, placer)
|
||||
tube_scanforobjects(pos)
|
||||
old_after_place(pos, placer)
|
||||
end
|
||||
chest_locked.after_dig_node = function(pos)
|
||||
tube_scanforobjects(pos)
|
||||
end
|
||||
|
||||
minetest.register_node(":default:chest_locked",chest_locked)
|
||||
|
Loading…
Reference in New Issue
Block a user