2013-04-04 01:17:39 +02:00
|
|
|
-- Minetest 0.4.6 mod: extranodes
|
|
|
|
-- namespace: technic
|
2014-04-16 19:10:00 +02:00
|
|
|
-- Boilerplate to support localized strings if intllib mod is installed.
|
2015-02-05 10:07:38 +01:00
|
|
|
local S = rawget(_G, "intllib") and intllib.Getter() or function(s) return s end
|
2013-04-04 01:17:39 +02:00
|
|
|
|
2015-07-29 19:59:32 +02:00
|
|
|
if minetest.get_modpath("moreblocks") then
|
2015-01-19 00:13:20 +01:00
|
|
|
|
2015-07-29 19:59:32 +02:00
|
|
|
-- register stairsplus/circular_saw nodes
|
|
|
|
-- we skip blast resistant concrete and uranium intentionally
|
|
|
|
-- chrome seems to be too hard of a metal to be actually sawable
|
2013-04-04 01:17:39 +02:00
|
|
|
|
2015-07-29 19:59:32 +02:00
|
|
|
stairsplus:register_all("technic", "marble", "technic:marble", {
|
2017-03-28 21:04:28 +02:00
|
|
|
description = S("Marble"),
|
|
|
|
groups = { cracky = 3, not_in_creative_inventory = 1 },
|
|
|
|
tiles = { "technic_marble.png" },
|
2015-07-29 19:59:32 +02:00
|
|
|
})
|
2013-04-04 01:17:39 +02:00
|
|
|
|
2015-07-29 19:59:32 +02:00
|
|
|
stairsplus:register_all("technic", "marble_bricks", "technic:marble_bricks", {
|
2017-03-28 21:04:28 +02:00
|
|
|
description = S("Marble Bricks"),
|
|
|
|
groups = { cracky = 3, not_in_creative_inventory = 1 },
|
|
|
|
tiles = { "technic_marble_bricks.png" },
|
2015-07-29 19:59:32 +02:00
|
|
|
})
|
2013-04-04 01:17:39 +02:00
|
|
|
|
2015-07-29 19:59:32 +02:00
|
|
|
stairsplus:register_all("technic", "granite", "technic:granite", {
|
2017-03-28 21:04:28 +02:00
|
|
|
description = S("Granite"),
|
|
|
|
groups = { cracky = 1, not_in_creative_inventory = 1 },
|
|
|
|
tiles = { "technic_granite.png" },
|
2015-07-29 19:59:32 +02:00
|
|
|
})
|
2013-04-04 01:52:18 +02:00
|
|
|
|
2015-07-29 19:59:32 +02:00
|
|
|
stairsplus:register_all("technic", "concrete", "technic:concrete", {
|
2017-03-28 21:04:28 +02:00
|
|
|
description = S("Concrete"),
|
|
|
|
groups = { cracky = 3, not_in_creative_inventory = 1 },
|
|
|
|
tiles = { "technic_concrete_block.png" },
|
2015-07-29 19:59:32 +02:00
|
|
|
})
|
2015-01-19 00:13:20 +01:00
|
|
|
|
2015-07-29 19:59:32 +02:00
|
|
|
stairsplus:register_all("technic", "zinc_block", "technic:zinc_block", {
|
2017-03-28 21:04:28 +02:00
|
|
|
description = S("Zinc Block"),
|
|
|
|
groups = { cracky = 1, not_in_creative_inventory = 1 },
|
|
|
|
tiles = { "technic_zinc_block.png" },
|
2015-07-29 19:59:32 +02:00
|
|
|
})
|
2015-01-19 00:13:20 +01:00
|
|
|
|
2015-07-29 19:59:32 +02:00
|
|
|
stairsplus:register_all("technic", "cast_iron_block", "technic:cast_iron_block", {
|
2017-03-28 21:04:28 +02:00
|
|
|
description = S("Cast Iron Block"),
|
|
|
|
groups = { cracky = 1, not_in_creative_inventory = 1 },
|
|
|
|
tiles = { "technic_cast_iron_block.png" },
|
2015-07-29 19:59:32 +02:00
|
|
|
})
|
2015-01-19 00:13:20 +01:00
|
|
|
|
2015-07-29 19:59:32 +02:00
|
|
|
stairsplus:register_all("technic", "carbon_steel_block", "technic:carbon_steel_block", {
|
2017-03-28 21:04:28 +02:00
|
|
|
description = S("Carbon Steel Block"),
|
|
|
|
groups = { cracky = 1, not_in_creative_inventory = 1 },
|
|
|
|
tiles = { "technic_carbon_steel_block.png" },
|
2015-07-29 19:59:32 +02:00
|
|
|
})
|
2015-01-19 00:13:20 +01:00
|
|
|
|
2015-07-29 19:59:32 +02:00
|
|
|
stairsplus:register_all("technic", "stainless_steel_block", "technic:stainless_steel_block", {
|
2017-03-28 21:04:28 +02:00
|
|
|
description = S("Stainless Steel Block"),
|
|
|
|
groups = { cracky = 1, not_in_creative_inventory = 1 },
|
|
|
|
tiles = { "technic_stainless_steel_block.png" },
|
2015-07-29 19:59:32 +02:00
|
|
|
})
|
2015-01-19 00:13:20 +01:00
|
|
|
|
2015-07-29 19:59:32 +02:00
|
|
|
stairsplus:register_all("technic", "brass_block", "technic:brass_block", {
|
2017-03-28 21:04:28 +02:00
|
|
|
description = S("Brass Block"),
|
|
|
|
groups = { cracky = 1, not_in_creative_inventory = 1 },
|
|
|
|
tiles = { "technic_brass_block.png" },
|
2015-07-29 19:59:32 +02:00
|
|
|
})
|
2013-04-04 01:52:18 +02:00
|
|
|
|
2015-07-29 19:59:32 +02:00
|
|
|
function register_technic_stairs_alias(modname, origname, newmod, newname)
|
2017-03-29 15:19:50 +02:00
|
|
|
minetest.register_alias(modname..":slab_"..origname, newmod..":slab_"..newname)
|
|
|
|
minetest.register_alias(modname..":slab_"..origname.."_inverted", newmod..":slab_"..newname.."_inverted")
|
|
|
|
minetest.register_alias(modname..":slab_"..origname.."_wall", newmod..":slab_"..newname.."_wall")
|
|
|
|
minetest.register_alias(modname..":slab_"..origname.."_quarter", newmod..":slab_"..newname.."_quarter")
|
|
|
|
minetest.register_alias(modname..":slab_"..origname.."_quarter_inverted", newmod..":slab_"..newname.."_quarter_inverted")
|
|
|
|
minetest.register_alias(modname..":slab_"..origname.."_quarter_wall", newmod..":slab_"..newname.."_quarter_wall")
|
|
|
|
minetest.register_alias(modname..":slab_"..origname.."_three_quarter", newmod..":slab_"..newname.."_three_quarter")
|
|
|
|
minetest.register_alias(modname..":slab_"..origname.."_three_quarter_inverted", newmod..":slab_"..newname.."_three_quarter_inverted")
|
|
|
|
minetest.register_alias(modname..":slab_"..origname.."_three_quarter_wall", newmod..":slab_"..newname.."_three_quarter_wall")
|
|
|
|
minetest.register_alias(modname..":stair_"..origname, newmod..":stair_"..newname)
|
|
|
|
minetest.register_alias(modname..":stair_"..origname.."_inverted", newmod..":stair_"..newname.."_inverted")
|
|
|
|
minetest.register_alias(modname..":stair_"..origname.."_wall", newmod..":stair_"..newname.."_wall")
|
|
|
|
minetest.register_alias(modname..":stair_"..origname.."_wall_half", newmod..":stair_"..newname.."_wall_half")
|
|
|
|
minetest.register_alias(modname..":stair_"..origname.."_wall_half_inverted", newmod..":stair_"..newname.."_wall_half_inverted")
|
|
|
|
minetest.register_alias(modname..":stair_"..origname.."_half", newmod..":stair_"..newname.."_half")
|
|
|
|
minetest.register_alias(modname..":stair_"..origname.."_half_inverted", newmod..":stair_"..newname.."_half_inverted")
|
|
|
|
minetest.register_alias(modname..":stair_"..origname.."_right_half", newmod..":stair_"..newname.."_right_half")
|
|
|
|
minetest.register_alias(modname..":stair_"..origname.."_right_half_inverted", newmod..":stair_"..newname.."_right_half_inverted")
|
|
|
|
minetest.register_alias(modname..":stair_"..origname.."_wall_half", newmod..":stair_"..newname.."_wall_half")
|
|
|
|
minetest.register_alias(modname..":stair_"..origname.."_wall_half_inverted", newmod..":stair_"..newname.."_wall_half_inverted")
|
|
|
|
minetest.register_alias(modname..":stair_"..origname.."_inner", newmod..":stair_"..newname.."_inner")
|
|
|
|
minetest.register_alias(modname..":stair_"..origname.."_inner_inverted", newmod..":stair_"..newname.."_inner_inverted")
|
|
|
|
minetest.register_alias(modname..":stair_"..origname.."_outer", newmod..":stair_"..newname.."_outer")
|
|
|
|
minetest.register_alias(modname..":stair_"..origname.."_outer_inverted", newmod..":stair_"..newname.."_outer_inverted")
|
|
|
|
minetest.register_alias(modname..":panel_"..origname.."_bottom", newmod..":panel_"..newname.."_bottom")
|
|
|
|
minetest.register_alias(modname..":panel_"..origname.."_top", newmod..":panel_"..newname.."_top")
|
|
|
|
minetest.register_alias(modname..":panel_"..origname.."_vertical", newmod..":panel_"..newname.."_vertical")
|
|
|
|
minetest.register_alias(modname..":micro_"..origname.."_bottom", newmod..":micro_"..newname.."_bottom")
|
|
|
|
minetest.register_alias(modname..":micro_"..origname.."_top", newmod..":micro_"..newname.."_top")
|
2017-03-28 21:04:28 +02:00
|
|
|
end
|
2015-07-29 19:59:32 +02:00
|
|
|
|
|
|
|
register_technic_stairs_alias("stairsplus", "concrete", "technic", "concrete")
|
|
|
|
register_technic_stairs_alias("stairsplus", "marble", "technic", "marble")
|
|
|
|
register_technic_stairs_alias("stairsplus", "granite", "technic", "granite")
|
|
|
|
register_technic_stairs_alias("stairsplus", "marble_bricks", "technic", "marble_bricks")
|
|
|
|
end
|
2017-03-11 04:30:36 +01:00
|
|
|
|
2017-03-16 04:49:36 +01:00
|
|
|
local iclip_def = {
|
|
|
|
description = "Insulator/cable clip",
|
|
|
|
drawtype = "mesh",
|
|
|
|
mesh = "technic_insulator_clip.obj",
|
2017-03-28 21:04:28 +02:00
|
|
|
tiles = { "technic_insulator_clip.png" },
|
2017-03-16 04:49:36 +01:00
|
|
|
is_ground_content = false,
|
2017-03-28 21:04:28 +02:00
|
|
|
groups = { choppy = 1, snappy = 1, oddly_breakable_by_hand = 1 },
|
2017-03-16 04:49:36 +01:00
|
|
|
sounds = default.node_sound_stone_defaults(),
|
|
|
|
}
|
|
|
|
|
|
|
|
local iclipfence_def = {
|
|
|
|
description = "Insulator/cable clip",
|
2017-03-28 21:04:28 +02:00
|
|
|
tiles = { "technic_insulator_clip.png" },
|
2017-03-16 04:49:36 +01:00
|
|
|
is_ground_content = false,
|
|
|
|
paramtype = "light",
|
|
|
|
drawtype = "nodebox",
|
|
|
|
node_box = {
|
|
|
|
type = "connected",
|
|
|
|
fixed = {
|
2017-03-28 21:04:28 +02:00
|
|
|
{ -0.25, 0.75, -0.25, 0.25, 1.25, 0.25 }, -- the clip on top
|
|
|
|
{ -0.125, 0.6875, -0.125, 0.125, 0.75, 0.125 },
|
|
|
|
{ -0.1875, 0.625, -0.1875, 0.1875, 0.6875, 0.1875 },
|
|
|
|
{ -0.125, 0.5625, -0.125, 0.125, 0.625, 0.125 },
|
|
|
|
{ -0.1875, 0.5, -0.1875, 0.1875, 0.5625, 0.1875 },
|
|
|
|
{ -0.125, 0.4375, -0.125, 0.125, 0.5, 0.125 },
|
|
|
|
{ -0.1875, 0.375, -0.1875, 0.1875, 0.4375, 0.1875 },
|
|
|
|
{ -0.125, -0.5, -0.125, 0.125, 0.375, 0.125 }, -- the post, slightly short
|
2017-03-11 07:17:19 +01:00
|
|
|
},
|
2017-03-16 04:49:36 +01:00
|
|
|
-- connect_top =
|
|
|
|
-- connect_bottom =
|
2017-03-28 21:04:28 +02:00
|
|
|
connect_front = {
|
2017-03-29 15:24:41 +02:00
|
|
|
{ -1/16, 3/16, -1/2, 1/16, 5/16, -1/8 },
|
|
|
|
{ -1/16, -5/16, -1/2, 1/16, -3/16, -1/8 }
|
2017-03-28 21:04:28 +02:00
|
|
|
},
|
|
|
|
connect_left = {
|
2017-03-29 15:24:41 +02:00
|
|
|
{ -1/2, 3/16, -1/16, -1/8, 5/16, 1/16 },
|
|
|
|
{ -1/2, -5/16, -1/16, -1/8, -3/16, 1/16 }
|
2017-03-28 21:04:28 +02:00
|
|
|
},
|
|
|
|
connect_back = {
|
2017-03-29 15:24:41 +02:00
|
|
|
{ -1/16, 3/16, 1/8, 1/16, 5/16, 1/2 },
|
|
|
|
{ -1/16, -5/16, 1/8, 1/16, -3/16, 1/2 }
|
2017-03-28 21:04:28 +02:00
|
|
|
},
|
|
|
|
connect_right = {
|
2017-03-29 15:24:41 +02:00
|
|
|
{ 1/8, 3/16, -1/16, 1/2, 5/16, 1/16 },
|
|
|
|
{ 1/8, -5/16, -1/16, 1/2, -3/16, 1/16 }
|
2017-03-28 21:04:28 +02:00
|
|
|
},
|
2017-03-16 04:49:36 +01:00
|
|
|
},
|
2017-03-28 21:04:28 +02:00
|
|
|
connects_to = { "group:fence", "group:wood", "group:tree" },
|
|
|
|
groups = { fence = 1, choppy = 1, snappy = 1, oddly_breakable_by_hand = 1 },
|
2017-03-16 04:49:36 +01:00
|
|
|
sounds = default.node_sound_stone_defaults(),
|
|
|
|
}
|
|
|
|
|
2017-03-17 08:10:08 +01:00
|
|
|
if minetest.get_modpath("unifieddyes") then
|
2017-03-16 04:49:36 +01:00
|
|
|
iclip_def.paramtype2 = "colorwallmounted"
|
|
|
|
iclip_def.palette = "unifieddyes_palette_colorwallmounted.png"
|
2017-03-18 11:27:59 +01:00
|
|
|
iclip_def.after_place_node = function(pos, placer, itemstack, pointed_thing)
|
|
|
|
unifieddyes.fix_rotation(pos, placer, itemstack, pointed_thing)
|
|
|
|
unifieddyes.recolor_on_place(pos, placer, itemstack, pointed_thing)
|
|
|
|
end
|
2017-03-16 04:49:36 +01:00
|
|
|
iclip_def.after_dig_node = unifieddyes.after_dig_node
|
2017-03-28 21:04:28 +02:00
|
|
|
iclip_def.groups = { choppy = 1, snappy = 1, oddly_breakable_by_hand = 1, ud_param2_colorable = 1 }
|
2017-03-16 04:49:36 +01:00
|
|
|
|
|
|
|
iclipfence_def.paramtype2 = "color"
|
|
|
|
iclipfence_def.palette = "unifieddyes_palette_extended.png"
|
|
|
|
iclipfence_def.on_construct = unifieddyes.on_construct
|
2017-03-18 11:27:59 +01:00
|
|
|
iclipfence_def.after_place_node = unifieddyes.recolor_on_place
|
2017-03-16 04:49:36 +01:00
|
|
|
iclipfence_def.after_dig_node = unifieddyes.after_dig_node
|
2017-03-28 21:04:28 +02:00
|
|
|
iclipfence_def.groups = { fence = 1, choppy = 1, snappy = 1, oddly_breakable_by_hand = 1, ud_param2_colorable = 1 }
|
2017-03-16 04:49:36 +01:00
|
|
|
iclipfence_def.place_param2 = 171 -- medium amber, low saturation, closest color to default:wood
|
2017-03-13 04:20:41 +01:00
|
|
|
end
|
2017-03-16 04:49:36 +01:00
|
|
|
|
2017-03-17 08:10:08 +01:00
|
|
|
minetest.register_node(":technic:insulator_clip", iclip_def)
|
|
|
|
minetest.register_node(":technic:insulator_clip_fencepost", iclipfence_def)
|
|
|
|
|
2017-03-16 04:49:36 +01:00
|
|
|
minetest.register_craft({
|
|
|
|
output = "technic:insulator_clip",
|
|
|
|
recipe = {
|
2017-03-28 21:04:28 +02:00
|
|
|
{ "", "dye:white", "" },
|
|
|
|
{ "", "technic:raw_latex", "" },
|
|
|
|
{ "technic:raw_latex", "default:stone", "technic:raw_latex" },
|
2017-03-16 04:49:36 +01:00
|
|
|
}
|
|
|
|
})
|
|
|
|
|
|
|
|
minetest.register_craft({
|
|
|
|
output = "technic:insulator_clip_fencepost 2",
|
|
|
|
recipe = {
|
2017-03-28 21:04:28 +02:00
|
|
|
{ "", "dye:white", "" },
|
|
|
|
{ "", "technic:raw_latex", "" },
|
|
|
|
{ "technic:raw_latex", "default:fence_wood", "technic:raw_latex" },
|
2017-03-16 04:49:36 +01:00
|
|
|
}
|
|
|
|
})
|