diff --git a/mods/ITEMS/mcl_beds/respawn_anchor.lua b/mods/ITEMS/mcl_beds/respawn_anchor.lua index 469a8ba4f..a19a986ce 100644 --- a/mods/ITEMS/mcl_beds/respawn_anchor.lua +++ b/mods/ITEMS/mcl_beds/respawn_anchor.lua @@ -88,11 +88,11 @@ for i=0,4 do end -minetest.register_craft({ --TODO: Please change this crafting recipe once crying obsidian is implemented! +minetest.register_craft({ output = "mcl_beds:respawn_anchor", recipe = { - {"mcl_core:obsidian", "mcl_core:obsidian", "mcl_core:obsidian"}, + {"mcl_core:crying_obsidian", "mcl_core:crying_obsidian", "mcl_core:crying_obsidian"}, {"mcl_nether:glowstone", "mcl_nether:glowstone", "mcl_nether:glowstone"}, - {"mcl_core:obsidian", "mcl_core:obsidian", "mcl_core:obsidian"} + {"mcl_core:crying_obsidian", "mcl_core:crying_obsidian", "mcl_core:crying_obsidian"} } }) diff --git a/mods/ITEMS/mcl_core/functions.lua b/mods/ITEMS/mcl_core/functions.lua index fc08a0957..48719d96e 100644 --- a/mods/ITEMS/mcl_core/functions.lua +++ b/mods/ITEMS/mcl_core/functions.lua @@ -1698,3 +1698,44 @@ function mcl_core.after_snow_destruct(pos) local node = minetest.get_node(npos) mcl_core.clear_snow_dirt(npos, node) end + + +-- Obsidian crying + +local crying_obsidian_tears = { + "mcl_core_crying_obsidian_tear.png", + "mcl_core_crying_obsidian_tear2.png", + "mcl_core_crying_obsidian_tear3.png" +} + +local psdef = { + amount = 10, + time = 0.9, --everything longer than 1 is a coord exploit + minvel = vector.new(0,-0.15,0), + maxvel = vector.new(0,-0.001,0), + minacc = vector.new(0,-0.1,0), + maxacc = vector.new(0,-0.001,0), + minexptime = 1, + maxexptime = 6, + minsize = 0.1, + maxsize = 0.25, + collisiondetection = true, + collision_removal = true, + object_collision = true, + vertical = true, +} + +minetest.register_abm({ + label = "Obsidian cries", + nodenames = {"mcl_core:crying_obsidian"}, + interval = 60, + chance = 10, + action = function(pos, node) + psdef.minpos = vector.offset(pos,-0.6,-0.51,-0.6) + psdef.maxpos = vector.offset(pos,0.6,-0.51,0.6) + for _,t in pairs(crying_obsidian_tears) do + psdef.texture = t + minetest.add_particlespawner(psdef) + end + end +}) diff --git a/mods/ITEMS/mcl_core/nodes_base.lua b/mods/ITEMS/mcl_core/nodes_base.lua index 005b00525..957b1f24a 100644 --- a/mods/ITEMS/mcl_core/nodes_base.lua +++ b/mods/ITEMS/mcl_core/nodes_base.lua @@ -831,6 +831,19 @@ minetest.register_node("mcl_core:obsidian", { end, }) +minetest.register_node("mcl_core:crying_obsidian", { + description = S("Crying Obsidian"), + _doc_items_longdesc = S("Crying obsidian is a luminous obsidian that can generate as part of ruined portals."), + tiles = {"default_obsidian.png^mcl_core_crying_obsidian.png"}, + is_ground_content = false, + light_source = 10, + sounds = mcl_sounds.node_sound_stone_defaults(), + stack_max = 64, + groups = {pickaxey=5, building_block=1, material_stone=1}, + _mcl_blast_resistance = 1200, + _mcl_hardness = 50, +}) + minetest.register_node("mcl_core:ice", { description = S("Ice"), _doc_items_longdesc = S("Ice is a solid block usually found in cold areas. It melts near block light sources at a light level of 12 or higher. When it melts or is broken while resting on top of another block, it will turn into a water source."), diff --git a/mods/ITEMS/mcl_core/textures/mcl_core_crying_obsidian.png b/mods/ITEMS/mcl_core/textures/mcl_core_crying_obsidian.png new file mode 100644 index 000000000..6229fe08a Binary files /dev/null and b/mods/ITEMS/mcl_core/textures/mcl_core_crying_obsidian.png differ diff --git a/mods/ITEMS/mcl_core/textures/mcl_core_crying_obsidian_tear.png b/mods/ITEMS/mcl_core/textures/mcl_core_crying_obsidian_tear.png new file mode 100644 index 000000000..94d9bd21a Binary files /dev/null and b/mods/ITEMS/mcl_core/textures/mcl_core_crying_obsidian_tear.png differ diff --git a/mods/ITEMS/mcl_core/textures/mcl_core_crying_obsidian_tear2.png b/mods/ITEMS/mcl_core/textures/mcl_core_crying_obsidian_tear2.png new file mode 100644 index 000000000..07d1978ba Binary files /dev/null and b/mods/ITEMS/mcl_core/textures/mcl_core_crying_obsidian_tear2.png differ diff --git a/mods/ITEMS/mcl_core/textures/mcl_core_crying_obsidian_tear3.png b/mods/ITEMS/mcl_core/textures/mcl_core_crying_obsidian_tear3.png new file mode 100644 index 000000000..ea0f58393 Binary files /dev/null and b/mods/ITEMS/mcl_core/textures/mcl_core_crying_obsidian_tear3.png differ