示例#1
0
        //加载声音
        private async ETTask <SoundData> LoadSound(string soundName)
        {
            ResourcesComponent resourcesComponent = Game.Scene.GetComponent <ResourcesComponent>();

            if (!abSounds.ContainsKey(soundName) || abSounds[soundName] == null)
            {
                await resourcesComponent.CacheBundleAsync(soundName);

                var prefab = UnityEngine.Object.Instantiate((GameObject)resourcesComponent.GetAsset(SoundPrefab));
                prefab.name = soundName;
                abSounds.Add(soundName, prefab.GetComponent <SoundData>());
                abSounds[soundName].GetAudio().clip = (AudioClip)resourcesComponent.GetAsset(soundName);
            }
            return(abSounds[soundName]);
        }