| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- using UnityEngine;
- using static Il2Cpp.BaseAi;
- namespace AudioMgr
- {
- public static class RadioMaster
- {
- public static string musicPath = @"file:///" + Application.dataPath + @"/../Mods/AuroraRadio";
- public static ClipManager auroraClipManager;
- public static void Initialize()
- {
- auroraClipManager = new ClipManager();
- auroraClipManager.LoadClipsFromDir("AuroraRadio", ClipManager.LoadType.Stream);
- }
- private static Queue GetOrAddQueueToRadio(GameObject radioObject)
- {
- Queue radioQueue = radioObject.GetComponent<Queue>();
- if (radioQueue == null)
- {
- if(Settings.options.randomRadioMusic)
- {
- radioQueue = AudioMaster.CreateQueue(radioObject, auroraClipManager, 3f, Queue.Loop.Randomize, AudioMaster.SourceType.AuroraRadio);
- }
- else
- {
- radioQueue = AudioMaster.CreateQueue(radioObject, auroraClipManager, 3f, Queue.Loop.All, AudioMaster.SourceType.AuroraRadio);
- }
- }
- return radioQueue;
- }
- public static void StartPlay(GameObject radioObject)
- {
- if (auroraClipManager.clipCount > 0)
- {
- Queue radioQueue = GetOrAddQueueToRadio(radioObject);
- radioQueue.GetNextClip();
- radioQueue.Play();
- }
- }
- public static void StopPlay(GameObject radioObject)
- {
- if (auroraClipManager.clipCount > 0)
- {
- Queue radioQueue = GetOrAddQueueToRadio(radioObject);
- radioQueue.Stop();
- }
- }
- }
- }
|