-- New nodes and crafts minetest.register_node("mtg_plus:dirty_glass", { description = "Dirty Glass", drawtype = "glasslike_framed_optional", tiles = {"mtg_plus_dirty_glass.png", "mtg_plus_dirty_glass_detail.png"}, paramtype = "light", sunlight_propagates = false, is_ground_content = false, groups = {cracky = 3, oddly_breakable_by_hand = 3}, sounds = default.node_sound_glass_defaults(), }) minetest.register_craft({ output = "mtg_plus:dirty_glass 3", recipe = { { "", "default:dirt", "" }, {"default:glass", "default:glass", "default:glass"}, } }) minetest.register_node("mtg_plus:sandstone_cobble", { description = "Sandstone Cobblestone", tiles = {"mtg_plus_sandstone_cobble.png"}, groups = {cracky = 3, stone = 1}, is_ground_content = false, sounds = default.node_sound_stone_defaults(), }) minetest.register_craft({ output = "mtg_plus:sandstone_cobble 2", recipe = { { "default:sandstone", "default:sandstone" } }, }) minetest.register_node("mtg_plus:jungle_cobble", { description = "Jungle Cobblestone", tiles = {"mtg_plus_jungle_cobble.png"}, groups = {cracky=3, stone=1}, is_ground_content = false, sounds = default.node_sound_stone_defaults(), }) minetest.register_craft({ output = "mtg_plus:jungle_cobble", type = "shapeless", recipe = { "default:jungleleaves", "default:junglegrass" }, }) minetest.register_node("mtg_plus:ice_block", { description = "Ice Block", tiles = {"mtg_plus_ice_block.png"}, groups = {cracky = 3, puts_out_fire = 1}, is_ground_content = false, paramtype = "light", sounds = default.node_sound_glass_defaults(), }) minetest.register_craft({ output = "mtg_plus:ice_block 9", recipe = { { "default:ice", "default:ice", "default:ice" }, { "default:ice", "default:ice", "default:ice" }, { "default:ice", "default:ice", "default:ice" } } }) minetest.register_node("mtg_plus:ice_tile4", { description = "Ice Tile", tiles = {"mtg_plus_ice_tile4.png"}, groups = {cracky = 3, level = 1, puts_out_fire = 1}, is_ground_content = false, paramtype = "light", sounds = default.node_sound_glass_defaults(), }) minetest.register_craft({ output = "mtg_plus:ice_tile4 4", recipe = { { "mtg_plus:ice_block", "mtg_plus:ice_block" }, { "mtg_plus:ice_block", "mtg_plus:ice_block" },} }) minetest.register_node("mtg_plus:ice_tile16", { description = "Dense Ice Tile", tiles = {"mtg_plus_ice_tile16.png"}, groups = {cracky = 3, level = 2, puts_out_fire = 1}, is_ground_content = false, sounds = default.node_sound_glass_defaults(), }) minetest.register_craft({ output = "mtg_plus:ice_tile16", recipe = { { "mtg_plus:ice_tile4", "mtg_plus:ice_tile4" }, { "mtg_plus:ice_tile4", "mtg_plus:ice_tile4" } } }) minetest.register_node("mtg_plus:ice_window", { description = "Ice Window", drawtype = "glasslike", tiles = {"mtg_plus_ice_window.png"}, sunlight_propagates = true, groups = {cracky = 3, puts_out_fire = 1}, is_ground_content = false, paramtype = "light", sounds = default.node_sound_glass_defaults(), }) minetest.register_craft({ output = "mtg_plus:ice_window", type = "cooking", recipe = "mtg_plus:ice_tile4", cooktime = 1, }) minetest.register_node("mtg_plus:papyrus_block", { description = "Papyrus Block", tiles = {"mtg_plus_papyrus_block_y.png","mtg_plus_papyrus_block_y.png","mtg_plus_papyrus_block_side2.png","mtg_plus_papyrus_block_side2.png","mtg_plus_papyrus_block_side.png","mtg_plus_papyrus_block_side.png"}, groups = {snappy = 2, choppy = 2, flammable = 3}, is_ground_content = false, sounds = default.node_sound_leaves_defaults(), }) minetest.register_craft({ output = "mtg_plus:papyrus_block", recipe = { { "default:papyrus", "default:papyrus", "default:papyrus", }, { "default:papyrus", "default:papyrus", "default:papyrus", }, { "default:papyrus", "default:papyrus", "default:papyrus", } } }) minetest.register_craft({ output = "default:papyrus 9", recipe = { { "mtg_plus:papyrus_block" } } }) minetest.register_craft({ output = "mtg_plus:papyrus_block", recipe = { { "default:papyrus", "default:papyrus", "default:papyrus", }, { "default:papyrus", "default:papyrus", "default:papyrus", }, { "default:papyrus", "default:papyrus", "default:papyrus", } } }) minetest.register_node("mtg_plus:snow_brick", { description = "Soft Snow Brick", tiles = {"mtg_plus_snow_brick.png"}, groups = {crumbly = 2, puts_out_fire = 1}, is_ground_content = false, sounds = default.node_sound_dirt_defaults({ footstep={name="default_snow_footstep", gain = 0.15}, dig={name="default_snow_footstep", gain = 0.2}, dug={name="default_snow_footstep", gain = 0.2} }), }) minetest.register_craft({ output = "mtg_plus:snow_brick 4", recipe = { { "default:snowblock", "default:snowblock" }, { "default:snowblock", "default:snowblock", } }, }) minetest.register_craft({ output = "default:snowblock 4", recipe = { { "mtg_plus:snow_brick" } }, }) minetest.register_node("mtg_plus:hard_snow_brick", { description = "Hard Snow Brick", tiles = {"mtg_plus_hard_snow_brick.png"}, groups = {crumbly = 1, cracky = 2, puts_out_fire = 1}, is_ground_content = false, sounds = default.node_sound_dirt_defaults({ dig={name="default_snow_footstep", gain = 0.2}, dug={name="default_snow_footstep", gain = 0.2} }), }) minetest.register_craft({ output = "mtg_plus:hard_snow_brick", recipe = { { "mtg_plus:snow_brick", "mtg_plus:snow_brick" }, { "mtg_plus:snow_brick", "mtg_plus:snow_brick" } }, }) minetest.register_node("mtg_plus:ice_snow_brick", { description = "Icy Snow Brick", tiles = {"mtg_plus_ice_snow_brick.png"}, groups = {cracky = 2, puts_out_fire = 1}, is_ground_content = false, sounds = default.node_sound_stone_defaults(), }) minetest.register_craft({ output = "mtg_plus:ice_snow_brick 2", type = "shapeless", recipe = { "mtg_plus:hard_snow_brick", "mtg_plus:ice_brick" }, }) minetest.register_node("mtg_plus:ice_brick", { description = "Ice Brick", tiles = {"mtg_plus_ice_brick.png"}, paramtype = "light", groups = {cracky = 3, puts_out_fire = 1}, is_ground_content = false, sounds = default.node_sound_glass_defaults(), }) minetest.register_craft({ output = "mtg_plus:ice_tile4", recipe = { { "mtg_plus:ice_block", "mtg_plus:ice_block" }, { "mtg_plus:ice_block", "mtg_plus:ice_block" }, }, }) minetest.register_craft({ output = "mtg_plus:ice_brick 4", recipe = { { "default:ice", "default:ice" }, { "default:ice", "default:ice" } }, }) -- Ladders minetest.register_node("mtg_plus:ladder_papyrus", { description = "Papyrus Ladder", 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"}}, }) -- Stairs/slabs local function simple_slab(subname, desc_slab) local itemstring = "mtg_plus:"..subname stairs.register_slab(subname, itemstring, minetest.registered_nodes[itemstring].groups, minetest.registered_nodes[itemstring].tiles, desc_slab, minetest.registered_nodes[itemstring].sounds) end local function simple_stair_slab(subname, desc_stair, desc_slab) local itemstring = "mtg_plus:"..subname stairs.register_stair_and_slab(subname, itemstring, minetest.registered_nodes[itemstring].groups, minetest.registered_nodes[itemstring].tiles, desc_stair, desc_slab, minetest.registered_nodes[itemstring].sounds) end simple_stair_slab("sandstone_cobble", "Sandstone Cobblestone Stair", "Sandstone Cobblestone Slab") simple_stair_slab("jungle_cobble", "Jungle Cobblestone Stair", "Jungle Cobblestone Slab") simple_stair_slab("hard_snow_brick", "Hard Snow Brick Stair", "Hard Snow Brick Slab") simple_stair_slab("ice_snow_brick", "Icy Snow Brick Stair", "Icy Snow Brick Slab") simple_stair_slab("ice_brick", "Ice Brick Stair", "Ice Brick Slab") simple_stair_slab("ice_tile4", "Ice Tile Stair", "Ice Tile Slab") stairs.register_slab("ice_block", "mtg_plus:ice_block", {cracky=3}, {"mtg_plus_ice_block.png", "mtg_plus_ice_block.png", "mtg_plus_ice_block_slab.png", "mtg_plus_ice_block_slab.png", "mtg_plus_ice_block_slab.png", "mtg_plus_ice_block_slab.png"}, "Ice Block Slab", minetest.registered_items["mtg_plus:ice_block"].sounds) stairs.register_stair("ice_block", "mtg_plus:ice_block", {cracky=3}, {"mtg_plus_ice_block_slab.png", "mtg_plus_ice_block.png", "mtg_plus_ice_block_stair1.png", "mtg_plus_ice_block_stair2.png", "mtg_plus_ice_block.png", "mtg_plus_ice_block_slab.png"}, "Ice Block Stair", minetest.registered_items["mtg_plus:ice_block"].sounds) -- Beds beds.register_bed("mtg_plus:bed_simple_white", { description = "White Simple Bed", inventory_image = "mtg_plus_bed_simple_white.png", wield_image = "mtg_plus_bed_simple_white.png", tiles = { bottom = { "mtg_plus_bed_simple_white_top_bottom.png^[transformR90", "default_wood.png", "mtg_plus_bed_simple_white_side_bottom_r.png", "mtg_plus_bed_simple_white_side_bottom_r.png^[transformfx", "beds_transparent.png", "mtg_plus_bed_simple_white_side_bottom.png" }, top = { "mtg_plus_bed_simple_white_top_top.png^[transformR90", "default_wood.png", "mtg_plus_bed_simple_white_side_top_r.png", "mtg_plus_bed_simple_white_side_top_r.png^[transformfx", "mtg_plus_bed_simple_white_side_top.png", "beds_transparent.png", } }, nodebox = { bottom = {-0.5, -0.5, -0.5, 0.5, 0.06, 0.5}, top = {-0.5, -0.5, -0.5, 0.5, 0.06, 0.5}, }, selectionbox = {-0.5, -0.5, -0.5, 0.5, 0.06, 1.5}, recipe = { {"wool:white", "wool:white", "wool:white"}, {"group:wood", "group:wood", "group:wood"} }, }) beds.register_bed("mtg_plus:gold_bed", { description = "Golden Bed", inventory_image = "mtg_plus_gold_bed.png", wield_image = "mtg_plus_gold_bed.png", tiles = { bottom = { "mtg_plus_gold_bed_top1.png", "default_gold_block.png", "mtg_plus_gold_bed_side1.png", "mtg_plus_gold_bed_side1.png^[transformFX", "default_gold_block.png", "mtg_plus_gold_bed_foot.png", }, top = { "mtg_plus_gold_bed_top2.png", "default_gold_block.png", "mtg_plus_gold_bed_side2.png", "mtg_plus_gold_bed_side2.png^[transformFX", "mtg_plus_gold_bed_head.png", "default_gold_block.png", } }, nodebox = { bottom = { {-0.5, -0.5, -0.5, -0.375, -0.065, -0.4375}, {0.375, -0.5, -0.5, 0.5, -0.065, -0.4375}, {-0.5, -0.375, -0.5, 0.5, -0.125, -0.4375}, {-0.5, -0.375, -0.5, -0.4375, -0.125, 0.5}, {0.4375, -0.375, -0.5, 0.5, -0.125, 0.5}, {-0.4375, -0.3125, -0.4375, 0.4375, -0.0625, 0.5}, }, top = { {-0.5, -0.5, 0.4375, -0.375, 0.1875, 0.5}, {0.375, -0.5, 0.4375, 0.5, 0.1875, 0.5}, {-0.5, 0, 0.4375, 0.5, 0.125, 0.5}, {-0.5, -0.375, 0.4375, 0.5, -0.125, 0.5}, {-0.5, -0.375, -0.5, -0.4375, -0.125, 0.5}, {0.4375, -0.375, -0.5, 0.5, -0.125, 0.5}, {-0.4375, -0.3125, -0.5, 0.4375, -0.0625, 0.4375}, } }, selectionbox = {-0.5, -0.5, -0.5, 0.5, 0.06, 1.5}, recipe = { {"", "", "group:stick"}, {"wool:yellow", "wool:yellow", "wool:yellow"}, {"default:gold_ingot", "default:gold_ingot", "default:gold_ingot"}, }, }) -- Doors doors.register("door_wood_bar", { tiles = {{ name = "mtg_plus_door_wood_bar.png", backface_culling = true }}, description = "Wooden Bar Door", inventory_image = "mtg_plus_door_wood_bar_item.png", sounds = default.node_sound_wood_defaults(), groups = { snappy = 2, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2 }, recipe = { {"group:stick", "group:stick"}, {"group:stick", "group:stick"}, {"group:stick", "group:stick"}, } }) doors.register("door_papyrus", { tiles = {{ name = "mtg_plus_door_papyrus.png", backface_culling = true }}, description = "Papyrus Door", inventory_image = "mtg_plus_door_papyrus_item.png", sounds = default.node_sound_leaves_defaults(), groups = { snappy = 2, choppy = 1, flammable = 2 }, recipe = { {"default:papyrus", "default:papyrus"}, {"farming:string", "farming:string"}, {"default:papyrus", "default:papyrus"}, } }) doors.register("door_iron_bar", { tiles = {{ name = "mtg_plus_door_iron_bar.png", backface_culling = true }}, description = "Iron Bar Door", protected = true, inventory_image = "mtg_plus_door_iron_bar_item.png", sound_open = "doors_steel_door_open", sound_close = "doors_steel_door_open", sounds = default.node_sound_stone_defaults(), groups = { snappy = 2, bendy = 1, cracky = 1, melty = 2, }, }) doors.register("door_ice", { tiles = {{ name = "mtg_plus_door_ice.png", backface_culling = true }}, description = "Ice Door", inventory_image = "mtg_plus_door_ice_item.png", groups = { cracky = 3, puts_out_fire = 1 }, sounds = default.node_sound_glass_defaults(), sound_open = "mtg_plus_door_ice_open", sound_close = "mtg_plus_door_ice_close", recipe = { {"default:ice", "default:ice"}, {"default:ice", "default:ice"}, {"default:ice", "default:ice"}, } }) doors.register("door_icesteel", { tiles = {{ name = "mtg_plus_door_icesteel.png", backface_culling = true }}, description = "Icy Steel Door", protected = true, sound_open = "doors_steel_door_open", sound_close = "doors_steel_door_close", inventory_image = "mtg_plus_door_icesteel_item.png", sounds = default.node_sound_stone_defaults(), groups = { snappy = 1, bendy = 2, cracky = 3, melty = 3, level = 2, puts_out_fire = 1 }, }) minetest.register_craft({ output = "doors:door_icesteel 2", type = "shapeless", recipe = {"doors:door_ice", "doors:door_steel"}, }) -- Walls walls.register("mtg_plus:wall_sandstone_cobble", "Sandstone Cobblestone Wall", "mtg_plus_sandstone_cobble.png", "mtg_plus:sandstone_cobble", default.node_sound_stone_defaults()) walls.register("mtg_plus:wall_jungle_cobble", "Jungle Cobblestone Wall", "mtg_plus_jungle_cobble.png", "mtg_plus:jungle_cobble", default.node_sound_stone_defaults()) walls.register("mtg_plus:wall_ice_tile16", "Dense Ice Tile Wall", "mtg_plus_ice_tile16.png", "mtg_plus:ice_tile16", default.node_sound_glass_defaults()) -- xpanes xpanes.register_pane("paper", { description = "Paper Wall", inventory_image = "mtg_plus_paperwall.png", wield_image = "mtg_plus_paperwall.png", textures = {"mtg_plus_paperwall.png", "mtg_plus_paperwall.png", "mtg_plus_paperwall.png"}, groups = {snappy=3, flammable=4, pane=1}, sounds = { footstep = {name="mtg_plus_paper_step", gain=0.1, max_hear_distance=7}, place = {name="mtg_plus_paper_step", gain=0.3, max_hear_distance=13}, dig = {name="mtg_plus_paper_dig", gain=0.1, max_hear_distance=11}, dug = {name="mtg_plus_paper_dug", gain=0.2, max_hear_distance=13}, }, recipe = { { "default:paper", "default:paper", "default:paper" }, { "default:paper", "default:paper", "default:paper" }, } }) xpanes.register_pane("wood", { description = "Wooden Bars", inventory_image = "mtg_plus_wooden_bar.png", wield_image = "mtg_plus_wooden_bar.png", textures = {"mtg_plus_wooden_bar.png", "mtg_plus_wooden_bar_side.png", "mtg_plus_wooden_bar_y.png"}, groups = {choppy=3, oddly_breakable_by_hand=2, flammable=2, pane=1}, sounds = default.node_sound_wood_defaults(), recipe = { { "group:wood", "", "group:wood" }, { "group:wood", "", "group:wood" }, { "group:wood", "", "group:wood" }, } }) xpanes.register_pane("obsidian_glass", { description = "Obsidian Glass Pane", inventory_image = "default_obsidian_glass.png", wield_image = "default_obsidian_glass.png", textures = {"default_obsidian_glass.png", "mtg_plus_obsidian_glass_pane_half.png", "default_obsidian.png"}, groups = {cracky=3, pane=1}, sounds = default.node_sound_glass_defaults(), recipe = { { "default:obsidian_glass", "default:obsidian_glass", "default:obsidian_glass" }, { "default:obsidian_glass", "default:obsidian_glass", "default:obsidian_glass" }, } }) xpanes.register_pane("papyrus", { description = "Papyrus Lattice", inventory_image = "mtg_plus_papyrus_lattice.png", wield_image = "mtg_plus_papyrus_lattice.png", textures = {"mtg_plus_papyrus_lattice.png","mtg_plus_papyrus_lattice.png","mtg_plus_papyrus_lattice.png"}, groups = {snappy=2, choppy=1, flammable=2,pane=1}, sounds = default.node_sound_leaves_defaults(), recipe = { { "default:papyrus", "farming:string", "default:papyrus" }, { "default:papyrus", "farming:string", "default:papyrus" }, } }) xpanes.register_pane("ice", { description = "Ice Window Pane", inventory_image = "mtg_plus_ice_window.png", wield_image = "mtg_plus_ice_window.png", textures = {"mtg_plus_ice_window.png", "mtg_plus_ice_window.png", "mtg_plus_ice_window.png"}, groups = {cracky=3, pane=1}, sounds = default.node_sound_glass_defaults(), recipe = { { "mtg_plus:ice_window", "mtg_plus:ice_window", "mtg_plus:ice_window", }, { "mtg_plus:ice_window", "mtg_plus:ice_window", "mtg_plus:ice_window", } } }) -- moreblocks extras if minetest.get_modpath("moreblocks") then walls.register("mtg_plus:wall_cobble_compressed", "Compressed Cobblestone Wall", "moreblocks_cobble_compressed.png", "moreblocks:cobble_compressed", default.node_sound_stone_defaults()) local groups = minetest.registered_items["mtg_plus:wall_cobble_compressed"].groups groups.cracky = 1 minetest.override_item("mtg_plus:wall_cobble_compressed", { groups = groups }) minetest.register_craft({ type = "shapeless", output = "default:glass", recipe = {"mtg_plus:dirty_glass", "moreblocks:sweeper"} }) minetest.register_craft({ type = "shapeless", output = "moreblocks:clean_glass", recipe = {"mtg_plus:dirty_glass", "moreblocks:sweeper", "moreblocks:sweeper"} }) minetest.register_craft({ output = "mtg_plus:dirty_glass", recipe = { {"default:dirt"}, {"moreblocks:clean_glass"} } }) minetest.register_craft({ type = "shapeless", output = "mtg_plus:ice_window", recipe = { "mtg_plus:ice_tile4", "moreblocks:sweeper" }, }) end