using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; public class HeroDeleteHeadCell : MonoBehaviour { [SerializeField] HeroHeadBaseCell heroHeadBaseCell; [SerializeField] Image jobImg; [SerializeField] Text nameText; [SerializeField] GameObject selectRect; [SerializeField] GameObject maskObj; [SerializeField] GameObject onTeamObj; [SerializeField] GameObject lockObj; [SerializeField] GameObject awakeObj; [SerializeField] Text awakeLVText; public void Display(int index) { var guid = HeroUIManager.Instance.heroDeleteSortList[index]; var hero = HeroManager.Instance.GetHero(guid); var team = TeamManager.Instance.GetTeam(HeroUIManager.Instance.selectTeamType); selectRect.SetActive(HeroUIManager.Instance.selectDeleteHeroList.Contains(guid)); maskObj.SetActive(hero.isLock || hero.IsInAnyTeam() || HeroUIManager.Instance.selectDeleteHeroList.Contains(guid) || hero.awakeLevel > 0); lockObj.SetActive(hero.isLock); onTeamObj.SetActive(hero.IsInAnyTeam()); awakeObj.SetActive(hero.awakeLevel > 0); awakeLVText.text = hero.awakeLevel.ToString(); heroHeadBaseCell.Init(hero.heroId, hero.SkinID, hero.heroStar, hero.awakeLevel, hero.heroLevel, () => { Click(hero, index); }); nameText.text = hero.breakLevel == 0 ? hero.heroConfig.Name : Language.Get("herocardbreaklv", hero.heroConfig.Name, hero.breakLevel); jobImg.SetSprite(HeroUIManager.Instance.GetJobIconName(hero.heroConfig.Class)); } void Click(HeroInfo hero, int index) { //上阵 锁定 觉醒 的情况 if (hero.awakeLevel > 0) { SysNotifyMgr.Instance.ShowTip("HeroReborn1"); return; } if (hero.IsInAnyTeamJustOne()) { //阵容至少要有一个武将上阵 SysNotifyMgr.Instance.ShowTip("HeroFunc3"); return; } if (hero.isLock) { ConfirmCancel.ShowPopConfirm(Language.Get("Mail101"), Language.Get("herocard66"), (bool isOK) => { if (isOK) { hero.ChangeLockState(); } }); return; } if (hero.IsInAnyTeam()) { ConfirmCancel.ShowPopConfirm(Language.Get("Mail101"), Language.Get("herocard65"), (bool isOK) => { if (isOK) { hero.LeaveAllTeam(); } }); return; } if (HeroUIManager.Instance.selectDeleteHeroList.Contains(hero.itemHero.guid)) { HeroUIManager.Instance.selectDeleteHeroList.Remove(hero.itemHero.guid); } else { HeroUIManager.Instance.selectDeleteHeroList.Add(hero.itemHero.guid); } Display(index); } }