Bug Fixing Round 3

This commit is contained in:
Cooldude2606
2019-04-19 14:06:08 +01:00
parent 37e040c093
commit 53a74b96e3
12 changed files with 1042 additions and 18 deletions

View File

@@ -38,7 +38,7 @@ function Public.jail_player(player,by_player_name)
player = Game.get_player_from_any(player)
if not player then return end
if Roles.player_has_role(player,'Jail') then return end
local old_roles = Role.get_player_roles(player)
local old_roles = Roles.get_player_roles(player)
Public.old_roles[player.name] = old_roles
Roles.unassign_player(player,old_roles,by_player_name,true)
Roles.assign_player(player,'Jail',by_player_name,true)

View File

@@ -57,6 +57,9 @@ function Public.remove_player_report(player,by_player_name)
if reports and reports[by_player_name] then
event_emit(Public.player_report_removed,player,by_player_name)
reports[by_player_name] = nil
if Public.count_player_reports(player) == 0 then
Public.user_reports[player.name] = nil
end
return true
end
return false
@@ -115,7 +118,11 @@ function Public.count_player_reports(player,count_callback)
if not player then return end
local reports = Public.user_reports[player.name] or {}
if not count_callback then
return #reports
local ctn = 0
for _ in pairs(reports) do
ctn=ctn+1
end
return ctn
else
local ctn = 0
for player_name,reason in pairs(reports) do

View File

@@ -2,6 +2,7 @@ local Game = require 'utils.game'
local Global = require 'utils.global'
local Event = require 'utils.event'
local config = require 'config.warnings'
local format_chat_player_name = ext_require('expcore.common','format_chat_player_name')
require 'utils.table'
local Public = {
@@ -195,8 +196,8 @@ Event.add(Public.player_warning_added,function(event)
elseif type(action) == 'table' then
-- {locale,by_player_name,number_of_warning,...}
local current_action = table.deep_copy(action)
table.insert(current_action,1,event.by_player_name)
table.insert(current_action,1,event.warning_count)
table.insert(current_action,2,event.by_player_name)
table.insert(current_action,3,event.warning_count)
player.print(current_action)
elseif type(action) == 'string' then
player.print(action)
@@ -208,6 +209,8 @@ Event.add(Public.player_temp_warning_added,function(event)
local player = Game.get_player_by_index(event.player_index)
if event.temp_warning_count > config.temp_warning_limit then
Public.add_warnings(event.player_index,event.by_player_name)
local player_name_color = format_chat_player_name(player)
game.print{'warnings.script-warning-limit',player_name_color}
else
player.print{'warnings.script-warning',event.temp_warning_count,config.temp_warning_limit}
end