From 753b31d74f0b32159fa6b2d52c8da2f1199d14b3 Mon Sep 17 00:00:00 2001 From: LNJ Date: Mon, 10 Apr 2017 16:40:52 +0200 Subject: Add drawers in all wood types This is still fully MineClone 2 compatible; there are different drawers in MCL2 than MTG and they have different textures. If you combine different wood types in the crafting field, the default drawer (oak/wooden) will be crafted. If you use the same wood, a drawer of this wood will be crafted. --- init.lua | 187 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 170 insertions(+), 17 deletions(-) (limited to 'init.lua') diff --git a/init.lua b/init.lua index 6c30c42..c84d0b9 100755 --- a/init.lua +++ b/init.lua @@ -31,18 +31,18 @@ local S, NS = dofile(MP.."/intllib.lua") drawers = {} drawers.drawer_visuals = {} -if default then +if core.get_modpath("default") and default then drawers.WOOD_SOUNDS = default.node_sound_wood_defaults() drawers.WOOD_ITEMSTRING = "group:wood" drawers.CHEST_ITEMSTRING = "default:chest" -elseif mcl_core then -- MineClone 2 +elseif core.get_modpath("mcl_core") and mcl_core then -- MineClone 2 drawers.WOOD_ITEMSTRING = "group:wood" drawers.CHEST_ITEMSTRING = "mcl_chests:chest" - if mcl_sounds then + if core.get_modpath("mcl_sounds") and mcl_sounds then drawers.WOOD_SOUNDS = mcl_sounds.node_sound_wood_defaults() end else - drawers.WOOD_ITEMSTRING = "wood" + drawers.WOOD_ITEMSTRING = "group:wood" drawers.CHEST_ITEMSTRING = "chest" end @@ -64,16 +64,169 @@ dofile(MP .. "/lua/api.lua") -- Register drawers -- -drawers.register_drawer("drawers:wood", { - description = S("Wooden"), - tiles1 = {"drawers_wood.png", "drawers_wood.png", "drawers_wood.png", - "drawers_wood.png", "drawers_wood.png", "drawers_wood_front_1.png"}, - tiles2 = {"drawers_wood.png", "drawers_wood.png", "drawers_wood.png", - "drawers_wood.png", "drawers_wood.png", "drawers_wood_front_2.png"}, - tiles4 = {"drawers_wood.png", "drawers_wood.png", "drawers_wood.png", - "drawers_wood.png", "drawers_wood.png", "drawers_wood_front_4.png"}, - groups = {choppy = 3, oddly_breakable_by_hand = 2}, - sounds = drawers.WOOD_SOUNDS, - drawer_stack_max_factor = 3 * 8, -- normal chest size - material = drawers.WOOD_ITEMSTRING -}) +if core.get_modpath("default") and default then + drawers.register_drawer("drawers:wood", { + description = S("Wooden"), + tiles1 = drawers.node_tiles_front_other("drawers_wood_front_1.png", + "drawers_wood.png"), + tiles2 = drawers.node_tiles_front_other("drawers_wood_front_2.png", + "drawers_wood.png"), + tiles4 = drawers.node_tiles_front_other("drawers_wood_front_4.png", + "drawers_wood.png"), + groups = {choppy = 3, oddly_breakable_by_hand = 2}, + sounds = drawers.WOOD_SOUNDS, + drawer_stack_max_factor = 3 * 8, -- normal chest size + material = drawers.WOOD_ITEMSTRING + }) + drawers.register_drawer("drawers:acacia_wood", { + description = S("Acacia Wood"), + tiles1 = drawers.node_tiles_front_other("drawers_acacia_wood_front_1.png", + "drawers_acacia_wood.png"), + tiles2 = drawers.node_tiles_front_other("drawers_acacia_wood_front_2.png", + "drawers_acacia_wood.png"), + tiles4 = drawers.node_tiles_front_other("drawers_acacia_wood_front_4.png", + "drawers_acacia_wood.png"), + groups = {choppy = 3, oddly_breakable_by_hand = 2}, + sounds = drawers.WOOD_SOUNDS, + drawer_stack_max_factor = 3 * 8, -- normal mcl chest size + material = "default:acacia_wood" + }) + drawers.register_drawer("drawers:aspen_wood", { + description = S("Aspen Wood"), + tiles1 = drawers.node_tiles_front_other("drawers_aspen_wood_front_1.png", + "drawers_aspen_wood.png"), + tiles2 = drawers.node_tiles_front_other("drawers_aspen_wood_front_2.png", + "drawers_aspen_wood.png"), + tiles4 = drawers.node_tiles_front_other("drawers_aspen_wood_front_4.png", + "drawers_aspen_wood.png"), + groups = {choppy = 3, oddly_breakable_by_hand = 2}, + sounds = drawers.WOOD_SOUNDS, + drawer_stack_max_factor = 3 * 8, -- normal chest size + material = "default:aspen_wood" + }) + drawers.register_drawer("drawers:junglewood", { + description = S("Junglewood"), + tiles1 = drawers.node_tiles_front_other("drawers_junglewood_front_1.png", + "drawers_junglewood.png"), + tiles2 = drawers.node_tiles_front_other("drawers_junglewood_front_2.png", + "drawers_junglewood.png"), + tiles4 = drawers.node_tiles_front_other("drawers_junglewood_front_4.png", + "drawers_junglewood.png"), + groups = {choppy = 3, oddly_breakable_by_hand = 2}, + sounds = drawers.WOOD_SOUNDS, + drawer_stack_max_factor = 3 * 8, -- normal mcl chest size + material = "default:junglewood" + }) + drawers.register_drawer("drawers:pine_wood", { + description = S("Pine Wood"), + tiles1 = drawers.node_tiles_front_other("drawers_pine_wood_front_1.png", + "drawers_pine_wood.png"), + tiles2 = drawers.node_tiles_front_other("drawers_pine_wood_front_2.png", + "drawers_pine_wood.png"), + tiles4 = drawers.node_tiles_front_other("drawers_pine_wood_front_4.png", + "drawers_pine_wood.png"), + groups = {choppy = 3, oddly_breakable_by_hand = 2}, + sounds = drawers.WOOD_SOUNDS, + drawer_stack_max_factor = 3 * 8, -- normal chest size + material = "default:pine_wood" + }) +elseif core.get_modpath("mcl_core") and mcl_core then + drawers.register_drawer("drawers:oakwood", { + description = S("Oak Wood"), + tiles1 = drawers.node_tiles_front_other("drawers_oak_wood_front_1.png", + "drawers_oak_wood.png"), + tiles2 = drawers.node_tiles_front_other("drawers_oak_wood_front_2.png", + "drawers_oak_wood.png"), + tiles4 = drawers.node_tiles_front_other("drawers_oak_wood_front_4.png", + "drawers_oak_wood.png"), + groups = {choppy = 3, oddly_breakable_by_hand = 2}, + sounds = drawers.WOOD_SOUNDS, + drawer_stack_max_factor = 3 * 9, -- normal mcl chest size + material = drawers.WOOD_ITEMSTRING + }) + drawers.register_drawer("drawers:acaciawood", { + description = S("Acacia Wood"), + tiles1 = drawers.node_tiles_front_other("drawers_acacia_wood_mcl_front_1.png", + "drawers_acacia_wood_mcl.png"), + tiles2 = drawers.node_tiles_front_other("drawers_acacia_wood_mcl_front_2.png", + "drawers_acacia_wood_mcl.png"), + tiles4 = drawers.node_tiles_front_other("drawers_acacia_wood_mcl_front_4.png", + "drawers_acacia_wood_mcl.png"), + groups = {choppy = 3, oddly_breakable_by_hand = 2}, + sounds = drawers.WOOD_SOUNDS, + drawer_stack_max_factor = 3 * 9, -- normal mcl chest size + material = "mcl_core:acaciawood" + }) + drawers.register_drawer("drawers:birchwood", { + description = S("Birch Wood"), + tiles1 = drawers.node_tiles_front_other("drawers_birch_wood_front_1.png", + "drawers_birch_wood.png"), + tiles2 = drawers.node_tiles_front_other("drawers_birch_wood_front_2.png", + "drawers_birch_wood.png"), + tiles4 = drawers.node_tiles_front_other("drawers_birch_wood_front_4.png", + "drawers_birch_wood.png"), + groups = {choppy = 3, oddly_breakable_by_hand = 2}, + sounds = drawers.WOOD_SOUNDS, + drawer_stack_max_factor = 3 * 9, -- normal mcl chest size + material = "mcl_core:birchwood" + }) + drawers.register_drawer("drawers:darkwood", { + description = S("Dark Oak Wood"), + tiles1 = drawers.node_tiles_front_other("drawers_dark_oak_wood_front_1.png", + "drawers_dark_oak_wood.png"), + tiles2 = drawers.node_tiles_front_other("drawers_dark_oak_wood_front_2.png", + "drawers_dark_oak_wood.png"), + tiles4 = drawers.node_tiles_front_other("drawers_dark_oak_wood_front_4.png", + "drawers_dark_oak_wood.png"), + groups = {choppy = 3, oddly_breakable_by_hand = 2}, + sounds = drawers.WOOD_SOUNDS, + drawer_stack_max_factor = 3 * 9, -- normal mcl chest size + material = "mcl_core:darkwood" + }) + drawers.register_drawer("drawers:junglewood", { + description = S("Junglewood"), + tiles1 = drawers.node_tiles_front_other("drawers_junglewood_mcl_front_1.png", + "drawers_junglewood_mcl.png"), + tiles2 = drawers.node_tiles_front_other("drawers_junglewood_mcl_front_2.png", + "drawers_junglewood_mcl.png"), + tiles4 = drawers.node_tiles_front_other("drawers_junglewood_mcl_front_4.png", + "drawers_junglewood_mcl.png"), + groups = {choppy = 3, oddly_breakable_by_hand = 2}, + sounds = drawers.WOOD_SOUNDS, + drawer_stack_max_factor = 3 * 9, -- normal mcl chest size + material = "mcl_core:junglewood" + }) + drawers.register_drawer("drawers:sprucewood", { + description = S("Spruce Wood"), + tiles1 = drawers.node_tiles_front_other("drawers_spruce_wood_front_1.png", + "drawers_spruce_wood.png"), + tiles2 = drawers.node_tiles_front_other("drawers_spruce_wood_front_2.png", + "drawers_spruce_wood.png"), + tiles4 = drawers.node_tiles_front_other("drawers_spruce_wood_front_4.png", + "drawers_spruce_wood.png"), + groups = {choppy = 3, oddly_breakable_by_hand = 2}, + sounds = drawers.WOOD_SOUNDS, + drawer_stack_max_factor = 3 * 9, -- normal mcl chest size + material = "mcl_core:sprucewood" + }) + + -- backwards compatibility + core.register_alias("drawers:wood1", "drawers:oakwood1") + core.register_alias("drawers:wood2", "drawers:oakwood2") + core.register_alias("drawers:wood4", "drawers:oakwood4") +else + drawers.register_drawer("drawers:wood", { + description = S("Wooden"), + tiles1 = drawers.node_tiles_front_other("drawers_wood_front_1.png", + "drawers_wood.png"), + tiles2 = drawers.node_tiles_front_other("drawers_wood_front_2.png", + "drawers_wood.png"), + tiles4 = drawers.node_tiles_front_other("drawers_wood_front_4.png", + "drawers_wood.png"), + groups = {choppy = 3, oddly_breakable_by_hand = 2}, + sounds = drawers.WOOD_SOUNDS, + drawer_stack_max_factor = 3 * 8, -- normal chest size + material = drawers.WOOD_ITEMSTRING + }) +end + -- cgit v1.2.3