123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126 |
- local S = minetest.get_translator("mtg_plus")
- local metal_sounds, wood_sounds
- if default.node_sound_metal_defaults then
- metal_sounds = default.node_sound_metal_defaults()
- else
- metal_sounds = default.node_sound_stone_defaults()
- end
- wood_sounds = default.node_sound_wood_defaults()
- -- Ladders
- minetest.register_node("mtg_plus:ladder_papyrus", {
- description = S("Papyrus Ladder"),
- _doc_items_longdesc = S("A particulary strong piece of ladder which allows you to move vertically."),
- drawtype = "signlike",
- tiles = {"mtg_plus_ladder_papyrus.png"},
- inventory_image = "mtg_plus_ladder_papyrus.png",
- wield_image = "mtg_plus_ladder_papyrus.png",
- paramtype = "light",
- paramtype2 = "wallmounted",
- sunlight_propagates = true,
- walkable = false,
- climbable = true,
- is_ground_content = false,
- selection_box = { type = "wallmounted", },
- groups = { snappy = 2, choppy = 1, flammable = 2 },
- sounds = default.node_sound_leaves_defaults(),
- })
- minetest.register_craft({
- output = "mtg_plus:ladder_papyrus 2",
- recipe = { {"default:papyrus", "", "default:papyrus"},
- {"farming:string", "default:papyrus", "farming:string"},
- {"default:papyrus", "", "default:papyrus"}},
- })
- minetest.register_craft({
- type = "fuel",
- recipe = "mtg_plus:ladder_papyrus",
- burntime = 2,
- })
- local simple_ladders = {
- { "gold", "metal", S("Golden Ladder"), "default:gold_ingot", { cracky = 3 }, true },
- { "bronze", "metal", S("Bronze Ladder"), "default:bronze_ingot", { cracky = 2 } },
- { "copper", "metal", S("Copper Ladder"), "default:copper_ingot", { cracky = 2 } },
- { "tin", "metal", S("Tin Ladder"), "default:tin_ingot", { cracky = 2 } },
- { "aspen_wood", "wood", S("Aspen Wood Ladder"), "default:aspen_wood", { choppy = 3, flammable = 1 }, nil, 5 },
- { "acacia_wood", "wood", S("Acacia Wood Ladder"), "default:acacia_wood", { choppy = 3, flammable = 1 }, nil, 8 },
- { "pine_wood", "wood", S("Pine Wood Ladder"), "default:pine_wood", { choppy = 3, flammable = 1 }, nil, 6 },
- { "junglewood", "wood", S("Jungle Wood Ladder"), "default:junglewood", { choppy = 3, flammable = 1 }, nil, 9 },
- { "goldwood", "wood", S("Goldwood Ladder"), "mtg_plus:goldwood", { choppy = 2 }, true },
- }
- for m=1, #simple_ladders do
- local ladder = simple_ladders[m]
- local longdesc
- if ladder[6] then
- longdesc = S("A luxurious piece of ladder which allows you to move vertically.")
- else
- longdesc = S("A piece of ladder which allows you to move vertically.")
- end
- if ladder[2] == "metal" then
- sounds = metal_sounds
- else
- sounds = wood_sounds
- end
- minetest.register_node("mtg_plus:ladder_"..ladder[1], {
- description = ladder[3],
- _doc_items_longdesc = longdesc,
- drawtype = "signlike",
- tiles = {"mtg_plus_ladder_"..ladder[1]..".png"},
- inventory_image = "mtg_plus_ladder_"..ladder[1]..".png",
- wield_image = "mtg_plus_ladder_"..ladder[1]..".png",
- paramtype = "light",
- paramtype2 = "wallmounted",
- sunlight_propagates = true,
- walkable = false,
- climbable = true,
- is_ground_content = false,
- selection_box = { type = "wallmounted", },
- groups = ladder[5],
- sounds = sounds,
- })
- if ladder[2] == "metal" then
- minetest.register_craft({
- output = "mtg_plus:ladder_"..ladder[1].." 15",
- recipe = {
- {ladder[4], "", ladder[4]},
- {ladder[4], ladder[4], ladder[4]},
- {ladder[4], "", ladder[4]},
- },
- })
- else
- minetest.register_craft({
- output = "mtg_plus:ladder_"..ladder[1].." 9",
- recipe = {
- {"group:stick", "", "group:stick"},
- {"group:stick", ladder[4], "group:stick"},
- {"group:stick", "", "group:stick"},
- },
- })
- if ladder[7] ~= nil then
- minetest.register_craft({
- type = "fuel",
- recipe = "mtg_plus:ladder_"..ladder[1],
- burntime = ladder[7],
- })
- end
- end
- end
- -- Tweak the default ladder
- minetest.override_item("default:ladder_wood", { description = S("Apple Wood Ladder") })
- minetest.register_craft({
- output = "default:ladder_wood 9",
- recipe = {
- {"group:stick", "", "group:stick"},
- {"group:stick", "default:wood", "group:stick"},
- {"group:stick", "", "group:stick"},
- },
- })
- -- The default stick-only recipe for default ladder will be intentionally kept for
- -- convenience.
|