TitlePanel.cs 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. using System.Collections.Generic;
  2. using Core.Language;
  3. using Fort23.Core;
  4. namespace Fort23.Mono
  5. {
  6. [UIBinding(prefab = "TitlePanel")]
  7. public partial class TitlePanel : UIPanel
  8. {
  9. List<EnergyWidget> widgets = new List<EnergyWidget>();
  10. List<int> moRen = new List<int>() { 1001, 1002 };
  11. private void Init()
  12. {
  13. }
  14. protected override void AddEvent()
  15. {
  16. }
  17. protected override void DelEvent()
  18. {
  19. }
  20. public override void AddButtonEvent()
  21. {
  22. }
  23. public async static CTask<TitlePanel> OpenPanel(List<int> items = null)
  24. {
  25. TitlePanel appBarPanel = null;
  26. if (UIManager.Instance.GetComponent<TitlePanel>() == null)
  27. {
  28. appBarPanel = await UIManager.Instance.LoadAndOpenPanel<TitlePanel>(null, UILayer.Top, isFocus: false);
  29. }
  30. else
  31. {
  32. appBarPanel = UIManager.Instance.GetComponent<TitlePanel>();
  33. await appBarPanel.Show();
  34. }
  35. await appBarPanel.CustomInit(items);
  36. return appBarPanel;
  37. }
  38. public async CTask CustomInit(List<int> items)
  39. {
  40. if (items == null)
  41. {
  42. items = moRen;
  43. }
  44. foreach (var energyWidget in widgets)
  45. {
  46. UIManager.Instance.DormancyGComponent(energyWidget);
  47. }
  48. widgets.Clear();
  49. Text_JingJie.text =
  50. LanguageManager.Instance.Text(PlayerManager.Instance.myHero.powerUpConfig.jingjieLanIDs[0]) +
  51. LanguageManager.Instance.Text(PlayerManager.Instance.myHero.powerUpConfig.jingjieLanIDs[1]) +
  52. LanguageManager.Instance.Text(PlayerManager.Instance.myHero.powerUpConfig.jingjieLanIDs[2]) +
  53. PlayerManager.Instance.myHero.powerUpConfig.jingjie3 * 10 + "%";
  54. Slider_Exp.maxValue = PlayerManager.Instance.myHero.powerUpConfig.levelUpExp;
  55. foreach (var item in items)
  56. {
  57. EnergyWidget energyWidget =
  58. await UIManager.Instance.CreateGComponent<EnergyWidget>(null, Group_ResourceBar);
  59. energyWidget.CustomInit(item);
  60. widgets.Add(energyWidget);
  61. }
  62. }
  63. [CustomMethod(CustomMethodType.Update)]
  64. public void Update()
  65. {
  66. int currentMiao = (int)((TimeHelper.ClientNow() - PlayerManager.Instance.myHero.heroData.upTime) / 1000);
  67. float allexp = currentMiao * PlayerManager.Instance.myHero.powerUpConfig.AutoXiuwei;
  68. Slider_Exp.value = PlayerManager.Instance.myHero.heroData.exp + allexp;
  69. }
  70. public async static CTask ClosePanel()
  71. {
  72. UIManager.Instance.GetComponent<TitlePanel>()?.Hide();
  73. }
  74. public override void Hide()
  75. {
  76. foreach (var energyWidget in widgets)
  77. {
  78. UIManager.Instance.DormancyGComponent(energyWidget);
  79. }
  80. widgets.Clear();
  81. base.Hide();
  82. }
  83. }
  84. }