//zbz修改(以后显示的计算都放在这里) 如果Card != null 则用card, 否用templateid
    private void CalculateCardInfoAndShow(UserCardItem card, int nTemplateid)
    {
        int templateid = 0;

        if (card != null)
        {
            templateid = card.templateID;
        }
        else if (nTemplateid > 0)
        {
            templateid = nTemplateid;
        }
        else
        {
            return;
        }
        Tab_Card tabCard = TableManager.GetCardByID(templateid);

        if (tabCard != null)
        {
            Tab_Appearance tabAppearance = TableManager.GetAppearanceByID(tabCard.Appearance);
            if (tabAppearance != null)
            {
                cardName.text = LanguageManger.GetWords(tabAppearance.Name);
                if (tabAppearance.DropDescripe == -1)
                {
                    level_src.text = "获得途径:无";
                }
                else
                {
                    level_src.text = LanguageManger.GetWords(tabAppearance.DropDescripe);
                }
            }
            if (largeCardObj != null)
            {
                largeCardObj.GetComponent <CardLarge>().SetCardTemplateID(templateid);
            }
            if (card != null)
            {
                if (Obj_MyselfPlayer.GetMe().IsCardInBagByID(card.cardID))
                {
                    HP.text     = (card.GetHpBase() + card.GetFengShuiHp() + card.GetStudySkillHp()).ToString();
                    attack.text = (card.GetAttackBase() + card.GetFengShuiAttc()).ToString();
                }
                else
                {
                    HP.text     = card.GetHpBase().ToString();
                    attack.text = card.GetAttackBase().ToString();
                }

                if (card.GetHpAdd() > 0) //有加成
                {
                    HP_add.text = "+" + card.GetHpAdd().ToString();
                }
                else
                {
                    HP_add.text = "";
                }
                if (card.GetAttackAdd() > 0)
                {
                    attack_add.text = "+" + card.GetAttackAdd().ToString();
                }
                else
                {
                    attack_add.text = "";
                }
                level.text = card.level + "/" + tabCard.MaxLevel.ToString();
                //学习技能
                Tab_Studyskill studySkill = TableManager.GetStudyskillByID(card.skillStudyId);
                if (studySkill != null)
                {
                    string color = "";
                    switch (studySkill.SkillQuality)
                    {
                    case 0:
                        color = "[2d8560]";
                        break;

                    case 1:
                        color = "[2368ad]";
                        break;

                    case 2:
                        color = "[852bed]";
                        break;

                    default:
                        break;
                    }
                    studySkillName.text  = color + studySkill.SkillName;
                    studySkillName.text += "[9d2f07] " + card.skillStudyLev + "/" + studySkill.SkillHighLevel;
                    sdudySkillDes.text   = ConvertAttType(studySkill.SkillDes, templateid);
                }
                else
                {
                    studySkillName.text = "[a65a04]无";
                    sdudySkillDes.text  = "";
                }
                leadership.text = card.GetLeaderShip().ToString();
            }
            else
            {
                int hp       = tabCard.HpBase;
                int nLevBase = tabCard.LevelBase;
                hp     += tabCard.HpGrow * (tabCard.GambleLevel - nLevBase);
                HP.text = hp.ToString();
                int att = tabCard.AttackBase;
                att            += tabCard.AttackGrow * (tabCard.GambleLevel - nLevBase);
                attack.text     = att.ToString();
                attack_add.text = "";
                HP_add.text     = "";
                level.text      = tabCard.GambleLevel.ToString() + "/" + tabCard.MaxLevel.ToString();
                //学习技能
                Tab_Studyskill studySkill = TableManager.GetStudyskillByID(tabCard.SkillStudy);
                if (studySkill != null)
                {
                    string color = "";
                    switch (studySkill.SkillQuality)
                    {
                    case 0:
                        color = "[2d8560]";
                        break;

                    case 1:
                        color = "[2368ad]";
                        break;

                    case 2:
                        color = "[852bed]";
                        break;

                    default:
                        break;
                    }
                    studySkillName.text  = color + studySkill.SkillName;
                    studySkillName.text += "[9d2f07] " + tabCard.SkillStudylv + "/" + studySkill.SkillHighLevel;
                    sdudySkillDes.text   = ConvertAttType(studySkill.SkillDes, templateid);
                    //领导力
                    leadership.text = (tabCard.LeaderBase + studySkill.LeaderNum).ToString();
                }
                else
                {
                    studySkillName.text = "[a65a04]无";
                    sdudySkillDes.text  = "";
                    //领导力
                    leadership.text = tabCard.LeaderBase.ToString();
                }
            }
            Tab_Skill        skill        = null;
            Tab_SkillDisplay skillDisplay = null;
            skill = TableManager.GetSkillByID(tabCard.SkillComm);
            if (skill != null)
            {
                skillDisplay = TableManager.GetSkillDisplayByID(skill.Effect);
                N_name.text  = LanguageManger.GetWords(skillDisplay.Name);
                N_des.text   = ConvertAttType(LanguageManger.GetWords(skillDisplay.Describe), templateid);
            }
            skill             = TableManager.GetSkillByID(tabCard.SkillVol);
            cardLevelMax.text = "";
            if (skill != null)
            {
                skillDisplay = TableManager.GetSkillDisplayByID(skill.Effect);
                Z_name.text  = LanguageManger.GetWords(skillDisplay.Name);
                Z_des.text   = ConvertAttType(LanguageManger.GetWords(skillDisplay.Describe), templateid);
                //当实现的卡牌是存在的卡牌时(就是除了进化后预览效果这样的卡牌)
                if (card != null)
                {
                    Z_name.text += "[9d2f07]" + card.skillLevel + "/" + skill.SkillMaxlevel;
                    Debug.Log("card skill level : " + card.skillLevel);
                }
                else
                {
                    Z_name.text += "[9d2f07]" + 1 + "/" + skill.SkillMaxlevel;

                    Debug.Log("card skill level : not find card");
                }
                //2013-8-9 Jack Wen
                cardLevelMax.gameObject.SetActive(false);
                ShowRoundNum(skill.FirstRelease);
            }
            else
            {
                ShowRoundNum(2);
            }

            Tab_Leaderskill leaderSkill = TableManager.GetLeaderskillByID(tabCard.SkillLeader);//.GetSkillByID(tabCard.SkillLeader);
            if (leaderSkill != null)
            {
                L_name.text = LanguageManger.GetWords(leaderSkill.Name);
                Debug.Log("L_name.text=" + L_name.text);
                L_des.text = ConvertAttType(LanguageManger.GetWords(leaderSkill.Note), templateid);
            }
            else
            {
                L_name.text = "无";
                L_des.text  = "";
            }
            skill = TableManager.GetSkillByID(tabCard.SkillComb);
            if (skill != null)
            {
                skillDisplay = TableManager.GetSkillDisplayByID(skill.Effect);
                H_name.text  = LanguageManger.GetWords(skillDisplay.Name);
                H_des.text   = ConvertAttType(LanguageManger.GetWords(skillDisplay.Describe), templateid);
            }
            cardCanEvl.spriteName = tabCard.NextCard == -1 ? "cannotEvl" : "canEvl";
            int maxStar = tabCard.HighStarDisplay;
            //		level;
            for (int i = 0; i < startManager.Length; i++)
            {
                if (i < tabCard.Star)
                {
                    UISprite starIcon = startManager[i].GetComponent <UISprite>();
                    starIcon.spriteName = "xingxing";
                    starIcon.MakePixelPerfect();
                    starIcon.gameObject.SetActive(true);
                }
                else
                {
                    UISprite starIcon = startManager[i].GetComponent <UISprite>();
                    if (i < maxStar)
                    {
                        starIcon.spriteName = "haoyou_xingxing_beijing";
                        starIcon.MakePixelPerfect();
                        starIcon.gameObject.SetActive(true);
                    }
                    else
                    {
                        starIcon.gameObject.SetActive(false);
                    }
                }
            }
        }
    }
Exemple #2
0
    public void FreshCardInfo(long cardID)
    {
        Obj_MyselfPlayer.GetMe().bShowCardInfo = true;

        List <UserCardItem> cardList = Obj_MyselfPlayer.GetMe().cardBagList;

        foreach (UserCardItem card in cardList)
        {
            if (card.cardID == cardID)
            {
                if (largeCardObj != null)
                {
                    largeCardObj.GetComponent <CardLarge>().SetCardTemplateID(card.templateID);
                }
                Tab_Card tab_card = TableManager.GetCardByID(card.templateID);
                if (tab_card != null)
                {
                    Tab_Appearance tab_Appearance = TableManager.GetAppearanceByID(tab_card.Appearance);
                    if (tab_Appearance != null)
                    {
                        cardName.text  = LanguageManger.GetWords(tab_Appearance.Name);
                        otherInfo.text = LanguageManger.GetWords(tab_Appearance.DropDescripe);
                    }
                    cardLevel.text = card.level + "/" + tab_card.MaxLevel.ToString();
                    if (card.GetHpAdd() > 0) //有加成
                    {
                        cardHPAdd.text = "+" + card.GetHpAdd().ToString();
                    }
                    else
                    {
                        cardHPAdd.text = "";
                    }
                    if (card.GetAttackAdd() > 0)
                    {
                        cardAttackAdd.text = "+" + card.GetAttackAdd().ToString();
                    }
                    else
                    {
                        cardAttackAdd.text = "";
                    }

                    cardHP.text     = (card.GetHpBase() + card.GetFengShuiHp() + card.GetStudySkillHp()).ToString();
                    cardAttack.text = (card.GetAttackBase() + card.GetFengShuiAttc()).ToString();

                    cardLeaderShip.text = card.GetLeaderShip().ToString();
                    Transform transformStars = starManage.transform;
                    int       maxStar        = tab_card.HighStarDisplay;
                    for (int j = 1; j <= 7; j++)
                    {
                        if (j <= card.quality)
                        {
                            UISprite starIcon = transformStars.FindChild("Star_" + j).GetComponent <UISprite>();
                            starIcon.spriteName = "xingxing";
                            starIcon.MakePixelPerfect();
                            starIcon.gameObject.SetActive(true);
                        }
                        else
                        {
                            UISprite starIcon = transformStars.FindChild("Star_" + j).GetComponent <UISprite>();
                            if (j <= maxStar)
                            {
                                starIcon.spriteName = "haoyou_xingxing_beijing";
                                starIcon.MakePixelPerfect();
                                starIcon.gameObject.SetActive(true);
                            }
                            else
                            {
                                starIcon.gameObject.SetActive(false);
                            }
                        }
                    }
                    Tab_Skill        skill        = null;
                    Tab_SkillDisplay skillDisplay = null;
                    //普通技能
                    skill = TableManager.GetSkillByID(tab_card.SkillComm);
                    if (skill != null)
                    {
                        skillDisplay         = TableManager.GetSkillDisplayByID(skill.Effect);
                        skillNormalName.text = LanguageManger.GetWords(skillDisplay.Name);
                        skillNormal.text     = ConvertAttType(LanguageManger.GetWords(skillDisplay.Describe), card.templateID);
                    }
                    //主动技能
                    skill = TableManager.GetSkillByID(tab_card.SkillVol);
                    if (skill != null)
                    {
                        skillDisplay          = TableManager.GetSkillDisplayByID(skill.Effect);
                        skillActiveName.text  = LanguageManger.GetWords(skillDisplay.Name);
                        skillActive.text      = ConvertAttType(LanguageManger.GetWords(skillDisplay.Describe), card.templateID);
                        skillActiveName.text += "[9d2f07]" + card.skillLevel + "/" + skill.SkillMaxlevel;
                        //显示进恩释放回合数
                        ShowRoundNum(skill.FirstRelease);
                    }
                    else
                    {
                        //没有绝技,不显示
                        ShowRoundNum(2);
                    }
                    //队长技能
                    Tab_Leaderskill leaderSkill = TableManager.GetLeaderskillByID(tab_card.SkillLeader);
                    if (leaderSkill != null)
                    {
                        skillLeaderName.text = LanguageManger.GetWords(leaderSkill.Name);
                        skillLeader.text     = ConvertAttType(LanguageManger.GetWords(leaderSkill.Note), card.templateID);
                    }
                    else
                    {
                        skillLeaderName.text = "无";
                        skillLeader.text     = "";
                    }
                    skill = TableManager.GetSkillByID(tab_card.SkillComb);
                    if (skill != null)
                    {
                        skillDisplay      = TableManager.GetSkillDisplayByID(skill.Effect);
                        skillMixName.text = LanguageManger.GetWords(skillDisplay.Name);
                        skillMix.text     = ConvertAttType(LanguageManger.GetWords(skillDisplay.Describe), card.templateID);
                    }
                    else
                    {
                        skillMixName.text = "无";
                        skillMix.text     = "";
                    }
                    cardCanEvl.spriteName  = tab_card.NextCard == -1 ? "cannotEvl" : "canEvl";
                    isProtected.spriteName = card.isProtected ? "renwuxinxi_quxiaobaohu" : "renwuxinxi_baohu";
                    isProtected.MakePixelPerfect();
                    //学习技能
                    Tab_Studyskill studySkill = TableManager.GetStudyskillByID(card.skillStudyId);
                    if (studySkill != null)
                    {
                        string color = "";
                        switch (studySkill.SkillQuality)
                        {
                        case 0:
                            color = "[2d8560]";
                            break;

                        case 1:
                            color = "[2368ad]";
                            break;

                        case 2:
                            color = "[852bed]";
                            break;

                        default:
                            break;
                        }
                        studySkillName.text  = color + studySkill.SkillName;
                        studySkillName.text += "[9d2f07] " + card.skillStudyLev + "/" + studySkill.SkillHighLevel;
                        sdudySkillDes.text   = ConvertAttType(studySkill.SkillDes, card.templateID);
                    }
                    else
                    {
                        studySkillName.text = "[a65a04]无";
                        sdudySkillDes.text  = "";
                    }
                }
                break;
            }
        }
    }