artifact.registered_nodes = {} function artifact.register_node(name, def) artifact.registered_nodes[name] = def def._name = name if not name:find ":" then name = "artifact:"..name end if artifact.debug then if not def.groups then def.groups = {} end def.groups.dig_immediate = 3 end minetest.register_node(":"..name, def) if name ~= def._name then minetest.register_alias(def._name, name) end end function artifact.register_craftitem(name, def) def._name = name if not name:find ":" then name = "artifact:"..name end minetest.register_craftitem(":"..name, def) if name ~= def._name then minetest.register_alias(def._name, name) end end local function rep(tx, size) local out = "[combine:"..(size *16).."x"..(size *16) for x = 0, size -1 do for y = 0, size -1 do out = out..":"..(x *16)..","..(y *16).."="..tx end end return out end artifact.register_node("stone", { tiles = {"artifact_stone.png"} }) artifact.register_node("stone_bricks", { tiles = {"artifact_stone_bricks.png"} }) artifact.register_node("stone_bricks_small", { tiles = {"artifact_stone_bricks_small.png"} }) artifact.register_node("stone_tile", { tiles = {"artifact_stone_tile.png"} }) artifact.register_node("stone_tile_small", { tiles = {"artifact_stone_tile_small.png"} }) artifact.register_node("vines", { drawtype = "nodebox", node_box = { type = "fixed", fixed = { -0.5, -0.5, 0.48, 0.5, 0.5, 0.48 } }, walkable = false, selection_box = { type = "fixed", fixed = { -0.5, -0.5, 0.5, 0.5, 0.5, 0.45 } }, paramtype = "light", paramtype2 = "facedir", tiles = {"artifact_vines.png"}, use_texture_alpha = true }) artifact.register_node("leaves", { drawtype = "allfaces", -- paramtype = "light", tiles = {"artifact_leaves.png"}, use_texture_alpha = true }) artifact.register_node("wood_planks", { tiles = {"artifact_wood_planks.png"} }) artifact.register_node("ladder_wood", { drawtype = "mesh", mesh = "artifact_ladder.obj", paramtype = "light", paramtype2 = "facedir", tiles = {"artifact_ladder_wood.png"}, walkable = false, climbable = true }) artifact.register_node("lamp_gold", { drawtype = "mesh", mesh = "artifact_lamp.obj", tiles = {"artifact_lamp_gold.png"}, light_source = 8, paramtype = "light", sunlight_propagates = true }) artifact.register_node("lamp_red", { drawtype = "mesh", mesh = "artifact_lamp.obj", tiles = {"artifact_lamp_red.png"}, light_source = 6, paramtype = "light", sunlight_propagates = true }) artifact.register_node("lamp_blue", { drawtype = "mesh", mesh = "artifact_lamp.obj", tiles = {"artifact_lamp_blue.png"}, light_source = 10, paramtype = "light", sunlight_propagates = true }) artifact.register_node("light", { tiles = {"artifact_light.png"}, paramtype = "light", light_source = 14 }) minetest.override_item("air", { sunlight_propagates = false, light_source = 2 }) minetest.register_mapgen_script(minetest.get_modpath(minetest.get_current_modname()).."/mapgen.lua") minetest.register_decoration { deco_type = "simple", decoration = "lamp_gold", place_on = "stone", fill_ratio = 0.02, }