示例#1
0
    public void Init(Enums.SoundIndex soundIndex, bool IsLoop = false, float volume = 0.5f)
    {
        if (object.ReferenceEquals(soundPlayer, null))
        {
            soundPlayer = gameObject.AddComponent <AudioSource> ();
        }

        // TODO: disable play.
        soundPlayer.playOnAwake = false;

        // TODO: check loop.
        soundPlayer.loop = IsLoop;

        // TODO: update the volume
        soundPlayer.volume = volume;

        // TODO: don't play the sound.
        soundPlayer.Stop();

        if (object.ReferenceEquals(SoundSystems.Instance, null))
        {
            return;
        }

        var audioGet = SoundSystems.Instance.TryGetAudioClip(soundIndex);

        if (object.ReferenceEquals(audioGet, null))
        {
            return;
        }

        soundPlayer.clip = audioGet;
    }
示例#2
0
    /// <summary>
    /// Plaies the sound.
    /// </summary>
    /// <param name="soundIndex">Sound index.</param>
    public void PlaySound(Enums.SoundIndex soundIndex)
    {
        AudioClip audioFound;

        if (soundLibrary.TryGetValue((int)soundIndex, out audioFound))
        {
            SoundPlayer.PlayOneShot(audioFound);
        }
    }
示例#3
0
    public AudioClip TryGetAudioClip(Enums.SoundIndex index)
    {
        // TODO: Create the param return.
        AudioClip audioFound = null;

        // TODO: Get the param.
        soundLibrary.TryGetValue((int)index, out audioFound);

        // TODO: return.
        return(audioFound);
    }