Exemple #1
0
    static public void PlaySound(SOUND_ID id, bool bLoop)
    {
        if (PlayerPrefs.GetInt("settingSound") == 1)
        {
            return;
        }
        if (!m_bSoundInited)
        {
            InitPlaySound();
        }

        string szName = GlobalInstanceFunction.Instance.GetAssetsName((int)id, AssetLoader.EAssetType.ASSET_SOUND);

        if (!GlobalInstanceFunction.Instance.IsValidName(szName))
        {
            return;
        }

        for (int iLoop = 0; iLoop < m_SoundPlayers.Length; ++iLoop)
        {
            if (m_SoundPlayers[iLoop] != null && m_SoundPlayers[iLoop].szName == szName)
            {
                if (null != m_SoundPlayers[iLoop].SoundPlayer)
                {
                    m_SoundPlayers[iLoop].SoundPlayer.volume = SOUNDVOLME;
                    m_SoundPlayers[iLoop].SoundPlayer.loop   = bLoop;
                    m_SoundPlayers[iLoop].SoundPlayer.Play();
                    return;
                }
            }
        }

        SoundAssetMgr.LoadAsset(szName, new ParamData(bLoop));
    }
Exemple #2
0
    static public void PlaySoundCallBack(AssetBundle AssetData, ParamData paramData)
    {
        if (null == AssetData || null == AssetData.mainAsset)
        {
            SoundAssetMgr.DeleteAsset(AssetData, true);
            return;
        }

        AudioClip     SoundObj     = AssetData.mainAsset as AudioClip;
        SoundPlayInfo MaxTimeSound = GetMaxTimeInfo();

        if (null != SoundObj)
        {
            if (null != MaxTimeSound.SoundPlayer)
            {
                MaxTimeSound.SoundPlayer.Stop();
            }

            if (null != MaxTimeSound)
            {
                SoundAssetMgr.DeleteAsset(MaxTimeSound.szName, true);
            }

            if (null != paramData)
            {
                MaxTimeSound.szName             = paramData.szAssetName;
                MaxTimeSound.fTime              = Time.realtimeSinceStartup;
                MaxTimeSound.SoundObj           = SoundObj;
                MaxTimeSound.SoundPlayer.clip   = SoundObj;
                MaxTimeSound.SoundPlayer.volume = SOUNDVOLME;
                MaxTimeSound.SoundPlayer.loop   = paramData.bParam;
                MaxTimeSound.SoundPlayer.Play();
            }
        }
    }