Archives
Trending
Support
Login
clear text
XML
Django
JavaScript
MATLAB
C
C++
Python
SQL
Shell
Markdown
YAML
JSON
CSS
PHP
Java
Ruby
Go
Rust
Swift
Kotlin
TypeScript
Perl
Lua
R
Scala
Haskell
Groovy
Dart
Clojure
VB.NET
Objective-C
PowerShell
Bash
CoffeeScript
Verilog
using System.Diagnostics; using Unity.PlasticSCM.Editor.WebApi; using UnityEngine; using UnityEngine.SceneManagement; public class Music : MonoBehaviour { static Music music; [SerializeField] AudioClip menuLoop, gameLoop; [SerializeField] AudioSource audioSource; string lastScene = ""; AudioClip newAudioClip = null; void Start() { if (music != null) { Destroy(gameObject); } else { DontDestroyOnLoad(gameObject); music = this; lastScene = SceneManager.GetActiveScene().name; UpdateMusic(); } audioSource.Play(); } void Update() { string currentScene = SceneManager.GetActiveScene().name; if (currentScene != lastScene) { lastScene = currentScene; UpdateMusic(); } } public void UpdateMusic() { switch (SceneManager.GetActiveScene().name) { case "Menu": case "Settings": newAudioClip = menuLoop; break; case "Level 1": newAudioClip = gameLoop; break; default: print("No Audio will be playing!"); break; } if (newAudioClip != audioSource.clip) { audioSource.clip = newAudioClip; audioSource.Play(); } } }
Mark as private
for 30 minutes
for 6 hours
for 1 day
for 1 week
for 1 month
for 1 year