加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
用图说不清,大概是动态配乐的敲门砖。
也是本着要做就做顶级技术的想法开始瞎捅咕
现在该方法 根据传参
渐出渐入切至BGM内的某一段中,播放结束后再接回原来的背景乐。
/**截取一段BGM播放*/ /**记录*/ var movementCode=0 /**是否在播放*/ var movebool=false /** * name bgm对应文件夹中文件名 * volume pitch pan 音量 音调 音色 * pos 音频从第几秒开始 * i 淡入秒 * t 淡入后播放秒 * o 淡出秒 * */ _.playMent=function (name,volume,pitch,pan,pos,i,t,o) { /**存入背景音*/ if(!movebool) {$gameSystem.saveBgm();} AudioManager.fadeOutBgm(1.2) /**在背景音淡出后 播放音效*/ setTimeout(function () { movebool=true AudioManager.stopBgm() AudioManager.playBgm({name: name, pan: pan, pitch: pitch, volume: volume},pos) AudioManager.fadeInBgm(i) movementCode++ let index=movementCode /**淡出*/ setTimeout(function () { /**是最后的*/ if(index==movementCode) { AudioManager.fadeOutBgm(o); setTimeout(function () { /**还原背景音*/ $gameSystem.replayBgm(); AudioManager.fadeInBgm(4); movebool = false }, (o) * 950); } },(t+i)*1000); },1140); }
/**截取一段BGM播放*/
/**记录*/
var movementCode=0
/**是否在播放*/
var movebool=false
/**
* name bgm对应文件夹中文件名
* volume pitch pan 音量 音调 音色
* pos 音频从第几秒开始
* i 淡入秒
* t 淡入后播放秒
* o 淡出秒
* */
_.playMent=function (name,volume,pitch,pan,pos,i,t,o) {
/**存入背景音*/
if(!movebool) {$gameSystem.saveBgm();}
AudioManager.fadeOutBgm(1.2)
/**在背景音淡出后 播放音效*/
setTimeout(function () {
movebool=true
AudioManager.stopBgm()
AudioManager.playBgm({name: name, pan: pan, pitch: pitch, volume: volume},pos)
AudioManager.fadeInBgm(i)
movementCode++
let index=movementCode
/**淡出*/
setTimeout(function () {
/**是最后的*/
if(index==movementCode) {
AudioManager.fadeOutBgm(o);
setTimeout(function () {
/**还原背景音*/
$gameSystem.replayBgm();
AudioManager.fadeInBgm(4);
movebool = false
}, (o) * 950);
}
},(t+i)*1000);
},1140);
}
|