using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.SceneManagement; public class BacksoundMusic : MonoBehaviour { public static BacksoundMusic instance; public AudioSource backsoundMusic; // Scene index yang ingin kamu nonaktifkan backsound-nya public int[] stopInScenes; private void Awake() { if (instance == null) { instance = this; DontDestroyOnLoad(gameObject); SceneManager.sceneLoaded += OnSceneLoaded; } else { Destroy(gameObject); } } private void OnSceneLoaded(Scene scene, LoadSceneMode mode) { // Cek apakah scene saat ini termasuk dalam daftar scene yang perlu stop backsound if (ShouldStopBacksound(scene.buildIndex)) { if (backsoundMusic.isPlaying) backsoundMusic.Stop(); } else { if (!backsoundMusic.isPlaying) backsoundMusic.Play(); } } private bool ShouldStopBacksound(int sceneIndex) { foreach (int index in stopInScenes) { if (index == sceneIndex) return true; } return false; } private void OnDestroy() { SceneManager.sceneLoaded -= OnSceneLoaded; } }