StartPanel.cs 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. using System;
  2. using UnityEditor.Timeline.Actions;
  3. using UnityEngine;
  4. using UnityEngine.UI;
  5. namespace Mono
  6. {
  7. [UIBinding(prefab = "StartPanel")]
  8. public class StartPanel : UIPanel
  9. {
  10. public Button Btn_Start;
  11. public Animator StartPanelAni;
  12. public override void GetUIData()
  13. {
  14. Btn_Start = UIData.Get<Button>(nameof(Btn_Start));
  15. StartPanelAni = UIData.Get<Animator>(nameof(StartPanelAni));
  16. }
  17. private float _timer;
  18. private bool _isEnable;
  19. public override void AddButtonEvent()
  20. {
  21. Btn_Start.onClick.AddListener(() =>
  22. {
  23. if (!_isEnable)
  24. {
  25. _isEnable = true;
  26. StartPanelAni.Play("starBtnOpen");
  27. }
  28. });
  29. }
  30. public void Update()
  31. {
  32. if (_isEnable)
  33. {
  34. _timer += Time.deltaTime;
  35. if (_timer >= 0.5f)
  36. {
  37. OpenMainScenePanel();
  38. _isEnable = false;
  39. _timer = 0;
  40. }
  41. }
  42. }
  43. public void OpenMainScenePanel()
  44. {
  45. UIManager.Instance.HideUIPanel<StartPanel>();
  46. UIManager.Instance.LoadAndOpenPanel<MainScenePanel>(UIManager.UILayer.Middle);
  47. }
  48. }
  49. }