Commit bff22858 authored by Tt's avatar Tt

fabu

parent 5cb77a3c
{"ver":"1.1.2","uuid":"c35bb2f6-f24a-4850-ae44-643f2fdc7541","isBundle":false,"bundleName":"","priority":1,"compressionType":{},"optimizeHotUpdate":{},"inlineSpriteFrames":{},"isRemoteBundle":{"ios":false,"android":false},"subMetas":{}}
\ No newline at end of file
{
"ver": "1.1.2",
"uuid": "c35bb2f6-f24a-4850-ae44-643f2fdc7541",
"isBundle": false,
"bundleName": "",
"priority": 1,
"compressionType": {},
"optimizeHotUpdate": {},
"inlineSpriteFrames": {},
"isRemoteBundle": {
"ios": false,
"android": false
},
"subMetas": {}
}
\ No newline at end of file
......@@ -40,6 +40,10 @@ export default class NewClass extends MyCocosSceneComponent {
this.initView();
this.initEvent();
}
protected onDestroy(): void {
cc.Tween.stopAll();
this.unscheduleAllCallbacks();
}
_cantouch = null;
initData() {
......@@ -68,9 +72,7 @@ export default class NewClass extends MyCocosSceneComponent {
this.robotPoint = 0;
this.turnRobot = Math.random() < 0.5;
this.initChess();
setTimeout(() => {
this.startTouzi();
}, 2100);
this.scheduleOnce(this.startTouzi, 2.1);
}
onSpeakScueess() {
//执行后续的动作。
......@@ -177,7 +179,7 @@ export default class NewClass extends MyCocosSceneComponent {
}
return
}
setTimeout(() => {
this.scheduleOnce(() => {
let cell = map[this.playerPoint];
let val = cell.value;
let type = Number(cell.type);
......@@ -186,9 +188,7 @@ export default class NewClass extends MyCocosSceneComponent {
pg.event.emit("speak_open", cell)
break;
case CELLTYPE.DELAY_TIME:
setTimeout(() => {
this.turnNext();
}, 5000);
this.scheduleOnce(this.turnNext, 5);
break;
case CELLTYPE.MOVE_ADD:
this.moveChess(Number(val)).then(() => {
......@@ -211,7 +211,7 @@ export default class NewClass extends MyCocosSceneComponent {
this.turnNext();
break;
}
}, 100);
}, 0.1)
}
//-----------------------------TOUZI-------------------------------
initTouzi() {
......@@ -224,7 +224,7 @@ export default class NewClass extends MyCocosSceneComponent {
this.stopTouzi();
}
lastPointId: number;
stopTouzi(runNum = 0) {
stopTouzi() {
pg.audio.stopAudio(this.touziAudio);
let touzi_ani = pg.view.find(this, "touzi_ani");
let icon = pg.view.find(touzi_ani, "icon");
......@@ -233,12 +233,15 @@ export default class NewClass extends MyCocosSceneComponent {
let btn_stop = pg.view.find(touzi_ani, "btn_stop");
pg.view.visible(btn_stop, false);
this.lastPointId = this.playerPoint + 1;
if (!runNum) {
runNum = 1 + Math.floor(Math.random() * 6);
if (this.turnRobot) runNum = 1 + Math.floor(Math.random() * 5);
let runNum = 1;
let rand = Math.random();
if (this.turnRobot) {
runNum = 1 + Math.floor(rand * 5);
} else {
runNum = 1 + Math.floor(rand * 6);
}
pg.view.visible(hand, false);
clearTimeout(this.stopHandTimer);
this.unschedule(this.handVisible);
touzi.stopAni(runNum).then(() => {
pg.view.visible(touzi_ani, false);
pg.event.emit("player_point_update", { isRobot: this.turnRobot, num: runNum });
......@@ -247,7 +250,6 @@ export default class NewClass extends MyCocosSceneComponent {
})
})
}
private stopHandTimer: number;
private touziAudio: number;
startTouzi() {
let touzi_ani = pg.view.find(this, "touzi_ani");
......@@ -255,22 +257,24 @@ export default class NewClass extends MyCocosSceneComponent {
let touzi = icon.getComponent("touzi");
let hand = pg.view.find(touzi_ani, "hand");
let btn_stop = pg.view.find(touzi_ani, "btn_stop");
pg.view.visible(btn_stop, true);
pg.view.visible(touzi_ani, true);
touzi.startAni();
if (this.turnRobot) {
setTimeout(() => {
this.stopTouzi();
}, 300 + Math.random() * 200);
this.scheduleOnce(this.stopTouzi, 1);
} else {
this.stopHandTimer = setTimeout(() => {
pg.view.visible(hand, true);
}, 5000);
pg.view.visible(btn_stop, true);
this.scheduleOnce(this.handVisible, 5);
}
pg.hw.playLocalAudio("touzi", true).then((id: number) => {
this.touziAudio = id;
})
}
handVisible() {
let touzi_ani = pg.view.find(this, "touzi_ani");
let hand = pg.view.find(touzi_ani, "hand");
pg.view.visible(hand, true);
}
//----------------------------OVER-------------------
gameOver() {
let state = pg.view.find(this, "state");
......@@ -285,11 +289,11 @@ export default class NewClass extends MyCocosSceneComponent {
pg.view.visible(bg_win, false);
pg.view.visible(bg_lose, true);
}
setTimeout(() => {
this.scheduleOnce(() => {
pg.view.visible(bg_win, false);
pg.view.visible(bg_lose, false);
pg.event.emit("game_over");
}, 5000);
}, 5)
// onHomeworkFinish最后需要添加作业完成
onHomeworkFinish();
}
......
This diff is collapsed.
{
"ver": "1.0.8",
"uuid": "408a67f8-65fa-4cf1-8cf2-83e20e1a0fd5",
"isPlugin": false,
"loadPluginInWeb": true,
"loadPluginInNative": true,
"loadPluginInEditor": false,
"subMetas": {}
}
\ No newline at end of file
......@@ -23,6 +23,10 @@ export default class NewClass extends cc.Component {
// LIFE-CYCLE CALLBACKS:
onLoad() {
}
protected onDestroy(): void {
cc.Tween.stopAll();
this.unscheduleAllCallbacks();
}
private lastPoints: Array<Point>;
run(points: Array<Point>) {
return new Promise((resolve, reject) => {
......@@ -36,7 +40,7 @@ export default class NewClass extends cc.Component {
let pos = posArray[i];
movementList.push({
id: i,
time: 0.2,
time: 0.4,
x: pos.x,
y: pos.y,
audionode: "star"
......
......@@ -18,26 +18,27 @@ export default class NewClass extends cc.Component {
// LIFE-CYCLE CALLBACKS:
private aning;
onLoad() {
this.showAni();
this.aning = false;
}
protected onDestroy(): void {
cc.Tween.stopAll();
this.unscheduleAllCallbacks();
}
showAni() {
if (this.aning) return;
if (this.node && this.node.active) {
this.node.x += 400;
this.node.y -= 200;
cc.tween(this.node).by(0.3, { x: -400, y: 200 }).call(() => {
setTimeout(() => {
this.showAni();
}, 1500);
}).start();
} else {
setTimeout(() => {
this.aning = true;
cc.tween(this.node).by(0.3, { x: -400, y: 200 }).delay(1.5).call(() => {
this.aning = false;
this.showAni();
}, 100);
}).start();
}
}
update(dt) {
this.showAni();
}
}
......@@ -48,9 +48,7 @@ class Movement {
this.loadCCNode(tween, moment);
});
tween.call(() => {
setTimeout(() => {
resolve('');
}, 0);
setTimeout(() => { resolve(''); }, 0);
})
tween.start();
});
......
......@@ -225,13 +225,11 @@ let pg = {
let spriteFrame = new cc.SpriteFrame(texture);
component.spriteFrame = spriteFrame;
node.net_url = res;
// setTimeout(() => {
if (!cc.isValid(node)) return pg.logger.i("节点已销毁");
if (!node) return pg.logger.w("节点已销毁");
node.width = w;
node.height = h;
node.active = true;
// }, 30);
resolve({ w: nw, h: nh });
})
})
......
......@@ -51,6 +51,10 @@ export default class NewClass extends cc.Component {
})
}
protected onDestroy(): void {
cc.Tween.stopAll();
this.unscheduleAllCallbacks();
}
private tryCount: number;
private val: string;
open(cell) {
......@@ -86,7 +90,7 @@ export default class NewClass extends cc.Component {
pg.view.visible(this.btn_audio_stop, false);
let win: any = window;
if (!win.courseware) {
setTimeout(() => {
this.scheduleOnce(() => {
let data = {
"dtLastResponse": "2021-09-17 13:36:26:109",
"refText": "I haven't found anything out about him yet.",
......@@ -108,7 +112,7 @@ export default class NewClass extends cc.Component {
"applicationId": "154838659000009e"
};
this.onRealStop(data.result.overall);
}, 100);
}, 0.1)
} else {
win.courseware && win.courseware.stopTest((data: any) => {
data = JSON.parse(data);
......@@ -118,44 +122,43 @@ export default class NewClass extends cc.Component {
}
onRealStop(score) {
pg.view.playDBAnimation(this.speak_ske, "newAnimation", 1);
pg.view.visible(this.text_tip, false);
pg.view.visible(this.btn_audio_start, false);
pg.view.visible(this.btn_audio_stop, false);
pg.view.visible(this.speak_ske, false);
pg.view.visible(this.bg_goodjob, false);
pg.view.visible(this.bg_tryagain, false);
setTimeout(() => {
// let score = Math.random() * 100 - 50;
pg.hw.playLocalAudio("goodjob");
let db = pg.view.playDBAnimation(this.speak_ske, "newAnimation", 1);
db.once(dragonBones.EventObject.COMPLETE, () => {
pg.view.visible(this.text_tip, false);
pg.view.visible(this.btn_audio_start, false);
pg.view.visible(this.btn_audio_stop, false);
pg.view.visible(this.speak_ske, false);
pg.view.visible(this.bg_goodjob, false);
pg.view.visible(this.bg_tryagain, false);
if (score > 50) {
pg.hw.playLocalAudio("goodjob");
pg.view.visible(this.bg_goodjob, true);
setTimeout(() => {
this.scheduleOnce(() => {
this.close();
pg.event.emit("speak_success");
}, 2000);
}, 2.5)
} else {
if (this.tryCount >= 1) {
pg.view.visible(this.bg_tryagain, true);
pg.hw.playLocalAudio("tryagain");
this.tryCount++;
//需要处理提供两次机会。重置一次到open状态
setTimeout(() => {
this.scheduleOnce(() => {
this.close();
pg.event.emit("speak_fail");
}, 2000);
}, 2.5)
} else {
pg.view.visible(this.bg_tryagain, true);
pg.hw.playLocalAudio("tryagain");
this.tryCount++;
setTimeout(() => {
this.scheduleOnce(() => {
this.open(null);
}, 1000);
}, 2.5)
}
}
}, 300);
})
}
start() {
......
......@@ -25,6 +25,10 @@ export default class NewClass extends cc.Component {
this.onGameOver();
})
}
protected onDestroy(): void {
cc.Tween.stopAll();
this.unscheduleAllCallbacks();
}
initView() {
let panel_gray = pg.view.find(this, "panel_gray");
let btn_start = pg.view.find(this, "btn_start");
......@@ -42,11 +46,15 @@ export default class NewClass extends cc.Component {
pg.view.visible(panel_gray, true);
pg.view.visible(btn_start, false);
pg.view.visible(bg_vs, true);
if (bg_vs) {
bg_vs.y = 1000;
cc.tween(bg_vs).to(0.2, { y: 0 }).start();
}
pg.event.emit("game_start");
setTimeout(() => {
this.scheduleOnce(() => {
pg.view.visible(bg_vs, false);
pg.view.visible(panel_gray, false);
}, 2000);
}, 2)
}
onTouchRestart() {
pg.hw.playLocalAudio("vs");
......@@ -58,12 +66,12 @@ export default class NewClass extends cc.Component {
pg.view.visible(btn_start, false);
pg.view.visible(btn_restart, false);
pg.view.visible(bg_vs, true);
setTimeout(() => {
this.scheduleOnce(() => {
pg.view.visible(bg_vs, false);
pg.view.visible(panel_gray, false);
pg.view.visible(btn_restart, false);
pg.event.emit("game_start");
}, 2000);
}, 2)
}
onGameOver() {
let panel_gray = pg.view.find(this, "panel_gray");
......
......@@ -45,6 +45,10 @@ export default class NewClass extends cc.Component {
this.bg_dice5 = pg.view.find(this, "bg_dice5");
this.bg_dice6 = pg.view.find(this, "bg_dice6");
}
protected onDestroy(): void {
cc.Tween.stopAll();
this.unscheduleAllCallbacks();
}
private playing: boolean;
private num: number;
startAni() {
......@@ -55,9 +59,9 @@ export default class NewClass extends cc.Component {
return new Promise((resolve, reject) => {
this.num = number;
this.playing = false;
setTimeout(() => {
this.scheduleOnce(() => {
resolve('');
}, 1500);
}, 1.5)
});
}
start() {
......
assets/NS02/textures/text_tip.png

10.6 KB | W: | H:

assets/NS02/textures/text_tip.png

7.96 KB | W: | H:

assets/NS02/textures/text_tip.png
assets/NS02/textures/text_tip.png
assets/NS02/textures/text_tip.png
assets/NS02/textures/text_tip.png
  • 2-up
  • Swipe
  • Onion skin
......@@ -18,12 +18,12 @@
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 698,
"height": 129,
"offsetX": -0.5,
"offsetY": -0.5,
"trimX": 124,
"trimY": 1,
"width": 449,
"height": 128,
"rawWidth": 698,
"rawHeight": 129,
"borderTop": 0,
......
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