Пример #1
0
    private bool CheckAdvancedHero(ObjectCard hero)
    {
        if (hero == null)
        {
            return(false);
        }

        bool         _result;
        HeroTemplate _heroTemplate = hero.GetHeroRow();

        long _resourceCount = 0;

        if (m_ObjectSelf.TryGetResourceCountById(_heroTemplate.getStageUpCostType1(), ref _resourceCount))
        {
            _result = hero.GetHeroData().Level >= _heroTemplate.getMaxLevel() && _resourceCount > _heroTemplate.getStageUpCost1();
        }
        else
        {
            _result = false;
        }

        if (!_result && m_ObjectSelf.TryGetResourceCountById(_heroTemplate.getStageUpCostType2(), ref _resourceCount))
        {
            _result |= _resourceCount > _heroTemplate.getStageUpCost2();
        }

        return(_result);
    }
Пример #2
0
    /// <summary>
    /// 可升级检测逻辑
    /// </summary>
    /// <param name="hero"></param>
    /// <returns></returns>
    private bool CheckUpgradable(ObjectCard hero)
    {
        if (hero == null)
        {
            return(false);
        }

        HeroTemplate    _heroItem = hero.GetHeroRow();
        IExcelBean      _data     = null;
        HeroexpTemplate _heroExp  = null;
        var             _dataMap  = m_HeroExpTable.getData();

        if (_dataMap.TryGetValue(hero.GetHeroData().Level, out _data))
        {
            _heroExp = _data as HeroexpTemplate;
        }

        if (_heroExp != null)
        {
            return(m_ObjectSelf.ExpFruit * m_ExpCrystalFactor >= _heroExp.getExp()[_heroItem.getExpNum() - 1] &&
                   hero.GetHeroData().Level < _heroItem.getMaxLevel());
        }
        else
        {
            return(false);
        }
    }
Пример #3
0
    public void InitHeroData(ObjectCard card)
    {
        _card = card;
        HeroTemplate _HeroData = card.GetHeroRow();

        gameObject.SetActive(true);
        ChsTextTemplate chs = new ChsTextTemplate();

        chs           = (ChsTextTemplate)DataTemplate.GetInstance().m_ChsTextTable.getTableData(_HeroData.getTitleID());
        HeroName.text = chs.languageMap["Chinese"];
        string level = card.GetHeroData().Level.ToString();

        InterfaceControler.AddLevelNum(level, HeroLevel);
        HeroStar = _HeroData.getQuality();
        int maxStar = _HeroData.getMaxQuality();

        for (int i = 5; i < 10; ++i)//星级
        {
            selfTransform.FindChild("Star_Image").GetChild(i - 5).GetComponent <Image>().enabled = i < 5 + maxStar;
            selfTransform.FindChild("Star_Image").GetChild(i).GetComponent <Image>().enabled     = i < 5 + HeroStar;
            //if (i < 5 + HeroStar)
            //{
            //    Image temp = selfTransform.FindChild("Star_Image").GetChild(i).GetComponent<Image>();
            //    temp.enabled = true;
            //}
            //else
            //{
            //    Image temp = selfTransform.FindChild("Star_Image").GetChild(i).GetComponent<Image>();
            //    temp.enabled = false;
            //}
        }
    }
Пример #4
0
 public void SetData(HeroInfo h0, int type)
 {
     IsFriend = false;
     TheType = type;
     HeroData = h0;
     Attrack = 0;
     Hp = 0;
     Recover = 0;
     Mp = 0;
     if (HeroData != null)
     {
         HeroTemp = HeroModelLocator.Instance.GetHeroByTemplateId(HeroData.TemplateId);
         
         if (HeroData.Prop.ContainsKey(RoleProperties.ROLE_ATK))
         {
             Attrack += HeroData.Prop[RoleProperties.ROLE_ATK];
         }
         if (HeroData.Prop.ContainsKey(RoleProperties.ROLE_HP))
         {
             Hp += HeroData.Prop[RoleProperties.ROLE_HP];
         }
         if (HeroData.Prop.ContainsKey(RoleProperties.ROLE_RECOVER))
         {
             Recover += HeroData.Prop[RoleProperties.ROLE_RECOVER];
         }
         if (HeroData.Prop.ContainsKey(RoleProperties.ROLE_MP))
         {
             Mp += HeroData.Prop[RoleProperties.ROLE_MP];
         }
     }
         
     SetContent();
 }
Пример #5
0
    public List <int> GetHeroRuneGroup(HeroTemplate heroT)
    {
        if (heroT == null)
        {
            return(null);
        }

        List <int> result = new List <int> ();

        if (heroT.getRunePair1() != -1)
        {
            result.Add(heroT.getRunePair1());
        }
        if (heroT.getRunePair2() != -1)
        {
            result.Add(heroT.getRunePair2());
        }
        if (heroT.getRunePair3() != -1)
        {
            result.Add(heroT.getRunePair3());
        }
        if (heroT.getRunePair4() != -1)
        {
            result.Add(heroT.getRunePair4());
        }

        return(result);
    }
Пример #6
0
    void SortHeroWithQuailty(ref List <HerorecruitTemplate> heroList)
    {
        for (int i = 0; i < heroList.Count - 1; ++i)
        {
            HerorecruitTemplate item = heroList[i];
            for (int j = i; j < heroList.Count; ++j)
            {
                HeroTemplate hero1    = (HeroTemplate)DataTemplate.GetInstance().m_HeroTable.getTableData(heroList[i].GetID());
                int          quality1 = hero1.getQuality();

                HeroTemplate hero2    = (HeroTemplate)DataTemplate.GetInstance().m_HeroTable.getTableData(heroList[j].GetID());
                int          quality2 = hero2.getQuality();

                if (quality2 > quality1)
                {
                    item        = heroList[j];
                    heroList[j] = heroList[i];
                    heroList[i] = item;
                }
                else if (quality2 == quality1)
                {
                    if (hero2.GetID() > hero1.GetID())
                    {
                        item        = heroList[j];
                        heroList[j] = heroList[i];
                        heroList[i] = item;
                    }
                }
            }
        }
    }
        public void Show3DModel(ObjectCard _card)
        {
            ModelCear();
            //通过表ID获取到英雄数据表
            HeroTemplate _HeroData = _card.GetHeroRow();
            //通过英雄数据表中的资源数据表ID得到资源表数据
            ArtresourceTemplate _Artresourcedata = new ArtresourceTemplate();

            _Artresourcedata = (ArtresourceTemplate)DataTemplate.GetInstance().m_ArtresourceTable.getTableData(_card.GetHeroRow().getArtresources());
            //通过资源表获取到角色默认美术资源(名称)     通过该名称获取到动态加载数据返回一个对象
            GameObject _AssetRes = AssetLoader.Inst.GetAssetRes(_Artresourcedata.getArtresources());

            //实例化该对象
            Card3Dmodel = Instantiate(_AssetRes, _Point.position, _Point.rotation) as GameObject;
            float _zoom = _Artresourcedata.getArtresources_zoom();

            Card3Dmodel.transform.localScale = new UnityEngine.Vector3(_zoom, _zoom, _zoom);
            Card3Dmodel.transform.parent     = _Point;
            //设置3D模型摩擦力
            Card3Dmodel.rigidbody.angularDrag = 1;
            Card3Dmodel.rigidbody.mass        = 1;
            //_obj.transform.localScale = new Vector3(1.3f,1.3f,1.3f);
            Animation anim = Card3Dmodel.GetComponent <Animation>();

            if (anim == null)
            {
                return;
            }
            Card3Dmodel.GetComponent <Animation>().Play("Nidle1");
            Card3Dmodel.GetComponent <Animation>().wrapMode = WrapMode.Loop;
        }
Пример #8
0
        public void InitData(ObjectCard hero)
        {
            objhero  = hero;
            HeroData = objhero.GetHeroRow();

            DataParent.SetActive(true);
            m_NullStateOBJ.SetActive(false);

            HeroName.text = string.Format(GameUtils.GetHeroNameFontColor(hero.GetHeroData().QualityLev), GameUtils.getString(HeroData.getTitleID()));
            InterfaceControler.AddLevelNum(hero.GetHeroData().Level.ToString(), HeroLevel);
            int       star       = hero.GetHeroData().StarLevel;
            Transform BrightStar = DataParent.transform.FindChild("HeroStar/BrightStar");

            for (int i = 0; i < BrightStar.childCount; ++i)
            {
                BrightStar.transform.GetChild(i).GetComponent <Image>().enabled = (i < star);
            }
            //InterfaceControler.GetInst().AddSharLevel(DataParent.transform.FindChild("Star_Image"),HeroData);

            //如果是远程英雄
            if (ClickType == 1)
            {
                int    group = ObjectSelf.GetInstance().Teams.GetDefaultGroup();
                X_GUID guid  = ObjectSelf.GetInstance().Teams.m_Matrix[group, FormationNum - 1];
                UI_FormMgr.Inst.SetBackHeroGuids(guid.GUID_value);
            }
        }
Пример #9
0
    private void onLevelup10Call()
    {
        //新手引导相关 点击【升10级】
        if (GuideManager.GetInstance().GetBackCount(200503))
        {
            GuideManager.GetInstance().ShowGuideWithIndex(200504);
        }
        //DisabledBtn();
        HeroTemplate _HeroItem = objc.GetHeroRow();

        if (int.Parse(mLevel.text) == _HeroItem.getMaxLevel())
        {
            AddMsgBox(GameUtils.getString("hero_levelup_content4"));//"已达到当阶满级"
        }
        else if (int.Parse(allExpCrystal.text) == 0 || int.Parse(tenExpCrustal.text) > int.Parse(allExpCrystal.text))
        {
            AddMsgBox(GameUtils.getString("hero_levelup_content3")); //"经验结晶不足,无法升级"
        }
        else if (objc.GetHeroData().Level <= _HeroItem.getMaxLevel())
        {
            //DisabledBtn()
            if (!isBanInput)
            {
                LevelUP(10);
            }
        }
    }
Пример #10
0
        /// <summary>
        /// 返回技能是否开启 [Lyq]
        /// </summary>
        /// <param name="heroData">英雄表数据</param>
        /// <param name="skillNo">技能编号</param>
        /// <returns></returns>
        public bool IsOpenSkill(HeroTemplate heroData, int skillNo)
        {
            int starLevel = heroData.getQuality();

            switch (skillNo)
            {
            case 1:
                if (starLevel <= 1)
                {
                    return(false);
                }
                break;

            case 2:
                if (starLevel <= 2)
                {
                    return(false);
                }
                break;

            case 3:
                if (starLevel <= 3)
                {
                    return(false);
                }
                break;
            }
            return(true);
        }
Пример #11
0
    public override void ShowHeroInfo(ObjectCard objectCard)
    {
        m_UpEffect.SetActive(false);

        m_HeroData  = objectCard.GetHeroData();
        m_HeroDataT = objectCard.GetHeroRow();

        switch (ObjectSelf.GetInstance().CurBringType)
        {
        case Bring_Type.HUO:
            OnClickHuoButton();
            break;

        case Bring_Type.EARTH:
            OnClickEarthButton();
            break;

        case Bring_Type.WATER:
            OnClickWaterButton();
            break;

        case Bring_Type.WIND:
            OnClickWindButton();
            break;
        }
        SetCurElementName();
    }
Пример #12
0
        public void OnClickMySelf()
        {
            if (id == 2)
            {
                if (mTipsText == null)
                {
                    mTips.SetActive(false);
                    UI_StageInfo._instance.Tips.SetActive(false);
                }
                else
                {
                    mTips.SetActive(true);
                    UI_StageInfo._instance.Tips.SetActive(true);
                    UI_StageInfo._instance.TipsDes.text = GameUtils.getString(mTipsText);
                }
            }
            else
            {
                switch (typeNum)
                {
                //符文
                case 1:

                    ItemTemplate rune = (ItemTemplate)DataTemplate.GetInstance().m_ItemTable.getTableData(id);
                    UI_RuneInfo.SetShowRuneDate(rune);
                    UI_HomeControler.Inst.AddUI("UI_Rune/UI_RuneInfo_1_3");
                    break;

                //道具
                case 2:
                    ItemTemplate item = (ItemTemplate)DataTemplate.GetInstance().m_ItemTable.getTableData(id);
                    UI_Item.SetItemTemplate(item);
                    UI_HomeControler.Inst.AddUI("UI_Home/UI_Item_1_3");


                    break;

                //英雄
                case 3:
                    UI_HomeControler.Inst.AddUI("UI_Home/UI_HeroInfoPop_1_3");
                    ObjectCard   obj   = new ObjectCard();
                    Hero         hero  = new Hero();
                    HeroTemplate _hero = (HeroTemplate)DataTemplate.GetInstance().m_HeroTable.getTableData(id);
                    hero.skill1     = _hero.getSkill1ID();
                    hero.skill2     = _hero.getSkill2ID();
                    hero.skill3     = _hero.getSkill3ID();
                    hero.heroid     = id;
                    hero.herolevel  = 1;
                    hero.heroviewid = _hero.getArtresources();
                    obj.GetHeroData().Init(hero);
                    //Destroy(UI_SelectFightArea.Inst.Card3Dmodel);
                    HeroInfoPop.inst.Show3DModel(obj);
                    HeroInfoPop.inst.ShowInfo(obj);
                    break;

                default:
                    break;
                }
            }
        }
Пример #13
0
        //如果当期选中卡牌是怪物则不显示英雄搭配按钮
        private void InitMatchHeroBtn()
        {
            if (CurCard == null)
            {
                return;
            }

            HeroTemplate _temp = CurCard.GetHeroRow();

            if (_temp == null || _temp.getSkillPair().Length == 0)
            {
                return;
            }
            if (_temp.getSkillPair()[0] == -1)
            {
                DetailInfoBtn.GetComponent <RectTransform>().anchoredPosition = HeroinfoCPos.anchoredPosition;
                HeroMatchBtn.gameObject.SetActive(false);
            }
            else
            {
                DetailInfoBtn.GetComponent <RectTransform>().anchoredPosition = HeroinfoLPos.anchoredPosition;
                HeroMatchBtn.GetComponent <RectTransform>().anchoredPosition  = HeroinfoRPos.anchoredPosition;
                HeroMatchBtn.gameObject.SetActive(true);
            }
        }
Пример #14
0
    public HeroTemplate GetHeroTemplateByArtresourceId(int artresourceId)
    {
        for (int i = 0; i < m_HeroTable.getDataCount(); i++)
        {
            int key = m_HeroTable.GetDataKeys() [i];

            HeroTemplate heroT = m_HeroTable.getTableData(key) as HeroTemplate;

            if (heroT == null)
            {
                continue;
            }

            if (heroT.getUseableArtresource() == null)
            {
                continue;
            }

            for (int m = 0, n = heroT.getUseableArtresource().Length; m < n; m++)
            {
                int artid = heroT.getUseableArtresource() [m];

                if (artid == artresourceId)
                {
                    return(heroT);
                }
            }
        }

        return(null);
    }
Пример #15
0
    //刷新英雄卡牌
    public void UpdateHeroCardData(ObjectCard heroObject)
    {
        objHero   = heroObject;
        _HeroItem = heroObject.GetHeroRow();

        SetBaseInfo(heroObject.GetHeroData().Level);
    }
Пример #16
0
        //初始化掉落英雄
        public void InitHero(HeroTemplate _herodata)
        {
            GoodImage = selfTransform.FindChild("Good_Image").GetComponent <Image>();
            GoodName  = selfTransform.FindChild("Good_Name").GetComponent <Text>();
            GoodNums  = selfTransform.FindChild("Good_Nums").GetComponent <Text>();
            Stars     = selfTransform.FindChild("Star_Image").gameObject;
            Stars.SetActive(true);
            GoodName.enabled = true;
            GoodNums.enabled = false;
            ArtresourceTemplate _Artresourcedata = (ArtresourceTemplate)DataTemplate.GetInstance().m_ArtresourceTable.getTableData(_herodata.getArtresources());
            Sprite _img = UIResourceMgr.LoadSprite(common.defaultPath + _Artresourcedata.getHeadiconresource());

            GoodImage.sprite = _img;
            ChsTextTemplate chs = (ChsTextTemplate)DataTemplate.GetInstance().m_ChsTextTable.getTableData(_herodata.getTitleID());

            GoodName.text = chs.languageMap["Chinese"];
            int starNum = _herodata.getQuality();
            int maxStar = _herodata.getMaxQuality();

            //for (int i = 5; i < 5 + starNum; ++i)
            //{
            //    Stars.transform.GetChild(i).GetComponent<Image>().enabled = true;
            //}
            for (int i = 0; i < 5; i++)
            {
                Stars.transform.GetChild(i).GetComponent <Image>().enabled     = i < maxStar;
                Stars.transform.GetChild(i + 5).GetComponent <Image>().enabled = i < starNum;
            }
        }
Пример #17
0
    /// <summary>
    /// 初始化英雄搭配界面
    /// </summary>
    private void InitHeroMatthData()
    {
        if (m_HeroData.getHerotype() == 2)
        {
            m_HeroMake_btn.gameObject.SetActive(false);
        }

        for (int i = 0; i < HeroMatchList.Count; ++i)
        {
            Destroy(HeroMatchList[i]);
        }
        HeroMatchList.Clear();
        string _text = GameUtils.getString(m_Card.GetHeroRow().getHeroDes());

        m_HeroTrait_Text.text = _text;

        int count = m_Card.GetHeroRow().getSkillPair().Length;

        for (int i = 0; i < count; ++i)
        {
            GameObject temp = Instantiate(Resources.Load(common.prefabPath + "UI_Home/UI_SHeroItem")) as GameObject;
            temp.transform.SetParent(m_HeroMatchListLayout, false);
            HeroMatchList.Add(temp);
            if (!DataTemplate.GetInstance().m_HeroTable.tableContainsKey(m_Card.GetHeroRow().getSkillPair()[i]))
            {
                continue;
            }
            HeroTemplate _data  = (HeroTemplate)DataTemplate.GetInstance().m_HeroTable.getTableData(m_Card.GetHeroRow().getSkillPair()[i]);
            UI_HeroItem  uiItem = temp.AddComponent <UI_HeroItem>();
            uiItem.InitHeroMatchCardData(_data, m_Card);
        }

        m_HeroMatchName.text  = GameUtils.getString(m_HeroData.getNameID());
        m_HeroMatchTitle.text = GameUtils.getString(m_HeroData.getTitleID());
    }
Пример #18
0
    // 更新英雄信息
    public void UpdateHeroInfo()
    {
        HeroTemplate heroItem = m_CurCard.GetHeroRow();

        // 英雄类型
        if (heroItem.getCamp() == 1)   //生灵
        {
            m_HeroType.sprite = UIResourceMgr.LoadSprite(common.defaultPath + "UI_Zhongzu_01");
        }
        else if (heroItem.getCamp() == 2)   //神抵
        {
            m_HeroType.sprite = UIResourceMgr.LoadSprite(common.defaultPath + "UI_Zhongzu_03");
        }
        else if (heroItem.getCamp() == 3)   //恶魔
        {
            m_HeroType.sprite = UIResourceMgr.LoadSprite(common.defaultPath + "UI_Zhongzu_02");
        }

        m_Text_LV100.text = m_CurCard.GetHeroData().Level.ToString();
        m_Text_Title.text = GameUtils.getString(heroItem.getTitleID());
        //名称显示
        m_Text_Name.text = GameUtils.getString(heroItem.getNameID());

        // 星级
        int star = m_CurCard.GetHeroData().StarLevel;

        for (int i = 0; i < m_BrightStar.transform.childCount; ++i)
        {
            m_BrightStar.transform.GetChild(i).gameObject.SetActive(i < star);
        }
    }
Пример #19
0
 //刷新英雄卡牌
 public void UpdateHeroCardData(ObjectCard heroObject)
 {
     HeroObject       = heroObject;
     _Herodata        = heroObject.GetHeroRow();
     HeroType         = _Herodata.getClientSignType()[0];
     _Artresourcedata = (ArtresourceTemplate)DataTemplate.GetInstance().m_ArtresourceTable.getTableData(heroObject.GetHeroData().GetHeroViewID());
     SetBaseInfo(heroObject.GetHeroData().Level);
     InterfaceControler.GetInst().ShowHeroImg(_Herodata, AttackType_Img, JobType_Img, RaceType_Img);
     SetFormationNum();
     YetUpFrontImg.SetActive(false);
     DownFeontImg.SetActive(false);
     for (int i = 0; i < GlobalMembers.MAX_TEAM_CELL_COUNT; ++i)
     {
         int nGroup = ObjectSelf.GetInstance().Teams.GetDefaultGroup();
         if (nGroup < 0 && nGroup >= GlobalMembers.MAX_MATRIX_COUNT)
         {
             continue;
         }
         X_GUID pMemberGuiD = ObjectSelf.GetInstance().Teams.m_Matrix[nGroup, i];
         if (pMemberGuiD.GUID_value == HeroObject.GetGuid().GUID_value)
         {
             YetUpFrontImg.SetActive(true);
         }
     }
 }
Пример #20
0
 public override void ShowHeroInfo(ObjectCard _objectCard)
 {
     m_objectCard = _objectCard;
     m_HeroData   = _objectCard.GetHeroData();
     m_HeroDataT  = _objectCard.GetHeroRow();
     PopMysticWindow(m_MysticId, _objectCard);
 }
Пример #21
0
    // 显示每一个英雄的数据        英雄的表数据          对应的神器         需要的英雄数量    索引
    public void ShowInfo(HeroTemplate heroData, Artifact artifact, int heroNumber, int index)
    {
        _heroData = heroData;
        _artifact = artifact;
        tableID   = heroData.getId();

        // 星级
        int quality = heroData.getQuality();

        for (int i = 5; i < quality + 5; i++)
        {
            _star.transform.GetChild(i).gameObject.SetActive(true);
        }

        // icon
        ArtresourceTemplate artresourcedata = (ArtresourceTemplate)DataTemplate.GetInstance().m_ArtresourceTable.getTableData(heroData.getArtresources());
        Sprite _img = UIResourceMgr.LoadSprite(common.defaultPath + artresourcedata.getHeadiconresource());

        _icon.sprite = _img;        //图片
        _icon.SetNativeSize();

        // 名称
        _name.text = GameUtils.getString(heroData.getTitleID());

        ShowCount(index, heroNumber);
    }
Пример #22
0
        /// <summary>
        ///  返回英雄资质Sprite
        /// </summary>
        /// <param name="heroT"></param>
        /// <returns></returns>
        public Sprite GetHeroAptImg(HeroTemplate heroT)
        {
            switch (heroT.getBorn())
            {
            case 1:
                return(UIResourceMgr.LoadSprite(common.defaultPath + "icon_YXQH_0003"));

            case 2:
                return(UIResourceMgr.LoadSprite(common.defaultPath + "icon_YXQH_0002"));

            case 3:
                return(UIResourceMgr.LoadSprite(common.defaultPath + "icon_YXQH_0001"));

            case 4:
                return(UIResourceMgr.LoadSprite(common.defaultPath + "icon_YXQH_0000"));

//                 case 5:
//                     return UIResourceMgr.LoadSprite(common.defaultPath + "");
//                 case 6:
//                     return UIResourceMgr.LoadSprite(common.defaultPath + "");
            default:
                LogManager.Log("坑");
                return(UIResourceMgr.LoadSprite(common.defaultPath + ""));
            }
        }
Пример #23
0
    public override void ShowHeroInfo(ObjectCard objectCard)
    {
        m_HeroData  = objectCard.GetHeroData();
        m_HeroDataT = objectCard.GetHeroRow();

        m_CurTData  = GameUtils.GetCurAdvancedData(m_HeroDataT.getBorn(), m_HeroDataT.getQosition(), m_HeroData.StarLevel, m_HeroData.CurStage);
        m_NextTData = GameUtils.GetHeroNextAdvancedData(objectCard);

        YesAdvancedEffect.gameObject.SetActive(false);

        if (m_HeroData.StarLevel == m_NextTData.getQuality() && m_HeroData.CurStage == m_NextTData.getHalosPn())
        {
            m_MaxLevelWindow.SetActive(true);
            m_NoMaxLevelWindow.SetActive(false);
        }
        else
        {
            m_MaxLevelWindow.SetActive(false);
            m_NoMaxLevelWindow.SetActive(true);

            InitShowStarAndStage();
            GreatAttributeItem();
            GreatArticleItem();
        }

        RefreshLevelNoEnoughtTip();
    }
Пример #24
0
        private void IndexSkillmodel(HeroTemplate hero)
        {
            if (!SceneManager.Inst.NextloadScene.ToString().Contains("Battle"))
            {
                return;
            }
            SkillTemplate normalskill = (SkillTemplate)DataTemplate.GetInstance().m_SkillTable.getTableData(hero.getNormalskill());

            for (int i = 0; i < normalskill.getBallIsticEffID().Length; i++)
            {
                PushNeedDownBundle(normalskill.getBallIsticEffID()[i] + _strRes);
            }
            PushNeedDownBundle(normalskill.getUnderAttackEffID() + _strRes);
            SkillTemplate m_skill1 = (SkillTemplate)DataTemplate.GetInstance().m_SkillTable.getTableData(hero.getSkill1ID());

            for (int i = 0; i < m_skill1.getBallIsticEffID().Length; i++)
            {
                PushNeedDownBundle(m_skill1.getBallIsticEffID()[i] + _strRes);
            }
            PushNeedDownBundle(m_skill1.getUnderAttackEffID() + _strRes);
            SkillTemplate m_skill2 = (SkillTemplate)DataTemplate.GetInstance().m_SkillTable.getTableData(hero.getSkill2ID());

            for (int i = 0; i < m_skill2.getBallIsticEffID().Length; i++)
            {
                PushNeedDownBundle(m_skill2.getBallIsticEffID()[i] + _strRes);
            }
            PushNeedDownBundle(m_skill2.getUnderAttackEffID() + _strRes);
            // 被动技能暂未开放 [5/14/2015 Zmy]
            //             SkillTemplate m_skill3 = (SkillTemplate)DataTemplate.GetInstance().m_SkillTable.m_Data[hero.getSkill3ID()];
            //             for (int i = 0; i < m_skill3.getBallIsticEffID().Length; i++)
            //             {
            //                 PushNeedDownBundle(m_skill3.getBallIsticEffID()[i] + _strRes);
            //             }
            //             PushNeedDownBundle(m_skill3.getUnderAttackEffID() + _strRes);
        }
Пример #25
0
        private void IndexModel(HeroTemplate hero, bool isHero = false)
        {
            ArtresourceTemplate _Artresourcedata = new ArtresourceTemplate();

            _Artresourcedata = (ArtresourceTemplate)DataTemplate.GetInstance().m_ArtresourceTable.getTableData(hero.getArtresources());
            PushNeedDownBundle(_Artresourcedata.getArtresources() + _strRes, isHero);
            ArtresourceTemplate[] _SkinArtresourcedata = new ArtresourceTemplate[hero.getUseableArtresource().Length];
            for (int i = 0; i < hero.getUseableArtresource().Length; ++i)
            {
                _SkinArtresourcedata[i] = (ArtresourceTemplate)DataTemplate.GetInstance().m_ArtresourceTable.getTableData(hero.getUseableArtresource()[i]);
                if (_SkinArtresourcedata[i].getArtresources() == null)
                {
                    continue;
                }
                PushNeedDownBundle(_SkinArtresourcedata[i].getArtresources() + _strRes, isHero);
            }
            if (!SceneManager.Inst.NextloadScene.ToString().Contains("Battle"))
            {
                return;
            }
            string[] ActArtresourceData = _Artresourcedata.getActionresource();
            for (int i = 0; i < ActArtresourceData.Length; ++i)
            {
                PushNeedDownBundle(ActArtresourceData[i] + _strRes);
            }
        }
Пример #26
0
    /// <summary>
    /// 根据id展示不同的物品展示界面;
    /// </summary>
    /// <param name="tableID"></param>
    public static bool ShowItemPreviewUIHandler(int tableID)
    {
        EM_OBJECT_CLASS eoc = GameUtils.GetObjectClassById(tableID);

        switch (eoc)
        {
        case EM_OBJECT_CLASS.EM_OBJECT_CLASS_RUNE:
            ItemTemplate runeItemT = DataTemplate.GetInstance().GetItemTemplateById(tableID);
            if (runeItemT == null)
            {
                LogManager.LogError("item表格中缺少物品id=" + tableID);
                return(false);
            }
            UI_RuneInfo.SetShowRuneDate(runeItemT);
            UI_HomeControler.Inst.AddUI(UI_RuneInfo.UI_ResPath);
            return(true);

        case EM_OBJECT_CLASS.EM_OBJECT_CLASS_COMMON:
            ItemTemplate itemT = DataTemplate.GetInstance().GetItemTemplateById(tableID);
            if (itemT == null)
            {
                LogManager.LogError("item表格中缺少物品id=" + tableID);
                return(false);
            }
            UI_Item.SetItemTemplate(itemT);
            UI_HomeControler.Inst.AddUI(UI_Item.UI_ResPath);
            return(true);

        case EM_OBJECT_CLASS.EM_OBJECT_CLASS_SKIN:
            ArtresourceTemplate artT = DataTemplate.GetInstance().GetArtResourceTemplate(tableID);
            if (artT == null)
            {
                LogManager.LogError("ArtResource时装表格中缺少物品id=" + tableID);
                return(false);
            }
            UI_SkinPreviewMgr.SetShowArtTemplate(artT);
            UI_HomeControler.Inst.AddUI(UI_SkinPreviewMgr.UI_ResPath);
            return(true);

        case EM_OBJECT_CLASS.EM_OBJECT_CLASS_HERO:
            HeroTemplate heroT = DataTemplate.GetInstance().GetHeroTemplateById(tableID);
            if (heroT == null)
            {
                LogManager.LogError("hero表格中缺少物品id=" + tableID);
                return(false);
            }
            UI_HomeControler.Inst.AddUI(HeroInfoPop.UI_ResPath);
            HeroInfoPop.inst.SetShowData(heroT);
            return(true);

        case EM_OBJECT_CLASS.EM_OBJECT_CLASS_RES:
            //资源类型点击无响应;
            return(true);

        default:
            LogManager.LogError("未处理的商城物品预览类型");
            return(false);
        }
    }
Пример #27
0
        public Hero(byte ownerIndex, HeroTemplate heroTemplate)
        {
            Health = heroTemplate.MaxHealth;
            Armour = heroTemplate.StartingArmour;

            template   = heroTemplate;
            OwnerIndex = ownerIndex;
        }
Пример #28
0
    private void GreatItem(MailItemData mailItem, int isReceive)
    {
        m_Cell = UniversalItemCell.GenerateItem(EmailFuJianList.transform);

        int type   = mailItem.m_objectid / 1000000;
        int itemid = mailItem.m_objectid;//掉落物ID

        m_Cell.SetCheckClaim(isReceive == 1, "");

        switch (type)
        {
        case (int)EM_OBJECT_CLASS.EM_OBJECT_CLASS_RES:
            ResourceindexTemplate _temp_res = (ResourceindexTemplate)DataTemplate.GetInstance().m_ResourceindexTemplate.getTableData(itemid);
            if (_temp_res != null)
            {
                m_Cell.InitByID(itemid, mailItem.m_dropnum);
                m_Cell.SetText(GameUtils.getString(_temp_res.getName()), "", "");
            }
            break;

        case (int)EM_OBJECT_CLASS.EM_OBJECT_CLASS_RUNE:     //符文
        {
            ItemTemplate itemTable = (ItemTemplate)DataTemplate.GetInstance().m_ItemTable.getTableData(itemid);
            if (itemTable != null)
            {
                m_Cell.InitByID(itemid, -1);
                m_Cell.SetText(GameUtils.getString(itemTable.getName()), "", "");
            }
        }
        break;

        case (int)EM_OBJECT_CLASS.EM_OBJECT_CLASS_COMMON:
        {
            ItemTemplate itemTable = (ItemTemplate)DataTemplate.GetInstance().m_ItemTable.getTableData(itemid);
            if (itemTable != null)
            {
                m_Cell.InitByID(itemid, mailItem.m_dropnum);
                m_Cell.SetText(GameUtils.getString(itemTable.getName()), "", "");
            }
        }
        break;

        case (int)EM_OBJECT_CLASS.EM_OBJECT_CLASS_HERO:
        {
            HeroTemplate hero = (HeroTemplate)DataTemplate.GetInstance().m_HeroTable.getTableData(itemid);
            if (hero != null)
            {
                m_Cell.InitByID(itemid, mailItem.m_dropnum);
                m_Cell.SetText(GameUtils.getString(hero.getTitleID()), "", "");
            }
        }
        break;

        default:
            break;
        }
    }
Пример #29
0
 /// <summary>
 /// 初始化数据
 /// </summary>
 private void InitData()
 {
     if (PopupQueue.Count > 0)
     {
         m_id         = PopupQueue.Dequeue();
         m_HeroData   = (HeroTemplate)DataTemplate.GetInstance().m_HeroTable.getTableData(m_id);
         m_ArtResData = (ArtresourceTemplate)DataTemplate.GetInstance().m_ArtresourceTable.getTableData(m_HeroData.getArtresources());
     }
 }
Пример #30
0
    public static string GetAwardSpriteName(int AwardId)
    {
        string _result = null;

        EM_OBJECT_CLASS _awardClass = GameUtils.GetObjectClassById(AwardId);

        switch (_awardClass)
        {
        case EM_OBJECT_CLASS.EM_OBJECT_CLASS_RES:
            ResourceindexTemplate _resTable = DataTemplate.GetInstance().m_ResourceindexTemplate.getTableData(AwardId) as ResourceindexTemplate;
            if (_resTable != null)
            {
                _result = _resTable.getIcon3();
            }
            break;

        case EM_OBJECT_CLASS.EM_OBJECT_CLASS_RUNE:
            ItemTemplate _itemTable = DataTemplate.GetInstance().m_ItemTable.getTableData(AwardId) as ItemTemplate;
            if (_itemTable != null)
            {
                _result = _itemTable.getIcon_s();
            }
            break;

        case EM_OBJECT_CLASS.EM_OBJECT_CLASS_COMMON:
            ItemTemplate _runeTable = DataTemplate.GetInstance().m_ItemTable.getTableData(AwardId) as ItemTemplate;
            if (_runeTable != null)
            {
                _result = _runeTable.getIcon_s();
            }
            break;

        case EM_OBJECT_CLASS.EM_OBJECT_CLASS_HERO:
            HeroTemplate _heroTable = DataTemplate.GetInstance().m_HeroTable.getTableData(AwardId) as HeroTemplate;

            if (_heroTable != null)
            {
                ArtresourceTemplate _atrResTable = DataTemplate.GetInstance().m_ArtresourceTable.getTableData(_heroTable.getArtresources()) as ArtresourceTemplate;
                _result = _atrResTable.getHeadiconresource();
            }
            break;

        case EM_OBJECT_CLASS.EM_OBJECT_CLASS_SKIN:
            ArtresourceTemplate _atrResTable1 = DataTemplate.GetInstance().m_ArtresourceTable.getTableData(AwardId) as ArtresourceTemplate;
            if (_atrResTable1 != null)
            {
                _result = _atrResTable1.getHeadiconresource();
            }
            break;

        default:
            break;
        }

        return(_result);
    }
Пример #31
0
    /// <summary>
    /// 检查某一项能力是否到达训练上限
    /// </summary>
    /// <param name="attributeId">对应第几项能力,ObjectCard.GetHeroData().GetTrainCount()[attributeId]</param>
    /// <param name="attributetrainID">返回当前当前32表id(能力升级相关)</param>
    /// <returns>返回是否已经到达训练上限</returns>
    private bool GetAttributeTrainId(ObjectCard hero, int attributeId, out int attributetrainID)
    {
        if (attributeId >= AttributeTrainArrayLength || hero == null)
        {
            attributetrainID = -1;
            return(true);
        }
        Func <int>   GetTrainSlotX;
        Func <int>   GetMaxTrainCount;
        HeroTemplate heroTemplate = hero.GetHeroRow();

        switch (attributeId)
        {
        case 0:
            GetTrainSlotX    = heroTemplate.getTrainSlot1;
            GetMaxTrainCount = heroTemplate.getTrainMaximum1;
            break;

        case 1:
            GetTrainSlotX    = heroTemplate.getTrainSlot2;
            GetMaxTrainCount = heroTemplate.getTrainMaximum2;
            break;

        case 2:
            GetTrainSlotX    = heroTemplate.getTrainSlot3;
            GetMaxTrainCount = heroTemplate.getTrainMaximum3;
            break;

        case 3:
            GetTrainSlotX    = heroTemplate.getTrainSlot4;
            GetMaxTrainCount = heroTemplate.getTrainMaximum4;
            break;

        default:
            GetTrainSlotX    = null;
            GetMaxTrainCount = null;
            break;
        }


        int _id = hero.GetHeroData().GetTrainCount()[attributeId];

        if (_id != 0)
        {
            attributetrainID = _id;
        }
        else
        {
            attributetrainID = GetTrainSlotX() * 1000 + 1;
        }

        AttributetrainTemplate _dataTemplate = (AttributetrainTemplate)m_AttributeTrainTable.getTableData(attributetrainID);
        int allAttributetrainID = GetTrainSlotX() * 1000 + GetMaxTrainCount() - 1;

        return(attributetrainID >= allAttributetrainID);
    }
Пример #32
0
 public void RefreshSkills(HeroTemplate heroTemplate)
 {
     var skillTmp = HeroModelLocator.Instance.SkillTemplates.HeroBattleSkillTmpls;
     HeroBattleSkillTemplate skillTemp;
     skillTmp.TryGetValue(heroTemplate.ActiveSkill, out skillTemp);
     var contains = skillTemp != null;
     ActiveName.text = contains ? skillTemp.Name : "-";
     ActiveDesc.text = contains ? skillTemp.Desc : "-";
     skillTmp.TryGetValue(heroTemplate.LeaderSkill, out skillTemp);
     contains = skillTemp != null;
     LeaderName.text = contains ? skillTemp.Name : "-";
     LeaderDesc.text = contains ? skillTemp.Desc : "-";
 }
Пример #33
0
    public void SetCharacter(CharacterType characterType = CharacterType.Hero)
    {
        var data = CharacterData.Data;
        var tempid = Int32.Parse(data.getProp(BattleKeyConstants.BATTLE_KEY_HERO_TEMPLATE));
        templateData = HeroModelLocator.Instance.GetHeroByTemplateId(tempid);

        JobIndex = templateData.Job;
        var uisp = JobSprite.GetComponent<UISprite>();
        uisp.spriteName = (FootIndex == (int)FootColorType.Pink) ? "job_0" : "job_" + JobIndex;

        var isFriend = (characterType != CharacterType.Hero);
        FriendLabel.gameObject.SetActive(isFriend);
        if (isFriend)
        {
            FriendLabel.text = characterType.ToString();
        }
    }
Пример #34
0
    public void Refresh(HeroTemplate heroTemplate)
    {
        if (heroTemplate == null)
        {
            Logger.LogWarning("You are refreshing hero info with null, Please check it.");
            return;
        }

        for (var index = Stars.childCount - 1; index >= Stars.childCount - heroTemplate.Star; index--)
        {
            NGUITools.SetActive(Stars.GetChild(index).gameObject, true);
        }
        for (var index = 0; index < Stars.childCount - heroTemplate.Star; index++)
        {
            NGUITools.SetActive(Stars.GetChild(index).gameObject, false);
        }
        HeroNameLabel.text = heroTemplate.Name;
        Despawn();
        Spawn(heroTemplate.Icon - 1);
    }
Пример #35
0
    // Use this for initialization
    void Start()
    {
        coco = new HeroTemplate();
        HeroCfg cocoCfg = new HeroCfg();
        cocoCfg.name = "CoCo";
        cocoCfg.heroType = HeroType.Strength;
        cocoCfg.baseStrength = 24.0f;
        cocoCfg.baseDexterity = 14.0f;
        cocoCfg.baseIntellect = 18.0f;
        cocoCfg.strengthGrowth = 3.0f;
        cocoCfg.dexterityGrowth = 1.3f;
        cocoCfg.intellectGrowth = 1.5f;
        cocoCfg.baseDamage = 26.0f;
        cocoCfg.baseArmor = 0;
        cocoCfg.BAT = 1.7f;
        cocoCfg.baseVitality = 150.0f;
        cocoCfg.baseMana = 18.0f;
        cocoCfg.damageInteval = 10;

        coco.Initialize(cocoCfg);

        magina = new HeroTemplate();
        HeroCfg maginaCfg = new HeroCfg();
        maginaCfg.name = "Magina";
        maginaCfg.heroType = HeroType.Dexterity;
        maginaCfg.baseStrength = 20.0f;
        maginaCfg.baseDexterity = 22.0f;
        maginaCfg.baseIntellect = 15.0f;
        maginaCfg.strengthGrowth = 1.2f;
        maginaCfg.dexterityGrowth = 2.8f;
        maginaCfg.intellectGrowth = 1.8f;
        maginaCfg.baseDamage = 27.0f;
        maginaCfg.baseArmor = -1.042857f;
        maginaCfg.BAT = 1.4f;
        maginaCfg.baseVitality = 150.0f;
        maginaCfg.baseMana = 15.0f;
        maginaCfg.damageInteval = 4;

        magina.Initialize(maginaCfg);
    }
Пример #36
0
 public void NormalAttat(HeroTemplate role)
 {
     if(role == null)
     {
         return;
     }
     float damage = BattleUtil.CalcDamage(m_damage, (float)damageInteval);
     #if UNITY_EDITOR
     Debug.Log(name + "对" + role.name + "造成了" + damage + "点伤害");
     #endif
     role.UnderAttact(damage);
 }