mirror of
https://github.com/mt-mods/pipeworks.git
synced 2025-05-10 20:50:22 +02:00
mcl_barrels compat
This commit is contained in:
parent
ebe2331619
commit
9e7b86e401
3
init.lua
3
init.lua
@ -182,6 +182,9 @@ if pipeworks.enable_redefines and (minetest.get_modpath("default") or minetest.g
|
||||
dofile(pipeworks.modpath.."/compat-chests.lua")
|
||||
dofile(pipeworks.modpath.."/compat-furnaces.lua")
|
||||
end
|
||||
if pipeworks.enable_redefines and minetest.get_modpath("mcl_barrels") then
|
||||
dofile(pipeworks.modpath.."/mcl-barrels.lua")
|
||||
end
|
||||
if pipeworks.enable_autocrafter then
|
||||
dofile(pipeworks.modpath.."/autocrafter.lua")
|
||||
end
|
||||
|
63
mcl-barrels.lua
Normal file
63
mcl-barrels.lua
Normal file
@ -0,0 +1,63 @@
|
||||
-- this bit of code modifies the mcl barrels to be compatible with
|
||||
-- pipeworks.
|
||||
|
||||
-- Pipeworks Specific
|
||||
local tube_entry = "^pipeworks_tube_connection_wooden.png"
|
||||
|
||||
-- Original Definitions
|
||||
local old_barrel_closed_def = table.copy(minetest.registered_items["mcl_barrels:barrel_closed"])
|
||||
local old_barrel_open_def = table.copy(minetest.registered_items["mcl_barrels:barrel_open"])
|
||||
|
||||
|
||||
-- Override Construction
|
||||
local override_mcl_barrel_closed = {
|
||||
tiles = {"mcl_barrels_barrel_top.png^[transformR270",
|
||||
"mcl_barrels_barrel_bottom.png"..tube_entry,
|
||||
"mcl_barrels_barrel_side.png"..tube_entry},
|
||||
after_place_node = function(pos, placer, itemstack, pointed_thing)
|
||||
old_barrel_closed_def.after_place_node(pos, placer, itemstack, pointed_thing)
|
||||
pipeworks.after_place(pos, placer, itemstack, pointed_thing)
|
||||
end,
|
||||
tube = {
|
||||
insert_object = function(pos, node, stack, direction)
|
||||
local meta = minetest.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.get_meta(pos)
|
||||
local inv = meta:get_inventory()
|
||||
if meta:get_int("splitstacks") == 1 then
|
||||
stack = stack:peek_item(1)
|
||||
end
|
||||
return inv:room_for_item("main", stack)
|
||||
end,
|
||||
input_inventory = "main",
|
||||
connect_sides = {left = 1, right = 1, back = 1, front = 1, bottom = 1}
|
||||
},
|
||||
after_dig_node = function(pos)
|
||||
old_barrel_closed_def.after_dig_node(pos)
|
||||
pipeworks.after_dig(pos)
|
||||
end,
|
||||
groups = table.copy(old_barrel_closed_def.groups),
|
||||
--on_rotate = pipeworks.on_rotate
|
||||
}
|
||||
|
||||
override_mcl_barrel_open = table.copy(override_mcl_barrel_closed)
|
||||
|
||||
override_mcl_barrel_open.tiles = {
|
||||
"mcl_barrels_barrel_top_open.png",
|
||||
"mcl_barrels_barrel_bottom.png"..tube_entry,
|
||||
"mcl_barrels_barrel_side.png"..tube_entry
|
||||
}
|
||||
|
||||
|
||||
-- Add the extra groups
|
||||
for _,v in ipairs({override_mcl_barrel_closed, override_mcl_barrel_open}) do
|
||||
v.groups.tubedevice = 1
|
||||
v.groups.tubedevice_receiver = 1
|
||||
end
|
||||
|
||||
-- Override with the new modifications.
|
||||
minetest.override_item("mcl_barrels:barrel_closed", override_mcl_barrel_closed)
|
||||
minetest.override_item("mcl_barrels:barrel_open", override_mcl_barrel_open)
|
Loading…
x
Reference in New Issue
Block a user