local S = minetest.get_translator(minetest.get_current_modname()) local mod_doc = minetest.get_modpath("doc") local colors = { -- { ID, decription, wool, dye } { "red", S("Red Bed"), "mcl_wool:red", "mcl_dye:red" }, { "blue", S("Blue Bed"), "mcl_wool:blue", "mcl_dye:blue" }, { "cyan", S("Cyan Bed"), "mcl_wool:cyan", "mcl_dye:cyan" }, { "grey", S("Grey Bed"), "mcl_wool:grey", "mcl_dye:dark_grey" }, { "silver", S("Light Grey Bed"), "mcl_wool:silver", "mcl_dye:grey" }, { "black", S("Black Bed"), "mcl_wool:black", "mcl_dye:black" }, { "yellow", S("Yellow Bed"), "mcl_wool:yellow", "mcl_dye:yellow" }, { "green", S("Green Bed"), "mcl_wool:green", "mcl_dye:dark_green" }, { "magenta", S("Magenta Bed"), "mcl_wool:magenta", "mcl_dye:magenta" }, { "orange", S("Orange Bed"), "mcl_wool:orange", "mcl_dye:orange" }, { "purple", S("Purple Bed"), "mcl_wool:purple", "mcl_dye:violet" }, { "brown", S("Brown Bed"), "mcl_wool:brown", "mcl_dye:brown" }, { "pink", S("Pink Bed"), "mcl_wool:pink", "mcl_dye:pink" }, { "lime", S("Lime Bed"), "mcl_wool:lime", "mcl_dye:green" }, { "light_blue", S("Light Blue Bed"), "mcl_wool:light_blue", "mcl_dye:lightblue" }, { "white", S("White Bed"), "mcl_wool:white", "mcl_dye:white" }, } local canonical_color = "red" for c=1, #colors do local colorid = colors[c][1] local is_canonical = colorid == canonical_color -- Recoloring recipe for white bed if minetest.get_modpath("mcl_dye") then minetest.register_craft({ type = "shapeless", output = "mcl_beds:bed_"..colorid.."_bottom", recipe = { "mcl_beds:bed_white_bottom", colors[c][4] }, }) end -- Main bed recipe local main_recipe if minetest.get_modpath("mcl_wool") then main_recipe = { {colors[c][3], colors[c][3], colors[c][3]}, {"group:wood", "group:wood", "group:wood"} } end local entry_name, create_entry if mod_doc then if is_canonical then entry_name = S("Bed") else create_entry = false end end -- Register bed mcl_beds.register_bed("mcl_beds:bed_"..colorid, { description = colors[c][2], _doc_items_entry_name = entry_name, _doc_items_create_entry = create_entry, inventory_image = "mcl_beds_bed_"..colorid.."_inv.png", wield_image = "mcl_beds_bed_"..colorid.."_inv.png", tiles = { "mcl_beds_bed_"..colorid..".png" }, recipe = main_recipe, }) if mod_doc and not is_canonical then doc.add_entry_alias("nodes", "mcl_beds:bed_"..canonical_color.."_bottom", "nodes", "mcl_beds:bed_"..colorid.."_bottom") doc.add_entry_alias("nodes", "mcl_beds:bed_"..canonical_color.."_bottom", "nodes", "mcl_beds:bed_"..colorid.."_top") end end minetest.register_alias("beds:bed_bottom", "mcl_beds:bed_red_bottom") minetest.register_alias("beds:bed_top", "mcl_beds:bed_red_top")