add admin_node privilege
admin_node -> Player can dig the node that is owned by other player.master
parent
5078757867
commit
1f3b4228ee
|
@ -8,16 +8,19 @@ License: GPLv3
|
||||||
|
|
||||||
]]--
|
]]--
|
||||||
|
|
||||||
|
--add adminnode provilege
|
||||||
|
|
||||||
|
minetest.register_privilege("admin_node", "Player can dig the node that is owned by other player.")
|
||||||
|
|
||||||
-- override minetest.item_place_node
|
-- override minetest.item_place_node
|
||||||
local old_item_place_node = minetest.item_place_node
|
local old_item_place_node = minetest.item_place_node
|
||||||
function minetest.item_place_node(itemstack, placer, pointed_thing)
|
function minetest.item_place_node(itemstack, placer, pointed_thing)
|
||||||
local player = placer:get_player_name()
|
local player = placer:get_player_name()
|
||||||
local base_node = minetest.env:get_meta(pointed_thing.under)
|
local base_node = minetest.env:get_meta(pointed_thing.under)
|
||||||
local owner = base_node:get_string("owner")
|
local owner = base_node:get_string("owner")
|
||||||
|
|
||||||
-- do not allow placing onto other players nodes
|
-- do not allow placing onto other players nodes
|
||||||
if owner ~= player and owner ~= '' then
|
if owner ~= player and owner ~= '' and privs.admin_node ~= true then
|
||||||
minetest.chat_send_player(player, "You can not place nodes here because it is owned by "..owner..".")
|
minetest.chat_send_player(player, "You can not place nodes here because it is owned by "..owner..".")
|
||||||
return itemstack
|
return itemstack
|
||||||
end
|
end
|
||||||
|
@ -40,7 +43,7 @@ function minetest.node_dig(pos, node, digger)
|
||||||
local owner = meta:get_string("owner")
|
local owner = meta:get_string("owner")
|
||||||
|
|
||||||
-- do not allow digging other players nodes
|
-- do not allow digging other players nodes
|
||||||
if owner ~= player and owner ~= '' then
|
if owner ~= player and owner ~= '' and privs.admin_node ~= true then
|
||||||
minetest.chat_send_player(player, "You can not dig this node because it is owned by "..owner..".")
|
minetest.chat_send_player(player, "You can not dig this node because it is owned by "..owner..".")
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
@ -50,4 +53,4 @@ function minetest.node_dig(pos, node, digger)
|
||||||
end
|
end
|
||||||
|
|
||||||
-- log that we started
|
-- log that we started
|
||||||
minetest.log("action", "[MOD]"..minetest.get_current_modname().." -- loaded from "..minetest.get_modpath(minetest.get_current_modname()))
|
minetest.log("action", "[MOD]"..minetest.get_current_modname().." -- loaded from "..minetest.get_modpath(minetest.get_current_modname()))
|
||||||
|
|
Loading…
Reference in New Issue