using System; using UnityEngine; using UnityEngine.UI; public class DayMissionCell : CellView { [SerializeField] ItemCell[] itemCells; [SerializeField] Transform[] gotRects; [SerializeField] Text titleText; [SerializeField] Image processImg; [SerializeField] Text processText; [SerializeField] Button getBtn; [SerializeField] Button gotoBtn; [SerializeField] Transform gotRect; [SerializeField] Transform mask; public void Display(int index) { int id = DayMissionManager.Instance.dailyIDList[index]; var config = DailyTaskConfig.Get(id); titleText.text = string.Format(config.Title, config.NeedValue); var process = DayMissionManager.Instance.GetDailyTaskProcess(id); processImg.fillAmount = (float)process / config.NeedValue; processText.text = Math.Min(process, config.NeedValue) + "/" + config.NeedValue; var state = DayMissionManager.Instance.GetDailyTaskState(config); if (state == 0) { getBtn.SetActive(false); gotoBtn.SetActive(true); gotRect.SetActive(false); mask.SetActive(false); gotoBtn.AddListener(() => { RightFuncInHome.RemoveListenWindow(); UIManager.Instance.CloseWindow(); NewBieCenter.Instance.StartNewBieGuide(config.GuideID); }); } else if (state == 1) { getBtn.SetActive(true); gotoBtn.SetActive(false); gotRect.SetActive(false); mask.SetActive(false); getBtn.AddListener(() => { var pack = new CA504_tagCMPlayerGetReward(); pack.RewardType = 1; pack.DataEx = (uint)id; GameNetSystem.Instance.SendInfo(pack); }); } else if (state == 2) { getBtn.SetActive(false); gotoBtn.SetActive(false); gotRect.SetActive(true); mask.SetActive(true); } 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(config.AwardItemList[i][0], false, config.AwardItemList[i][1])); itemCells[i].button.AddListener(() => { ItemTipUtility.Show(itemID); }); gotRects[i].SetActive(state == 2); } else { itemCells[i].SetActive(false); } } } }