mirror of
https://gitlab.icynet.eu/evert/melterns.git
synced 2024-11-24 07:53:47 +01:00
Primitive Pipeworks support
This commit is contained in:
parent
9d728b38f6
commit
af627a6b41
@ -1,4 +0,0 @@
|
|||||||
default
|
|
||||||
bucket
|
|
||||||
technic?
|
|
||||||
moreores?
|
|
@ -1 +0,0 @@
|
|||||||
Adds Molten versions of commonly occuring metals. Supports default, technic and moreores.
|
|
@ -495,16 +495,50 @@ local function on_receive_fields(pos, formname, fields, sender)
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
-- Pipeworks integration
|
||||||
|
local pipeworks = {}
|
||||||
|
local tube_entry = ""
|
||||||
|
if minetest.get_modpath("pipeworks") ~= nil then
|
||||||
|
tube_entry = "^pipeworks_tube_connection_metallic.png"
|
||||||
|
|
||||||
|
local function insert_object(pos, node, stack, direction, owner)
|
||||||
|
local stack_name = stack:get_name()
|
||||||
|
local inv = minetest.get_meta(pos):get_inventory()
|
||||||
|
|
||||||
|
minetest.get_node_timer(pos):start(1.0)
|
||||||
|
|
||||||
|
if stack_name == "bucket:bucket_empty" or fluidity.florbs.get_is_empty_florb(stack) then
|
||||||
|
return inv:add_item("bucket_out", stack)
|
||||||
|
elseif stack_name == "bucket:bucket_water" then
|
||||||
|
return inv:add_item("coolant", stack)
|
||||||
|
elseif stack_name:find(":bucket_") ~= nil or fluidity.florbs.get_is_florb(stack) then
|
||||||
|
return inv:add_item("bucket_in", stack)
|
||||||
|
end
|
||||||
|
|
||||||
|
return ItemStack(nil)
|
||||||
|
end
|
||||||
|
|
||||||
|
pipeworks = {
|
||||||
|
connect_sides = {left = 1, right = 1, back = 1, bottom = 1, top = 1},
|
||||||
|
insert_object = insert_object,
|
||||||
|
input_inventory = "output",
|
||||||
|
}
|
||||||
|
end
|
||||||
|
|
||||||
-- Register the caster
|
-- Register the caster
|
||||||
minetest.register_node("metal_melter:metal_caster", {
|
minetest.register_node("metal_melter:metal_caster", {
|
||||||
description = "Metal Caster",
|
description = "Metal Caster",
|
||||||
tiles = {
|
tiles = {
|
||||||
"melter_side.png", "melter_side.png",
|
"melter_side.png"..tube_entry, "melter_side.png"..tube_entry,
|
||||||
"melter_side.png", "melter_side.png",
|
"melter_side.png"..tube_entry, "melter_side.png"..tube_entry,
|
||||||
"melter_side.png", "caster_front.png"
|
"melter_side.png"..tube_entry, "caster_front.png"
|
||||||
},
|
},
|
||||||
paramtype2 = "facedir",
|
paramtype2 = "facedir",
|
||||||
groups = {cracky=2},
|
groups = {
|
||||||
|
cracky=2,
|
||||||
|
tubedevice = 1,
|
||||||
|
tubedevice_receiver = 1,
|
||||||
|
},
|
||||||
legacy_facedir_simple = true,
|
legacy_facedir_simple = true,
|
||||||
is_ground_content = false,
|
is_ground_content = false,
|
||||||
sounds = default.node_sound_stone_defaults(),
|
sounds = default.node_sound_stone_defaults(),
|
||||||
@ -537,6 +571,8 @@ minetest.register_node("metal_melter:metal_caster", {
|
|||||||
allow_metadata_inventory_put = allow_metadata_inventory_put,
|
allow_metadata_inventory_put = allow_metadata_inventory_put,
|
||||||
allow_metadata_inventory_move = allow_metadata_inventory_move,
|
allow_metadata_inventory_move = allow_metadata_inventory_move,
|
||||||
allow_metadata_inventory_take = allow_metadata_inventory_take,
|
allow_metadata_inventory_take = allow_metadata_inventory_take,
|
||||||
|
|
||||||
|
tube = pipeworks,
|
||||||
})
|
})
|
||||||
|
|
||||||
for i,v in pairs(metal_caster.casts) do
|
for i,v in pairs(metal_caster.casts) do
|
||||||
|
@ -155,3 +155,5 @@ minetest.register_craft({
|
|||||||
recipe = "metal_melter:heat_gravel",
|
recipe = "metal_melter:heat_gravel",
|
||||||
cooktime = 3,
|
cooktime = 3,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
-- Pipeworks
|
||||||
|
@ -1,4 +0,0 @@
|
|||||||
default
|
|
||||||
bucket
|
|
||||||
fluidity
|
|
||||||
unified_inventory?
|
|
@ -1 +0,0 @@
|
|||||||
Melt and cast metals.
|
|
@ -4,7 +4,7 @@
|
|||||||
metal_melter.max_fuel = 8000
|
metal_melter.max_fuel = 8000
|
||||||
|
|
||||||
-- Spec divided by this number is the lava usage.
|
-- Spec divided by this number is the lava usage.
|
||||||
metal_melter.lava_usage = 4
|
metal_melter.lava_usage = 9
|
||||||
|
|
||||||
-- Max metal that can be held by the melter.
|
-- Max metal that can be held by the melter.
|
||||||
metal_melter.max_metal = 16000
|
metal_melter.max_metal = 16000
|
||||||
@ -402,15 +402,49 @@ local function on_receive_fields(pos, formname, fields, sender)
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
-- Pipeworks integration
|
||||||
|
local pipeworks = {}
|
||||||
|
local tube_entry = ""
|
||||||
|
if minetest.get_modpath("pipeworks") ~= nil then
|
||||||
|
tube_entry = "^pipeworks_tube_connection_metallic.png"
|
||||||
|
|
||||||
|
local function insert_object(pos, node, stack, direction, owner)
|
||||||
|
local stack_name = stack:get_name()
|
||||||
|
local inv = minetest.get_meta(pos):get_inventory()
|
||||||
|
|
||||||
|
minetest.get_node_timer(pos):start(1.0)
|
||||||
|
|
||||||
|
if stack_name == "bucket:bucket_empty" or fluidity.florbs.get_is_empty_florb(stack) then
|
||||||
|
return inv:add_item("bucket_out", stack)
|
||||||
|
elseif stack_name == "bucket:bucket_lava" then
|
||||||
|
return inv:add_item("heat", stack)
|
||||||
|
elseif stack_name:find(":bucket_") ~= nil or fluidity.florbs.get_is_florb(stack) then
|
||||||
|
return inv:add_item("bucket_in", stack)
|
||||||
|
else
|
||||||
|
return inv:add_item("input", stack)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
pipeworks = {
|
||||||
|
connect_sides = {left = 1, right = 1, back = 1, bottom = 1, top = 1},
|
||||||
|
insert_object = insert_object,
|
||||||
|
input_inventory = "bucket_out",
|
||||||
|
}
|
||||||
|
end
|
||||||
|
|
||||||
minetest.register_node("metal_melter:metal_melter", {
|
minetest.register_node("metal_melter:metal_melter", {
|
||||||
description = "Metal Melter",
|
description = "Metal Melter",
|
||||||
tiles = {
|
tiles = {
|
||||||
"melter_side.png", "melter_side.png",
|
"melter_side.png"..tube_entry, "melter_side.png"..tube_entry,
|
||||||
"melter_side.png", "melter_side.png",
|
"melter_side.png"..tube_entry, "melter_side.png"..tube_entry,
|
||||||
"melter_side.png", "melter_front.png"
|
"melter_side.png"..tube_entry, "melter_front.png"
|
||||||
},
|
},
|
||||||
paramtype2 = "facedir",
|
paramtype2 = "facedir",
|
||||||
groups = {cracky=2},
|
groups = {
|
||||||
|
cracky = 2,
|
||||||
|
tubedevice = 1,
|
||||||
|
tubedevice_receiver = 1,
|
||||||
|
},
|
||||||
legacy_facedir_simple = true,
|
legacy_facedir_simple = true,
|
||||||
is_ground_content = false,
|
is_ground_content = false,
|
||||||
sounds = default.node_sound_stone_defaults(),
|
sounds = default.node_sound_stone_defaults(),
|
||||||
@ -439,16 +473,23 @@ minetest.register_node("metal_melter:metal_melter", {
|
|||||||
allow_metadata_inventory_put = allow_metadata_inventory_put,
|
allow_metadata_inventory_put = allow_metadata_inventory_put,
|
||||||
allow_metadata_inventory_move = allow_metadata_inventory_move,
|
allow_metadata_inventory_move = allow_metadata_inventory_move,
|
||||||
allow_metadata_inventory_take = allow_metadata_inventory_take,
|
allow_metadata_inventory_take = allow_metadata_inventory_take,
|
||||||
|
|
||||||
|
tube = pipeworks,
|
||||||
})
|
})
|
||||||
|
|
||||||
minetest.register_node("metal_melter:metal_melter_filled", {
|
minetest.register_node("metal_melter:metal_melter_filled", {
|
||||||
tiles = {
|
tiles = {
|
||||||
"melter_side.png", "melter_side.png",
|
"melter_side.png"..tube_entry, "melter_side.png"..tube_entry,
|
||||||
"melter_side.png", "melter_side.png",
|
"melter_side.png"..tube_entry, "melter_side.png"..tube_entry,
|
||||||
"melter_side.png", "melter_front.png^melter_front_lava.png"
|
"melter_side.png"..tube_entry, "melter_front.png^melter_front_lava.png"
|
||||||
},
|
},
|
||||||
paramtype2 = "facedir",
|
paramtype2 = "facedir",
|
||||||
groups = {cracky=2,not_in_creative_inventory=1},
|
groups = {
|
||||||
|
cracky = 2,
|
||||||
|
tubedevice = 1,
|
||||||
|
tubedevice_receiver = 1,
|
||||||
|
not_in_creative_inventory = 1
|
||||||
|
},
|
||||||
legacy_facedir_simple = true,
|
legacy_facedir_simple = true,
|
||||||
is_ground_content = false,
|
is_ground_content = false,
|
||||||
sounds = default.node_sound_stone_defaults(),
|
sounds = default.node_sound_stone_defaults(),
|
||||||
@ -470,6 +511,8 @@ minetest.register_node("metal_melter:metal_melter_filled", {
|
|||||||
allow_metadata_inventory_put = allow_metadata_inventory_put,
|
allow_metadata_inventory_put = allow_metadata_inventory_put,
|
||||||
allow_metadata_inventory_move = allow_metadata_inventory_move,
|
allow_metadata_inventory_move = allow_metadata_inventory_move,
|
||||||
allow_metadata_inventory_take = allow_metadata_inventory_take,
|
allow_metadata_inventory_take = allow_metadata_inventory_take,
|
||||||
|
|
||||||
|
tube = pipeworks,
|
||||||
})
|
})
|
||||||
|
|
||||||
-- Set a spec
|
-- Set a spec
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
name = metal_melter
|
name = metal_melter
|
||||||
description = Melt and cast metals.
|
description = Melt and cast metals.
|
||||||
depends = default,fluidity,bucket
|
depends = default,fluidity,bucket
|
||||||
optional_depends = unified_inventory
|
optional_depends = pipeworks
|
||||||
|
Loading…
Reference in New Issue
Block a user