hch
2025-09-04 62188b271cce5e3aec5ca40d58c30f08643e2f60
Main/System/Hero/HeroInfo.Talent.cs
@@ -41,6 +41,17 @@
      }
   }
   // 75 # 英雄天赋洗炼锁定索引列表,对应71天赋ID索引
   public List<int> talentLockList
   {
      get
      {
         if (itemHero == null)
            return null;
         return itemHero.GetUseData(75);
      }
   }
   Dictionary<int, int> talentAttrDic = new Dictionary<int, int>();   //属性ID : 天赋属性值
@@ -85,23 +96,37 @@
      return 0;
   }
   public int GetMaxStarCount()
   {
      if (Quality < 4)
         return HeroUIManager.normalGiftMaxCnt * HeroUIManager.Instance.maxGiftLevel;
      return HeroUIManager.giftMaxCnt * HeroUIManager.Instance.maxGiftLevel;
   }
   public int GetTotalStarCount()
   {
      //talentLvList里的元素全部相加
      return talentLvList.Sum();
   }
   //天赋会更快到达满级;觉醒可以提升星上限,如初始时40满星,觉醒X级后50满星
   //判断当前是否满星
   public bool IsFullStar()
   {
      if (HeroAwakeConfig.GetHeroAwakeConfig(heroId, 1) == null)
        {
            return heroStar >= HeroQualityConfig.Get(Quality).InitStarUpper;
        }
        //根据觉醒累计提升星上限
        int addStarCount = 0;
        for (int i = 1; i <= awakeLevel; i++)
        {
            addStarCount += HeroAwakeConfig.GetHeroAwakeConfig(heroId, i).AddStarUpper;
        }
        return heroStar >= HeroQualityConfig.Get(Quality).InitStarUpper + addStarCount;
   }
   public bool IsFullGift()
   {
      //检查talentLvList 所有元素都大于等于10
      return talentLvList.All(x => x >= HeroUIManager.Instance.maxGiftLevel);
   }
   public int GetTalentLockCount()
   {
      //talentLockList里的元素全部相加 1代表锁定 0代表未锁定
      return talentLockList.Sum();
   }
}