- Main Page
- Getting Started
- Editor Manual
- Scripting
- Overview
- Your Scripts
- Game State and Logic
- Customising PowerQuest
- Animation Events
- Function Reference
- User Script Reference
- Version History
- Download PowerQuest
- About/Community
![]() |
PowerQuest 0.19.4
|
The PowerQuest Audio System. Provides convenient, 2d specific audio functionality, using audio cues.
Audio Functions are accessable from QuestScripts using Audio.
, or from other scripts from using the static class SystemAudio.
Examples:
Features:
Audio.Play("gunshot");
Audio.GetHandle("gunshot").pitch = 0.5f
, Audio.Stop("gunshot");
Inherits SingletonAuto< SystemAudio >.
Properties | |
static AudioHandle | MusicHandle [get] |
The AudioHandle for the currently playing Music track. | |
static float | FalloffDistanceMultiplier [get, set] |
A multiplier on the falloff distance for volume/panning. Useful when you want to bring it in close, or expand it outwards temporarily. | |
static float | AnimSoundMult [get, set] |
static bool | ShouldRestartMusicIfAlreadyPlaying [get] |
Flag to set whether playing the same music cue again will restart it, or leave the old one playing. | |
Static Public Member Functions | |
static float | GetVolume (AudioCue.eAudioType type) |
Retrieves the volume for audio of a particular type (eg: Sound effects, Music, Dialog) | |
static AudioCue | GetCue (string cueName) |
Retrieves a sound cue by name. | |
static bool | IsPlaying (string cueName) |
Returns true if the cue is currently playing, otherwise false. | |
static AudioHandle | Play (string cueName, Transform emmitter=null) |
Play a cue by name. This is the main way to play sounds. If emmitter is set, the sound will falloff/pan as it goes off camera. | |
static AudioHandle | Play (AudioCue cue, Transform emitter=null, float volumeMult=1, float pitchMult=1, float fromTime=0, float withStartDelay=0) |
Play the specified cue with extended options. If emmitter is set, the sound will falloff/pan as it goes off camera. Can also set volume and pitch overrides, and override the start time of the cue. | |
static AudioHandle | Play (AudioCue cue, ref List< AudioHandle > handles, Transform emmitter=null, float volumeMult=1, float pitchMult=1, float fromTime=0, float withStartDelay=0) |
Advanced Play function with extended options, and returning a list of all handles started (for when multiple are started). If emmitter is set, the sound will falloff/pan as it goes off camera. Can also set volume and pitch overrides, and override the start time of the cue. | |
static AudioHandle | Play (AudioClip clip, int type=(int) AudioCue.eAudioType.Sound, Transform emmitter=null, float volume=1, float pitch=1, bool loop=false, AudioMixerGroup mixerGroup=null) |
Plays a specific audio clip rather than an audio cue. | |
static void | Pause (AudioHandle handle) |
Pauses the specified sound by it's handle. | |
static void | UnPause (AudioHandle handle) |
Resumes the specified sound by it's handle. | |
static void | Pause (string cueName) |
Pauses the specified sound by it's cue name. | |
static void | UnPause (string cueName) |
Resumes the specified sound by it's cue name. | |
static AudioHandle | GetHandle (string cueName) |
Gets a playing AudioHandle by its cue name. | |
static AudioHandle[] | GetHandles (string cueName) |
Gets any currently playing AudioHandles by their cue name. | |
static void | Stop (string cueName, float overTime=0) |
Stops the specified sound by it's cue name. | |
static void | Stop (AudioHandle handle, float overTime=0, float afterDelay=0) |
Stops the specified sound by it's handle. | |
static AudioHandle | PlayMusic (string cueName, float fadeTime=0) |
Play a music track using the cue name, with optional crossfade time. | |
static AudioHandle | PlayMusic (string cueName, float fadeOutTime, float fadeInTime) |
Play a music track using the cue name, with seperate fade out and fade in times. | |
static AudioHandle | PlayMusic (AudioCue cue, float fadeTime=0) |
Play a music cue, with optional crossfade time. | |
static AudioHandle | PlayMusic (AudioCue cue, float fadeOutTime, float fadeInTime) |
Play a music cue, with seperate fade out and fade in times. | |
static AudioSource | PlayMusicSynced (string name, float fadeTime, float volumeOverride=0) |
Play a music track using the cue name, Crossfades beteween two music tracks, attempting to keep them synced (assumes identical length/tempo/etc). Optional volume multiplier. | |
static AudioSource | PlayMusicSynced (AudioCue cue, float fadeTime, float volumeOverride=0) |
Crossfades beteween two music tracks, attempting to keep them synced (assumes identical length/tempo/etc). Optional volume multiplier. | |
static void | StopMusic (float fadeTime=0, float afterDelay=0) |
Stops the currently playing music, with optional fade out time. | |
static void | PlayAmbientSound (string name, float fadeTime=0.4f) |
Plays an ambient sound by it's cue name, with optional fade time. Sound cue is assumed to be looping. | |
static void | PlayAmbientSound (string name, float fadeoutTime, float fadeInTime) |
Plays an ambient sound by it's cue name, with seperate fade out and fade in times. Sound cue is assumed to be looping. | |
static void | StopAmbientSound (float overTime=0.4f) |
Stops the current ambient sound cue, with optional fade time. | |
static void | UpdateCustomFalloff (string cueName, Vector2 soundPos, Vector2 listenerPos, float closeDist, float farDist, float farVol=0, float closeVol=1, float farPan=0.7f) |
Sets a sound's volume and stereo pan based on distance to it. Use this function when you want sounds to be louder when standing near them, and quieter as you walk away. The function should be placed in your room's Update() function. eg. ~~~ void Update() | |
static float | ToDecibel (float linear) |
static float | FromDecibel (float dB) |
Public Member Functions | |
bool | StopHandleInternal (AudioHandle handle, float overTime=0, float afterDelay=0) |
|
staticget |
The AudioHandle for the currently playing Music track.
|
staticgetset |
A multiplier on the falloff distance for volume/panning. Useful when you want to bring it in close, or expand it outwards temporarily.
|
staticget |
Flag to set whether playing the same music cue again will restart it, or leave the old one playing.
|
inlinestatic |
Retrieves the volume for audio of a particular type (eg: Sound effects, Music, Dialog)
|
inlinestatic |
Retrieves a sound cue by name.
|
inlinestatic |
Returns true if the cue is currently playing, otherwise false.
|
inlinestatic |
Play a cue by name. This is the main way to play sounds. If emmitter is set, the sound will falloff/pan as it goes off camera.
Eg: Audio.Play("DoorKnock"); Audio.Play("Gunshot", C.Gunman.Instance); Audio.Play("SeasideAmbience").FadeIn(2.0f);
|
inlinestatic |
Play the specified cue with extended options. If emmitter is set, the sound will falloff/pan as it goes off camera. Can also set volume and pitch overrides, and override the start time of the cue.
|
inlinestatic |
Advanced Play function with extended options, and returning a list of all handles started (for when multiple are started). If emmitter is set, the sound will falloff/pan as it goes off camera. Can also set volume and pitch overrides, and override the start time of the cue.
|
inlinestatic |
Plays a specific audio clip rather than an audio cue.
|
inlinestatic |
Pauses the specified sound by it's handle.
|
inlinestatic |
Resumes the specified sound by it's handle.
|
inlinestatic |
Pauses the specified sound by it's cue name.
|
inlinestatic |
Resumes the specified sound by it's cue name.
|
inlinestatic |
Gets a playing AudioHandle by its cue name.
|
inlinestatic |
Gets any currently playing AudioHandles by their cue name.
|
inlinestatic |
Stops the specified sound by it's cue name.
|
inlinestatic |
Stops the specified sound by it's handle.
|
inlinestatic |
Play a music track using the cue name, with optional crossfade time.
|
inlinestatic |
Play a music track using the cue name, with seperate fade out and fade in times.
|
inlinestatic |
Play a music cue, with optional crossfade time.
|
inlinestatic |
Play a music cue, with seperate fade out and fade in times.
|
inlinestatic |
Play a music track using the cue name, Crossfades beteween two music tracks, attempting to keep them synced (assumes identical length/tempo/etc). Optional volume multiplier.
|
inlinestatic |
Crossfades beteween two music tracks, attempting to keep them synced (assumes identical length/tempo/etc). Optional volume multiplier.
|
inlinestatic |
Stops the currently playing music, with optional fade out time.
|
inlinestatic |
Plays an ambient sound by it's cue name, with optional fade time. Sound cue is assumed to be looping.
|
inlinestatic |
Plays an ambient sound by it's cue name, with seperate fade out and fade in times. Sound cue is assumed to be looping.
|
inlinestatic |
Stops the current ambient sound cue, with optional fade time.
|
inlinestatic |
Sets a sound's volume and stereo pan based on distance to it. Use this function when you want sounds to be louder when standing near them, and quieter as you walk away. The function should be placed in your room's Update() function. eg. ~~~ void Update()
~~~
cueName | Cue name to fade. |
soundPos | The location of the sound. Eg: P.Fireplace.LookAtPoint . |
listenerPos | The location of the listener (usually the player). Eg: C.Player.Position . |
closeDist | How close should the player be to the sound for it to be at maxVol. In game units. |
farDist | How far should the player be from the sound for it to be at minVol. In game units. |
farVol | The volume when the player is standing FAR from the sound (eg. quiet). From 0 to 1. |
closeVol | The volume when the player is standing CLOSE to the sound (eg. loud). From 0 to 1. |
farPan | The maximum amount to pan in stereo, when the player is FAR from the sound. From 0 to 1. |