public bool CheckMaterialById(int id)
    {
        if (this.mTypeLevelDict == null || this.mGodList == null)
        {
            return(false);
        }
        GodWeaponInfo godWeaponInfo = this.mGodList.Find((GodWeaponInfo e) => e.Type == id);

        if (godWeaponInfo == null)
        {
            return(false);
        }
        if (!this.mTypeLevelDict.ContainsKey(godWeaponInfo.Type) || this.mTypeLevelDict.get_Item(godWeaponInfo.Type).get_Count() <= godWeaponInfo.gLevel)
        {
            return(false);
        }
        SShenBingPeiZhi sShenBingPeiZhi = DataReader <SShenBingPeiZhi> .Get(id);

        if (sShenBingPeiZhi == null)
        {
            return(false);
        }
        for (int i = 0; i < sShenBingPeiZhi.material.get_Count(); i++)
        {
            if (BackpackManager.Instance.OnGetGoodCount(sShenBingPeiZhi.material.get_Item(i)) > 0L)
            {
                return(true);
            }
        }
        return(false);
    }
    public long GetAllGodSoliderAttrValue()
    {
        long num = 0L;

        if (this.mGodList != null)
        {
            List <int> list  = new List <int>();
            List <int> list2 = new List <int>();
            for (int i = 0; i < this.mGodList.get_Count(); i++)
            {
                GodWeaponInfo godWeaponInfo = this.mGodList.get_Item(i);
                if (godWeaponInfo.isOpen && godWeaponInfo.gLevel > 0)
                {
                    Attrs attrs = DataReader <Attrs> .Get(this.mTypeLevelDict.get_Item(godWeaponInfo.Type).get_Item(godWeaponInfo.gLevel).attrID);

                    if (attrs != null)
                    {
                        for (int j = 0; j < attrs.attrs.get_Count(); j++)
                        {
                            list.Add(attrs.attrs.get_Item(j));
                            list2.Add(attrs.values.get_Item(j));
                        }
                    }
                }
            }
            num += EquipGlobal.CalculateFightingByIDAndValue(list, list2);
        }
        return(num);
    }
Beispiel #3
0
 private void RefreshLeft(GodWeaponInfo data)
 {
     if (data != null)
     {
         if (this.mLastSelectToggle != null && !this.mLastSelectToggle.Data.isOpen && data.isOpen)
         {
             this.UnLockingEffect();
             TimerHeap.AddTimer(500u, 0, delegate
             {
                 this.UnLockedEffect(data.Type);
                 this.BottomEffect(data.isOpen);
             });
         }
         else if (data.isOpen)
         {
             this.UnLockedEffect(data.Type);
             this.BottomEffect(data.isOpen);
         }
         else
         {
             this.LockedEffect(data.Type);
             this.BottomEffect(data.isOpen);
         }
     }
 }
Beispiel #4
0
 private void RefreshRight(GodWeaponInfo info, bool isSwitch = false)
 {
     if (info != null)
     {
         this.RefreshMaterial(info, isSwitch);
         this.RefreshDesc(info, isSwitch);
     }
 }
Beispiel #5
0
    private void RefreshMaterial(GodWeaponInfo info, bool isSwitch)
    {
        this.mSelectData = DataReader <SShenBingPeiZhi> .Get(this.mCurGodType);

        if (this.mSelectData != null)
        {
            if (isSwitch)
            {
                this.OnClickItem(null);
                this.ClearItem();
                int itemId;
                for (int i = 0; i < this.mSelectData.material.get_Count(); i++)
                {
                    itemId = this.mSelectData.material.get_Item(i);
                    long num = BackpackManager.Instance.OnGetGoodCount(itemId);
                    if (this.mLastSelectItem == null && num > 0L)
                    {
                        this.OnClickItem(this.CreateItem(itemId, num));
                    }
                    else
                    {
                        this.CreateItem(itemId, num);
                    }
                }
                if (this.mLastSelectItem == null)
                {
                    this.OnClickItem(this.mItemList.get_Item(0));
                }
            }
            else if (this.mLastSelectItem != null)
            {
                long num = BackpackManager.Instance.OnGetGoodCount(this.mLastSelectItem.ItemId);
                this.mLastSelectItem.Number = num.ToString();
                if (num <= 0L)
                {
                    int itemId;
                    for (int j = 0; j < this.mSelectData.material.get_Count(); j++)
                    {
                        itemId = this.mSelectData.material.get_Item(j);
                        if (BackpackManager.Instance.OnGetGoodCount(itemId) > 0L)
                        {
                            this.OnClickItem(this.mItemList.Find((GodSoldierItem e) => e.ItemId == itemId));
                            break;
                        }
                    }
                }
            }
        }
    }
Beispiel #6
0
    private void OnGodListPush(int type)
    {
        GodSoldierToggle godSoldierToggle = this.mToggleList.Find((GodSoldierToggle e) => e.Data.Type == type);

        if (godSoldierToggle != null)
        {
            GodWeaponInfo godWeaponInfo = GodSoldierManager.Instance.GodList.Find((GodWeaponInfo e) => e.Type == type);
            if (godWeaponInfo != null)
            {
                this.RefreshLeft(godWeaponInfo);
                this.RefreshRight(godWeaponInfo, false);
                godSoldierToggle.SetData(godWeaponInfo, string.Empty);
            }
        }
    }
Beispiel #7
0
    private void CreateToggle(GodWeaponInfo data)
    {
        SShenBingPeiZhi sShenBingPeiZhi = DataReader <SShenBingPeiZhi> .Get(data.Type);

        if (sShenBingPeiZhi != null)
        {
            GameObject instantiate2Prefab = ResourceManager.GetInstantiate2Prefab("GodSoldierToggle");
            UGUITools.SetParent(this.mToggleGrid, instantiate2Prefab, false);
            instantiate2Prefab.set_name(sShenBingPeiZhi.id.ToString());
            instantiate2Prefab.SetActive(true);
            GodSoldierToggle component = instantiate2Prefab.GetComponent <GodSoldierToggle>();
            component.SetData(data, GameDataUtils.GetChineseContent(sShenBingPeiZhi.name, false));
            component.EventHandler = new Action <GodSoldierToggle>(this.OnClickMenu);
            this.mToggleList.Add(component);
        }
    }
Beispiel #8
0
 public void SetData(GodWeaponInfo data, string title = "")
 {
     if (data != null)
     {
         this.mData = data;
         if (!string.IsNullOrEmpty(title))
         {
             this.mTxTitle.set_text(title);
         }
         this.mTxSelectTitle.set_text(this.mTxTitle.get_text());
         this.mGoLock.SetActive(!this.mData.isOpen);
         this.mTxLevel.get_gameObject().SetActive(this.mData.isOpen);
         this.mTxLevel.set_text("Lv" + this.mData.gLevel);
         this.HasPoint = GodSoldierManager.Instance.CheckMaterialById(this.mData.Type);
     }
 }
Beispiel #9
0
    private void RefreshDesc(GodWeaponInfo data, bool isSwitch)
    {
        if (GodSoldierManager.Instance.DengjiDict.ContainsKey(data.Type))
        {
            Dictionary <int, SShenBingDengJi> dictionary = GodSoldierManager.Instance.DengjiDict.get_Item(data.Type);
            SShenBingDengJi sShenBingDengJi  = null;
            SShenBingDengJi sShenBingDengJi2 = null;
            if (data.isOpen)
            {
                sShenBingDengJi = dictionary.get_Item(data.gLevel);
            }
            if (data.gLevel < dictionary.get_Count())
            {
                sShenBingDengJi2 = dictionary.get_Item(data.gLevel + 1);
            }
            if (sShenBingDengJi == null)
            {
                this.mTxExp.set_text(data.gExp + "/" + sShenBingDengJi2.EXP);
                this.mExpSlider.set_value((float)data.gExp / (float)sShenBingDengJi2.EXP);
                this.mBtnUpGrade.get_gameObject().SetActive(true);
                this.mGoMaxLevel.SetActive(false);
                this.mTxOpenTips.get_gameObject().SetActive(true);
                this.mTxOpenTips.set_text(this.mLastSelectToggle.Title + "解除封印后获得");
                this.mTxAttrTitle.set_text("解除封印");
                this.mTxUpGrade.set_text("解除封印");
            }
            else if (sShenBingDengJi2 == null)
            {
                this.mTxExp.set_text("MAX");
                this.mExpSlider.set_value(1f);
                this.mBtnUpGrade.get_gameObject().SetActive(false);
                this.mGoMaxLevel.SetActive(true);
                this.mTxOpenTips.get_gameObject().SetActive(true);
                this.mTxOpenTips.set_text("神兵已最大等级");
                this.mTxAttrTitle.set_text("最大等级");
            }
            else if (sShenBingDengJi != null && sShenBingDengJi2 != null)
            {
                this.mTxExp.set_text(data.gExp + "/" + sShenBingDengJi2.EXP);
                this.mExpSlider.set_value((float)data.gExp / (float)sShenBingDengJi2.EXP);
                this.mBtnUpGrade.get_gameObject().SetActive(true);
                this.mGoMaxLevel.SetActive(false);
                this.mTxOpenTips.get_gameObject().SetActive(false);
                this.mTxAttrTitle.set_text("升级属性");
                this.mTxUpGrade.set_text("神兵升级");
                this.UpGradeEffect(data.gLevel);
            }
            this.ClearAttr();
            if (sShenBingDengJi != null && sShenBingDengJi2 != null)
            {
                Attrs attrs = DataReader <Attrs> .Get(sShenBingDengJi.attrID);

                Attrs attrs2 = DataReader <Attrs> .Get(sShenBingDengJi2.attrID);

                if (attrs != null && attrs2 != null)
                {
                    for (int i = 0; i < attrs.attrs.get_Count(); i++)
                    {
                        this.CreateAttr(attrs.attrs.get_Item(i), attrs.values.get_Item(i), true, attrs2.values.get_Item(i));
                    }
                    this.RefreshPowerNumber(data.Type, attrs.attrs, attrs.values, isSwitch);
                }
            }
            else
            {
                Attrs attrs3 = null;
                if (sShenBingDengJi != null)
                {
                    attrs3 = DataReader <Attrs> .Get(sShenBingDengJi.attrID);
                }
                else if (sShenBingDengJi2 != null)
                {
                    attrs3 = DataReader <Attrs> .Get(sShenBingDengJi2.attrID);
                }
                if (attrs3 != null)
                {
                    for (int j = 0; j < attrs3.attrs.get_Count(); j++)
                    {
                        this.CreateAttr(attrs3.attrs.get_Item(j), attrs3.values.get_Item(j), false, 0);
                    }
                    this.RefreshPowerNumber(data.Type, attrs3.attrs, attrs3.values, isSwitch);
                }
            }
        }
    }