Added /f promote and removed faction_user requirement
This commit is contained in:
parent
3445066913
commit
48139c5877
|
@ -143,9 +143,9 @@ init_commands = function()
|
||||||
|
|
||||||
minetest.register_chatcommand("f",
|
minetest.register_chatcommand("f",
|
||||||
{
|
{
|
||||||
params = "<factionname> text",
|
params = "<command> parameters",
|
||||||
description = "send message to a specific faction",
|
description = "Factions commands. Type /f help for available commands.",
|
||||||
privs = { faction_user=true },
|
privs = { interact=true},
|
||||||
func = factions_chat.cmdhandler,
|
func = factions_chat.cmdhandler,
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
@ -470,6 +470,22 @@ factions.register_command("spawn", {
|
||||||
end
|
end
|
||||||
})
|
})
|
||||||
|
|
||||||
|
factions.register_command("promote", {
|
||||||
|
description = "Promotes a player to a rank",
|
||||||
|
format = {"player", "string"},
|
||||||
|
faction_permissions = {"promote"},
|
||||||
|
on_success = function(player, faction, pos, chunkpos, args)
|
||||||
|
local rank = args.strings[1]
|
||||||
|
if faction.ranks[rank] then
|
||||||
|
faction:promote(args.players[1], rank)
|
||||||
|
return true
|
||||||
|
else
|
||||||
|
send_error(player, "The specified rank does not exist.")
|
||||||
|
return false
|
||||||
|
end
|
||||||
|
end
|
||||||
|
})
|
||||||
|
|
||||||
factions.register_command("power", {
|
factions.register_command("power", {
|
||||||
description = "Display your faction's power",
|
description = "Display your faction's power",
|
||||||
on_success = function(player, faction, pos, chunkpos, args)
|
on_success = function(player, faction, pos, chunkpos, args)
|
||||||
|
|
10
factions.lua
10
factions.lua
|
@ -50,7 +50,7 @@ function factions.Faction:new(faction)
|
||||||
faction = {
|
faction = {
|
||||||
power = 0.,
|
power = 0.,
|
||||||
players = {},
|
players = {},
|
||||||
ranks = {["leader"] = {"disband", "claim", "playerslist", "build", "description", "ranks", "spawn", "banner"},
|
ranks = {["leader"] = {"disband", "claim", "playerslist", "build", "description", "ranks", "spawn", "banner", "promote"},
|
||||||
["moderator"] = {"claim", "playerslist", "build", "spawn"},
|
["moderator"] = {"claim", "playerslist", "build", "spawn"},
|
||||||
["member"] = {"build"}
|
["member"] = {"build"}
|
||||||
},
|
},
|
||||||
|
@ -227,11 +227,14 @@ function factions.Faction.delete_rank(self, rank, newrank)
|
||||||
self:on_delete_rank(rank, newrank)
|
self:on_delete_rank(rank, newrank)
|
||||||
factions.save()
|
factions.save()
|
||||||
end
|
end
|
||||||
|
|
||||||
function factions.Faction.set_banner(self, newbanner)
|
function factions.Faction.set_banner(self, newbanner)
|
||||||
self.banner = newbanner
|
self.banner = newbanner
|
||||||
self:on_new_banner()
|
self:on_new_banner()
|
||||||
end
|
end
|
||||||
|
function factions.Faction.promote(self, member, rank)
|
||||||
|
self.players[member] = rank
|
||||||
|
self:on_promote(member)
|
||||||
|
end
|
||||||
|
|
||||||
--------------------------
|
--------------------------
|
||||||
-- callbacks for events --
|
-- callbacks for events --
|
||||||
|
@ -283,6 +286,9 @@ end
|
||||||
function factions.Faction.on_new_banner(self)
|
function factions.Faction.on_new_banner(self)
|
||||||
--TODO: implement
|
--TODO: implement
|
||||||
end
|
end
|
||||||
|
function factions.Faction.on_promote(self, member)
|
||||||
|
--TODO: implement
|
||||||
|
end
|
||||||
|
|
||||||
--??????????????
|
--??????????????
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user