You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
play(sound: AudioClip | string, volume: number = 1.0)
方法后,每点击一个按钮都会自动播放音乐;
//AudioMgr.tsimport{Node,AudioSource,AudioClip,resources,director}from'cc';/** * @en * this is a sington class for audio play, can be easily called from anywhere in you project. * @zh * 这是一个用于播放音频的单件类,可以很方便地在项目的任何地方调用。 */exportclassAudioMgr{privatestatic_inst: AudioMgr;publicstaticgetinst(): AudioMgr{if(this._inst==null){this._inst=newAudioMgr();}returnthis._inst;}private_audioSource: AudioSource;constructor(){//@en create a node as audioMgr//@zh 创建一个节点作为 audioMgrletaudioMgr=newNode();audioMgr.name='__audioMgr__';//@en add to the scene.//@zh 添加节点到场景director.getScene().addChild(audioMgr);//@en make it as a persistent node, so it won't be destroied when scene change.//@zh 标记为常驻节点,这样场景切换的时候就不会被销毁了director.addPersistRootNode(audioMgr);//@en add AudioSource componrnt to play audios.//@zh 添加 AudioSource 组件,用于播放音频。this._audioSource=audioMgr.addComponent(AudioSource);//防止其他按钮点击时自动播放?this._audioSource.playOnAwake=false;}publicgetaudioSource(){returnthis._audioSource;}/** * @en * play short audio, such as strikes,explosions * @zh * 播放短音频,比如 打击音效,爆炸音效等 * @param sound clip or url for the audio * @param volume */playOneShot(sound: AudioClip|string,volume: number=1.0){if(soundinstanceofAudioClip){this._audioSource.playOneShot(sound,volume);}else{resources.load(sound,(err,clip: AudioClip)=>{if(err){console.log(err);}else{this._audioSource.playOneShot(clip,volume);}});}}/** * @en * play long audio, such as the bg music * @zh * 播放长音频,比如 背景音乐 * @param sound clip or url for the sound * @param volume */play(sound: AudioClip|string,volume: number=1.0){if(soundinstanceofAudioClip){this._audioSource.stop();this._audioSource.clip=sound;this._audioSource.play();this.audioSource.volume=volume;}else{resources.load(sound,(err,clip: AudioClip)=>{if(err){console.log(err);}else{this._audioSource.stop();this._audioSource.clip=clip;this._audioSource.play();this.audioSource.volume=volume;}});}}/** * stop the audio play */stop(){this._audioSource.stop();}/** * pause the audio play */pause(){this._audioSource.pause();}/** * resume the audio play */resume(){this._audioSource.play();}}
The text was updated successfully, but these errors were encountered:
https://docs.cocos.com/creator/3.8/manual/zh/audio-system/audioExample.html
这里面的代码若没有
只要调用了
方法后,每点击一个按钮都会自动播放音乐;
The text was updated successfully, but these errors were encountered: