Ejemplo n.º 1
0
    //传送类消息取单个数据
    public PushMsg GetPushMsg(PushMsg.MsgType type, uint sender_id = 0)
    {
        if (IsPushMessageRightPos(type))
        {
            if (m_dicInviteMsg.ContainsKey(type))
            {
                if (m_dicInviteMsg[type].Count > 0)
                {
                    return(m_dicInviteMsg[type][m_dicInviteMsg[type].Count - 1]);
                }
            }
        }
        else
        {
            if (M_dicTransmitMsg.ContainsKey(type))
            {
                if (M_dicTransmitMsg[type].Count > 0)
                {
                    if (M_dicTransmitMsg[type].ContainsKey(sender_id))
                    {
                        return(M_dicTransmitMsg[type][sender_id]);
                    }
                }
            }
        }

        return(null);
    }
Ejemplo n.º 2
0
 //获取邀请类的个数
 public int GetMsgNum(PushMsg.MsgType type)
 {
     if (m_dicInviteMsg.ContainsKey(type))
     {
         return(m_dicInviteMsg[type].Count);
     }
     return(0);
 }
Ejemplo n.º 3
0
 public void RemoveAllMsg(PushMsg.MsgType type)
 {
     if (m_dicInviteMsg.ContainsKey(type))
     {
         m_dicInviteMsg[type].Clear();
         m_dicInviteMsg.Remove(type);
         Engine.Utility.EventEngine.Instance().DispatchEvent((int)Client.GameEventID.REFRESHINVITEPUSHMSGSTATUS, null);
     }
 }
Ejemplo n.º 4
0
 bool StillHasThisTypeLeft(List <PushMsg> list, PushMsg.MsgType type)
 {
     for (int i = 0; i < list.Count; i++)
     {
         if (list[i].msgType == type)
         {
             return(true);
         }
     }
     return(false);
 }
Ejemplo n.º 5
0
 public void SetTransmitUI(PushMsg msg)
 {
     m_pushMsgType     = msg.msgType;
     m_pushMsgSenderID = msg.senderId;
     if (m_lableNum != null)
     {
         //这个地方num肯定为0
         int num = DataManager.Manager <FunctionPushManager>().GetMsgNum(m_pushMsgType);
         if (num > 0)
         {
             m_lableNum.text = num.ToString();
         }
         else
         {
             m_lableNum.text = "";
         }
     }
     m_pushMsg              = msg;
     m_l_leftSeconds        = msg.cd - (UnityEngine.Time.realtimeSinceStartup - msg.sendTime);
     m_l_pushCD             = msg.cd;
     CurPushMsgTypeIsInvite = false;
     if (m_spriteIcon != null)
     {
         SysMsgPushParam param = null;
         if (m_pushMsgType == PushMsg.MsgType.TeamTransmit)
         {
             param = ParseBtnSpite(TransmitAndInviteType.TeamTransmit);
         }
         else if (m_pushMsgType == PushMsg.MsgType.ClanTransmit)
         {
             param = ParseBtnSpite(TransmitAndInviteType.ClanTransmit);
         }
         else if (m_pushMsgType == PushMsg.MsgType.CoupleTransmit)
         {
             param = ParseBtnSpite(TransmitAndInviteType.CoupleTransmit);
         }
         else if (m_pushMsgType == PushMsg.MsgType.CityWarTeam)
         {
             param = ParseBtnSpite(TransmitAndInviteType.CityWarTeamTransmit);
         }
         else if (m_pushMsgType == PushMsg.MsgType.CityWarClan)
         {
             param = ParseBtnSpite(TransmitAndInviteType.CityWarClanTransmit);
         }
         if (param != null)
         {
             m_spriteIcon.spriteName  = param.iconName;
             m_spriteTitle.spriteName = param.titleName;
         }
     }
 }
Ejemplo n.º 6
0
    public bool IsPushMessageRightPos(PushMsg.MsgType type)
    {
        bool right = true;

        switch (type)
        {
        case PushMsg.MsgType.ClanTransmit:
        case PushMsg.MsgType.TeamTransmit:
        case PushMsg.MsgType.CoupleTransmit:
        case PushMsg.MsgType.CityWarClan:
        case PushMsg.MsgType.CityWarTeam:
        {
            right = false;
        }
        break;
        }
        return(right);
    }
Ejemplo n.º 7
0
 public void RemoveTransmitMsg(PushMsg msg)
 {
     if (M_dicTransmitMsg.ContainsKey(msg.msgType))
     {
         if (M_dicTransmitMsg[msg.msgType].ContainsKey(msg.senderId))
         {
             PushMsg.MsgType type     = msg.msgType;
             uint            senderid = msg.senderId;
             if (m_lstTransmit.Contains(msg))
             {
                 m_lstTransmit.Remove(msg);
                 M_dicTransmitMsg[msg.msgType].Remove(msg.senderId);
             }
             if (!StillHasThisTypeLeft(m_lstTransmit, msg.msgType))
             {
                 M_dicTransmitMsg[msg.msgType].Clear();
                 M_dicTransmitMsg.Remove(msg.msgType);
             }
         }
     }
     Engine.Utility.EventEngine.Instance().DispatchEvent((int)Client.GameEventID.REFRESHTRANSMITPUSHMSGSTATUS, null);
 }
Ejemplo n.º 8
0
    public void SetSysMsgUI(PushMsg.MsgType msgType)
    {
        m_pushMsgType = msgType;

        if (m_lableNum != null)
        {
            int num = DataManager.Manager <FunctionPushManager>().GetMsgNum(m_pushMsgType);
            if (num > 0)
            {
                m_lableNum.text = num.ToString();
            }
            else
            {
                m_lableNum.text = "";
            }
        }
        PushMsg msg = DataManager.Manager <FunctionPushManager>().GetPushMsg(m_pushMsgType);

        if (msg == null)
        {
            Engine.Utility.Log.Error("pushmsg == null");
            return;
        }
        m_pushMsg = msg;

        m_l_leftSeconds        = msg.cd - (UnityEngine.Time.realtimeSinceStartup - msg.sendTime);
        m_l_pushCD             = msg.cd;
        CurPushMsgTypeIsInvite = true;
        if (m_l_leftSeconds >= SHOWCDLIMIT)
        {
            ShowCDUI(false);
        }
        else
        {
            ShowCDUI(true);
        }

        if (m_spriteSlider != null)
        {
            m_spriteSlider.fillAmount = msg.leftTime / msg.cd;
        }
        if (m_labelTime != null)
        {
            m_labelTime.text = ((uint)msg.leftTime + 1).ToString();
        }

        if (m_spriteIcon != null)
        {
            SysMsgPushParam param = null;
            if (msg.msgType == PushMsg.MsgType.TeamLeaderInvite)
            {
                param = ParseBtnSpite(TransmitAndInviteType.TeamInvite);
            }
            else if (msg.msgType == PushMsg.MsgType.TeamMemberInvite)
            {
                param = ParseBtnSpite(TransmitAndInviteType.TeamMemberInvite);
            }
            else if (msg.msgType == PushMsg.MsgType.Arena)
            {
                param = ParseBtnSpite(TransmitAndInviteType.ArenaInvite);
            }
            else if (msg.msgType == PushMsg.MsgType.Clan)
            {
                param = ParseBtnSpite(TransmitAndInviteType.ClanInvite);
            }
            else if (msg.msgType == PushMsg.MsgType.TeamLeaderCallFollow)
            {
                param = ParseBtnSpite(TransmitAndInviteType.TeamLeaderCallFollow);
            }
            else if (msg.msgType == PushMsg.MsgType.TokenTaskReward)
            {
                param = ParseBtnSpite(TransmitAndInviteType.TokenTaskReward);
            }
            if (param != null)
            {
                m_spriteIcon.spriteName  = param.iconName;
                m_spriteTitle.spriteName = param.titleName;
            }
        }
    }