/// <summary>
        /// 监听队伍发送改变就请求队伍位置
        /// </summary>
        /// <param name="args"></param>
        public void UpdateRequsetTeam(CEventBaseArgs args)
        {
            if (IsEnable == false)
            {
                return;
            }
            if (mUpdateTeamPosCd != null)
            {
                return;
            }
            if (TeamManager.Instance.HaveTeam)
            {
                mUpdateTeamPosCd = new Utils.Timer(2000, true, 3000,
                                                   (dt) =>
                {
                    if (!m_bNetAnswer)
                    {
                        ClearTeamPoint();
                    }

                    m_bNetAnswer = false;
                    var data     = new C2STeamMemberPos();
                    NetClient.GetBaseClient().SendData <C2STeamMemberPos>(NetMsg.MSG_TEAM_MEMBER_POS, data);
                });
            }
        }
Example #2
0
        /// <summary>
        /// 监听队伍信息的变化
        /// </summary>
        /// <param name="args"></param>
        void OnTeamInfoChange(CEventBaseArgs args)
        {
            if (IsEnable == false)
            {
                return;
            }

            if (TeamManager.Instance.HaveTeam)
            {
                if (m_updateTeamPosCd != null)
                {
                    return;
                }

                m_updateTeamPosCd = new Utils.Timer(2000, true, 3000,
                                                    (dt) =>
                {
                    if (!m_bNetAnswer)
                    {
                        ClearTeamPoint();
                    }

                    if (TeamManager.Instance.TeamMembers.Count <= 1)
                    {
                        return;
                    }

                    // 有的场景没有地图
                    if (m_uiScalex <= 0 || m_uiScaley <= 0)
                    {
                        return;
                    }

                    //隐藏组队
                    if (DBInstanceTypeControl.Instance.HideTeam(InstanceManager.Instance.InstanceType, InstanceManager.Instance.InstanceSubType))
                    {
                        return;
                    }

                    m_bNetAnswer = false;
                    var data     = new C2STeamMemberPos();
                    // 请求队伍位置信息
                    NetClient.GetBaseClient().SendData <C2STeamMemberPos>(NetMsg.MSG_TEAM_MEMBER_POS, data);
                });
            }
            else
            {
                ClearPoint();
            }
        }