private void DisplayData(ChatMessageNew chatMessage, bool isSelf) { string str = chatMessage.Message; AgentBaseInfo abi = chatMessage.Client; if (chatMessage.ChatType == 8) { str = "#e062" + str; if (Singleton <TrumpetView> .Instance != null && isSelf) { Singleton <TrumpetView> .Instance.ClearContent(); } CtrlManager.CloseWindow(WindowID.TrumpetView); } GridHelper.AddToGrid <ChatItem>(this.transGrid, (!isSelf) ? this.otherChatItem : this.myChatItem, isSelf, delegate(int idx, ChatItem comp) { comp.Init(abi, str, idx, isSelf, (ChatType)chatMessage.ChatType); comp.name = idx.ToString(); this.queueChat.Enqueue(comp); }); if (this.queueChat.Count > 99) { ChatItem chatItem = this.queueChat.Dequeue(); UnityEngine.Object.Destroy(chatItem.gameObject); } this.usv.contentPivot = UIWidget.Pivot.Bottom; this.usv.ResetPosition(); this.JudgePosition(); }
private void OnMsg_chatviewInitRoom(MobaMessage msg) { if (msg.Param != null) { if ((int)msg.Param == 3) { Queue <ChatMessageNew> queue = ModelManager.Instance.Get_Lobby_Chat_DataX(); if (!Singleton <HomeChatview> .Instance.hasClearRoomChat) { this.ClearGrid(out Singleton <HomeChatview> .Instance.hasClearRoomChat); } while (queue.Count > 0) { ChatMessageNew chatMessageNew = queue.Dequeue(); bool isSelf = chatMessageNew.Client.UserId == Singleton <HomeChatview> .Instance.UserID; this.DisplayData(chatMessageNew, isSelf); } this.mRoomChatRoot.SetActive(true); this.mScrollView.ResetPosition(); this.JudgePosition(); } else { this.mRoomChatRoot.SetActive(false); } } }
private void SetData(ChatMessageNew _msgData) { if (_msgData != null) { string text = _msgData.Client.NickName + ":" + _msgData.Message; this.mContent.text = text; } }
private void OnMsg_ReceiveRoomChatMessage(MobaMessage msg) { if (msg.Param != null) { ChatMessageNew item = (ChatMessageNew)msg.Param; this.mMsgQueue.Enqueue(item); } }
private void OnMsg_Chat_Recv(MobaMessage msg) { if (msg != null) { OperationResponse operationResponse = msg.Param as OperationResponse; if (operationResponse != null) { byte[] buffer = (byte[])operationResponse.Parameters[100]; ChatMessageNew chatMessageNew = SerializeHelper.Deserialize <ChatMessageNew>(buffer); UserData userData = ModelManager.Instance.Get_userData_X(); if (userData.UserId.CompareTo(chatMessageNew.Client.UserId.ToString()) == 0 && chatMessageNew.ChatType == 3) { ModelManager.Instance.Set_Last_ChatSent_Time(ToolsFacade.ServerCurrentTime); } if (chatMessageNew.ChatType == 8 || chatMessageNew.ChatType == 5) { MobaMessageManagerTools.SendClientMsg(ClientC2V.ReceiveHallChatMessage, chatMessageNew, false); if (ModelManager.Instance.Get_HomeChatViewState()) { this.data.tempHallData.Enqueue(chatMessageNew); if (this.data.tempHallData.Count > 40) { this.data.tempHallData.Dequeue(); } } if (chatMessageNew.ChatType == 8 && this.data.vipHallData.Count < 40) { this.data.vipHallData.Add(chatMessageNew); } this.data.HallChatData.Enqueue(chatMessageNew); if (this.data.HallChatData.Count > 40) { this.data.HallChatData.Dequeue(); } } else if (chatMessageNew.ChatType == 7) { MobaMessageManagerTools.SendClientMsg(ClientC2V.ReceiveFriendChatMessage, chatMessageNew, false); } else if (chatMessageNew.ChatType == 2) { MobaMessageManagerTools.SendClientMsg(ClientC2V.ReceiveRoomChatMessage, chatMessageNew, false); if (ModelManager.Instance.Get_HomeChatViewState()) { this.data.LobbyChatData.Enqueue(chatMessageNew); if (this.data.tempHallData.Count > 40) { this.data.tempHallData.Dequeue(); } } } base.Data = this.data; } } }
private void OnMsg_ReceiveRoomChatMessage(MobaMessage msg) { if (msg.Param != null) { MobaMessageManagerTools.SendClientMsg(ClientV2C.chatviewCloseEmotion, null, false); ChatMessageNew chatMessageNew = (ChatMessageNew)msg.Param; bool isSelf = chatMessageNew.Client.UserId == Singleton <HomeChatview> .Instance.UserID; this.DisplayData(chatMessageNew, isSelf); this.mScrollView.ResetPosition(); this.JudgePosition(); } }
public void SendMessage() { ChatMessageNew message = new ChatMessageNew { sender = NetworkClient.connection.identity.netId.ToString(), messsage = input.text }; //OnServerPostChatMessage(message); CmdSendMessageToServer(message); //chatMessages.Add(message); }
private void OnMsg_ReceiveHallChatMessage(MobaMessage msg) { if (msg.Param != null) { ChatMessageNew chatMessageNew = (ChatMessageNew)msg.Param; if (chatMessageNew.Client.UserId != this.userID && this.currType != ChitchatType.Hall) { this.markPoint.gameObject.SetActive(true); } else { this.markPoint.gameObject.SetActive(false); } } }
private void OnMsg_ReceiveHallChatMessage(MobaMessage msg) { if (msg != null) { ChatMessageNew chatMessageNew = (ChatMessageNew)msg.Param; if (chatMessageNew.Client.UserId == Singleton <HomeChatview> .Instance.UserID) { this.DisplayData(chatMessageNew, true); } else { this.DisplayData(chatMessageNew, false); } HomeChatCtrl.GetInstance().sendState = SendState.Nothing; } }
private void DisplayData(ChatMessageNew chatMessage, bool isSelf) { string str = chatMessage.Message; AgentBaseInfo abi = chatMessage.Client; GridHelper.AddToGrid <ChatItem>(this.mChatGrid, (!isSelf) ? this.normalChatItem : this.selfChatItem, isSelf, delegate(int idx, ChatItem comp) { comp.Init(abi, str, idx, isSelf, (ChatType)chatMessage.ChatType); comp.name = idx.ToString(); this.queueChat.Enqueue(comp); }); if (this.queueChat.Count > 99) { ChatItem chatItem = this.queueChat.Dequeue(); UnityEngine.Object.Destroy(chatItem.gameObject); } }
private void OnMsg_Chat_PullHistory(MobaMessage msg) { if (msg != null) { OperationResponse operationResponse = msg.Param as OperationResponse; if (operationResponse != null) { byte[] buffer = (byte[])operationResponse.Parameters[174]; List <byte[]> list = SerializeHelper.Deserialize <List <byte[]> >(buffer); for (int i = 0; i < list.Count; i++) { ChatMessageNew chatMessageNew = SerializeHelper.Deserialize <ChatMessageNew>(list[i]); this.DisplayData(chatMessageNew, false); this.SaveInModel(chatMessageNew.Client.UserId.ToString(), chatMessageNew); } } } }
private void OnMsg_ReceiveFriendChatMessage(MobaMessage msg) { if (msg != null) { MobaMessageManagerTools.SendClientMsg(ClientV2C.chatviewCloseEmotion, null, false); ChatMessageNew chatMessageNew = (ChatMessageNew)msg.Param; if (chatMessageNew.Client.UserId == Singleton <HomeChatview> .Instance.UserID) { this.InputStr.value = string.Empty; this.InputStr.isSelected = false; this.DisplayData(chatMessageNew, true); } else if (chatMessageNew.Client.UserId.ToString() == this.selectFriendItem) { this.DisplayData(chatMessageNew, false); } this.SaveInModel(this.selectFriendItem, chatMessageNew); } }
private void SendChat() { string nickName = ModelManager.Instance.Get_userData_X().NickName; long userId = long.Parse(ModelManager.Instance.Get_userData_X().UserId); int userLevel = CharacterDataMgr.instance.GetUserLevel(ModelManager.Instance.Get_userData_X().Exp); int ladder = ToolsFacade.Instance.ToInt32(ModelManager.Instance.Get_userData_X().LadderScore); int botLevel = ModelManager.Instance.Get_BottleData_Level(); int head = ModelManager.Instance.Get_userData_filed_X("Avatar"); int headFrame = ModelManager.Instance.Get_userData_filed_X("PictureFrame"); int charmRankvalue = ModelManager.Instance.Get_userData_filed_X("CharmRankValue"); AgentBaseInfo client = new AgentBaseInfo { NickName = nickName, UserId = userId, head = head, headFrame = headFrame, Level = userLevel, Ladder = ladder, BotLevel = botLevel, CharmRankvalue = charmRankvalue }; string value = this.mChatInput.value; if (!ToolsFacade.Instance.IsLegalString(ref value)) { return; } ChatMessageNew data = new ChatMessageNew { Client = client, ChatType = 2, Message = value, TargetId = null, TimeTick = ToolsFacade.ServerCurrentTime.Ticks }; Dictionary <byte, object> dictionary = new Dictionary <byte, object>(); dictionary.Add(100, SerializeHelper.Serialize <ChatMessageNew>(data)); MobaMessageManagerTools.SendClientMsg(ClientV2C.chatviewSendChatToServer, dictionary, false); this.mChatInput.value = null; }
private void OnChatUpdated(SyncList <ChatMessageNew> .Operation op, int itemIndex, ChatMessageNew item) { chatline.text += "[" + item.sender + "] - " + item.messsage + "\n"; }
private void SendChat(GameObject obj) { if (HomeChatCtrl.GetInstance().sendState == SendState.Sending) { return; } if (this.task_countDown != null && this.task_countDown.Running) { Singleton <TipView> .Instance.ShowViewSetText("休息一下 稍后再发", 1f); return; } HomeChatCtrl.GetInstance().sendState = SendState.Sending; this.GetSetEmojiPanelState(false); string nickName = ModelManager.Instance.Get_userData_X().NickName; long userId = long.Parse(ModelManager.Instance.Get_userData_X().UserId); int userLevel = CharacterDataMgr.instance.GetUserLevel(ModelManager.Instance.Get_userData_X().Exp); int ladder = ToolsFacade.Instance.ToInt32(ModelManager.Instance.Get_userData_X().LadderScore); int botLevel = ModelManager.Instance.Get_BottleData_Level(); int head = ModelManager.Instance.Get_userData_filed_X("Avatar"); int headFrame = ModelManager.Instance.Get_userData_filed_X("PictureFrame"); int charmRankvalue = ModelManager.Instance.Get_userData_filed_X("CharmRankValue"); string value = this.content.value; bool flag = false; if (!string.IsNullOrEmpty(value) && value.Length > 1 && value[0] == '/') { flag = true; } AgentBaseInfo client = new AgentBaseInfo { NickName = nickName, UserId = userId, head = head, headFrame = headFrame, Level = userLevel, Ladder = ladder, BotLevel = botLevel, CharmRankvalue = charmRankvalue }; if (!flag) { if (!ToolsFacade.Instance.IsLegalString(ref value)) { UnityEngine.Debug.LogError("return"); return; } } ChatMessageNew data = new ChatMessageNew { Client = client, ChatType = 3, Message = value, TargetId = null, TimeTick = ToolsFacade.ServerCurrentTime.Ticks }; Dictionary <byte, object> dictionary = new Dictionary <byte, object>(); dictionary.Add(100, SerializeHelper.Serialize <ChatMessageNew>(data)); dictionary.Add(5, Model_HomeChat.LastMsgId); MobaMessageManagerTools.SendClientMsg(ClientV2C.chatviewSendChatToServer, dictionary, false); }
void CmdSendMessageToServer(ChatMessageNew message) { OnServerPostChatMessage(message); }
void OnServerPostChatMessage(ChatMessageNew message) { chatMessages.Add(message); }
private void SaveInModel(string sender, ChatMessageNew chatMessage) { List <ChatMessageNew> list = ModelManager.Instance.SaveIn_Friend_Chat_MessageListX(sender, chatMessage); }
public void ConfirmSendMessage(GameObject obj) { if (null != obj) { if (HomeChatCtrl.GetInstance().sendState == SendState.Sending) { return; } UserData userData = ModelManager.Instance.Get_userData_X(); if (userData.Speaker <= 0) { CtrlManager.OpenWindow(WindowID.PurchasePopupView, null); Singleton <PurchasePopupView> .Instance.onSuccess.Add(new Callback(this.AfterBuying)); Singleton <PurchasePopupView> .Instance.Show(GoodsSubject.Currency, "11", 1, false); return; } if (this.content.value.Length > 28) { Singleton <TipView> .Instance.ShowViewSetText("最多发送28个字!!!", 1f); return; } HomeChatCtrl.GetInstance().sendState = SendState.Sending; this.GetSetEmojiPanelState(false); string nickName = ModelManager.Instance.Get_userData_X().NickName; long userId = long.Parse(ModelManager.Instance.Get_userData_X().UserId); int userLevel = CharacterDataMgr.instance.GetUserLevel(ModelManager.Instance.Get_userData_X().Exp); int ladder = ToolsFacade.Instance.ToInt32(ModelManager.Instance.Get_userData_X().LadderScore); int botLevel = ModelManager.Instance.Get_BottleData_Level(); int head = ModelManager.Instance.Get_userData_filed_X("Avatar"); int headFrame = ModelManager.Instance.Get_userData_filed_X("PictureFrame"); int charmRankvalue = ModelManager.Instance.Get_userData_filed_X("CharmRankValue"); string value = this.content.value; AgentBaseInfo client = new AgentBaseInfo { NickName = nickName, UserId = userId, head = head, headFrame = headFrame, Level = userLevel, Ladder = ladder, BotLevel = botLevel, CharmRankvalue = charmRankvalue }; if (!ToolsFacade.Instance.IsLegalString(ref value)) { Debug.LogError("return"); HomeChatCtrl.GetInstance().sendState = SendState.Nothing; return; } ChatMessageNew data = new ChatMessageNew { Client = client, ChatType = 8, Message = value, TargetId = null, TimeTick = ToolsFacade.ServerCurrentTime.Ticks }; Dictionary <byte, object> dictionary = new Dictionary <byte, object>(); dictionary.Add(100, SerializeHelper.Serialize <ChatMessageNew>(data)); SendMsgManager.SendMsgParam sendMsgParam = new SendMsgManager.SendMsgParam(true, "正在发送...", false, 15f); NetWorkHelper.Instance.client.SendSessionChannelMessage(2, MobaChannel.Chat, dictionary); this.content.defaultText = "点此输入文字"; } }
public static List <ChatMessageNew> SaveIn_Friend_Chat_MessageListX(this ModelManager mmng, string senderID, ChatMessageNew chatMessage) { Dictionary <string, List <ChatMessageNew> > dictionary = mmng.Get_Friend_Chat_DataX(); Dictionary <string, List <string> > dictionary2 = new Dictionary <string, List <string> >(); if (dictionary.Keys.Contains(senderID)) { dictionary[senderID].Add(chatMessage); } else { dictionary.Add(senderID, new List <ChatMessageNew> { chatMessage }); } return(null); }