using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.SceneManagement; using TMPro; public class DebugSceneSwitcher : MonoBehaviour { public bool showDropdown; void Awake() { // Keep the object around when we switch scenes DontDestroyOnLoad(this.gameObject); CreateDropdownOptions(); } void CreateDropdownOptions() { TMP_Dropdown sceneDropdown = GameObject.Find("SceneSwitcherDropdown").GetComponent(); if (showDropdown) { if (sceneDropdown.options.Count == 0) { List sceneNames = new List(); for (int i = 0; i < SceneManager.sceneCountInBuildSettings; i++) { string newName = System.IO.Path.GetFileNameWithoutExtension(SceneUtility.GetScenePathByBuildIndex(i)); print(newName); sceneNames.Add(newName); } sceneDropdown.AddOptions(sceneNames); } } else { sceneDropdown.gameObject.SetActive(false); } } public void ChangeScene(int index) { // print(index); SceneController.Instance.LoadChosenScene(index); this.gameObject.SetActive(false); } public void ChangeSceneByName(string name) { SceneController.Instance.LoadSceneByName(name); this.gameObject.SetActive(false); } }