123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111 |
- using FairyGUI;
- using UI.Task;
- namespace GFGGame
- {
- public class TaskAchieveView : BaseWindow
- {
- private UI_TaskAchieveUI _ui;
- public override void Dispose()
- {
- if (_ui != null)
- {
- _ui.Dispose();
- _ui = null;
- }
- base.Dispose();
- }
- protected override void OnInit()
- {
- base.OnInit();
- packageName = UI_TaskAchieveUI.PACKAGE_NAME;
- _ui = UI_TaskAchieveUI.Create();
- viewCom = _ui.target;
- isfullScreen = true;
- _ui.m_loaBg.url = ResPathUtil.GetBgImgPath("chengjiu_bg");
- _ui.m_btnBack.onClick.Add(OnBtnBackClick);
- _ui.m_listAchieveItem.itemRenderer = RenderListAchieveItem;
- //_ui.m_listAchieveItem.onClickItem.Add(OnClickListRarityItem);
- }
- private void OnBtnBackClick()
- {
- ViewManager.Hide<TaskAchieveView>();
- }
- private void OnClickListRarityItem(EventContext context)
- {
- int subIndex = (int)(context.sender as GObject).data;
- if (subIndex > 3)
- PromptController.Instance.ShowFloatTextPrompt("ÔÝ먦Æô");
- else
- ViewManager.Show<TaskAchieveDetailView>(subIndex);
- }
- protected override void AddEventListener()
- {
- base.AddEventListener();
- EventAgent.AddEventListener(ConstMessage.RED_CHANGE, UpdateInfo);
- EventAgent.AddEventListener(ConstMessage.ACHIEVEMENT_TASK_PRO_CHANGED, UpdateRewardState);
- }
- protected override void RemoveEventListener()
- {
- base.RemoveEventListener();
- EventAgent.RemoveEventListener(ConstMessage.RED_CHANGE, UpdateInfo);
- EventAgent.RemoveEventListener(ConstMessage.ACHIEVEMENT_TASK_PRO_CHANGED, UpdateRewardState);
- }
- private void UpdateRewardState()
- {
- _ui.m_listAchieveItem.numItems = 6;
- }
- protected override void OnShown()
- {
- base.OnShown();
- UpdateInfo();
- }
- protected async void UpdateInfo()
- {
- var result = await TaskSProxy.GetTaskTypePro();
- if (!result) return;
- }
- protected override void OnHide()
- {
- base.OnHide();
- }
- private void RenderListAchieveItem(int index, GObject obj)
- {
- UI_AchieveItem listItem = UI_AchieveItem.Proxy(obj);
- if(index >= 4)
- listItem.m_AchieveType.selectedIndex = 4;
- else
- listItem.m_AchieveType.selectedIndex = index;
- if (listItem.target.data == null)
- {
- listItem.target.onClick.Add(OnClickListRarityItem);
- }
- listItem.target.data = index;
- var taskTypeProList = TaskDataManager.Instance.GetAchievementTaskTypeProList();
- foreach (var info in taskTypeProList) {
- if (info.AchievementType == index+1) {
- listItem.m_achieveBar.max = info.AllTaskNum;
- listItem.m_achieveBar.value = info.CompleteTaskNum;
- break;
- }
- }
- RedDotController.Instance.SetComRedDot(listItem.target, TaskDataManager.Instance.CheckTaskSubRewardCanGet(TaskFuncType.Achievement, index),"",-30,120);
- UI_AchieveItem.ProxyEnd();
- }
- }
- }
|