Compare commits

..

No commits in common. "wood_fence_blast_resistance" and "master" have entirely different histories.

8 changed files with 32 additions and 94 deletions

View File

@ -192,23 +192,10 @@ if minetest.get_modpath("mcl_fences") then
local wood_groups = { handy = 1, axey = 1, flammable = 2, fence_wood = 1, fire_encouragement = 5, fire_flammability = 20 } local wood_groups = { handy = 1, axey = 1, flammable = 2, fence_wood = 1, fire_encouragement = 5, fire_flammability = 20 }
local wood_connect = { "group:fence_wood" } local wood_connect = { "group:fence_wood" }
local fence_id = mcl_fences.register_fence( local fence_id = mcl_fences.register_fence(id, S("Bamboo Fence"), "mcl_bamboo_fence_bamboo.png", wood_groups,
id, 2, 15, wood_connect, node_sound)
S("Bamboo Fence"), local gate_id = mcl_fences.register_fence_gate(id, S("Bamboo Fence Gate"), "mcl_bamboo_fence_gate_bamboo.png",
"mcl_bamboo_fence_bamboo.png", wood_groups, 2, 15, node_sound) -- note: about missing params.. will use defaults.
wood_groups,
minetest.registered_nodes["mcl_core:wood"]._mcl_hardness,
minetest.registered_nodes["mcl_core:wood"]._mcl_blast_resistance,
wood_connect, node_sound)
local gate_id = mcl_fences.register_fence_gate(
id,
S("Bamboo Fence Gate"),
"mcl_bamboo_fence_gate_bamboo.png",
wood_groups,
minetest.registered_nodes["mcl_core:wood"]._mcl_hardness,
minetest.registered_nodes["mcl_core:wood"]._mcl_blast_resistance,
node_sound) -- note: about missing params.. will use defaults.
mcl_bamboo.mcl_log(dump(fence_id)) mcl_bamboo.mcl_log(dump(fence_id))
mcl_bamboo.mcl_log(dump(gate_id)) mcl_bamboo.mcl_log(dump(gate_id))

View File

@ -199,11 +199,7 @@ mcl_stairs.register_stair_and_slab_simple("blackstone_chiseled_polished", "mcl_b
mcl_stairs.register_stair_and_slab_simple("blackstone_brick_polished", "mcl_blackstone:blackstone_brick_polished", S("Polished Blackstone Brick Stair"), S("Polished Blackstone Brick Slab"), S("Double Polished Blackstone Brick Slab")) mcl_stairs.register_stair_and_slab_simple("blackstone_brick_polished", "mcl_blackstone:blackstone_brick_polished", S("Polished Blackstone Brick Stair"), S("Polished Blackstone Brick Slab"), S("Double Polished Blackstone Brick Slab"))
--Wall --Wall
mcl_walls.register_wall( mcl_walls.register_wall("mcl_blackstone:wall", S("Blackstone Wall"), "mcl_blackstone:blackstone")
"mcl_blackstone:wall",
S("Blackstone Wall"),
"mcl_blackstone:blackstone"
)
--lavacooling --lavacooling

View File

@ -66,16 +66,9 @@ mcl_signs.register_sign_custom("mcl_cherry_blossom", "_cherrywood",
"mcl_cherry_blossom_sign_inv.png", "mcl_cherry_blossom_sign_inv.png", S("Cherry Sign")) "mcl_cherry_blossom_sign_inv.png", "mcl_cherry_blossom_sign_inv.png", S("Cherry Sign"))
-- Fences & Gates -- Fences & Gates
mcl_fences.register_fence_and_fence_gate( mcl_fences.register_fence_and_fence_gate("cherry_fence", S("Cherry Fence"), S("Cherry Gate"),
"cherry_fence", "mcl_cherry_blossom_planks.png", {handy=1, axey=1, flammable=2, fence_wood=1, fire_encouragement=5, fire_flammability=20}, 2, 15,
S("Cherry Fence"), {"group:fence_wood"}, mcl_sounds.node_sound_wood_defaults())
S("Cherry Gate"),
"mcl_cherry_blossom_planks.png",
{handy=1, axey=1, flammable=2, fence_wood=1, fire_encouragement=5, fire_flammability=20},
minetest.registered_nodes["mcl_core:wood"]._mcl_hardness,
minetest.registered_nodes["mcl_core:wood"]._mcl_blast_resistance,
{"group:fence_wood"},
mcl_sounds.node_sound_wood_defaults())
-- Redstone -- Redstone
mesecon.register_pressure_plate( mesecon.register_pressure_plate(

View File

@ -218,10 +218,7 @@ local function register_deepslate_variant(item, desc, longdesc)
end end
if item ~= "chiseled" then if item ~= "chiseled" then
mcl_stairs.register_stair_and_slab_simple("deepslate_"..item, "mcl_deepslate:deepslate_"..item, S(desc.." Stairs"), S(desc.." Slab"), S("Double "..desc.." Slab")) mcl_stairs.register_stair_and_slab_simple("deepslate_"..item, "mcl_deepslate:deepslate_"..item, S(desc.." Stairs"), S(desc.." Slab"), S("Double "..desc.." Slab"))
mcl_walls.register_wall( mcl_walls.register_wall("mcl_deepslate:deepslate"..item.."wall", S(desc.." Wall"), "mcl_deepslate:deepslate_"..item)
"mcl_deepslate:deepslate"..item.."wall",
S(desc.." Wall"),
"mcl_deepslate:deepslate_"..item)
end end
end end

View File

@ -269,16 +269,7 @@ for w=1, #woods do
id = wood[1].."_fence" id = wood[1].."_fence"
id_gate = wood[1].."_fence_gate" id_gate = wood[1].."_fence_gate"
end end
mcl_fences.register_fence_and_fence_gate( mcl_fences.register_fence_and_fence_gate(id, wood[2], wood[3], wood[4], wood_groups, 2, 15, wood_connect, wood_sounds)
id,
wood[2],
wood[3],
wood[4],
wood_groups,
minetest.registered_nodes["mcl_core:wood"]._mcl_hardness,
minetest.registered_nodes["mcl_core:wood"]._mcl_blast_resistance,
wood_connect,
wood_sounds)
minetest.register_craft({ minetest.register_craft({
output = "mcl_fences:"..id.." 3", output = "mcl_fences:"..id.." 3",
@ -298,15 +289,7 @@ end
-- Nether Brick Fence (without fence gate!) -- Nether Brick Fence (without fence gate!)
mcl_fences.register_fence( mcl_fences.register_fence("nether_brick_fence", S("Nether Brick Fence"), "mcl_fences_fence_nether_brick.png", {pickaxey=1, deco_block=1, fence_nether_brick=1}, 2, 30, {"group:fence_nether_brick"}, mcl_sounds.node_sound_stone_defaults())
"nether_brick_fence",
S("Nether Brick Fence"),
"mcl_fences_fence_nether_brick.png",
{pickaxey=1, deco_block=1, fence_nether_brick=1},
minetest.registered_nodes["mcl_nether:nether_brick"]._mcl_hardness,
minetest.registered_nodes["mcl_nether:nether_brick"]._mcl_blast_resistance,
{"group:fence_nether_brick"},
mcl_sounds.node_sound_stone_defaults())
minetest.register_craft({ minetest.register_craft({
output = "mcl_fences:nether_brick_fence 6", output = "mcl_fences:nether_brick_fence 6",

View File

@ -52,7 +52,7 @@ minetest.register_node("mcl_ocean:prismarine_brick", {
tiles = {"mcl_ocean_prismarine_bricks.png"}, tiles = {"mcl_ocean_prismarine_bricks.png"},
groups = {pickaxey=1, building_block=1, material_stone=1}, groups = {pickaxey=1, building_block=1, material_stone=1},
sounds = mcl_sounds.node_sound_stone_defaults(), sounds = mcl_sounds.node_sound_stone_defaults(),
_mcl_blast_resistance = 6, _mcl_blast_resistance = 1.5,
_mcl_hardness = 1.5, _mcl_hardness = 1.5,
}) })
@ -64,7 +64,7 @@ minetest.register_node("mcl_ocean:prismarine_dark", {
tiles = {"mcl_ocean_prismarine_dark.png"}, tiles = {"mcl_ocean_prismarine_dark.png"},
groups = {pickaxey=1, building_block=1, material_stone=1}, groups = {pickaxey=1, building_block=1, material_stone=1},
sounds = mcl_sounds.node_sound_stone_defaults(), sounds = mcl_sounds.node_sound_stone_defaults(),
_mcl_blast_resistance = 6, _mcl_blast_resistance = 1.5,
_mcl_hardness = 1.5, _mcl_hardness = 1.5,
}) })

View File

@ -2,7 +2,7 @@
This API allows you to add more walls (like the cobblestone wall) to MineClone 2. This API allows you to add more walls (like the cobblestone wall) to MineClone 2.
## `mcl_walls.register_wall(nodename, description, craft_material, tiles, invtex, groups, sounds, hardness, blast_resistance)` ## `mcl_walls.register_wall(nodename, description, craft_material, tiles, invtex, groups, sounds)`
Adds a new wall type. This is optimized for stone-based walls, but other materials are theoretically possible, too. Adds a new wall type. This is optimized for stone-based walls, but other materials are theoretically possible, too.
@ -25,8 +25,6 @@ If `craft_material` is not `nil` it also adds a crafting recipe of the following
* `inventory_image`: Inventory image (optional if `source` is set) * `inventory_image`: Inventory image (optional if `source` is set)
* `groups`: Base group memberships (optional, default is `{pickaxey=1}`) * `groups`: Base group memberships (optional, default is `{pickaxey=1}`)
* `sounds`: Sound table (optional, by default default uses stone sounds) * `sounds`: Sound table (optional, by default default uses stone sounds)
* `hardness`: Hardness of node (optional, default matches `source` node or fallback value 2)
* `blast_resistance`: Blast resistance of node (optional, default matches `source` node or fallback value 6)
The following groups will automatically be added to the nodes (where applicable), you do not need to add them The following groups will automatically be added to the nodes (where applicable), you do not need to add them
to the `groups` table: to the `groups` table:

View File

@ -97,10 +97,8 @@ local full_blocks = {
* inventory_image: Inventory image (optional) * inventory_image: Inventory image (optional)
* groups: Base group memberships (optional, default is {pickaxey=1}) * groups: Base group memberships (optional, default is {pickaxey=1})
* sounds: Sound table (optional, default is stone) * sounds: Sound table (optional, default is stone)
* hardness: Hardness of node (optional, default matches `source` node or fallback value 2)
* blast_resistance: Blast resistance of node (optional, default matches `source` node or fallback value 6)
]] ]]
function mcl_walls.register_wall(nodename, description, source, tiles, inventory_image, groups, sounds, hardness, blast_resistance) function mcl_walls.register_wall(nodename, description, source, tiles, inventory_image, groups, sounds)
local base_groups = groups local base_groups = groups
if not base_groups then if not base_groups then
@ -114,31 +112,17 @@ function mcl_walls.register_wall(nodename, description, source, tiles, inventory
local main_node_groups = table.copy(base_groups) local main_node_groups = table.copy(base_groups)
main_node_groups.deco_block = 1 main_node_groups.deco_block = 1
if source then -- TODO: Stop hardcoding blast resistance
-- Default values from `source` node
if not hardness then
hardness = minetest.registered_nodes[source]._mcl_hardness
end
if not blast_resistance then
blast_resistance = minetest.registered_nodes[source]._mcl_blast_resistance
end
if not sounds then if not sounds then
sounds = minetest.registered_nodes[source].sounds sounds = mcl_sounds.node_sound_stone_defaults()
end end
if not tiles then
if (not tiles) and source then
if minetest.registered_nodes[source] then if minetest.registered_nodes[source] then
tiles = minetest.registered_nodes[source].tiles tiles = minetest.registered_nodes[source].tiles
end end
end end
else
-- Fallback in case no `source` given
if not hardness then
hardness = 2
end
if not blast_resistance then
blast_resistance = 6
end
end
for i = 0, 15 do for i = 0, 15 do
local need = {} local need = {}
@ -185,8 +169,8 @@ function mcl_walls.register_wall(nodename, description, source, tiles, inventory
fixed = take fixed = take
}, },
sounds = sounds, sounds = sounds,
_mcl_blast_resistance = blast_resistance, _mcl_blast_resistance = 6,
_mcl_hardness = hardness, _mcl_hardness = 2,
}) })
-- Add entry alias for the Help -- Add entry alias for the Help
@ -213,8 +197,8 @@ function mcl_walls.register_wall(nodename, description, source, tiles, inventory
fixed = {pillar, full_blocks[1]} fixed = {pillar, full_blocks[1]}
}, },
sounds = sounds, sounds = sounds,
_mcl_blast_resistance = blast_resistance, _mcl_blast_resistance = 6,
_mcl_hardness = hardness, _mcl_hardness = 2,
}) })
-- Add entry alias for the Help -- Add entry alias for the Help
if minetest.get_modpath("doc") then if minetest.get_modpath("doc") then
@ -239,8 +223,8 @@ function mcl_walls.register_wall(nodename, description, source, tiles, inventory
fixed = {pillar, full_blocks[2]} fixed = {pillar, full_blocks[2]}
}, },
sounds = sounds, sounds = sounds,
_mcl_blast_resistance = blast_resistance, _mcl_blast_resistance = 6,
_mcl_hardness = hardness, _mcl_hardness = 2,
}) })
-- Add entry alias for the Help -- Add entry alias for the Help
if minetest.get_modpath("doc") then if minetest.get_modpath("doc") then
@ -271,8 +255,8 @@ function mcl_walls.register_wall(nodename, description, source, tiles, inventory
collisionbox = {-0.2, 0, -0.2, 0.2, 1.4, 0.2}, collisionbox = {-0.2, 0, -0.2, 0.2, 1.4, 0.2},
on_construct = update_wall, on_construct = update_wall,
sounds = sounds, sounds = sounds,
_mcl_blast_resistance = blast_resistance, _mcl_blast_resistance = 6,
_mcl_hardness = hardness, _mcl_hardness = 2,
}) })
if source then if source then
minetest.register_craft({ minetest.register_craft({