fix(server/player): updating admin & group roles on character activate

This commit is contained in:
Andyyy7666
2026-03-16 05:45:49 +01:00
parent ba2d4951b9
commit df0d0a8160

View File

@@ -341,16 +341,35 @@ local function createCharacterTable(info)
local roles = self.discord.roles local roles = self.discord.roles
if roles then if roles then
local hasAdmin = false
for i=1, #Config.adminDiscordRoles do for i=1, #Config.adminDiscordRoles do
local role = Config.adminDiscordRoles[i] local role = Config.adminDiscordRoles[i]
if lib.table.contains(roles, role) then if lib.table.contains(roles, role) then
self.addGroup("admin") hasAdmin = true
break
end end
end end
for group, role in pairs(Config.groupRoles) do if hasAdmin then
if lib.table.contains(roles, role) then self.addGroup("admin")
elseif self.groups["admin"] then
self.removeGroup("admin")
end
local function hasRole(groupRoles)
for i=1, #groupRoles do
local role = groupRoles[i]
if lib.table.contains(roles, role) then
return true
end
end
end
for group, groupRoles in pairs(Config.groupRoles) do
if hasRole(groupRoles) then
self.addGroup(group) self.addGroup(group)
elseif self.groups[group] then
self.removeGroup(group)
end end
end end
end end