ZGTHgiftTipsView.cs 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138
  1. using ET;
  2. using FairyGUI;
  3. using UI.ActivityMain;
  4. using UI.CommonGame;
  5. using static GFGGame.ShopSProxy;
  6. namespace GFGGame
  7. {
  8. public class ZGTHgiftTipsView : BaseWindow
  9. {
  10. //直购648
  11. private UI_ZGTHgiftTipsUI _ui;
  12. private int giftItemId = 0;
  13. private ItemCfg itemcfg;
  14. private int shopId = 0;
  15. public override void Dispose()
  16. {
  17. if (_ui != null)
  18. {
  19. _ui.Dispose();
  20. _ui = null;
  21. }
  22. base.Dispose();
  23. }
  24. protected override void OnInit()
  25. {
  26. base.OnInit();
  27. packageName = UI_ZGTHgiftTipsUI.PACKAGE_NAME;
  28. _ui = UI_ZGTHgiftTipsUI.Create();
  29. this.viewCom = _ui.target;
  30. this.modal = true;
  31. this.viewCom.Center();
  32. viewAnimationType = EnumViewAnimationType.ZOOM_CENTER;
  33. _ui.m_Itemlist.itemRenderer = ListItemRender;
  34. _ui.m_btnBuy.onClick.Add(OnBtnGetClick);
  35. _ui.m_btnClose.onClick.Add(this.Hide);
  36. }
  37. protected override void AddEventListener()
  38. {
  39. base.AddEventListener();
  40. }
  41. protected override void RemoveEventListener()
  42. {
  43. base.RemoveEventListener();
  44. }
  45. protected override void OnShown()
  46. {
  47. base.OnShown();
  48. ShopCfg shopCfg = ShopCfgArray.Instance.GetCfg(ActivityOpenCfgArray.Instance.GetCfg(6002).paramsArr[0]);
  49. giftItemId = shopCfg.itemId;
  50. shopId = shopCfg.id;
  51. itemcfg = ItemCfgArray.Instance.GetCfg(giftItemId);
  52. _ui.m_Itemlist.numItems = itemcfg.itemsArr.Length;
  53. int buyNum = ShopDataManager.Instance.GetGoodsBuyNumById(shopCfg.id);
  54. if (shopCfg.maxBuyNum == 0 || buyNum < shopCfg.maxBuyNum)
  55. {
  56. _ui.m_btnBuy.visible = true;
  57. }
  58. else
  59. {
  60. _ui.m_btnBuy.visible = false;
  61. }
  62. _ui.m_btnBuy.GetChild("title").text = string.Format("{0}元/购买", shopCfg.configPrice.ToString());
  63. var activityInfo = ActivityGlobalDataManager.Instance.GetActivityInfo(6002);
  64. long endTime = 0;
  65. if (activityInfo != null)
  66. {
  67. endTime = activityInfo.EndTime;
  68. }
  69. var leftTime = endTime - TimeHelper.ServerNow();
  70. if (leftTime <= 0)
  71. {
  72. _ui.m_timeText.text = "";
  73. _ui.m_btnBuy.visible = false;
  74. Timers.inst.Remove(UpdateTime);
  75. return;
  76. }
  77. _ui.m_timeText.text = TimeUtil.FormattingTimeTo_DDHHmm((int)leftTime);
  78. Timers.inst.Add(1, 0, UpdateTime);
  79. }
  80. protected override void OnHide()
  81. {
  82. Timers.inst.Remove(UpdateTime);
  83. base.OnHide();
  84. }
  85. private void OnBtnGetClick()
  86. {
  87. _ui.m_btnBuy.visible = false;
  88. ReqShopBuy(shopId).Coroutine();
  89. }
  90. private void UpdateBtn()
  91. {
  92. _ui.m_btnBuy.visible = false;
  93. }
  94. private void ListItemRender(int index, GObject obj)
  95. {
  96. UI_ZGTHRewardItem item = UI_ZGTHRewardItem.Proxy(obj);
  97. int id = itemcfg.itemsArr[index][0];
  98. int count = itemcfg.itemsArr[index][1];
  99. ItemData itemDate = ItemUtil.createItemData(id, count);
  100. ItemView itemView = new ItemView(item.m_item);
  101. itemView.SetData(itemDate);
  102. item.m_name.text = ItemCfgArray.Instance.GetCfg(itemcfg.itemsArr[index][0]).name;
  103. UI_ZGTHRewardItem.ProxyEnd();
  104. }
  105. private void UpdateTime(object param)
  106. {
  107. var activityInfo = ActivityGlobalDataManager.Instance.GetActivityInfo(6002);
  108. long endTime = 0;
  109. if (activityInfo != null)
  110. {
  111. endTime = activityInfo.EndTime;
  112. }
  113. var leftTime = endTime - TimeHelper.ServerNow();
  114. if (leftTime <= 0)
  115. {
  116. _ui.m_timeText.text = "";
  117. _ui.m_btnBuy.visible = false;
  118. Timers.inst.Remove(UpdateTime);
  119. return;
  120. }
  121. _ui.m_timeText.text = TimeUtil.FormattingTimeTo_DDHHmm((int)leftTime);
  122. }
  123. }
  124. }