StageManager.cs 980 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using ToneTuneToolkit.Common;
  4. using UnityEngine;
  5. /// <summary>
  6. /// 阶段管理工具
  7. /// </summary>
  8. public class StageManager : SingletonMaster<StageManager>
  9. {
  10. [Header("Stages")]
  11. [SerializeField] private List<CanvasGroup> cgStages = new List<CanvasGroup>();
  12. // ==================================================
  13. public void Reset()
  14. {
  15. SwitchStageTo(0);
  16. return;
  17. }
  18. // ==================================================
  19. public void SwitchStageTo(int stageIndex)
  20. {
  21. for (int i = 0; i < cgStages.Count; i++)
  22. {
  23. if (i == stageIndex)
  24. {
  25. CanvasGroupMaster.DoCanvasGroupFade(cgStages[i], true);
  26. }
  27. else
  28. {
  29. CanvasGroupMaster.DoCanvasGroupFade(cgStages[i], false);
  30. }
  31. }
  32. return;
  33. }
  34. public void SingleSwitchStage(int stageIndex, bool inOrOut)
  35. {
  36. CanvasGroupMaster.DoCanvasGroupFade(cgStages[stageIndex], inOrOut);
  37. return;
  38. }
  39. }