diff options
author | Calinou <calinou9999spam@gmail.com> | 2013-11-24 10:32:32 -0800 |
---|---|---|
committer | Calinou <calinou9999spam@gmail.com> | 2013-11-24 10:32:32 -0800 |
commit | 92e4dc8e29954e1f07776a96eb6cb69b01dd6d5b (patch) | |
tree | c4be707e88adb35d25a794f71ca79b245fd527e0 /ownership.lua | |
parent | d75c46b468c71013f93ac2defaee5625b23e5574 (diff) | |
parent | 4b4e10ff1d4f1bde96c47331738e4af27bec6142 (diff) | |
download | moreblocks-92e4dc8e29954e1f07776a96eb6cb69b01dd6d5b.tar.gz moreblocks-92e4dc8e29954e1f07776a96eb6cb69b01dd6d5b.tar.bz2 moreblocks-92e4dc8e29954e1f07776a96eb6cb69b01dd6d5b.zip |
Merge pull request #5 from VanessaE/master
Rewrite slightly to use the new 6d facedir prediction code in builtin
Diffstat (limited to 'ownership.lua')
-rw-r--r-- | ownership.lua | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/ownership.lua b/ownership.lua new file mode 100644 index 0000000..9cd4cb3 --- /dev/null +++ b/ownership.lua @@ -0,0 +1,35 @@ + +local S = moreblocks.gettext + +function moreblocks.node_is_owned(pos, placer) + local ownername = false + if type(IsPlayerNodeOwner) == "function" then -- node_ownership mod + if HasOwner(pos, placer) then -- returns true if the node is owned + if not IsPlayerNodeOwner(pos, placer:get_player_name()) then + if type(getLastOwner) == "function" then -- ...is an old version + ownername = getLastOwner(pos) + elseif type(GetNodeOwnerName) == "function" then -- ...is a recent version + ownername = GetNodeOwnerName(pos) + else + ownername = S("someone") + end + end + end + + elseif type(isprotect)=="function" then -- glomie's protection mod + if not isprotect(5, pos, placer) then + ownername = S("someone") + end + elseif type(protector)=="table" and type(protector.can_dig)=="function" then -- Zeg9's protection mod + if not protector.can_dig(5, pos, placer) then + ownername = S("someone") + end + end + + if ownername ~= false then + minetest.chat_send_player( placer:get_player_name(), S("Sorry, %s owns that spot."):format(ownername) ) + return true + else + return false + end +end |