Commit 867866bc authored by 范雪寒's avatar 范雪寒

feat:

parent 5507b240
...@@ -85,95 +85,102 @@ export default class SceneComponent extends MyCocosSceneComponent { ...@@ -85,95 +85,102 @@ export default class SceneComponent extends MyCocosSceneComponent {
this.step = tmpData.step || 0; this.step = tmpData.step || 0;
folderId = tmpData.folderId; folderId = tmpData.folderId;
this.folderId = tmpData.folderId; this.folderId = tmpData.folderId;
}
console.log('folderId = ' + folderId);
const resStr = await asyncCallNetworkApiGet('/api/syllabus/v1/list', {
pid: folderId
});
console.log('resStr = ' + resStr);
const res = JSON.parse(resStr);
this.rows = res.rows.filter(row => row.name != '指读索引');
}
asyncCountDown(node: cc.Node, time: number) { middleLayerComponent.setData('NJ_game_select: partnerData', {
return new Promise<void>((resolve, reject) => { skeJsonData: this.data.skeJsonData,
this.countDown(node, time, () => { texJsonData: this.data.texJsonData,
resolve(); texPngData: this.data.texPngData,
havePic: this.data.havePic
}); });
});
}
countDown(node: cc.Node, time: number, callback = null) {
const progressComponent = node.getComponent(cc.ProgressBar);
cc.tween(progressComponent)
.to(time, { progress: 0 })
.call(() => {
callback && callback();
})
.start();
} }
console.log('folderId = ' + folderId);
updateView() { const resStr = await asyncCallNetworkApiGet('/api/syllabus/v1/list', {
const page = cc.find('Canvas/step1/pad/mask/page'); pid: folderId
const pageUrl = this.data.pageArr[this.currentPageIdx].bgItem.url; });
this.setNodeSpirteFrameByUrl(pageUrl, page, () => { console.log('resStr = ' + resStr);
page.scale = page.parent.height / page.height; const res = JSON.parse(resStr);
}); this.rows = res.rows.filter(row => row.name != '指读索引');
}
const step1 = cc.find('Canvas/step1');
const step2 = cc.find('Canvas/step2');
if (this.step == 0) {
step1.active = true;
step2.active = false;
} else {
step1.active = false;
step2.active = true;
}
const partImg = cc.find('Canvas/step2/pad/mask/page'); asyncCountDown(node: cc.Node, time: number) {
this.setNodeSpirteFrameByUrl(pageUrl, partImg, () => { return new Promise<void>((resolve, reject) => {
// partImg.scale = partImg.parent.height / partImg.height; this.countDown(node, time, () => {
resolve();
}); });
});
}
countDown(node: cc.Node, time: number, callback = null) {
const progressComponent = node.getComponent(cc.ProgressBar);
cc.tween(progressComponent)
.to(time, { progress: 0 })
.call(() => {
callback && callback();
})
.start();
}
const book_left = cc.find('Canvas/step1/book_left'); updateView() {
const book_right = cc.find('Canvas/step1/book_right'); const page = cc.find('Canvas/step1/pad/mask/page');
if (this.currentPageIdx % 2 == 0) { const pageUrl = this.data.pageArr[this.currentPageIdx].bgItem.url;
book_left.active = true; this.setNodeSpirteFrameByUrl(pageUrl, page, () => {
book_right.active = false; page.scale = page.parent.height / page.height;
} else { });
book_left.active = false;
book_right.active = true; const step1 = cc.find('Canvas/step1');
} const step2 = cc.find('Canvas/step2');
if (this.step == 0) {
const bgNode = cc.find('Canvas/bg'); step1.active = true;
bgNode.color = cc.color(255, 255, 255); step2.active = false;
const startBg = this.data.pageArr[this.currentPageIdx].startBg; } else {
this.setNodeSpirteFrameByUrl(startBg, bgNode); step1.active = false;
step2.active = true;
} }
initListener() { const partImg = cc.find('Canvas/step2/pad/mask/page');
const btn_return = cc.find('Canvas/btn_return'); this.setNodeSpirteFrameByUrl(pageUrl, partImg, () => {
buttonOnClick(btn_return, () => { // partImg.scale = partImg.parent.height / partImg.height;
const middleLayer = cc.find('middleLayer'); });
if (middleLayer) {
middleLayer.getComponent('middleLayer') const book_left = cc.find('Canvas/step1/book_left');
.loadOnlineBundle('NJ_QianShuiTing'); const book_right = cc.find('Canvas/step1/book_right');
} if (this.currentPageIdx % 2 == 0) {
}, 0.6) book_left.active = true;
book_right.active = false;
} else {
book_left.active = false;
book_right.active = true;
} }
asyncPlayAudioByUrl(url: string): Promise<void> { const bgNode = cc.find('Canvas/bg');
return new Promise((resolve, reject) => { bgNode.color = cc.color(255, 255, 255);
this.playAudioByUrl(url, () => { const startBg = this.data.pageArr[this.currentPageIdx].startBg;
resolve(); this.setNodeSpirteFrameByUrl(startBg, bgNode);
}); }
});
}
setNodeSpirteFrameByUrl(url: string, node: cc.Node, callBack = null) { initListener() {
cc.assetManager.loadRemote(url, (err, tex) => { const btn_return = cc.find('Canvas/btn_return');
node.getComponent(cc.Sprite).spriteFrame = new cc.SpriteFrame(tex); buttonOnClick(btn_return, () => {
callBack && callBack(); const middleLayer = cc.find('middleLayer');
if (middleLayer) {
middleLayer.getComponent('middleLayer')
.loadOnlineBundle('NJ_QianShuiTing');
}
}, 0.6)
}
asyncPlayAudioByUrl(url: string): Promise < void> {
return new Promise((resolve, reject) => {
this.playAudioByUrl(url, () => {
resolve();
}); });
} });
}
setNodeSpirteFrameByUrl(url: string, node: cc.Node, callBack = null) {
cc.assetManager.loadRemote(url, (err, tex) => {
node.getComponent(cc.Sprite).spriteFrame = new cc.SpriteFrame(tex);
callBack && callBack();
});
}
} }
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