check if machine is protected before trying to break/place a node (#43)

* check if target is protected before trying to break/place a node, so as not to trigger protection violations

* check whether the machine is protected, not the target
This commit is contained in:
fluxionary 2022-09-17 16:03:55 -07:00 committed by GitHub
parent 65cea1e33c
commit e45eca76e1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -336,11 +336,7 @@ if pipeworks.enable_node_breaker then
masquerade_as_owner = true,
sneak = false,
act = function(virtplayer, pointed_thing)
local player_name = virtplayer:get_player_name()
if (
minetest.is_protected(pointed_thing.above, player_name) or
minetest.is_protected(pointed_thing.under, player_name)
) then
if minetest.is_protected(vector.add(virtplayer:get_pos(), assumed_eye_pos), virtplayer:get_player_name()) then
return
end
@ -435,11 +431,7 @@ if pipeworks.enable_deployer then
masquerade_as_owner = true,
sneak = false,
act = function(virtplayer, pointed_thing)
local player_name = virtplayer:get_player_name()
if (
minetest.is_protected(pointed_thing.above, player_name) or
minetest.is_protected(pointed_thing.under, player_name)
) then
if minetest.is_protected(vector.add(virtplayer:get_pos(), assumed_eye_pos), virtplayer:get_player_name()) then
return
end