diff --git a/technic/machines/HV/electric_furnace.lua b/technic/machines/HV/electric_furnace.lua new file mode 100644 index 0000000..a11bb59 --- /dev/null +++ b/technic/machines/HV/electric_furnace.lua @@ -0,0 +1,18 @@ +-- MV Electric Furnace +-- This is a faster version of the stone furnace which runs on EUs +-- In addition to this it can be upgraded with microcontrollers and batteries +-- This new version uses the batteries to lower the power consumption of the machine +-- Also in addition this furnace can be attached to the pipe system from the pipeworks mod. + +-- FIXME: kpoppel I'd like to introduce an induction heating element here also +minetest.register_craft({ + output = 'technic:hv_electric_furnace', + recipe = { + {'technic:stainless_steel_ingot', 'technic:lv_electric_furnace', 'technic:stainless_steel_ingot'}, + {'pipeworks:tube_1', 'technic:hv_transformer', 'pipeworks:tube_1'}, + {'technic:stainless_steel_ingot', 'technic:hv_cable', 'technic:stainless_steel_ingot'}, + } +}) + +technic.register_electric_furnace({tier="HV", upgrade=1, tube=1, demand={4000, 2500, 1500}, speed=12}) + diff --git a/technic/machines/HV/init.lua b/technic/machines/HV/init.lua index d7136b4..20e256b 100644 --- a/technic/machines/HV/init.lua +++ b/technic/machines/HV/init.lua @@ -15,4 +15,6 @@ dofile(path.."/generator.lua") -- Machines dofile(path.."/quarry.lua") dofile(path.."/forcefield.lua") +dofile(path.."/electric_furnace.lua") + diff --git a/technic/machines/LV/cnc_nodes.lua b/technic/machines/LV/cnc_nodes.lua index db45805..2020f92 100644 --- a/technic/machines/LV/cnc_nodes.lua +++ b/technic/machines/LV/cnc_nodes.lua @@ -1,7 +1,7 @@ -- REGISTER MATERIALS AND PROPERTIES FOR NONCUBIC ELEMENTS: ----------------------------------------------------------- -local S = technic.getter +local S=technic.getter -- DIRT ------- @@ -163,7 +163,7 @@ technic.cnc.register_all("default:tree", -- ICE ------- technic.cnc.register_all("default:ice", - {cracky = 3, puts_out_fire = 1, cools_lava = 1, not_in_creative_inventory=1}, + {cracky=3, puts_out_fire=1, cools_lava=1, not_in_creative_inventory=1}, {"default_ice.png"}, S("Ice")) @@ -171,7 +171,7 @@ technic.cnc.register_all("default:ice", -- OBSIDIAN ----------- technic.cnc.register_all("default:obsidian_block", - {cracky = 1, level = 2, not_in_creative_inventory=1}, + {cracky=1, level=2, not_in_creative_inventory=1}, {"default_obsidian_block.png"}, S("Obsidian")) @@ -261,3 +261,129 @@ technic.cnc.register_all("technic:granite", {"technic_granite.png"}, S("Granite")) + +if minetest.get_modpath("ethereal") then + -- Glostone + ------------ + technic.cnc.register_all("ethereal:glostone", + {cracky=1, not_in_creative_inventory=1, light_source=13}, + {"glostone.png"}, + S("Glo Stone")) + +end + + +if minetest.get_modpath("ethereal") then + -- Glostone + ------------ + technic.cnc.register_all("ethereal:glostone", + {cracky=1, not_in_creative_inventory=1, light_source=13}, + {"glostone.png"}, + S("Glo Stone")) + + -- Crystal block + ---------------- + technic.cnc.register_all("ethereal:crystal_block", + {snappy=2, choppy=2, oddly_breakable_by_hand=2, not_in_creative_inventory=1}, + {"crystal_block.png"}, + S("Crystal")) + + -- Misc. Wood types + ------------------- + technic.cnc.register_all("ethereal:banana_wood", + {snappy=2, choppy=2, oddly_breakable_by_hand=2, not_in_creative_inventory=1}, + {"banana_wood.png"}, + S("Banana Wood")) + + technic.cnc.register_all("ethereal:birch_wood", + {snappy=2, choppy=2, oddly_breakable_by_hand=2, not_in_creative_inventory=1}, + {"moretrees_birch_wood.png"}, + S("Birch Wood")) + + technic.cnc.register_all("ethereal:frost_wood", + {snappy=2, choppy=2, oddly_breakable_by_hand=2, not_in_creative_inventory=1}, + {"frost_wood.png"}, + S("Frost Wood")) + + technic.cnc.register_all("ethereal:palm_wood", + {snappy=2, choppy=2, oddly_breakable_by_hand=2, not_in_creative_inventory=1}, + {"moretrees_palm_wood.png"}, + S("Palm Wood")) + + technic.cnc.register_all("ethereal:willow_wood", + {snappy=2, choppy=2, oddly_breakable_by_hand=2, not_in_creative_inventory=1}, + {"willow_wood.png"}, + S("Willow Wood")) + + technic.cnc.register_all("ethereal:yellow_wood", + {snappy=2, choppy=2, oddly_breakable_by_hand=2, not_in_creative_inventory=1}, + {"yellow_wood.png"}, + S("Healing Tree Wood")) + + technic.cnc.register_all("ethereal:redwood_wood", + {snappy=2, choppy=2, oddly_breakable_by_hand=2, not_in_creative_inventory=1}, + {"redwood_wood.png"}, + S("Redwood")) +end + + +if minetest.get_modpath("moreblocks") then + -- Tiles + ------------ + technic.cnc.register_all("moreblocks:stone_tile", + {stone=1, cracky=3, not_in_creative_inventory=1}, + {"moreblocks_stone_tile.png"}, + S("Stone Tile")) + + technic.cnc.register_all("moreblocks:split_stone_tile", + {stone=1, cracky=3, not_in_creative_inventory=1}, + {"moreblocks_split_stone_tile.png"}, + S("Split Stone Tile")) + + technic.cnc.register_all("moreblocks:checker_stone_tile", + {stone=1, cracky=3, not_in_creative_inventory=1}, + {"moreblocks_checker_stone_tile.png"}, + S("Checker Stone Tile")) + + technic.cnc.register_all("moreblocks:cactus_checker", + {stone=1, cracky=3, not_in_creative_inventory=1}, + {"moreblocks_cactus_checker.png"}, + S("Cactus Checker")) + + -- Bricks + ------------ + technic.cnc.register_all("moreblocks:cactus_brick", + {cracky=3, not_in_creative_inventory=1}, + {"moreblocks_cactus_brick.png"}, + S("Cactus Brick")) + + technic.cnc.register_all("moreblocks:grey_bricks", + {cracky=3, not_in_creative_inventory=1}, + {"moreblocks_grey_bricks.png"}, + S("Grey Bricks")) + + -- Metals + ------------ + technic.cnc.register_all("moreblocks:copperpatina", + {cracky=1, level=2, not_in_creative_inventory=1}, + {"moreblocks_copperpatina.png"}, + S("Copper Patina")) + + -- Clay + ------------ + technic.cnc.register_all("bakedclay:red", + {cracky=3, not_in_creative_inventory=1}, + {"baked_clay_red.png"}, + S("Red Clay")) + + technic.cnc.register_all("bakedclay:orange", + {cracky=3, not_in_creative_inventory=1}, + {"baked_clay_orange.png"}, + S("Orange Clay")) + + technic.cnc.register_all("bakedclay:grey", + {cracky=3, not_in_creative_inventory=1}, + {"baked_clay_grey.png"}, + S("Grey Clay")) + +end diff --git a/technic/machines/register/alloy_recipes.lua b/technic/machines/register/alloy_recipes.lua index 3aeacd5..dc9a007 100644 --- a/technic/machines/register/alloy_recipes.lua +++ b/technic/machines/register/alloy_recipes.lua @@ -30,6 +30,12 @@ local recipes = { {"technic:raw_latex 4", "technic:coal_dust 2", "technic:rubber 6", 2}, } +if minetest.get_modpath("ethereal") then + table.insert(recipes, {"default:clay", "dye:red", "bakedclay:red"}) + table.insert(recipes, {"default:clay", "dye:orange", "bakedclay:orange"}) + table.insert(recipes, {"default:clay", "dye:grey", "bakedclay:grey"}) +end + for _, data in pairs(recipes) do technic.register_alloy_recipe({input = {data[1], data[2]}, output = data[3], time = data[4]}) end diff --git a/technic/machines/register/compressor_recipes.lua b/technic/machines/register/compressor_recipes.lua index acb9eca..3711db1 100644 --- a/technic/machines/register/compressor_recipes.lua +++ b/technic/machines/register/compressor_recipes.lua @@ -19,8 +19,15 @@ local recipes = { {"technic:coal_dust 4", "technic:graphite"}, {"technic:carbon_cloth", "technic:carbon_plate"}, {"technic:uranium35_ingot 5", "technic:uranium_fuel"}, + {"technic:graphite 25", "default:diamond"} } +if minetest.get_modpath("ethereal") then + -- the density of charcoal is ~1/10 of coal, otherwise it's pure carbon + table.insert(recipes, {"ethereal:charcoal_lump 10", "default:coal_lump 1"}) +end + + -- defuse the default sandstone recipe, since we have the compressor to take over in a more realistic manner minetest.clear_craft({ recipe = { diff --git a/technic/machines/register/grinder_recipes.lua b/technic/machines/register/grinder_recipes.lua index 8c8e178..dbaa067 100644 --- a/technic/machines/register/grinder_recipes.lua +++ b/technic/machines/register/grinder_recipes.lua @@ -32,6 +32,11 @@ local recipes = { {"default:silver_sandstone", "default:silver_sand 2"}, -- reverse recipe can be found in the compressor } +if minetest.get_modpath("ethereal") then + -- the density of charcoal is ~1/10 of coal, otherwise it's the same graphitic carbon + table.insert(recipes, {"ethereal:charcoal_lump 5", "technic:coal_dust 1"}) +end + -- defuse the sandstone -> 4 sand recipe to avoid infinite sand bugs (also consult the inverse compressor recipe) minetest.clear_craft({ recipe = { diff --git a/technic/textures/technic_hv_electric_furnace_bottom.png b/technic/textures/technic_hv_electric_furnace_bottom.png new file mode 100644 index 0000000..3f65026 Binary files /dev/null and b/technic/textures/technic_hv_electric_furnace_bottom.png differ diff --git a/technic/textures/technic_hv_electric_furnace_front.png b/technic/textures/technic_hv_electric_furnace_front.png new file mode 100644 index 0000000..e1f9bc5 Binary files /dev/null and b/technic/textures/technic_hv_electric_furnace_front.png differ diff --git a/technic/textures/technic_hv_electric_furnace_front_active.png b/technic/textures/technic_hv_electric_furnace_front_active.png new file mode 100644 index 0000000..1baeade Binary files /dev/null and b/technic/textures/technic_hv_electric_furnace_front_active.png differ diff --git a/technic/textures/technic_hv_electric_furnace_side.png b/technic/textures/technic_hv_electric_furnace_side.png new file mode 100644 index 0000000..c30a09e Binary files /dev/null and b/technic/textures/technic_hv_electric_furnace_side.png differ diff --git a/technic/textures/technic_hv_electric_furnace_side_tube.png b/technic/textures/technic_hv_electric_furnace_side_tube.png new file mode 100644 index 0000000..f94c057 Binary files /dev/null and b/technic/textures/technic_hv_electric_furnace_side_tube.png differ diff --git a/technic/textures/technic_hv_electric_furnace_top.png b/technic/textures/technic_hv_electric_furnace_top.png new file mode 100644 index 0000000..e3d4195 Binary files /dev/null and b/technic/textures/technic_hv_electric_furnace_top.png differ