MainUIView.cs 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199
  1. using FairyGUI;
  2. using UI.Main;
  3. using UI.CommonGame;
  4. using UnityEngine;
  5. namespace GFGGame
  6. {
  7. public class MainUIView : BaseView
  8. {
  9. private UI_MainUI _ui;
  10. private GameObject _scenePrefab;
  11. private GameObject _sceneObject;
  12. private ValueBarController _valueBarController;
  13. private GButton _btnGongGao;
  14. private GButton _btnHaoYou;
  15. private GButton _btnYouJian;
  16. private GButton _btnRenWu;
  17. private GButton _btnPengYouQuan;
  18. private GButton _btnJInShu;
  19. private GButton _btnTianGong;
  20. private GButton _btnStore;
  21. private GButton _btnTuJian;
  22. public override void Dispose()
  23. {
  24. _valueBarController.Dispose();
  25. _valueBarController = null;
  26. base.Dispose();
  27. }
  28. protected override void Init()
  29. {
  30. base.Init();
  31. packageName = UI_MainUI.PACKAGE_NAME;
  32. _ui = UI_MainUI.Create();
  33. viewCom = _ui.target;
  34. isfullScreen = true;
  35. _scenePrefab = GFGAsset.Load<GameObject>(ResPathUtil.GetPrefabPath("SceneMain"));
  36. }
  37. protected override void OnInit()
  38. {
  39. base.OnInit();
  40. _valueBarController = new ValueBarController(_ui.m_valueBar);
  41. _btnGongGao = _ui.m_list.GetChild("btnGongGao").asButton;
  42. _btnHaoYou = _ui.m_list.GetChild("btnHaoYou").asButton;
  43. _btnYouJian = _ui.m_list.GetChild("btnYouJian").asButton;
  44. _btnRenWu = _ui.m_list.GetChild("btnRenWu").asButton;
  45. _btnPengYouQuan = _ui.m_list.GetChild("btnPengYouQuan").asButton;
  46. _btnStore = _ui.m_list.GetChild("btnStore").asButton;
  47. _btnTianGong = _ui.m_list.GetChild("btnTianGong").asButton;
  48. _btnTuJian = _ui.m_list.GetChild("btnTuJian").asButton;
  49. _btnJInShu = _ui.m_list.GetChild("btnJInShu").asButton;
  50. _btnGongGao.visible = false;
  51. _btnHaoYou.visible = false;
  52. _btnRenWu.visible = false;
  53. _btnPengYouQuan.visible = false;
  54. _btnJInShu.visible = false;
  55. _btnTianGong.visible = false;
  56. _ui.m_btnMain.onClick.Add(OnClickBtnMain);
  57. _ui.m_btnHuanZhuang.onClick.Add(OnClickBtnHuanZhuang);
  58. _ui.m_btnZhaiXing.onClick.Add(OnClickBtnZhaiXing);
  59. _ui.m_btnXiuFang.onClick.Add(OnClickBtnXiuFang);
  60. _ui.m_btnCiPai.onClick.Add(OnClickBtnCiPai);
  61. _ui.m_headBar.target.onClick.Add(OnClickHeadBar);
  62. _btnStore.onClick.Add(OnClickBtnStore);
  63. _btnTuJian.onClick.Add(OnClickBtnTuJian);
  64. _btnYouJian.onClick.Add(OnClickBtnYouJian);
  65. }
  66. protected override void OnShown()
  67. {
  68. base.OnShown();
  69. _ui.m_btnChange.selected = true;
  70. _ui.m_headBar.m_txtName.text = RoleDataManager.roleName;
  71. if (_sceneObject == null)
  72. {
  73. _sceneObject = GameObject.Instantiate(_scenePrefab);
  74. }
  75. SceneController.UpdateMainScene(_sceneObject);
  76. UpdateRoleLvl();
  77. _valueBarController.OnShown();
  78. TryGuide();
  79. Timers.inst.AddUpdate(Update);
  80. }
  81. protected override void OnHide()
  82. {
  83. base.OnHide();
  84. GuideController.HideGuide();
  85. if (_sceneObject != null)
  86. {
  87. GameObject.Destroy(_sceneObject);
  88. _sceneObject = null;
  89. }
  90. _valueBarController.OnHide();
  91. Timers.inst.Remove(Update);
  92. Timers.inst.Remove(UpdateToCheckGuide);
  93. }
  94. private void OnClickBtnMain()
  95. {
  96. this.Hide();
  97. ViewManager.Show(ViewName.STORY_CHAPTER_LIST_VIEW);
  98. }
  99. private void OnClickBtnHuanZhuang()
  100. {
  101. this.Hide();
  102. ViewManager.Show(ViewName.DRESS_UP_VIEW);
  103. }
  104. private void OnClickBtnZhaiXing()
  105. {
  106. Timers.inst.AddUpdate(UpdateToCheckGuide);
  107. ViewManager.Show(ViewName.LUCKY_BOX_VIEW, null, null, false, true);
  108. }
  109. private void OnClickBtnXiuFang()
  110. {
  111. Timers.inst.AddUpdate(UpdateToCheckGuide);
  112. ViewManager.Show(ViewName.XIU_FANG_VIEW, null, new object[] { ViewName.MAINUI_VIEW, this.viewData });
  113. }
  114. private void OnClickBtnCiPai()
  115. {
  116. //Timers.inst.AddUpdate(UpdateToCheckGuide);
  117. ViewManager.Show(ViewName.CARD_VIEW, null, new object[] { ViewName.MAINUI_VIEW, this.viewData });
  118. }
  119. private void OnClickBtnStore()
  120. {
  121. Timers.inst.AddUpdate(UpdateToCheckGuide);
  122. ViewManager.Show(ViewName.RECHARGE_STORE_VIEW);
  123. }
  124. private void OnClickBtnTuJian()
  125. {
  126. Timers.inst.AddUpdate(UpdateToCheckGuide);
  127. ViewManager.Show(ViewName.FIELD_GUIDE_VIEW, null, new object[] { ViewName.MAINUI_VIEW, this.viewData });
  128. }
  129. private void OnClickBtnYouJian()
  130. {
  131. ViewManager.Show<MailView>();
  132. }
  133. private void OnClickHeadBar()
  134. {
  135. ViewManager.Show(ViewName.ROLE_INFO_VIEW);
  136. }
  137. private void UpdateRoleLvl()
  138. {
  139. _ui.m_headBar.m_txtLvl.text = "" + RoleDataManager.lvl;
  140. }
  141. private void Update(object param)
  142. {
  143. if (Input.GetKeyDown(KeyCode.Escape) || Input.GetKeyDown(KeyCode.Home))
  144. {
  145. Alert.Show("我会想你的")
  146. .SetLeftButton(true, "继续游戏")
  147. .SetRightButton(true, "退出游戏", (object data) =>
  148. {
  149. Application.Quit();
  150. });
  151. }
  152. }
  153. private void UpdateToCheckGuide(object param)
  154. {
  155. if (this.viewCom != null && this.viewCom.parent != null)
  156. {
  157. int index = this.viewCom.parent.GetChildIndex(this.viewCom);
  158. if (index == this.viewCom.parent.numChildren - 1 && GRoot.inst.GetTopWindow() == null)
  159. {
  160. TryGuide();
  161. Timers.inst.Remove(UpdateToCheckGuide);
  162. }
  163. }
  164. }
  165. private void TryGuide()
  166. {
  167. if (!GuideController.TryGuideByGuideId(_ui.m_btnZhaiXing, ConstGuideId.MAIN_UI_BTN_ZHAI_XING, 1, false, "点击摘星按钮,进入抽奖界面"))
  168. {
  169. if (!GuideController.TryGuideByGuideId(_ui.m_btnHuanZhuang, ConstGuideId.MAIN_UI_BTN_HUAN_ZHUANG, 1, false, "点击自由换装按钮,进入换装界面"))
  170. {
  171. GuideController.TryGuideByGuideId(_ui.m_btnMain, ConstGuideId.MAIN_UI_BTN_STORY, 1, false, "这套服装搭配这个背景可真好看!点击按钮,继续故事可以获取更多好看的服装");
  172. }
  173. }
  174. }
  175. }
  176. }