Combind some privs
This commit is contained in:
parent
269690d279
commit
6c3d35c9b2
@ -783,7 +783,7 @@ factions.register_command("show_parcel", {
|
|||||||
factions.register_command("new_rank", {
|
factions.register_command("new_rank", {
|
||||||
description = "Add a new rank.",
|
description = "Add a new rank.",
|
||||||
format = {"string"},
|
format = {"string"},
|
||||||
faction_permissions = {"create_ranks"},
|
faction_permissions = {"ranks"},
|
||||||
global_privileges = def_global_privileges,
|
global_privileges = def_global_privileges,
|
||||||
on_success = function(player, faction, pos, parcelpos, args)
|
on_success = function(player, faction, pos, parcelpos, args)
|
||||||
if args.strings[1] then
|
if args.strings[1] then
|
||||||
@ -800,6 +800,8 @@ factions.register_command("new_rank", {
|
|||||||
if f == r then
|
if f == r then
|
||||||
success = true
|
success = true
|
||||||
break
|
break
|
||||||
|
else
|
||||||
|
success = false
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
if not success and _ ~= 1 then
|
if not success and _ ~= 1 then
|
||||||
@ -827,7 +829,7 @@ factions.register_command("new_rank", {
|
|||||||
factions.register_command("replace_privs", {
|
factions.register_command("replace_privs", {
|
||||||
description = "Deletes current permissions and replaces them with the ones given.",
|
description = "Deletes current permissions and replaces them with the ones given.",
|
||||||
format = {"string"},
|
format = {"string"},
|
||||||
faction_permissions = {"edit_ranks"},
|
faction_permissions = {"ranks"},
|
||||||
global_privileges = def_global_privileges,
|
global_privileges = def_global_privileges,
|
||||||
on_success = function(player, faction, pos, parcelpos, args)
|
on_success = function(player, faction, pos, parcelpos, args)
|
||||||
if args.strings[1] then
|
if args.strings[1] then
|
||||||
@ -844,6 +846,8 @@ factions.register_command("replace_privs", {
|
|||||||
if f == r then
|
if f == r then
|
||||||
success = true
|
success = true
|
||||||
break
|
break
|
||||||
|
else
|
||||||
|
success = false
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
if not success and _ ~= 1 then
|
if not success and _ ~= 1 then
|
||||||
@ -871,7 +875,7 @@ factions.register_command("replace_privs", {
|
|||||||
factions.register_command("remove_privs", {
|
factions.register_command("remove_privs", {
|
||||||
description = "Remove permissions from a rank.",
|
description = "Remove permissions from a rank.",
|
||||||
format = {"string"},
|
format = {"string"},
|
||||||
faction_permissions = {"edit_ranks"},
|
faction_permissions = {"ranks"},
|
||||||
global_privileges = def_global_privileges,
|
global_privileges = def_global_privileges,
|
||||||
on_success = function(player, faction, pos, parcelpos, args)
|
on_success = function(player, faction, pos, parcelpos, args)
|
||||||
if args.strings[1] then
|
if args.strings[1] then
|
||||||
@ -888,6 +892,8 @@ factions.register_command("remove_privs", {
|
|||||||
if f == r then
|
if f == r then
|
||||||
success = true
|
success = true
|
||||||
break
|
break
|
||||||
|
else
|
||||||
|
success = false
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
if not success and _ ~= 1 then
|
if not success and _ ~= 1 then
|
||||||
@ -915,7 +921,7 @@ factions.register_command("remove_privs", {
|
|||||||
factions.register_command("add_privs", {
|
factions.register_command("add_privs", {
|
||||||
description = "add permissions to a rank.",
|
description = "add permissions to a rank.",
|
||||||
format = {"string"},
|
format = {"string"},
|
||||||
faction_permissions = {"edit_ranks"},
|
faction_permissions = {"ranks"},
|
||||||
global_privileges = def_global_privileges,
|
global_privileges = def_global_privileges,
|
||||||
on_success = function(player, faction, pos, parcelpos, args)
|
on_success = function(player, faction, pos, parcelpos, args)
|
||||||
if args.strings[1] then
|
if args.strings[1] then
|
||||||
@ -932,6 +938,8 @@ factions.register_command("add_privs", {
|
|||||||
if f == r then
|
if f == r then
|
||||||
success = true
|
success = true
|
||||||
break
|
break
|
||||||
|
else
|
||||||
|
success = false
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
if not success and _ ~= 1 then
|
if not success and _ ~= 1 then
|
||||||
@ -959,7 +967,7 @@ factions.register_command("add_privs", {
|
|||||||
factions.register_command("set_rank_name", {
|
factions.register_command("set_rank_name", {
|
||||||
description = "Change the name of given rank.",
|
description = "Change the name of given rank.",
|
||||||
format = {"string","string"},
|
format = {"string","string"},
|
||||||
faction_permissions = {"edit_ranks"},
|
faction_permissions = {"ranks"},
|
||||||
global_privileges = def_global_privileges,
|
global_privileges = def_global_privileges,
|
||||||
on_success = function(player, faction, pos, parcelpos, args)
|
on_success = function(player, faction, pos, parcelpos, args)
|
||||||
local rank = args.strings[1]
|
local rank = args.strings[1]
|
||||||
@ -980,7 +988,7 @@ factions.register_command("set_rank_name", {
|
|||||||
factions.register_command("del_rank", {
|
factions.register_command("del_rank", {
|
||||||
description = "Replace and delete a rank.",
|
description = "Replace and delete a rank.",
|
||||||
format = {"string", "string"},
|
format = {"string", "string"},
|
||||||
faction_permissions = {"delete_ranks"},
|
faction_permissions = {"ranks"},
|
||||||
global_privileges = def_global_privileges,
|
global_privileges = def_global_privileges,
|
||||||
on_success = function(player, faction, pos, parcelpos, args)
|
on_success = function(player, faction, pos, parcelpos, args)
|
||||||
local rank = args.strings[1]
|
local rank = args.strings[1]
|
||||||
@ -997,7 +1005,7 @@ factions.register_command("del_rank", {
|
|||||||
factions.register_command("set_def_rank", {
|
factions.register_command("set_def_rank", {
|
||||||
description = "Change the default rank given to new players and also replace rankless players in this faction.",
|
description = "Change the default rank given to new players and also replace rankless players in this faction.",
|
||||||
format = {"string"},
|
format = {"string"},
|
||||||
faction_permissions = {"set_def_ranks"},
|
faction_permissions = {"ranks"},
|
||||||
global_privileges = def_global_privileges,
|
global_privileges = def_global_privileges,
|
||||||
on_success = function(player, faction, pos, parcelpos, args)
|
on_success = function(player, faction, pos, parcelpos, args)
|
||||||
local rank = args.strings[1]
|
local rank = args.strings[1]
|
||||||
@ -1013,7 +1021,7 @@ factions.register_command("set_def_rank", {
|
|||||||
factions.register_command("reset_ranks", {
|
factions.register_command("reset_ranks", {
|
||||||
description = "Reset's all of the factions rankings back to the default ones.",
|
description = "Reset's all of the factions rankings back to the default ones.",
|
||||||
format = {},
|
format = {},
|
||||||
faction_permissions = {"reset_ranks"},
|
faction_permissions = {"ranks"},
|
||||||
global_privileges = def_global_privileges,
|
global_privileges = def_global_privileges,
|
||||||
on_success = function(player, faction, pos, parcelpos, args)
|
on_success = function(player, faction, pos, parcelpos, args)
|
||||||
faction:reset_ranks()
|
faction:reset_ranks()
|
||||||
@ -1023,7 +1031,7 @@ factions.register_command("reset_ranks", {
|
|||||||
|
|
||||||
factions.register_command("set_spawn", {
|
factions.register_command("set_spawn", {
|
||||||
description = "Set the faction's spawn",
|
description = "Set the faction's spawn",
|
||||||
faction_permissions = {"set_spawn"},
|
faction_permissions = {"spawn"},
|
||||||
global_privileges = def_global_privileges,
|
global_privileges = def_global_privileges,
|
||||||
on_success = function(player, faction, pos, parcelpos, args)
|
on_success = function(player, faction, pos, parcelpos, args)
|
||||||
faction:set_spawn(pos)
|
faction:set_spawn(pos)
|
||||||
@ -1033,7 +1041,7 @@ factions.register_command("set_spawn", {
|
|||||||
|
|
||||||
factions.register_command("del_spawn", {
|
factions.register_command("del_spawn", {
|
||||||
description = "Set the faction's spawn to zero",
|
description = "Set the faction's spawn to zero",
|
||||||
faction_permissions = {"unset_spawn"},
|
faction_permissions = {"spawn"},
|
||||||
global_privileges = def_global_privileges,
|
global_privileges = def_global_privileges,
|
||||||
on_success = function(player, faction, pos, parcelpos, args)
|
on_success = function(player, faction, pos, parcelpos, args)
|
||||||
faction:set_spawn({x=0,y=0,z=0})
|
faction:set_spawn({x=0,y=0,z=0})
|
||||||
|
46
factions.lua
46
factions.lua
@ -36,8 +36,8 @@ util = {
|
|||||||
factions.Faction.__index = factions.Faction
|
factions.Faction.__index = factions.Faction
|
||||||
|
|
||||||
starting_ranks = {["leader"] = {"build","door","container","name","description","motd","invite","kick"
|
starting_ranks = {["leader"] = {"build","door","container","name","description","motd","invite","kick"
|
||||||
,"player_title","set_spawn","unset_spawn","with_draw","territory","claim","access","disband","flags","create_ranks","edit_ranks","delete_ranks","set_def_ranks","reset_ranks","promote"},
|
,"player_title","spawn","with_draw","territory","claim","access","disband","flags","ranks","promote"},
|
||||||
["moderator"] = {"claim","door","build","set_spawn","invite","kick","promote"},
|
["moderator"] = {"claim","door","build","spawn","invite","kick","promote"},
|
||||||
["member"] = {"build","container","door"}
|
["member"] = {"build","container","door"}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -53,20 +53,14 @@ starting_ranks = {["leader"] = {"build","door","container","name","description",
|
|||||||
-- invite: (un)invite players to join the faction
|
-- invite: (un)invite players to join the faction
|
||||||
-- kick: kick players off the faction
|
-- kick: kick players off the faction
|
||||||
-- player_title: set player titles
|
-- player_title: set player titles
|
||||||
-- set_spawn: set the faction's spawn
|
-- spawn: set the faction's spawn
|
||||||
-- unset_spawn: delete the faction's spawn
|
|
||||||
-- with_draw: withdraw money from the faction's bank
|
-- with_draw: withdraw money from the faction's bank
|
||||||
-- spawn: be able to teleport to the faction's spawn
|
|
||||||
-- territory: claim or unclaim territory
|
-- territory: claim or unclaim territory
|
||||||
-- claim: (un)claim parcels of land
|
-- claim: (un)claim parcels of land
|
||||||
-- access: manage access to territory and parcels of land to players or factions
|
-- access: manage access to territory and parcels of land to players or factions
|
||||||
-- disband: disband the faction
|
-- disband: disband the faction
|
||||||
-- flags: manage faction's flags
|
-- flags: manage faction's flags
|
||||||
-- create_ranks: create new ranks
|
-- ranks: create, edit, and delete ranks
|
||||||
-- edit_ranks: edit rank name and permissions
|
|
||||||
-- delete_ranks: delete ranks
|
|
||||||
-- set_def_ranks: set the default rank given to new players
|
|
||||||
-- reset_ranks: reset the ranks back to the default ones
|
|
||||||
-- promote: set a player's rank
|
-- promote: set a player's rank
|
||||||
-- declare_war: be able to declare war with another faction
|
-- declare_war: be able to declare war with another faction
|
||||||
-- neutral: be able to send a neutral request to another faction
|
-- neutral: be able to send a neutral request to another faction
|
||||||
@ -75,11 +69,11 @@ starting_ranks = {["leader"] = {"build","door","container","name","description",
|
|||||||
-- refuse_treaty: be able to refuse a treaty request from another faction
|
-- refuse_treaty: be able to refuse a treaty request from another faction
|
||||||
|
|
||||||
factions.permissions = {"build","pain_build","door","container","name","description","motd","invite","kick"
|
factions.permissions = {"build","pain_build","door","container","name","description","motd","invite","kick"
|
||||||
,"player_title","set_spawn","unset_spawn","with_draw","territory","claim","access","disband","flags","create_ranks","edit_ranks","delete_ranks","set_def_ranks","reset_ranks","promote"}
|
,"player_title","spawn","with_draw","territory","claim","access","disband","flags","ranks","promote"}
|
||||||
factions.permissions_desc = {"dig and place nodes","dig and place nodes but take damage doing so","open/close or dig","be able to use containers like chest","set the faction's name"
|
factions.permissions_desc = {"dig and place nodes","dig and place nodes but take damage doing so","open/close or dig","be able to use containers like chest","set the faction's name"
|
||||||
,"Set the faction description","set the faction's message of the day","(un)invite players to join the faction","kick players off the faction","set player titles","set the faction's spawn"
|
,"Set the faction description","set the faction's message of the day","(un)invite players to join the faction","kick players off the faction","set player titles","set the faction's spawn"
|
||||||
,"delete the faction's spawn","withdraw money from the faction's bank","claim or unclaim territory","(un)claim parcels of land","manage access to territory and parcels of land to players or factions"
|
,"withdraw money from the faction's bank","claim or unclaim territory","(un)claim parcels of land","manage access to territory and parcels of land to players or factions"
|
||||||
,"disband the faction","manage faction's flags","create new ranks","edit rank permissions","delete ranks","set the default rank given to new players","reset the ranks back to the default ones","set a player's rank"}
|
,"disband the faction","manage faction's flags","create, edit, and delete ranks"}
|
||||||
|
|
||||||
-- open: can the faction be joined without an invite?
|
-- open: can the faction be joined without an invite?
|
||||||
-- monsters: can monsters spawn on your land?
|
-- monsters: can monsters spawn on your land?
|
||||||
@ -110,17 +104,6 @@ if factions_config.faction_diplomacy == true then
|
|||||||
starting_ranks["leader"] = lt
|
starting_ranks["leader"] = lt
|
||||||
end
|
end
|
||||||
|
|
||||||
if factions_config.spawn_teleport == true then
|
|
||||||
table.insert(factions.permissions,"spawn")
|
|
||||||
|
|
||||||
table.insert(factions.permissions_desc,"be able to teleport to the faction's spawn")
|
|
||||||
|
|
||||||
table.insert(starting_ranks["leader"],"spawn")
|
|
||||||
table.insert(starting_ranks["moderator"],"spawn")
|
|
||||||
table.insert(starting_ranks["member"],"spawn")
|
|
||||||
|
|
||||||
end
|
|
||||||
|
|
||||||
function factions.Faction:new(faction)
|
function factions.Faction:new(faction)
|
||||||
faction = {
|
faction = {
|
||||||
name = "",
|
name = "",
|
||||||
@ -1195,7 +1178,7 @@ function factions.convert(filename)
|
|||||||
file:close()
|
file:close()
|
||||||
|
|
||||||
local data = minetest.deserialize(raw_data)
|
local data = minetest.deserialize(raw_data)
|
||||||
local old_permissions = {"disband", "claim", "playerslist", "build", "description", "ranks", "spawn", "promote","diplomacy"}
|
local old_permissions = {"disband", "claim", "playerslist", "build", "description", "promote", "diplomacy"}
|
||||||
|
|
||||||
for facname,faction in pairs(data) do
|
for facname,faction in pairs(data) do
|
||||||
local newfac = factions.new_faction(facname,true)
|
local newfac = factions.new_faction(facname,true)
|
||||||
@ -1224,13 +1207,6 @@ function factions.convert(filename)
|
|||||||
table.remove(faction.ranks[rank],index)
|
table.remove(faction.ranks[rank],index)
|
||||||
table.insert(faction.ranks[rank],"kick")
|
table.insert(faction.ranks[rank],"kick")
|
||||||
table.insert(faction.ranks[rank],"invite")
|
table.insert(faction.ranks[rank],"invite")
|
||||||
elseif value == "ranks" then
|
|
||||||
table.remove(faction.ranks[rank],index)
|
|
||||||
table.insert(faction.ranks[rank],"create_ranks")
|
|
||||||
table.insert(faction.ranks[rank],"edit_ranks")
|
|
||||||
table.insert(faction.ranks[rank],"delete_ranks")
|
|
||||||
table.insert(faction.ranks[rank],"set_def_ranks")
|
|
||||||
table.insert(faction.ranks[rank],"reset_ranks")
|
|
||||||
elseif value == "diplomacy" then
|
elseif value == "diplomacy" then
|
||||||
table.remove(faction.ranks[rank],index)
|
table.remove(faction.ranks[rank],index)
|
||||||
table.insert(faction.ranks[rank],"declare_war")
|
table.insert(faction.ranks[rank],"declare_war")
|
||||||
@ -1238,12 +1214,6 @@ function factions.convert(filename)
|
|||||||
table.insert(faction.ranks[rank],"alliance")
|
table.insert(faction.ranks[rank],"alliance")
|
||||||
table.insert(faction.ranks[rank],"accept_treaty")
|
table.insert(faction.ranks[rank],"accept_treaty")
|
||||||
table.insert(faction.ranks[rank],"refuse_treaty")
|
table.insert(faction.ranks[rank],"refuse_treaty")
|
||||||
elseif value == "spawn" then
|
|
||||||
if not factions_config.spawn_teleport == true then
|
|
||||||
table.remove(faction.ranks[rank],index)
|
|
||||||
end
|
|
||||||
table.insert(faction.ranks[rank],"set_spawn")
|
|
||||||
table.insert(faction.ranks[rank],"unset_spawn")
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
Loading…
Reference in New Issue
Block a user