using System.Collections; using System.Collections.Generic; using AibisDream.Kit; using TMPro; using UnityEngine; using UnityEngine.UI; using RainbowArt.CleanFlatUI; namespace AibisDream { public class StartMenu : Singleton { [SerializeField] private GameObject startMenuPanel; [SerializeField] private GameObject EndMenuPanel; [SerializeField] private Button startButton; [SerializeField] private Button selectLevelButton; [SerializeField] private Button quitButton; [SerializeField] private Button settingButton; [SerializeField] private ModalWindow settingWindow; [SerializeField] private Button surveyButton; [SerializeField] private Button followButton; [SerializeField] private GameObject startTab; [SerializeField] private SceneSelectionUIController sceneSelection; [SerializeField] private GameObject levelTab; [SerializeField] private GameObject buttonPrefab; [SerializeField] private string surveyURL = "https://wj.qq.com/s2/15348910/3c8c/"; // 替换为你的问卷链接 [SerializeField] private string BugSurveyURL = "https://wj.qq.com/s2/18309384/e356/"; [SerializeField] private string qqURL = "https://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=XQFpOqRb1_zqkCdR2bLT3kHb11XzZ54T&authKey=w8G8qxzecnATXDOec1Ybv8LA%2FTTN8gQkyegvbK%2FUZ9m90WxggTjXy2U6%2FJesWJF3&noverify=0&group_code=325268983"; private void OnEnable() { startButton.onClick.AddListener(StartGame); selectLevelButton.onClick.AddListener(SelectLevel); quitButton.onClick.AddListener(QuitGame); surveyButton.onClick.AddListener(OpenLink); followButton.onClick.AddListener(OpenQQLink); } private void OnDisable() { startButton?.onClick.RemoveListener(StartGame); selectLevelButton?.onClick.RemoveListener(SelectLevel); quitButton?.onClick.RemoveListener(QuitGame); surveyButton?.onClick.RemoveListener(OpenLink); followButton?.onClick.RemoveListener(OpenQQLink); } public void StartGame() { GameLoopManager.Instance.StartNewGame(); } public void SelectLevel() { SwitchToLevelTab(); } public void BackToMenu() { SceneLoader.Instance.RestartGame(); } private void SwitchToLevelTab() { sceneSelection.ShowSceneSelection(GameLoopManager.Instance.totalSceneSos); } private void SwitchToStartTab() { startTab.SetActive(true); levelTab.SetActive(false); } public void OpenLink() { Application.OpenURL(surveyURL); } public void OpenBugLink() { Application.OpenURL(BugSurveyURL); } public void OpenQQLink() { Application.OpenURL(qqURL); } public void QuitGame() { Application.Quit(); } public void HideStartMenu() { startMenuPanel.SetActive(false); } public void showStartMenu() { startMenuPanel.SetActive(true); } public void OpenEndMenu() { EndMenuPanel.SetActive(true); } public void HideEndMenu() { EndMenuPanel.SetActive(false); } } }