forked from minetest-mods/areas
Make all admin checks use one table
This commit is contained in:
parent
65013863b2
commit
57c18fce95
|
@ -35,7 +35,7 @@ minetest.register_chatcommand("set_owner", {
|
|||
description = "Protect an area beetween two positions and give"
|
||||
.." a player access to it without setting the parent of the"
|
||||
.." area to any existing area",
|
||||
privs = {areas=true},
|
||||
privs = areas.adminPrivs,
|
||||
func = function(name, param)
|
||||
local ownerName, areaName = param:match('^(%S+)%s(.+)$')
|
||||
|
||||
|
@ -175,7 +175,7 @@ minetest.register_chatcommand("find_areas", {
|
|||
minetest.register_chatcommand("list_areas", {
|
||||
description = "List your areas, or all areas if you are an admin.",
|
||||
func = function(name, param)
|
||||
local admin = minetest.check_player_privs(name, {areas=true})
|
||||
local admin = minetest.check_player_privs(name, areas.adminPrivs)
|
||||
local areaStrings = {}
|
||||
for id, area in pairs(areas.areas) do
|
||||
if admin or areas:isAreaOwner(id, name) then
|
||||
|
|
|
@ -109,7 +109,7 @@ end
|
|||
-- Also checks the size of the area and if the user already
|
||||
-- has more than max_areas.
|
||||
function areas:canPlayerAddArea(pos1, pos2, name)
|
||||
if minetest.check_player_privs(name, {areas=true}) then
|
||||
if minetest.check_player_privs(name, self.adminPrivs) then
|
||||
return true
|
||||
end
|
||||
|
||||
|
@ -188,7 +188,7 @@ end
|
|||
-- Checks if a player owns an area or a parent of it
|
||||
function areas:isAreaOwner(id, name)
|
||||
local cur = self.areas[id]
|
||||
if cur and minetest.check_player_privs(name, {areas=true}) then
|
||||
if cur and minetest.check_player_privs(name, self.adminPrivs) then
|
||||
return true
|
||||
end
|
||||
while cur do
|
||||
|
|
|
@ -5,7 +5,7 @@ minetest.register_chatcommand("legacy_load_areas", {
|
|||
params = "<version>",
|
||||
description = "Loads, converts, and saves the areas from"
|
||||
.." a legacy save file.",
|
||||
privs = {areas=true, server=true, privs=true},
|
||||
privs = {areas=true, server=true},
|
||||
func = function(name, param)
|
||||
minetest.chat_send_player(name, "Converting areas...")
|
||||
local version = tonumber(param)
|
||||
|
@ -86,7 +86,7 @@ end
|
|||
|
||||
-- Checks if a node is owned by you
|
||||
function areas.isNodeOwner(pos, name)
|
||||
if minetest.check_player_privs(name, {areas=true}) then
|
||||
if minetest.check_player_privs(name, areas.adminPrivs) then
|
||||
return true
|
||||
end
|
||||
for id, area in pairs(areas:getAreasAtPos(pos)) do
|
||||
|
|
Loading…
Reference in New Issue
Block a user