Added Mineclone2 support apart from special machines own recipes within the machines

This commit is contained in:
James David Clarke 2023-12-20 08:20:56 +00:00
parent b221d69717
commit cfe2ee2133
No known key found for this signature in database
GPG Key ID: 9F5ECFD0E20F1C4C
68 changed files with 902 additions and 495 deletions

View File

@ -4,6 +4,21 @@
local technic = rawget(_G, "technic") or {}
technic.concrete_posts = {}
-- Mineclone2 Support
local stone_ingrediant = nil
if minetest.get_modpath("mcl_core") then
stone_ingrediant = "mcl_core:stone"
else
stone_ingrediant = "default:stone"
end
local stone_sounds = nil
if minetest.get_modpath("mcl_sounds") then
stone_sounds = mcl_sounds.node_sound_stone_defaults()
else
stone_sounds = default.node_sound_stone_defaults()
end
-- Boilerplate to support localized strings if intllib mod is installed.
local S = rawget(_G, "intllib") and intllib.Getter() or function(s) return s end
@ -26,9 +41,9 @@ minetest.register_craft({
minetest.register_craft({
output = 'technic:concrete_post 12',
recipe = {
{'default:stone','basic_materials:steel_bar','default:stone'},
{'default:stone','basic_materials:steel_bar','default:stone'},
{'default:stone','basic_materials:steel_bar','default:stone'},
{stone_ingrediant,'basic_materials:steel_bar',stone_ingrediant},
{stone_ingrediant,'basic_materials:steel_bar',stone_ingrediant},
{stone_ingrediant,'basic_materials:steel_bar',stone_ingrediant},
}
})
@ -45,7 +60,7 @@ minetest.register_node(":technic:blast_resistant_concrete", {
description = S("Blast-resistant Concrete Block"),
tiles = {"technic_blast_resistant_concrete_block.png",},
groups = {cracky=1, level=3, concrete=1},
sounds = default.node_sound_stone_defaults(),
sounds = stone_sounds,
on_blast = function(pos, intensity)
if intensity > 9 then
minetest.remove_node(pos)
@ -80,7 +95,7 @@ minetest.register_node(":technic:concrete_post_platform", {
description = S("Concrete Post Platform"),
tiles = {"basic_materials_concrete_block.png",},
groups={cracky=1, level=2},
sounds = default.node_sound_stone_defaults(),
sounds = stone_sounds,
paramtype = "light",
drawtype = "nodebox",
node_box = {
@ -112,7 +127,7 @@ for platform = 0, 1 do
description = S("Concrete Post"),
tiles = {"basic_materials_concrete_block.png"},
groups = {cracky=1, level=2, concrete_post=1, not_in_creative_inventory=platform},
sounds = default.node_sound_stone_defaults(),
sounds = stone_sounds,
drop = (platform == 1 and "technic:concrete_post_platform" or
"technic:concrete_post"),
paramtype = "light",

View File

@ -1,3 +1,3 @@
name = concrete
depends = default
optional_depends = basic_materials, intllib, moreblocks
optional_depends = basic_materials, intllib, moreblocks, default
supported_games = minetest_game,mineclone2

View File

@ -1,8 +1,25 @@
-- Minetest 0.4.6 mod: extranodes
-- namespace: technic
-- Boilerplate to support localized strings if intllib mod is installed.
local S = rawget(_G, "intllib") and intllib.Getter() or function(s) return s end
-- MineClone2 support
local stone_sounds = nil
if minetest.get_modpath("mcl_sounds") then
stone_sounds = mcl_sounds.node_sound_stone_defaults()
else
stone_sounds = default.node_sound_stone_defaults()
end
wood_fence_ingrediant = nil
if minetest.get_modpath("mcl_core") then
wood_fence_ingrediant = "group:fence_wood"
else
wood_fence_ingrediant = "default:fence_wood"
end
if minetest.get_modpath("moreblocks") then
-- register stairsplus/circular_saw nodes
@ -20,7 +37,7 @@ if minetest.get_modpath("moreblocks") then
groups={cracky=3, not_in_creative_inventory=1},
tiles={"technic_marble_bricks.png"},
})
if not minetest.get_modpath("mcl_core") then
stairsplus:register_all("technic", "granite", "technic:granite", {
description=S("Granite"),
groups={cracky=1, not_in_creative_inventory=1},
@ -32,7 +49,7 @@ if minetest.get_modpath("moreblocks") then
groups={cracky=1, not_in_creative_inventory=1},
tiles={"technic_granite_bricks.png"},
})
end
stairsplus:register_all("technic", "concrete", "technic:concrete", {
description=S("Concrete"),
groups={cracky=3, not_in_creative_inventory=1},
@ -108,7 +125,9 @@ if minetest.get_modpath("moreblocks") then
register_technic_stairs_alias("stairsplus", "concrete", "technic", "concrete")
register_technic_stairs_alias("stairsplus", "marble", "technic", "marble")
if not minetest.get_modpath("mcl_core") then
register_technic_stairs_alias("stairsplus", "granite", "technic", "granite")
end
register_technic_stairs_alias("stairsplus", "marble_bricks", "technic", "marble_bricks")
end
@ -120,7 +139,7 @@ local iclip_def = {
tiles = {"technic_insulator_clip.png"},
is_ground_content = false,
groups = {choppy=1, snappy=1, oddly_breakable_by_hand=1 },
sounds = default.node_sound_stone_defaults(),
sounds = stone_sounds,
}
local iclipfence_def = {
@ -154,7 +173,7 @@ local iclipfence_def = {
},
connects_to = {"group:fence", "group:wood", "group:tree"},
groups = {fence=1, choppy=1, snappy=1, oddly_breakable_by_hand=1 },
sounds = default.node_sound_stone_defaults(),
sounds = stone_sounds,
}
local sclip_tex = {
@ -182,7 +201,7 @@ local sclip_def = {
paramtype = "light",
paramtype2 = "wallmounted",
is_ground_content = false,
sounds = default.node_sound_stone_defaults(),
sounds = stone_sounds,
groups = { choppy=1, cracky=1 },
backface_culling = false
}
@ -214,21 +233,36 @@ end
minetest.register_node(":technic:insulator_clip", iclip_def)
minetest.register_node(":technic:insulator_clip_fencepost", iclipfence_def)
-- MineClone2 support
local stone_ingrediant = nil
local white_dye_ingrediant = nil
local fence_ingrediant = nil
if minetest.get_modpath("mcl_core") then
stone_ingrediant = "mcl_core:stone"
white_dye_ingrediant = "mcl_dye:white"
fence_ingrediant = "group:fence"
else
stone_ingrediant = "default:stone"
white_dye_ingrediant = "dye:white"
fence_ingrediant = "default:fence_wood"
end
minetest.register_craft({
output = "technic:insulator_clip",
recipe = {
{ "", "dye:white", ""},
{ "", white_dye_ingrediant, ""},
{ "", "technic:raw_latex", ""},
{ "technic:raw_latex", "default:stone", "technic:raw_latex"},
{ "technic:raw_latex", stone_ingrediant, "technic:raw_latex"},
}
})
minetest.register_craft({
output = "technic:insulator_clip_fencepost 2",
recipe = {
{ "", "dye:white", ""},
{ "", white_dye_ingrediant, ""},
{ "", "technic:raw_latex", ""},
{ "technic:raw_latex", "default:fence_wood", "technic:raw_latex"},
{ "technic:raw_latex", wood_fence_ingrediant, "technic:raw_latex"},
}
})

View File

@ -1,3 +1,4 @@
name = extranodes
depends = default, technic_worldgen, basic_materials, concrete
optional_depends = unifieddyes, intllib, moreblocks, steel, streetsmod
depends = technic_worldgen, basic_materials, concrete
optional_depends = unifieddyes, intllib, moreblocks, steel, streetsmod, default, mcl_core, mcl_sounds
supported_games = minetest_game,mineclone2

View File

@ -38,9 +38,9 @@ if pipeworks.enable_teleport_tube then
minetest.register_craft({
output = 'pipeworks:teleport_tube_1',
recipe = {
{'default:mese_crystal', 'technic:copper_coil', 'default:mese_crystal'},
{mese_crystal_ingrediant, 'technic:copper_coil', mese_crystal_ingrediant},
{'pipeworks:tube_1', 'technic:control_logic_unit', 'pipeworks:tube_1'},
{'default:mese_crystal', 'technic:copper_coil', 'default:mese_crystal'},
{mese_crystal_ingrediant, 'technic:copper_coil', mese_crystal_ingrediant},
}
})
end
@ -62,36 +62,36 @@ minetest.register_craft( {
minetest.register_craft({
output = 'technic:diamond_drill_head',
recipe = {
{'technic:stainless_steel_ingot', 'default:diamond', 'technic:stainless_steel_ingot'},
{'default:diamond', '', 'default:diamond'},
{'technic:stainless_steel_ingot', 'default:diamond', 'technic:stainless_steel_ingot'},
{'technic:stainless_steel_ingot', diamond_ingrediant, 'technic:stainless_steel_ingot'},
{diamond_ingrediant, '', diamond_ingrediant},
{'technic:stainless_steel_ingot', diamond_ingrediant, 'technic:stainless_steel_ingot'},
}
})
minetest.register_craft({
output = 'technic:green_energy_crystal',
recipe = {
{'default:gold_ingot', 'technic:battery', 'dye:green'},
{gold_ingot_ingrediant, 'technic:battery', green_dye_ingrediant},
{'technic:battery', 'technic:red_energy_crystal', 'technic:battery'},
{'dye:green', 'technic:battery', 'default:gold_ingot'},
{green_dye_ingrediant, 'technic:battery', gold_ingot_ingrediant},
}
})
minetest.register_craft({
output = 'technic:blue_energy_crystal',
recipe = {
{'moreores:mithril_ingot', 'technic:battery', 'dye:blue'},
{'moreores:mithril_ingot', 'technic:battery', blue_dye_ingrediant},
{'technic:battery', 'technic:green_energy_crystal', 'technic:battery'},
{'dye:blue', 'technic:battery', 'moreores:mithril_ingot'},
{blue_dye_ingrediant, 'technic:battery', 'moreores:mithril_ingot'},
}
})
minetest.register_craft({
output = 'technic:red_energy_crystal',
recipe = {
{'moreores:silver_ingot', 'technic:battery', 'dye:red'},
{'moreores:silver_ingot', 'technic:battery', red_dye_ingrediant},
{'technic:battery', 'basic_materials:energy_crystal_simple', 'technic:battery'},
{'dye:red', 'technic:battery', 'moreores:silver_ingot'},
{red_dye_ingrediant, 'technic:battery', 'moreores:silver_ingot'},
}
})
@ -143,7 +143,7 @@ minetest.register_craft({
output = 'technic:control_logic_unit',
recipe = {
{'', 'basic_materials:gold_wire', ''},
{'default:copper_ingot', 'technic:silicon_wafer', 'default:copper_ingot'},
{copper_ingrediant, 'technic:silicon_wafer', copper_ingrediant},
{'', 'technic:chromium_ingot', ''},
},
replacements = { {"basic_materials:gold_wire", "basic_materials:empty_spool"}, },
@ -153,8 +153,8 @@ minetest.register_craft({
output = 'technic:mixed_metal_ingot 9',
recipe = {
{'technic:stainless_steel_ingot', 'technic:stainless_steel_ingot', 'technic:stainless_steel_ingot'},
{'default:bronze_ingot', 'default:bronze_ingot', 'default:bronze_ingot'},
{'default:tin_ingot', 'default:tin_ingot', 'default:tin_ingot'},
{bronze_ingrediant, bronze_ingrediant, bronze_ingrediant},
{tin_ingrediant, tin_ingrediant, tin_ingrediant},
}
})
@ -175,7 +175,7 @@ minetest.register_craft({
})
minetest.register_craft({
output = "default:dirt 2",
output = dirt_ingrediant.." 2",
type = "shapeless",
replacements = {{"bucket:bucket_water","bucket:bucket_empty"}},
recipe = {
@ -191,14 +191,14 @@ minetest.register_craft({
type = "shapeless",
recipe = {
"technic:raw_latex",
"default:coal_lump",
"default:coal_lump",
"default:coal_lump",
"default:coal_lump",
"default:coal_lump",
"default:coal_lump",
"default:coal_lump",
"default:coal_lump",
coal_ingrediant,
coal_ingrediant,
coal_ingrediant,
coal_ingrediant,
coal_ingrediant,
coal_ingrediant,
coal_ingrediant,
coal_ingrediant,
},
})

View File

@ -1,11 +1,280 @@
-- namespace: technic
-- (c) 2012-2013 by RealBadAngel <mk@realbadangel.pl>
-- Mineclone2 Support
stone_sounds = nil
if minetest.get_modpath("mcl_sounds") then
stone_sounds = mcl_sounds.node_sound_stone_defaults()
else
stone_sounds = default.node_sound_stone_defaults()
end
mt_light_max = nil
if minetest.get_modpath("mcl_core") then
mt_light_max = mcl_core.LIGHT_MAX
else
mt_light_max = default.LIGHT_MAX
end
copper_ingrediant = nil
if minetest.get_modpath("mcl_core") then
copper_ingrediant = "mcl_copper:copper_ingot"
else
copper_ingrediant = 'default:copper_ingot'
end
iron_ingrediant = nil
if minetest.get_modpath("mcl_core") then
iron_ingrediant = "mcl_core:iron_ingot"
else
iron_ingrediant = 'default:steel_ingot'
end
mese_crystal_ingrediant = nil
if minetest.get_modpath("mcl_core") then
mese_crystal_ingrediant = "mesecons:wire_00000000_off"
else
mese_crystal_ingrediant = 'default:mese_crystal'
end
diamond_ingrediant = nil
if minetest.get_modpath("mcl_core") then
diamond_ingrediant = "mcl_core:diamond"
else
diamond_ingrediant = 'default:diamond'
end
glass_ingrediant = nil
if minetest.get_modpath("mcl_core") then
glass_ingrediant = "mcl_core:glass"
else
glass_ingrediant = 'default:glass'
end
brick_block_ingrediant = nil
if minetest.get_modpath("mcl_core") then
brick_block_ingrediant = "mcl_core:brick_block"
else
brick_block_ingrediant = 'default:brick'
end
mese_block_ingrediant = nil
if minetest.get_modpath("mcl_core") then
mese_block_ingrediant = "mesecons_torch:redstoneblock"
else
mese_block_ingrediant = "default:mese"
end
paper_ingrediant = nil
if minetest.get_modpath("mcl_core") then
paper_ingrediant = "mcl_core:paper"
else
paper_ingrediant = 'default:paper'
end
obsidian_glass_ingrediant = nil
if minetest.get_modpath("mcl_core") then
obsidian_glass_ingrediant = "mcl_core:obsidian"
else
obsidian_glass_ingrediant = 'default:obsidian_glass'
end
obsidian_ingrediant = nil
if minetest.get_modpath("mcl_core") then
obsidian_ingrediant = "mcl_core:obsidian"
else
obsidian_ingrediant = 'default:obsidian'
end
green_dye_ingrediant = nil
if minetest.get_modpath("mcl_core") then
green_dye_ingrediant = "mcl_dye:green"
else
green_dye_ingrediant = 'dye:green'
end
blue_dye_ingrediant = nil
if minetest.get_modpath("mcl_core") then
blue_dye_ingrediant = "mcl_dye:blue"
else
blue_dye_ingrediant = 'dye:blue'
end
red_dye_ingrediant = nil
if minetest.get_modpath("mcl_core") then
red_dye_ingrediant = "mcl_dye:red"
else
red_dye_ingrediant = 'dye:red'
end
white_dye_ingrediant = nil
if minetest.get_modpath("mcl_core") then
white_dye_ingrediant = "mcl_dye:white"
else
white_dye_ingrediant = 'dye:white'
end
gold_ingot_ingrediant = nil
if minetest.get_modpath("mcl_core") then
gold_ingot_ingrediant = "mcl_core:gold_ingot"
else
gold_ingot_ingrediant = 'default:gold_ingot'
end
chest_ingrediant = nil
if minetest.get_modpath("mcl_core") then
chest_ingrediant = "mcl_chests:chest"
else
chest_ingrediant = "default:chest"
end
stone_ingrediant = nil
if minetest.get_modpath("mcl_core") then
stone_ingrediant = "mcl_core:stone"
else
stone_ingrediant = "default:stone"
end
wood_fence_ingrediant = nil
if minetest.get_modpath("mcl_core") then
wood_fence_ingrediant = "group:fence_wood"
else
wood_fence_ingrediant = "default:fence_wood"
end
diamond_ingrediant = nil
if minetest.get_modpath("mcl_core") then
diamond_ingrediant = "mcl_core:diamond"
else
diamond_ingrediant = "default:diamond"
end
bronze_ingrediant = nil
if minetest.get_modpath("mcl_core") then
bronze_ingrediant = "mcl_copper:copper_ingot"
else
bronze_ingrediant = 'default:bronze_ingot'
end
tin_ingrediant = nil
if minetest.get_modpath("mcl_core") then
tin_ingrediant = "moreores:tin_ingot"
else
tin_ingrediant = 'default:tin_ingot'
end
sandstone_ingrediant = nil
if minetest.get_modpath("mcl_core") then
sandstone_ingrediant = "mcl_core:sandstone"
else
sandstone_ingrediant = 'default:desert_stone'
end
sand_ingrediant = nil
if minetest.get_modpath("mcl_core") then
sand_ingrediant = "mcl_core:sand"
else
sand_ingrediant = 'default:sand'
end
desert_stone_ingrediant = nil
if minetest.get_modpath("mcl_core") then
desert_stone_ingrediant = "mcl_core:redsandstone"
else
desert_stone_ingrediant = 'default:desert_stone'
end
desert_sand_ingrediant = nil
if minetest.get_modpath("mcl_core") then
desert_sand_ingrediant = "mcl_core:redsand"
else
desert_sand_ingrediant = 'default:desert_sand'
end
furnace_ingrediant = nil
if minetest.get_modpath("mcl_core") then
furnace_ingrediant = "mcl_furnaces:furnace"
else
furnace_ingrediant = 'default:furnace'
end
mossy_cobble_ingrediant = nil
if minetest.get_modpath("mcl_core") then
mossy_cobble_ingrediant = "mcl_core:mossycobble"
else
mossy_cobble_ingrediant = 'default:mossycobble'
end
snow_block_ingrediant = nil
if minetest.get_modpath("mcl_core") then
snow_block_ingrediant = "mcl_core:snowblock"
else
snow_block_ingrediant = 'default:snowblock'
end
ice_block_ingrediant = nil
if minetest.get_modpath("mcl_core") then
ice_block_ingrediant = "mcl_core:ice"
else
ice_block_ingrediant = 'default:ice'
end
granite_ingrediant = nil
if minetest.get_modpath("mcl_core") then
granite_ingrediant = "mcl_core:granite"
else
granite_ingrediant = 'technic:granite'
end
granite_bricks_ingrediant = nil
if minetest.get_modpath("mcl_core") then
granite_bricks_ingrediant = "mcl_core:granite_smooth"
else
granite_bricks_ingrediant = 'technic:granite_bricks'
end
coal_ingrediant = nil
if minetest.get_modpath("mcl_core") then
coal_ingrediant = "group:coal"
else
coal_ingrediant = "default:coal_lump"
end
dirt_ingrediant = nil
if minetest.get_modpath("mcl_core") then
dirt_ingrediant = "mcl_core:dirt"
else
dirt_ingrediant = "default:dirt"
end
mesecons_fiber_ingrediant = nil
if minetest.get_modpath("mcl_core") then
mesecons_fiber_ingrediant = "mesecons:wire_00000000_off"
else
mesecons_fiber_ingrediant = "mesecons_materials:fiber"
end
stick_ingrediant = nil
if minetest.get_modpath("mcl_core") then
stick_ingrediant = "mcl_core:stick"
else
stick_ingrediant = "default:stick"
end
if not minetest.get_translator then
error("[technic] Your Minetest version is no longer supported."
.. " (version < 5.0.0)")
end
local load_start = os.clock()
technic = rawget(_G, "technic") or {}

View File

@ -131,7 +131,7 @@ minetest.register_node("technic:machine_casing", {
paramtype = "light",
drawtype = "allfaces",
tiles = {"technic_machine_casing.png"},
sounds = default.node_sound_stone_defaults(),
sounds = stone_sounds,
})
minetest.register_craftitem("technic:rubber_goo", {
@ -188,7 +188,7 @@ for p = 0, 35 do
is_ground_content = true,
groups = {uranium_block=1, not_in_creative_inventory=nici,
cracky=1, level=2, radioactive=radioactivity},
sounds = default.node_sound_stone_defaults(),
sounds = stone_sounds,
});
if not ov then
minetest.register_craft({

View File

@ -17,9 +17,9 @@ local cable_entry = "^technic_cable_connection_overlay.png"
minetest.register_craft({
output = "technic:forcefield_emitter_off",
recipe = {
{"default:mese", "basic_materials:motor", "default:mese" },
{mese_block_ingrediant, "basic_materials:motor", mese_block_ingrediant },
{"technic:deployer_off", "technic:machine_casing", "technic:deployer_off"},
{"default:mese", "technic:hv_cable", "default:mese" },
{mese_block_ingrediant, "technic:hv_cable", mese_block_ingrediant },
}
})
@ -354,7 +354,7 @@ minetest.register_node("technic:forcefield", {
drawtype = "glasslike",
groups = {not_in_creative_inventory=1},
paramtype = "light",
light_source = default.LIGHT_MAX,
light_source = mt_light_max,
diggable = false,
drop = '',
tiles = {{

View File

@ -24,7 +24,7 @@ local cable_entry = "^technic_cable_connection_overlay.png"
minetest.register_craft({
output = 'technic:hv_nuclear_reactor_core',
recipe = {
{'technic:carbon_plate', 'default:obsidian_glass', 'technic:carbon_plate'},
{'technic:carbon_plate', obsidian_glass_ingrediant, 'technic:carbon_plate'},
{'technic:composite_plate', 'technic:machine_casing', 'technic:composite_plate'},
{'technic:stainless_steel_ingot', 'technic:hv_cable', 'technic:stainless_steel_ingot'},
}
@ -414,7 +414,7 @@ minetest.register_node("technic:hv_nuclear_reactor_core", {
mesh = "technic_reactor.obj",
groups = {cracky = 1, technic_machine = 1, technic_hv = 1, digiline_remote_receive = 1},
legacy_facedir_simple = true,
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
paramtype = "light",
paramtype2 = "facedir",
stack_max = 1,
@ -449,7 +449,7 @@ minetest.register_node("technic:hv_nuclear_reactor_core_active", {
groups = {cracky = 1, technic_machine = 1, technic_hv = 1, radioactive = 4,
not_in_creative_inventory = 1, digiline_remote_receive = 1},
legacy_facedir_simple = true,
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
drop = "technic:hv_nuclear_reactor_core",
light_source = 14,
paramtype = "light",

View File

@ -229,6 +229,13 @@ local function send_move_error(player)
return 0
end
local quarry_pick = nill
if minetest.get_modpath("mcl_core") then
quarry_pick = "default_tool_diamondpick.png"
else
quarry_pick = "default_tool_mesepick.png"
end
minetest.register_node("technic:quarry", {
description = S("%s Quarry"):format("HV"),
tiles = {
@ -236,7 +243,7 @@ minetest.register_node("technic:quarry", {
"technic_carbon_steel_block.png"..cable_entry,
"technic_carbon_steel_block.png"..cable_entry,
"technic_carbon_steel_block.png"..cable_entry,
"technic_carbon_steel_block.png^default_tool_mesepick.png",
"technic_carbon_steel_block.png^"..quarry_pick,
"technic_carbon_steel_block.png"..cable_entry
},
paramtype2 = "facedir",

View File

@ -4,9 +4,9 @@
minetest.register_craft({
output = 'technic:lv_alloy_furnace',
recipe = {
{'default:brick', 'default:brick', 'default:brick'},
{'default:brick', 'technic:machine_casing', 'default:brick'},
{'default:brick', 'technic:lv_cable', 'default:brick'},
{brick_block_ingrediant, brick_block_ingrediant, brick_block_ingrediant},
{brick_block_ingrediant, 'technic:machine_casing', brick_block_ingrediant},
{brick_block_ingrediant, 'technic:lv_cable', brick_block_ingrediant},
}
})

View File

@ -4,9 +4,9 @@ minetest.register_alias("lv_cable", "technic:lv_cable")
minetest.register_craft({
output = 'technic:lv_cable 6',
recipe = {
{'default:paper', 'default:paper', 'default:paper'},
{'default:copper_ingot', 'default:copper_ingot', 'default:copper_ingot'},
{'default:paper', 'default:paper', 'default:paper'},
{paper_ingrediant, paper_ingrediant, paper_ingrediant},
{copper_ingrediant, copper_ingrediant, copper_ingrediant},
{paper_ingrediant, paper_ingrediant, paper_ingrediant},
}
})

View File

@ -4,7 +4,7 @@ minetest.register_alias("compressor", "technic:lv_compressor")
minetest.register_craft({
output = 'technic:lv_compressor',
recipe = {
{'default:stone', 'basic_materials:motor', 'default:stone'},
{stone_ingrediant, 'basic_materials:motor', stone_ingrediant},
{'mesecons:piston', 'technic:machine_casing', 'mesecons:piston'},
{'basic_materials:silver_wire', 'technic:lv_cable', 'basic_materials:silver_wire'},
},

View File

@ -8,9 +8,9 @@ minetest.register_alias("lv_generator", "technic:lv_generator")
minetest.register_craft({
output = 'technic:lv_generator',
recipe = {
{'default:stone', 'default:furnace', 'default:stone'},
{'default:stone', 'technic:machine_casing', 'default:stone'},
{'default:stone', 'technic:lv_cable', 'default:stone'},
{stone_ingrediant, furnace_ingrediant, stone_ingrediant},
{stone_ingrediant, 'technic:machine_casing', stone_ingrediant},
{stone_ingrediant, 'technic:lv_cable', stone_ingrediant},
}
})

View File

@ -10,9 +10,9 @@ local S = technic.getter
minetest.register_craft({
output = 'technic:geothermal',
recipe = {
{'technic:granite', 'default:diamond', 'technic:granite'},
{granite_ingrediant, diamond_ingrediant, granite_ingrediant},
{'basic_materials:copper_wire', 'technic:machine_casing', 'basic_materials:copper_wire'},
{'technic:granite', 'technic:lv_cable', 'technic:granite'},
{granite_ingrediant, 'technic:lv_cable', granite_ingrediant},
},
replacements = {
{"basic_materials:copper_wire", "basic_materials:empty_spool"},
@ -90,7 +90,7 @@ minetest.register_node("technic:geothermal", {
technic_machine=1, technic_lv=1},
paramtype2 = "facedir",
legacy_facedir_simple = true,
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
on_construct = function(pos)
local meta = minetest.get_meta(pos)
meta:set_string("infotext", S("Geothermal %s Generator"):format("LV"))
@ -107,7 +107,7 @@ minetest.register_node("technic:geothermal_active", {
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2,
technic_machine=1, technic_lv=1, not_in_creative_inventory=1},
legacy_facedir_simple = true,
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
drop = "technic:geothermal",
technic_run = run,
})

View File

@ -3,9 +3,9 @@ minetest.register_alias("grinder", "technic:lv_grinder")
minetest.register_craft({
output = 'technic:lv_grinder',
recipe = {
{'default:desert_stone', 'default:diamond', 'default:desert_stone'},
{'default:desert_stone', 'technic:machine_casing', 'default:desert_stone'},
{'technic:granite', 'technic:lv_cable', 'technic:granite'},
{desert_stone_ingrediant, diamond_ingrediant, desert_stone_ingrediant},
{desert_stone_ingrediant, 'technic:machine_casing', desert_stone_ingrediant},
{granite_ingrediant, 'technic:lv_cable', granite_ingrediant},
}
})

View File

@ -149,7 +149,7 @@ technic.register_machine("LV", "technic:lv_lamp_active", technic.receiver)
minetest.register_craft({
output = "technic:lv_lamp",
recipe = {
{"default:glass", "default:glass", "default:glass"},
{glass_ingrediant, glass_ingrediant, glass_ingrediant},
{"technic:lv_led", "technic:lv_led", "technic:lv_led"},
{"mesecons_materials:glue", "technic:lv_cable", "mesecons_materials:glue"},
}

View File

@ -7,9 +7,9 @@ minetest.register_alias("music_player", "technic:music_player")
minetest.register_craft({
output = 'technic:music_player',
recipe = {
{'technic:chromium_ingot', 'default:diamond', 'technic:chromium_ingot'},
{'default:diamond', 'technic:machine_casing', 'default:diamond'},
{'default:mossycobble', 'technic:lv_cable', 'default:mossycobble'},
{'technic:chromium_ingot', diamond_ingrediant, 'technic:chromium_ingot'},
{diamond_ingrediant, 'technic:machine_casing', diamond_ingrediant},
{mossy_cobble_ingrediant, 'technic:lv_cable', mossy_cobble_ingrediant},
}
})
@ -96,7 +96,7 @@ minetest.register_node("technic:music_player", {
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2,
technic_machine=1, technic_lv=1},
connect_sides = {"bottom"},
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
on_construct = function(pos)
local meta = minetest.get_meta(pos)
meta:set_string("infotext", S("%s Music Player"):format("LV"))

View File

@ -50,7 +50,7 @@ minetest.register_node("technic:solar_panel", {
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2,
technic_machine=1, technic_lv=1},
connect_sides = {"bottom"},
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
description = S("Small Solar %s Generator"):format("LV"),
active = false,
drawtype = "nodebox",

View File

@ -11,7 +11,7 @@ minetest.register_alias("water_mill", "technic:water_mill")
minetest.register_craft({
output = 'technic:water_mill',
recipe = {
{'technic:marble', 'default:diamond', 'technic:marble'},
{'technic:marble', diamond_ingrediant, 'technic:marble'},
{'group:wood', 'technic:machine_casing', 'group:wood'},
{'technic:marble', 'technic:lv_cable', 'technic:marble'},
}
@ -80,7 +80,7 @@ minetest.register_node("technic:water_mill", {
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2,
technic_machine=1, technic_lv=1},
legacy_facedir_simple = true,
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
on_construct = function(pos)
local meta = minetest.get_meta(pos)
meta:set_string("infotext", S("Hydro %s Generator"):format("LV"))
@ -98,7 +98,7 @@ minetest.register_node("technic:water_mill_active", {
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2,
technic_machine=1, technic_lv=1, not_in_creative_inventory=1},
legacy_facedir_simple = true,
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
drop = "technic:water_mill",
technic_run = run,
technic_disabled_machine_name = "technic:water_mill",

View File

@ -77,7 +77,7 @@ minetest.register_node("technic:hydro_turbine", {
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2,
technic_machine=1, technic_mv=1},
legacy_facedir_simple = true,
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
on_construct = function(pos)
local meta = minetest.get_meta(pos)
meta:set_string("infotext", S("Hydro %s Generator"):format("MV"))
@ -95,7 +95,7 @@ minetest.register_node("technic:hydro_turbine_active", {
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2,
technic_machine=1, technic_mv=1, not_in_creative_inventory=1},
legacy_facedir_simple = true,
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
drop = "technic:hydro_turbine",
technic_run = run,
technic_disabled_machine_name = "technic:hydro_turbine",

View File

@ -105,7 +105,7 @@ minetest.register_node('technic:homedecor_glowlight_half_yellow', {
paramtype = "light",
paramtype2 = "facedir",
walkable = true,
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
groups = { snappy = 3 },
on_place = function(itemstack, placer, pointed_thing)
@ -145,7 +145,7 @@ minetest.register_node('technic:homedecor_glowlight_half_yellow_active', {
paramtype2 = "facedir",
walkable = true,
light_source = minetest.LIGHT_MAX,
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
groups = { snappy = 3, not_in_creative_inventory=1},
drop="technic:homedecor_glowlight_half_yellow",
@ -186,7 +186,7 @@ minetest.register_node('technic:homedecor_glowlight_quarter_yellow', {
paramtype = "light",
paramtype2 = "facedir",
walkable = true,
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
groups = { snappy = 3 },
on_place = function(itemstack, placer, pointed_thing)
@ -226,7 +226,7 @@ minetest.register_node('technic:homedecor_glowlight_quarter_yellow_active', {
paramtype2 = "facedir",
walkable = true,
light_source = minetest.LIGHT_MAX-1,
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
groups = { snappy = 3, not_in_creative_inventory=1},
drop="technic:homedecor_glowlight_quarter_yellow",
@ -268,7 +268,7 @@ minetest.register_node('technic:homedecor_glowlight_half_white', {
paramtype = "light",
paramtype2 = "facedir",
walkable = true,
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
groups = { snappy = 3 },
on_place = function(itemstack, placer, pointed_thing)
@ -308,7 +308,7 @@ minetest.register_node('technic:homedecor_glowlight_half_white_active', {
paramtype2 = "facedir",
walkable = true,
light_source = minetest.LIGHT_MAX,
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
groups = { snappy = 3, not_in_creative_inventory=1},
drop="technic:homedecor_glowlight_half_white",
@ -349,7 +349,7 @@ minetest.register_node('technic:homedecor_glowlight_quarter_white', {
paramtype = "light",
paramtype2 = "facedir",
walkable = true,
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
groups = { snappy = 3 },
on_place = function(itemstack, placer, pointed_thing)
@ -389,7 +389,7 @@ minetest.register_node('technic:homedecor_glowlight_quarter_white_active', {
paramtype2 = "facedir",
walkable = true,
light_source = minetest.LIGHT_MAX-1,
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
groups = { snappy = 3, not_in_creative_inventory=1},
drop="technic:homedecor_glowlight_quarter_white",
@ -430,7 +430,7 @@ minetest.register_node('technic:homedecor_glowlight_small_cube_yellow', {
paramtype = "light",
paramtype2 = "facedir",
walkable = true,
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
groups = { snappy = 3 },
on_place = function(itemstack, placer, pointed_thing)
@ -470,7 +470,7 @@ minetest.register_node('technic:homedecor_glowlight_small_cube_yellow_active', {
paramtype2 = "facedir",
walkable = true,
light_source = minetest.LIGHT_MAX-1,
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
groups = { snappy = 3, not_in_creative_inventory=1},
drop="technic:homedecor_glowlight_small_cube_yellow",
@ -511,7 +511,7 @@ minetest.register_node('technic:homedecor_glowlight_small_cube_white', {
paramtype = "light",
paramtype2 = "facedir",
walkable = true,
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
groups = { snappy = 3 },
on_place = function(itemstack, placer, pointed_thing)
@ -551,7 +551,7 @@ minetest.register_node('technic:homedecor_glowlight_small_cube_white_active', {
paramtype2 = "facedir",
walkable = true,
light_source = minetest.LIGHT_MAX-1,
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
groups = { snappy = 3, not_in_creative_inventory=1},
drop="technic:homedecor_glowlight_small_cube_white",

View File

@ -123,7 +123,7 @@ minetest.register_node("technic:power_radiator", {
tiles = {"technic_lv_cable.png", "technic_lv_cable.png", "technic_lv_cable.png",
"technic_lv_cable.png", "technic_lv_cable.png", "technic_lv_cable.png"},
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2},
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
drawtype = "nodebox",
paramtype = "light",
is_ground_content = true,

View File

@ -10,9 +10,9 @@ local tube_entry = "^pipeworks_tube_connection_wooden.png"
minetest.register_craft({
output = 'technic:tool_workshop',
recipe = {
{'group:wood', 'default:diamond', 'group:wood'},
{'group:wood', diamond_ingrediant, 'group:wood'},
{'mesecons_pistons:piston_sticky_off', 'technic:machine_casing', 'technic:carbon_cloth'},
{'default:obsidian', 'technic:mv_cable', 'default:obsidian'},
{obsidian_ingrediant, 'technic:mv_cable', obsidian_ingrediant},
}
})
@ -95,7 +95,7 @@ minetest.register_node("technic:tool_workshop", {
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2,
technic_machine=1, technic_mv=1, tubedevice=1, tubedevice_receiver=1},
connect_sides = {"bottom", "back", "left", "right"},
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
on_construct = function(pos)
local meta = minetest.get_meta(pos)
meta:set_string("infotext", S("%s Tool Workshop"):format("MV"))

View File

@ -25,7 +25,7 @@ minetest.register_node("technic:wind_mill_frame", {
tiles = {"technic_carbon_steel_block.png", "default_glass.png"},
sunlight_propagates = true,
groups = {cracky=3},
sounds = default.node_sound_stone_defaults(),
sounds = stone_sounds,
paramtype = "light",
})
@ -72,7 +72,7 @@ minetest.register_node("technic:wind_mill", {
paramtype2 = "facedir",
groups = {cracky=1, technic_machine=1, technic_mv=1},
connect_sides = {"top", "bottom", "back", "left", "right"},
sounds = default.node_sound_stone_defaults(),
sounds = stone_sounds,
drawtype = "nodebox",
paramtype = "light",
node_box = {

View File

@ -73,7 +73,7 @@ minetest.register_node("technic:admin_anchor", {
tiles = {"technic_admin_anchor.png"},
is_ground_content = true,
groups = {cracky=3, not_in_creative_inventory=1},
sounds = default.node_sound_stone_defaults(),
sounds = stone_sounds,
after_place_node = function (pos, placer)
local meta = minetest.get_meta(pos)
if placer and placer:is_player() then

View File

@ -6,9 +6,9 @@ local S = technic.getter
minetest.register_craft({
output = 'technic:coal_alloy_furnace',
recipe = {
{'default:brick', 'default:brick', 'default:brick'},
{'default:brick', '', 'default:brick'},
{'default:brick', 'default:brick', 'default:brick'},
{brick_block_ingrediant, brick_block_ingrediant, brick_block_ingrediant},
{brick_block_ingrediant, '', brick_block_ingrediant},
{brick_block_ingrediant, brick_block_ingrediant, brick_block_ingrediant},
}
})
@ -36,7 +36,7 @@ minetest.register_node("technic:coal_alloy_furnace", {
paramtype2 = "facedir",
groups = {cracky=2},
legacy_facedir_simple = true,
sounds = default.node_sound_stone_defaults(),
sounds = stone_sounds,
on_construct = function(pos)
local meta = minetest.get_meta(pos)
meta:set_string("formspec", formspec)
@ -62,7 +62,7 @@ minetest.register_node("technic:coal_alloy_furnace_active", {
drop = "technic:coal_alloy_furnace",
groups = {cracky=2, not_in_creative_inventory=1},
legacy_facedir_simple = true,
sounds = default.node_sound_stone_defaults(),
sounds = stone_sounds,
can_dig = technic.machine_can_dig,
allow_metadata_inventory_put = technic.machine_inventory_put,
allow_metadata_inventory_take = technic.machine_inventory_take,

View File

@ -1,5 +1,10 @@
local S = technic.getter
if minetest.get_modpath("mcl_core") then
minetest.registered_nodes["mcl_furnaces:furnace"].description = S("Fuel-Fired Furnace")
minetest.override_item("mcl_furnaces:furnace", { description = S("Fuel-Fired Furnace") })
else
if minetest.registered_nodes["default:furnace"].description == "Furnace" then
minetest.override_item("default:furnace", { description = S("Fuel-Fired Furnace") })
end
end

View File

@ -142,7 +142,7 @@ local function make_constructor(mark, length)
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2,
mesecon = 2, technic_constructor = 1},
mesecons = {effector = {action_on = make_on(mark, length)}},
sounds = default.node_sound_stone_defaults(),
sounds = stone_sounds,
on_construct = function(pos)
local meta = minetest.get_meta(pos)
local formspec = "size[8,9;]"..
@ -194,7 +194,7 @@ local function make_constructor(mark, length)
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2,
mesecon=2, not_in_creative_inventory=1, technic_constructor=1},
mesecons= {effector = {action_off = make_off(mark)}},
sounds = default.node_sound_stone_defaults(),
sounds = stone_sounds,
allow_metadata_inventory_put = allow_inventory_put,
allow_metadata_inventory_take = technic.machine_inventory_take,
allow_metadata_inventory_move = technic.machine_inventory_move,

View File

@ -981,7 +981,7 @@ minetest.register_craft({
output = 'technic:template 10',
recipe = {
{ '', 'basic_materials:brass_ingot', '' },
{ 'basic_materials:brass_ingot', 'default:mese_crystal', 'basic_materials:brass_ingot' },
{ 'basic_materials:brass_ingot', mese_crystal_ingrediant, 'basic_materials:brass_ingot' },
{ '', 'basic_materials:brass_ingot', '' },
}
})
@ -1009,7 +1009,7 @@ minetest.register_craft({
output = 'technic:template_tool',
recipe = {
{ '', 'technic:template', '' },
{ 'default:mese_crystal', 'default:stick', 'default:mese_crystal' },
{ mese_crystal_ingrediant, 'default:stick', mese_crystal_ingrediant },
{ '', 'default:stick', '' },
}
})

View File

@ -47,7 +47,7 @@ minetest.register_craft({
output = 'technic:injector 1',
recipe = {
{'', 'technic:control_logic_unit',''},
{'', 'default:chest',''},
{'', chest_ingrediant,''},
{'', 'pipeworks:tube_1',''},
}
})
@ -105,7 +105,7 @@ minetest.register_node("technic:injector", {
end,
connect_sides = {left=1, right=1, back=1, top=1, bottom=1},
},
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
on_construct = function(pos)
local meta = minetest.get_meta(pos)
meta:set_string("infotext", S("Self-Contained Injector"))

View File

@ -10,7 +10,7 @@ minetest.register_craft({
output = "technic:power_monitor",
recipe = {
{"", "", ""},
{"", "technic:machine_casing", "default:copper_ingot"},
{"", "technic:machine_casing", copper_ingrediant},
{"technic:lv_cable", "technic:lv_cable", "technic:lv_cable"}
}
})
@ -28,7 +28,7 @@ minetest.register_node("technic:power_monitor",{
paramtype2 = "facedir",
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2, technic_all_tiers=1, technic_machine=1},
connect_sides = {"bottom", "back"},
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
on_construct = function(pos)
local meta = minetest.get_meta(pos)
meta:set_string("infotext", S("Power Monitor"))

View File

@ -13,7 +13,7 @@ end
local recipes = {
{"technic:copper_dust 7", "technic:tin_dust", "technic:bronze_dust 8", 12},
{"default:copper_ingot 7", "default:tin_ingot", "default:bronze_ingot 8", 12},
{"copper_ingrediant 7", "default:tin_ingot", "default:bronze_ingot 8", 12},
{"technic:wrought_iron_dust 2", "technic:coal_dust", "technic:carbon_steel_dust 2", 6},
{"technic:wrought_iron_ingot 2", "technic:coal_dust", "technic:carbon_steel_ingot 2", 6},
{"technic:carbon_steel_dust 2", "technic:coal_dust", "technic:cast_iron_dust 2", 6},
@ -21,7 +21,7 @@ local recipes = {
{"technic:carbon_steel_dust 4", "technic:chromium_dust", "technic:stainless_steel_dust 5", 7.5},
{"technic:carbon_steel_ingot 4", "technic:chromium_ingot", "technic:stainless_steel_ingot 5", 7.5},
{"technic:copper_dust 2", "technic:zinc_dust", "technic:brass_dust 3"},
{"default:copper_ingot 2", "technic:zinc_ingot", "basic_materials:brass_ingot 3"},
{"copper_ingrediant 2", "technic:zinc_ingot", "basic_materials:brass_ingot 3"},
{"default:sand 2", "technic:coal_dust 2", "technic:silicon_wafer"},
{"technic:silicon_wafer", "technic:gold_dust", "technic:doped_silicon_wafer"},
-- from https://en.wikipedia.org/wiki/Carbon_black

View File

@ -17,9 +17,9 @@ technic.register_power_tool("technic:blue_energy_crystal", 450000)
minetest.register_craft({
output = "technic:battery",
recipe = {
{"group:wood", "default:copper_ingot", "group:wood"},
{"group:wood", copper_ingrediant, "group:wood"},
{"group:wood", "default:tin_ingot", "group:wood"},
{"group:wood", "default:copper_ingot", "group:wood"},
{"group:wood", copper_ingrediant, "group:wood"},
}
})
-- Sulfur-lead-water recipes:
@ -300,7 +300,7 @@ function technic.register_battery_box(data)
connect_sides = {"bottom"},
tube = data.tube and tube or nil,
paramtype2 = "facedir",
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
drop = "technic:"..ltier.."_battery_box0",
on_construct = function(pos)
local meta = minetest.get_meta(pos)

View File

@ -161,7 +161,7 @@ function technic.register_cable(tier, size)
inventory_image = "technic_"..ltier.."_cable_wield.png",
wield_image = "technic_"..ltier.."_cable_wield.png",
groups = groups,
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
drop = "technic:"..ltier.."_cable",
paramtype = "light",
sunlight_propagates = true,
@ -201,7 +201,7 @@ function technic.register_cable(tier, size)
description = S("%s Cable Plate"):format(tier),
tiles = {"technic_"..ltier.."_cable.png"},
groups = table.copy(groups),
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
drop = "technic:"..ltier.."_cable_plate_1",
paramtype = "light",
sunlight_propagates = true,

View File

@ -35,7 +35,7 @@ end
-- handles the machine upgrades when set or removed
local function on_machine_upgrade(meta, stack)
local stack_name = stack:get_name()
if stack_name == "default:chest" then
if stack_name == chest_ingrediant then
meta:set_int("public", 1)
return 1
elseif stack_name ~= "technic:control_logic_unit"
@ -47,7 +47,7 @@ end
-- something is about to be removed
local function on_machine_downgrade(meta, stack, list)
if stack:get_name() == "default:chest" then
if stack:get_name() == chest_ingrediant then
local inv = meta:get_inventory()
local upg1, upg2 = inv:get_stack("upgrade1", 1), inv:get_stack("upgrade2", 1)

View File

@ -9,18 +9,19 @@ function technic.register_compressor_recipe(data)
end
local recipes = {
{"default:snowblock", "default:ice"},
{"default:sand 2", "default:sandstone"},
{"default:desert_sand 2", "default:desert_sandstone"},
{"default:silver_sand 2", "default:silver_sandstone"},
{"default:desert_sand", "default:desert_stone"},
{snow_block_ingrediant, ice_block_ingrediant},
{sand_ingrediant.." 2", sandstone_ingrediant},
{desert_sand_ingrediant.." 2", desert_stone_ingrediant},
{desert_sand_ingrediant, desert_stone_ingrediant},
{"technic:mixed_metal_ingot", "technic:composite_plate"},
{"default:copper_ingot 5", "technic:copper_plate"},
{copper_ingrediant.." 5", "technic:copper_plate"},
{"technic:coal_dust 4", "technic:graphite"},
{"technic:carbon_cloth", "technic:carbon_plate"},
{"technic:uranium35_ingot 5", "technic:uranium_fuel"},
}
if minetest.get_modpath("default") then
table.insert(recipes, {"default:silver_sand 2", "default:silver_sandstone"})
end
-- defuse the default sandstone recipe, since we have the compressor to take over in a more realistic manner
minetest.clear_craft({
recipe = {

View File

@ -125,7 +125,7 @@ function technic.register_generator(data)
groups = groups,
connect_sides = {"bottom", "back", "left", "right"},
legacy_facedir_simple = true,
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
tube = data.tube and tube or nil,
on_construct = function(pos)
local meta = minetest.get_meta(pos)
@ -192,7 +192,7 @@ function technic.register_generator(data)
groups = active_groups,
connect_sides = {"bottom"},
legacy_facedir_simple = true,
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
tube = data.tube and tube or nil,
drop = "technic:"..ltier.."_generator",
can_dig = technic.machine_can_dig,

View File

@ -104,9 +104,9 @@ register_dust("Cast Iron", "technic:cast_iron_ingot")
register_dust("Chernobylite", "technic:chernobylite_block")
register_dust("Chromium", "technic:chromium_ingot")
register_dust("Coal", nil)
register_dust("Copper", "default:copper_ingot")
register_dust("Copper", copper_ingrediant)
register_dust("Lead", "technic:lead_ingot")
register_dust("Gold", "default:gold_ingot")
register_dust("Gold", gold_ingot_ingrediant)
register_dust("Mithril", "moreores:mithril_ingot")
register_dust("Silver", "moreores:silver_ingot")
register_dust("Stainless Steel", "technic:stainless_steel_ingot")

View File

@ -174,7 +174,7 @@ function technic.register_base_machine(data)
tube = data.tube and tube or nil,
connect_sides = data.connect_sides or connect_default,
legacy_facedir_simple = true,
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
on_construct = function(pos)
local node = minetest.get_node(pos)
local meta = minetest.get_meta(pos)
@ -245,7 +245,7 @@ function technic.register_base_machine(data)
groups = active_groups,
connect_sides = data.connect_sides or connect_default,
legacy_facedir_simple = true,
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
tube = data.tube and tube or nil,
can_dig = technic.machine_can_dig,
allow_metadata_inventory_put = technic.machine_inventory_put,

View File

@ -45,7 +45,7 @@ function technic.register_solar_array(data)
"technic_"..ltier.."_solar_array_side.png", "technic_"..ltier.."_solar_array_side.png"},
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2, technic_machine=1, ["technic_"..ltier]=1},
connect_sides = {"bottom"},
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
description = S("Arrayed Solar %s Generator"):format(tier),
active = false,
drawtype = "nodebox",

View File

@ -200,7 +200,7 @@ minetest.register_node("technic:supply_converter", {
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2,
technic_machine=1, technic_all_tiers=1},
connect_sides = {"top", "bottom"},
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
on_receive_fields = supply_converter_receive_fields,
on_construct = function(pos)
local meta = minetest.get_meta(pos)

View File

@ -15,7 +15,7 @@ minetest.register_craft({
output = "technic:switching_station",
recipe = {
{"", "technic:lv_transformer", ""},
{"default:copper_ingot", "technic:machine_casing", "default:copper_ingot"},
{copper_ingrediant, "technic:machine_casing", copper_ingrediant},
{"technic:lv_cable", "technic:lv_cable", "technic:lv_cable"}
}
})
@ -38,7 +38,7 @@ minetest.register_node("technic:switching_station",{
"technic_water_mill_top_active.png"},
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2, technic_all_tiers=1},
connect_sides = {"bottom"},
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
on_construct = function(pos)
local meta = minetest.get_meta(pos)
meta:set_string("infotext", S("Switching Station"))

View File

@ -1,3 +1,4 @@
name = technic
depends = default, pipeworks, technic_worldgen, basic_materials
optional_depends = bucket, screwdriver, mesecons, mesecons_mvps, digilines, digiline_remote, intllib, unified_inventory, vector_extras, dye, craftguide,i3
depends = pipeworks, technic_worldgen, basic_materials
optional_depends = bucket, default, screwdriver, mesecons,mesecons_torch, mesecons_mvps, digilines, digiline_remote, intllib, unified_inventory, vector_extras, dye, craftguide,i3
supported_games = minetest_game,mineclone2

View File

@ -52,7 +52,7 @@ local rad_resistance_node = {
["default:ice"] = 5.6,
["default:lava_flowing"] = 8.5,
["default:lava_source"] = 17,
["default:mese"] = 21,
[mese_block_ingrediant] = 21,
["default:mossycobble"] = 15,
["default:tinblock"] = 37,
["pbj_pup:pbj_pup"] = 10000,
@ -64,7 +64,7 @@ local rad_resistance_node = {
["nyancat:nyancat"] = 10000,
["nyancat:nyancat_rainbow"] = 10000,
["default:obsidian"] = 18,
["default:obsidian_glass"] = 18,
[obsidian_glass_ingrediant] = 18,
["default:sand"] = 10,
["default:sandstone"] = 15,
["default:sandstonebrick"] = 15,
@ -153,7 +153,7 @@ local rad_resistance_node = {
["technic:chromium_block"] = 37,
["technic:corium_flowing"] = 40,
["technic:corium_source"] = 80,
["technic:granite"] = 18,
[granite_ingrediant] = 18,
["technic:lead_block"] = 80,
["technic:marble"] = 18,
["technic:marble_bricks"] = 18,
@ -457,7 +457,7 @@ minetest.register_node("technic:chernobylite_block", {
tiles = {"technic_chernobylite_block.png"},
is_ground_content = true,
groups = {cracky=1, radioactive=4, level=2},
sounds = default.node_sound_stone_defaults(),
sounds = stone_sounds,
light_source = 2,
})

View File

@ -135,7 +135,7 @@ minetest.register_craft({
output = 'technic:river_water_can 1',
recipe = {
{'technic:zinc_ingot', 'technic:rubber', 'technic:zinc_ingot'},
{'default:steel_ingot', '', 'default:steel_ingot'},
{'technic:zinc_ingot', 'default:steel_ingot', 'technic:zinc_ingot'},
{iron_ingrediant, '', iron_ingrediant},
{'technic:zinc_ingot', iron_ingrediant, 'technic:zinc_ingot'},
}
})

View File

@ -340,7 +340,13 @@ minetest.register_tool("technic:chainsaw", {
})
local mesecons_button = minetest.get_modpath("mesecons_button")
local trigger = mesecons_button and "mesecons_button:button_off" or "default:mese_crystal_fragment"
local trigger = nil
if minetest.get_modpath("mcl_core") then
trigger = "mesecons_button:button_stone_off"
else
trigger = mesecons_button and "mesecons_button:button_off" or "default:mese_crystal_fragment"
end
minetest.register_craft({
output = "technic:chainsaw",

View File

@ -6,9 +6,9 @@ local S = technic.getter
minetest.register_craft({
output = 'technic:mining_drill',
recipe = {
{'default:tin_ingot', 'technic:diamond_drill_head', 'default:tin_ingot'},
{tin_ingrediant, 'technic:diamond_drill_head', tin_ingrediant},
{'technic:stainless_steel_ingot', 'basic_materials:motor', 'technic:stainless_steel_ingot'},
{'', 'technic:red_energy_crystal', 'default:copper_ingot'},
{'', 'technic:red_energy_crystal', copper_ingrediant},
}
})
minetest.register_craft({

View File

@ -11,25 +11,25 @@ local S = technic.getter
minetest.register_craft({
output = "technic:laser_mk1",
recipe = {
{"default:diamond", "basic_materials:brass_ingot", "default:obsidian_glass"},
{diamond_ingrediant, "basic_materials:brass_ingot", obsidian_glass_ingrediant},
{"", "basic_materials:brass_ingot", "technic:red_energy_crystal"},
{"", "", "default:copper_ingot"},
{"", "", copper_ingrediant},
}
})
minetest.register_craft({
output = "technic:laser_mk2",
recipe = {
{"default:diamond", "technic:carbon_steel_ingot", "technic:laser_mk1"},
{diamond_ingrediant, "technic:carbon_steel_ingot", "technic:laser_mk1"},
{"", "technic:carbon_steel_ingot", "technic:green_energy_crystal"},
{"", "", "default:copper_ingot"},
{"", "", copper_ingrediant},
}
})
minetest.register_craft({
output = "technic:laser_mk3",
recipe = {
{"default:diamond", "technic:carbon_steel_ingot", "technic:laser_mk2"},
{diamond_ingrediant, "technic:carbon_steel_ingot", "technic:laser_mk2"},
{"", "technic:carbon_steel_ingot", "technic:blue_energy_crystal"},
{"", "", "default:copper_ingot"},
{"", "", copper_ingrediant},
}
})

View File

@ -90,9 +90,9 @@ minetest.register_tool("technic:sonic_screwdriver", {
minetest.register_craft({
output = "technic:sonic_screwdriver",
recipe = {
{"", "default:diamond", ""},
{"mesecons_materials:fiber", "technic:battery", "mesecons_materials:fiber"},
{"mesecons_materials:fiber", "moreores:mithril_ingot", "mesecons_materials:fiber"}
{"", diamond_ingrediant, ""},
{mesecons_fiber_ingrediant, "technic:battery", mesecons_fiber_ingrediant},
{mesecons_fiber_ingrediant, "moreores:mithril_ingot", mesecons_fiber_ingrediant}
}
})

View File

@ -38,8 +38,8 @@ minetest.register_tool("technic:treetap", {
minetest.register_craft({
output = "technic:treetap",
recipe = {
{"pipeworks:tube_1", "group:wood", "default:stick"},
{"", "default:stick", "default:stick"}
{"pipeworks:tube_1", "group:wood", stick_ingrediant},
{"", stick_ingrediant, stick_ingrediant}
},
})

View File

@ -1,18 +1,18 @@
minetest.register_craft({
output = 'technic:copper_chest 1',
recipe = {
{'default:copper_ingot','default:copper_ingot','default:copper_ingot'},
{'default:copper_ingot','technic:iron_chest','default:copper_ingot'},
{'default:copper_ingot','default:copper_ingot','default:copper_ingot'},
{copper_ingrediant,copper_ingrediant,copper_ingrediant},
{copper_ingrediant,'technic:iron_chest',copper_ingrediant},
{copper_ingrediant,copper_ingrediant,copper_ingrediant},
}
})
minetest.register_craft({
output = 'technic:copper_locked_chest 1',
recipe = {
{'default:copper_ingot','default:copper_ingot','default:copper_ingot'},
{'default:copper_ingot','technic:iron_locked_chest','default:copper_ingot'},
{'default:copper_ingot','default:copper_ingot','default:copper_ingot'},
{copper_ingrediant,copper_ingrediant,copper_ingrediant},
{copper_ingrediant,'technic:iron_locked_chest',copper_ingrediant},
{copper_ingrediant,copper_ingrediant,copper_ingrediant},
}
})

View File

@ -11,18 +11,18 @@ for _, material in ipairs(material_list) do
minetest.register_craft({
output = 'technic:gold_chest',
recipe = {
{'default:gold_ingot','default:gold_ingot','default:gold_ingot'},
{'default:gold_ingot',"technic:"..material.."_chest",'default:gold_ingot'},
{'default:gold_ingot','default:gold_ingot','default:gold_ingot'},
{gold_ingot_ingrediant,gold_ingot_ingrediant,gold_ingot_ingrediant},
{gold_ingot_ingrediant,"technic:"..material.."_chest",gold_ingot_ingrediant},
{gold_ingot_ingrediant,gold_ingot_ingrediant,gold_ingot_ingrediant},
}
})
minetest.register_craft({
output = 'technic:gold_locked_chest',
recipe = {
{'default:gold_ingot','default:gold_ingot','default:gold_ingot'},
{'default:gold_ingot',"technic:"..material.."_locked_chest",'default:gold_ingot'},
{'default:gold_ingot','default:gold_ingot','default:gold_ingot'},
{gold_ingot_ingrediant,gold_ingot_ingrediant,gold_ingot_ingrediant},
{gold_ingot_ingrediant,"technic:"..material.."_locked_chest",gold_ingot_ingrediant},
{gold_ingot_ingrediant,gold_ingot_ingrediant,gold_ingot_ingrediant},
}
})
end

View File

@ -4,6 +4,65 @@
local modpath = minetest.get_modpath("technic_chests")
-- Mineclone2 Support
stone_sounds = nil
if minetest.get_modpath("mcl_sounds") then
stone_sounds = mcl_sounds.node_sound_stone_defaults()
else
stone_sounds = default.node_sound_stone_defaults()
end
node_sounds = nil
if minetest.get_modpath("mcl_sounds") then
node_sounds = mcl_sounds.node_sound_defaults()
else
node_sounds = default.node_sound_defaults()
end
wood_sounds = nil
if minetest.get_modpath("mcl_sounds") then
wood_sounds = mcl_sounds.node_sound_wood_defaults()
else
wood_sounds = default.node_sound_wood_defaults()
end
-- Mineclone2 Recipes
chest_ingrediant = nil
if minetest.get_modpath("mcl_core") then
chest_ingrediant = "mcl_chests:chest"
else
chest_ingrediant = "default:chest"
end
copper_ingrediant = nil
if minetest.get_modpath("mcl_core") then
copper_ingrediant = "mcl_copper:copper_ingot"
else
copper_ingrediant = 'default:copper_ingot'
end
gold_ingot_ingrediant = nil
if minetest.get_modpath("mcl_core") then
gold_ingot_ingrediant = "mcl_core:gold_ingot"
else
gold_ingot_ingrediant = 'default:gold_ingot'
end
granite_ingrediant = nil
if minetest.get_modpath("mcl_core") then
granite_ingrediant = "mcl_core:granite"
else
granite_ingrediant = 'technic:granite'
end
granite_bricks_ingrediant = nil
if minetest.get_modpath("mcl_core") then
granite_bricks_ingrediant = "mcl_core:granite_smooth"
else
granite_bricks_ingrediant = 'technic:granite_bricks'
end
technic = rawget(_G, "technic") or {}
technic.chests = {}

View File

@ -9,11 +9,12 @@ minetest.register_craft({
output = 'technic:iron_chest 1',
recipe = {
{cast_iron_ingot,cast_iron_ingot,cast_iron_ingot},
{cast_iron_ingot,'default:chest',cast_iron_ingot},
{cast_iron_ingot,chest_ingrediant,cast_iron_ingot},
{cast_iron_ingot,cast_iron_ingot,cast_iron_ingot},
}
})
if minetest.get_modpath("default") then
minetest.register_craft({
output = 'technic:iron_locked_chest 1',
recipe = {
@ -22,6 +23,7 @@ minetest.register_craft({
{cast_iron_ingot,cast_iron_ingot,cast_iron_ingot},
}
})
end
minetest.register_craft({
output = 'technic:iron_locked_chest 1',

View File

@ -1,3 +1,4 @@
name = technic_chests
depends = default, basic_materials
optional_depends = moreblocks, moreores, pipeworks, intllib, tubelib
depends = basic_materials
optional_depends = moreblocks, moreores, pipeworks, intllib, tubelib, default, mcl_core
supported_games = minetest_game,mineclone2

View File

@ -298,7 +298,7 @@ function technic.chests:definition(name, data)
groups = self.groups,
tube = self.tube,
legacy_facedir_simple = true,
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
after_place_node = locked_after_place,
after_dig_node = pipeworks.after_dig,

View File

@ -19,7 +19,7 @@ if technic_cnc.use_technic then
minetest.register_craft({
output = 'technic:cnc',
recipe = {
{'default:glass', 'technic:diamond_drill_head', 'default:glass'},
{glass_ingrediant, 'technic:diamond_drill_head', glass_ingrediant},
{'technic:control_logic_unit', 'technic:machine_casing', 'basic_materials:motor'},
{'technic:carbon_steel_ingot', 'technic:lv_cable', 'technic:carbon_steel_ingot'},
},
@ -34,9 +34,9 @@ else
minetest.register_craft({
output = 'technic:cnc',
recipe = {
{'default:glass', 'default:diamond', 'default:glass'},
{glass_ingrediant, diamond_ingrediant, glass_ingrediant},
{'basic_materials:ic', 'default:steelblock', 'basic_materials:motor'},
{'default:steel_ingot', 'default:mese', 'default:steel_ingot'},
{'default:steel_ingot', mese_block_ingrediant, 'default:steel_ingot'},
},
})

View File

@ -1,131 +1,130 @@
-- REGISTER MATERIALS AND PROPERTIES FOR NONCUBIC ELEMENTS:
-----------------------------------------------------------
local S = technic_cnc.getter
-- Conditional variables for MineClone2 compatibility
local is_mcl = minetest.get_modpath("mcl_core")
-- Textures and names for MineClone2
local dirt_texture = is_mcl and "default_dirt.png" or "default_dirt.png"
local grass_texture = is_mcl and "default_grass.png" or "default_grass.png"
local wood_texture = is_mcl and "default_wood.png" or "default_wood.png"
local stone_texture = is_mcl and "default_stone.png" or "default_stone.png"
local cobble_texture = is_mcl and "default_cobble.png" or "default_cobble.png"
local brick_texture = is_mcl and "default_brick.png" or "default_brick.png"
local sandstone_texture = is_mcl and "default_sandstone.png" or "default_sandstone.png"
local leaves_texture = is_mcl and "default_leaves.png" or "default_leaves.png"
local tree_texture = is_mcl and "default_tree.png" or "default_tree.png"
local bronzeblock_texture = is_mcl and "mcl_core_bronze_block.png" or "default_bronze_block.png"
-- DIRT
-------
technic_cnc.register_all("default:dirt",
{snappy=2,choppy=2,oddly_breakable_by_hand=3,not_in_creative_inventory=1},
{"default_dirt.png"},
S("Dirt"))
technic_cnc.register_all(is_mcl and "mcl_core:dirt" or "default:dirt",
{snappy=2,choppy=2,oddly_breakable_by_hand=3,not_in_creative_inventory=1},
{dirt_texture},
S("Dirt"))
-- (DIRT WITH) GRASS
--------------------
technic_cnc.register_all("default:dirt_with_grass",
{snappy=2,choppy=2,oddly_breakable_by_hand=3,not_in_creative_inventory=1},
{"default_grass.png"},
S("Grassy dirt"))
technic_cnc.register_all(is_mcl and "mcl_core:dirt_with_grass" or "default:dirt_with_grass",
{snappy=2,choppy=2,oddly_breakable_by_hand=3,not_in_creative_inventory=1},
{grass_texture},
S("Grassy dirt"))
-- WOOD
-------
technic_cnc.register_all("default:wood",
{snappy=2, choppy=2, oddly_breakable_by_hand=2, not_in_creative_inventory=1},
{"default_wood.png"},
S("Wooden"))
technic_cnc.register_all(is_mcl and "mcl_core:wood" or "default:wood",
{snappy=2, choppy=2, oddly_breakable_by_hand=2, not_in_creative_inventory=1},
{wood_texture},
S("Wooden"))
-- STONE
--------
technic_cnc.register_all("default:stone",
{cracky=3, not_in_creative_inventory=1},
{"default_stone.png"},
S("Stone"))
technic_cnc.register_all(is_mcl and "mcl_core:stone" or "default:stone",
{cracky=3, not_in_creative_inventory=1},
{stone_texture},
S("Stone"))
-- COBBLE
---------
technic_cnc.register_all("default:cobble",
{cracky=3, not_in_creative_inventory=1},
{"default_cobble.png"},
S("Cobble"))
technic_cnc.register_all(is_mcl and "mcl_core:cobble" or "default:cobble",
{cracky=3, not_in_creative_inventory=1},
{cobble_texture},
S("Cobble"))
-- BRICK
--------
technic_cnc.register_all("default:brick",
{cracky=3, not_in_creative_inventory=1},
{"default_brick.png"},
S("Brick"))
technic_cnc.register_all(is_mcl and "mcl_core:brick" or "default:brick",
{cracky=3, not_in_creative_inventory=1},
{brick_texture},
S("Brick"))
-- SANDSTONE
------------
technic_cnc.register_all("default:sandstone",
{crumbly=2, cracky=3, not_in_creative_inventory=1},
{"default_sandstone.png"},
S("Sandstone"))
technic_cnc.register_all(is_mcl and "mcl_core:sandstone" or "default:sandstone",
{crumbly=2, cracky=3, not_in_creative_inventory=1},
{sandstone_texture},
S("Sandstone"))
-- LEAVES
---------
technic_cnc.register_all("default:leaves",
{snappy=2, choppy=2, oddly_breakable_by_hand=3, not_in_creative_inventory=1},
{"default_leaves.png"},
S("Leaves"))
technic_cnc.register_all(is_mcl and "mcl_core:leaves" or "default:leaves",
{snappy=2, choppy=2, oddly_breakable_by_hand=3, not_in_creative_inventory=1},
{leaves_texture},
S("Leaves"))
-- TREE
-------
technic_cnc.register_all("default:tree",
{snappy=1, choppy=2, oddly_breakable_by_hand=2, flammable=3, wood=1, not_in_creative_inventory=1},
{"default_tree.png"},
S("Tree"))
technic_cnc.register_all(is_mcl and "mcl_core:tree" or "default:tree",
{snappy=1, choppy=2, oddly_breakable_by_hand=2, flammable=3, wood=1, not_in_creative_inventory=1},
{tree_texture},
S("Tree"))
-- Bronze
--------
technic_cnc.register_all("default:bronzeblock",
{cracky=1, level=2, not_in_creative_inventory=1},
{"default_bronze_block.png"},
S("Bronze"))
if not is_mcl then
technic_cnc.register_all("default:bronzeblock",
{cracky=1, level=2, not_in_creative_inventory=1},
{bronzeblock_texture},
S("Bronze"))
end
local steeltex = "default_steel_block.png"
local steelname = "Steel"
local steeltex = is_mcl and "default_steel_block.png" or "default_steel_block.png"
local steelname = is_mcl and "Iron" or "Steel"
if technic_cnc.technic_modpath then
steeltex = "technic_wrought_iron_block.png"
steelname = "Wrought Iron"
if not is_mcl then
steeltex = "technic_wrought_iron_block.png"
steelname = "Wrought Iron"
-- Stainless Steel
--------
technic_cnc.register_all("technic:stainless_steel_block",
{cracky=1, level=2, not_in_creative_inventory=1},
{"technic_stainless_steel_block.png"},
S("Stainless Steel"))
-- Stainless Steel
technic_cnc.register_all("technic:stainless_steel_block",
{cracky=1, level=2, not_in_creative_inventory=1},
{"technic_stainless_steel_block.png"},
S("Stainless Steel"))
-- Marble
------------
technic_cnc.register_all("technic:marble",
{cracky=3, not_in_creative_inventory=1},
{"technic_marble.png"},
S("Marble"))
-- Marble
technic_cnc.register_all("technic:marble",
{cracky=3, not_in_creative_inventory=1},
{"technic_marble.png"},
S("Marble"))
-- Granite
------------
technic_cnc.register_all("technic:granite",
{cracky=1, not_in_creative_inventory=1},
{"technic_granite.png"},
S("Granite"))
-- Blast-resistant concrete
---------------------------
technic_cnc.register_all("technic:blast_resistant_concrete",
{cracky=2, level=2, not_in_creative_inventory=1},
{"technic_blast_resistant_concrete_block.png"},
S("Blast-resistant concrete"))
-- Blast-resistant concrete
technic_cnc.register_all("technic:blast_resistant_concrete",
{cracky=2, level=2, not_in_creative_inventory=1},
{"technic_blast_resistant_concrete_block.png"},
S("Blast-resistant concrete"))
end
end
-- STEEL
---------------
technic_cnc.register_all("default:steelblock",
{cracky=1, level=2, not_in_creative_inventory=1},
{steeltex},
S(steelname))
technic_cnc.register_all(is_mcl and "mcl_core:iron_block" or "default:steelblock",
{cracky=1, level=2, not_in_creative_inventory=1},
{steeltex},
S(steelname))
-- CONCRETE AND CEMENT
----------------------
if minetest.get_modpath("basic_materials") then
technic_cnc.register_all("basic_materials:concrete_block",
{cracky=2, level=2, not_in_creative_inventory=1},
{"basic_materials_concrete_block.png"},
S("Concrete"))
technic_cnc.register_all("basic_materials:concrete_block",
{cracky=2, level=2, not_in_creative_inventory=1},
{"basic_materials_concrete_block.png"},
S("Concrete"))
technic_cnc.register_all("basic_materials:cement_block",
{cracky=2, level=2, not_in_creative_inventory=1},
{"basic_materials_cement_block.png"},
S("Cement"))
technic_cnc.register_all("basic_materials:cement_block",
{cracky=2, level=2, not_in_creative_inventory=1},
{"basic_materials_cement_block.png"},
S("Cement"))
technic_cnc.register_all("basic_materials:brass_block",
{cracky=1, level=2, not_in_creative_inventory=1},
{"basic_materials_brass_block.png"},
S("Brass block"))
technic_cnc.register_all("basic_materials:brass_block",
{cracky=1, level=2, not_in_creative_inventory=1},
{"basic_materials_brass_block.png"},
S("Brass block"))
end

View File

@ -1,3 +1,4 @@
name = technic_cnc
depends = default, basic_materials
optional_depends = technic
depends = basic_materials
optional_depends = technic, default, mcl_core
supported_games = minetest_game,mineclone2

View File

@ -48,12 +48,21 @@ minetest.register_craftitem(":technic:sulfur_lump", {
inventory_image = "technic_sulfur_lump.png",
})
if minetest.get_modpath("default") then
minetest.register_alias("technic:wrought_iron_ingot", "default:steel_ingot")
minetest.override_item("default:steel_ingot", {
description = S("Wrought Iron Ingot"),
inventory_image = "technic_wrought_iron_ingot.png",
})
elseif minetest.get_modpath("mcl_core") then
minetest.register_alias("technic:wrought_iron_ingot", "mcl_core:iron_ingot")
minetest.override_item("mcl_core:iron_ingot", {
description = S("Wrought Iron Ingot"),
inventory_image = "technic_wrought_iron_ingot.png",
})
end
minetest.register_craftitem(":technic:cast_iron_ingot", {
description = S("Cast Iron Ingot"),
@ -127,6 +136,9 @@ minetest.register_craft({
output = "technic:cast_iron_ingot",
})
minetest.register_craft({
type = 'cooking',
recipe = "technic:cast_iron_ingot",

View File

@ -1,5 +1,34 @@
local modpath = minetest.get_modpath("technic_worldgen")
-- Mineclone Support
stone_sounds = nil
if minetest.get_modpath("mcl_sounds") then
stone_sounds = mcl_sounds.node_sound_stone_defaults()
else
stone_sounds = default.node_sound_stone_defaults()
end
node_sounds = nil
if minetest.get_modpath("mcl_sounds") then
node_sounds = mcl_sounds.node_sound_defaults()
else
node_sounds = default.node_sound_defaults()
end
wood_sounds = nil
if minetest.get_modpath("mcl_sounds") then
wood_sounds = mcl_sounds.node_sound_wood_defaults()
else
wood_sounds = default.node_sound_wood_defaults()
end
leaves_sounds = nil
if minetest.get_modpath("mcl_sounds") then
leaves_sounds = mcl_sounds.node_sound_leaves_defaults()
else
leaves_sounds = default.node_sound_leaves_defaults()
end
technic = rawget(_G, "technic") or {}
technic.worldgen = {
gettext = rawget(_G, "intllib") and intllib.Getter() or function(s) return s end,

View File

@ -1,3 +1,4 @@
name = technic_worldgen
depends = default, basic_materials
optional_depends = intllib, mg, doors, farming, glooptest, mesecons_doors, vessels
depends = basic_materials
optional_depends = intllib, mg, doors, farming, glooptest, mesecons_doors, vessels, default, mcl_core, mcl_sounds
supported_games = minetest_game,mineclone2

View File

@ -6,7 +6,7 @@ minetest.register_node( ":technic:mineral_uranium", {
tiles = { "default_stone.png^technic_mineral_uranium.png" },
is_ground_content = true,
groups = {cracky=3, radioactive=1},
sounds = default.node_sound_stone_defaults(),
sounds = stone_sounds,
drop = "technic:uranium_lump",
})
@ -15,7 +15,7 @@ minetest.register_node( ":technic:mineral_chromium", {
tiles = { "default_stone.png^technic_mineral_chromium.png" },
is_ground_content = true,
groups = {cracky=3},
sounds = default.node_sound_stone_defaults(),
sounds = stone_sounds,
drop = "technic:chromium_lump",
})
@ -24,7 +24,7 @@ minetest.register_node( ":technic:mineral_zinc", {
tiles = { "default_stone.png^technic_mineral_zinc.png" },
is_ground_content = true,
groups = {cracky=3},
sounds = default.node_sound_stone_defaults(),
sounds = stone_sounds,
drop = "technic:zinc_lump",
})
@ -33,7 +33,7 @@ minetest.register_node( ":technic:mineral_lead", {
tiles = { "default_stone.png^technic_mineral_lead.png" },
is_ground_content = true,
groups = {cracky=3},
sounds = default.node_sound_stone_defaults(),
sounds = stone_sounds,
drop = "technic:lead_lump",
})
@ -42,32 +42,35 @@ minetest.register_node( ":technic:mineral_sulfur", {
tiles = { "default_stone.png^technic_mineral_sulfur.png" },
is_ground_content = true,
groups = {cracky=3},
sounds = default.node_sound_stone_defaults(),
sounds = stone_sounds,
drop = "technic:sulfur_lump",
})
if minetest.get_modpath("default") then
minetest.register_node( ":technic:granite", {
description = S("Granite"),
tiles = { "technic_granite.png" },
is_ground_content = true,
groups = {cracky=1},
sounds = default.node_sound_stone_defaults(),
sounds = stone_sounds,
})
minetest.register_node( ":technic:granite_bricks", {
description = S("Granite Bricks"),
tiles = { "technic_granite_bricks.png" },
is_ground_content = false,
groups = {cracky=1},
sounds = default.node_sound_stone_defaults(),
sounds = stone_sounds,
})
end
minetest.register_node( ":technic:marble", {
description = S("Marble"),
tiles = { "technic_marble.png" },
is_ground_content = true,
groups = {cracky=3, marble=1},
sounds = default.node_sound_stone_defaults(),
sounds = stone_sounds,
})
minetest.register_node( ":technic:marble_bricks", {
@ -75,7 +78,7 @@ minetest.register_node( ":technic:marble_bricks", {
tiles = { "technic_marble_bricks.png" },
is_ground_content = false,
groups = {cracky=3},
sounds = default.node_sound_stone_defaults(),
sounds = stone_sounds,
})
minetest.register_node(":technic:uranium_block", {
@ -83,7 +86,7 @@ minetest.register_node(":technic:uranium_block", {
tiles = { "technic_uranium_block.png" },
is_ground_content = true,
groups = {uranium_block=1, cracky=1, level=2, radioactive=2},
sounds = default.node_sound_stone_defaults()
sounds = stone_sounds
})
minetest.register_node(":technic:chromium_block", {
@ -91,7 +94,7 @@ minetest.register_node(":technic:chromium_block", {
tiles = { "technic_chromium_block.png" },
is_ground_content = true,
groups = {cracky=1, level=2},
sounds = default.node_sound_stone_defaults()
sounds = stone_sounds
})
minetest.register_node(":technic:zinc_block", {
@ -99,7 +102,7 @@ minetest.register_node(":technic:zinc_block", {
tiles = { "technic_zinc_block.png" },
is_ground_content = true,
groups = {cracky=1, level=2},
sounds = default.node_sound_stone_defaults()
sounds = stone_sounds
})
minetest.register_node(":technic:lead_block", {
@ -107,22 +110,24 @@ minetest.register_node(":technic:lead_block", {
tiles = { "technic_lead_block.png" },
is_ground_content = true,
groups = {cracky=1, level=2},
sounds = default.node_sound_stone_defaults()
sounds = stone_sounds
})
if minetest.get_modpath("default") then
minetest.register_alias("technic:wrought_iron_block", "default:steelblock")
minetest.override_item("default:steelblock", {
description = S("Wrought Iron Block"),
tiles = { "technic_wrought_iron_block.png" },
})
end
minetest.register_node(":technic:cast_iron_block", {
description = S("Cast Iron Block"),
tiles = { "technic_cast_iron_block.png" },
is_ground_content = true,
groups = {cracky=1, level=2},
sounds = default.node_sound_stone_defaults()
sounds = stone_sounds
})
minetest.register_node(":technic:carbon_steel_block", {
@ -130,7 +135,7 @@ minetest.register_node(":technic:carbon_steel_block", {
tiles = { "technic_carbon_steel_block.png" },
is_ground_content = true,
groups = {cracky=1, level=2},
sounds = default.node_sound_stone_defaults()
sounds = stone_sounds
})
minetest.register_node(":technic:stainless_steel_block", {
@ -138,16 +143,18 @@ minetest.register_node(":technic:stainless_steel_block", {
tiles = { "technic_stainless_steel_block.png" },
is_ground_content = true,
groups = {cracky=1, level=2},
sounds = default.node_sound_stone_defaults()
sounds = stone_sounds
})
if minetest.get_modpath("default") then
minetest.register_craft({
output = 'technic:granite_bricks 4',
recipe = {
{'technic:granite','technic:granite'},
{'technic:granite','technic:granite'}
{granite_ingrediant,granite_ingrediant},
{granite_ingrediant,granite_ingrediant}
}
})
end
minetest.register_craft({
output = 'technic:marble_bricks 4',
@ -172,6 +179,8 @@ local function for_each_registered_node(action)
end
end
if minetest.get_modpath("default") then
for_each_registered_node(function(node_name, node_def)
if node_name ~= "default:steelblock" and
node_name:find("steelblock", 1, true) and
@ -202,3 +211,4 @@ for_each_registered_node(function(node_name, node_def)
end
end)
end

View File

@ -1,148 +1,101 @@
local uranium_params = {
offset = 0,
scale = 1,
spread = {x = 100, y = 100, z = 100},
seed = 420,
octaves = 3,
persist = 0.7
offset = 0,
scale = 1,
spread = {x = 100, y = 100, z = 100},
seed = 420,
octaves = 3,
persist = 0.7
}
local uranium_threshold = 0.55
local chromium_params = {
offset = 0,
scale = 1,
spread = {x = 100, y = 100, z = 100},
seed = 421,
octaves = 3,
persist = 0.7
offset = 0,
scale = 1,
spread = {x = 100, y = 100, z = 100},
seed = 421,
octaves = 3,
persist = 0.7
}
local chromium_threshold = 0.55
local zinc_params = {
offset = 0,
scale = 1,
spread = {x = 100, y = 100, z = 100},
seed = 422,
octaves = 3,
persist = 0.7
offset = 0,
scale = 1,
spread = {x = 100, y = 100, z = 100},
seed = 422,
octaves = 3,
persist = 0.7
}
local zinc_threshold = 0.5
local lead_params = {
offset = 0,
scale = 1,
spread = {x = 100, y = 100, z = 100},
seed = 423,
octaves = 3,
persist = 0.7
offset = 0,
scale = 1,
spread = {x = 100, y = 100, z = 100},
seed = 423,
octaves = 3,
persist = 0.7
}
local lead_threshold = 0.3
local stone_id = minetest.get_modpath("mcl_core") and "mcl_core:stone" or "default:stone"
local lava_source_id = minetest.get_modpath("mcl_core") and "mcl_core:lava_source" or "default:lava_source"
local lava_flowing_id = minetest.get_modpath("mcl_core") and "mcl_core:lava_flowing" or "default:lava_flowing"
-- Uranium
minetest.register_ore({
ore_type = "scatter",
ore = "technic:mineral_uranium",
wherein = "default:stone",
clust_scarcity = 8*8*8,
clust_num_ores = 4,
clust_size = 3,
y_min = -300,
y_max = -80,
noise_params = uranium_params,
noise_threshold = uranium_threshold,
ore_type = "scatter",
ore = "technic:mineral_uranium",
wherein = stone_id,
clust_scarcity = 8*8*8,
clust_num_ores = 4,
clust_size = 3,
y_min = -300,
y_max = -80,
noise_params = uranium_params,
noise_threshold = uranium_threshold,
})
-- Chromium
minetest.register_ore({
ore_type = "scatter",
ore = "technic:mineral_chromium",
wherein = "default:stone",
clust_scarcity = 8*8*8,
clust_num_ores = 2,
clust_size = 3,
y_min = -200,
y_max = -100,
noise_params = chromium_params,
noise_threshold = chromium_threshold,
ore_type = "scatter",
ore = "technic:mineral_chromium",
wherein = stone_id,
clust_scarcity = 8*8*8,
clust_num_ores = 2,
clust_size = 3,
y_min = -200,
y_max = -100,
noise_params = chromium_params,
noise_threshold = chromium_threshold,
})
-- Zinc
minetest.register_ore({
ore_type = "scatter",
ore = "technic:mineral_chromium",
wherein = "default:stone",
clust_scarcity = 6*6*6,
clust_num_ores = 2,
clust_size = 3,
y_min = -31000,
y_max = -200,
flags = "absheight",
noise_params = chromium_params,
noise_threshold = chromium_threshold,
ore_type = "scatter",
ore = "technic:mineral_zinc",
wherein = stone_id,
clust_scarcity = 8*8*8,
clust_num_ores = 5,
clust_size = 7,
y_min = -32,
y_max = 2,
noise_params = zinc_params,
noise_threshold = zinc_threshold,
})
-- Lead
minetest.register_ore({
ore_type = "scatter",
ore = "technic:mineral_zinc",
wherein = "default:stone",
clust_scarcity = 8*8*8,
clust_num_ores = 5,
clust_size = 7,
y_min = -32,
y_max = 2,
noise_params = zinc_params,
noise_threshold = zinc_threshold,
})
minetest.register_ore({
ore_type = "scatter",
ore = "technic:mineral_zinc",
wherein = "default:stone",
clust_scarcity = 6*6*6,
clust_num_ores = 4,
clust_size = 3,
y_min = -31000,
y_max = -32,
flags = "absheight",
noise_params = zinc_params,
noise_threshold = zinc_threshold,
})
minetest.register_ore({
ore_type = "scatter",
ore = "technic:mineral_lead",
wherein = "default:stone",
clust_scarcity = 9*9*9,
clust_num_ores = 5,
clust_size = 3,
y_min = -16,
y_max = 16,
noise_params = lead_params,
noise_threshold = lead_threshold,
})
minetest.register_ore({
ore_type = "scatter",
ore = "technic:mineral_lead",
wherein = "default:stone",
clust_scarcity = 8*8*8,
clust_num_ores = 5,
clust_size = 3,
y_min = -128,
y_max = -16,
noise_params = lead_params,
noise_threshold = lead_threshold,
})
minetest.register_ore({
ore_type = "scatter",
ore = "technic:mineral_lead",
wherein = "default:stone",
clust_scarcity = 6*6*6,
clust_num_ores = 5,
clust_size = 3,
y_min = -31000,
y_max = -128,
flags = "absheight",
noise_params = lead_params,
noise_threshold = lead_threshold,
ore_type = "scatter",
ore = "technic:mineral_lead",
wherein = stone_id,
clust_scarcity = 9*9*9,
clust_num_ores = 5,
clust_size = 3,
y_min = -16,
y_max = 16,
noise_params = lead_params,
noise_threshold = lead_threshold,
})
-- Sulfur
@ -150,78 +103,79 @@ local sulfur_buf = {}
local sulfur_noise
minetest.register_on_generated(function(minp, maxp)
local vm, emin, emax = minetest.get_mapgen_object("voxelmanip")
local a = VoxelArea:new({MinEdge=emin, MaxEdge=emax})
local data = vm:get_data(sulfur_buf)
local pr = PseudoRandom(17 * minp.x + 42 * minp.y + 101 * minp.z)
sulfur_noise = sulfur_noise or minetest.get_perlin(9876, 3, 0.5, 100)
local vm, emin, emax = minetest.get_mapgen_object("voxelmanip")
local a = VoxelArea:new({MinEdge=emin, MaxEdge=emax})
local data = vm:get_data(sulfur_buf)
local pr = PseudoRandom(17 * minp.x + 42 * minp.y + 101 * minp.z)
sulfur_noise = sulfur_noise or minetest.get_perlin(9876, 3, 0.5, 100)
local c_lava = minetest.get_content_id("default:lava_source")
local c_lava_flowing = minetest.get_content_id("default:lava_flowing")
local c_stone = minetest.get_content_id("default:stone")
local c_sulfur = minetest.get_content_id("technic:mineral_sulfur")
local c_lava = minetest.get_content_id(lava_source_id)
local c_lava_flowing = minetest.get_content_id(lava_flowing_id)
local c_stone = minetest.get_content_id(stone_id)
local c_sulfur = minetest.get_content_id("technic:mineral_sulfur")
local grid_size = 5
for x = minp.x + math.floor(grid_size / 2), maxp.x, grid_size do
for y = minp.y + math.floor(grid_size / 2), maxp.y, grid_size do
for z = minp.z + math.floor(grid_size / 2), maxp.z, grid_size do
local c = data[a:index(x, y, z)]
if (c == c_lava or c == c_lava_flowing)
and sulfur_noise:get3d({x = x, y = z, z = z}) >= 0.4 then
for i in a:iter(
math.max(minp.x, x - grid_size),
math.max(minp.y, y - grid_size),
math.max(minp.z, z - grid_size),
math.min(maxp.x, x + grid_size),
math.min(maxp.y, y + grid_size),
math.min(maxp.z, z + grid_size)
) do
if data[i] == c_stone and pr:next(1, 10) <= 7 then
data[i] = c_sulfur
end
end
end
end
end
end
local grid_size = 5
for x = minp.x + math.floor(grid_size / 2), maxp.x, grid_size do
for y = minp.y + math.floor(grid_size / 2), maxp.y, grid_size do
for z = minp.z + math.floor(grid_size / 2), maxp.z, grid_size do
local c = data[a:index(x, y, z)]
if (c == c_lava or c == c_lava_flowing)
and sulfur_noise:get3d({x = x, y = z, z = z}) >= 0.4 then
for i in a:iter(
math.max(minp.x, x - grid_size),
math.max(minp.y, y - grid_size),
math.max(minp.z, z - grid_size),
math.min(maxp.x, x + grid_size),
math.min(maxp.y, y + grid_size),
math.min(maxp.z, z + grid_size)
) do
if data[i] == c_stone and pr:next(1, 10) <= 7 then
data[i] = c_sulfur
end
end
end
end
end
end
vm:set_data(data)
vm:write_to_map(data)
vm:set_data(data)
vm:write_to_map(data)
end)
-- Marble and Granite (if enabled)
if technic.config:get_bool("enable_marble_generation") then
minetest.register_ore({
ore_type = "sheet",
ore = "technic:marble",
wherein = "default:stone",
clust_scarcity = 1,
clust_num_ores = 1,
clust_size = 3,
y_min = -31000,
y_max = -50,
noise_threshold = 0.4,
noise_params = {
offset = 0, scale = 15, spread = {x = 150, y = 150, z = 150},
seed = 23, octaves = 3, persist = 0.70
}
})
minetest.register_ore({
ore_type = "sheet",
ore = "technic:marble",
wherein = stone_id,
clust_scarcity = 1,
clust_num_ores = 1,
clust_size = 3,
y_min = -31000,
y_max = -50,
noise_threshold = 0.4,
noise_params = {
offset = 0, scale = 15, spread = {x = 150, y = 150, z = 150},
seed = 23, octaves = 3, persist = 0.70
}
})
end
if not minetest.get_modpath("mcl_core") then
if technic.config:get_bool("enable_granite_generation") then
minetest.register_ore({
ore_type = "sheet",
ore = "technic:granite",
wherein = "default:stone",
clust_scarcity = 1,
clust_num_ores = 1,
clust_size = 4,
y_min = -31000,
y_max = -150,
noise_threshold = 0.4,
noise_params = {
offset = 0, scale = 15, spread = {x = 130, y = 130, z = 130},
seed = 24, octaves = 3, persist = 0.70
}
})
minetest.register_ore({
ore_type = "sheet",
ore = "technic:granite",
wherein = stone_id,
clust_scarcity = 1,
clust_num_ores = 1,
clust_size = 4,
y_min = -31000,
y_max = -150,
noise_threshold = 0.4,
noise_params = {
offset = 0, scale = 15, spread = {x = 130, y = 130, z = 130},
seed = 24, octaves = 3, persist = 0.70
}
})
end
end

View File

@ -11,7 +11,7 @@ minetest.register_node(":moretrees:rubber_tree_sapling", {
paramtype = "light",
walkable = false,
groups = {dig_immediate=3, flammable=2, sapling=1},
sounds = default.node_sound_defaults(),
sounds = node_sounds,
})
minetest.register_craft({
@ -26,7 +26,7 @@ minetest.register_node(":moretrees:rubber_tree_trunk", {
"technic_rubber_tree_full.png"},
groups = {tree=1, snappy=1, choppy=2, oddly_breakable_by_hand=1,
flammable=2},
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
})
minetest.register_node(":moretrees:rubber_tree_trunk_empty", {
@ -35,7 +35,7 @@ minetest.register_node(":moretrees:rubber_tree_trunk_empty", {
"technic_rubber_tree_empty.png"},
groups = {tree=1, snappy=1, choppy=2, oddly_breakable_by_hand=1,
flammable=2, not_in_creative_inventory=1},
sounds = default.node_sound_wood_defaults(),
sounds = wood_sounds,
})
minetest.register_node(":moretrees:rubber_tree_leaves", {
@ -55,7 +55,7 @@ minetest.register_node(":moretrees:rubber_tree_leaves", {
}
}
},
sounds = default.node_sound_leaves_defaults(),
sounds = leaves_sounds,
})
technic.rubber_tree_model={

View File

@ -1,3 +1,3 @@
name = wrench
depends = default
optional_depends = technic, technic_chests, technic_worldgen, intllib
optional_depends = technic, technic_chests, technic_worldgen, intllib, default, mcl_core
supported_games = minetest_game,mineclone2

View File

@ -23,7 +23,7 @@ local STRING, FLOAT =
wrench.META_TYPE_FLOAT
wrench.registered_nodes = {
["default:chest"] = {
[chest_ingrediant] = {
lists = {"main"},
},
["default:chest_locked"] = {