ModeSelectView.cs 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4. using UnityEngine.SceneManagement;
  5. using UnityEngine.UI;
  6. public class ModeSelectView : JCUnityLib.ViewBase
  7. {
  8. [SerializeField] List<Button> buttons;
  9. // Start is called before the first frame update
  10. void Start()
  11. {
  12. for (int i = 0; i < buttons.Count; i++)
  13. {
  14. int temp = i;
  15. buttons[i].onClick.AddListener(() => {
  16. AudioMgr.ins.PlayBtn();
  17. OnChangeButton(temp);
  18. });
  19. }
  20. }
  21. void OnChangeButton(int index)
  22. {
  23. bool _selected = false;
  24. string gotoName = "";
  25. for (int i = 0; i < buttons.Count; i++)
  26. {
  27. Button _button = buttons[i];
  28. if (index == i)
  29. {
  30. _button.GetComponent<ModeSelectView_Button>().OnSetButtonState(true);
  31. _selected = true;
  32. gotoName = _button.name;
  33. }
  34. else
  35. {
  36. _button.GetComponent<ModeSelectView_Button>().OnSetButtonState(false);
  37. }
  38. }
  39. if (_selected)
  40. {
  41. //进入选中的页面
  42. AudioMgr.ins.PlayBtn();
  43. GoToLocalByName(gotoName);
  44. }
  45. }
  46. public void GoToLocalByName(string _gotoName)
  47. {
  48. switch (_gotoName)
  49. {
  50. case "SINGLE_PLYAER": //本地游戏(单人模式)
  51. GlobalDataTemp.pkMatchType = PKMatchType.None;
  52. if (GameMgr.judgmentGameType == 1)
  53. {
  54. //限时射箭
  55. GlobalData.pkMatchType = PKMatchType.None;
  56. GameMgr.gameType = 1;
  57. SceneManager.LoadScene("Game", LoadSceneMode.Single);
  58. }
  59. else {
  60. //打野鸡,打野兔,打野狼
  61. GameMgr.gameType = GameMgr.judgmentGameType;
  62. SceneManager.LoadScene("GameChallenge", LoadSceneMode.Single);
  63. }
  64. break;
  65. case "PLAY_LOCALLY": //本地对战
  66. Debug.Log("触发本地对战:PLAY_LOCALLY");
  67. break;
  68. case "PLAY_GLOBALLY": //联网
  69. Debug.Log("触发联网:PLAY_GLOBALLY");
  70. break;
  71. default:
  72. break;
  73. }
  74. }
  75. public void OnClick_Back()
  76. {
  77. AudioMgr.ins.PlayBtn();
  78. ViewMgr.Instance.DestroyView<ModeSelectView>();
  79. }
  80. }