1
0
mirror of https://github.com/Refactorio/RedMew.git synced 2024-12-12 10:04:40 +02:00

Remove changing force/segregating chats

This commit is contained in:
plague006 2019-02-04 12:37:10 -05:00
parent 0cfc16be84
commit d2a4a499dc

View File

@ -2,8 +2,6 @@ local Gui = require 'utils.gui'
local Utils = require 'utils.core'
local Game = require 'utils.game'
local Global = require 'utils.global'
local Event = require 'utils.event'
local Token = require 'utils.token'
local Popup = require 'features.gui.popup'
local Color = require 'resources.color_presets'
@ -15,7 +13,6 @@ local report_tab_button_name = Gui.uid_name()
local jail_offender_button_name = Gui.uid_name()
local report_body_name = Gui.uid_name()
local jail_name = 'Jail'
local jail_force = 'jailed'
local default_group = 'Default'
local prefix = '------------------NOTICE-------------------'
local prefix_e = '--------------------------------------------'
@ -25,9 +22,6 @@ local Module = {}
-- Global registered locals
local report_data = {}
local jail_data = {}
local primitives = {
on_chat_registered = nil
}
Global.register(
{
@ -40,24 +34,6 @@ Global.register(
end
)
--- If a player in jail chats to their force, let the admins know
local on_chat =
Token.register(
function(event)
local index = event.player_index
local player = Game.get_player_by_index(index)
local message
if jail_data[index] then
message = 'From jail: ' .. event.message
Utils.print_admins(message, player.name)
elseif player.admin then
message = 'From admin: ' .. event.message
game.forces[jail_force].print(message)
end
end
)
local function draw_report(parent, report_id)
local report = report_data[report_id]
if report_id == 0 or not report then
@ -251,19 +227,8 @@ function Module.jail(target_player, player)
character.destructible = false
end
local former_force_name = target_player.force.name
if not game.forces[jail_force] then
local force = game.create_force(jail_force)
local former_force = target_player.force
former_force.set_cease_fire(force, true)
former_force.set_friend(force, true)
end
target_player.force = game.forces[jail_force]
jail_data[target_player.index] = {
name = target_name,
force = former_force_name,
perm_group = former_permission_group,
char_dest = former_char_dest,
color = target_player.color,
@ -272,10 +237,6 @@ function Module.jail(target_player, player)
target_player.color = Color.white
target_player.chat_color = Color.white
if not primitives.on_chat_registered then
Event.add_removable(defines.events.on_console_chat, on_chat)
primitives.on_chat_registered = true
end
else
-- Let admin know it didn't work.
print(format('Something went wrong in the jailing of %s. You can still change their group via /permissions.', target_name))
@ -322,7 +283,6 @@ function Module.unjail(target_player, player)
target_player.shooting_state.state = 0
-- Restore player's state from stored data
target_player.force = target_jail_data.force
local character = target_player.character
if character and character.valid then
character.destructible = target_jail_data.char_dest
@ -340,11 +300,6 @@ function Module.unjail(target_player, player)
target_player.print(prefix_e)
Utils.print_admins(format('%s has been released from jail by %s', target_name, player.name))
Utils.log_command(Utils.get_actor(), 'unjail', target_name)
if primitives.on_chat_registered and #jail_data == 0 then
Event.remove_removable(defines.events.on_console_chat, on_chat)
primitives.on_chat_registered = nil
end
else
-- Let admin know it didn't work.
Game.player_print(format('Something went wrong in the unjailing of %s. You can still change their group via /permissions and inform them.', target_name))