From 2b32c1203f307905b0b5e646291137c44d067f4a Mon Sep 17 00:00:00 2001
From: client_Zxw <826696702@qq.com>
Date: 星期六, 10 十一月 2018 15:06:04 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.87:10010/r/snxxz_scripts
---
System/Chat/ChatCenter.cs | 80 +++++++++++++++++++++++++++++++++++++++-
1 files changed, 78 insertions(+), 2 deletions(-)
diff --git a/System/Chat/ChatCenter.cs b/System/Chat/ChatCenter.cs
index 619aa9c..38081ee 100644
--- a/System/Chat/ChatCenter.cs
+++ b/System/Chat/ChatCenter.cs
@@ -26,6 +26,14 @@
WindowCenter.Instance.windowAfterOpenEvent += WindowAfterOpenEvent;
StageManager.Instance.onStageLoadFinish += OnStageLoadFinish;
PlayerRealmData.OnPlayerCollectEnd += OnPlayerCollectEnd;
+
+ var time = bandTime;
+ banTimeArray[0] = time.Year;
+ banTimeArray[1] = time.Month;
+ banTimeArray[2] = time.Day;
+ banTimeArray[3] = time.Hour;
+ banTimeArray[4] = time.Minute;
+ banTimeArray[5] = time.Second;
}
public override void UnInit()
@@ -55,6 +63,12 @@
chatChannels.Add(ChatInfoType.Trumpet);
chatChannels.Add(ChatInfoType.Fairy);
chatChannels.Add(ChatInfoType.Friend);
+
+ var config = Config.Instance.Get<FuncConfigConfig>("ClientChatBan");
+ banCheckSecond = int.Parse(config.Numerical1);
+ repeatCountLimit = int.Parse(config.Numerical2);
+ maliceCheckCount = int.Parse(config.Numerical3);
+ maliceLimitCount = int.Parse(config.Numerical4);
}
public event Action<string, bool, bool> UpdateChatValueEvent;
@@ -307,7 +321,7 @@
const string downloadUrl = "http://{0}.voice.2460web.com:53001/voice/download";
private void SendSpeech(byte[] encode, long _tick)
{
- if (IsChatBanned)
+ if (IsChatBanned || clientBanned)
{
SaveSpeech((int)PlayerDatas.Instance.PlayerId, _tick, encode);
return;
@@ -873,7 +887,7 @@
public void HandleChatBanned(ChatInfoType channel, string message, int toPlayer)
{
- if (IsChatBanned)
+ if (IsChatBanned || clientBanned)
{
var playerId = PlayerDatas.Instance.baseData.PlayerID;
var playerName = UIHelper.ServerStringTrim(PlayerDatas.Instance.baseData.PlayerName);
@@ -940,6 +954,68 @@
}
#endregion
+ #region 鑱婂ぉ绂佽█
+ public bool clientBanned
+ {
+ get
+ {
+ var time = new DateTime(banTimeArray[0], banTimeArray[1], banTimeArray[2],
+ banTimeArray[3], banTimeArray[4], banTimeArray[5]);
+ return TimeUtility.ServerNow < time;
+ }
+ }
+
+ public int banCheckSecond = 60;
+ public int repeatCountLimit = 5;
+ public int maliceCheckCount = 10;
+ public int maliceLimitCount = 5;
+
+ public int banHour
+ {
+ get { return LocalSave.GetInt("ClientChatBanHour", 0); }
+ set
+ {
+ LocalSave.SetInt("ClientChatBanHour", value);
+ }
+ }
+
+ private int[] banTimeArray = new int[6];
+ private DateTime bandTime
+ {
+ get
+ {
+ var timeArray = LocalSave.GetIntArray("ClientChatBanTime");
+ if (null == timeArray)
+ {
+ return TimeUtility.OriginalTime;
+ }
+ else
+ {
+ return new DateTime(timeArray[0], timeArray[1], timeArray[2], timeArray[3], timeArray[4], timeArray[5]);
+ }
+ }
+ set
+ {
+ banTimeArray[0] = value.Year;
+ banTimeArray[1] = value.Month;
+ banTimeArray[2] = value.Day;
+ banTimeArray[3] = value.Hour;
+ banTimeArray[4] = value.Minute;
+ banTimeArray[5] = value.Second;
+ LocalSave.SetIntArray("ClientChatBanTime", banTimeArray);
+ }
+ }
+
+ public void ChatClientBan()
+ {
+ var time = TimeUtility.ServerNow;
+ var hour = Mathf.Min(24, banHour + 1);
+ banHour = hour;
+ time = time.AddTicks(hour * TimeSpan.TicksPerHour);
+ bandTime = time;
+ }
+ #endregion
+
}
}
--
Gitblit v1.8.0