1
0
mirror of https://github.com/mt-mods/basic_materials.git synced 2025-06-29 06:30:38 +02:00

7 Commits

Author SHA1 Message Date
e4b766cd5c formatting fixes 2022-03-02 16:56:03 +11:00
f7039e09f3 Merge branch 'master' into hades 2022-03-02 16:33:13 +11:00
aa60caa261 Better compatibility with Hades Revisited. (#11)
* add hades revisted crafts and update sound api for sounds (#10)

* add hades revisted crafts and update sound api for sounds

* fix https://github.com/mt-mods/basic_materials/issues/9

* fix https://github.com/mt-mods/basic_materials/issues/9 part 2

* Add hades_bucket to crafts. Fix some bugs.

* Fix dependencies and recipes. Disable silicon if hades_materials is aviable.

* Remove unused dependence.

* Clear original recipe for palstic base from hades_materials. Prevent dual plastic cook recipe.

* Use register_alias_force.

* Fix spaces vs tabs.

Co-authored-by: wsor4035 <24964441+wsor4035@users.noreply.github.com>
2022-03-01 19:03:35 -05:00
0837b7d766 refactor if statment 2022-02-27 11:30:27 -05:00
6e41b10e5f add missing optional dep 2022-02-27 11:28:43 -05:00
d14a1b4e52 if statement bugfix 2022-02-27 11:27:49 -05:00
29ade1253a add hades revisted crafts and update sound api for sounds 2022-02-27 11:24:35 -05:00
3 changed files with 256 additions and 228 deletions

View File

@ -127,4 +127,11 @@ minetest.register_craftitem("basic_materials:gear_steel", {
minetest.register_craftitem("basic_materials:padlock", { minetest.register_craftitem("basic_materials:padlock", {
description = S("Padlock"), description = S("Padlock"),
inventory_image = "basic_materials_padlock.png" inventory_image = "basic_materials_padlock.png"
}) })
if minetest.get_modpath("hades_materials") then
minetest.register_alias_force("basic_materials:plastic_sheet", "hades_materials:plastic_sheeting")
minetest.register_alias_force("basic_materials:paraffin", "hades_materials:plastic_base")
minetest.register_alias_force("hades_extramaterials:silicon", "hades_materials:silicon")
end

View File

@ -1,98 +1,108 @@
local materials = { local materials = {
dirt = "default:dirt", dirt = "default:dirt",
sand = "default:sand", sand = "default:sand",
gravel = "default:gravel", gravel = "default:gravel",
copper_ingot = "default:copper_ingot", copper_ingot = "default:copper_ingot",
steel_ingot = "default:steel_ingot", steel_ingot = "default:steel_ingot",
gold_ingot = "default:gold_ingot", gold_ingot = "default:gold_ingot",
tin_ingot = "default:tin_ingot", tin_ingot = "default:tin_ingot",
mese_crystal_fragment = "default:mese_crystal_fragment", mese_crystal_fragment = "default:mese_crystal_fragment",
torch = "default:torch", torch = "default:torch",
diamond = "default:diamond", diamond = "default:diamond",
clay_lump = "default:clay_lump", clay_lump = "default:clay_lump",
water_bucket = "bucket:bucket_water", water_bucket = "bucket:bucket_water",
empty_bucket = "bucket:bucket_empty", empty_bucket = "bucket:bucket_empty",
dye_dark_grey = "dye:dark_grey", dye_dark_grey = "dye:dark_grey",
silicon = "mesecons_materials:silicon",
} }
if minetest.get_modpath("mcl_core") then if minetest.get_modpath("mcl_core") then
materials = { materials = {
dirt = "mcl_core:dirt", dirt = "mcl_core:dirt",
sand = "mcl_core:sand", sand = "mcl_core:sand",
gravel = "mcl_core:gravel", gravel = "mcl_core:gravel",
steel_ingot = "mcl_core:iron_ingot", steel_ingot = "mcl_core:iron_ingot",
gold_ingot = "mcl_core:gold_ingot", gold_ingot = "mcl_core:gold_ingot",
mese_crystal_fragment = "mesecons:redstone", mese_crystal_fragment = "mesecons:redstone",
torch = "mcl_torches:torch", torch = "mcl_torches:torch",
diamond = "mcl_core:diamond", diamond = "mcl_core:diamond",
clay_lump = "mcl_core:clay_lump", clay_lump = "mcl_core:clay_lump",
water_bucket = "mcl_buckets:bucket_water", water_bucket = "mcl_buckets:bucket_water",
empty_bucket = "mcl_buckets:bucket_empty", empty_bucket = "mcl_buckets:bucket_empty",
dye_dark_grey = "mcl_dye:dark_grey", dye_dark_grey = "mcl_dye:dark_grey",
--use iron where no equivalent -- Use iron where no equivalent
copper_ingot = "mcl_core:iron_ingot", copper_ingot = "mcl_core:iron_ingot",
tin_ingot = "mcl_core:iron_ingot", tin_ingot = "mcl_core:iron_ingot",
silver_ingot = "mcl_core:iron_ingot", silver_ingot = "mcl_core:iron_ingot",
} silicon = "mesecons_materials:silicon",
}
elseif minetest.get_modpath("fl_ores") and minetest.get_modpath("fl_stone") then elseif minetest.get_modpath("fl_ores") and minetest.get_modpath("fl_stone") then
materials = { materials = {
dirt = "fl_topsoil:dirt", dirt = "fl_topsoil:dirt",
sand = "fl_stone:sand", sand = "fl_stone:sand",
gravel = "fl_topsoil:gravel", gravel = "fl_topsoil:gravel",
steel_ingot = "fl_ores:iron_ingot", steel_ingot = "fl_ores:iron_ingot",
gold_ingot = "fl_ores:gold_ingot", gold_ingot = "fl_ores:gold_ingot",
mese_crystal_fragment = "fl_ores:iron_ingot", mese_crystal_fragment = "fl_ores:iron_ingot",
torch = "fl_light_sources:torch", torch = "fl_light_sources:torch",
diamond = "fl_ores:diamond", diamond = "fl_ores:diamond",
clay_lump = "fl_bricks:clay_lump", clay_lump = "fl_bricks:clay_lump",
water_bucket = "fl_bucket:bucket_water", water_bucket = "fl_bucket:bucket_water",
empty_bucket = "fl_bucket:bucket", empty_bucket = "fl_bucket:bucket",
dye_dark_grey = "fl_dyes:dark_grey_dye", dye_dark_grey = "fl_dyes:dark_grey_dye",
copper_ingot = "fl_ores:copper_ingot", copper_ingot = "fl_ores:copper_ingot",
tin_ingot = "fl_ores:tin_ingot", tin_ingot = "fl_ores:tin_ingot",
silver_ingot = "fl_ores:iron_ingot", silver_ingot = "fl_ores:iron_ingot",
} silicon = "mesecons_materials:silicon",
}
elseif minetest.get_modpath("hades_core") then elseif minetest.get_modpath("hades_core") then
materials = { materials = {
dirt = "fl_topsoil:dirt", dirt = "hades_core:dirt",
sand = "hades_core:fertile_sand", sand = "hades_core:fertile_sand",
gravel = "hades_core:gravel", gravel = "hades_core:gravel",
steel_ingot = "hades_core:steel_ingot", steel_ingot = "hades_core:steel_ingot",
gold_ingot = "hades_core:gold_ingot", gold_ingot = "hades_core:gold_ingot",
mese_crystal_fragment = "hades_core:mese_crystal_fragment", mese_crystal_fragment = "hades_core:mese_crystal_fragment",
torch = "hades_torches:torch", torch = "hades_torches:torch",
diamond = "hades_core:diamond", diamond = "hades_core:diamond",
clay_lump = "hades_core:clay_lump", clay_lump = "hades_core:clay_lump",
dye_dark_grey = "dye:dark_grey_dye", dye_dark_grey = "dye:dark_grey",
copper_ingot = "hades_core:copper_ingot", copper_ingot = "hades_core:copper_ingot",
tin_ingot = "hades_core:tin_ingot", tin_ingot = "hades_core:tin_ingot",
--[[ --[[
since hades doesnt have buckets or water for the user, Since hades doesnt have buckets or water for the user,
using dirt from near water to pull the water out using dirt from near water to pull the water out
]] ]]
water_bucket = "hades_core:fertile_sand", water_bucket = "hades_core:dirt",
empty_bucket = "hades_core:dirt", empty_bucket = "hades_core:fertile_sand",
--set this to steel unless hadesextraores is present -- Set this to steel unless hadesextraores is present
silver_ingot = "hades_core:steel_ingot", silver_ingot = "hades_core:steel_ingot",
} silicon = "hades_materials:silicon",
}
if minetest.get_modpath("hades_extraores") then if minetest.get_modpath("hades_bucket") then
materials["silver_ingot"] = "hades_extraores:silver_ingot" materials["water_bucket"] = "hades_bucket:bucket_water"
end materials["empty_bucket"] = "hades_bucket:bucket_empty"
end
if minetest.get_modpath("hades_extraores") then
materials["silver_ingot"] = "hades_extraores:silver_ingot"
end
end end
--craft recipes local have_hades_materials = minetest.get_modpath("hades_materials")
-- Craft recipes
minetest.register_craft({ minetest.register_craft({
output = "basic_materials:chainlink_brass 12", output = "basic_materials:chainlink_brass 12",
recipe = { recipe = {
{"", "basic_materials:brass_ingot", "basic_materials:brass_ingot"}, {"", "basic_materials:brass_ingot", "basic_materials:brass_ingot"},
{ "basic_materials:brass_ingot", "", "basic_materials:brass_ingot" }, {"basic_materials:brass_ingot", "", "basic_materials:brass_ingot"},
{ "basic_materials:brass_ingot", "basic_materials:brass_ingot", "" }, {"basic_materials:brass_ingot", "basic_materials:brass_ingot", ""},
}, },
}) })
minetest.register_craft({ minetest.register_craft({
output = 'basic_materials:chain_steel 2', output = "basic_materials:chain_steel 2",
recipe = { recipe = {
{"basic_materials:chainlink_steel"}, {"basic_materials:chainlink_steel"},
{"basic_materials:chainlink_steel"}, {"basic_materials:chainlink_steel"},
@ -101,7 +111,7 @@ minetest.register_craft({
}) })
minetest.register_craft({ minetest.register_craft({
output = 'basic_materials:chain_brass 2', output = "basic_materials:chain_brass 2",
recipe = { recipe = {
{"basic_materials:chainlink_brass"}, {"basic_materials:chainlink_brass"},
{"basic_materials:chainlink_brass"}, {"basic_materials:chainlink_brass"},
@ -112,46 +122,55 @@ minetest.register_craft({
minetest.register_craft( { minetest.register_craft( {
type = "shapeless", type = "shapeless",
output = "basic_materials:brass_ingot 9", output = "basic_materials:brass_ingot 9",
recipe = { "basic_materials:brass_block" }, recipe = {"basic_materials:brass_block"},
}) })
minetest.register_craft( { minetest.register_craft( {
output = "basic_materials:brass_block", output = "basic_materials:brass_block",
recipe = { recipe = {
{ "basic_materials:brass_ingot", "basic_materials:brass_ingot", "basic_materials:brass_ingot" }, {"basic_materials:brass_ingot", "basic_materials:brass_ingot", "basic_materials:brass_ingot"},
{ "basic_materials:brass_ingot", "basic_materials:brass_ingot", "basic_materials:brass_ingot" }, {"basic_materials:brass_ingot", "basic_materials:brass_ingot", "basic_materials:brass_ingot"},
{ "basic_materials:brass_ingot", "basic_materials:brass_ingot", "basic_materials:brass_ingot" }, {"basic_materials:brass_ingot", "basic_materials:brass_ingot", "basic_materials:brass_ingot"},
}, },
}) })
minetest.register_craft( { minetest.register_craft( {
output = "basic_materials:plastic_strip 9", output = "basic_materials:plastic_strip 9",
recipe = { recipe = {
{ "basic_materials:plastic_sheet", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet" } {"basic_materials:plastic_sheet", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet"}
}, },
}) })
minetest.register_craft( { minetest.register_craft( {
output = "basic_materials:empty_spool 3", output = "basic_materials:empty_spool 3",
recipe = { recipe = {
{ "basic_materials:plastic_sheet", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet" }, {"basic_materials:plastic_sheet", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet"},
{ "", "basic_materials:plastic_sheet", "" }, {"", "basic_materials:plastic_sheet", ""},
{ "basic_materials:plastic_sheet", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet" } {"basic_materials:plastic_sheet", "basic_materials:plastic_sheet", "basic_materials:plastic_sheet"}
}, },
}) })
if have_hades_materials then
minetest.clear_craft({
type = "shapeless",
recipe = {"group:leaves", "group:leaves", "group:leaves", "group:leaves", "group:leaves", "group:leaves"}
})
end
minetest.register_craft({ minetest.register_craft({
type = "shapeless", type = "shapeless",
output = "basic_materials:oil_extract 2", output = "basic_materials:oil_extract 2",
recipe = {"group:leaves", "group:leaves", "group:leaves", "group:leaves", "group:leaves", "group:leaves"} recipe = {"group:leaves", "group:leaves", "group:leaves", "group:leaves", "group:leaves", "group:leaves"}
}) })
--cooking recipes -- Cooking recipes
minetest.register_craft({ if not have_hades_materials then
minetest.register_craft({
type = "cooking", type = "cooking",
output = "basic_materials:plastic_sheet", output = "basic_materials:plastic_sheet",
recipe = "basic_materials:paraffin", recipe = "basic_materials:paraffin",
}) })
end
minetest.register_craft({ minetest.register_craft({
type = "cooking", type = "cooking",
@ -166,7 +185,7 @@ minetest.register_craft({
cooktime = 8 cooktime = 8
}) })
--fuel recipes -- Fuel recipes
minetest.register_craft({ minetest.register_craft({
type = "fuel", type = "fuel",
recipe = "basic_materials:plastic_sheet", recipe = "basic_materials:plastic_sheet",
@ -186,191 +205,193 @@ minetest.register_craft({
}) })
minetest.register_craft({ minetest.register_craft({
output = 'basic_materials:concrete_block 6', output = "basic_materials:concrete_block 6",
recipe = { recipe = {
{'group:sand', 'basic_materials:wet_cement', materials.gravel}, {"group:sand", "basic_materials:wet_cement", materials.gravel},
{'basic_materials:steel_bar', 'basic_materials:wet_cement', 'basic_materials:steel_bar'}, {"basic_materials:steel_bar", "basic_materials:wet_cement", "basic_materials:steel_bar"},
{materials.gravel, 'basic_materials:wet_cement', 'group:sand'}, {materials.gravel, "basic_materials:wet_cement", "group:sand"},
} }
}) })
minetest.register_craft( { minetest.register_craft( {
output = "basic_materials:motor 2", output = "basic_materials:motor 2",
recipe = { recipe = {
{ materials.mese_crystal_fragment, "basic_materials:copper_wire", "basic_materials:plastic_sheet" }, {materials.mese_crystal_fragment, "basic_materials:copper_wire", "basic_materials:plastic_sheet"},
{ materials.copper_ingot, materials.steel_ingot, materials.steel_ingot }, {materials.copper_ingot, materials.steel_ingot, materials.steel_ingot},
{ materials.mese_crystal_fragment, "basic_materials:copper_wire", "basic_materials:plastic_sheet" } {materials.mese_crystal_fragment, "basic_materials:copper_wire", "basic_materials:plastic_sheet"}
}, },
replacements = { replacements = {
{ "basic_materials:copper_wire", "basic_materials:empty_spool" }, {"basic_materials:copper_wire", "basic_materials:empty_spool"},
{ "basic_materials:copper_wire", "basic_materials:empty_spool" }, {"basic_materials:copper_wire", "basic_materials:empty_spool"},
} }
}) })
minetest.register_craft( { minetest.register_craft( {
output = "basic_materials:heating_element 2", output = "basic_materials:heating_element 2",
recipe = { recipe = {
{ materials.copper_ingot, materials.mese_crystal_fragment, materials.copper_ingot } {materials.copper_ingot, materials.mese_crystal_fragment, materials.copper_ingot}
}, },
}) })
minetest.register_craft({ minetest.register_craft({
--type = "shapeless", --type = "shapeless",
output = "basic_materials:energy_crystal_simple 2", output = "basic_materials:energy_crystal_simple 2",
recipe = { recipe = {
{ materials.mese_crystal_fragment, materials.torch, materials.mese_crystal_fragment }, {materials.mese_crystal_fragment, materials.torch, materials.mese_crystal_fragment},
{ materials.diamond, materials.gold_ingot, materials.diamond } {materials.diamond, materials.gold_ingot, materials.diamond}
}, },
}) })
minetest.register_craft( { minetest.register_craft( {
output = "basic_materials:copper_wire 2", output = "basic_materials:copper_wire 2",
type = "shapeless", type = "shapeless",
recipe = { recipe = {
materials.copper_ingot, materials.copper_ingot,
"basic_materials:empty_spool", "basic_materials:empty_spool",
"basic_materials:empty_spool", "basic_materials:empty_spool",
}, },
}) })
minetest.register_craft( { minetest.register_craft( {
output = "basic_materials:gold_wire 2", output = "basic_materials:gold_wire 2",
type = "shapeless", type = "shapeless",
recipe = { recipe = {
materials.gold_ingot, materials.gold_ingot,
"basic_materials:empty_spool", "basic_materials:empty_spool",
"basic_materials:empty_spool", "basic_materials:empty_spool",
}, },
}) })
minetest.register_craft( { minetest.register_craft( {
output = "basic_materials:steel_wire 2", output = "basic_materials:steel_wire 2",
type = "shapeless", type = "shapeless",
recipe = { recipe = {
materials.steel_ingot, materials.steel_ingot,
"basic_materials:empty_spool", "basic_materials:empty_spool",
"basic_materials:empty_spool", "basic_materials:empty_spool",
}, },
}) })
minetest.register_craft( { minetest.register_craft( {
output = "basic_materials:steel_strip 12", output = "basic_materials:steel_strip 12",
recipe = { recipe = {
{ "", materials.steel_ingot, "" }, {"", materials.steel_ingot, ""},
{ materials.steel_ingot, "", "" }, {materials.steel_ingot, "", ""},
}, },
}) })
minetest.register_craft( { minetest.register_craft( {
output = "basic_materials:copper_strip 12", output = "basic_materials:copper_strip 12",
recipe = { recipe = {
{ "", materials.copper_ingot, "" }, {"", materials.copper_ingot, ""},
{ materials.copper_ingot, "", "" }, {materials.copper_ingot, "", ""},
}, },
}) })
minetest.register_craft( { minetest.register_craft( {
output = "basic_materials:steel_bar 6", output = "basic_materials:steel_bar 6",
recipe = { recipe = {
{ "", "", materials.steel_ingot }, {"", "", materials.steel_ingot},
{ "", materials.steel_ingot, "" }, {"", materials.steel_ingot, ""},
{ materials.steel_ingot, "", "" }, {materials.steel_ingot, "", ""},
}, },
}) })
minetest.register_craft( { minetest.register_craft( {
output = "basic_materials:padlock 2", output = "basic_materials:padlock 2",
recipe = { recipe = {
{ "basic_materials:steel_bar" }, {"basic_materials:steel_bar"},
{ materials.steel_ingot }, {materials.steel_ingot},
{ materials.steel_ingot }, {materials.steel_ingot},
}, },
}) })
minetest.register_craft({ minetest.register_craft({
output = "basic_materials:chainlink_steel 12", output = "basic_materials:chainlink_steel 12",
recipe = { recipe = {
{"", materials.steel_ingot, materials.steel_ingot}, {"", materials.steel_ingot, materials.steel_ingot},
{ materials.steel_ingot, "", materials.steel_ingot }, {materials.steel_ingot, "", materials.steel_ingot},
{ materials.steel_ingot, materials.steel_ingot, "" }, {materials.steel_ingot, materials.steel_ingot, ""},
}, },
}) })
minetest.register_craft( { minetest.register_craft( {
output = "basic_materials:gear_steel 6", output = "basic_materials:gear_steel 6",
recipe = { recipe = {
{ "", materials.steel_ingot, "" }, {"", materials.steel_ingot, ""},
{ materials.steel_ingot,"basic_materials:chainlink_steel", materials.steel_ingot }, {materials.steel_ingot,"basic_materials:chainlink_steel", materials.steel_ingot},
{ "", materials.steel_ingot, "" } {"", materials.steel_ingot, ""}
}, },
}) })
minetest.register_craft( { minetest.register_craft( {
type = "shapeless", type = "shapeless",
output = "basic_materials:terracotta_base 8", output = "basic_materials:terracotta_base 8",
recipe = { recipe = {
materials.water_bucket, materials.water_bucket,
materials.clay_lump, materials.clay_lump,
materials.gravel, materials.gravel,
}, },
replacements = {{materials.water_bucket, materials.empty_bucket}}, replacements = {{materials.water_bucket, materials.empty_bucket}},
}) })
minetest.register_craft({ minetest.register_craft({
type = "shapeless", type = "shapeless",
output = "basic_materials:wet_cement 3", output = "basic_materials:wet_cement 3",
recipe = { recipe = {
materials.dirt, materials.dirt,
materials.dye_dark_grey, materials.dye_dark_grey,
materials.dye_dark_grey, materials.dye_dark_grey,
materials.dye_dark_grey, materials.dye_dark_grey,
materials.water_bucket materials.water_bucket
}, },
replacements = {{materials.water_bucket, materials.empty_bucket}}, replacements = {{materials.water_bucket, materials.empty_bucket}},
}) })
minetest.register_craft( { if not have_hades_materials then
output = "mesecons_materials:silicon 4", minetest.register_craft( {
recipe = { output = materials.silicon.." 4",
{ materials.sand, materials.sand }, recipe = {
{ materials.sand, materials.steel_ingot }, {materials.sand, materials.sand},
}, {materials.sand, materials.steel_ingot},
}) },
})
end
minetest.register_craft( { minetest.register_craft( {
output = "basic_materials:ic 4", output = "basic_materials:ic 4",
recipe = { recipe = {
{ "mesecons_materials:silicon", "mesecons_materials:silicon" }, {materials.silicon, materials.silicon},
{ "mesecons_materials:silicon", materials.copper_ingot }, {materials.silicon, materials.copper_ingot},
}, },
}) })
-- Without moreores, there still should be a way to create brass. -- Without moreores, there still should be a way to create brass.
minetest.register_craft( { minetest.register_craft( {
output = "basic_materials:brass_ingot 9", output = "basic_materials:brass_ingot 9",
recipe = { recipe = {
{materials.copper_ingot, materials.tin_ingot, materials.copper_ingot}, {materials.copper_ingot, materials.tin_ingot, materials.copper_ingot},
{materials.gold_ingot, materials.copper_ingot, materials.tin_ingot}, {materials.gold_ingot, materials.copper_ingot, materials.tin_ingot},
{materials.copper_ingot, materials.tin_ingot, materials.copper_ingot}, {materials.copper_ingot, materials.tin_ingot, materials.copper_ingot},
}, },
}) })
minetest.register_craft( { minetest.register_craft( {
output = "basic_materials:silver_wire 2", output = "basic_materials:silver_wire 2",
type = "shapeless", type = "shapeless",
recipe = { recipe = {
"moreores:silver_ingot", materials.silver_ingot,
"basic_materials:empty_spool", "basic_materials:empty_spool",
"basic_materials:empty_spool", "basic_materials:empty_spool",
}, },
}) })
minetest.register_craft( { minetest.register_craft( {
type = "shapeless", type = "shapeless",
output = "basic_materials:brass_ingot 3", output = "basic_materials:brass_ingot 3",
recipe = { recipe = {
materials.copper_ingot, materials.copper_ingot,
materials.copper_ingot, materials.copper_ingot,
materials.silver_ingot, materials.silver_ingot,
}, },
}) })

View File

@ -1,3 +1,3 @@
name = basic_materials name = basic_materials
optional_depends = moreores, default, mesecons_materials, dye, bucket, fl_stone, fl_trees, mcl_sounds, hades_sounds optional_depends = moreores, default, mesecons_materials, dye, bucket, fl_stone, fl_trees, mcl_sounds, hades_sounds, hades_materials, hades_bucket, hades_extraores
min_minetest_version = 5.2.0 min_minetest_version = 5.2.0