public uint Execute(PacketDistributed ipacket)
        {
            GC_RET_FINALGUILDWARGROUPINFO packet = (GC_RET_FINALGUILDWARGROUPINFO)ipacket;

            if (null == packet)
            {
                return((uint)PACKET_EXE.PACKET_EXE_ERROR);
            }
            //enter your logic
//            if (GuildWarInfoLogic.Instance())
//            {
//                GuildWarInfoLogic.Instance().UpdateWarGroupInfo(packet);
//            }
            return((uint)PACKET_EXE.PACKET_EXE_CONTINUE);
        }
Пример #2
0
    public void UpdateWarGroupInfo(GC_RET_FINALGUILDWARGROUPINFO packet)
    {
        Obj_MainPlayer _mainPlayer = Singleton <ObjManager> .GetInstance().MainPlayer;

        if (_mainPlayer == null)
        {
            return;
        }
        if (packet.GroupIndexCount <= 0)
        {
            _mainPlayer.SendNoticMsg(false, "#{2586}");
            return;
        }
        //显示对战的帮会
        if (packet.CurRound > 0)
        {
            int nNeedShowGroup = 16 / (int)(Mathf.Pow(2, packet.CurRound));
            for (int i = 0; i < (int)MAXCOUNT.MAXFINALGROUPCOUNT; i++)
            {
                if (null != m_FightGroupItemLogic[i])
                {
                    m_FightGroupItemLogic[i].CleanUp();
                    if (i < nNeedShowGroup)
                    {
                        m_FightGroupItemLogic[i].gameObject.SetActive(true);
                        if (i >= 0 && i < packet.GroupIndexCount)
                        {
                            GuildWarGroupInfo groupInfo = new GuildWarGroupInfo();
                            groupInfo.CleanUp();
                            groupInfo.GroupIndex  = i;
                            groupInfo.GuildAScore = packet.GetGuildAScore(i);
                            groupInfo.GuildBScore = packet.GetGuildBScore(i);
                            groupInfo.GuildAName  = packet.GetGuildAName(i);
                            groupInfo.GuildBName  = packet.GetGuildBName(i);
                            groupInfo.WinType     = packet.GetWinType(i);
                            m_FightGroupItemLogic[i].InitGroupInfo(groupInfo);
                        }
                    }
                }
            }

            if (packet.CurRound == 1)
            {
                m_GroupFightGird.maxPerLine     = 2;
                m_GroupFightGird.cellWidth      = 260;
                m_GroupFightGird.cellHeight     = 130;
                m_GroupSpriteTran.localPosition = new Vector3(240, m_GroupSpriteTran.localPosition.y, m_GroupSpriteTran.localPosition.z);
                Vector3 FightGirdPos = m_FightGird.transform.localPosition;
                FightGirdPos.y = 192;
                m_FightGird.transform.localPosition = FightGirdPos;
                Vector3 WinGirdPos = m_WinGird.transform.localPosition;
                WinGirdPos.y = 179;
                m_WinGird.transform.localPosition = WinGirdPos;
                m_RoundInfoLable.text             = StrDictionary.GetClientDictionaryString("#{2597}", nNeedShowGroup * 2);
            }
            else if (packet.CurRound == 2)
            {
                m_GroupFightGird.maxPerLine     = 2;
                m_GroupFightGird.cellWidth      = 260;
                m_GroupFightGird.cellHeight     = 160;
                m_GroupSpriteTran.localPosition = new Vector3(240, m_GroupSpriteTran.localPosition.y, m_GroupSpriteTran.localPosition.z);
                Vector3 FightGirdPos = m_FightGird.transform.localPosition;
                FightGirdPos.y = 80;
                m_FightGird.transform.localPosition = FightGirdPos;
                Vector3 WinGirdPos = m_WinGird.transform.localPosition;
                WinGirdPos.y = 60;
                m_WinGird.transform.localPosition = WinGirdPos;
                m_RoundInfoLable.text             = StrDictionary.GetClientDictionaryString("#{2597}", nNeedShowGroup * 2);
            }
            else
            {
                if (packet.CurRound == 3)
                {
                    m_GroupSpriteTran.localPosition = new Vector3(100, m_GroupSpriteTran.localPosition.y, m_GroupSpriteTran.localPosition.z);
                    Vector3 FightGirdPos = m_FightGird.transform.localPosition;
                    FightGirdPos.y = 80;
                    m_FightGird.transform.localPosition = FightGirdPos;
                    Vector3 WinGirdPos = m_WinGird.transform.localPosition;
                    WinGirdPos.y = 0;
                    m_WinGird.transform.localPosition = WinGirdPos;
                    m_RoundInfoLable.text             = StrDictionary.GetClientDictionaryString("#{3001}");
                }
                else if (packet.CurRound == 4)
                {
                    m_GroupSpriteTran.localPosition = new Vector3(100, m_GroupSpriteTran.localPosition.y, m_GroupSpriteTran.localPosition.z);
                    Vector3 FightGirdPos = m_FightGird.transform.localPosition;
                    FightGirdPos.y = 0;
                    m_FightGird.transform.localPosition = FightGirdPos;
                    Vector3 WinGirdPos = m_WinGird.transform.localPosition;
                    WinGirdPos.y = -20;
                    m_WinGird.transform.localPosition = WinGirdPos;
                    m_RoundInfoLable.text             = StrDictionary.GetClientDictionaryString("#{3002}");
                }
                m_GroupFightGird.maxPerLine = 1;
                m_GroupFightGird.cellWidth  = 260;
                m_GroupFightGird.cellHeight = 160;
            }
            m_FightGird.GetComponent <UIGrid>().Reposition();
            //显示胜利的帮会
            for (int i = 0; i < (int)MAXCOUNT.MAXFINALGROUPCOUNT; i++)
            {
                m_WinGroupItemLogic[i].CleanUp();
                if (i < nNeedShowGroup)
                {
                    m_WinGroupItemLogic[i].gameObject.SetActive(true);
                    if (i >= 0 && i < packet.GroupIndexCount)
                    {
                        if (packet.GetWinType(i) == (int)GC_RET_FINALGUILDWARGROUPINFO.WINTYPE.AGUILDWIN)
                        {
                            m_WinGroupItemLogic[i].InitInfo(packet.GetGuildAName(i));
                        }
                        else if (packet.GetWinType(i) == (int)GC_RET_FINALGUILDWARGROUPINFO.WINTYPE.BGUILDWIN)
                        {
                            m_WinGroupItemLogic[i].InitInfo(packet.GetGuildBName(i));
                        }
                    }
                }
            }
            m_GroupWinGird.Reposition();
            m_SaiChengBiao.SetActive(true);
        }
    }