2015-01-11 22:21:33 +01:00
|
|
|
--[[
|
2015-01-12 17:46:22 +01:00
|
|
|
More Blocks: ownership handling
|
2015-01-11 22:21:33 +01:00
|
|
|
|
2020-01-01 04:09:24 +01:00
|
|
|
Copyright © 2011-2020 Hugo Locurcio and contributors.
|
2015-01-11 22:21:33 +01:00
|
|
|
Licensed under the zlib license. See LICENSE.md for more information.
|
|
|
|
--]]
|
2013-11-08 04:16:37 +01:00
|
|
|
|
2019-03-03 20:02:40 +01:00
|
|
|
local S = moreblocks.S
|
2013-11-08 04:16:37 +01:00
|
|
|
|
|
|
|
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
|
|
|
|
|
2016-12-15 23:56:45 +01:00
|
|
|
elseif type(isprotect)=="function" then -- glomie's protection mod
|
2013-11-08 04:16:37 +01:00
|
|
|
if not isprotect(5, pos, placer) then
|
|
|
|
ownername = S("someone")
|
|
|
|
end
|
2016-12-15 23:56:45 +01:00
|
|
|
elseif type(protector)=="table" and type(protector.can_dig)=="function" then -- Zeg9's protection mod
|
2013-11-08 04:16:37 +01:00
|
|
|
if not protector.can_dig(5, pos, placer) then
|
|
|
|
ownername = S("someone")
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
if ownername ~= false then
|
2018-07-13 14:03:30 +02:00
|
|
|
minetest.chat_send_player( placer:get_player_name(), S("Sorry, @1 owns that spot.", ownername) )
|
2013-11-08 04:16:37 +01:00
|
|
|
return true
|
|
|
|
else
|
|
|
|
return false
|
|
|
|
end
|
|
|
|
end
|