private void HandleSendChatFeedback(byte[] data) { SendChatS2C feedback = ProtobufUtils.Deserialize <SendChatS2C>(data); if (feedback.result) { if (currnetChatConsumptionType == ChatConsumptionType.ChatItem) { view.HideHornPanel(); } if (view.currentChatTag == ChatMainView.ChatTag.PrivateChat) { ChatDataStruct chatData = new ChatDataStruct(); ChatPlayerInfo chatPlayerInfo = new ChatPlayerInfo(); chatPlayerInfo.name = dataManager.GetPlayerNickName(); chatPlayerInfo.portrait = dataManager.GetPlayerHeadIcon(); chatPlayerInfo.level = dataManager.GetPlayerLevel(); chatPlayerInfo.playerId = currentChatId; chatData.chatPlayerInfo = chatPlayerInfo; chatData.message = currentChatContent; chatData.playerId = currentChatId; AddPrivateChatData(currentChatId, chatData); view.ResfresPrivateChatItemData(GetPrivateChatData(currentChatId)); } } }
private void HandForwardChatFeedback(byte[] data) { ForwardChatS2C feedback = ProtobufUtils.Deserialize <ForwardChatS2C>(data); ChatPlayerInfo chatPlayerInfo = feedback.chatPlayerInfo; ChatDataStruct chatData = new ChatDataStruct(); chatData.chatPlayerInfo = chatPlayerInfo; chatData.message = feedback.chatContent; chatData.playerId = feedback.sendPlayerId; if (DataManager.GetInstance().GetPlayerId() != feedback.sendPlayerId) { chatData.isLeft = true; } else { chatData.isLeft = false; } if (feedback.chatConsumptionType == ChatConsumptionType.ChatItem) { MessageDispatcher.PostMessage(Constants.MessageType.RefreshHornNotificationData, chatData); return; } switch (feedback.chatType) { case ChatType.WorldChat: worldChatDataList.Add(chatData); break; case ChatType.FriendsChat: AddPrivateChatData(feedback.sendPlayerId, chatData); break; case ChatType.GuildChat: break; } MessageDispatcher.PostMessage(Constants.MessageType.RefreshPlayerChatData, feedback.chatType, feedback.sendPlayerId); }