-- =================================================================== -- Light. minetest.register_node ("nftools:light", { drawtype = "glasslike" , tiles = { "nftools_debug.png" } , is_ground_content = true , paramtype = "light" , light_source = default.LIGHT_MAX - 1 , groups = { cracky = 3, oddly_breakable_by_hand=2, } , sounds = default.sound_stone() , }) -- =================================================================== -- Mese Pickaxe. minetest.register_tool ("nftools:pick_mese", { description = "Mese Pickaxe with light", inventory_image = "nftools_mesepick.png", wield_image = "nftools_mesepick_wield.png", tool_capabilities = { full_punch_interval = 1.0, max_drop_level=3, groupcaps={ cracky={times={[1]=2.0, [2]=1.0, [3]=0.5}, uses=20, maxlevel=3}, crumbly={times={[1]=2.0, [2]=1.0, [3]=0.5}, uses=20, maxlevel=3}, snappy={times={[1]=2.0, [2]=1.0, [3]=0.5}, uses=20, maxlevel=3} } }, }) minetest.register_craft ({ output = 'nftools:pick_mese', recipe = { {'default:torch'}, {'default:pick_mese'}, } }) -- =================================================================== -- Stool. minetest.register_node ("nftools:stool",{ description = "Wooden Stool", tiles = {"nftools_stool.png"}, drop = 'nftools:stool', groups = {choppy=2,oddly_breakable_by_hand=2,flammable=3,wood=1}, sounds = default.sound_wood(), drawtype="nodebox", paramtype = "light", node_box = { type = "fixed", fixed = { {0.412500,-0.500000,-0.500000,0.500000,0.000000,-0.437500}, --NodeBox 1 {-0.500000,-0.500000,-0.500000,-0.437500,0.000000,-0.437500}, --NodeBox 2 {0.412500,-0.500000,0.437504,0.500000,0.000000,0.500000}, --NodeBox 3 {-0.500000,-0.500000,0.462500,-0.437500,0.000000,0.500000}, --NodeBox 4 {-0.500000,0.000000,-0.500000,0.500000,0.062500,0.500000}, --NodeBox 5 } } }) -- =================================================================== -- Quartz crystals. minetest.register_node ("nftools:quartz_crystals", { description = "Quartz Crystals", tiles = {"nftools_quartz_crystal.png"}, is_ground_content = true, groups = {cracky=1,level=2}, sounds = default.sound_stone(), drawtype="nodebox", paramtype = "light", paramtype2="facedir", sunlight_propagates = true, node_box = { type = "fixed", fixed = { {-0.437500,-0.500000,-0.437500,0.425000,-0.250000,0.425004}, {-0.375000,-0.250000,0.187500,-0.250000,0.500000,0.312500}, {0.062500,-0.250000,-0.187500,0.312500,0.375000,0.125000}, {-0.312500,-0.500000,-0.250000,-0.125000,0.125000,0.000000}, {-0.187500,-0.250000,-0.437500,0.125000,0.500000,-0.250000}, {0.000000,-0.312500,0.187500,0.250000,0.312500,0.375000}, {-0.125000,-0.187500,-0.250000,0.062500,0.312500,0.000000}, {0.125000,-0.250000,-0.375000,0.375000,0.375000,-0.187500}, {-0.250000,-0.250000,0.062500,0.000000,0.125000,0.375000}, } } }) -- =================================================================== -- Ore. minetest.register_ore ({ ore_type = "scatter", ore = "nftools:stone_with_bismuth" , wherein = "default:stone" , clust_scarcity = 24*24*24 , clust_num_ores = 4 , clust_size = 3 , y_max = -64 , y_min = -31000 , flags = "absheight" , }) -- =================================================================== minetest.register_ore ({ ore_type = "scatter", ore = "nftools:stone_with_amber", wherein = "default:stone", clust_scarcity = 48*48*48 , clust_num_ores = 1 , clust_size = 2 , y_max = -8 , y_min = -64 , flags = "absheight" , }) -- =================================================================== minetest.register_ore({ ore_type = "scatter", ore = "nftools:stone_with_blackopal", wherein = "default:stone", clust_scarcity = 48*48*48 , clust_num_ores = 1 , clust_size = 2 , y_max = -128 , y_min = -256 , }) minetest.register_alias ("nftools:amethyst_ore", "nftools:stone_with_blackopal") -- =================================================================== minetest.register_ore ({ ore_type = "scatter", ore = "nftools:stone_with_turquoise", wherein = "default:stone", clust_scarcity = 24*24*24 , clust_num_ores = 3 , clust_size = 3 , y_max = -8 , y_min = -64 , flags = "absheight" , }) -- =================================================================== -- Bismuth (formerly Alexandrite) minetest.register_craftitem ("nftools:bismuth", { description = "Bismuth", inventory_image = "nftools_bismuth.png", }) minetest.register_node ("nftools:stone_with_bismuth", { description = "Raw Bismuth", tiles = {"default_stone.png^nftools_mineral_bismuth.png"}, is_ground_content = true, groups = {cracky=1}, drop = "nftools:stone_with_bismuth", }) -- =================================================================== -- Smelting (only metals). minetest.register_craft ({ type = "cooking", output = "nftools:bismuth", recipe = "nftools:stone_with_bismuth", }) -- =================================================================== -- Amber. minetest.register_node ("nftools:stone_with_amber", { description = "Rough Amber", tiles = {"default_stone.png^nftools_mineral_amber.png"}, is_ground_content = true, groups = {cracky=1}, drop = "nftools:amber_chip", }) minetest.register_alias ("nftools:amber", "nftools:stone_with_amber") minetest.register_craftitem ("nftools:amber_chip", { description = "Amber", inventory_image = "nftools_amberchip.png", }) -- =================================================================== -- Turquoise (formerly Aquamarine). minetest.register_node ("nftools:stone_with_turquoise", { description = "Rough Turquoise", tiles = {"default_stone.png^nftools_mineral_turquoise.png"}, is_ground_content = true, groups = {cracky=1}, drop = "nftools:turquoise", }) minetest.register_craftitem ("nftools:turquoise", { description = "Turquoise", inventory_image = "nftools_turquoise.png", }) -- =================================================================== -- Black Opal (formerly Amethyst). minetest.register_craftitem ("nftools:blackopal", { description = "Black Opal", inventory_image = "nftools_blackopal.png", }) minetest.register_node ("nftools:stone_with_blackopal", { description = "Rough Black Opal", tiles = {"default_stone.png^nftools_mineral_blackopal.png"}, is_ground_content = true, groups = {cracky=1}, drop = "nftools:blackopal", }) -- =================================================================== -- Sunflower. minetest.register_node ("nftools:sunflower", { description = "Sunflower", drawtype = "plantlike", visual_scale = 1.5, tiles = {"nftools_sunflower.png"}, inventory_image = "nftools_sunflower.png", wield_image = "nftools_sunflower.png", paramtype = "light", walkable = false, buildable_to = true, is_ground_content = true, groups = {snappy=3,flammable=2,flora=1,attached_node=1}, selection_box = { type = "fixed", fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5}, }, }) -- =================================================================== -- Blocks. minetest.register_node ("nftools:amberblock", { description = "Amber Block", alpha = 170, sunlight_propagates = true, tiles = {"nftools_amber_block.png"}, is_ground_content = true, groups = {cracky=1}, drop = "nftools:amberblock", }) local function registerblockrecipe (name, blockname) minetest.register_craft ({ output = blockname, recipe = {{name, name, name}, {name, name, name}, {name, name, name} } }) minetest.register_craft ({ output = name..' 9', recipe = { {blockname}, } }) end registerblockrecipe('nftools:amber_chip', 'nftools:amberblock') -- TBD: We need to support "coderblocks" without depending on it. if minetest.get_modpath ("quartz") ~= nil then minetest.register_craft ({ output = "nftools:quartz_crystals", recipe = { {'', '', ''}, {'', 'quartz:quartz_crystal', ''}, {'quartz:quartz_crystal', 'nftools:amberblock', 'quartz:quartz_crystal'} } }) minetest.register_craft ({ output = "quartz:quartz_crystal" .. ' 3', recipe = { {"nftools:quartz_crystals"}, } }) end -- =================================================================== -- Scythe. minetest.register_tool ("nftools:scythe", { description = "Scythe", inventory_image = "nftools_tool_scythe.png", wield_scale = { x = 1.5, y = 1.5, z = 0.25 } , tool_capabilities = { full_punch_interval = 0.8, max_drop_level=1, groupcaps={ snappy={times={[1]=2.5, [2]=1.20, [3]=0.35}, uses=100, maxlevel=2}, }, damage_groups = {fleshy=6}, } }) minetest.register_craft ({ output = 'nftools:scythe', recipe = { {'default:steel_ingot', 'default:steel_ingot', 'default:steel_ingot'}, {'', '', 'default:stick'}, {'', '', 'default:stick'}, } }) -- =================================================================== -- Mace. minetest.register_tool ("nftools:mace", { description = "Mace", inventory_image = "nftools_tool_mace.png", wield_scale = { x = 1.5, y = 1.5, z = 0.75 } , tool_capabilities = { full_punch_interval = 1.5, max_drop_level=1, groupcaps={ snappy={times={[1]=2.5, [2]=1.20, [3]=0.35}, uses=70, maxlevel=2}, }, damage_groups = {fleshy=5}, } }) minetest.register_craft ({ output = 'nftools:mace', recipe = { {'default:obsidian_shard', 'default:steel_ingot', 'default:obsidian_shard'}, {'', 'default:stick', ''}, {'', 'default:stick', ''}, } }) -- =================================================================== -- Battle-axe minetest.register_tool ("nftools:battleaxe", { description = "Battle Axe", inventory_image = "nftools_tool_battleaxe.png", wield_scale = { x = 1.5, y = 1.5, z = 0.25 } , tool_capabilities = { full_punch_interval = 0.8, max_drop_level=1, groupcaps={ snappy={times={[1]=2.5, [2]=1.20, [3]=0.35}, uses=40, maxlevel=2}, }, damage_groups = {fleshy=4}, } }) minetest.register_craft ({ output = 'nftools:battleaxe', recipe = { {'default:cobble', 'default:cobble', 'default:cobble'}, {'', 'default:cobble', ''}, {'', 'default:stick', ''}, } })