using UnityEngine; using UnityEngine.UI; using System; namespace vnxbqy.UI { public class HolidayTravelTaskCell : CellView { [SerializeField] Image activeIcon; [SerializeField] Text activeNameText; [SerializeField] Text activeDesText; [SerializeField] Text progressText; [SerializeField] Button gobtn; [SerializeField] GameObject completeImg; HolidayTravelModel model { get { return ModelCenter.Instance.GetModel(); } } ActFeastTravelTaskConfig taskConfig; private void OnEnable() { } private void OnDisable() { } public void Init(byte taskID) { OperationHolidayTravel holiday; if (!OperationTimeHepler.Instance.TryGetOperation(model.operationType, out holiday)) { return; } activeNameText.SetActive(false); taskConfig = ActFeastTravelTaskConfig.Get(taskID); activeIcon.SetSprite(taskConfig.IconKey); //改成总进度显示 非单次 SetTaskState(holiday, taskID, model.travelTaskProcess[taskID][0], holiday.travelTasks[taskID].FinishTimeMax*holiday.travelTasks[taskID].FinishNeedValue); activeDesText.text = string.Format(taskConfig.TaskDes, holiday.travelTasks[taskID].FinishNeedValue, holiday.travelTasks[taskID].AddTravelPoint); } public void SetTaskState(OperationHolidayTravel holiday, byte taskID, int curProgress, int sumProgress) { gobtn.RemoveAllListeners(); progressText.text = StringUtility.Contact(curProgress, "/", sumProgress); if (model.IsTaskFinish(holiday, taskID)) { gobtn.SetActive(false); completeImg.SetActive(true); progressText.color = UIHelper.GetUIColor(TextColType.Green); } if (curProgress < sumProgress) { gobtn.SetActive(true); completeImg.SetActive(false); progressText.color = UIHelper.GetUIColor(TextColType.Red); gobtn.AddListener(()=> { WindowJumpMgr.Instance.WindowJumpTo((JumpUIType)taskConfig.JumpId); }); } } } }