Commit 0c6a9189 authored by asdf's avatar asdf

播放音频开关改为计数

parent 22f7e4bd
...@@ -26,7 +26,7 @@ cc.Class({ ...@@ -26,7 +26,7 @@ cc.Class({
if (GameData.isMoving) { if (GameData.isMoving) {
return; return;
} }
if (GameData.isAudio) { if (GameData.audioCount != 0) {
return; return;
} }
if (GameData.currOptionIndex == this.index) { if (GameData.currOptionIndex == this.index) {
...@@ -108,17 +108,17 @@ cc.Class({ ...@@ -108,17 +108,17 @@ cc.Class({
}, },
playAudioRight() { playAudioRight() {
GameData.isAudio = true; GameData.audioCount++;
let id = cc.audioEngine.play(this.audRight, false, 1); let id = cc.audioEngine.play(this.audRight, false, 1);
cc.audioEngine.setFinishCallback(id, () => { cc.audioEngine.setFinishCallback(id, () => {
GameData.isAudio = false; GameData.audioCount--;
}) })
}, },
playAudioWrong() { playAudioWrong() {
GameData.isAudio = true; GameData.audioCount++;
let id = cc.audioEngine.play(this.audWrong, false, 1); let id = cc.audioEngine.play(this.audWrong, false, 1);
cc.audioEngine.setFinishCallback(id, () => { cc.audioEngine.setFinishCallback(id, () => {
GameData.isAudio = false; GameData.audioCount--;
}) })
}, },
// update (dt) {}, // update (dt) {},
......
...@@ -141,7 +141,7 @@ cc.Class({ ...@@ -141,7 +141,7 @@ cc.Class({
if (this.isGray) { if (this.isGray) {
return; return;
} }
if (GameData.isAudio) { if (GameData.audioCount != 0) {
return; return;
} }
this.showQipao(); this.showQipao();
...@@ -159,7 +159,7 @@ cc.Class({ ...@@ -159,7 +159,7 @@ cc.Class({
}, },
playAudioOption(showNext) { playAudioOption(showNext) {
GameData.isAudio = true; GameData.audioCount++;
let url = this.data.optionAudio; let url = this.data.optionAudio;
// url = 'http://127.0.0.1/iamflying.mp3'; // url = 'http://127.0.0.1/iamflying.mp3';
cc.assetManager.loadRemote(url, null, (err, clip) => { cc.assetManager.loadRemote(url, null, (err, clip) => {
...@@ -169,7 +169,10 @@ cc.Class({ ...@@ -169,7 +169,10 @@ cc.Class({
} }
let id = cc.audioEngine.play(clip, false, 1); let id = cc.audioEngine.play(clip, false, 1);
cc.audioEngine.setFinishCallback(id, () => { cc.audioEngine.setFinishCallback(id, () => {
GameData.isAudio = false; if(!cc.isValid(this)){
return;
}
GameData.audioCount--;
if (showNext) { if (showNext) {
this.scene.showNext(this.index); this.scene.showNext(this.index);
} }
......
...@@ -4,7 +4,7 @@ cc.Class({ ...@@ -4,7 +4,7 @@ cc.Class({
extends: cc.Component, extends: cc.Component,
properties: { properties: {
audOver:cc.AudioClip, audOver: cc.AudioClip,
}, },
// LIFE-CYCLE CALLBACKS: // LIFE-CYCLE CALLBACKS:
...@@ -33,11 +33,11 @@ cc.Class({ ...@@ -33,11 +33,11 @@ cc.Class({
}, },
playAudioOver() { playAudioOver() {
GameData.isAudio = true; GameData.audioCount++;
let id = cc.audioEngine.play(this.audOver, false, 1); let id = cc.audioEngine.play(this.audOver, false, 1);
cc.audioEngine.setFinishCallback(id, () => { cc.audioEngine.setFinishCallback(id, () => {
GameData.isAudio = false; GameData.audioCount--;
}) })
}, },
// update (dt) {}, // update (dt) {},
}); });
...@@ -37,6 +37,7 @@ cc.Class({ ...@@ -37,6 +37,7 @@ cc.Class({
initSceneData() { initSceneData() {
this._resList = []; this._resList = [];
window.GameData = {}; window.GameData = {};
GameData.audioCount = 0;
}, },
_designSize: null, // 设计分辨率 _designSize: null, // 设计分辨率
...@@ -186,16 +187,16 @@ cc.Class({ ...@@ -186,16 +187,16 @@ cc.Class({
playAudioEntrer() { playAudioEntrer() {
GameData.isAudio = true; GameData.audioCount++;
let id = cc.audioEngine.play(this.audEnter, false, 1); let id = cc.audioEngine.play(this.audEnter, false, 1);
cc.audioEngine.setFinishCallback(id, () => { cc.audioEngine.setFinishCallback(id, () => {
GameData.isAudio = false; GameData.audioCount--;
this.playAudioQuestion(); this.playAudioQuestion();
}) })
}, },
playAudioQuestion(isBtn) { playAudioQuestion(isBtn) {
GameData.isAudio = true; GameData.audioCount++;
let url = this.data.questionList[GameData.questionIndex].questionAudio; let url = this.data.questionList[GameData.questionIndex].questionAudio;
// url = 'http://127.0.0.1/iamflying.mp3'; // url = 'http://127.0.0.1/iamflying.mp3';
cc.assetManager.loadRemote(url, null, (err, clip) => { cc.assetManager.loadRemote(url, null, (err, clip) => {
...@@ -206,7 +207,7 @@ cc.Class({ ...@@ -206,7 +207,7 @@ cc.Class({
} }
let id = cc.audioEngine.play(clip, false, 1); let id = cc.audioEngine.play(clip, false, 1);
cc.audioEngine.setFinishCallback(id, () => { cc.audioEngine.setFinishCallback(id, () => {
GameData.isAudio = false; GameData.audioCount--;
if (!isBtn) { if (!isBtn) {
this.showRandomQuestion(); this.showRandomQuestion();
} }
...@@ -214,17 +215,17 @@ cc.Class({ ...@@ -214,17 +215,17 @@ cc.Class({
}); });
}, },
playAudioMove() { playAudioMove() {
GameData.isAudio = true; GameData.audioCount++;
let id = cc.audioEngine.play(this.audMove, false, 1); let id = cc.audioEngine.play(this.audMove, false, 1);
cc.audioEngine.setFinishCallback(id, () => { cc.audioEngine.setFinishCallback(id, () => {
GameData.isAudio = false; GameData.audioCount--;
}) })
}, },
playAudioMerge() { playAudioMerge() {
GameData.isAudio = true; GameData.audioCount++;
let id = cc.audioEngine.play(this.audMerge, false, 1); let id = cc.audioEngine.play(this.audMerge, false, 1);
cc.audioEngine.setFinishCallback(id, () => { cc.audioEngine.setFinishCallback(id, () => {
GameData.isAudio = false; GameData.audioCount--;
}) })
}, },
...@@ -305,7 +306,10 @@ cc.Class({ ...@@ -305,7 +306,10 @@ cc.Class({
}, },
onTurnLast() { onTurnLast() {
if (GameData.isAudio) { if (GameData.isMoving) {
return;
}
if (GameData.audioCount != 0) {
return; return;
} }
GameData.questionIndex--; GameData.questionIndex--;
...@@ -315,7 +319,10 @@ cc.Class({ ...@@ -315,7 +319,10 @@ cc.Class({
this.playAudioQuestion(); this.playAudioQuestion();
}, },
onReplay() { onReplay() {
if (GameData.isAudio) { if (GameData.isMoving) {
return;
}
if (GameData.audioCount != 0) {
return; return;
} }
this.nodeDict.nodAnswerParent.destroyAllChildren(); this.nodeDict.nodAnswerParent.destroyAllChildren();
...@@ -324,7 +331,10 @@ cc.Class({ ...@@ -324,7 +331,10 @@ cc.Class({
this.startGame(); this.startGame();
}, },
onTurnNext() { onTurnNext() {
if (GameData.isAudio) { if (GameData.isMoving) {
return;
}
if (GameData.audioCount != 0) {
return; return;
} }
GameData.questionIndex++; GameData.questionIndex++;
...@@ -336,9 +346,10 @@ cc.Class({ ...@@ -336,9 +346,10 @@ cc.Class({
buttonListener(button) { buttonListener(button) {
if (button.node.name == 'btnTitle') { if (button.node.name == 'btnTitle') {
if (!GameData.isAudio) { if (GameData.audioCount != 0) {
this.playAudioQuestion(true); return;
} }
this.playAudioQuestion(true);
} else if (button.node.name == 'btnLast') { } else if (button.node.name == 'btnLast') {
this.onTurnLast(); this.onTurnLast();
} else if (button.node.name == 'btnReplay') { } else if (button.node.name == 'btnReplay') {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment