Added Test role config

This commit is contained in:
Cooldude2606
2019-04-09 19:09:02 +01:00
parent f442605866
commit d7474947f0
3 changed files with 52 additions and 4 deletions

View File

@@ -100,7 +100,7 @@ Permission_Groups.new_group('Restricted')
:disallow_all()
:allow('write_to_console')
--- These events are used until a role system is added to make it easier for our admins
--[[ These events are used until a role system is added to make it easier for our admins
local trusted_time = 60*60*60*10 -- 10 hour
local standard_time = 60*60*60*3 -- 3 hour
@@ -137,4 +137,4 @@ Event.on_nth_tick(check_interval,function(event)
for _,player in pairs(game.connected_players) do
assign_group(player)
end
end)
end)]]

View File

@@ -1 +1,44 @@
local Roles = require 'expcore.roles'
local Roles = require 'expcore.roles'
-- Use these to adjust for ticks ie game.tick < 5*minutes
local seconds, minutes, hours = 60, 3600, 216000
local function playtime(time_required)
return function(player)
if player.online_time > time_required then
return true
end
end
end
Roles.define_flag_trigger('admin',function(player,state)
player.admin = state
end)
Roles.new_role('Server','SYS')
:set_allow_all(true)
Roles.new_role('Senior Admin','SAdmin')
:set_allow_all(false)
:set_flag('admin',true)
:set_parent('Regular')
:set_permission_group('Admin')
Roles.new_role('Regular','Reg')
:set_allow_all(false)
:set_auto_promote_condition(playtime(5*minutes))
:set_parent('Guest')
:set_permission_group('Trusted')
Roles.new_role('Guest','')
:set_allow_all(false)
:set_permission_group('Standard')
Roles.set_root('Server')
Roles.set_default('Guest')
Roles.define_role_order{
'Server',
'Senior Admin',
'Guest'
}

View File

@@ -166,6 +166,9 @@ function Roles.define_role_order(order)
Roles.config.order = sanitized
for index,role in pairs(sanitized) do
Roles.config.roles[role].index = index
if role.parent then
setmetatable(role.allow, Roles.config.roles[role.parent].allow)
end
end
end
@@ -388,7 +391,9 @@ local function role_update(event)
highest = role
end
end
Groups.set_player_group(player,highest.permission_group)
if highest.permission_group then
Groups.set_player_group(player,highest.permission_group)
end
end
Event.add(Roles.player_role_assigned,role_update)