StudioPorcelainView.cs 3.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. using System.Collections.Generic;
  2. using FairyGUI;
  3. using UI.Studio;
  4. namespace GFGGame
  5. {
  6. //瓷器副本
  7. public class StudioPorcelainView : StudioBaseView
  8. {
  9. private GComponent _comPorcelain;
  10. public override void Dispose()
  11. {
  12. base.Dispose();
  13. }
  14. protected override void OnInit()
  15. {
  16. base.OnInit();
  17. packageName = UI_StudioEctypeUI.PACKAGE_NAME;
  18. // _ui = UI_StudioPorcelainUI.Create();
  19. // this.viewCom = _ui.target;
  20. // isfullScreen = true;
  21. _ui.m_btnBack.onClick.Add(OnClickBtnBack);
  22. }
  23. protected override void OnShown()
  24. {
  25. _comPorcelain = UIPackage.CreateObject(UI_StudioUI.PACKAGE_NAME, "ComPorcelain").asCom;
  26. AddChildCom(_comPorcelain);
  27. _comPorcelain.GetChild("loaBg").asLoader.url = ResPathUtil.GetBgImgPath("hz_bjbj");
  28. StudioDataManager.Instance.VIEW_NAME = typeof(StudioPorcelainView).FullName;
  29. this._studioCfg = StudioCfgArray.Instance.GetCfgsByfunId(typeof(StudioPorcelainView).Name)[StudioDataManager.Instance.PorcelainTheme - 1];
  30. this.storyLevelCfgs = StoryLevelCfgArray.Instance.GetCfgsBytypeAndsubTypeAndchapterId(this._studioCfg.type, this._studioCfg.subType, this._studioCfg.id);
  31. _comPorcelain.GetChild("loaScore").asLoader.url = string.Format("ui://Studio/cqxf_zdqh_{0}", StudioDataManager.Instance.PorcelainTheme);
  32. list.numItems = this.storyLevelCfgs.Count;
  33. list.ScrollToView(curIndex);
  34. base.OnShown();
  35. _comPorcelain.height = _ui.target.height;
  36. Timers.inst.AddUpdate(CheckGuide);
  37. }
  38. protected override void OnHide()
  39. {
  40. base.OnHide();
  41. Timers.inst.Remove(CheckGuide);
  42. }
  43. protected override void ListItemRender(int index, GObject obj)
  44. {
  45. base.ListItemRender(index, obj);
  46. UI_ListPorcelainItem item = UI_ListPorcelainItem.Proxy(obj);
  47. // item.m_loaName.url = string.Format("ui://Studio/cwxf_zidi_{0}", index + 1);
  48. item.m_txtName.text = string.Format("书简修复-{0}", index + 1);
  49. UI_ListPorcelainItem.ProxyEnd();
  50. }
  51. private void OnClickBtnBack()
  52. {
  53. ViewManager.GoBackFrom(typeof(StudioPorcelainView).FullName);
  54. }
  55. private void CheckGuide(object param)
  56. {
  57. if (GuideDataManager.IsGuideFinish(ConstGuideId.STUDIO_PORCELAIN) <= 0)
  58. {
  59. UpdateToCheckGuide(null);
  60. }
  61. else
  62. {
  63. Timers.inst.Remove(CheckGuide);
  64. }
  65. }
  66. protected override void UpdateToCheckGuide(object param)
  67. {
  68. if (!ViewManager.CheckIsTopView(this.viewCom)) return;
  69. GuideController.TryGuide(_comPorcelain.GetChild("list").asList, ConstGuideId.STUDIO_PORCELAIN, 5, "", 0);
  70. GuideController.TryGuide(_ui.m_btnBack, ConstGuideId.STUDIO_PORCELAIN, 7, "挑战成功啦,让我们继续新故事吧");
  71. GuideController.TryCompleteGuide(ConstGuideId.STUDIO_PORCELAIN, 7);
  72. }
  73. protected override void TryCompleteGuide()
  74. {
  75. base.TryCompleteGuide();
  76. // GuideCfg cfg = GuideCfgArray.Instance.GetCfg(ConstGuideId.STUDIO_PORCELAIN);
  77. GuideController.TryCompleteGuideIndex(ConstGuideId.STUDIO_PORCELAIN, 7);
  78. GuideController.TryCompleteGuide(ConstGuideId.STUDIO_PORCELAIN, 7);
  79. }
  80. }
  81. }