1、为九宫格抽奖游戏增加音效
1.1、创建音效管理类
@ccclass('AudioManager')
export class AudioManager extends Component {
public static instance: AudioManager;
_audioSource: AudioSource
clipMap: Map<string,AudioClip>
// 创建音效单例模式,以便后面调用
static getInstance(): AudioManager {
if(this.instance == null){
this.instance = new AudioManager();
}
return this.instance
}
constractor(){
}
start() {
// 初始化单例实例对象
AudioManager.instance = this
this._audioSource = this.node.getComponent(AudioSource)
}
update(deltaTime: number) {
}
}
1.2、播放音效
// 播放音效
playOneShot(sound: AudioClip | string, volume: number = 1.0) {
if (sound instanceof AudioClip) {
this._audioSource.playOneShot(sound, volume);
}
else {
resources.load(sound,AudioClip,(err, clip: AudioClip) => {
if (err) {
console.log(err);
}
else {
this._audioSource.playOneShot(clip, volume);
}
});
}
}
2.2、最终效果
2.3、所有源码地址一块学习的