forked from mtcontrib/pipeworks
get rid of the old pipeworks clone node function
use minetest.override_item() instead
This commit is contained in:
parent
3c348592cb
commit
e2a8c03066
157
compat.lua
157
compat.lua
@ -1,25 +1,17 @@
|
|||||||
-- this bit of code modifies the default chests and furnaces to be compatible
|
-- this bit of code modifies the default chests and furnaces to be compatible
|
||||||
-- with pipeworks.
|
-- with pipeworks.
|
||||||
|
|
||||||
function pipeworks.clone_node(name)
|
minetest.override_item("default:furnace", {
|
||||||
local node2 = {}
|
tiles = {
|
||||||
local node = minetest.registered_nodes[name]
|
"default_furnace_top.png^pipeworks_tube_connection_stony.png",
|
||||||
for k, v in pairs(node) do
|
"default_furnace_bottom.png^pipeworks_tube_connection_stony.png",
|
||||||
node2[k] = v
|
"default_furnace_side.png^pipeworks_tube_connection_stony.png",
|
||||||
end
|
"default_furnace_side.png^pipeworks_tube_connection_stony.png",
|
||||||
return node2
|
"default_furnace_side.png^pipeworks_tube_connection_stony.png",
|
||||||
end
|
"default_furnace_front.png"
|
||||||
|
},
|
||||||
local furnace = pipeworks.clone_node("default:furnace")
|
groups = {cracky=2, tubedevice = 1, tubedevice_receiver = 1 },
|
||||||
furnace.tiles[1] = "default_furnace_top.png^pipeworks_tube_connection_stony.png"
|
tube = {
|
||||||
furnace.tiles[2] = "default_furnace_bottom.png^pipeworks_tube_connection_stony.png"
|
|
||||||
furnace.tiles[3] = "default_furnace_side.png^pipeworks_tube_connection_stony.png"
|
|
||||||
furnace.tiles[4] = "default_furnace_side.png^pipeworks_tube_connection_stony.png"
|
|
||||||
furnace.tiles[5] = "default_furnace_side.png^pipeworks_tube_connection_stony.png"
|
|
||||||
-- note we don't redefine entry 6 ( front)
|
|
||||||
furnace.groups.tubedevice = 1
|
|
||||||
furnace.groups.tubedevice_receiver = 1
|
|
||||||
furnace.tube = {
|
|
||||||
insert_object = function(pos, node, stack, direction)
|
insert_object = function(pos, node, stack, direction)
|
||||||
local meta = minetest.get_meta(pos)
|
local meta = minetest.get_meta(pos)
|
||||||
local inv = meta:get_inventory()
|
local inv = meta:get_inventory()
|
||||||
@ -40,26 +32,35 @@ local furnace = pipeworks.clone_node("default:furnace")
|
|||||||
end,
|
end,
|
||||||
input_inventory = "dst",
|
input_inventory = "dst",
|
||||||
connect_sides = {left=1, right=1, back=1, front=1, bottom=1, top=1}
|
connect_sides = {left=1, right=1, back=1, front=1, bottom=1, top=1}
|
||||||
}
|
},
|
||||||
furnace.after_place_node = function(pos)
|
after_place_node = function(pos)
|
||||||
pipeworks.scan_for_tube_objects(pos)
|
pipeworks.scan_for_tube_objects(pos)
|
||||||
end
|
end,
|
||||||
furnace.after_dig_node = function(pos)
|
after_dig_node = function(pos)
|
||||||
pipeworks.scan_for_tube_objects(pos)
|
pipeworks.scan_for_tube_objects(pos)
|
||||||
end
|
end
|
||||||
|
})
|
||||||
|
|
||||||
minetest.register_node(":default:furnace", furnace)
|
minetest.override_item("default:furnace_active", {
|
||||||
|
tiles = {
|
||||||
local furnace_active = pipeworks.clone_node("default:furnace_active")
|
"default_furnace_top.png^pipeworks_tube_connection_stony.png",
|
||||||
furnace_active.tiles[1] = "default_furnace_top.png^pipeworks_tube_connection_stony.png"
|
"default_furnace_bottom.png^pipeworks_tube_connection_stony.png",
|
||||||
furnace_active.tiles[2] = "default_furnace_bottom.png^pipeworks_tube_connection_stony.png"
|
"default_furnace_side.png^pipeworks_tube_connection_stony.png",
|
||||||
furnace_active.tiles[3] = "default_furnace_side.png^pipeworks_tube_connection_stony.png"
|
"default_furnace_side.png^pipeworks_tube_connection_stony.png",
|
||||||
furnace_active.tiles[4] = "default_furnace_side.png^pipeworks_tube_connection_stony.png"
|
"default_furnace_side.png^pipeworks_tube_connection_stony.png",
|
||||||
furnace_active.tiles[5] = "default_furnace_side.png^pipeworks_tube_connection_stony.png"
|
{
|
||||||
-- note we don't redefine entry 6 (front)
|
image = "default_furnace_front_active.png",
|
||||||
furnace_active.groups.tubedevice = 1
|
backface_culling = false,
|
||||||
furnace_active.groups.tubedevice_receiver = 1
|
animation = {
|
||||||
furnace_active.tube = {
|
type = "vertical_frames",
|
||||||
|
aspect_w = 16,
|
||||||
|
aspect_h = 16,
|
||||||
|
length = 1.5
|
||||||
|
},
|
||||||
|
}
|
||||||
|
},
|
||||||
|
groups = {cracky=2, tubedevice = 1, tubedevice_receiver = 1 },
|
||||||
|
tube = {
|
||||||
insert_object = function(pos,node,stack,direction)
|
insert_object = function(pos,node,stack,direction)
|
||||||
local meta = minetest.get_meta(pos)
|
local meta = minetest.get_meta(pos)
|
||||||
local inv = meta:get_inventory()
|
local inv = meta:get_inventory()
|
||||||
@ -80,27 +81,26 @@ local furnace_active = pipeworks.clone_node("default:furnace_active")
|
|||||||
end,
|
end,
|
||||||
input_inventory = "dst",
|
input_inventory = "dst",
|
||||||
connect_sides = {left=1, right=1, back=1, front=1, bottom=1, top=1}
|
connect_sides = {left=1, right=1, back=1, front=1, bottom=1, top=1}
|
||||||
}
|
},
|
||||||
furnace_active.after_place_node= function(pos)
|
after_place_node= function(pos)
|
||||||
pipeworks.scan_for_tube_objects(pos)
|
pipeworks.scan_for_tube_objects(pos)
|
||||||
end
|
end,
|
||||||
furnace_active.after_dig_node = function(pos)
|
after_dig_node = function(pos)
|
||||||
pipeworks.scan_for_tube_objects(pos)
|
pipeworks.scan_for_tube_objects(pos)
|
||||||
end
|
end
|
||||||
|
})
|
||||||
|
|
||||||
minetest.register_node(":default:furnace_active", furnace_active)
|
minetest.override_item("default:chest", {
|
||||||
|
tiles = {
|
||||||
|
"default_chest_top.png^pipeworks_tube_connection_wooden.png",
|
||||||
local chest = pipeworks.clone_node("default:chest")
|
"default_chest_top.png^pipeworks_tube_connection_wooden.png",
|
||||||
chest.tiles[1] = "default_chest_top.png^pipeworks_tube_connection_wooden.png"
|
"default_chest_side.png^pipeworks_tube_connection_wooden.png",
|
||||||
chest.tiles[2] = "default_chest_top.png^pipeworks_tube_connection_wooden.png"
|
"default_chest_side.png^pipeworks_tube_connection_wooden.png",
|
||||||
chest.tiles[3] = "default_chest_side.png^pipeworks_tube_connection_wooden.png"
|
"default_chest_side.png^pipeworks_tube_connection_wooden.png",
|
||||||
chest.tiles[4] = "default_chest_side.png^pipeworks_tube_connection_wooden.png"
|
"default_chest_front.png"
|
||||||
chest.tiles[5] = "default_chest_side.png^pipeworks_tube_connection_wooden.png"
|
},
|
||||||
-- note we don't redefine entry 6 (front).
|
groups = { choppy=2, oddly_breakable_by_hand=2, tubedevice = 1, tubedevice_receiver = 1 },
|
||||||
chest.groups.tubedevice = 1
|
tube = {
|
||||||
chest.groups.tubedevice_receiver = 1
|
|
||||||
chest.tube = {
|
|
||||||
insert_object = function(pos, node, stack, direction)
|
insert_object = function(pos, node, stack, direction)
|
||||||
local meta = minetest.get_meta(pos)
|
local meta = minetest.get_meta(pos)
|
||||||
local inv = meta:get_inventory()
|
local inv = meta:get_inventory()
|
||||||
@ -113,27 +113,28 @@ local chest = pipeworks.clone_node("default:chest")
|
|||||||
end,
|
end,
|
||||||
input_inventory = "main",
|
input_inventory = "main",
|
||||||
connect_sides = {left=1, right=1, back=1, front=1, bottom=1, top=1}
|
connect_sides = {left=1, right=1, back=1, front=1, bottom=1, top=1}
|
||||||
}
|
},
|
||||||
chest.after_place_node = function(pos)
|
after_place_node = function(pos)
|
||||||
pipeworks.scan_for_tube_objects(pos)
|
pipeworks.scan_for_tube_objects(pos)
|
||||||
end
|
end,
|
||||||
chest.after_dig_node = function(pos)
|
after_dig_node = function(pos)
|
||||||
pipeworks.scan_for_tube_objects(pos)
|
pipeworks.scan_for_tube_objects(pos)
|
||||||
end
|
end
|
||||||
|
})
|
||||||
|
|
||||||
minetest.register_node(":default:chest", chest)
|
local old_locked_chest_after_place = minetest.registered_nodes["default:chest_locked"].after_place_node
|
||||||
|
|
||||||
|
minetest.override_item("default:chest_locked", {
|
||||||
local chest_locked = pipeworks.clone_node("default:chest_locked")
|
tiles = {
|
||||||
chest_locked.tiles[1] = "default_chest_top.png^pipeworks_tube_connection_wooden.png"
|
"default_chest_top.png^pipeworks_tube_connection_wooden.png",
|
||||||
chest_locked.tiles[2] = "default_chest_top.png^pipeworks_tube_connection_wooden.png"
|
"default_chest_top.png^pipeworks_tube_connection_wooden.png",
|
||||||
chest_locked.tiles[3] = "default_chest_side.png^pipeworks_tube_connection_wooden.png"
|
"default_chest_side.png^pipeworks_tube_connection_wooden.png",
|
||||||
chest_locked.tiles[4] = "default_chest_side.png^pipeworks_tube_connection_wooden.png"
|
"default_chest_side.png^pipeworks_tube_connection_wooden.png",
|
||||||
chest_locked.tiles[5] = "default_chest_side.png^pipeworks_tube_connection_wooden.png"
|
"default_chest_side.png^pipeworks_tube_connection_wooden.png",
|
||||||
-- note we don't redefine entry 6 (front).
|
"default_chest_lock.png"
|
||||||
chest_locked.groups.tubedevice = 1
|
},
|
||||||
chest_locked.groups.tubedevice_receiver = 1
|
groups = { choppy=2, oddly_breakable_by_hand=2, tubedevice = 1, tubedevice_receiver = 1 },
|
||||||
chest_locked.tube = {
|
tube = {
|
||||||
insert_object = function(pos, node, stack, direction)
|
insert_object = function(pos, node, stack, direction)
|
||||||
local meta = minetest.env:get_meta(pos)
|
local meta = minetest.env:get_meta(pos)
|
||||||
local inv = meta:get_inventory()
|
local inv = meta:get_inventory()
|
||||||
@ -145,14 +146,12 @@ local chest_locked = pipeworks.clone_node("default:chest_locked")
|
|||||||
return inv:room_for_item("main", stack)
|
return inv:room_for_item("main", stack)
|
||||||
end,
|
end,
|
||||||
connect_sides = {left=1, right=1, back=1, front=1, bottom=1, top=1}
|
connect_sides = {left=1, right=1, back=1, front=1, bottom=1, top=1}
|
||||||
}
|
},
|
||||||
local old_after_place = minetest.registered_nodes["default:chest_locked"].after_place_node
|
after_place_node = function(pos, placer)
|
||||||
chest_locked.after_place_node = function(pos, placer)
|
|
||||||
pipeworks.scan_for_tube_objects(pos)
|
pipeworks.scan_for_tube_objects(pos)
|
||||||
old_after_place(pos, placer)
|
old_locked_chest_after_place(pos, placer)
|
||||||
end
|
end,
|
||||||
chest_locked.after_dig_node = function(pos)
|
after_dig_node = function(pos)
|
||||||
pipeworks.scan_for_tube_objects(pos)
|
pipeworks.scan_for_tube_objects(pos)
|
||||||
end
|
end
|
||||||
|
})
|
||||||
minetest.register_node(":default:chest_locked", chest_locked)
|
|
||||||
|
Loading…
Reference in New Issue
Block a user