mirror of
https://github.com/PHIDIAS0303/ExpCluster.git
synced 2025-12-31 04:51:40 +09:00
Added Test role config
This commit is contained in:
@@ -100,7 +100,7 @@ Permission_Groups.new_group('Restricted')
|
|||||||
:disallow_all()
|
:disallow_all()
|
||||||
:allow('write_to_console')
|
: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 trusted_time = 60*60*60*10 -- 10 hour
|
||||||
local standard_time = 60*60*60*3 -- 3 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
|
for _,player in pairs(game.connected_players) do
|
||||||
assign_group(player)
|
assign_group(player)
|
||||||
end
|
end
|
||||||
end)
|
end)]]
|
||||||
@@ -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'
|
||||||
|
}
|
||||||
@@ -166,6 +166,9 @@ function Roles.define_role_order(order)
|
|||||||
Roles.config.order = sanitized
|
Roles.config.order = sanitized
|
||||||
for index,role in pairs(sanitized) do
|
for index,role in pairs(sanitized) do
|
||||||
Roles.config.roles[role].index = index
|
Roles.config.roles[role].index = index
|
||||||
|
if role.parent then
|
||||||
|
setmetatable(role.allow, Roles.config.roles[role.parent].allow)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
@@ -388,7 +391,9 @@ local function role_update(event)
|
|||||||
highest = role
|
highest = role
|
||||||
end
|
end
|
||||||
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
|
end
|
||||||
|
|
||||||
Event.add(Roles.player_role_assigned,role_update)
|
Event.add(Roles.player_role_assigned,role_update)
|
||||||
|
|||||||
Reference in New Issue
Block a user