From c0481ea4ca03fd1de8f868e0b5f864cf5a9339b9 Mon Sep 17 00:00:00 2001 From: sys4 Date: Wed, 15 Jul 2020 01:46:52 +0200 Subject: [PATCH] Fix mods comp. using callback on_rightclick with mese fragment --- portal_api.lua | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/portal_api.lua b/portal_api.lua index 9b5df54..20862fe 100644 --- a/portal_api.lua +++ b/portal_api.lua @@ -2153,19 +2153,24 @@ end function nether.register_portal_ignition_item(item_name, ignition_failure_sound) minetest.override_item(item_name, { - on_place = function(stack, _, pt) + on_place = function(stack, placer, pt) + local node = minetest.get_node(pt.under) + local def = minetest.registered_nodes[node.name] local done = false - if pt.under and nether.is_frame_node[minetest.get_node(pt.under).name] then + + if pt.under and nether.is_frame_node[node.name] then done = ignite_portal(pt.under) if done and not minetest.settings:get_bool("creative_mode") then stack:take_item() end + elseif def and def.on_rightclick then + def.on_rightclick(pt.under, node, placer, stack, pt) end + if not done and ignition_failure_sound ~= nil then minetest.sound_play(ignition_failure_sound, {pos = pt.under, max_hear_distance = 10}) end - return stack end, }) @@ -2301,4 +2306,4 @@ function nether.find_nearest_working_portal(portal_name, anchorPos, distance_lim end end return nil -end \ No newline at end of file +end