1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
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 (!HeroUIManager.Instance.SelectDeleteHero(hero))
        {
            return;
        }
 
        Display(index);
    }
}