示例#1
0
    public static int CompareByQuality(ObjectCard oc1, ObjectCard oc2)
    {
        //按品质排;
        if (oc1.GetHeroRow().getQuality() > oc2.GetHeroRow().getQuality())
        {
            return(1);
        }
        else if (oc1.GetHeroRow().getQuality() < oc2.GetHeroRow().getQuality())
        {
            return(-1);
        }

        //品质相同按等级排序;
        if (oc1.GetHeroRow().getQuality() == oc2.GetHeroRow().getQuality())
        {
            if (oc1.GetHeroData().Level > oc2.GetHeroData().Level)
            {
                return(1);
            }

            if (oc1.GetHeroData().Level < oc2.GetHeroData().Level)
            {
                return(-1);
            }

            //等级相同按id排序;
            if (oc1.GetHeroData().Level == oc2.GetHeroData().Level)
            {
                return(oc1.GetHeroData().TableID - oc2.GetHeroData().TableID);
            }
        }

        return(0);
    }
示例#2
0
    //是否满足条件
    static bool IsEnough(ObjectCard oc, ExplorequestTemplate et)
    {
        int needHeroType = et.getNeedHeroType();

        bool result = false;

        switch (needHeroType)
        {
        case 1:
            bool lvEnough      = oc.GetHeroData().Level >= et.getNeedHeroLevel();
            bool campEnough    = new List <int>(et.getNeedHeroCamp()).Contains(oc.GetHeroRow().getCamp());
            bool qualityEnough = oc.GetHeroRow().getQuality() >= et.getNeedHeroStar();

            result = lvEnough && campEnough && qualityEnough;
            break;

        case 2:
            bool inIds1 = new List <int>(et.getNeedHeroID1()).Contains(oc.GetHeroData().TableID);
            bool inIds2 = new List <int>(et.getNeedHeroID2()).Contains(oc.GetHeroData().TableID);
            bool inIds3 = new List <int>(et.getNeedHeroID3()).Contains(oc.GetHeroData().TableID);
            bool inIds4 = new List <int>(et.getNeedHeroID4()).Contains(oc.GetHeroData().TableID);
            bool inIds5 = new List <int>(et.getNeedHeroID5()).Contains(oc.GetHeroData().TableID);

            result = inIds1 || inIds2 || inIds3 || inIds4 || inIds5;
            break;

        default:
            break;
        }

        return(result);
    }
示例#3
0
 void ShowHeroSkin(ObjectCard card)
 {
     m_CurCard = card;
     ClearSkinItem();
     CreateHeroSkin();
     UpdateSkin();
     ShowModel();
     m_NameText.text   = GameUtils.getString(m_CurCard.GetHeroRow().getNameID());
     m_NiNameText.text = GameUtils.getString(m_CurCard.GetHeroRow().getTitleID());
 }
        /// <summary>
        ///进阶前属性显示
        /// </summary>
        public void OldShow()
        {
            HeroTemplate _hero     = _Card.GetHeroRow();
            HeroData     _heroDate = _Card.GetHeroData();

            mLevelOld.text = _Card.GetHeroData().Level + "/" + _hero.getMaxLevel();
            mHpOld.text    = (_Card.GetBaseMaxHP() - _heroDate.TrainingMaxHP).ToString();
            int nPhysicalTraniningValue = 0;

            if (_hero.getClientSignType()[1] == 0)
            {
                nPhysicalTraniningValue = _heroDate.TrainingPhysicalAttack;
            }
            mPhysicsAttacksOld.text = (_Card.GetPhysicalBaseAttack() - nPhysicalTraniningValue).ToString();
            int nMagicTraniningValue = 0;

            if (_hero.getClientSignType()[1] == 1)
            {
                nMagicTraniningValue = _heroDate.TrainingMagicAttack;
            }
            mMagicAttacksOld.text   = (_Card.GetMagicBaseAttack() - nMagicTraniningValue).ToString();
            mPhysicsDefenseOld.text = (_Card.GetPhysicalBaseDefence() - _heroDate.TrainingPhysicalDefence).ToString();
            mMagicDefenseOld.text   = (_Card.GetMagicBaseDefence() - _heroDate.TrainingMagicDefence).ToString();
            mAccuracyOld.text       = _Card.GetBaseHit().ToString();
            mEvaOld.text            = _Card.GetBaseDodge().ToString();
            mCritOld.text           = _Card.GetBaseCritical().ToString();
            mTenacityOld.text       = _Card.GetBaseTenacity().ToString();
            mVelocityOld.text       = _Card.GetBaseSpeed().ToString();
            int m_HeroStar = _hero.getQuality();
            int maxStar    = _hero.getMaxQuality();

            //星级品质界面控制
            for (int i = 0; i < 5; i++)
            {
                mStarListOld[i].SetActive(i + 1 <= m_HeroStar);
                mStarBGListOld[i].SetActive(i + 1 <= maxStar);
            }
            //for (int i = 0; i < mStarListOld.Count; i++)
            //{
            //    if (i < _hero.getQuality())
            //    {
            //        mStarListOld[i].SetActive(true);
            //    }
            //    else
            //    {
            //        mStarListOld[i].SetActive(false);
            //    }
            //}
            mSkillMaxOld.text = _hero.getSkillMaxLevel().ToString();
        }
    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);
    }
示例#6
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);
            }
        }
示例#7
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;
            //}
        }
    }
示例#8
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();
    }
示例#9
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);
        }
    }
示例#10
0
 public override void ShowHeroInfo(ObjectCard _objectCard)
 {
     m_objectCard = _objectCard;
     m_HeroData   = _objectCard.GetHeroData();
     m_HeroDataT  = _objectCard.GetHeroRow();
     PopMysticWindow(m_MysticId, _objectCard);
 }
示例#11
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);
        }
    }
示例#12
0
    //刷新英雄卡牌
    public void UpdateHeroCardData(ObjectCard heroObject)
    {
        objHero   = heroObject;
        _HeroItem = heroObject.GetHeroRow();

        SetBaseInfo(heroObject.GetHeroData().Level);
    }
示例#13
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();
    }
示例#14
0
        //实例化Hero对象
        private void CallBack_InitHeroObject()
        {
            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 = null;

                if (ObjectSelf.GetInstance().LimitFightMgr.m_bStartEnter)
                {
                    pMemberGuiD = ObjectSelf.GetInstance().LimitFightMgr.m_HeroInfo[i];
                    if (ObjectSelf.GetInstance().LimitFightMgr.m_HeroHp[i] == 0)
                    {
                        //初始英雄时,如果血量记录是0 代表本次是继续开启的试炼。并且上次的英雄已死亡。那么本次不再实例化英雄 [6/19/2015 Zmy]
                        pMemberGuiD.CleanUp();
                    }
                }
                else
                {
                    pMemberGuiD = ObjectSelf.GetInstance().Teams.m_Matrix[nGroup, i]; //暂时默认上场第一组阵型的英雄[3/25/2015 Zmy]
                }
                if (!pMemberGuiD.IsValid())
                {
                    continue;
                }
                ObjectCard pHero = ObjectSelf.GetInstance().HeroContainerBag.FindHero(pMemberGuiD);
                if (pHero == null)
                {
                    continue;
                }
                ArtresourceTemplate _Artresourcedata = (ArtresourceTemplate)DataTemplate.GetInstance().m_ArtresourceTable.getTableData(pHero.GetHeroData().GetHeroViewID());
                if (_Artresourcedata == null)
                {
                    continue;
                }

                GameObject pHeroObject = AssetLoader.Inst.GetAssetRes(_Artresourcedata.getArtresources());
                if (pHeroObject != null)
                {
                    GameObject obj1 = Instantiate(pHeroObject, FightEditorContrler.GetInstantiate().GetFormationCenterPos(i), FightEditorContrler.GetInstantiate().GetFormationCenterAngle(i)) as GameObject;
                    GameUtils.SetLayerRecursively(obj1, FightEditorContrler.GetInstantiate().GetShadowCullMaskLayer());
                    float _zoom = _Artresourcedata.getArtresources_zoom();
                    obj1.transform.localScale = new UnityEngine.Vector3(_zoom, _zoom, _zoom);
                    SceneObjectManager.GetInstance().SceneObjectAddHero(obj1, pHero.GetHeroRow().getId(), pHero);
                    FightEditorContrler.GetInstantiate().InitFormationPos(pHero, i);
                }
            }
            FightEditorContrler.GetInstantiate().HeroPathInitSpeed();

            GameEventDispatcher.Inst.dispatchEvent(GameEventID.SE_StoryCameraEnd);

            //初始化完成后,切换状态 [1/20/2015 Zmy]
            SetFightState(FightState.prepareData);

            //初始入场怒气
            InitFightPower();
        }
        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;
        }
示例#16
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);
         }
     }
 }
示例#17
0
 //显示是否可以上场  按钮置灰
 private void InitIsKYUpFront()
 {
     GameUtils.SetImageGrayState(CardImage, false);
     if (UI_Form.GetInst().GetCurPos() == 1 && _Herodata.getClientSignType()[0] == 0)
     {
         GameUtils.SetImageGrayState(CardImage, true);
     }
     if (UI_Form.GetInst().GetGuid().GUID_value > 0)
     {
         if (UI_Form.GetInst().GetAttackPos() == 0 && _Herodata.getClientSignType()[0] == 1)
         {
             int count = UI_Form.GetInst().GetBackHeroGuids().Count;
             for (int i = 0; i < count; i++)
             {
                 if (UI_Form.GetInst().GetBackHeroGuids().Contains(HeroObject.GetGuid().GUID_value))
                 {
                     GameUtils.SetImageGrayState(CardImage, true);
                 }
             }
         }
     }
     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.IsValid())
         {
             ObjectCard card = ObjectSelf.GetInstance().HeroContainerBag.FindHero(pMemberGuiD);
             if (card == null)
             {
                 continue;
             }
             int mid = GameUtils.GetHeroIDNum(card.GetHeroRow().getId());
             if (UI_Form.GetInst().GetGuid() != null && UI_Form.GetInst().GetGuid().GUID_value != pMemberGuiD.GUID_value)
             {
                 if (mid == GameUtils.GetHeroIDNum(HeroObject.GetHeroRow().getId()) && pMemberGuiD.GUID_value != HeroObject.GetGuid().GUID_value)
                 {
                     GameUtils.SetImageGrayState(CardImage, true);
                 }
             }
         }
     }
 }
示例#18
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);
    }
示例#19
0
    /// <summary>
    /// 初始化英雄卡牌UI
    /// </summary>
    /// <param name="card"></param>
    public void InitHeroCardUI(ObjectCard card)
    {
        this.m_Card  = card;
        this.m_HeroT = card.GetHeroRow();

        m_HeroCellItem.UpdateHeroShow(card);
        ShowStaticText();
        ShowPower();
        ShowBtnState();
    }
示例#20
0
    public override void ShowHeroInfo(ObjectCard heroCard)
    {
        base.ShowHeroInfo(heroCard);

        m_Card  = heroCard;
        m_HeroT = heroCard.GetHeroRow();

        CreateSkillItem();
/*        ShowSkillPointTxt();*/
    }
示例#21
0
 /// <summary>
 /// 设置当前的英雄数据
 /// </summary>
 /// <param name="card">卡牌数据</param>
 /// <param name="pos">在队伍是前排还是后排</param>
 /// <param name="index">在队伍中的索引位置</param>
 public void SetSelectHeoData(ObjectCard card, int pos, int no)
 {
     this.m_Card      = card;
     this.m_SelectPos = pos;
     this.m_SelectNo  = no;
     if (card != null)
     {
         m_HeroT = card.GetHeroRow();
     }
 }
示例#22
0
    /// <summary>
    /// 创建时装Item
    /// </summary>
    void CreateHeroSkin()
    {
        goList.Clear();
        //当前的卡牌的所有时装
        int[] HeroSkinList = m_CurCard.GetHeroRow().getUseableArtresource();
        int   length       = HeroSkinList.Length;

        //2.遍历
        for (int i = 0; i < length; i++)
        {
            GameObject go = Instantiate(m_Prefab) as GameObject;
            //GameObject go = (GameObject)Instantiate(UIResourceMgr.LoadPrefab("UI/Prefabs/UI_Home/UI_HeroInfo/HeroSkinItem"));
            go.transform.parent     = m_Grid.transform;
            go.transform.localScale = Vector3.one;
            Vector3 goPos = go.transform.localPosition;
            goPos.z = 0;
            go.transform.localPosition = goPos;
            goList.Add(go);
        }
    }
示例#23
0
        private int SortHeroHandler(ObjectCard leftCard, ObjectCard rightCard)
        {
            bool _accordingToLv = HandSortType == 2;
            int  key            = GetHeroCardSortKey(rightCard, _accordingToLv) - GetHeroCardSortKey(leftCard, _accordingToLv);

            if (key == 0)
            {
                key = leftCard.GetHeroRow().getId() - rightCard.GetHeroRow().getId();
            }
            return(key);
        }
示例#24
0
    public void Show3DModel(ObjectCard _card)
    {
        ModelCear();
        //通过英雄数据表中的资源数据表ID得到资源表数据
        ArtresourceTemplate _Artresourcedata = new ArtresourceTemplate();

        _Artresourcedata = ( ArtresourceTemplate )DataTemplate.GetInstance().m_ArtresourceTable.getTableData(_card.GetHeroData().GetHeroViewID());
        //通过资源表获取到角色默认美术资源(名称)     通过该名称获取到动态加载数据返回一个对象
        AssetLoader.Inst.DynamicLoadHeroCardRes(_card.GetHeroRow().getId());
        StartCoroutine(InitShow3DModel(_Artresourcedata));
    }
示例#25
0
    private bool CheckSkillUpgrade(ObjectCard hero)
    {
        if (hero == null)
        {
            return(false);
        }

        bool         _result       = false;
        HeroTemplate _heroTemplate = hero.GetHeroRow();
        int          _heroQuality  = _heroTemplate.getQuality();

        SpellData[] SkillDataList = hero.GetHeroData().SpellDataList;
        for (int i = 0; i < SkillDataList.Length; i++)
        {
            if (SkillDataList[i].SpellID < 0)
            {
                continue;
            }

            bool                _canUpgrade = false;
            int[]               _upgradeCostArr;
            int[]               _upgradeCostNumArr;
            SkillTemplate       _skill       = m_SkillTable.getTableData(SkillDataList[i].SpellID) as SkillTemplate; //_SkillData.SpellID为技能ID
            SkillupcostTemplate _skillUpCost = m_SkillupcostTable.getTableData(_skill.getId()) as SkillupcostTemplate;

            _canUpgrade = _skillUpCost.getUpgradeSkillID() > 0 && _heroQuality >= _skillUpCost.getUpgradeStarCondition();

            _upgradeCostArr    = _skillUpCost.getUpgradeCostId();
            _upgradeCostNumArr = _skillUpCost.getUpgradeCostNum();

            if (_canUpgrade)
            {
                for (int j = 0; j < _upgradeCostArr.Length; j++)
                {
                    long _upgradeResource = 0;
//                    m_ObjectSelf.TryGetResourceCountById(_upgradeCostArr[j], ref _upgradeResource);
                    _upgradeResource = ReturnItemCount(_upgradeCostArr[j]);
                    _canUpgrade     &= _upgradeCostNumArr[j] <= _upgradeResource;
                    if (!_canUpgrade)
                    {
                        break;
                    }
                }
            }
            if (_canUpgrade)
            {
                _result = _canUpgrade;
                break;
            }
        }

        return(_result);
    }
示例#26
0
 void InitHeroSkinBtn()
 {
     if (CurCard.GetHeroRow().getUseableArtresource().Length == 1)
     {
         ReloadingBtn.GetComponent <Image>().color = Color.gray;
     }
     else
     {
         ReloadingBtn.GetComponent <Image>().color = Color.white;
     }
 }
示例#27
0
    // 更新英雄信息
    public void UpdateHeroInfo()
    {
        HeroTemplate heroItem = m_CurCard.GetHeroRow();

        // 英雄类型
        InterfaceControler.GetInst().ShowTypeIcon(m_CurCard.GetHeroRow(), m_HeroType.GetComponent <Image> (), m_ActName);

        m_ZhongZu.sprite = InterfaceControler.GetInst().GetHeroRaceTypeIcon(heroItem);
        m_Level.text     = m_CurCard.GetHeroData().Level.ToString();
        m_HeroName.text  = string.Format(GameUtils.GetHeroNameFontColor(m_CurCard.GetHeroData().QualityLev), GameUtils.getString(heroItem.getTitleID()));
        //名称显示
        //m_TypeName.text = string.Format(GameUtils.GetHeroNameFontColor(m_CurCard.GetHeroData().QualityLev), GameUtils.getString(heroItem.getNameID()));
        m_TypeName.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);
        }
    }
示例#28
0
    // 得到所有的英雄经验
    /// <summary>
    ///
    /// </summary>
    /// <param name="card"></param>
    /// <returns></returns>
    public int GetHeroAllExp(ObjectCard card)
    {
        foreach (var item in m_Heroupgradexp.getDataList())
        {
            HeroupgradexpTemplate temp = ( HeroupgradexpTemplate )item;
            if (temp.getBorn() == card.GetHeroRow().getBorn() && temp.getLevel() == card.GetHeroData().Level)
            {
                return(temp.getExp());
            }
        }

        return(-1);
    }
示例#29
0
        public void ShowInfo(ObjectCard objHero)
        {
            CurCard   = objHero;
            _HeroItem = CurCard.GetHeroRow();

            InitCardData();
            InitHeroTypes();
            InitSkillInfo();
            InitHeroDes();
            InitCardDetailedData();
            InitMatchHeroBtn();
            InitHeroMatthData();
            //GameEventDispatcher.Inst.dispatchEvent(GameEventID.U_HeroChangeTarget, CurCard);
            InitHeroSkinBtn();
        }
示例#30
0
    public override void ShowHeroInfo(ObjectCard heroCard)
    {
        base.ShowHeroInfo(heroCard);

        m_Card  = heroCard;
        m_HeroT = heroCard.GetHeroRow();

        bool isGetStageUpTarget = m_HeroT.getStageUpTargetID() != -1;

        m_QualityObj.SetActive(isGetStageUpTarget);
        m_MaxQualityOBJ.SetActive(!isGetStageUpTarget);
        if (isGetStageUpTarget)
        {
            ShowHeroIcon();
            ShowConsUI();
        }
    }