]> git.lizzy.rs Git - xdecor.git/commitdiff
Rope: prevent placing in non-owned protected areas
authorJean-Patrick Guerrero <jeanpatrick.guerrero@gmail.com>
Fri, 25 Mar 2016 13:43:47 +0000 (14:43 +0100)
committerJean-Patrick Guerrero <jeanpatrick.guerrero@gmail.com>
Fri, 25 Mar 2016 13:43:47 +0000 (14:43 +0100)
rope.lua

index d8255b0e46a0751359a7ce2888e15434c176c2d1..3ef95ab6e414f9128d330bfe3d394ecf561aadd1 100644 (file)
--- a/rope.lua
+++ b/rope.lua
@@ -7,13 +7,14 @@ minetest.register_on_punchnode(function(pos, oldnode, digger)
        end
 end)
 
-function rope.place(itemstack, _, pointed_thing)
+function rope.place(itemstack, placer, pointed_thing)
        if pointed_thing.type == "node" then
                local under = pointed_thing.under
                local above = pointed_thing.above
                local pos = above
                local oldnode = minetest.get_node(pos)
                local stackname = itemstack:get_name()
+               if minetest.is_protected(pos, placer:get_player_name()) then return end
 
                while oldnode.name == "air" and not itemstack:is_empty() do
                        local newnode = {name = stackname, param1 = 0}