feat: core admins trough discord roles

This commit is contained in:
Andyyy7666
2023-10-21 21:44:17 +02:00
parent a3279ea5c8
commit 0fa2ee4d4b
3 changed files with 16 additions and 3 deletions

View File

@@ -59,10 +59,11 @@ setr core:disableVehicleAirControl true
setr core:useInventoryForKeys true
# You can set admins here by their identifiers, admins will receive admin group in core and have access to group.admin ace perms.
# Admins get access to commands and more.
set core:admins ["fivem:1459624"]
# You can also use Discord role ids, Admins get access to commands and more.
set core:admins ["fivem:1459624", "fivem:1152629"]
set core:adminDiscordRoles ["944284542758449212", "93422454258349612", "93345451558145232"]
# Allow ox_lib to use commands, don't remove this.
# Allow ox_lib to use commands, don't remove this!
add_ace resource.ox_lib command.add_ace allow
add_ace resource.ox_lib command.remove_ace allow
add_ace resource.ox_lib command.add_principal allow

View File

@@ -22,6 +22,7 @@ Config = {
useInventoryForKeys = GetConvarInt("core:useInventoryForKeys", 1) == 1,
groups = json.decode(GetConvar("core:groups", "[]")),
admins = json.decode(GetConvar("core:admins", "[]")),
adminDiscordRoles = json.decode(GetConvar("core:adminDiscordRoles", "[]")),
multiCharacter = false
}

View File

@@ -285,6 +285,17 @@ local function createCharacterTable(info)
self.addGroup("admin")
end
end
local roles = self.discord.roles
if roles then
for i=1, #Config.adminDiscordRoles do
local role = Config.adminDiscordRoles[i]
if lib.table.contains(roles, role) then
self.addGroup("admin")
end
end
end
for name, _ in pairs(self.groups) do
lib.addPrincipal(self.source, ("group.%s"):format(name))
end