Exemple #1
0
 public void initDrop(GDEItemData drop)
 {
     itemId       = drop.id;
     itemHashcode = 0;
     if (fightForceText)
     {
         fightForceText.gameObject.SetActive(false);
     }
     if (upText)
     {
         upText.gameObject.SetActive(false);
     }
     SDConstants.ItemType it = SDDataManager.Instance.getItemTypeById(itemId);
     if (it == SDConstants.ItemType.Consumable)
     {
         if (downText)
         {
             downText.text = "" + drop.num;
         }
         consumableItem item = SDDataManager.Instance.getConsumableById(itemId);
         itemImg.sprite   = item.IconFromAtlas;
         itemBgImg.sprite = SDDataManager.Instance.baseBgSpriteByRarity(1);
         frameImg.sprite  = SDDataManager.Instance.baseFrameSpriteByRarity(1);
         if (starVision)
         {
             starVision.StarNum = item.LEVEL;
         }
     }
 }
Exemple #2
0
    public void AddHeroInSlot(int hashcode)
    {
        if (isLocked)
        {
            return;
        }
        GDEHeroData data = SDDataManager.Instance.GetHeroOwnedByHashcode(hashcode);

        if (data == null)
        {
            return;
        }
        HeroInfo info = SDDataManager.Instance.getHeroInfoById(data.id);

        if (info == null)
        {
            return;
        }
        //
        isEmpty          = false;
        Icon.sprite      = info.FaceIcon;
        bgIcon.sprite    = SDDataManager.Instance.baseBgSpriteByRarity(info.Rarity);
        frameIcon.sprite = SDDataManager.Instance.baseFrameSpriteByRarity(info.Rarity);
        //
        starVision?.gameObject.SetActive(true);
        starVision.StarNum = data.starNumUpgradeTimes + info.LEVEL;
        aboveText.text     = SDGameManager.T("Lv.") + SDDataManager.Instance.getLevelByExp(data.exp);
        belowText?.gameObject.SetActive(false);
        //
        ItemType  = SDConstants.ItemType.Hero;
        _id       = info.ID;
        _hashcode = data.hashCode;
    }
Exemple #3
0
    public void initGoddess(GDEgoddessData goddess)
    {
        type   = SDConstants.ItemType.Goddess;
        itemId = goddess.id;
        //RoGoddessData g = SDDataManager.Instance.getGoddessData(goddess);
        GoddessInfo g = SDDataManager.Instance.getGoddessInfoById(goddess.id);

        //itemHashcode = goddess.GetHashCode();
        upText.gameObject.SetActive(true);
        upText.text        = SDGameManager.T("Lv.") + SDDataManager.Instance.getLevelByExp(goddess.exp);
        starVision.StarNum = goddess.star;
        downText.text      = SDGameManager.T(g.name);
        //

        itemNum = goddess.volume;
        SelectTeamUnitPanel STUP = GetComponentInParent <SelectTeamUnitPanel>();

        if (STUP)
        {
            string          cid  = STUP.CurrentTeamId;
            GDEunitTeamData team = SDDataManager.Instance.getHeroTeamByTeamId(cid);
            if (team.goddess == itemId)
            {
                isSelected = true;
            }
            else
            {
                isSelected = false;
            }
        }
    }
Exemple #4
0
    public void initConsumable(GDEItemData M, bool showTaken = false)
    {
        itemId       = M.id;
        type         = SDConstants.ItemType.Consumable;
        itemHashcode = 0;
        consumableItem P = SDDataManager.Instance.getConsumableById(itemId);

        fightForceText?.gameObject.SetActive(false);
        itemUpLv = 0;
        upText?.gameObject.SetActive(true);
        upText.text = P.NAME;
        itemNum     = M.num;
        downText.gameObject.SetActive(true);
        downText.text = "" + M.num;
        slider?.gameObject.SetActive(false);

        int rarity = P.LEVEL;

        if (starVision != null)
        {
            starVision.StarNum = rarity;
        }
        itemImg.sprite   = P.IconFromAtlas;
        itemBgImg.sprite = SDDataManager.Instance.baseBgSpriteByRarity(1);
        frameImg.sprite  = SDDataManager.Instance.baseFrameSpriteByRarity(1);

        if (showTaken)
        {
            isSelected = SDDataManager.Instance.checkIfPropIsTaken(itemId);
        }
    }
Exemple #5
0
 public override void initData(string id, string name, string desc, int level
                               , bool stackable, bool discardable, bool useable, bool sellable, bool inexhaustible
                               , string specialStr
                               , SDConstants.ItemType itemtype = SDConstants.ItemType.Equip)
 {
     base.initData(id, name, desc, level, stackable, discardable, useable, sellable
                   , inexhaustible, specialStr, itemtype);
 }
Exemple #6
0
    public void initInjuriedHero(GDEHeroData hero)
    {
        type         = SDConstants.ItemType.Hero;
        itemId       = hero.id;
        itemHashcode = hero.hashCode;
        //
        float fatigueRate = SDDataManager.Instance.getHeroFatigueRate(hero.hashCode);
        int   status      = SDDataManager.Instance.getHeroStatus(hero.hashCode);

        Debug.Log("该英雄疲劳值:" + hero.Fatigue);
        //
        ROHeroData dal = SDDataManager.Instance.getHeroDataByID(itemId, hero.starNumUpgradeTimes);

        upText.gameObject.SetActive(true);
        upText.text = "Lv." + SDDataManager.Instance.getLevelByExp(hero.exp);
        if (downText)
        {
            downText.text = SDGameManager.T(dal.Info.Name);
        }
        if (slider)
        {
            slider.gameObject.SetActive(true);
        }
        //
        if (status == 2)
        {
            isSelected = false;
            isUnable   = false;
        }//受伤且未进行治疗状态
        else if (status == 3)
        {
            isSelected = false;
            isUnable   = true;
        }//已经在治疗状态
        else if (status == 0)
        {
            isSelected = false;
            if (fatigueRate > 0.1f)
            {
                isUnable = false;
            }
            else
            {
                isUnable = true;
            }
        }//无事可做状态
        else
        {
            isSelected = false;
            isUnable   = true;
        }
        //starVision.StarNum = dal.starNum;
        starVision.gameObject.SetActive(false);
        slider.GetChild(0).localScale
            = new Vector3(1 - fatigueRate, 1, 1);
    }
Exemple #7
0
    /// <summary>
    /// 初始化英雄出战选人页
    /// </summary>
    /// <param name="hero"></param>
    public void initBattleHero(GDEHeroData hero)
    {
        type         = SDConstants.ItemType.Hero;
        itemId       = hero.id;
        itemHashcode = hero.hashCode;
        //

        //
        ROHeroData dal = SDDataManager.Instance.getHeroDataByID(itemId, hero.starNumUpgradeTimes);

        //if (frameImg != null) frameImg.gameObject.SetActive(false);

        upText.gameObject.SetActive(true);
        upText.text   = SDGameManager.T("Lv.") + SDDataManager.Instance.getLevelByExp(hero.exp);
        downText.text = SDGameManager.T(dal.Info.Name);
        slider?.gameObject.SetActive(false);
        //
        int status = SDDataManager.Instance.getHeroStatus(hero.hashCode);

        if (status == 0)
        {
            isSelected = false;
            isUnable   = false;
        }//无业
        else if (status == 1)
        {
            isSelected = true;
            isUnable   = false;
        }//战斗队伍中
        else
        {
            isSelected = false;
            isUnable   = true;
        }//其他状态
        //statusImg.gameObject.SetActive(true);
        //statusImg.sprite = herostat
        starVision.StarNum = dal.starNum;

        if (careerImg)
        {
            Sprite career = dal.Info.Career.Icon;
            careerImg.sprite = career;
        }
        if (raceImg)
        {
            Sprite race = dal.Info.Race.Icon;
            if (dal.Info.Race.NAME == "无种族")
            {
                HeroRace _r = dal.Info.Race;
                race = _r.Icon;
            }
            raceImg.sprite = race;
        }
        itemBgImg.sprite = SDDataManager.Instance.heroBgSpriteByRarity(dal.Info.Rarity);
        frameImg.sprite  = SDDataManager.Instance.heroFrameSpriteByRarity(dal.Info.Rarity);
    }
Exemple #8
0
 public virtual void initData(string id, string name, string desc, int level
                              , bool stackable, bool discardable
                              , bool useable, bool sellable, bool inexhaustible, string specialStr
                              , SDConstants.ItemType itemtype)
 {
     this.ID            = id; this.NAME = name; this.DESC = desc; this.ItemType = itemtype; this.LEVEL = level;
     this.stackAble     = stackable; this.discardAble = discardable; this.useable = useable; this.sellAble = sellable;
     this.SpecialStr    = specialStr;
     this.inexhaustible = inexhaustible;
 }
Exemple #9
0
 public void ClearSlot()
 {
     if (isLocked)
     {
         return;
     }
     isEmpty   = true;
     _id       = string.Empty;
     _hashcode = 0;
     ItemType  = SDConstants.ItemType.End;
 }
 /// <summary>
 /// 构建战利品列表
 /// </summary>
 /// <param name="type"></param>
 public void DropItemsInit(SDConstants.ItemType type)
 {
     Debug.Log("获取当前所有战利品信息");
     itemCount   = 0;
     CurrentType = type;
     if (CurrentType == SDConstants.ItemType.End)//显示全部
     {
     }
     else
     {
     }
 }
    public void showEmptyItem(SDConstants.ItemType Type)
    {
        Transform s = Instantiate(SItem) as Transform;

        s.transform.SetParent(scrollRect.content);
        s.transform.localScale = Vector3.one;
        s.gameObject.SetActive(true);
        SingleItem _s = s.GetComponent <SingleItem>();

        _s.sourceController = this;
        _s.index            = -1;
        _s.isEmpty          = true;
    }
Exemple #12
0
    public void initPurchase(GDEItemData Purchase, bool useDamond = false)
    {
        itemId       = Purchase.id;
        itemNum      = Purchase.num;
        extraTrigger = useDamond;
        SDConstants.ItemType item_type = SDDataManager.Instance.getItemTypeById(itemId);
        type = item_type;
        int bpg = 0;

        if (type == SDConstants.ItemType.Consumable)
        {
            consumableItem data = SDDataManager.Instance.getConsumableById(itemId);
            if (upText)
            {
                upText.text = SDGameManager.T(data.name);
            }
            //
            itemImg.sprite   = data.IconFromAtlas;
            itemBgImg.sprite = SDDataManager.Instance.baseBgSpriteByRarity(data.LEVEL);
            frameImg.sprite  = SDDataManager.Instance.baseFrameSpriteByRarity(data.LEVEL);
            //
            string downT = "";
            if (!useDamond)
            {
                bpg   = data.buyPrice_coin * Purchase.num;
                downT = SDGameManager.T("金币") + " - " + bpg;
            }
            else
            {
                bpg   = data.buyPrice_diamond * Purchase.num;
                downT = SDGameManager.T("钻石") + " - " + bpg;
            }
            if (downText)
            {
                downText.text = downT;
            }
        }


        if (SDDataManager.Instance.PlayerData.damond < bpg)
        {
            downText.transform.parent.GetComponent <Button>().interactable = false;
        }
        else
        {
            downText.transform.parent.GetComponent <Button>().interactable = true;
        }
    }
Exemple #13
0
    public void showCurrentItemDetail(string id, int num)
    {
        CDP.id = id;
        consumableItem item = SDDataManager.Instance.getConsumableById(id);

        currentItemType = item.ItemType;
        if (currentItemType == SDConstants.ItemType.Consumable)
        {
            ResolveBtn.gameObject.SetActive(!item.isProp);
        }
        CDP.initDetailPanel(id);

        //
        if (item.MaterialType == SDConstants.MaterialType.equip_reap)
        {
            CDP.SelectedNumSlider.gameObject.SetActive(true);
            ResolveBtn.gameObject.SetActive(true);
            //
            ResolveBtn.GetComponentInChildren <Text>().text
                = SDGameManager.T("解锁");
        }
        else if (item.MaterialType == SDConstants.MaterialType.treasure ||
                 item.MaterialType == SDConstants.MaterialType.key ||
                 item.MaterialType == SDConstants.MaterialType.goddess_piece ||
                 item.MaterialType == SDConstants.MaterialType.end)
        {
            CDP.SelectedNumSlider.gameObject.SetActive(false);
            ResolveBtn.gameObject.SetActive(false);
        }
        else
        {
            CDP.SelectedNumSlider.gameObject.SetActive(true);
            ResolveBtn.gameObject.SetActive(true);
            //
            ResolveBtn.GetComponentInChildren <Text>().text
                = SDGameManager.T("出售");
        }
    }
 public void storeFinalDrops()
 {
     for (int i = 0; i < allDropsGet.Count; i++)
     {
         string id  = allDropsGet[i].id;
         int    num = allDropsGet[i].num;
         SDConstants.ItemType it = SDDataManager.Instance.getItemTypeById(id);
         if (it == SDConstants.ItemType.Consumable)
         {
             SDDataManager.Instance.addConsumable(id, num);
         }
         else if (it == SDConstants.ItemType.Equip)
         {
             for (int e = 0; e < num; e++)
             {
                 SDDataManager.Instance.addEquip(id);
             }
         }
         else if (it == SDConstants.ItemType.Hero)
         {
             for (int e = 0; e < num; e++)
             {
                 SDDataManager.Instance.addHero(id);
             }
         }
         else if (it == SDConstants.ItemType.Badge)
         {
         }
         else if (it == SDConstants.ItemType.Rune)
         {
             for (int e = 0; e < num; e++)
             {
                 SDDataManager.Instance.AddRune(id);
             }
         }
     }
 }
Exemple #15
0
    public void AddConsumableInSlot(string id)
    {
        if (isLocked)
        {
            return;
        }
        GDEItemData data = SDDataManager.Instance.getConsumeableDataById(id);

        if (data == null)
        {
            return;
        }
        if (data.num <= 0)
        {
            return;
        }
        consumableItem info = SDDataManager.Instance.getConsumableItemById(id);

        if (info == null)
        {
            return;
        }
        //
        isEmpty          = false;
        Icon.sprite      = info.IconFromAtlas;
        bgIcon.sprite    = SDDataManager.Instance.baseBgSpriteByRarity(info.LEVEL);
        frameIcon.sprite = SDDataManager.Instance.baseFrameSpriteByRarity(info.LEVEL);
        //
        starVision?.gameObject.SetActive(false);
        aboveText?.gameObject.SetActive(false);
        belowText.gameObject.SetActive(false);
        //
        ItemType  = SDConstants.ItemType.Consumable;
        _id       = id;
        _hashcode = 0;
    }
 /// <summary>
 /// 构建角色房当前拥有物件
 /// </summary>
 /// <param name="type"></param>
 /// <param name="ePos"></param>
 public void ItemsInit(SDConstants.ItemType type)
 {
     Debug.Log("不同类型列表会进行刷新");
     itemCount   = 0;
     pageIndex   = 0;
     CurrentType = type;
     if (type == SDConstants.ItemType.Hero)
     {
         SDConstants.HeroSelectType st = SDGameManager.Instance.heroSelectType;
         if (st == SDConstants.HeroSelectType.All)
         {
             ShowHeroesOwned();
         }
         else if (st == SDConstants.HeroSelectType.Battle)
         {
             ShowHeroesOwnedToBattle();
         }
         else if (st == SDConstants.HeroSelectType.Mission)
         {
         }
         else if (st == SDConstants.HeroSelectType.Recruit)
         {
         }
         else if (st == SDConstants.HeroSelectType.Wake)
         {
         }
         else if (st == SDConstants.HeroSelectType.Dying)
         {
             ShowHeroesownedNeedHospital();
         }
     }
     else if (type == SDConstants.ItemType.Equip)
     {
         if (EquipPos != EquipPosition.End)
         {
             showOnePosEquipsOwned(EquipPos);
         }
         else
         {
             showAllEquipsOwned();
         }
     }
     else if (type == SDConstants.ItemType.Consumable)
     {
         if (ConsumableType == SDConstants.ConsumableType.material)
         {
             showMaterialOwned();
         }
         else if (ConsumableType == SDConstants.ConsumableType.prop)
         {
             showPropsOwned(true);
         }
         else
         {
             showConsumableOwned(true);
         }
     }
     else if (type == SDConstants.ItemType.Goddess)
     {
     }
     else if (type == SDConstants.ItemType.Badge)
     {
     }
     else if (type == SDConstants.ItemType.Enemy)
     {
         showEnemyInIllustrate();
     }
     else if (type == SDConstants.ItemType.Quest)
     {
     }
     else if (type == SDConstants.ItemType.Rune)
     {
         showRuneOwned();
     }
     else if (type == SDConstants.ItemType.NPC)
     {
         showNPCOwned();
     }
     //
     foreach (SingleItem s in items)
     {
         s.type = CurrentType;
     }
 }
Exemple #17
0
    public void initHero(GDEHeroData hero)
    {
        type         = SDConstants.ItemType.Hero;
        itemId       = hero.id;
        itemHashcode = hero.hashCode;
        if (fightForceText)
        {
            fightForceText.text
                = "" + (SDDataManager.Instance.getHeroOriginalBattleForceByHashCode(itemHashcode));//读取角色战斗力
        }
        SDConstants.CharacterAnimType animType = (SDConstants.CharacterAnimType)
                                                     (SDDataManager.Instance.getHeroCareerById(itemId));
        ROHeroData roh = SDDataManager.Instance.getHeroDataByID(itemId, hero.starNumUpgradeTimes);

        if (characterModel != null)
        {
            characterModel.initHeroCharacterModel(itemHashcode, SDConstants.HERO_MODEL_RATIO);
        }
        itemLevel = SDDataManager.Instance.getLevelByExp(hero.exp);
        if (upText)
        {
            upText.gameObject.SetActive(false);
        }
        if (downText)
        {
            downText.text = SDGameManager.T("Lv.") + itemLevel;
        }
        if (slider)
        {
            slider.gameObject.SetActive(false);
        }
        if (starVision)
        {
            starVision.StarNum = roh.starNum;
        }
        if (statusImg)
        {
            statusImg.gameObject.SetActive(true);
            statusImg.sprite = UIEffectManager.Instance.heroStatusSps[hero.status];
        }

        //
        if (itemImg)
        {
        }
        //
        if (careerImg)
        {
            Sprite career = roh.Info.Career.Icon;
            careerImg.sprite = career;
        }
        if (raceImg)
        {
            Sprite race = roh.Info.Race.Icon;
            if (roh.Info.Race.NAME == "无种族")
            {
                HeroRace _r = roh.Info.Race;
                race = _r.Icon;
            }
            raceImg.sprite = race;
        }
        if (itemBgImg)
        {
            itemBgImg.sprite
                = SDDataManager.Instance.heroBgSpriteByRarity(roh.Info.Rarity);
        }
        if (frameImg)
        {
            frameImg.sprite
                = SDDataManager.Instance.heroFrameSpriteByRarity(roh.Info.Rarity);
        }
    }
 public void ItemsInit(SDConstants.ItemType type, SDConstants.ConsumableType ctype)
 {
     ConsumableType = ctype; ItemsInit(type);
 }
 public void ItemsInit(SDConstants.ItemType type, EquipPosition pos)
 {
     EquipPos = pos;
     ItemsInit(type);
 }
Exemple #20
0
    public void consumeToGetItems(string itemId, bool useDamond, int itemNum = 1)
    {
        SDConstants.ItemType type = SDDataManager.Instance.getItemTypeById(itemId);
        int allConsume            = 0;

        if (type == SDConstants.ItemType.Consumable)
        {
            consumableItem data = SDDataManager.Instance.getConsumableItemById(itemId);
            if (!useDamond)
            {
                allConsume = data.buyPrice_coin * itemNum;
            }
            else
            {
                allConsume = data.buyPrice_diamond * itemNum;
            }
        }
        else if (type == SDConstants.ItemType.Consumable)
        {
            consumableItem DATA = SDDataManager.Instance.getConsumableItemById(itemId);
            if (!useDamond)
            {
                allConsume = DATA.buyPrice_coin * itemNum;
            }
            else
            {
                allConsume = DATA.buyPrice_diamond * itemNum;
            }
        }
        else if (type == SDConstants.ItemType.Equip)
        {
        }

        if (allConsume <= 0)
        {
            return;
        }

        if (!useDamond)
        {
            if (ConsumeCoinToGetItems(allConsume, itemId, out int surplus, itemNum))
            {
                Debug.Log("消耗 金币 " + allConsume + " 获得 商品id " + itemId
                          + " X" + itemNum + "====== 剩余 金币 " + surplus);
            }
        }
        else
        {
            PopoutController.CreatePopoutAlert
            (
                "",
                SDGameManager.T("是否确认购买"),
                5,
                true,
                PopoutController.PopoutWIndowAlertType.ConfirmMessage,
                (PopoutController c, PopoutController.PopoutWindowAlertActionType d) =>
            {
                if (d == PopoutController.PopoutWindowAlertActionType.OnConfirm)
                {
                    bool a = ConsumeDamondToGetItems
                                 (allConsume, itemId, out int surplus, itemNum);
                    if (a)
                    {
                        Debug.Log("消耗 钻石 " + allConsume + " 获得 商品id " + itemId
                                  + " X" + itemNum + "====== 剩余 钻石 " + surplus);
                        c._dismissAfterTapBtn = true;
                    }
                }