MatchingCompetitionGatheringView.cs 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198
  1. using System;
  2. using System.Collections.Generic;
  3. using cfg.GfgCfg;
  4. using ET;
  5. using FairyGUI;
  6. using UI.MatchingCompetition;
  7. using UnityEngine;
  8. namespace GFGGame
  9. {
  10. //搭配赛集合期间
  11. class MatchingCompetitionGatheringView : BaseWindow
  12. {
  13. private UI_MatchingCompetitionGatheringUI _ui;
  14. private ValueBarController _valueBarController;
  15. private int SuitID;
  16. private EffectUI _effectUI1;
  17. public override void Dispose()
  18. {
  19. EffectUIPool.Recycle(_effectUI1);
  20. _effectUI1 = null;
  21. if (_valueBarController != null)
  22. {
  23. _valueBarController.Dispose();
  24. _valueBarController = null;
  25. }
  26. if (_ui != null)
  27. {
  28. _ui.Dispose();
  29. }
  30. _ui = null;
  31. base.Dispose();
  32. }
  33. protected override void OnInit()
  34. {
  35. base.OnInit();
  36. packageName = UI_MatchingCompetitionGatheringUI.PACKAGE_NAME;
  37. _ui = UI_MatchingCompetitionGatheringUI.Create();
  38. this.viewCom = _ui.target;
  39. isReturnView = true;
  40. isfullScreen = true;
  41. _ui.m_BtnBack.onClick.Add(OnClickBtnBack);
  42. _ui.m_btnUploadWorks.onClick.Add(OnClickBtnUpload);
  43. _ui.m_btnShop.onClick.Add(OnClickBtnShop);
  44. _ui.m_ruleBtn.onClick.Add(MatchingCompetitionDataManager.Instance.OnClickBtnRule);
  45. }
  46. protected override void AddEventListener()
  47. {
  48. base.AddEventListener();
  49. EventAgent.AddEventListener(ConstMessage.DOWNLOAD_FINISH, UpdateView);
  50. }
  51. protected override void RemoveEventListener()
  52. {
  53. base.RemoveEventListener();
  54. EventAgent.RemoveEventListener(ConstMessage.DOWNLOAD_FINISH, UpdateView);
  55. }
  56. protected override void OnShown()
  57. {
  58. base.OnShown();
  59. _ui.m_bg.url = ResPathUtil.GetBgImgPath("pxs_bj");
  60. _ui.m_c1.selectedIndex = 1;
  61. JudgingRoundOpenCfg judgingCfg =
  62. CommonDataManager.Tables.TblJudgingRoundOpenCfg.DataList[
  63. MatchingCompetitionDataManager.Instance.MatchingCompetitionSeason - 1];
  64. SuitID = judgingCfg.ShowSuit;
  65. _ui.m_titleText.text = judgingCfg.Name;
  66. SuitCfg suitCfg = CommonDataManager.Tables.TblSuitCfg.GetOrDefault(SuitID);
  67. _ui.m_suitName.text = suitCfg.Name;
  68. UpdateView();
  69. Timers.inst.AddUpdate(UpdateTime);
  70. Timers.inst.AddUpdate(CheckGuide);
  71. }
  72. protected override void OnHide()
  73. {
  74. DressUpObjUI dressUpObjUI = _ui.m_suitShow.data as DressUpObjUI;
  75. if (dressUpObjUI != null)
  76. {
  77. dressUpObjUI.Dispose();
  78. }
  79. _ui.m_suitShow.data = null;
  80. base.OnHide();
  81. Timers.inst.Remove(UpdateTime);
  82. Timers.inst.Remove(CheckGuide);
  83. }
  84. private void UpdateView()
  85. {
  86. if (MatchingCompetitionDataManager.Instance.WorksID == 0)
  87. {
  88. MatchingCompetitionDataManager.Instance.MyNtextture = null;
  89. }
  90. if (MatchingCompetitionDataManager.Instance.MyNtextture == null)
  91. {
  92. _ui.m_playerImage.texture = null;
  93. _ui.m_desc.visible = true;
  94. DressUpObjUI dressUpObjUI;
  95. if (_ui.m_suitShow.data == null)
  96. {
  97. _ui.m_suitShow.data = new DressUpObjUI("SceneSuitFoster");
  98. }
  99. bool showAction = SuitCfgArray.Instance.CheckSuitHasAction(SuitID) &&
  100. DressUpMenuSuitDataManager.CheckSuitHasActionRes(SuitID);
  101. dressUpObjUI = _ui.m_suitShow.data as DressUpObjUI;
  102. dressUpObjUI.ResetSceneObjAsync(100, false, true, null, false, (sceneObj) =>
  103. {
  104. if (sceneObj != null)
  105. {
  106. dressUpObjUI.dressUpObj.PutOnSuitCfg(SuitID, showAction,
  107. new int[] { ConstDressUpItemType.BEI_JING }, false, false);
  108. dressUpObjUI.UpdateWrapper(_ui.m_suitShow);
  109. }
  110. });
  111. }
  112. else
  113. {
  114. DressUpObjUI dressUpObjUI = _ui.m_suitShow.data as DressUpObjUI;
  115. if (dressUpObjUI != null)
  116. {
  117. dressUpObjUI.Dispose();
  118. }
  119. _ui.m_desc.visible = false;
  120. _ui.m_suitShow.data = null;
  121. _ui.m_playerImage.texture = MatchingCompetitionDataManager.Instance.MyNtextture;
  122. }
  123. }
  124. private void UpdateTime(object param = null)
  125. {
  126. long endTime = MatchingCompetitionDataManager.Instance.MatchingEndTimes;
  127. long curTime = TimeHelper.ServerNow();
  128. if (MatchingCompetitionDataManager.Instance.MatchingState != 1)
  129. {
  130. Timers.inst.Remove(UpdateTime);
  131. PromptController.Instance.ShowFloatTextPrompt("投稿时间已到!");
  132. ViewManager.GoBackFrom(typeof(MatchingCompetitionGatheringView).FullName);
  133. return;
  134. }
  135. if (endTime < curTime + 1)
  136. {
  137. Timers.inst.Remove(UpdateTime);
  138. return;
  139. }
  140. TimeUtil.FormattingTime(curTime, endTime, out int num, out string str);
  141. _ui.m_timeText.text = "投稿剩余时间:" + TimeUtil.FormattingTimeTo_DDHHmm(endTime - curTime);
  142. }
  143. private void OnClickBtnBack()
  144. {
  145. ViewManager.GoBackFrom(typeof(MatchingCompetitionGatheringView).FullName);
  146. }
  147. private void OnClickBtnUpload()
  148. {
  149. ViewManager.Show<DressUpView>(2, false);
  150. }
  151. private void OnClickBtnShop()
  152. {
  153. ViewManager.Show<StoreView>(new object[] { ConstStoreTabId.STORE_EXCHANGE, 3 });
  154. }
  155. private void CheckGuide(object param)
  156. {
  157. if (GuideDataManager.IsGuideFinish("DAPEISAI_1") <= 0 &&
  158. MatchingCompetitionDataManager.Instance.MatchingState == 1)
  159. {
  160. UpdateToCheckGuide(null);
  161. }
  162. else
  163. {
  164. Timers.inst.Remove(CheckGuide);
  165. }
  166. }
  167. protected override void UpdateToCheckGuide(object param)
  168. {
  169. if (!ViewManager.CheckIsTopView(this.viewCom)) return;
  170. GuideController.TryGuide(_ui.m_btnUploadWorks, "DAPEISAI_1", 2, "进行搭配!");
  171. GuideController.TryCompleteGuide("DAPEISAI_1", 2);
  172. }
  173. }
  174. }