using System.Collections.Generic; using System.Linq; using UnityEngine; public class Music_Mgr : Singleton_Mono { public static string Get_Time_Max(AudioClip clip) { return Get_Time(clip == null ? 0 : (int)clip.length); } public static string Get_Time_Cur(AudioSource aus) { return Get_Time((int)aus.time); } public static string Get_Time(int time) { var currentHour = time / 3600; var currentMinute = (time - currentHour * 3600) / 60; var currentSecond = time - currentHour * 3600 - currentMinute * 60; return string.Format("{0:D2}:{1:D2}:{2:D2} ", currentHour, currentMinute, currentSecond); } public static float Get_Time_Cur_Prv(AudioSource aus) { return aus.time / aus.clip.length; } public List Music_Data_List; public AudioSource AudioSource; public Music_Data Music_Cur; protected override void In_Init() { if (TryGetComponent(out AudioSource) == false) { AudioSource = gameObject.AddComponent(); } Music_Data_List = Resources.LoadAll("Data/Music").ToList(); if (Music_Data_List.Count > 0) { Play(Music_Data_List[0]); } } public void Play(Music_Data data) { Music_Cur = data; AudioSource.clip = data.Clip; AudioSource.Play(); } protected override bool Is_Singleton_Auto() { return true; } }