mirror of
https://github.com/PHIDIAS0303/ExpCluster.git
synced 2025-12-27 11:35:22 +09:00
38 lines
1.4 KiB
Lua
38 lines
1.4 KiB
Lua
--- Adds some parse functions that can be used with the role system
|
|
local Commands = require 'expcore.commands'
|
|
local Roles = require 'expcore.roles'
|
|
require 'config.command_parse_general'
|
|
|
|
Commands.add_parse('role',function(input,player,reject)
|
|
if not input then return end
|
|
local role = Roles.get_role_from_any(input)
|
|
if not role then
|
|
return reject{'expcore-role.reject-role'}
|
|
else
|
|
return role
|
|
end
|
|
end)
|
|
|
|
Commands.add_parse('player-role',function(input,player,reject)
|
|
local input_player = Commands.parse('player',input,player,reject)
|
|
if not input_player then return end -- nil check
|
|
local player_highest = Roles.get_player_highest_role(player)
|
|
local input_player_highest = Roles.get_player_highest_role(input_player)
|
|
if player_highest.index < input_player_highest.index then
|
|
return input_player
|
|
else
|
|
return reject{'expcore-roles.reject-player-role'}
|
|
end
|
|
end)
|
|
|
|
Commands.add_parse('player-role-online',function(input,player,reject)
|
|
local input_player = Commands.parse('player-role',input,player,reject)
|
|
if not input_player then return end -- nil check
|
|
return Commands.parse('player-online',input_player,player,reject)
|
|
end)
|
|
|
|
Commands.add_parse('player-role-alive',function(input,player,reject)
|
|
local input_player = Commands.parse('player-role',input,player,reject)
|
|
if not input_player then return end -- nil check
|
|
return Commands.parse('player-alive',input_player,player,reject)
|
|
end) |