// play a track w/crossfade public void PlayMusicTrack(AudioTrackEnum trackId, bool loop = false) { if (Parameters.Tracks.Count > 0) { if (currentMusicPlayerId >= 0) { AudioSource actualPlayer = musicPlayers[currentMusicPlayerId].actualPlayer; if (actualPlayer.isPlaying) { //Debug.Log("Stopping track " + currentTrack.ToString()); // stop the currently playing track StartCoroutine(FadeMusicTrack(currentMusicPlayerId, false)); } } //Debug.Log("Playing track " + trackId.ToString()); if (MusicTracks.ContainsKey(trackId)) { currentMusicPlayerId = (currentMusicPlayerId + 1) % musicPlayers.Length; currentTrack = trackId; StartCoroutine(FadeMusicTrack(currentMusicPlayerId, true, loop)); } else { GlobalManager.MInstantMessage.DeliverMessage(InstantMessageType.MusicTrackPlayed, this, trackId); } } else { GlobalManager.MInstantMessage.DeliverMessage(InstantMessageType.MusicTrackPlayed, this, trackId); } }
} = 5 * 60; // 5 minutes protected override void PreparePlaylist(MusicTracks tracks) { const double fadeInDuration = 5, fadeOutDuration = 10, volume = 0.4; tracks.Add( new MusicTrack( "Gameplay1", isLooped: false, fadeInDuration: fadeInDuration, fadeOutDuration: fadeOutDuration, volume: volume)) .Add( new MusicTrack( "Gameplay2", isLooped: false, fadeInDuration: fadeInDuration, fadeOutDuration: fadeOutDuration, volume: volume)) .Add( new MusicTrack( "Gameplay3", isLooped: false, fadeInDuration: fadeInDuration, fadeOutDuration: fadeOutDuration, volume: volume)); }
protected sealed override void PrepareProto() { base.PrepareProto(); var tracks = new MusicTracks(); try { this.PreparePlaylist(tracks); if (tracks.Count == 0) { throw new Exception("No music tracks added into the playlist"); } foreach (var track in tracks) { if (track == null) { throw new Exception("Null reference provided as track"); } if (!Api.Shared.IsFileExists(track.MusicResource)) { throw new Exception("Music track doesn't exist: " + track.MusicResource); } } this.Tracks = tracks.AsReadOnly(); } catch { this.Tracks = new List <MusicTrack>(0).AsReadOnly(); throw; } }
public void SetAndPlayMusicTrack(MusicTracks type, float vol = 1f) { if (vol > 1f || vol < 0f) { musicVolume = 1f; } musicVolume = vol; switch (type) { case MusicTracks.Background: currentSong = backgroundMusic; break; case MusicTracks.Menu: currentSong = menuMusic; break; case MusicTracks.GameOver: currentSong = gameOverMusic; break; } PlayMusic(); }
public void PlayTrack(MusicTracks track) { // I'm enabling / disabling the gameobject just so you can see what music tracks are active // in the scene's hierarchy musicSource.gameObject.SetActive(true); musicSource.clip = musicTracks[(int)track]; musicSource.Play(); }
static void Main(string[] args) { string[] artistNames = new string[] { "Rob Miles", "Freed Bloggs", "The Bloggs Sisters", "Immy Brown" }; string[] titleNames = new string[] { "My Way", "Your Way", "His Way", "Her Way", "Milky Way" }; List <Artist> artists = new List <Artist>(); List <MusicTrack> musicTracks = new List <MusicTrack>(); Random rand = new Random(1); var artistCount = 1; var trackCount = 1; foreach (string artistName in artistNames) { Artist newArtist = new Artist { Name = artistName, ID = artistCount++ }; artists.Add(newArtist); foreach (string titleName in titleNames) { MusicTrack newTrack = new MusicTrack { Artist = newArtist, Title = titleName, Length = rand.Next(20, 600), ID = trackCount++ }; musicTracks.Add(newTrack); } } //Complex Anonymous Types var artistSummary = MusicTracks.Join( Artists, track => track.Artist.ID, artist => artist.ID, (track, artist) => new { track = track, artist = artist } ) .GroupBy( temp0 => temp0.artist.Name, temp0 => temp0.track ) .Select( artistTrackSummary => new { ID = artistTrackSummary.Key, Length = artistTrackSummary.Sum(x => x.Length) } ); }
protected override void PreparePlaylist(MusicTracks tracks) { tracks.Add( new MusicTrack( "MainMenu1", isLooped: true, fadeInDuration: 1, fadeOutDuration: 2, volume: 1)); }
public override double PauseBetweenTracksSeconds => 4 * 60; // 4 minutes protected override void PreparePlaylist(MusicTracks tracks) { tracks.Add( new MusicTrack( "PlayersBase1", isLooped: false, fadeInDuration: 6, fadeOutDuration: 6, volume: 0.4)); }
protected override void PreparePlaylist(MusicTracks tracks) { tracks.Add( new MusicTrack( "BaseRaid1", isLooped: true, fadeInDuration: 1.5, fadeOutDuration: 5, volume: 0.35)); }
public IEnumerator LoadStaticContentAsync(LoadStaticContentAsyncArgs args) { //we do a CONSIDERABLE amount of trolling. contentPack.artifactDefs.Add(Artifacts.DumpContent()); //args.ReportProgress(1f); contentPack.bodyPrefabs.Add(Bodies.DumpContent()); //args.ReportProgress(1f); contentPack.buffDefs.Add(Buffs.DumpContent()); //args.ReportProgress(1f); contentPack.effectDefs.Add(Effects.DumpContent()); //args.ReportProgress(1f); contentPack.eliteDefs.Add(Elites.DumpContent()); //args.ReportProgress(1f); contentPack.gameEndingDefs.Add(GameEndings.DumpContent()); //args.ReportProgress(1f); contentPack.entityStateConfigurations.Add(Loadouts.DumpConfigs()); //args.ReportProgress(1f); contentPack.entityStateTypes.Add(Loadouts.DumpEntityStates()); //args.ReportProgress(1f); contentPack.skillFamilies.Add(Loadouts.DumpContentSkillFamilies()); //args.ReportProgress(1f); contentPack.skillDefs.Add(Loadouts.DumpContentSkillDefs()); //args.ReportProgress(1f); contentPack.survivorDefs.Add(Loadouts.DumpSurvivorDefs()); //args.ReportProgress(1f); contentPack.masterPrefabs.Add(Masters.DumpContent()); //args.ReportProgress(1f); contentPack.musicTrackDefs.Add(MusicTracks.DumpContent()); //args.ReportProgress(1f); contentPack.networkedObjectPrefabs.Add(NetworkPrefabs.DumpContent()); //args.ReportProgress(1f); contentPack.networkSoundEventDefs.Add(NetworkSoundEvents.DumpContent()); //args.ReportProgress(1f); contentPack.itemDefs.Add(Pickups.DumpContentItems()); //args.ReportProgress(1f); contentPack.equipmentDefs.Add(Pickups.DumpContentEquipment()); //args.ReportProgress(1f); contentPack.projectilePrefabs.Add(Projectiles.DumpContent()); //args.ReportProgress(1f); contentPack.gameModePrefabs.Add(Runs.DumpContent()); //args.ReportProgress(1f); contentPack.sceneDefs.Add(Scenes.DumpContent()); //args.ReportProgress(1f); contentPack.surfaceDefs.Add(SurfaceDefinitions.DumpContent()); args.ReportProgress(1f); yield break; }
private IEnumerator FadeInCoroutine(MusicTracks track, float fadeTime) { float startVolume = musicSource.volume; float totalTime = 0.0f; musicSource.gameObject.SetActive(true); musicSource.clip = musicTracks[(int)track]; musicSource.volume = 0.0f; musicSource.Play(); while (musicSource.volume < startVolume) { totalTime += Time.deltaTime; musicSource.volume = startVolume * totalTime / fadeTime; yield return(null); } }
/// <summary> /// Plays the specified music in repeat mode. Playing "None" /// stops the music. /// </summary> /// <param name="music">The music to play.</param> public void Play(MusicTracks music) { if (music == _CurrentMusic) { return; } if (music == MusicTracks.None) { MediaPlayer.Stop(); } else { Song data = _Game.Content.Load <Song>(Enum.GetName(typeof(MusicTracks), music)); MediaPlayer.IsRepeating = true; MediaPlayer.Play(data); } _CurrentMusic = music; }
protected abstract void PreparePlaylist(MusicTracks tracks);
public void PlayMusic(MusicTracks musicTracks) { switch (musicTracks) { case MusicTracks.MainMenu: if (mainMenuMusic != null) { musicAudioSource.loop = true; musicAudioSource.clip = mainMenuMusic; musicAudioSource.Play(); } break; case MusicTracks.GameMusic: if (gameMusic != null) { musicAudioSource.loop = false; musicAudioSource.clip = gameMusic; musicAudioSource.Play(); } break; case MusicTracks.FinalRound: if (finalRoundMusic != null) { musicAudioSource.loop = false; musicAudioSource.clip = finalRoundMusic; musicAudioSource.Play(); } break; case MusicTracks.Win: if (winMusic != null) { musicAudioSource.loop = true; musicAudioSource.clip = winMusic; musicAudioSource.Play(); } break; case MusicTracks.Loss: if (lossMusic != null) { musicAudioSource.loop = true; musicAudioSource.clip = lossMusic; musicAudioSource.Play(); } break; case MusicTracks.Transistion: if (transistionMusic != null) { musicAudioSource.loop = false; musicAudioSource.clip = transistionMusic; musicAudioSource.Play(); } break; default: break; } }
public void FadeIn(MusicTracks track, float fadeTime) { StartCoroutine(FadeInCoroutine(track, fadeTime)); }