音频控制

// 此类别集成MonoBehaviour
[System.Serializable] public class AudioData { public AUDIO_TYPE m_AudioType; public AudioClip m_Clip; }
public class AudioManager : MonoBehaviour
{
    public List<AudioData> m_SoundList;
    public List<AudioData> m_BgList;
}
using System;
using System.Collections.Generic;
using UnityEngine;


public class AudioControl : MonoBehaviour
{
    private Dictionary<AUDIO_TYPE, AudioClip> m_AudioList = new Dictionary<AUDIO_TYPE, AudioClip>();
    
    void Start()
    {
        
        AudioManager am = GameObject.FindObjectOfType<AudioManager>();
        for (int i = 0; i < am.m_SoundList.Count; i++)
        {
            m_AudioList.Add(am.m_SoundList[i].m_AudioType, am.m_SoundList[i].m_Clip);
        }

        Destroy(GameObject.FindObjectOfType<AudioManager>().gameObject);

        
    }

    void OnGUI()
    {
        if (GUILayout.Button("播放1"))
        {
            Camera.main.GetComponent<AudioSource>().clip = m_AudioList[AUDIO_TYPE.AT_SCENE_BGM];
            Camera.main.GetComponent<AudioSource>().Play();
        }
        if (GUILayout.Button("播放2"))
        {
            Camera.main.GetComponent<AudioSource>().clip = m_AudioList[AUDIO_TYPE.AT_OPEN_UI];
            Camera.main.GetComponent<AudioSource>().Play();
        }
        if (GUILayout.Button("播放3"))
        {
            Camera.main.GetComponent<AudioSource>().clip = m_AudioList[AUDIO_TYPE.AT_UI_OPEN_CLOSE];
            Camera.main.GetComponent<AudioSource>().Play();
        }
        if (GUILayout.Button("播放4"))
        {
            Camera.main.GetComponent<AudioSource>().clip = m_AudioList[AUDIO_TYPE.AT_UI_WIDGET];
            Camera.main.GetComponent<AudioSource>().Play();
        }
    }
}

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注