--[[ Glowcrystals A Minetest mod by SegFault22 Details: Adds several items for lighting, made out of glowing crystals - a better alternative to those ugly infini-torches. --]] local get_png = function (s) return s end local reg_item = ocutil.safe_register_item local reg_node = ocutil.safe_register_node --/////////////// -- Ores & Blocks --/////////////// reg_node ("glowcrystals:ore", { description = "Glowing Crystal Ore", tiles = { "default_stone.png^" .. get_png ("glowcrystals_ore.png") } , is_ground_content = true, paramtype = "light", sunlight_propagates = true, light_source = 10, groups = {cracky=3}, sounds = default.sound_stone(), drop = "glowcrystals:glowcrystal 1", }) minetest.register_alias ("glowcrystals:glowcrystal_ore", "glowcrystals:ore") reg_node( "glowcrystals:block", { description = "Glowing Crystal Block", tiles = { get_png ("glowcrystals_block.png") } , is_ground_content = true, paramtype = "light", sunlight_propagates = true, light_source = 14, groups = {cracky=3}, sounds = default.sound_stone(), }) minetest.register_alias ("glowcrystals:glowcrystal_block", "glowcrystals:block") reg_node("glowcrystals:torch", { description = "Glowing Crystal Torch", drawtype = "plantlike", tiles = { get_png ("glowcrystals_glowtorch_floor.png") , get_png ("glowcrystals_glowtorch_ceiling.png") , get_png ("glowcrystals_glowtorch.png") , } , inventory_image = get_png ("glowcrystals_glowtorch_floor.png") , wield_image = get_png ("glowcrystals_glowtorch_floor.png") , paramtype = "light", paramtype2 = "wallmounted", sunlight_propagates = true, walkable = false, light_source = 14, selection_box = { type = "wallmounted", wall_top = {-0.1, 0.5-0.6, -0.1, 0.1, 0.5, 0.1}, wall_bottom = {-0.1, -0.5, -0.1, 0.1, -0.5+0.6, 0.1}, wall_side = {-0.5, -0.3, -0.1, -0.5+0.3, 0.3, 0.1}, }, groups = {choppy=2,dig_immediate=3,attached_node=1}, legacy_wallmounted = true, sounds = default.node_sound_defaults(), }) minetest.register_alias ("glowcrystals:glowcrystal_torch", "glowcrystals:torch") --/////// -- Items --/////// reg_item("glowcrystals:glowcrystal", { description = "Glowing Crystal", inventory_image = get_png ("glowcrystals_item.png") , on_place_on_ground = minetest.craftitem_place_item, }) --////////// -- Crafting --////////// minetest.register_craft( { output = "glowcrystals:glowcrystal_block 1", recipe = { { "glowcrystals:glowcrystal" , "glowcrystals:glowcrystal" , "glowcrystals:glowcrystal" } , { "glowcrystals:glowcrystal" , "glowcrystals:glowcrystal" , "glowcrystals:glowcrystal" } , { "glowcrystals:glowcrystal" , "glowcrystals:glowcrystal" , "glowcrystals:glowcrystal" } , } }) minetest.register_craft({ output = 'glowcrystals:glowcrystal 9', recipe = { {'glowcrystals:glowcrystal_block'}, } }) minetest.register_craft({ output = 'glowcrystals:glowcrystal_torch 4', recipe = { {'glowcrystals:glowcrystal'}, {'default:stick'}, } }) --//////////////// -- Ore Generation --//////////////// minetest.register_ore({ ore_type = "scatter", ore = "glowcrystals:ore" , wherein = "default:stone", clust_scarcity = 9*9*9, clust_num_ores = 4, clust_size = 3, height_min = -5256, height_max = -256, }) --///////// -- More Aliases --///////// minetest.register_alias ("glowcrystal" , "glowcrystals:crystal") minetest.register_alias ("glowcrystal_torch" , "glowcrystals:torch") minetest.register_alias ("glowcrystal_block" , "glowcrystals:block")