mirror of
https://github.com/PHIDIAS0303/ExpCluster.git
synced 2025-12-30 04:21:41 +09:00
Added Jail and some other stuff
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
local Commands = require 'expcore.commands'
|
||||
local format_chat_player_name = ext_require('expcore.common','format_chat_player_name')
|
||||
require 'config.command_parse_general'
|
||||
|
||||
Commands.new_command('admin-chat','Sends a message in chat that only admins can see.')
|
||||
@@ -7,12 +8,10 @@ Commands.new_command('admin-chat','Sends a message in chat that only admins can
|
||||
:set_flag('admin_only',true)
|
||||
:add_alias('ac')
|
||||
:register(function(player,message,raw)
|
||||
local pcc = player and player.chat_color or {r=255,g=255,b=255}
|
||||
local player_name = player and player.name or '<Server>'
|
||||
local colour = string.format('%s,%s,%s',pcc.r,pcc.g,pcc.b)
|
||||
local player_name_colour = format_chat_player_name(player)
|
||||
for _,return_player in pairs(game.connected_players) do
|
||||
if return_player.admin then
|
||||
return_player.print{'exp-commands.admin-chat-format',player_name,message,colour}
|
||||
return_player.print{'exp-commands.admin-chat-format',player_name_colour,message}
|
||||
end
|
||||
end
|
||||
return Commands.success -- prevents command complete message from showing
|
||||
|
||||
@@ -72,4 +72,7 @@ Commands.new_command('chelp','Searches for a keyword in all commands you are all
|
||||
end
|
||||
-- blocks command complete message
|
||||
return Commands.success
|
||||
end)
|
||||
end)
|
||||
|
||||
-- way to access global
|
||||
return search_cache
|
||||
@@ -91,4 +91,8 @@ add_interface_callback('position',function(player) return player.position end)
|
||||
add_interface_callback('entity',function(player) return player.selected end)
|
||||
add_interface_callback('tile',function(player) return player.surface.get_tile(player.position) end)
|
||||
|
||||
return add_interface_callback
|
||||
return {
|
||||
add_interface_callback=add_interface_callback,
|
||||
interface_env=interface_env,
|
||||
interface_callbacks=interface_callbacks
|
||||
}
|
||||
32
modules/commands/jail.lua
Normal file
32
modules/commands/jail.lua
Normal file
@@ -0,0 +1,32 @@
|
||||
local Commands = require 'expcore.commands'
|
||||
local JailControl = require 'modules.addons.jail-control'
|
||||
local format_chat_player_name = ext_require('expcore.common','format_chat_player_name')
|
||||
require 'config.command_parse_roles'
|
||||
|
||||
Commands.new_command('jail','Puts a player into jail and removes all other roles')
|
||||
:add_param('player',false,'player-role')
|
||||
:add_param('reason',true)
|
||||
:enable_auto_concat()
|
||||
:register(function(player,action_player,reason,raw)
|
||||
reason = reason or 'Non Given.'
|
||||
local action_player_name_color = format_chat_player_name(action_player)
|
||||
local by_player_name_color = format_chat_player_name(player)
|
||||
if JailControl.jail_player(action_player,player.name) then
|
||||
game.print{'exp-commands.jail-give',action_player_name_color,by_player_name_color,reason}
|
||||
else
|
||||
return Commands.error{'exp-commands.jail-already-jailed',action_player_name_color}
|
||||
end
|
||||
end)
|
||||
|
||||
Commands.new_command('unjail','Puts a player into jail and removes all other roles')
|
||||
:add_param('player',false,'player-role')
|
||||
:enable_auto_concat()
|
||||
:register(function(player,action_player,raw)
|
||||
local action_player_name_color = format_chat_player_name(action_player)
|
||||
local by_player_name_color = format_chat_player_name(player)
|
||||
if JailControl.unjail_player(action_player,player.name) then
|
||||
game.print{'exp-commands.jail-remove',action_player_name_color,by_player_name_color}
|
||||
else
|
||||
return Commands.error{'exp-commands.jail-not-jailed',action_player_name_color}
|
||||
end
|
||||
end)
|
||||
@@ -1,6 +1,10 @@
|
||||
local Commands = require 'expcore.commands'
|
||||
local Roles = require 'expcore.roles'
|
||||
local Colours = require 'resources.color_presets'
|
||||
local format_chat_player_name, format_chat_colour_localized = ext_require('expcore.common',
|
||||
'format_chat_player_name',
|
||||
'format_chat_colour_localized'
|
||||
)
|
||||
|
||||
Commands.new_command('assign-role','Assigns a role to a player')
|
||||
:add_param('player',false,'player-role')
|
||||
@@ -42,16 +46,15 @@ Commands.new_command('list-roles','Lists all roles in they correct order')
|
||||
for index,role in pairs(roles) do
|
||||
role = Roles.get_role_from_any(role)
|
||||
local colour = role.custom_color or Colours.white
|
||||
colour = string.format('%d,%d,%d',colour.r,colour.g,colour.b)
|
||||
local role_name = format_chat_colour_localized(role.name,colour)
|
||||
if index == 1 then
|
||||
message = {'exp-commands.roles-list',colour,role.name}
|
||||
message = {'exp-commands.roles-list',role_name}
|
||||
if action_player ~= '' then
|
||||
local player_colour = action_player.color
|
||||
player_colour = string.format('%d,%d,%d',player_colour.r*255,player_colour.g*255,player_colour.b*255)
|
||||
message = {'exp-commands.roles-list-player',player_colour,action_player.name,colour,role.name}
|
||||
local player_name_colour = format_chat_player_name(action_player)
|
||||
message = {'exp-commands.roles-list-player',player_name_colour,role_name}
|
||||
end
|
||||
else
|
||||
message = {'exp-commands.roles-list-element',message,colour,role.name}
|
||||
message = {'exp-commands.roles-list-element',message,role_name}
|
||||
end
|
||||
end
|
||||
return Commands.success(message)
|
||||
|
||||
Reference in New Issue
Block a user