Exemplo n.º 1
0
        public MusicPlaylist(World world, MusicPlaylistInfo info)
        {
            this.info = info;

            IsMusicAvailable = world.Map.Rules.InstalledMusic.Any();

            playlist = world.Map.Rules.InstalledMusic.Select(a => a.Value).ToArray();

            if (!IsMusicAvailable)
                return;

            random = playlist.Shuffle(Game.CosmeticRandom).ToArray();

            if (!string.IsNullOrEmpty(info.StartingMusic)
                && world.Map.Rules.Music.ContainsKey(info.StartingMusic)
                && world.Map.Rules.Music[info.StartingMusic].Exists)
            {
                currentSong = world.Map.Rules.Music[info.StartingMusic];
                repeat = info.LoopStartingMusic;
            }
            else
            {
                currentSong = Game.Settings.Sound.Shuffle ? random.First() : playlist.First();
                repeat = Game.Settings.Sound.Repeat;
            }

            Play();
        }
Exemplo n.º 2
0
        public MusicPlaylist(World world, MusicPlaylistInfo info)
        {
            this.info = info;

            IsMusicAvailable = world.Map.Rules.InstalledMusic.Any();

            playlist = world.Map.Rules.InstalledMusic.Select(a => a.Value).ToArray();

            if (!IsMusicAvailable)
            {
                return;
            }

            random = playlist.Shuffle(Game.CosmeticRandom).ToArray();

            if (!string.IsNullOrEmpty(info.StartingMusic) &&
                world.Map.Rules.Music.ContainsKey(info.StartingMusic) &&
                world.Map.Rules.Music[info.StartingMusic].Exists)
            {
                currentSong = world.Map.Rules.Music[info.StartingMusic];
                repeat      = info.LoopStartingMusic;
            }
            else
            {
                currentSong = Game.Settings.Sound.Shuffle ? random.First() : playlist.First();
                repeat      = Game.Settings.Sound.Repeat;
            }

            Play();
        }