Initial Commit
This commit is contained in:
@@ -0,0 +1,144 @@
|
||||
using UnityEngine;
|
||||
using System.Collections;
|
||||
|
||||
namespace OVR
|
||||
{
|
||||
|
||||
/*
|
||||
-----------------------
|
||||
SoundFXRef
|
||||
just a references to a SoundFX.. all the SoundFX methods are called indirectly from here
|
||||
-----------------------
|
||||
*/
|
||||
[System.Serializable]
|
||||
public class SoundFXRef {
|
||||
|
||||
public string soundFXName = string.Empty;
|
||||
|
||||
private bool initialized = false;
|
||||
private SoundFX soundFXCached = null;
|
||||
public SoundFX soundFX {
|
||||
get {
|
||||
if ( !initialized ) {
|
||||
Init();
|
||||
}
|
||||
return soundFXCached;
|
||||
}
|
||||
}
|
||||
public string name { get { return soundFXName; } set { soundFXName = value; Init(); } }
|
||||
|
||||
/*
|
||||
-----------------------
|
||||
Init()
|
||||
-----------------------
|
||||
*/
|
||||
void Init() {
|
||||
// look up the actual SoundFX object
|
||||
soundFXCached = AudioManager.FindSoundFX( soundFXName );
|
||||
if ( soundFXCached == null ) {
|
||||
soundFXCached = AudioManager.FindSoundFX( string.Empty );
|
||||
}
|
||||
initialized = true;
|
||||
}
|
||||
|
||||
/*
|
||||
-----------------------
|
||||
Length()
|
||||
-----------------------
|
||||
*/
|
||||
public int Length { get { return soundFX.Length; } }
|
||||
|
||||
/*
|
||||
-----------------------
|
||||
IsValid()
|
||||
-----------------------
|
||||
*/
|
||||
public bool IsValid { get { return soundFX.IsValid; } }
|
||||
|
||||
/*
|
||||
-----------------------
|
||||
GetClip()
|
||||
-----------------------
|
||||
*/
|
||||
public AudioClip GetClip() {
|
||||
return soundFX.GetClip();
|
||||
}
|
||||
|
||||
/*
|
||||
-----------------------
|
||||
GetClipLength()
|
||||
-----------------------
|
||||
*/
|
||||
public float GetClipLength( int idx ) {
|
||||
return soundFX.GetClipLength( idx );
|
||||
}
|
||||
|
||||
/*
|
||||
-----------------------
|
||||
PlaySound()
|
||||
-----------------------
|
||||
*/
|
||||
public int PlaySound( float delaySecs = 0.0f ) {
|
||||
return soundFX.PlaySound( delaySecs );
|
||||
}
|
||||
|
||||
/*
|
||||
-----------------------
|
||||
PlaySoundAt()
|
||||
-----------------------
|
||||
*/
|
||||
public int PlaySoundAt( Vector3 pos, float delaySecs = 0.0f, float volume = 1.0f, float pitchMultiplier = 1.0f ) {
|
||||
return soundFX.PlaySoundAt( pos, delaySecs, volume, pitchMultiplier );
|
||||
}
|
||||
|
||||
/*
|
||||
-----------------------
|
||||
SetOnFinished()
|
||||
get a callback when the sound is finished playing
|
||||
-----------------------
|
||||
*/
|
||||
public void SetOnFinished( System.Action onFinished ) {
|
||||
soundFX.SetOnFinished( onFinished );
|
||||
}
|
||||
|
||||
/*
|
||||
-----------------------
|
||||
SetOnFinished()
|
||||
get a callback with an object parameter when the sound is finished playing
|
||||
-----------------------
|
||||
*/
|
||||
public void SetOnFinished( System.Action<object> onFinished, object obj ) {
|
||||
soundFX.SetOnFinished( onFinished, obj );
|
||||
}
|
||||
|
||||
/*
|
||||
-----------------------
|
||||
StopSound()
|
||||
-----------------------
|
||||
*/
|
||||
public bool StopSound() {
|
||||
return soundFX.StopSound();
|
||||
}
|
||||
|
||||
/*
|
||||
-----------------------
|
||||
AttachToParent()
|
||||
-----------------------
|
||||
*/
|
||||
public void AttachToParent( Transform parent)
|
||||
{
|
||||
soundFX.AttachToParent( parent);
|
||||
}
|
||||
|
||||
/*
|
||||
-----------------------
|
||||
DetachFromParent()
|
||||
-----------------------
|
||||
*/
|
||||
public void DetachFromParent()
|
||||
{
|
||||
soundFX.DetachFromParent();
|
||||
}
|
||||
}
|
||||
|
||||
} // namespace OVR
|
||||
Reference in New Issue
Block a user