Changes on placement checks

This commit is contained in:
José Douglas da Silva Souza 2024-05-13 04:56:51 -03:00 committed by GitHub
parent 1ce48351ea
commit a6d5468511
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -45,15 +45,18 @@ for i in ipairs (butter_list) do
floodable = true, floodable = true,
on_place = function(itemstack, placer, pointed_thing) on_place = function(itemstack, placer, pointed_thing)
local player_name = placer and placer:get_player_name() or "" local player_name = placer and placer:get_player_name() or ""
local pos = pointed_thing.above local apos = pointed_thing.above
if not minetest.is_protected(pos, player_name) and if minetest.is_protected(pos, player_name) or minetest.is_protected(pointed_thing.under, player_name) then
not minetest.is_protected(pointed_thing.under, player_name) and return
minetest.get_node(pos).name == "air" then
minetest.set_node(pos, {name = "butterflies:butterfly_"..name})
minetest.get_node_timer(pos):start(1)
itemstack:take_item()
end end
local _, sucess = minetest.item_place(itemstack, placer, pointed_thing)
if sucess then
minetest.get_node_timer(pos):start(1)
end
return itemstack return itemstack
end, end,
on_timer = function(pos, elapsed) on_timer = function(pos, elapsed)
@ -78,15 +81,18 @@ for i in ipairs (butter_list) do
floodable = true, floodable = true,
on_place = function(itemstack, placer, pointed_thing) on_place = function(itemstack, placer, pointed_thing)
local player_name = placer and placer:get_player_name() or "" local player_name = placer and placer:get_player_name() or ""
local pos = pointed_thing.above local apos = pointed_thing.above
if not minetest.is_protected(pos, player_name) and if minetest.is_protected(pos, player_name) or minetest.is_protected(pointed_thing.under, player_name) then
not minetest.is_protected(pointed_thing.under, player_name) and return
minetest.get_node(pos).name == "air" then
minetest.set_node(pos, {name = "butterflies:hidden_butterfly_"..name})
minetest.get_node_timer(pos):start(1)
itemstack:take_item()
end end
local _, sucess = minetest.item_place(itemstack, placer, pointed_thing)
if sucess then
minetest.get_node_timer(pos):start(1)
end
return itemstack return itemstack
end, end,
on_timer = function(pos, elapsed) on_timer = function(pos, elapsed)