/// <summary> /// 通知红包领取 /// </summary> /// <param name="cmd"></param> public void OnNoticeRedEnveLopeInfo(stNoticeRedPacketChatUserCmd_S cmd) { RedPacket rp = new RedPacket(); rp.status = (uint)RedPacketStatus.eRedPacketNormal; rp.title = cmd.title; rp.id = cmd.id; rp.name = cmd.name; AddPacket(cmd.world, rp); ChangeRedStatus(cmd.id, RedPacketStatus.eRedPacketNormal); SortAllRedPacket(); if (!DataManager.Manager <UIPanelManager>().IsShowPanel(PanelID.RedEnvelopePanel)) { DataManager.Manager <UIPanelManager>().ShowPanel(PanelID.RedEnvelopeTakePanel, jumpData: new UIPanelBase.PanelJumpData() { Param = cmd }); } uint langTextID = 140001; ChatChannel channel = DataManager.Manager <ChatDataManager>().GetChannelByType(CHATTYPE.CHAT_WORLD); if (!cmd.world) { langTextID = 140002; channel = DataManager.Manager <ChatDataManager>().GetChannelByType(CHATTYPE.CHAT_CLAN); } stSendInfoReminderChatUserCmd_S chatCmd = new stSendInfoReminderChatUserCmd_S(); chatCmd.id = langTextID; chatCmd.szInfo = new List <string> { cmd.name }; Protocol.Instance.OnReceiveRemindText(chatCmd); uint moneyType = GameTableManager.Instance.GetGlobalConfig <uint>("UserRedEnvelopeCurrencyType"); uint maxNum = GameTableManager.Instance.GetGlobalConfig <uint>("UserRedEnvelopeCurrencyNum"); if (cmd.money_type == moneyType) { if (cmd.gold >= maxNum) { DispatchValueUpdateEvent(RedEnveLopeEvent.ShowRedEffect.ToString(), null, null); } } if (channel != null) { channel.Add(channel.ToChatInfoWithRedPackgetMsg(cmd)); } }