local cvt_node = default.convert_node local need_node minetest.register_node("earthgen:savanna_tree", { description = "Savannawood Tree", tiles = {"earthgen_dry_tree_top.png", "earthgen_dry_tree_top.png", "earthgen_dry_tree.png"}, groups = {tree=1,choppy=2,oddly_breakable_by_hand=1,flammable=2}, sounds = default.node_sound_wood_defaults(), }) minetest.register_node("earthgen:savanna_leaves", { description = "Savannawood Leaves", drawtype = "allfaces_optional", visual_scale = 1.3, tiles = {"earthgen_dry_leaves.png"}, paramtype = "light", groups = {snappy=3, leafdecay=3, flammable=2, leaves=1}, trunk = "earthgen:savanna_tree", -- Support for BASE and Voxelgarden waving = 1, drop = { max_items = 1, items = { { items = {'earthgen:savanna_sapling'}, rarity = 20, }, { items = {'earthgen:savanna_leaves'}, } } }, sounds = default.node_sound_leaves_defaults(), }) minetest.register_node("earthgen:savanna_wood", { description = "Savannawood Planks", tiles = {"earthgen_dry_wood.png"}, groups = {choppy=2,oddly_breakable_by_hand=2,flammable=3,wood=1}, sounds = default.node_sound_wood_defaults(), }) minetest.register_craft({ output = 'earthgen:savanna_wood 4', recipe = { {'earthgen:savanna_tree'}, } }) minetest.register_node("earthgen:savanna_sapling", { description = "Savannawood Sapling", drawtype = "plantlike", visual_scale = 1.0, tiles = {"earthgen_dry_sapling.png"}, inventory_image = "earthgen_dry_sapling.png", wield_image = "earthgen_dry_sapling.png", paramtype = "light", walkable = false, selection_box = { type = "fixed", fixed = {-0.3, -0.5, -0.3, 0.3, 0.35, 0.3} }, groups = {snappy=2,dig_immediate=3,flammable=2,attached_node=1}, sounds = default.node_sound_leaves_defaults(), }) minetest.register_abm({ nodenames = {"earthgen:savanna_sapling"}, interval = 10, chance = 50, action = function(pos, node) local vm = minetest.get_voxel_manip() local minp, maxp = vm:read_from_map({x=pos.x-10, y=pos.y, z=pos.z-10}, {x=pos.x+10, y=pos.y+20, z=pos.z+10}) local a = VoxelArea:new{MinEdge=minp, MaxEdge=maxp} local data = vm:get_data() add_savannatree(data, a, pos.x, pos.y, pos.z, minp, maxp, PseudoRandom(math.random(1,100000))) vm:set_data(data) vm:write_to_map(data) vm:update_map() end }) minetest.register_node("earthgen:dirt_with_dry_grass", { description = "Dry Grass", tiles = {"earthgen_dry_grass.png", "default_dirt.png", "default_dirt.png^earthgen_dry_grass_side.png"}, is_ground_content = true, groups = {crumbly=3,soil=1}, drop = 'default:dirt', sounds = default.node_sound_dirt_defaults({ footstep = {name="default_grass_footstep", gain=0.25}, }), }) minetest.register_node("earthgen:pine_tree", { description = "Pine Tree", tiles = {"earthgen_pine_tree_top.png", "earthgen_pine_tree_top.png", "earthgen_pine_tree.png"}, groups = {tree=1,choppy=2,oddly_breakable_by_hand=1,flammable=2}, sounds = default.node_sound_wood_defaults(), }) minetest.register_node("earthgen:pine_leaves", { description = "Pine Leaves", drawtype = "allfaces_optional", visual_scale = 1.3, tiles = {"earthgen_pine_leaves.png"}, paramtype = "light", groups = {snappy=3, leafdecay=3, flammable=2, leaves=1}, trunk = "earthgen:pine_tree", -- Support for BASE and Voxelgarden waving = 1, drop = { max_items = 1, items = { { items = {'earthgen:pine_sapling'}, rarity = 20, }, { items = {'earthgen:pine_leaves'}, } } }, sounds = default.node_sound_leaves_defaults(), }) need_node = "earthgen:pine_wood" -- minetest.register_node (need_node, { description = "Pine Planks", tiles = {"earthgen_pine_wood.png"}, groups = {choppy=2,oddly_breakable_by_hand=2,flammable=3,wood=1}, sounds = default.node_sound_wood_defaults(), }) cvt_node ("earthgen:pine__wood", need_node) minetest.register_craft({ output = 'earthgen:pine_wood 4', recipe = { {'earthgen:pine_tree'}, } }) minetest.register_node("earthgen:pine_sapling", { description = "Pine Sapling", drawtype = "plantlike", visual_scale = 1.0, tiles = {"earthgen_pine_sapling.png"}, inventory_image = "earthgen_pine_sapling.png", wield_image = "earthgen_pine_sapling.png", paramtype = "light", walkable = false, selection_box = { type = "fixed", fixed = {-0.3, -0.5, -0.3, 0.3, 0.35, 0.3} }, groups = {snappy=2,dig_immediate=3,flammable=2,attached_node=1}, sounds = default.node_sound_leaves_defaults(), }) minetest.register_abm({ nodenames = {"earthgen:pine_sapling"}, interval = 10, chance = 50, action = function(pos, node) local vm = minetest.get_voxel_manip() local minp, maxp = vm:read_from_map({x=pos.x-10, y=pos.y, z=pos.z-10}, {x=pos.x+10, y=pos.y+30, z=pos.z+10}) local a = VoxelArea:new{MinEdge=minp, MaxEdge=maxp} local data = vm:get_data() add_pinetree(data, a, pos.x, pos.y, pos.z, minp, maxp, PseudoRandom(math.random(1,100000)), c_air) vm:set_data(data) vm:write_to_map(data) vm:update_map() end }) minetest.register_node("earthgen:ignore", { description = "MG Ignore", drawtype = "airlike", sunlight_propagates = true, groups = {snappy=2,not_in_creative_inventory=1}, }) -- =================================================================== local egcvt = { { "pinetree" , "pine_tree" } , { "pineleaves" , "pine_leaves" } , { "pinesapling" , "pine_sapling" } , { "pinewood" , "pine_wood" } , { "savannatree" , "savanna_tree" } , { "savannaleaves" , "savanna_leaves" } , { "savannasapling" , "savanna_sapling" } , { "savannawood" , "savanna_wood" } , } for _, row in ipairs (egcvt) do local old = "earthgen:" .. row [1] local new = "earthgen:" .. row [2] default.convert_node (old, new) end -- =================================================================== minetest.log ("action", "REALM " .. earthgen.REALM_HEIGHT_MIDPOINT)