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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
using System;
using System.Collections.Generic;
using System.Linq;
using UnityEngine;
using UnityEngine.UI;
 
 
public class MissionHeroRoadCell : CellView
{
    [SerializeField] Text nameText;
    [SerializeField] Image processImg;
    [SerializeField] Text processText;
    [SerializeField] ItemCell[] itemCells;
    [SerializeField] Transform[] gotRects;
 
    [SerializeField] Button getBtn;
    [SerializeField] Button gotoBtn;
    [SerializeField] Transform gotRect;
    [SerializeField] Transform mask;
 
 
    public void Display(int id)
    {
        var config = SuccessConfig.Get(id);
        nameText.text = Language.Get("Achievement1", config.NeedCnt / 100, config.NeedCnt % 100);
 
        var targetLevel = MainLevelConfig.GetToTargetLevelIndex(config.NeedCnt) + 1;
        var curLevel = MainLevelConfig.GetToTargetLevelIndex(AchievementManager.Instance.GetAchievementProgress(config.Type)) + 1;
        
        processImg.fillAmount = (float)curLevel / targetLevel;
        processText.text = Math.Min(targetLevel, curLevel) + "/" + targetLevel;
 
        var state = AchievementManager.Instance.GetAchievementState(id);
        for (int i = 0; i < itemCells.Length; i++)
        {
            if (i < config.AwardItemList.Length)
            {
                itemCells[i].SetActive(true);
                int itemID = config.AwardItemList[i][0];
                itemCells[i].Init(new ItemCellModel(itemID, false, config.AwardItemList[i][1]));
                itemCells[i].button.AddListener(() =>
                {
                    ItemTipUtility.Show(itemID);
                });
                gotRects[i].SetActive(state == 2);
            }
            else
            {
                itemCells[i].SetActive(false);
            }
        }
 
        getBtn.SetActive(state == 0);
        gotoBtn.SetActive(state == 1);
        gotRect.SetActive(state == 2);
        mask.SetActive(state == 2);
 
 
        getBtn.AddListener(() =>
        {
            AchievementManager.Instance.SendGetAward(id);
        });
        
        gotoBtn.AddListener(() =>
        {
            RightFuncInHome.RemoveListenWindow();
            UIManager.Instance.CloseWindow<DayMissionBaseWin>();
            NewBieCenter.Instance.StartNewBieGuide(BattleManager.Instance.challengeBossGuides[0]);
        });
    }
 
 
}