FieldTaskView.cs 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. using System.Collections.Generic;
  2. using FairyGUI;
  3. using UI.Field;
  4. using UnityEngine;
  5. namespace GFGGame
  6. {
  7. public class FieldTaskView : BaseWindow
  8. {
  9. private UI_FieldTaskUI _ui;
  10. private List<FieldTaskCfg> _cfgs;
  11. private string[] difficulty = new string[] { "初级", "中级", "高级" };
  12. public override void Dispose()
  13. {
  14. base.Dispose();
  15. }
  16. protected override void OnInit()
  17. {
  18. base.OnInit();
  19. _ui = UI_FieldTaskUI.Create();
  20. this.viewCom = _ui.target;
  21. this.viewCom.Center();
  22. this.modal = true;
  23. viewAnimationType = EnumViewAnimationType.ZOOM_CENTER;
  24. _ui.m_list.itemRenderer = ListItemRender;
  25. }
  26. protected override void OnShown()
  27. {
  28. base.OnShown();
  29. _cfgs = FieldDataManager.Instance.GetTaskCfgs();
  30. _ui.m_list.numItems = _cfgs.Count;
  31. }
  32. protected override void OnHide()
  33. {
  34. base.OnHide();
  35. }
  36. private void ListItemRender(int index, GObject obj)
  37. {
  38. UI_ListItem item = UI_ListItem.Proxy(obj);
  39. item.m_txtDesc.text = string.Format("{0}难度挑战成功", difficulty[_cfgs[index].subType]);
  40. item.m_btnGet.m_txtTitle.text = string.Format("每周上限+{0}", _cfgs[index].addRewardLimit);
  41. item.m_btnGet.m_c1.selectedIndex = FieldDataManager.Instance.GetTaskState(_cfgs[index].id);
  42. if (item.m_btnGet.target.data == null)
  43. {
  44. item.m_btnGet.target.onClick.Add(OnBtnGetClick);
  45. }
  46. item.m_btnGet.target.data = item.m_btnGet.m_c1.selectedIndex;
  47. UI_ListItem.ClearProxy();
  48. }
  49. private void OnBtnGetClick(EventContext context)
  50. {
  51. if ((int)(context.sender as GObject).data == 0)
  52. {
  53. PromptController.Instance.ShowFloatTextPrompt("每周奖励领取成功");
  54. }
  55. }
  56. }
  57. }