Ejemplo n.º 1
0
    public bool expectImprove_before(List <RTSingleStockItem> list, ImproveKind kind, RTSingleStockItem newStock)
    {
        bool flag   = false;
        int  figure = 0;

        for (int i = 0; i < list.Count; i++)
        {
            RTSingleStockItem stock = list[i];
            if (kind == ImproveKind.exp)
            {
                figure += SDDataManager.Instance.getFigureFromMaterial(stock.itemId) * stock.UsedNum;
            }
            else if (kind == ImproveKind.star)
            {
                figure += SDDataManager.Instance.getFigureFromMaterial(stock.itemId) * stock.UsedNum;
            }
        }
        if (kind == ImproveKind.exp)
        {
            flag = true;
        }
        else if (kind == ImproveKind.star)
        {
        }


        return(flag);
    }
Ejemplo n.º 2
0
 public bool addStockToSlot_Skill(RTSingleStockItem stock)
 {
     for (int i = 0; i < AllSlots.Length; i++)
     {
         SingleSlot slot = AllSlots[i];
         if (slot.isEmpty && !slot.isLocked)
         {
             slot.AddFromStock(stock);
             return(true);
         }
     }
     return(false);
 }
Ejemplo n.º 3
0
    public override void ConsumeToImprove(List <RTSingleStockItem> list)
    {
        base.ConsumeToImprove(list);

        ImproveKind kind     = currentImproveKind;
        int         hashcode = equipDetail.equipHashcode;

        for (int i = 0; i < list.Count; i++)
        {
            RTSingleStockItem stock = list[i];
        }

        equipDetail.initEquipDetailVision(hashcode);
    }
Ejemplo n.º 4
0
 public void AddFromStock(RTSingleStockItem stock)
 {
     if (stock.materialType == SDConstants.MaterialType.exp ||
         stock.materialType == SDConstants.MaterialType.star ||
         stock.materialType == SDConstants.MaterialType.skill)
     {
         if (stock.stockType == SDConstants.StockType.hero)
         {
             AddHeroInSlot(stock.hashcode);
         }
         else if (stock.stockType == SDConstants.StockType.material)
         {
             AddConsumableInSlot(stock.itemId);
         }
     }
 }
Ejemplo n.º 5
0
 public void chooseStock(RTSingleStockItem stock)
 {
     if (materialType == SDConstants.MaterialType.exp)
     {
         heroImproveController.addStockToSlot_Exp(stock);
         refreshStockConditions_heroImprove();
     }
     else if (materialType == SDConstants.MaterialType.star)
     {
         heroImproveController.addStockToSlot_Star(stock);
         refreshStockConditions_heroImprove();
     }
     else if (materialType == SDConstants.MaterialType.skill)
     {
         heroImproveController.addStockToSlot_Skill(stock);
         refreshStockConditions_heroImprove();
     }
 }
Ejemplo n.º 6
0
    public override void ConsumeToImprove(List <RTSingleStockItem> list)
    {
        base.ConsumeToImprove(list);
        string      id     = goddessDetail.Id;
        int         figure = 0;
        ImproveKind kind   = currentImproveKind;

        for (int i = 0; i < list.Count; i++)
        {
            RTSingleStockItem stock = list[i];
            if (kind == ImproveKind.exp)
            {
                if (SDDataManager.Instance.consumeConsumable(stock.itemId, out int leave, stock.UsedNum))
                {
                    figure += SDDataManager.Instance.getFigureFromMaterial(stock.itemId)
                              * stock.UsedNum;
                }
            }
            else if (kind == ImproveKind.star)
            {
                if (SDDataManager.Instance.consumeConsumable(stock.itemId, out int leave, stock.UsedNum))
                {
                    figure += SDDataManager.Instance.getFigureFromMaterial(stock.itemId)
                              * stock.UsedNum;
                }
            }
        }
        if (kind == ImproveKind.exp)
        {
            SDDataManager.Instance.addExpToGoddess(id, figure);
        }



        //
        goddessDetail.initgoddessDetailVision(SDDataManager.Instance.getGDEGoddessDataById(id));
    }
Ejemplo n.º 7
0
 public bool checkIfCanWork(RTSingleStockItem item)
 {
     return(true);
 }
Ejemplo n.º 8
0
    public void InitStocks_skill(string heroId)
    {
        ResetPage();
        materialType = SDConstants.MaterialType.skill;

        //可用的英雄
        List <GDEHeroData> allHs = SDDataManager.Instance.getHerosListOwned().FindAll
                                       (x =>
        {
            if (x.hashCode == heroImproveController.heroDetail.Hashcode)
            {
                return(false);
            }
            return(x.id == heroId);
        });

        allHs.Sort((x, y) =>
        {
            if (x.starNumUpgradeTimes != y.starNumUpgradeTimes)
            {
                return(x.starNumUpgradeTimes.CompareTo(y.starNumUpgradeTimes));
            }
            return(x.exp.CompareTo(y.exp));
        });
        for (int i = 0; i < allHs.Count; i++)
        {
            Transform s = Instantiate(SItem) as Transform;
            s.SetParent(scrollRect.content);
            s.localScale = Vector3.one;
            RTSingleStockItem _s = s.GetComponent <RTSingleStockItem>();
            _s.stockPage = this;
            _s.initStock(allHs[i], SDConstants.MaterialType.skill);
            items.Add(_s);
        }

        //可用的材料
        Job _job = SDDataManager.Instance.getHeroCareerById(heroId);
        List <GDEItemData> allIs = SDDataManager.Instance.getConsumablesOwned.FindAll
                                       (x =>
        {
            consumableItem item = SDDataManager.Instance.getConsumableItemById(x.id);
            if (item == null)
            {
                return(false);
            }
            Job J     = SDDataManager.Instance.consumableItemSkill_FixCareer(x.id);
            bool flag = J == _job || J == Job.End;
            return(item.MaterialType == SDConstants.MaterialType.skill && flag);
        });

        allIs.Sort((x, y) =>
        {
            consumableItem item_x = SDDataManager.Instance.getConsumableById(x.id);
            consumableItem item_y = SDDataManager.Instance.getConsumableById(y.id);
            return(item_x.LEVEL.CompareTo(item_y.LEVEL));
        });
        for (int i = 0; i < allIs.Count; i++)
        {
            Transform s = Instantiate(SItem) as Transform;
            s.SetParent(scrollRect.content);
            s.localScale = Vector3.one;
            RTSingleStockItem _s = s.GetComponent <RTSingleStockItem>();
            _s.stockPage = this;
            _s.initStock(allIs[i], SDConstants.MaterialType.skill);
            items.Add(_s);
        }
        //
        SR_ToStart();
    }
Ejemplo n.º 9
0
    public void InitStocks_Star(int oldLevel)
    {
        ResetPage();
        materialType = SDConstants.MaterialType.star;
        // 可用的英雄
        List <GDEHeroData> allHs = SDDataManager.Instance.getHerosListOwned().FindAll
                                       (x =>
        {
            if (x.hashCode == heroImproveController.heroDetail.Hashcode)
            {
                return(false);
            }
            HeroInfo info = SDDataManager.Instance.getHeroInfoById(x.id);
            if (info == null)
            {
                return(false);
            }
            int LEVEL = info.LEVEL + x.starNumUpgradeTimes;
            return(LEVEL == oldLevel);
        });

        allHs.Sort((x, y) =>
        {
            HeroInfo info_x = SDDataManager.Instance.getHeroInfoById(x.id);
            HeroInfo info_y = SDDataManager.Instance.getHeroInfoById(y.id);
            if (info_x.Rarity != info_y.Rarity)
            {
                return(info_x.Rarity.CompareTo(info_y.Rarity));
            }
            return(x.exp.CompareTo(y.exp));
        });
        for (int i = 0; i < allHs.Count; i++)
        {
            Transform s = Instantiate(SItem) as Transform;
            s.SetParent(scrollRect.content);
            s.localScale = Vector3.one;
            RTSingleStockItem _s = s.GetComponent <RTSingleStockItem>();
            _s.stockPage = this;
            _s.initStock(allHs[i], SDConstants.MaterialType.star);
            items.Add(_s);
        }

        // 可用的材料
        List <GDEItemData> allIs = SDDataManager.Instance.getConsumablesOwned.FindAll
                                       (x =>
        {
            consumableItem item = SDDataManager.Instance.getConsumableItemById(x.id);
            if (item == null)
            {
                return(false);
            }
            return(item.MaterialType == SDConstants.MaterialType.star);
        });

        allIs.Sort((x, y) =>
        {
            consumableItem item_x = SDDataManager.Instance.getConsumableById(x.id);
            consumableItem item_y = SDDataManager.Instance.getConsumableById(y.id);
            return(item_x.LEVEL.CompareTo(item_y.LEVEL));
        });
        for (int i = 0; i < allIs.Count; i++)
        {
            Transform s = Instantiate(SItem) as Transform;
            s.SetParent(scrollRect.content);
            s.localScale = Vector3.one;
            RTSingleStockItem _s = s.GetComponent <RTSingleStockItem>();
            _s.stockPage = this;
            _s.initStock(allIs[i], SDConstants.MaterialType.star);
            items.Add(_s);
        }
        //
        SR_ToStart();
    }