Exemple #1
0
    void RefreshPK()
    {
        sdPlayerInfo kPlayerInfo = SDNetGlobal.playerList[SDNetGlobal.lastSelectRole];

        if (pk_selfname == null)
        {
            Debug.Log("pkself name == null");
            return;
        }
        lstjobAtlas.Clear();
        // military level
        Hashtable militarylevelTable = sdConfDataMgr.Instance().GetTable("militarylevel");
        int       totalReputation    = 0;
        int       index = 1;

        if (sdPVPManager.Instance.nMilitaryLevel > 1)
        {
            for (; index < sdPVPManager.Instance.nMilitaryLevel; index++)
            {
                Hashtable militaryTable = militarylevelTable[index.ToString()] as Hashtable;
                totalReputation += int.Parse((string)militaryTable["reputation"]);
            }
        }
        Hashtable mymilitary = militarylevelTable[(sdPVPManager.Instance.nMilitaryLevel).ToString()] as Hashtable;

        if (mymilitary == null)
        {
            return;
        }
        string NameColor = mymilitary["namecolor"].ToString();

        NameColor         = NameColor.Substring(1);
        pk_selfname.text  = "[" + NameColor + "]" + kPlayerInfo.mRoleName;
        pk_selflevel.text = "Lv." + sdGameLevel.instance.mainChar.Level.ToString();

        pk_titleimage.spriteName = mymilitary["icon"] as string;
        Hashtable mynextmilitary = militarylevelTable[(sdPVPManager.Instance.nMilitaryLevel + 1).ToString()] as Hashtable;

        if (mynextmilitary == null)
        {
            pk_reputation.text         = "满级";
            pk_sprite_reputation.width = ms_Hplength;
        }
        else
        {
            int value     = (int)sdPVPManager.Instance.nReputation + totalReputation;
            int needvalue = int.Parse((string)mymilitary["reputation"]) + totalReputation;
            pk_reputation.text = value.ToString() + "/" + needvalue.ToString();
            float fpercent = value / (float)needvalue;
            fpercent = fpercent > 1.0f ? 1.0f : fpercent;
            pk_sprite_reputation.width = (int)(ms_Hplength * fpercent);
        }
        pk_selftitle.text = (string)mymilitary["name"];

        pk_win.text       = "胜" + sdPVPManager.Instance.nWin.ToString();
        pk_lose.text      = "负" + sdPVPManager.Instance.nLose.ToString();
        pk_ranklist.text  = sdPVPManager.Instance.nRank.ToString();
        pk_score.text     = sdPVPManager.Instance.nScore.ToString();
        pk_challenge.text = sdPVPManager.Instance.nChallenge.ToString() + "次";

        if (sdPVPManager.Instance.m_ChallengeBuyLeft <= 0)
        {
            pkLeft.transform.FindChild("Button_addchallenge").gameObject.SetActive(false);
        }
        else
        {
            pkLeft.transform.FindChild("Button_addchallenge").gameObject.SetActive(true);
        }

        if (sdPVPManager.Instance.mMilitaryRewards)
        {
            pkLeft.transform.FindChild("Button_getrewards").FindChild("Background").GetComponent <UISprite>().spriteName = "btn_2dis";
        }
        if (sdPVPManager.Instance.m_bPVPSuspend)
        {
            pkRight.SetActive(false);
            pkRightSuspend.SetActive(true);
        }
        else
        {
            pkRight.SetActive(true);
            pkRightSuspend.SetActive(false);
            Hashtable mainProp = (Hashtable)sdGlobalDatabase.Instance.globalData["MainCharBaseProp"];

            List <stPVPRival> rivalList = sdPVPManager.Instance.GetRivallist();
            index = 0;
            for (; index < ms_TotalRival && index < rivalList.Count; ++index)
            {
                stPVPRival rival     = rivalList[index];
                Transform  character = pkRight.transform.FindChild("Sprite_character" + index);
                character.gameObject.SetActive(true);
                UISprite headicon = character.FindChild("Sprite_headicon1").GetComponent <UISprite>();
                UILabel  level    = character.FindChild("Label_level1").GetComponent <UILabel>();
                level.text = "Lv." + rival.nLevel.ToString();
                UILabel name = character.FindChild("Label_name1").GetComponent <UILabel>();
                name.text = rival.strName;
                //职业aaa
                UISprite title    = character.FindChild("Sprite_title1").GetComponent <UISprite>();
                UIAtlas  jobAtlas = sdConfDataMgr.Instance().GetAtlas(rival.nProfession.ToString());
                if (jobAtlas != null)
                {
                    title.atlas = jobAtlas;
                }
                else
                {
                    sdConfDataMgr.Instance().LoadJobAtlas(rival.nProfession);
                    JobAtlasInfo item = new JobAtlasInfo();
                    item.jobname = rival.nProfession.ToString();
                    item.sprite  = title;
                    lstjobAtlas.Add(item);
                }
                title.spriteName = sdConfDataMgr.Instance().GetJobIcon(rival.nProfession.ToString());
                UILabel titlename = character.FindChild("Label_title1").GetComponent <UILabel>();
                if (militarylevelTable.ContainsKey((rival.nMilitaryLevel).ToString()))
                {
                    Hashtable table2 = militarylevelTable[(rival.nMilitaryLevel).ToString()] as Hashtable;
                    if (table2 == null)
                    {
                        titlename.text = "满级";
                    }
                    else
                    {
                        titlename.text = (string)table2["name"];
                    }
                    //title.spriteName = table2["icon"].ToString();
                }
                UILabel score = character.FindChild("Label_score1").GetComponent <UILabel>();
                score.text = rival.nScore.ToString();

                int nwin  = CalcWinPoints((int)sdPVPManager.Instance.nScore, (int)rival.nScore);
                int nlose = CalcLosePoints((int)sdPVPManager.Instance.nScore, (int)rival.nScore);

                UILabel winreputation = character.FindChild("Label_winreputation1").GetComponent <UILabel>();
                winreputation.text = "+5 声望";
                UILabel winscore = character.FindChild("Label_winscore1").GetComponent <UILabel>();
                winscore.text = "+" + nwin.ToString() + " 积分";
                UILabel losereputation = character.FindChild("Label_losereputation1").GetComponent <UILabel>();
                losereputation.text = "+2 声望";
                UILabel losescore = character.FindChild("Label_losescore1").GetComponent <UILabel>();
                losescore.text = "-" + nlose.ToString() + " 积分";

                sdConfDataMgr.Instance().SetHeadPic(rival.nSex, rival.hairstyle, rival.haircolor, character.FindChild("Sprite_headicon1").GetComponent <UISprite>());
            }
            for (; index < ms_TotalRival; index++)
            {
                Transform character = pkRight.transform.FindChild("Sprite_character" + index);
                character.gameObject.SetActive(false);
            }
            if (sdPVPManager.Instance.m_bMilitaryLevelUp)
            {
                sdUICharacter.Instance.ShowPVPTitleUpWnd(true);
                sdPVPManager.Instance.m_bMilitaryLevelUp = false;
            }

            Hashtable configTable = sdConfDataMgr.Instance().GetTable("config");
            if (configTable.ContainsKey("refreshpvp"))
            {
                Hashtable table = configTable["refreshpvp"] as Hashtable;
                pk_refreshpvpmoney.text = table["value"] as string;
            }
        }
    }
Exemple #2
0
    void RefreshRankList()
    {
        if (ranklistRight == null)
        {
            return;
        }
        Transform trans = ranklistRight.transform.FindChild("Label_rank");

        if (trans == null)
        {
            return;
        }
        UILabel cur_rank = trans.GetComponent <UILabel>();

        cur_rank.text = sdPVPManager.Instance.nRank.ToString();
        trans         = ranklistRight.transform.FindChild("Label_score");
        if (trans == null)
        {
            return;
        }
        UILabel cur_score = trans.GetComponent <UILabel>();

        cur_score.text = sdPVPManager.Instance.nScore.ToString();
        lstjobAtlas.Clear();
        List <stPVPRival> ranklist = sdPVPManager.Instance.GetRanklist();

        for (int i = 0; i < ranklist.Count; ++i)
        {
            stPVPRival item       = ranklist[i];
            GameObject uiItem     = null;
            Transform  trans_item = rank_listPanel.transform.FindChild("ranklistitem" + i.ToString());
            if (trans_item == null)
            {
                uiItem = GameObject.Instantiate(rank_listitem) as GameObject;
            }
            else
            {
                uiItem = trans_item.gameObject;
            }
            uiItem.SetActive(true);
            uiItem.name                    = "ranklistitem" + i.ToString();
            uiItem.transform.parent        = rank_listPanel.transform;
            uiItem.transform.localPosition = new Vector3(rank_listitem.transform.localPosition.x, rank_listitem.transform.localPosition.y - 145.0f * i, 0);
            uiItem.transform.localScale    = Vector3.one;
            uiItem.transform.localRotation = Quaternion.identity;

            UILabel label_name = uiItem.transform.FindChild("Label_ranklistname").GetComponent <UILabel>();
            label_name.text = item.strName;
            UILabel label_level = uiItem.transform.FindChild("Label_ranklistlevel").GetComponent <UILabel>();
            label_level.text = "Lv." + item.nLevel.ToString();
            UILabel   label_title        = uiItem.transform.FindChild("Label_ranklisttitlename").GetComponent <UILabel>();
            Hashtable militarylevelTable = sdConfDataMgr.Instance().GetTable("militarylevel");
            Hashtable table = militarylevelTable[(item.nMilitaryLevel).ToString()] as Hashtable;
            if (table == null)
            {
                label_title.text = "满级";
            }
            else
            {
                label_title.text = (string)table["name"];
            }
            UILabel label_score = uiItem.transform.FindChild("Label_ranklistscore").GetComponent <UILabel>();
            label_score.text = "积分: " + item.nScore.ToString();
            if (i <= 2)
            {
                GameObject label_rank = uiItem.transform.FindChild("Label_rankindex").gameObject;
                label_rank.SetActive(false);
                UISprite sprite = uiItem.transform.FindChild("Sprite_rankicon").GetComponent <UISprite>();
                sprite.spriteName = "if-n" + (i + 1).ToString();
                sprite            = uiItem.transform.FindChild("Sprite_rankframe").GetComponent <UISprite>();
                sprite.spriteName = "if-n" + (i + 1).ToString() + "a";
            }
            else
            {
                GameObject label_rank = uiItem.transform.FindChild("Label_rankindex").gameObject;
                label_rank.SetActive(true);
                if (i < 9)
                {
                    label_rank.GetComponent <UILabel>().text = "第 " + (i + 1).ToString() + " 名";
                }
                else
                {
                    label_rank.GetComponent <UILabel>().text = "第" + (i + 1).ToString() + "名";
                }
                UISprite sprite = uiItem.transform.FindChild("Sprite_rankicon").GetComponent <UISprite>();
                sprite.spriteName = "if-n4";
                sprite            = uiItem.transform.FindChild("Sprite_rankframe").GetComponent <UISprite>();
                sprite.spriteName = "if-n4a";
            }
            UISprite sprite_profession = uiItem.transform.FindChild("Sprite_ranklisttitleicon").GetComponent <UISprite>();
            UIAtlas  jobAtlas          = sdConfDataMgr.Instance().GetAtlas(item.nProfession.ToString());
            if (jobAtlas != null)
            {
                sprite_profession.atlas = jobAtlas;
            }
            else
            {
                sdConfDataMgr.Instance().LoadJobAtlas(item.nProfession);
                JobAtlasInfo info = new JobAtlasInfo();
                info.jobname = item.nProfession.ToString();
                info.sprite  = sprite_profession;
                lstjobAtlas.Add(info);
            }
            sprite_profession.spriteName = sdConfDataMgr.Instance().GetJobIcon(item.nProfession.ToString());

            //头像
            sdConfDataMgr.Instance().SetHeadPic(item.nSex, item.hairstyle, item.haircolor, uiItem.transform.FindChild("Sprite_rankheadicon").GetComponent <UISprite>());
        }
    }
Exemple #3
0
    public void Refresh()
    {
        if (panel == null)
        {
            return;
        }
        UpdateBtnSprite();
        List <sdFriend> pklist      = sdRankListMgr.Instance.m_Avatar;
        int             nChildCount = panel.transform.childCount;
        int             index       = 0;

        if (sdRankListMgr.Instance.m_SelfRank == -1)
        {
            lb_selfRank.text = "10000名之后";
        }
        else
        {
            lb_selfRank.text = (sdRankListMgr.Instance.m_SelfRank + 1).ToString();
        }
        lstjobAtlas.Clear();
        for (; index < sdRankListMgr.Instance.m_Count; ++index)
        {
            sdFriend   roleInfo  = pklist[index];
            GameObject uiItem    = null;
            Transform  tranChild = panel.transform.FindChild("item" + index.ToString());
            if (tranChild != null)
            {
                uiItem = tranChild.gameObject;
            }
            else
            {
                uiItem                         = GameObject.Instantiate(item) as GameObject;
                uiItem.name                    = "item" + index.ToString();
                uiItem.transform.parent        = panel.transform;
                uiItem.transform.localScale    = Vector3.one;
                uiItem.transform.localPosition = new Vector3(item.transform.localPosition.x, item.transform.localPosition.y - index * 100, item.transform.localPosition.z);
                uiItem.transform.localRotation = Quaternion.identity;
            }
            uiItem.SetActive(true);

            GameObject spriterank_obj = uiItem.transform.FindChild("Sprite_rank").gameObject;
            GameObject lbrank_ojb     = uiItem.transform.FindChild("ranking").gameObject;

            spriterank_obj.SetActive(true);
            UISprite spriterank = spriterank_obj.GetComponent <UISprite>();
            if (index == 0)
            {
                spriterank.spriteName = "h";
            }
            else if (index == 1)
            {
                spriterank.spriteName = "hu";
            }
            else if (index == 2)
            {
                spriterank.spriteName = "l";
            }
            else
            {
                spriterank_obj.SetActive(false);
            }
            lbrank_ojb.SetActive(true);
            UILabel lbrank = lbrank_ojb.GetComponent <UILabel>();
            lbrank.text = (index + 1).ToString();
            UILabel lbname = uiItem.transform.FindChild("name").GetComponent <UILabel>();
            lbname.text = roleInfo.name;

            UILabel lbpkvalue = uiItem.transform.FindChild("pkvalue").GetComponent <UILabel>();
            switch (sdRankListMgr.Instance.rankType)
            {
            case HeaderProto.ERankType.RANKTYPE_ATTACK:
                lbpkvalue.text = roleInfo.power.ToString();
                break;

            case HeaderProto.ERankType.RANKTYPE_LEVEL:
                lbpkvalue.text = roleInfo.level;
                break;

            case HeaderProto.ERankType.RANKTYPE_PVPREPUTE:
                lbpkvalue.text = roleInfo.pvprepute.ToString();
                break;

            case HeaderProto.ERankType.RANKTYPE_PVPWINS:
                lbpkvalue.text = roleInfo.pvpwin.ToString();
                break;
            }


            //UILabel lbprofession = uiItem.transform.FindChild("profession").GetComponent<UILabel>();
            string str = sdConfDataMgr.Instance().GetProfessionText(int.Parse(roleInfo.job));
            //lbprofession.text = sdConfDataMgr.Instance().GetProfessionText(int.Parse(roleInfo.job));
            UISprite spriteprofession = uiItem.transform.FindChild("Sprite_profession").GetComponent <UISprite>();
            UIAtlas  jobAtlas         = sdConfDataMgr.Instance().GetAtlas(roleInfo.job);
            if (jobAtlas != null)
            {
                spriteprofession.atlas = jobAtlas;
            }
            else
            {
                sdConfDataMgr.Instance().LoadJobAtlas(int.Parse(roleInfo.job));
                JobAtlasInfo item = new JobAtlasInfo();
                item.jobname = roleInfo.job;
                item.sprite  = spriteprofession;
                lstjobAtlas.Add(item);
            }
            spriteprofession.spriteName = sdConfDataMgr.Instance().GetJobIcon(roleInfo.job);
        }
        //多余的隐藏aaa
        for (; index < nChildCount; ++index)
        {
            panel.transform.FindChild("item" + index.ToString()).gameObject.SetActive(false);
        }
    }