using UnityEngine;
|
using UnityEngine.UI;
|
|
public class HeroFatesPutItem : MonoBehaviour
|
{
|
[SerializeField] HeroHeadBaseCell heroHeadBaseCell;
|
[SerializeField] Image jobImg;
|
[SerializeField] Text nameText;
|
[SerializeField] Transform select;
|
HeroFatesManager manager { get { return HeroFatesManager.Instance; } }
|
HeroInfo hero;
|
public void Display(HeroInfo hero)
|
{
|
this.hero = hero;
|
heroHeadBaseCell.Init(hero.heroId, hero.SkinID, hero.heroStar, hero.awakeLevel, hero.heroLevel, OnClick);
|
nameText.text = hero.breakLevel == 0 ? hero.heroConfig.Name : Language.Get("herocardbreaklv", hero.heroConfig.Name, hero.breakLevel);
|
jobImg.SetSprite(HeroUIManager.Instance.GetJobIconName(hero.heroConfig.Class));
|
bool isChoose = manager.chooseCostHeroInfos.Contains(hero);
|
select?.SetActive(isChoose);
|
}
|
|
public void OnClick()
|
{
|
if (!manager.TryGetNowLVAndNextLVConfig(manager.chooseHeroFatesId, out int nowLv, out HeroFatesQualityLVConfig nowLVConfig, out HeroFatesQualityLVConfig nextLVConfig))
|
{
|
return;
|
}
|
bool isChoose = manager.chooseCostHeroInfos.Contains(hero);
|
if (!isChoose)
|
{
|
int nextCnt = manager.chooseCostHeroInfos.Count + 1;
|
// 当前选中武将已达上限
|
if (nextCnt > nextLVConfig.NeedHeroCnt)
|
{
|
SysNotifyMgr.Instance.ShowTip("HeroFates03");
|
return;
|
}
|
}
|
manager.ChooseAdd(hero);
|
}
|
|
}
|