MineClone2/mods/blocks/building/mineral.lua

306 lines
10 KiB
Lua

local common_defs = {
copper = {
_mcl_blast_resistance = 6,
_mcl_hardness = 3,
groups = {building_blocks = 1, pickaxey = 3},
sounds = mcl_sounds.node_sound_metal_defaults()
},
quartz = {
_mcl_blast_resistance = 0.8,
_mcl_hardness = 0.8,
groups = {building_blocks = 1, pickaxey = 1},
sounds = mcl_sounds.node_sound_stone_defaults()
}
}
local copper_blocks = {
["chiseled_copper"] = {
_mcl_oxidized_variant = "exposed_chiseled_copper",
groups = {oxidizable = 1}
},
["copper_block"] = {
_mcl_oxidized_variant = "exposed_copper",
description = "Block of Copper",
groups = {oxidizable = 1, stonecuttable = 1}
},
["copper_grate"] = {
_mcl_oxidized_variant = "exposed_copper_grate",
drawtype = "allfaces",
groups = {oxidizable = 1},
paramtype = "light",
sunlight_propagates = true
},
["cut_copper"] = {
_mcl_oxidized_variant = "exposed_cut_copper",
groups = {oxidizable = 1, stonecuttable = 1}
},
["exposed_chiseled_copper"] = {
_mcl_oxidized_variant = "weathered_chiseled_copper",
_mcl_stripped_variant = "chiseled_copper",
groups = {oxidizable = 1}
},
["exposed_copper"] = {
_mcl_oxidized_variant = "weathered_copper",
_mcl_stripped_variant = "copper_block",
groups = {oxidizable = 1, stonecuttable = 1}
},
["exposed_copper_grate"] = {
_mcl_oxidized_variant = "weathered_copper_grate",
_mcl_stripped_variant = "copper_grate",
drawtype = "allfaces",
groups = {oxidizable = 1},
paramtype = "light",
sunlight_propagates = true
},
["exposed_cut_copper"] = {
_mcl_oxidized_variant = "weathered_cut_copper",
_mcl_stripped_variant = "cut_copper",
groups = {oxidizable = 1, stonecuttable = 1}
},
["oxidized_chiseled_copper"] = {
_mcl_stripped_variant = "weathered_chiseled_copper"
},
["oxidized_copper"] = {
_mcl_stripped_variant = "weathered_copper",
groups = {stonecuttable = 1}
},
["oxidized_copper_grate"] = {
_mcl_stripped_variant = "weathered_copper_grate",
drawtype = "allfaces",
paramtype = "light",
sunlight_propagates = true
},
["oxidized_cut_copper"] = {
_mcl_stripped_variant = "weathered_cut_copper",
groups = {stonecuttable = 1}
},
["waxed_chiseled_copper"] = {
_mcl_stripped_variant = "chiseled_copper",
tiles = {"building_chiseled_copper.png"}
},
["waxed_copper_block"] = {
_mcl_stripped_variant = "copper_block",
description = "Waxed Block of Copper",
groups = {stonecuttable = 1},
tiles = {"building_copper_block.png"}
},
["waxed_copper_grate"] = {
_mcl_stripped_variant = "copper_grate",
drawtype = "allfaces",
paramtype = "light",
sunlight_propagates = true,
tiles = {"building_copper_grate.png"}
},
["waxed_cut_copper"] = {
_mcl_stripped_variant = "cut_copper",
groups = {stonecuttable = 1},
tiles = {"building_cut_copper.png"}
},
["waxed_exposed_chiseled_copper"] = {
_mcl_stripped_variant = "exposed_chiseled_copper",
tiles = {"building_exposed_chiseled_copper.png"}
},
["waxed_exposed_copper"] = {
_mcl_stripped_variant = "exposed_copper",
groups = {stonecuttable = 1},
tiles = {"building_exposed_copper.png"}
},
["waxed_exposed_copper_grate"] = {
_mcl_stripped_variant = "exposed_copper_grate",
drawtype = "allfaces",
paramtype = "light",
sunlight_propagates = true,
tiles = {"building_exposed_copper_grate.png"}
},
["waxed_exposed_cut_copper"] = {
_mcl_stripped_variant = "exposed_cut_copper",
groups = {stonecuttable = 1},
tiles = {"building_exposed_cut_copper.png"}
},
["waxed_oxidized_chiseled_copper"] = {
_mcl_stripped_variant = "oxidized_chiseled_copper",
tiles = {"building_oxidized_chiseled_copper.png"}
},
["waxed_oxidized_copper"] = {
_mcl_stripped_variant = "oxidized_copper",
tiles = {"building_oxidized_copper.png"}
},
["waxed_oxidized_copper_grate"] = {
_mcl_stripped_variant = "oxidized_copper_grate",
drawtype = "allfaces",
paramtype = "light",
sunlight_propagates = true,
tiles = {"building_oxidized_copper_grate.png"}
},
["waxed_oxidized_cut_copper"] = {
_mcl_stripped_variant = "oxidized_cut_copper",
groups = {stonecuttable = 1},
tiles = {"building_oxidized_cut_copper.png"}
},
["waxed_weathered_chiseled_copper"] = {
_mcl_stripped_variant = "weathered_chiseled_copper",
tiles = {"building_weathered_chiseled_copper.png"}
},
["waxed_weathered_copper"] = {
_mcl_stripped_variant = "weathered_copper",
groups = {stonecuttable = 1},
tiles = {"building_weathered_copper.png"}
},
["waxed_weathered_copper_grate"] = {
_mcl_stripped_variant = "weathered_copper_grate",
drawtype = "allfaces",
paramtype = "light",
sunlight_propagates = true,
tiles = {"building_weathered_copper_grate.png"}
},
["waxed_weathered_cut_copper"] = {
_mcl_stripped_variant = "weathered_cut_copper",
groups = {stonecuttable = 1},
tiles = {"building_weathered_cut_copper.png"}
},
["weathered_chiseled_copper"] = {
_mcl_oxidized_variant = "oxidized_chiseled_copper",
_mcl_stripped_variant = "exposed_chiseled_copper"
},
["weathered_copper"] = {
_mcl_oxidized_variant = "oxidized_copper",
_mcl_stripped_variant = "exposed_copper",
groups = {stonecuttable = 1}
},
["weathered_copper_grate"] = {
_mcl_oxidized_variant = "oxidized_copper_grate",
_mcl_stripped_variant = "exposed_copper_grate",
drawtype = "allfaces",
paramtype = "light",
sunlight_propagates = true
},
["weathered_cut_copper"] = {
_mcl_oxidized_variant = "oxidized_cut_copper",
_mcl_stripped_variant = "weathered_cut_copper",
groups = {stonecuttable = 1}
}
}
for identifier, definitions in pairs(copper_blocks) do
voxelibre.register_block(identifier, table.merge(common_defs.copper, definitions))
end
local quartz_blocks = {
["chiseled_quartz_block"] = {
groups = {stonecuttable = 1},
on_place = minetest.rotate_node,
paramtype2 = "facedir",
tiles = {type = "loglike"}
},
["quartz_block"] = {
description = "Block of Quartz",
groups = {stonecuttable = 1},
tiles = {
"building_quartz_block_top.png",
"building_quartz_block_bottom.png",
"building_quartz_block_side.png"
}
},
["quartz_bricks"] = {},
["quartz_pillar"] = {
groups = {stonecuttable = 1},
on_place = minetest.rotate_node,
paramtype2 = "facedir",
tiles = {type = "loglike"}
},
["smooth_quartz_block"] = {
_mcl_blast_resistance = 6,
_mcl_hardness = 2,
groups = {stonecuttable = 1},
tiles = {"building_quartz_block_bottom.png"}
}
}
for identifier, definitions in pairs(quartz_blocks) do
voxelibre.register_block(identifier, table.merge(common_defs.quartz, definitions))
end
local blocks = {
["amethyst_block"] = {
_mcl_blast_resistance = 1.5,
_mcl_hardness = 1.5,
description = "Block of Amethyst",
groups = {building_blocks = 1, natural_blocks = 1, pickaxey = 1},
sounds = mcl_sounds.node_sound_glass_defaults()
},
["coal_block"] = {
_mcl_blast_resistance = 6,
_mcl_hardness = 5,
description = "Block of Coal",
groups = {building_blocks = 1, fuel = 800, pickaxey = 1},
sounds = mcl_sounds.node_sound_stone_defaults()
},
["diamond_block"] = {
_mcl_blast_resistance = 6,
_mcl_hardness = 5,
description = "Block of Diamond",
groups = {beacon_base_blocks = 1, building_blocks = 1, pickaxey = 4},
sounds = mcl_sounds.node_sound_metal_defaults()
},
["emerald_block"] = {
_mcl_blast_resistance = 6,
_mcl_hardness = 5,
description = "Block of Emerald",
groups = {beacon_base_blocks = 1, building_blocks = 1, pickaxey = 4},
sounds = mcl_sounds.node_sound_metal_defaults()
},
["gold_block"] = {
_mcl_blast_resistance = 6,
_mcl_hardness = 3,
description = "Block of Gold",
groups = {beacon_base_blocks = 1, building_blocks = 1, guarded_by_piglins = 1, pickaxey = 4},
sounds = mcl_sounds.node_sound_metal_defaults()
},
["iron_block"] = {
_mcl_blast_resistance = 6,
_mcl_hardness = 5,
description = "Block of Iron",
groups = {beacon_base_blocks = 1, building_blocks = 1, pickaxey = 3},
sounds = mcl_sounds.node_sound_metal_defaults()
},
["lapis_block"] = {
_mcl_blast_resistance = 3,
_mcl_hardness = 3,
description = "Block of Lapis Lazuli",
groups = {building_blocks = 1, pickaxey = 3},
sounds = mcl_sounds.node_sound_stone_defaults()
},
["netherite_block"] = {
_mcl_blast_resistance = 1200,
_mcl_hardness = 50,
description = "Block of Netherite",
groups = {beacon_base_blocks = 1, building_blocks = 1, pickaxey = 5},
sounds = mcl_sounds.node_sound_metal_defaults()
},
["raw_copper_block"] = {
_mcl_blast_resistance = 6,
_mcl_hardness = 5,
description = "Block of Raw Copper",
groups = {building_blocks = 1, pickaxey = 3},
sounds = mcl_sounds.node_sound_stone_defaults()
},
["raw_gold_block"] = {
_mcl_blast_resistance = 6,
_mcl_hardness = 5,
description = "Block of Raw Gold",
groups = {building_blocks = 1, pickaxey = 4},
sounds = mcl_sounds.node_sound_stone_defaults()
},
["raw_iron_block"] = {
_mcl_blast_resistance = 6,
_mcl_hardness = 5,
description = "Block of Raw Iron",
groups = {building_blocks = 1, pickaxey = 3},
sounds = mcl_sounds.node_sound_stone_defaults()
}
}
for identifier, definitions in pairs(blocks) do
voxelibre.register_block(identifier, definitions)
end