| | |
| | | switch (type)
|
| | | {
|
| | | case ChatInfoType.World:
|
| | | case ChatInfoType.Fairy:
|
| | | if (IsAssitChat(msg) != 0)
|
| | | {
|
| | | teamModel.RequestAssistAutoMatch();
|
| | | }
|
| | | break;
|
| | | }
|
| | |
|
| | | switch (type)
|
| | | {
|
| | | case ChatInfoType.World:
|
| | | {
|
| | | C0201_tagCTalkGong chatPack = new C0201_tagCTalkGong();
|
| | | chatPack.Len = (ushort)GetUTF8InfoLen(msg);
|
| | | chatPack.Content = msg;
|
| | | GameNetSystem.Instance.SendInfo(chatPack);
|
| | |
|
| | | CheckSendAssitChat(msg);
|
| | | }
|
| | | break;
|
| | | case ChatInfoType.Area:
|
| | |
| | | chatPack.Len = (ushort)GetUTF8InfoLen(msg);
|
| | | chatPack.Content = msg;
|
| | | GameNetSystem.Instance.SendInfo(chatPack);
|
| | |
|
| | | CheckSendAssitChat(msg);
|
| | | }
|
| | | break;
|
| | | case ChatInfoType.Trumpet:
|
| | |
| | | public void RevChatInfo(H0201_tagTalkGong vNetData)
|
| | | {
|
| | | ChatData chatData = null;
|
| | | var content = vNetData.Content;
|
| | | if (IsInviteChat(vNetData.Content))
|
| | | {
|
| | | string content = InviteRegex.Replace(vNetData.Content, "");
|
| | | content = InviteRegex.Replace(vNetData.Content, "");
|
| | | if (teamModel.myTeam.GetIndexOfMember((int)vNetData.PlayerID) != -1)
|
| | | {
|
| | | content = StringUtility.Contact("<color=#f8983b>", vNetData.Name, "</color>", ":", content);
|
| | |
| | | KeepChatInfo(chatData);
|
| | | return;
|
| | | }
|
| | | chatData = new ChatWorldData(vNetData.Content, (int)vNetData.PlayerID, vNetData.Name, vNetData.Extras);
|
| | | if (IsAssitChat(content, true) == 2 && vNetData.PlayerID != PlayerDatas.Instance.baseData.PlayerID)
|
| | | {
|
| | | content = StringUtility.Contact(content, Language.Get("InviteTeam", vNetData.PlayerID));
|
| | | }
|
| | | chatData = new ChatWorldData(content, (int)vNetData.PlayerID, vNetData.Name, vNetData.Extras);
|
| | | KeepChatInfo(chatData);
|
| | | }
|
| | | /// <summary>
|
| | |
| | | /// <param name="vNetData"></param>
|
| | | public void RevChatInfo(H0203_tagTalkBang vNetData)
|
| | | {
|
| | | ChatData chatData = new ChatFamilyData(vNetData.Content, (int)vNetData.PlayerID, vNetData.Name, vNetData.Extras);
|
| | | var content = vNetData.Content;
|
| | | if (IsAssitChat(content, true) == 1 && vNetData.PlayerID != PlayerDatas.Instance.baseData.PlayerID)
|
| | | {
|
| | | content = StringUtility.Contact(content, Language.Get("InviteTeam", vNetData.PlayerID));
|
| | | }
|
| | | ChatData chatData = new ChatFamilyData(content, (int)vNetData.PlayerID, vNetData.Name, vNetData.Extras);
|
| | | KeepChatInfo(chatData);
|
| | | ReceiveNewChat(ChatInfoType.Fairy);
|
| | | }
|
| | |
| | | }
|
| | |
|
| | | public bool needCheckAssitChat { get; set; }
|
| | | void CheckSendAssitChat(string message)
|
| | | int IsAssitChat(string message, bool force = false)
|
| | | {
|
| | | if (needCheckAssitChat)
|
| | | int assitChat = 0;
|
| | | if (needCheckAssitChat || force)
|
| | | {
|
| | | bool requestTeam = false;
|
| | | for (int i = 0; i < 2; i++)
|
| | | {
|
| | | if (message.Equals(Language.Get(realmRandomChats[i])))
|
| | | {
|
| | | requestTeam = true;
|
| | | assitChat = 1;
|
| | | break;
|
| | | }
|
| | |
|
| | | var content = message;
|
| | | if (i == 1)
|
| | | if (message.Equals(Language.Get(dungeonRandomChats[i])))
|
| | | {
|
| | | content = Regex.Replace(content, "[0-9]+", "{0}");
|
| | | }
|
| | |
|
| | | if (content.Equals(Language.Get(dungeonRandomChats[i])))
|
| | | {
|
| | | requestTeam = true;
|
| | | assitChat = 2;
|
| | | break;
|
| | | }
|
| | | }
|
| | | if (requestTeam)
|
| | | {
|
| | | teamModel.RequestAssistAutoMatch();
|
| | | }
|
| | | }
|
| | | return assitChat;
|
| | | }
|
| | | #endregion
|
| | |
|