diff options
Diffstat (limited to 'ShiftOS_TheReturn/AudioManager.cs')
| -rw-r--r-- | ShiftOS_TheReturn/AudioManager.cs | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/ShiftOS_TheReturn/AudioManager.cs b/ShiftOS_TheReturn/AudioManager.cs new file mode 100644 index 0000000..1bf63dc --- /dev/null +++ b/ShiftOS_TheReturn/AudioManager.cs @@ -0,0 +1,42 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Newtonsoft.Json; +using WMPLib; + +namespace ShiftOS.Engine +{ + public static class AudioManager + { + public static WindowsMediaPlayer player = null; + + public static void Init() + { + player = new WindowsMediaPlayer(); + player.PlayStateChange += (o) => + { + switch ((WMPPlayState)o) + { + case WMPPlayState.wmppsPlaying: + case WMPPlayState.wmppsBuffering: + case WMPPlayState.wmppsReconnecting: + + break; + case WMPPlayState.wmppsReady: + PickRandomSong(); + break; + } + }; + PickRandomSong(); + } + + public static void PickRandomSong() + { + var lst = JsonConvert.DeserializeObject<List<string>>(Properties.Resources.Songs); + + player.URL = lst[new Random().Next(0, lst.Count)]; + } + } +} |
