Adventure Creator  1.68.0
An adventure game toolkit for Unity, by Chris Burton, ICEBOX Studios 2013-2018
AC.Soundtrack Class Reference
Inheritance diagram for AC.Soundtrack:
AC.Sound AC.Ambience AC.Music

Public Member Functions

override void _Update ()
 
float Play (int trackID, bool loop, bool isQueued, float fadeTime, bool resumeIfPlayedBefore=false, int newTrackTimeSamples=0)
 Plays a new soundtrack More...
 
float Crossfade (int trackID, bool loop, bool isQueued, float fadeTime, bool resumeIfPlayedBefore=false, int newTrackTimeSamples=0)
 Crossfade a new soundtrack More...
 
float ResumeLastQueue (float fadeTime, bool playFromStart)
 Resumes the last-played soundtrack queue More...
 
float StopAll (float fadeTime, bool storeCurrentIndex=true)
 Stops the currently-playing track, and cancels all those in the queue. More...
 
virtual MainData SaveMainData (MainData mainData)
 Updates a MainData class with its own variables that need saving. More...
 
virtual void LoadMainData (MainData mainData)
 Updates its own variables from a MainData class. More...
 
int GetCurrentTrackID ()
 
- Public Member Functions inherited from AC.Sound
void AfterLoad ()
 
void AfterLoading ()
 
void Interact ()
 
void FadeIn (float _fadeTime, bool loop, int _timeSamples=0)
 Fades in the AudioSource's current AudioClip, after which it continues to play. More...
 
void FadeOut (float _fadeTime)
 Fades out the AudioSource's current AudioClip, after which it stops. More...
 
bool IsFadingOut ()
 Checks if the AudioSource's AudioClip is being faded out. More...
 
void Play ()
 Plays the AudioSource's current AudioClip, without starting over if it was paused or changing its "loop" variable.
 
void Play (bool loop)
 Plays the AudioSource's current AudioClip. More...
 
void Play (AudioClip clip, bool loop, int _timeSamples=0)
 Plays an AudioClip. More...
 
void PlayAtPoint (bool loop, int samplePoint)
 Plays the AudioSource's current AudioClip from a set point. More...
 
void SetMaxVolume ()
 
void SetVolume (float volume)
 Sets the volume, but takes relativeVolume into account as well. More...
 
void ChangeRelativeVolume (float newRelativeVolume, float changeTime=0f)
 Changes the relativeVolume value. More...
 
void Stop ()
 
bool IsFading ()
 Checks if the sound is fading in or out. More...
 
bool IsPlaying ()
 Checks if sound is playing. More...
 
bool IsPlaying (AudioClip clip)
 Checks if a particular AudioClip is playing. More...
 
void TryDestroy ()
 
void EndOld (SoundType _soundType, Sound ignoreSound)
 Fades out all sounds of a particular type being played. More...
 
SoundData GetSaveData (SoundData soundData)
 Updates a SoundData class with its own variables that need saving. More...
 
void LoadData (SoundData soundData)
 Updates its own variables from a SoundData class. More...
 

Protected Member Functions

void Awake ()
 
virtual bool EndsOthers ()
 
string CreateTimesampleString ()
 
string CreateLastSoundtrackString ()
 
string CreateOldTimesampleString ()
 
void LoadMainData (int _timeSamples, string _oldTimeSamples, int _lastTimeSamples, string _lastQueueData, string _queueData)
 
MusicStorage GetSoundtrack (int ID)
 
- Protected Member Functions inherited from AC.Sound
void Initialise ()
 

Properties

bool IsPlayingThisFrame [get]
 
virtual List< MusicStorageStorages [get]
 
int LastTimeSamples [get]
 
virtual bool IsMusic [get]
 

Additional Inherited Members

- Public Attributes inherited from AC.Sound
SoundType soundType
 
bool playWhilePaused = false
 
float relativeVolume = 1f
 
bool surviveSceneChange = false
 
- Protected Attributes inherited from AC.Sound
AudioSource audioSource
 

Member Function Documentation

◆ _Update()

override void AC.Soundtrack._Update ( )
virtual

Updates the AudioSource's volume. This is called every frame by StateHandler.

Reimplemented from AC.Sound.

◆ Crossfade()

float AC.Soundtrack.Crossfade ( int  trackID,
bool  loop,
bool  isQueued,
float  fadeTime,
bool  resumeIfPlayedBefore = false,
int  newTrackTimeSamples = 0 
)

Crossfade a new soundtrack

Parameters
trackIDThe ID number of the track, as generated by the MusicStorage class that stores the AudioClip
Parameters
loopIf True, the new track will be looped
isQueuedIf True, the track will be queued until the current track has finished playing
fadeTimeThe crossfade duration, in seconds
resumeIfPlayedBeforeIf True, and the track has been both played before and stopped before it finished, the track will be resumed
newTrackTimeSamplesThe timeSamples to play the new track from, if not overridden with resumeIfPlayedBefore
Returns
The duration, in seconds, for the new track to begin playing and the previous track transition to end</reuturns>

◆ GetCurrentTrackID()

int AC.Soundtrack.GetCurrentTrackID ( )

The ID number of the currently-playing track.

◆ LoadMainData()

virtual void AC.Soundtrack.LoadMainData ( MainData  mainData)
virtual

Updates its own variables from a MainData class.

Parameters
mainDataThe MainData class to load from

Reimplemented in AC.Ambience, and AC.Music.

◆ Play()

float AC.Soundtrack.Play ( int  trackID,
bool  loop,
bool  isQueued,
float  fadeTime,
bool  resumeIfPlayedBefore = false,
int  newTrackTimeSamples = 0 
)

Plays a new soundtrack

Parameters
trackIDThe ID number of the track, as generated by the MusicStorage class that stores the AudioClip
Parameters
loopIf True, the new track will be looped
isQueuedIf True, the track will be queued until the current track has finished playing
fadeTimeThe fade-in duration, in seconds
resumeIfPlayedBeforeIf True, and the track has been both played before and stopped before it finished, the track will be resumed
newTrackTimeSamplesThe timeSamples to play the new track from, if not overridden with resumeIfPlayedBefore
Returns
The duration, in seconds, for the new track to begin playing and the previous track transition to end</reuturns>

◆ ResumeLastQueue()

float AC.Soundtrack.ResumeLastQueue ( float  fadeTime,
bool  playFromStart 
)

Resumes the last-played soundtrack queue

Parameters
fadeTimeThe fade-in time in seconds, if greater than zero
playFromStartIf True, the track will play from the beginning
Returns
The duration, in seconds, for the new track to begin playing and the previous track transition to end</reuturns>

◆ SaveMainData()

virtual MainData AC.Soundtrack.SaveMainData ( MainData  mainData)
virtual

Updates a MainData class with its own variables that need saving.

Parameters
mainDataThe original MainData class
Returns
The updated MainData class

Reimplemented in AC.Ambience, and AC.Music.

◆ StopAll()

float AC.Soundtrack.StopAll ( float  fadeTime,
bool  storeCurrentIndex = true 
)

Stops the currently-playing track, and cancels all those in the queue.

Parameters
fadeTimeThe time over which to stop the track
storeCurrentIndexIf the current time index of the track will be stored so that it can be resumed later
Returns
The fade time necessary to stop the track