diff --git a/assets/OP_18/scene/OP_18.js b/assets/OP_18/scene/OP_18.js index 78f3aa58ea93559c0e882e461206911f03b0f580..c97860cb9d3d7ada385eb22a55ac353d46a773e5 100644 --- a/assets/OP_18/scene/OP_18.js +++ b/assets/OP_18/scene/OP_18.js @@ -1,5 +1,4 @@ -import { asyncDelay, delayCall, getSprNode, getSprNodeByUrl, onHomeworkFinish, playAudio, playAudioByUrl } from "../script/util"; -import { defaultData } from "../script/defaultData"; +import { asyncDelay, delayCall, getSprNode, getSprNodeByUrl, onHomeworkFinish, playAudio, playAudioByUrl } from "../script/OP_18_util"; cc.Class({ diff --git a/assets/OP_18/scene/OP_18_old.js b/assets/OP_18/scene/OP_18_old.js deleted file mode 100644 index eb71675c7b08915dd5ffd810045bc8f965d1dbcf..0000000000000000000000000000000000000000 --- a/assets/OP_18/scene/OP_18_old.js +++ /dev/null @@ -1,4239 +0,0 @@ -import { asyncDelay, getSprNode, getSprNodeByUrl, onHomeworkFinish, playAudio, playAudioByUrl } from "../script/util"; -import { defaultData } from "../script/defaultData"; - -cc.Class({ - - extends: cc.Component, - - properties: { - }, - - // 生命周期 onLoad - onLoad() { - this._timeoutIds = []; - this._intervalIds = []; - this.initSceneData(); - this.initSize(); - }, - - _imageResList: null, - _audioResList: null, - _animaResList: null, - initSceneData() { - this._imageResList = []; - this._audioResList = []; - this._animaResList = []; - }, - - _designSize: null, // 设计分辨率 - _frameSize: null, // å±å¹•分辨率 - _mapScaleMin: null, // 场景ä¸å¸¸ç”¨ç¼©æ”¾ï¼ˆå–大值) - _mapScaleMax: null, // 场景ä¸å¸¸ç”¨ç¼©æ”¾ï¼ˆå–å°å€¼ï¼‰ - _cocosScale: null, // cocos 自缩放 (较少用到) - initSize() { - // 注æ„cc.winSizeåªæœ‰åœ¨é€‚é…åŽ(修改fitHeight/fitWidthåŽ)æ‰èƒ½èŽ·å–到æ£ç¡®çš„值,å› æ¤ä½¿ç”¨cc.getFrameSize()æ¥èŽ·å–åˆå§‹çš„å±å¹•å¤§å° - let screen_size = cc.view.getFrameSize().width / cc.view.getFrameSize().height - let design_size = cc.Canvas.instance.designResolution.width / cc.Canvas.instance.designResolution.height - let f = screen_size >= design_size - - cc.Canvas.instance.fitHeight = f - cc.Canvas.instance.fitWidth = !f - - const frameSize = cc.view.getFrameSize(); - this._frameSize = frameSize; - - this._designSize = cc.view.getDesignResolutionSize(); - - let sx = cc.winSize.width / frameSize.width; - let sy = cc.winSize.height / frameSize.height; - this._cocosScale = Math.min(sx, sy); - - sx = frameSize.width / this._designSize.width; - sy = frameSize.height / this._designSize.height; - this._mapScaleMin = Math.min(sx, sy) * this._cocosScale; - this._mapScaleMax = Math.max(sx, sy) * this._cocosScale; - - this.canvas = cc.find('Canvas'); - }, - - - // 生命周期 start - start() { - let getData = this.getData.bind(this); - if (window && window.courseware) { - getData = window.courseware.getData; - } - - getData((data) => { - console.log('data:', data); - this.data = data || this.getDefaultData(); - - console.log('this.data:', this.data); - - this.data = JSON.parse(JSON.stringify(this.data)) - this.preloadItem() - }) - }, - - getData(func) { - // if (window && window.courseware) { - // window.courseware.getData(func, 'scene'); - // return; - // } - - // const middleLayer = cc.find('middleLayer'); - // if (middleLayer) { - // const middleLayerComponent = middleLayer.getComponent('middleLayer'); - // middleLayerComponent.getData(func); - // return; - // } - - func(this.getDefaultData()); - }, - - getDefaultData() { - return defaultData; - }, - - preloadItem() { - this.addPreloadImage(); - this.addPreloadAudio(); - this.addPreloadAnima(); - this.preload(); - }, - - - addPreloadImage() { - - this._imageResList.push({ url: this.data.dot_big_1_url || '' }); - this._imageResList.push({ url: this.data.dot_big_2_url || '' }); - this._imageResList.push({ url: this.data.dot_small_1_url || '' }); - this._imageResList.push({ url: this.data.dot_small_2_url || '' }); - this._imageResList.push({ url: this.data.bg_pic_url || '' }); - - - - }, - - addPreloadAudio() { - - if (this.data) { - this._audioResList.push({ url: this.data.write_big_0_audio_url || '' }); - this._audioResList.push({ url: this.data.write_big_1_audio_url || '' }); - this._audioResList.push({ url: this.data.write_big_2_audio_url || '' }); - this._audioResList.push({ url: this.data.write_small_0_audio_url || '' }); - this._audioResList.push({ url: this.data.write_small_1_audio_url || '' }); - this._audioResList.push({ url: this.data.write_small_2_audio_url || '' }); - this._audioResList.push({ url: this.data.finish_audio_url || '' }); - this._audioResList.push({ url: this.data.tip_audio_url || '' }); - } - }, - - addPreloadAnima() { - - const animArr = this.data.animArr; - for (let i=0; i<animArr.length; i++) { - this._animaResList.push({ url: animArr[i]?.skeJsonData?.url || '' }); - this._animaResList.push({ url: animArr[i]?.texJsonData?.url || '' }); - this._animaResList.push({ url: animArr[i]?.texPngData?.url || '' }); - } - }, - - preload() { - - const preloadArr = this._imageResList.concat(this._audioResList).concat(this._animaResList); - cc.assetManager.loadAny(preloadArr, null, null, (err, data) => { - - this.addServerListener(); - - - cc.debug.setDisplayStats(false); - }); - }, - - addServerListener() { - - if (window && window["air"]) { - - - // cc.find('Canvas').opacity = 0; - window.air.onCourseInScreen = (next) => { - // cc.find('Canvas').opacity = 255; - this.loadEnd(); - next(); - } - window.air.hideAirClassLoading(); - } else { - this.loadEnd(); - } - - - if (window.air) { - window.air.osmoHandwritingCallback = (data) => { - - if (!data) { - console.log('data is not exist!!!'); - return; - } - - console.log('osmoHandwritingCallback data: ', data); - - if (typeof (data) == 'string') { - console.log('data is string '); - const dataObj = JSON.parse(data); - - this.photoEnd(dataObj); - return; - } - - // 哲å¦é€»è¾‘ - this.photoEnd(data); - - } - } - - }, - - loadEnd() { - - console.log('loadEnd') - - this.initData(); - this.initAudio(); - this.initView(); - - - const node = cc.find('middleLayer/ConsoleNode/BtnOpen'); - if (node) { - node.opacity = 0; - } - // this.initListener(); - }, - - - step: null, - canTouch: null, - dataPool: null, - initData() { - // 所有全局å˜é‡ 默认都是null - - console.log(' canTouch = fasle 0'); - - this.canTouch = false; - this.step = 1; - this.dataPool = []; - }, - - audioBtn: null, - audioBegin: null, - audioTipArea: null, - audioTipLetter: null, - audioTipIcon: null, - audioTipSuccess: null, - - audioTipError: null, - audioTipNotFill: null, - audioTipFillWrong: null, - audioOsmoTip: null, - audioRight: null, - initAudio() { - const audioNode = cc.find('Canvas/res/audio'); - - const getAudioByResName = (resName) => { - return audioNode.getChildByName(resName).getComponent(cc.AudioSource); - } - - this.audioBtn = getAudioByResName('btn'); - - this.audioBegin = getAudioByResName('begin'); - - - - this.audioTip1 = getAudioByResName('tip_1'); - this.audioTip2 = getAudioByResName('tip_2'); - this.audioTip3 = getAudioByResName('tip_3'); - - this.audioOsmoTip = getAudioByResName('osmo_tip'); - this.audioRight = getAudioByResName('right'); - - this.audioDefault = getAudioByResName('default'); - - - }, - - - - //调起检测 - startTesting() { - - // this.getPhotoData((data) => { - // this.photoEnd(data); - // }); - // return; - - const cw = window.courseware; - if (!cw || !cw.openOsmoHandwriting) { - - console.log('cw.openOsmoHandwriting not exist'); - return; - } - - this.ques_region = [ - 0, 0.077, - 1, 0.077, - 1, 0.331, - 0, 0.331, - ] - - const para = { - "library_id": "iplayabc", - 'page_id': 5, - 'book_id': 'opw1', - 'part_name': 'c', - 'is_hand_writing': true, - 'is_line_link': false, - 'ques_region' : [ - 0, 0.077, - 1, 0.077, - 1, 0.331, - 0, 0.331, - ] - } - cw.openOsmoHandwriting(para); - - - }, - - //ç»“æŸæ£€æµ‹ - endTesting() { - const cw = window.courseware; - if (!cw || !cw.closeOsmoHandwriting) { - - return; - } - cw.closeOsmoHandwriting(); - // this.isTesting = false; - }, - - isTesting: null, - initTestingListener() { - - if (window.air) { - window.air.osmoCallback = (res) => { - // 哲å¦é€»è¾‘ - console.log('initTestingListener res: ', res); - this.photoEnd(res); - } - } - - }, - - - initView() { - - this.initBg(); - - this.initLetterItem(); - - - - this.initWriteArea(false); - this.initWriteArea(true); - - this.initDebugLayer(); - - - this.initCatListener(); - - this.gameStart(); - - - - - - }, - - - - initCatListener() { - - const content = cc.find("Canvas/content"); - content.zIndex = 10; - - const catBox = cc.find("Canvas/content/catFrame/catBox") - catBox.on('touchstart', () => { - if (this.isPlayTip) { - return; - } - - if (!this.canTouch) { - return; - } - - - if (!this.data.tip_audio_url) { - return; - } - - - this.isPlayTip = true; - - this.playAni('begin', 0) - //æ’æ”¾å¼•导音频1 - - playAudioByUrl(this.data.tip_audio_url, () => { - - this.isPlayTip = false; - this.playAni('normal', 0); - - }) - - }) - }, - - - writeNodeArr: null, - initWriteArea(isSmall) { - - let writeBg; - if (isSmall) { - writeBg = this.itemBgSmall; - } else { - writeBg = this.itemBgBig; - } - - - const num = 7; - - const edge = 0.05; - const baseW = 132 - const baseX = 250; - const baseH = writeBg.height * 0.9; - - - const writeNodeArr = []; - - for (let i = 0; i < num; i++) { - - const writeNode = new cc.Node(); - writeNode.x = baseX + baseW * i; - // writeNode.y = -baseH / 2; - writeNode.width = baseW; - writeNode.height = baseH; - writeBg.addChild(writeNode); - - writeNode.hitCount = 0; - - - - writeNodeArr.push(writeNode); - } - - if (isSmall) { - this.writeNodeArr2 = writeNodeArr; - } else { - this.writeNodeArr1 = writeNodeArr; - } - }, - - - - maskNode: null, - initMask() { - - const maskNode = new cc.Node(); - maskNode.width = this.canvas.width; - maskNode.height = this.canvas.height; - maskNode.anchorX = 0.5; - maskNode.anchorY = 0.5; - const mask = maskNode.addComponent(cc.Graphics); - mask.fillColor = cc.Color.BLACK.setA(100); - mask.fillRect(-this.canvas.width / 2, -this.canvas.height / 2, this.canvas.width, this.canvas.height); - this.canvas.addChild(maskNode, 9); - - maskNode.addComponent(cc.BlockInputEvents); - maskNode.active = false; - this.maskNode = maskNode; - }, - - addDefaultMusic() { - // console.log(' in ') - // playAudio(this.audioDefault.clip, () => { - // console.log(' wusheng end'); - // }) - cc.audioEngine.play(this.audioDefault.clip, true, 0.8); - - }, - - - initBg() { - - const bg = new cc.Node(); - this.canvas.addChild(bg); - - getSprNodeByUrl(this.data.bg_pic_url, (spr) => { - // spr.node.parent = animNode.parent; - // spr.node.x = animNode.x; - // spr.node.y = animNode.y; - // spr.node.scale = animNode.scale; - - // console.log(' spr.node.width: ', spr.node.width) - // console.log(' spr.node.height: ', spr.node.height) - bg.width = spr.node.width; - bg.height = spr.node.height; - - spr.node.anchorX = 1; - spr.node.anchorY = 0; - bg.anchorX = 1; - bg.anchorY = 0; - bg.addChild(spr.node); - - const canvas = cc.find('Canvas'); - bg.scale = Math.max((canvas.width / bg.width), (canvas.height / bg.height)); - bg.y = -this.canvas.height / 2; - bg.x = this.canvas.width / 2; - }) - - // const bgNode = cc.find('Canvas/bg'); - // bgNode.scale = this._mapScaleMax; - - // const canvas = cc.find('Canvas'); - // bgNode.scale = Math.max((canvas.width / bgNode.width), (canvas.height / bgNode.height)); - }, - - - letterItemArr: null, - initLetterItem() { - - this.addLetterItemBig(); - this.addLetterItemSmall(); - - - }, - - addLetterItemBig() { - - const itemBgBig = getSprNode('item_bg'); - itemBgBig.scale = this._mapScaleMin; - itemBgBig.anchorX = 0; - this.canvas.addChild(itemBgBig); - this.itemBgBig = itemBgBig; - - - - const letterW = 50 * this._mapScaleMin; - itemBgBig.x = -itemBgBig.width / 2 * itemBgBig.scaleX + letterW; - itemBgBig.y = 200 * this._mapScaleMin; - // itemLetterBig.x = itemBgBig.x - letterW; - // itemLetterBig.y = itemBgBig.y; - - // getSprNodeByUrl(this.data.letter_big_pic_url, (spr) => { - // const itemLetterBig = spr.node; - // this.canvas.addChild(itemLetterBig); - - // itemLetterBig.scale = itemBgBig.height / itemLetterBig.height; - - // itemLetterBig.x = itemBgBig.x - letterW; - // itemLetterBig.y = itemBgBig.y; - // }) - - - - let animColor; - let animBlack; - const checkShowOneLineAnim = () => { - if (animColor && animBlack) { - this.setOneLineAllAnimBig(animColor, animBlack, itemBgBig) - this.showLetterAnim(1000, this.letterAnimBig); - this.addColorLetterListener( this.letterAnimBig ); - } - } - - const bigColorData = this.getAnimData('letter_big_0'); - const bigBlackData = this.getAnimData('letter_big_1'); - - this.getOneAnim(bigColorData, (animNode) => { - - animColor = animNode; - animColor.x = 100; - animColor.name = 'daxie_yanse' - this.letterAnimBig = animColor; - itemBgBig.addChild(animColor); - checkShowOneLineAnim(); - - }) - - this.getOneAnim(bigBlackData, (animNode) => { - animBlack = animNode; - checkShowOneLineAnim(); - - const itemLetterBig = cc.instantiate(animNode); - this.canvas.addChild(itemLetterBig); - itemLetterBig.animationNames = animNode.animationNames; - - - - this.showLetterAnim(1000, itemLetterBig); - - itemLetterBig.x = itemBgBig.x - letterW; - itemLetterBig.y = itemBgBig.y; - - - // itemLetterBig.scale = 0.614; - - // itemLetterBig.y += itemBgBig.height / 6; - - }) - - - - - // const letterAnim0 = this.getLetterAnimBig0(letterS.toUpperCase()); - // letterAnim0.x = 100; - // this.letterAnimBig = letterAnim0; - // itemBgBig.addChild(letterAnim0); - - // const baseX = letterAnim0.x + 150; - // const baseY = letterAnim0.y + 32; - // const disW = 132; - // for (let i=0; i<7; i++) { - // const letterAnim1 = this.getLetterAnimBig1(letterS); - // letterAnim1.x = baseX + i * disW; - // letterAnim1.y = baseY; - // itemBgBig.addChild(letterAnim1); - - // if (i < 2) { - // letterAnim1.opacity = 255 * 0.5; - // } else { - // letterAnim1.active = false; - // } - // } - }, - - setLetterDot(animNode, key) { - const url = this.data[key + '_url']; - if (url) { - getSprNodeByUrl(url, (spr) => { - spr.node.parent = animNode.parent; - spr.node.x = animNode.x; - spr.node.y = animNode.y; - spr.node.scale = animNode.scale; - - console.log(' spr.node.width: ', spr.node.width) - console.log(' spr.node.height: ', spr.node.height) - }) - } - }, - - - addColorLetterListener(letter) { - - console.log(' in addColorLetterListener 1', letter.name || '') - - - const nodeW = 258; - const nodeH = 138; - letter.width = nodeW; - letter.height = nodeH; - - letter.on('touchstart', ()=> { - - console.log( ' in addColorLetterListener 2') - - if (!this.canTouch) { - return; - } - - console.log(' canTouch = fasle 1'); - - this.canTouch = false; - - this.showLetterAnim(1, letter, () => { - this.checkShowDataPool(); - }); - - }) - }, - - getAnimData(key) { - const animArr = this.data.animArr; - for (let i=0; i<animArr.length; i++) { - if (animArr[i].key == key) { - return animArr[i]; - } - } - }, - - setOneLineAllAnimBig(animColor, animBlack, animBg) { - - this.lineLetterBigArr = []; - const baseX = animColor.x + 150; - // const baseY = animColor.y + 32; - const disW = 132; - for (let i=0; i<7; i++) { - const anim = cc.instantiate(animBlack); - anim.animationNames = animBlack.animationNames; - anim.x = baseX + i * disW; - - // anim.scale = animBg.height / anim.height; - - if (anim.height) { - // anim.scale = 0.614; - // if(animBg != this.itemBgSmall) { - // anim.y += animBg.height / 6; - // } - } else { - - // anim.scale = 0.614; - // if(animBg != this.itemBgSmall) { - // anim.y += animBg.height / 6; - // } - } - - // console.log(' anim.scale ~ ', anim.scale); - - animBg.addChild(anim, 1); - - this.showLetterAnim(1000, anim); - // const dragonDisplay = anim.getComponent(dragonBones.ArmatureDisplay); - // dragonDisplay.timeScale = 1000; - // dragonDisplay.playAnimation(anim.animationNames[0], 1); - - if (i < 2) { - anim.opacity = 255 * 0.3; - if (i == 0) { - this.setLetterDot(anim, 'dot_big_1'); - } - - } else { - anim.active = false; - this.setLetterDot(anim, 'dot_big_2'); - } - - this.lineLetterBigArr.push(anim); - } - }, - - - setOneLineAllAnimSmall(animColor, animBlack, animBg) { - - this.lineLetterSmallArr = []; - const baseX = animColor.x + 150; - const disW = 132; - for (let i=0; i<7; i++) { - const anim = cc.instantiate(animBlack); - anim.animationNames = animBlack.animationNames; - anim.x = baseX + i * disW; - - // anim.scale = 0.614; - - // console.log(' anim.scale ~ ', anim.scale); - - animBg.addChild(anim, 1); - - this.showLetterAnim(1000, anim); - // const dragonDisplay = anim.getComponent(dragonBones.ArmatureDisplay); - // dragonDisplay.timeScale = 1000; - // dragonDisplay.playAnimation(anim.animationNames[0], 1); - - if (i < 2) { - anim.opacity = 255 * 0.3; - - if (i == 0) { - this.setLetterDot(anim, 'dot_small_1'); - } - - } else { - anim.active = false; - - this.setLetterDot(anim, 'dot_small_2'); - } - - - this.lineLetterSmallArr.push(anim); - } - }, - - addLetterItemSmall() { - - - const itemBgSmall = getSprNode('item_bg'); - itemBgSmall.scale = this._mapScaleMin; - itemBgSmall.anchorX = 0; - this.canvas.addChild(itemBgSmall); - this.itemBgSmall = itemBgSmall; - - - const letterW = 50 * this._mapScaleMin; - itemBgSmall.x = -itemBgSmall.width / 2 * itemBgSmall.scaleX + letterW; - itemBgSmall.y = -30 * this._mapScaleMin; - - - let animColor; - let animBlack; - const checkShowOneLineAnim = () => { - if (animColor && animBlack) { - this.setOneLineAllAnimSmall(animColor, animBlack, itemBgSmall) - this.showLetterAnim(1000, this.letterAnimSmall); - this.addColorLetterListener( this.letterAnimSmall ); - } - } - - const smallColorData = this.getAnimData('letter_small_0'); - const smallBlackData = this.getAnimData('letter_small_1'); - - this.getOneAnim(smallColorData, (animNode) => { - - animColor = animNode; - animColor.x = 100; - this.letterAnimSmall = animColor; - itemBgSmall.addChild(animColor); - checkShowOneLineAnim(); - - }) - - this.getOneAnim(smallBlackData, (animNode) => { - animBlack = animNode; - checkShowOneLineAnim(); - - const itemLetterSmall = cc.instantiate(animNode); - this.canvas.addChild(itemLetterSmall); - itemLetterSmall.animationNames = animNode.animationNames; - - this.showLetterAnim(1000, itemLetterSmall); - - itemLetterSmall.x = itemBgSmall.x - letterW; - itemLetterSmall.y = itemBgSmall.y; - - // itemLetterSmall.scale = 0.614; - - // itemLetterSmall.y += itemBgSmall.height / 6; - }) - - - // const letterS = this.data.letter.toLowerCase(); - - // const itemLetterSmall = getSprNode('letter/' + letterS + '_0_1'); - // // itemLetterSmall.x = -this.canvas.width / 2 + 70 * this._mapScaleMin; - // // itemLetterSmall.y = -30 * this._mapScaleMin; - // itemLetterSmall.scale = this._mapScaleMin; - // this.canvas.addChild(itemLetterSmall); - - // const itemBgSmall = getSprNode('item_bg'); - // itemBgSmall.scale = this._mapScaleMin; - // // itemBgSmall.x = itemLetterSmall.x + 70 * this._mapScaleMin; - // // itemBgSmall.y = itemLetterSmall.y; - // itemBgSmall.anchorX = 0; - // this.canvas.addChild(itemBgSmall); - // this.itemBgSmall = itemBgSmall; - - - // const letterW = 50 * this._mapScaleMin; - // itemBgSmall.x = -itemBgSmall.width / 2 * itemBgSmall.scaleX + letterW; - // itemBgSmall.y = -30 * this._mapScaleMin; - // itemLetterSmall.x = itemBgSmall.x - letterW; - // itemLetterSmall.y = itemBgSmall.y; - - - // const letterAnim0 = this.getLetterAnimSmall0(letterS.toLowerCase()); - // letterAnim0.x = 100; - // letterAnim0.y = 7; - // letterAnim0.opacity = 160; - // this.letterAnimSmall = letterAnim0; - - // itemBgSmall.addChild(letterAnim0); - - // const baseX = letterAnim0.x + 150; - // const baseY = 4; - // const disW = 132; - // for (let i=0; i<7; i++) { - // const letterAnim1 = this.getLetterAnimSmall1(letterS); - // letterAnim1.x = baseX + i * disW; - // letterAnim1.y = baseY; - - // if (i < 2) { - // letterAnim1.opacity = 255 * 0.5; - // } else { - // letterAnim1.active = false; - // } - - // itemBgSmall.addChild(letterAnim1); - // } - }, - - getLetterAnimBig0(resName) { - - const anim = cc.find("Canvas/res/anim/" + resName + "_0") - const letter = cc.instantiate(anim); - // letter.scale *= 0.588; - letter.name = resName; - - letter.on('touchstart', ()=> { - - if (!this.canTouch) { - return; - } - - console.log(' canTouch = fasle 2'); - - this.canTouch = false; - // const letterAnim = letter.getComponent(cc.Animation); - // letterAnim.play('anim_A_0'); - - // const cb = () => { - // // this.canTouch = true; - // this.checkShowDataPool(); - // letterAnim.off('finished', cb) - // } - // letterAnim.on('finished', cb); - - - this.showLetterAnim(1, letter, () => { - this.checkShowDataPool(); - }); - - }) - - - return letter; - - }, - - getLetterAnimBig1(letter) { - const sprNode = getSprNode('letter/' + letter + '_1_1'); - return sprNode; - }, - - getLetterAnimSmall0(resName) { - - const anim = cc.find("Canvas/res/anim/" + resName + "_0") - const letter = cc.instantiate(anim); - // letter.scale *= 0.588; - letter.name = resName; - - - letter.on('touchstart', ()=> { - - if (!this.canTouch) { - return; - } - - console.log(' canTouch = fasle 3'); - - this.canTouch = false; - // const letterAnim = letter.getComponent(cc.Animation); - // letterAnim.play('anim_a_0'); - - // const cb = () => { - // // this.canTouch = true; - // this.checkShowDataPool(); - // letterAnim.off('finished', cb) - // } - // letterAnim.on('finished', cb); - - this.showLetterAnim(1, letter, () => { - this.checkShowDataPool(); - }); - }) - - - return letter; - - // const sprNode = getSprNode('letter/' + letter + '_0_0'); - // return sprNode; - }, - - getLetterAnimSmall1(letter) { - const sprNode = getSprNode('letter/' + letter + '_0_1'); - return sprNode; - }, - - - - - - debugLayer: null, - initDebugLayer() { - const layer = new cc.Node(); - layer.x = -this.canvas.width / 2 + 10; - layer.y = this.canvas.height / 2 - 10; - // layer.active = false; - - const sample = getSprNode('sample'); - sample.anchorX = 0; - sample.anchorY = 1; - this.sample = sample; - sample.scale = 0.7; - layer.addChild(sample); - - const topLeftRect = [ - {x1: 0.28, y1:0.127}, - {x2: 0.373, y2:0.127}, - {x3: 0.373, y3:0.215}, - {x4: 0.28, y4:0.215}, - ] - - this.dotArr1 = []; - - const disW = 0.093;// * sample.width; - // const disH = 0.13;// * sample.height; - // let row = 0; - let col = 0; - for (let i=0; i<7; i++) { - - const posArr = JSON.parse(JSON.stringify(topLeftRect)) - posArr[0].x1 += col * disW; - posArr[1].x2 += col * disW; - posArr[2].x3 += col * disW; - posArr[3].x4 += col * disW; - - - let color = 'blue'; - if (i % 2 == 0) { - color = 'yellow' - } - - const colorRect = this.getColorRectByPos(posArr, color) - - sample.addChild(colorRect); - - this.dotArr1.push(colorRect); - - col ++; - - } - - - - - const topLeftRect2 = [ - - {x1: 0.28, y1:0.227}, - {x2: 0.373, y2:0.227}, - {x3: 0.373, y3:0.315}, - {x4: 0.28, y4:0.315}, - ] - - this.dotArr2 = []; - - // const disW = 0.093;// * sample.width; - // const disH = 0.13;// * sample.height; - // let row = 0; - col = 0; - for (let i=0; i<7; i++) { - - const posArr = JSON.parse(JSON.stringify(topLeftRect2)) - posArr[0].x1 += col * disW; - posArr[1].x2 += col * disW; - posArr[2].x3 += col * disW; - posArr[3].x4 += col * disW; - - - let color = 'yellow'; - if (i % 2 == 0) { - color = 'blue' - } - - const colorRect = this.getColorRectByPos(posArr, color) - - sample.addChild(colorRect); - - this.dotArr2.push(colorRect); - - col ++; - - } - - - - - - this.canvas.addChild(layer, 10) - this.debugLayer = layer; - }, - - - getColorRectByPos(posArr, color='red') { - const topLeft = posArr[0]; - const bottomRight = posArr[2]; - - const sample = this.sample; - const x = topLeft.x1 * sample.width; - const y = topLeft.y1 * sample.height; - const width = (bottomRight.x3 - topLeft.x1) * sample.width; - const height = (bottomRight.y3 - topLeft.y1) * sample.height; - const rect = {x, y: -y - height, width, height}; - - // console.log('rect ', rect); - const colorRect = this.getColorRect(rect, color); - colorRect.opacity = 100; - return colorRect; - }, - - - gameStart() { - - this.beginShowAudio(); - }, - - beginShowAudio() { - - - console.log(' canTouch = fasle 4'); - - this.canTouch = false; - - const playEnd = () => { - - this.isPlayTip = false; - this.playAni('normal', 0); - // this.startTesting(); - - this.showLetterAnim(1, this.letterAnimBig, () => { - this.showBigLetter1Audio(); - }); - } - - - if (!this.data.write_big_0_audio_url) { - playEnd(); - return; - } - - this.isPlayTip = true; - this.playAni('begin', 0) - //æ’æ”¾å¼•导音频1 - playAudioByUrl(this.data.write_big_0_audio_url, () => { - if (this.isDestroy) { - return; - } - playEnd(); - }) - }, - - showLetterAnim(timeScale = 1, animNode, cb=null) { - console.log(' in showLetterAnim') - - const dragonDisplay = animNode.getComponent(dragonBones.ArmatureDisplay); - dragonDisplay.timeScale = timeScale; - dragonDisplay.playAnimation(animNode.animationNames[0], 1); - - dragonDisplay.once( dragonBones.EventObject.LOOP_COMPLETE , () => { - cb && cb(); - }) - - - - // const anim = this.letterAnimBig.getComponent(cc.Animation); - - // anim.play('anim_A_0'); - // const cb = () => { - // console.log('in finished'); - // this.showBigLetter1Audio(); - // anim.off('finished', cb) - // } - - // anim.on('finished', cb); - - - - }, - - showBigLetter1Audio() { - - const playEnd = () => { - - this.playAni('normal', 0); - - console.log( 'this.canTouch = true 1 '); - this.canTouch = true; - this.startTesting(); - - // this.showLetterAnim(); - } - - - if (!this.data.write_big_1_audio_url) { - playEnd(); - return; - } - - this.playAni('begin', 0) - //æ’æ”¾å¼•导音频1 - playAudioByUrl(this.data.write_big_1_audio_url, () => { - if (this.isDestroy) { - return; - } - playEnd(); - }) - }, - - - - - - - showSecondLetter() { - this.showLetter(1, () => { - - playAudio(this.audioTip3.clip, () => { - - if (this.isDestroy) { - return; - } - // }) - //æ’æ”¾å¼•导音频3 - // this.playAudioByUrl(this.data.guideAudioUrl3, () => { - - // state.stop(); - - // this.playAni('normal', 0); - - // this.showPhotoBtn(); - - this.showAllSound(); - this.showPhotoBtn(); - - this.playAni('normal', 0); - - }); - - }) - }, - - showLetter(index, cb, isSmall) { - - - let writeRect; - - if (isSmall) { - writeRect = this.writeNodeArr2[Number(index)]; - - console.log('show Letter small 1 :' , index) - } else { - writeRect = this.writeNodeArr1[Number(index)]; - } - - writeRect.hitCount++; - if (writeRect.hitCount < 1) { - return; - } - - if (writeRect.isShowEnd) { - return; - } - writeRect.isShowEnd = true; - - - playAudio(this.audioRight.clip); - - if (!isSmall) { - const animNode = this.lineLetterBigArr[index]; - animNode.active = true; - animNode.opacity = 255; - this.showLetterAnim(1, animNode, () => { - - }); - - } else { - - const animNode = this.lineLetterSmallArr[index]; - animNode.active = true; - animNode.opacity = 255; - this.showLetterAnim(1, animNode, () => { - - }); - - } - return; - - - - console.log('show Letter small 2 :' , index) - - const letterAnim = this.getLetterAnim(isSmall); - - letterAnim.parent = writeRect; - letterAnim.y = 4; - - // letterAnim.x = writeRect.width / 2; - // letterAnim.y = writeRect.height / 2; - - this.showItemAniNew(letterAnim, () => { - - if (!this.isGameEnd) { - this.checkGameEnd(); - - } - }) - - playAudio(this.audioRight.clip); - - }, - - checkGameEnd() { - return; - const writeNodeArr = this.writeNodeArr; - const isEnd = writeNodeArr.every(node => { - return node.isShowEnd; - }) - - if (isEnd) { - this.gameEnd(); - } else { - - - this.endTesting(); - - setTimeout(() => { - this.startTesting(); - }, 8000); - - } - }, - - isGameEnd: null, - gameEnd() { - - this.isGameEnd = true; - console.log('in gameEnd'); - this.endTesting(); - }, - - getLetterAnim(isSmall) { - - let resName; - if (isSmall) { - resName = this.data.letter.toLowerCase(); - } else { - resName = this.data.letter.toUpperCase(); - } - const anim = cc.find("Canvas/res/anim/" + resName) - const letter = cc.instantiate(anim); - letter.scale *= 0.588; - letter.name = resName; - - if (!isSmall) { - letter.anchorY = 0.28 - } - - return letter; - }, - - showItemAniNew(item, cb) { - if (item.isShow) { - return; - } - item.isShow = true; - item.active = true; - - // const anim = item.getComponent(cc.Animation); - // console.log(' showItemAniNew item: ', item); - - // anim.play(item.name); - - // anim.on('finished', () => { - // console.log('in finished'); - // if (cb) { - // cb(); - // } - // }); - - - this.showLetterAnim(1, item, () => { - cb && cb(); - }); - - - }, - - showItemAni(item, cb) { - if (item.isShow) { - return; - } - item.isShow = true; - - item.opacity = 0; - item.active = true; - cc.tween(item) - .to(1, { opacity: 255 }) - .call(() => { - if (cb) { - cb(); - } - }) - .start(); - }, - - showAllSound() { - const letterItemArr = this.letterItemArr; - for (let i = 0; i < letterItemArr.length; i++) { - const item = letterItemArr[i]; - this.showItemAni(item.btnSound); - } - }, - - - - - playAni(name, times = 1) { - - const cat = cc.find('Canvas/content/catFrame/cat'); - - var dragonDisplay = cat.getComponent(dragonBones.ArmatureDisplay); - - const state = dragonDisplay.playAnimation(name, times); - return state; - }, - - playTipAni(name, times = 1, cb = null) { - - const tip = cc.find('Canvas/tipFrame/tip'); - tip.parent.zIndex = 10; - tip.active = true; - - var dragonDisplay = tip.getComponent(dragonBones.ArmatureDisplay); - - const state = dragonDisplay.playAnimation(name, times); - - dragonDisplay.on(dragonBones.EventObject.COMPLETE, () => { - tip.active = false; - if (cb) { - cb(); - } - }) - - return state; - }, - - moveHand(index, callback = null) { - - let textNode = cc.find("Canvas/content/bg_green/bg_word-background/text"); - - let wordNodeArr = textNode.wordNodeArr - - let wordNode = wordNodeArr[2 * index]; - - if (!wordNode) { - - if (callback) { - callback(); - } - return; - } - - let handNode = cc.find("Canvas/content/bg_green/bg_word-background/text/icon_hand"); - handNode.x = wordNode.x; - - this.handAni(); - - if (callback) { - callback(); - } - }, - - /** - * æ’æ”¾æ–‡æœ¬éŸ³é¢‘ - * @param {*} callback - */ - playTextAutio(callback = null) { - - this.playAudioByUrl(this.data.exercises.audioUrl, () => { - - if (this.isDestroy) { - return; - } - //åœæ¢ç›‘å¬åŠ¨ç”» - this._stopAni = true; - - if (callback) { - callback(); - } - }, (audioId) => { - - //显示完æˆï¼Œä¸å†æ’放动画 - if (this._shown) { - return; - } - - //è®¾ç½®å¯æ’放动画 - this._stopAni = false; - - //éšè—手指 - let handNode = cc.find("Canvas/content/bg_green/bg_word-background/text/icon_hand"); - handNode.opacity = 0; - - let lyrics = this.data.exercises.lrcData.lyrics; - - //临时音频打点数组 - let arr = JSON.parse(JSON.stringify(lyrics)); - console.log(arr); - - this.monitor(audioId, arr); - }) - }, - - /** - * 釿–°è®¾ç½®æ–‡å—ä½ç½® - */ - resetTextPosition() { - - let textNode = cc.find("Canvas/content/bg_green/bg_word-background/text"); - - let wordNodeArr = textNode.wordNodeArr; - - //é—´éš” - let space = 40; - - let tW = 0; - - for (let i = 0; i < wordNodeArr.length; ++i) { - - let wordNode = wordNodeArr[i]; - wordNode.removeFromParent(); - wordNode.parent = textNode; - tW += wordNode.width; - - let widget = wordNode.getComponent(cc.Widget); - widget.bottom = - wordNode.getComponent(cc.Label).fontSize / 2; - widget.updateAlignment(); - - wordNode.initScale = wordNode.scale; - } - - tW += (this.data.exercises.wordArr.length - 1) * space; - - let startX = - tW / 2; - - for (let i = 0; i < wordNodeArr.length; ++i) { - let width = wordNodeArr[i].width; - wordNodeArr[i].x = startX + width / 2; - startX += width; - - if (wordNodeArr[i].isInitial) { - continue; - } - startX += space; - } - - if (tW > textNode.width) { - const sx = textNode.width / tW; - - textNode.scale = Math.round(sx * 1000) / 1000; - - textNode.initScale = textNode.scale; - } - }, - - - /** - * æ˜¾ç¤ºç»“æŸ - */ - _shown: null, - showEnd() { - - console.log(' in showEnd'); - - if (this._curIndex < this.data.exercises.wordArr.length) { - return; - } - - if (this._shown) { - return; - } - - this._shown = true; - - let handNode = cc.find("Canvas/content/bg_green/bg_word-background/text/icon_hand"); - handNode.opacity = 0; - this._stop = true; - - //æ’æ”¾åŠ¨ç”» - const state = this.playAni('finish', 0); - - //æ’æ”¾å¼•导音频2 - this.playAudioByUrl(this.data.guideAudioUrl2, () => { - - if (this.isDestroy) { - return; - } - - state.stop(); - - this.playAni('normal', 0); - - this.showPhotoBtn(); - }); - - - }, - - _stop: null, - _tween: null, - handAni() { - - let handNode = cc.find("Canvas/content/bg_green/bg_word-background/text/icon_hand"); - - handNode.opacity = 255; - handNode.y = handNode.initY; - const move = () => { - this._tween = cc.tween(handNode) - .to(0.5, { y: handNode.initY + 50 }) - .to(0.5, { y: handNode.initY }) - .call(() => { - - if (!this._stop) { - move() - } - }) - .start(); - } - - this._stop = false; - - move(); - }, - - _stopAni: null, - monitor(audioId, arr) { - - if (this._stopAni) { - return; - } - - this._stopAni = false; - - let currentTime = cc.audioEngine.getCurrentTime(audioId); - - let len = arr.length; - - for (let i = len - 1; i >= 0; --i) { - - let time = arr[i].time; - - time = Math.round(time * 1000) / 1000; - - currentTime = Math.round(currentTime * 1000) / 1000; - - if (time < currentTime) { - - //如果是最åŽä¸€ä¸ªåŒ¹é…ï¼Œåˆ™æ’æ”¾å†…容动画 - if (len == 1) { - this.contentAni(); - } - else { - this.textAni(); - } - - //移除匹é…ä¸Šçš„å…ƒç´ - arr.splice(i, 1); - - break; - } - - } - - requestAnimationFrame(() => { - - this.monitor(audioId, arr); - }) - }, - - /** - * 文本动画 - */ - _playText: null, - textAni() { - - if (this._playText) { - return; - } - - this._playText = true; - - console.log(' canTouch = fasle 5'); - - this.canTouch = false; - - const twinkle = (node) => { - cc.tween(node) - .to(0.3, { scale: node.initScale * 1.5 }) - .to(0.3, { scale: node.initScale }) - .call(() => { - this._playText = false; - }) - .start(); - }; - - let textNode = cc.find("Canvas/content/bg_green/bg_word-background/text"); - - let wordNodeArr = textNode.wordNodeArr; - - for (let i = 0; i < wordNodeArr.length; ++i) { - let wordNode = wordNodeArr[i]; - - //å¦‚æžœæ˜¯é¦–å—æ¯ï¼Œåˆ™æ‰§è¡ŒåŠ¨ç”» - if (wordNode.isInitial) { - twinkle(wordNode); - } - } - - }, - - - /** - * 内容动画 - */ - contentAni() { - - let handNode = cc.find("Canvas/content/bg_green/bg_word-background/text/icon_hand"); - handNode.opacity = 0; - - const twinkle = (node) => { - cc.tween(node) - .to(0.5, { scale: node.initScale * 1.1 }) - .to(0.5, { scale: node.initScale }) - .to(0.5, { scale: node.initScale * 1.1 }) - .to(0.5, { scale: node.initScale }) - .call(() => { - this.canTouch = true; - }) - .start(); - }; - - let textNode = cc.find("Canvas/content/bg_green/bg_word-background/text"); - - twinkle(textNode); - }, - - - - photoBtn: null, - initPhotoBtn() { - - const canvas = cc.find('Canvas'); - - const photoBtn = this.getSprNode('btn_photo'); - photoBtn.active = false; - canvas.addChild(photoBtn); - photoBtn.scale = this._mapScaleMin; - // photoBtn.x = 100; - photoBtn.y = -canvas.height / 2 + photoBtn.height / 2 * photoBtn.scaleY; - photoBtn.addComponent(cc.Button); - photoBtn.on('click', () => { - this.showPhotoTip(); - }) - - this.photoBtn = photoBtn; - }, - - showPhotoBtn() { - if (!this.photoBtn) { - this.initPhotoBtn(); - } - this.photoBtn.active = true; - }, - - hidePhotoBtn() { - if (!this.photoBtn) { - return; - } - this.photoBtn.active = false; - }, - - showPhotoTip() { - - this.maskNode.active = true; - playAudio(this.audioOsmoTip.clip); - this.playAni('begin', 0) - this.playTipAni('normal', 1, () => { - console.log('play ani end'); - - this.playAni('normal', 0) - - - this.photoBtnClick(); - - }) - - - }, - - isOpenPhotoCheck: null, - openPhotoData() { - this.isOpenPhotoCheck = true; - }, - - closePhotoData() { - this.isOpenPhotoCheck = true; - }, - - - photoBtnClick() { - console.log(' in photoBtnClick') - - if (!window || !window.courseware) { - console.log('window.courseware not found') - return; - } - - - // window.courseware.openRecognitionCamera = this.getPhotoData.bind(this); - - const openRecognitionCamera = window.courseware.openRecognitionCamera; - if (!openRecognitionCamera) { - console.log('openRecognitionCamera not found') - return; - } - openRecognitionCamera((data) => { - console.log('openRecognitionCamera data: ', data) - - this._timeoutIds.push(setTimeout(() => { - - if (typeof data == 'string') { - data = JSON.parse(data); - } - - const { result } = data; - this.photoEnd(result); - - this.maskNode.active = false; - }, 100)); - - - - }) - - }, - - photoEnd(data, isPool = false) { - - console.log(' this.photo end'); - - if (!this.canTouch && isPool == false) { - this.dataPool.push(data); - console.log('! cantouch') - return; - } - - - this.changeWriteDataToBboxData(data.result) - - console.log("data.result: ", data.result); - - // const result = data.result; - // for (let i=0; i<result.length; i++) { - // result[i].top *= 400; - // result[i].bottom *= 400; - // result[i].left *= 400; - // result[i].right *= 400; - // } - - - // this.topTitleData = null; - // this.bottomTitleData = null; - - - // const isRightArea1 = this.checkIsRightArea(data, false); - // const isRightArea2 = this.checkIsRightArea(data, true); - // if (!isRightArea1 && !isRightArea2) { - // // playAudio(this.audioTipArea.clip) - // console.log('没有检测到æ¤é¢˜çš„区域') - // return; - // } - - - // this.debugLayer.removeAllChildren(); - - this.sample.removeAllChildren(); - for (let i=0; i<this.dotArr1.length; i++) { - this.dotArr1[i].parent = this.sample; - } - for (let i=0; i<this.dotArr2.length; i++) { - this.dotArr2[i].parent = this.sample; - } - - // this.colorRectTop = null; - - - const answerData1 = this.getAnswerDataNew(data, false); - const answerData2 = this.getAnswerDataNew(data, true); - - - - this.showUserRight(answerData1, false); - this.showUserRight(answerData2, true); - - - const oldStep = this.step; - this.checkShowStepAudio(); - if (oldStep != this.step) { - - console.log(' canTouch = fasle 6'); - - this.canTouch = false; - this.showStepAudio(); - } else { - // this.canTouch = true; - this.checkShowDataPool(); - } - - // const isFillAll = this.checkIsFillAll(answerData); - // if (!isFillAll) { - // // playAudio(this.audioTipNotFill.clip) - // // playAudio(this.audioTipFillWrong.clip) - - // // console.log('è¿™é“题还有空没填哦') - // return; - // } - - // // const isFillWrong = this.checkIsFillWrong(answerData); - // // if (!isFillWrong) { - // // playAudio(this.audioTipFillWrong.clip) - - // // console.log('è¿™é“题有空填错了哦') - // // return; - // // } - - // this.showPhotoSuccess(); - - }, - - async showStepAudio() { - console.log(' in showStepAudio: ', this.step); - await asyncDelay(0.5); - - switch(this.step) { - case 2: - this.playAudioStep2(); - break; - case 3: - this.playAudioStep3(); - break; - case 4: - this.playAudioStep4(); - break; - case 5: - this.playAudioStep5(); - break; - } - }, - - playAudioStep2() { - playAudioByUrl(this.data.write_big_2_audio_url, () => { - // this.canTouch = true; - this.checkShowDataPool(); - }); - }, - - playAudioStep3() { - if (this.isDestroy) { - return; - } - this.beginShowAudioSmall(); - }, - - playAudioStep4() { - playAudioByUrl(this.data.write_small_2_audio_url, () => { - this.checkShowDataPool(); - // this.canTouch = true; - }); - }, - - playAudioStep5() { - setTimeout(() => { - if (this.isDestroy ) { - return; - } - - console.log(' play finish_audio_url:' , this.data.finish_audio_url) - playAudioByUrl(this.data.finish_audio_url, () => { - // 结æŸä½ç½® - onHomeworkFinish(); - }); - }, 500); - - }, - - checkShowDataPool() { - - if (this.dataPool.length == 0) { - console.log(' this.canTouch = true 6') - this.canTouch = true; - return; - } - - const data = this.dataPool.shift(); - this.photoEnd(data, true); - - }, - - - checkShowStepAudio() { - - - switch(this.step) { - case 1: - this.checkStep1(); - break; - case 2: - this.checkStep2(); - break; - case 3: - this.checkStep3(); - break; - case 4: - this.checkStep4(); - break; - - case 5: - break; - - case 6: - break; - } - }, - - checkStep1() { - let writeNodeArr = this.writeNodeArr1; - - let isShowEnd = true; - for (let i = 0; i < 2; i++) { - - if (!writeNodeArr[i].isShowEnd) { - isShowEnd = false; - break; - } - } - - if (isShowEnd) { - this.step ++; - this.checkShowStepAudio(); - } - }, - - checkStep2() { - let writeNodeArr = this.writeNodeArr1; - - let isShowEnd = true; - for (let i = 2; i < 7; i++) { - - if (!writeNodeArr[i].isShowEnd) { - isShowEnd = false; - break; - } - } - - if (isShowEnd) { - this.step ++; - this.checkShowStepAudio(); - } - }, - - checkStep3() { - let writeNodeArr = this.writeNodeArr2; - - let isShowEnd = true; - for (let i = 0; i < 2; i++) { - - if (!writeNodeArr[i].isShowEnd) { - isShowEnd = false; - break; - } - } - - if (isShowEnd) { - this.step ++; - this.checkShowStepAudio(); - } - }, - - checkStep4() { - let writeNodeArr = this.writeNodeArr2; - - let isShowEnd = true; - for (let i = 2; i < 7; i++) { - - if (!writeNodeArr[i].isShowEnd) { - isShowEnd = false; - break; - } - } - - if (isShowEnd) { - this.step ++; - this.checkShowStepAudio(); - } - }, - - - - beginShowAudioSmall() { - const playEnd = () => { - this.playAni('normal', 0); - this.showSmallLetterAnim(); - // this.checkShowDataPool(); - // this.canTouch = true; - } - - console.log('') - if (!this.data.write_small_0_audio_url) { - playEnd(); - return; - } - - this.playAni('begin', 0) - playAudioByUrl(this.data.write_small_0_audio_url, () => { - if (this.isDestroy) { - return; - } - playEnd(); - }) - }, - - showSmallLetterAnim() { - console.log(' in showSmallLetterAnim') - // const anim = this.letterAnimSmall.getComponent(cc.Animation); - - // anim.play('anim_a_0'); - // const cb = () => { - // console.log('in finished'); - // this.showSmallLetter1Audio(); - // anim.off('finished', cb) - // } - - // anim.on('finished', cb); - - - this.showLetterAnim(1, this.letterAnimSmall, () => { - this.showSmallLetter1Audio(); - }); - }, - - showSmallLetter1Audio() { - console.log(' in showSmallLetter1Audio') - const playEnd = () => { - - console.log(' in playEnd ~') - this.playAni('normal', 0); - // this.canTouch = true; - this.checkShowDataPool(); - // this.startTesting(); - - } - - - if (!this.data.write_small_1_audio_url) { - playEnd(); - return; - } - - this.playAni('begin', 0) - //æ’æ”¾å¼•导音频1 - playAudioByUrl(this.data.write_small_1_audio_url, () => { - if (this.isDestroy) { - return; - } - playEnd(); - }) - }, - - - - - - - - showUserRight(answerData, isSmall) { - - console.log('answerData: ', answerData.toString()); - - if (!answerData || Object.keys(answerData).length == 0) { - return; - } - - let writeNodeArr; - if (isSmall) { - writeNodeArr = this.writeNodeArr2 - } else { - writeNodeArr = this.writeNodeArr1 - } - - for (let i = 0; i < 7; i++) { - const key = i.toString(); - if (answerData[key]) { - this.showLetter(i, null, isSmall); - - } else { - let writeRect = writeNodeArr[i]; - writeRect.hitCount = 0; - } - } - }, - - checkIsFillAll(answerData) { - - const letterArr = this.data.letter_arr; - for (let i = 0; i < letterArr.length; i++) { - const key = i.toString(); - const letterData = letterArr[i]; - - const item = this.letterItemArr[i]; - if (!item.isShow) { - if (letterData.is_right && !answerData[key]) { - console.log("没有看到第" + (i + 1) + "ä¸ªç©ºçš„ç”æ¡ˆå“¦") - return false; - } - } - - - - } - - return true; - - }, - - - checkIsFillWrong(answerData) { - - const letterArr = this.data.letter_arr; - for (let i = 0; i < letterArr.length; i++) { - const key = i.toString(); - const letterData = letterArr[i]; - - const item = this.letterItemArr[i]; - if (!item.isShow) { - if (!letterData.is_right && answerData[key]) { - console.log("第" + (i + 1) + "个空填错了哦") - return false; - } - } - - - } - - return true; - - }, - - getTopLeftLetter(text, block, topLabelData, bottomLabelData) { - - // const titleTopLeft = topLabelData.location.top_left; - // const titleRightBottom = topLabelData.location.right_bottom; - // const checkX = titleTopLeft.x + (titleRightBottom.x - titleTopLeft.x) / 3; - // const checkY = titleRightBottom.y; - - console.log('topLabelData:', topLabelData); - console.log('bottomLabelData:', bottomLabelData); - - const topY = -topLabelData.word[0].location.top; - const bottomY = -bottomLabelData.word[0].location.bottom; - - - text = text.trim(); - - let topLeftLetter; - - for (let j = 0; j < block.length; j++) { - - const line = block[j].line; - if (!line) { - continue; - } - - - for (let i = 0; i < line.length; i++) { - - // const {word, location} = line[i]; - const word = line[i].word; - const location = line[i].word[0].location; - - const curTop = -location.top; - if (curTop >= topY || curTop <= bottomY) { - continue; - } - - console.log(' center line: ', line[i]); - - - let sentence = '' - word.forEach(item => { - sentence += item.content + ' '; - }); - - sentence.trim(); - - line[i].sentence = sentence; - console.log('sentence: ', sentence); - if (sentence.indexOf(text) != -1) { - - line[i].tmpLen = this.getToZeroLen(location) - if (!topLeftLetter) { - topLeftLetter = line[i]; - } else { - if (topLeftLetter.tmpLen > line[i].tmpLen) { - topLeftLetter = line[i]; - } - } - } - } - } - - return topLeftLetter; - }, - - getToZeroLen(location) { - const { top, left } = location; - const len = Math.sqrt(Math.pow(left, 2) + Math.pow(top, 2)); - return len; - }, - - getPhotoLabelData(textArr, block) { - - // text = text.trim(); - - - for (let j = 0; j < block.length; j++) { - - const line = block[j].line; - if (!line) { - continue; - } - - for (let i = 0; i < line.length; i++) { - - const word = line[i].word; - let sentence = '' - word.forEach(item => { - sentence += item.content + ' '; - }); - - sentence.trim(); - sentence = sentence.toLowerCase(); - - line[i].sentence = sentence; - - if (this.checkIsInsert(textArr, sentence)) { - return line[i]; - } - // if (sentence.indexOf(text) != -1 ) { - // return line[i]; - // } - } - } - - return false; - }, - - checkIsInsert(textArr, sentence) { - console.log('textArr: ', textArr); - console.log('sentence: ', sentence); - - let index = -1; - for (let i = 0; i < textArr.length; i++) { - index = sentence.indexOf(textArr[i], index); - console.log('index: ', index); - if (index == -1) { - return false; - } - } - - return true; - }, - - getPhotoWordArr(identifier, data, topLabelData, bottomLabelData) { - - - const identifierArr = this.getIdentifierArr(data, identifier) - - const wordArr = []; - const topY = -topLabelData.top - const bottomY = -bottomLabelData.bottom; - for (let i = 0; i < identifierArr.length; i++) { - - const curTop = -identifierArr[i].top; - if (curTop >= topY || curTop <= bottomY) { - continue; - } - - wordArr.push(identifierArr[i]); - } - - return wordArr; - - }, - - checkCutWordData(wordArr) { - - let newWordArr = []; - for (let i = 0; i < wordArr.length; i++) { - - let wordObj = wordArr[i]; - - wordObj.content = wordObj.content.trim(); - - if (wordObj.content.length > 1) { - - const tmpArr = []; - const w = wordObj.location.right - wordObj.location.left - const subW = w / wordObj.content.length; - for (let j = 0; j < wordObj.content.length; j++) { - - const subWordObj = {}; - subWordObj.content = wordObj.content[j]; - subWordObj.location = { - top: wordObj.location.top, - bottom: wordObj.location.bottom, - left: wordObj.location.left + subW * j, - right: wordObj.location.left + subW * (j + 1) - } - - tmpArr.push(subWordObj); - } - newWordArr = newWordArr.concat(tmpArr) - - - } else { - newWordArr.push(wordObj) - } - - } - - console.log('newWordArr: ', newWordArr); - return newWordArr; - }, - - - - - - getOneAnim(data ,cb) { - - if (!data.texPngData) { - cb && cb(); - return - } - - const animaNode = new cc.Node(); - - const dragonDisplay = animaNode.addComponent(dragonBones.ArmatureDisplay); - - const image = data.texPngData.url//"http://staging-teach.cdn.ireadabc.com/5a0c5af3e952acd0ac83a6e5c6f03ff1.png"; - const ske = data.skeJsonData.url//"http://staging-teach.cdn.ireadabc.com/bd825dcceea298d1146be8067ae3d17f.json"; - const atlas = data.texJsonData.url//"http://staging-teach.cdn.ireadabc.com/246f8991b729fa3e5a7f4802de828efa.json"; - cc.loader.load(image, (error, texture) => { - - cc.loader.load({url: atlas, type: 'txt'}, (error, atlasJson) => { - - cc.loader.load({url: ske, type: 'txt'}, (error, dragonBonesJson) => { - - const atlas = new dragonBones.DragonBonesAtlasAsset(); - atlas.atlasJson = atlasJson; - atlas.texture = texture; - - const asset = new dragonBones.DragonBonesAsset(); - asset.dragonBonesJson = dragonBonesJson; - - dragonDisplay.dragonAtlasAsset = atlas; - dragonDisplay.dragonAsset = asset; - - let json = JSON.parse(asset.dragonBonesJson); - let armatures = json["armature"]; - let armatureNames = []; - for (let i = 0; i < armatures.length; i++) { - armatureNames.push(armatures[i].name); - } - - if (armatureNames.length > 0) { - let defaultArmatureName = armatureNames[0]; - dragonDisplay.armatureName = defaultArmatureName; - - let defaultArmature = armatures[0]; - let animations = defaultArmature.animation; - let animationNames = []; - for (let i = 0; i < animations.length; i++) { - animationNames.push(animations[i].name); - } - - animaNode.animationNames = animationNames; - } - - cb(animaNode); - - }); - }); - }); - - }, - - - - topLabelData: null, - bottomLabelData: null, - topLeftLetter: null, - checkIsRightArea(data, isSmall) { - - - let letter = this.data.letter || 'a'; - letter = letter.toUpperCase(); - let checkLetter; - if (isSmall) { - checkLetter = 'x' + letter + '1' - } else { - checkLetter = letter + '1' - } - - - if (!this.topTitleData) { - const topTitleData = this.getIdentifierArr(data, 'originC')[0]; - if (!topTitleData) { - return false; - } - this.topTitleData = topTitleData; - } - - if (!this.bottomTitleData) { - const bottomTitleData = this.getIdentifierArr(data, 'originD')[0]; - if (!bottomTitleData) { - return; - } - this.bottomTitleData = bottomTitleData; - } - - - - const topLeftLetterData = this.getTopLeftLetterData(data, checkLetter, this.topTitleData, this.bottomTitleData); - if (!topLeftLetterData) { - return; - } - - - - if (isSmall) { - this.topLeftLetterData2 = topLeftLetterData; - } else { - this.topLeftLetterData1 = topLeftLetterData; - } - - console.log('topTitleData:', this.topTitleData); - console.log('bottomTitleData:', this.bottomTitleData); - console.log('topLeftLetterData:', topLeftLetterData); - - return this.topTitleData && this.bottomTitleData && topLeftLetterData; - - // const block = result?.block - // if (!block) { - // return false; - // } - - // const letter = this.data.letter || 'a'; - - - - // const topLabelData = this.getPhotoLabelData(['tr', 'e', 'wri', 'e'], block); - // if (!topLabelData) { - // console.log(' !topLabelData ') - // return false; - // } - - // const bottomLabelData = this.getPhotoLabelData(['or', 'cross', 't', 'out'], block); - // if (!bottomLabelData) { - // console.log(' !bottomLabelData ') - // return false; - // } - - // let topLeftLetter = this.getTopLeftLetter(letter, block, topLabelData, bottomLabelData); - // if (!topLeftLetter) { - // console.log(' !topLeftLetter ') - // return false; - // } - - // this.topLabelData = topLabelData; - // this.bottomLabelData = bottomLabelData; - // this.topLeftLetter = topLeftLetter; - - // // console.log('topLabelData: ', topLabelData); - // // console.log('topLeftLetter: ', topLeftLetter); - - // return topLabelData && bottomLabelData && topLeftLetter; - }, - - getTopLeftLetterData(result, identifier, topTitleData, bottomTitleData) { - - const identifierArr = this.getIdentifierArr(result, identifier); - - identifierArr.forEach(item => { - const len = Math.sqrt(Math.pow(item.left, 2) + Math.pow(item.top, 2)); - item.minLen = len; - }) - - identifierArr.sort((a, b) => { - return a.minLen - b.minLen - }) - - const topLeftLetter = identifierArr[0]; - if (-topLeftLetter.bottom > -topTitleData.bottom || -topLeftLetter.bottom < -bottomTitleData.bottom ) { - return; - } - - const unit = bottomTitleData.bottom - bottomTitleData.top; - const targetX = bottomTitleData.left + unit * 1; - if (topLeftLetter.left > targetX) { - return; - } - - return topLeftLetter; - }, - - getIdentifierArr(data, identifier) { - - const result = data.result; - - const identifierArr = []; - for (let i = 0; i < result.length; i++) { - - const data = result[i]; - const { classIdentifier } = data; - - if (classIdentifier == identifier) { - identifierArr.push(data) - } - } - return identifierArr; - }, - - getAnswerDataNew(data, isSmall) { - - let letter = this.data.letter || 'a'; - - let checkLetter, dotArr; - if (isSmall) { - checkLetter = letter.toLowerCase(); - dotArr = this.dotArr2; - } else { - checkLetter = letter.toUpperCase(); - dotArr = this.dotArr1; - } - - - - const answerData = {}; - - const resultTextArr = data.result.text; - for (let i=0; i<resultTextArr.length; i++) { - - const wordData = resultTextArr[i]; - - if (wordData.content != checkLetter) { - continue; - } - - const colorRect = this.getColorRectByPos(wordData.bbox) - colorRect.data = wordData; - - this.sample.addChild(colorRect); - this.setOneAnswerDataNew(colorRect, dotArr, answerData); - - } - - return answerData; - }, - - - getAnswerData(data, isSmall) { - - - let letter = this.data.letter || 'a'; - letter = letter.toUpperCase(); - let checkLetter; - if (isSmall) { - checkLetter = 'x' + letter + '1' - } else { - checkLetter = letter + '1' - } - - - - const topTitleData = this.topTitleData; - const bottomTitleData = this.bottomTitleData; - let topLeftLetterData; - if (isSmall) { - topLeftLetterData = this.topLeftLetterData2; - } else { - topLeftLetterData = this.topLeftLetterData1; - } - - - const wordDataArr = this.getPhotoWordArr(checkLetter, data, topTitleData, bottomTitleData); - - const dotArr = this.setTestRectDot(topTitleData, bottomTitleData, topLeftLetterData, wordDataArr); - - - const answerData = {}; - - console.log('~~wordDataArr:', wordDataArr); - - for (let i = 0; i < wordDataArr.length; i++) { - - const wordData = wordDataArr[i]; - const rect = { - x: wordData.left, - y: -wordData.top, - width: Math.abs(wordData.left - wordData.right), - height: Math.abs(wordData.top - wordData.bottom), - } - const colorRect = this.getColorRect(rect); - this.debugLayer.addChild(colorRect); - - this.setOneAnswerData(colorRect, dotArr, answerData); - - } - - - - if (this.colorRectTop) { - return answerData; - } - const rectTop = { - x: topTitleData.left, - y: -topTitleData.top, - width: Math.abs( topTitleData.left - topTitleData.right ), - height: Math.abs( topTitleData.top - topTitleData.bottom ), - } - - - const colorRectTop = this.getColorRect(rectTop, 'green'); - this.debugLayer.addChild(colorRectTop); - this.colorRectTop = colorRectTop; - - - const rectBottom = { - x: bottomTitleData.left, - y: -bottomTitleData.top, - width: Math.abs( bottomTitleData.left - bottomTitleData.right ), - height: Math.abs( bottomTitleData.top - bottomTitleData.bottom ), - } - - - const colorRectBottom = this.getColorRect(rectBottom, 'green'); - this.debugLayer.addChild(colorRectBottom); - - - return answerData; - - - - - - - // console.log(' in getAnswerData'); - // const block = result?.block - // if (!block) { - // return false; - // } - - - // const letter = this.data.letter || 'a'; - - - // const topLabelData = this.topLabelData;//this.getPhotoLabelData(['tr', 'ce', 'wri', 'e'], block); - - // const bottomLabelData = this.bottomLabelData;//this.getPhotoLabelData(['or', 'cross', 'it', 'out'], block); - - // let topLeftLetter = this.topLeftLetter; //this.getTopLeftLetter(letter, block, topLabelData, bottomLabelData); - - // const wordDataArr = this.getPhotoWordArr(letter, block, topLabelData, bottomLabelData); - - // console.log('!!!wordDataArr: ', wordDataArr); - - - // this.setTestLabel(topLabelData); - // this.setTestLabel(bottomLabelData); - // this.setTestLabel(topLeftLetter); - - - // // const dotArr = this.setTestRectDot(topLabelData, bottomLabelData, wordDataArr); - // const dotArr = this.setTestRectDot(topLabelData, bottomLabelData, topLeftLetter, wordDataArr); - - // // return; - // const answerData = {}; - - // console.log('~~wordDataArr:', wordDataArr); - - // for (let i=0; i<wordDataArr.length; i++) { - - // const wordArr = wordDataArr[i].word; - // for (let j=0; j<wordArr.length; j++) { - // const location = wordArr[j].location; - // const rect = { - // x: location.left, - // y: -location.top, - // width: Math.abs( location.left - location.right ), - // height: Math.abs( location.top - location.bottom ), - // } - // const colorRect = this.getColorRect(rect); - // this.debugLayer.addChild(colorRect); - - // this.setOneAnswerData(colorRect, dotArr, answerData); - - // } - - - // } - - // return answerData; - - }, - - changeWriteDataToBboxData(result) { - const curTextArr = result.text; - const bboxTextArr = []; - for (let i=0; i<curTextArr.length; i++) { - - const score = curTextArr[i].score; - - const {left, right, top, bottom} = curTextArr[i]; - const text = curTextArr[i].content; - - console.log('text..', JSON.stringify( curTextArr[i] )); - console.log('text..', text); - const disW = (right - left) / text.length; - const disH = (bottom - top); - for (let j=0; j<text.length; j++) { - - const x1 = left + j * disW; - const y1 = top; - - const x2 = x1 + disW; - const y2 = y1; - - const x3 = x2; - const y3 = y2 + disH; - - const x4 = x1; - const y4 = y3; - - const bbox = [{x1, y1}, {x2, y2}, {x3, y3}, {x4, y4}] - - - this.changeBboxPos(bbox); - - const content = text[j]; - bboxTextArr.push({bbox, content, score}); - } - - } - - result.text = bboxTextArr; - - }, - - changeBboxPos(bbox) { - - this.ques_region = [ - 0, 0.077, - 1, 0.077, - 1, 0.331, - 0, 0.331, - ] - - console.log('bbox: ', bbox); - const x1 = bbox[0].x1; - const y1 = bbox[0].y1; - const x2 = bbox[1].x2; - const y2 = bbox[1].y2; - const x3 = bbox[2].x3; - const y3 = bbox[2].y3; - const x4 = bbox[3].x4; - const y4 = bbox[3].y4; - - const left = this.ques_region[0]; - const top = this.ques_region[1]; - const right = this.ques_region[2]; - const bottom = this.ques_region[7]; - - const rect = {x: left, y:top, width: right - left, height: bottom - top}; - - const y1_new = top + y1 * rect.height; - const y2_new = y1_new; - const y3_new = top + y3 * rect.height; - const y4_new = y3_new; - - const x1_new = left + x1 * rect.width; - const x2_new = left + x2 * rect.width; - const x3_new = x2_new; - const x4_new = x1_new; - - bbox[0].x1 = x1_new; - bbox[0].y1 = y1_new; - bbox[1].x2 = x2_new; - bbox[1].y2 = y2_new; - bbox[2].x3 = x3_new; - bbox[2].y3 = y3_new; - bbox[3].x4 = x4_new; - bbox[3].y4 = y4_new; - - console.log('~~rect: ', rect); - - - }, - - - setTestLabel(labelData) { - - if (!this.debugLayer.parent || !this.debugLayer.active) { - return; - } - - console.log('labelData: ', labelData) - const location = labelData.word[0].location; - const label = this.getLabel(labelData.sentence); - label.anchorX = 0; - // label.anchorY = 1; - label.x = location.left; - label.y = -location.top - label.zIndex = 50; - - - // const rect = {}; - // rect.width = location.right - location.left; - // rect.height = location.bottom - location.top; - // rect.x = location.left; - // rect.y = -location.top; - // const colorRect = this.getColorRect(rect, cc.Color.YELLOW); - // this.debugLayer.addChild(colorRect); - - this.debugLayer.addChild(label); - }, - - setTestRectDot(topLabelData, bottomLabelData, topLeftLetter, wordDataArr) { - - - const topLeftPosX = topLeftLetter.left; - const topLeftPosY = topLeftLetter.top; - - const totalH = -topLabelData.top + bottomLabelData.top; - - const unitH = -topLabelData.top + bottomLabelData.bottom; - const rate = 0.26; - - console.log('unitH: ', unitH); - - - let rectH; - let rectW; - let disW; - - let unit; - if (-topLeftPosY > -topLabelData.top - totalH / 3) { - - unit = topLeftLetter.bottom - topLabelData.bottom; - console.log('unit: ', unit); - - // 50 - - rectH = 0.88 *rate * unitH; //44 - rectW = 0.5 *rate * unitH; //27; - disW = 0.66 *rate * unitH; //55; - - } else { - - unit = bottomLabelData.top - topLeftLetter.top; - // 50 - - rectH = 0.5 *rate * unitH; //25 - rectW = 0.54 *rate * unitH; //27; - disW = 0.6 *rate * unitH; //46; - - console.log('unit: ', unit); - - - } - - - - const baseX = topLeftPosX + rectW / 2; - let baseY = -(topLeftPosY - rectH / 2); - - - let col = 0; - - const dotArr = []; - for (let i = 0; i < 9; i++) { - const x = baseX + col * disW; - const y = baseY; - const dot = this.getColorDot(x, y, rectW * 0.1); - this.debugLayer.addChild(dot,5); - dotArr.push(dot); - col++; - - - } - - return dotArr; - - - - - - - - // const topLeftPosX = topLeftLetter.word[0].location.left; - // const topLeftPosY = topLeftLetter.word[0].location.top; - - // const totalH = -topLabelData.word[0].location.top + bottomLabelData.word[0].location.top; - - - // const unitH = -topLeftLetter.word[0].location.top + topLeftLetter.word[0].location.bottom; - - - // console.log('unitH: ', unitH); - - - - // let rectH = 1 * unitH; //21 - // let rectW = 1.476 * unitH; //31; - // let disW = 2.08 * unitH; //45; - - - // const letterLocation = topLeftLetter.word[0].location; - // const bottomLocation = bottomLabelData.word[0].location; - // const topLocation = topLabelData.word[0].location; - // let unit; - // if (-topLeftPosY > -topLabelData.word[0].location.top - totalH / 3 ) { - - // unit = letterLocation.bottom - topLocation.bottom; - // // 50 - - // rectH = 0.88 * unit; //44 - // rectW = 0.54 * unit; //27; - // disW = 1.07 * unit; //55; - - // } else { - - // unit = bottomLocation.top - letterLocation.top; - // // 50 - - // rectH = 0.5 * unit; //25 - // rectW = 0.54 * unit; //27; - // disW = 1.13 * unit; //46; - - // } - - - - - - // const baseX = topLeftPosX + rectW / 2; - // let baseY = -(topLeftPosY - rectH / 2 ); - - - // let col = 0; - - // const dotArr = []; - // for (let i=0; i<9; i++) { - // const x = baseX + col * disW; - // const y = baseY; - // const dot = this.getColorDot(x, y, rectW * 0.6); - // this.debugLayer.addChild(dot,5); - // dotArr.push(dot); - // col ++; - - - // } - - // return dotArr; - - }, - - setOneAnswerDataNew(colorRect, dotArr, answerData) { - - console.log(' in setOneAnswerDataNew') - const rect = colorRect.ccRect; - const x = rect.x + rect.width / 2; - const y = rect.y +rect.height / 2; - const checkPoint = cc.v2(x, y); - - const checkDot = this.getColorDot(x, y, 5); - - console.log(' checkPoint:' , checkPoint) - - this.sample.addChild(checkDot); - - for (let i=0; i<dotArr.length; i++) { - - const dotRect = dotArr[i]; - const checkRect = dotRect.ccRect; - - - if (checkRect.contains(checkPoint)) { - - answerData[i.toString()] = colorRect; - return; - } - - } - - }, - - setOneAnswerData(colorRect, dotArr, answerData) { - - // console.log(' in setOneAnswerData') - // console.log('colorRect: ', colorRect) - // console.log('dotArr: ', dotArr) - // console.log('answerData: ', answerData) - - - const rect = colorRect.ccRect; - - for (let i = 0; i < dotArr.length; i++) { - - const { dotRect } = dotArr[i]; - // const {pos} = dotArr[i]; - // if (rect.contains(pos)) { - if (rect.intersects(dotRect)) { - answerData[i.toString()] = colorRect; - return; - } - - } - - }, - - getLabel(text) { - const labelNode = new cc.Node(); - const label = labelNode.addComponent(cc.Label); - label.string = text; - labelNode.color = cc.Color.BLACK; - label.fontSize = 20; - return labelNode; - }, - - getColorRect(rect, color='red') { - - // const node = new cc.Node(); - // const colorRect = node.addComponent(cc.Graphics); - // if (!color) { - // color = cc.Color.RED; - // } - // colorRect.fillColor = color - // node.opacity = 0.5; - // colorRect.fillRect(rect.x, rect.y, rect.width, rect.height); - - // node.ccRect = new cc.Rect(rect.x, rect.y, rect.width, rect.height); - - - const node = this.getSprNode(color); - node.anchorX = 0; - node.anchorY = 0; - node.x = rect.x; - node.y = rect.y; - node.scaleX = rect.width / node.width; - node.scaleY = rect.height / node.height; - - node.ccRect = new cc.Rect(rect.x, rect.y, rect.width, rect.height); - - return node; - }, - - getColorDot(x, y, r = 10) { - const node = new cc.Node(); - - if (this.debugLayer.parent && this.debugLayer.active) { - // const colorDot = node.addComponent(cc.Graphics); - // colorDot.fillColor = cc.Color.BLUE; - // colorDot.fillRect( - r/2, - r/ 2, r, r); - - - const rect = { - x:- r/2, - y: - r/ 2, - width:r, - height:r - } - // const colorDot = this.getColorRect(rect,'blue'); - // colorDot.fillColor = cc.Color.BLUE; - // colorDot.fillRect( - r/2, - r/ 2, r, r); - - const colorDot = this.getSprNode('blue'); - - - colorDot.anchorX = 0; - colorDot.anchorY = 0; - colorDot.x = rect.x; - colorDot.y = rect.y; - colorDot.scaleX = rect.width / colorDot.width; - colorDot.scaleY = rect.height / colorDot.height; - node.addChild(colorDot); - - - } - - node.x = x; - node.y = y; - // node.pos = new cc.Vec2(x, y); - - // node.opacity = 0.5; - - const rect = new cc.Rect(node.x - r / 2, node.y - r / 2, r, r); - node.dotRect = rect; - return node; - }, - - checkIsRightLetter(result) { - const block = result?.data?.block - if (!block) { - return false; - } - return false; - - const letter = this.data.letter; - const letterLabelData = this.getPhotoLabelData(letter, block); - - return letterLabelData; - }, - - checkIsRightPos(result) { - const block = result?.data?.block - if (!block) { - return false; - } - - return false; - - const iconLabelData = this.getPhotoLabelData('I like', block); - const topLabelData = this.getPhotoLabelData('n and repeat', block); - const bottomLabelData = this.getPhotoLabelData('n, point, and repeat', block); - if (!iconLabelData) { - return false; - } - - const topY = topLabelData.location.top_left.y; - const bottomY = bottomLabelData.location.top_left.y; - const iconY = iconLabelData.location.top_left.y; - if (bottomY <= iconY <= topY) { - return true; - } - }, - - showPhotoSuccess() { - console.log(' in showPhotoSuccess') - - if (!this.data.finish_audio_url) { - return; - } - - playAudio(this.data.finish_audio_url) - - }, - - getPhotoData(cb) { - - const tmpData1 = {"result":{"text":[{"left":0.10519801825284958,"right":0.48514851927757263,"top":0.1924528330564499,"bottom":0.04150943458080292,"score":0.531991720199585,"content":"w9ani 2å¦"},{"left":0.11881188303232193,"right":0.5346534848213196,"top":0.2339622676372528,"bottom":0.5207546949386597,"score":0.8821592926979065,"content":"AAAA"},{"left":0.5061880946159363,"right":0.9863861203193665,"top":0.2037735879421234,"bottom":0.498113214969635,"score":0.9470328688621521,"content":"AAAAA"},{"left":0.13242574036121368,"right":0.9727723002433777,"top":0.7584905624389648,"bottom":0.9094339609146118,"score":0.9460853934288025,"content":"aaaaaaa00"}]}} - // const tmpData1 = {"result":{"text":[{"left":0,"right":0.33299797773361206,"top":0.0971250981092453,"bottom":0.12354312092065811,"content":1,"text":"race,write,and say."},{"left":0.14084507524967194,"right":0.9476861357688904,"top":0.13131313025951385,"bottom":0.21445220708847046,"content":0.9066159129142761,"text":"AAAA-A-AA"},{"left":0.28470826148986816,"right":0.9315895438194275,"top":0.2735042870044708,"bottom":0.32867133617401123,"content":0.9610617756843567,"text":"aaaq qa"},{"left":0.03018108569085598,"right":0.6438632011413574,"top":0.37995338439941406,"bottom":0.41025641560554504,"content":1,"text":"Listen. Then write Aa or cross it out. o5"},{"left":0.636820912361145,"right":0.7655935883522034,"top":0.4755244851112366,"bottom":0.5314685106277466,"content":0.8729087710380554,"text":"Aa"},{"left":0.10663983970880508,"right":0.11167001724243164,"top":0.5788655877113342,"bottom":0.6021755933761597,"content":0.7464486360549927,"text":"4"},{"left":0.1589537262916565,"right":0.29074445366859436,"top":0.5936285853385925,"bottom":0.6596736311912537,"content":0.8887001872062683,"text":"Aa"},{"left":0.6549295783042908,"right":0.7786720395088196,"top":0.5920745730400085,"bottom":0.6643356680870056,"content":0.9307805895805359,"text":"Aa"},{"left":0.11267605423927307,"right":0.4034205377101898,"top":0.7700077891349792,"bottom":0.807303786277771,"content":1,"text":"Lusten and chant, bd"},{"left":0.28973841667175293,"right":0.7162978053092957,"top":0.9254079461097717,"bottom":0.9712509512901306,"content":0.9342746138572693,"text":"户藤미 Ow"},{"left":0.8158953785896301,"right":0.7203219532966614,"top":0.9611499905586243,"bottom":0.9370629191398621,"content":0.7845855951309204,"text":"0ç« "}]}} - cb(tmpData1); - return; - const tmpData = - { - "code":200000, - "message":"success", - "result":{ - "homography":{ - "matrix":[ - [ - 1.4966796485557876, - 0.5865544493734395, - 46.43280157429157 - ], - [ - -0.01005137610702238, - 1.4984154182794625, - 96.67508554672378 - ], - [ - 0.000019639357377687945, - 0.001378134169965562, - 1 - ] - ], - "query_size":[ - 640, - 832 - ], - "support_size":[ - 640, - 480 - ] - }, - "support_results":[ - [ - [ - 0.2924, - 0.1243, - 0.3488, - 0.1873, - "A", - 0.9908210039138794 - ], - [ - 0.3907, - 0.1245, - 0.4472, - 0.1909, - "A", - 0.9895601272583008 - ], - [ - 0.7505, - 0.1161, - 0.8179, - 0.1909, - "A", - 0.9865421056747437 - ], - [ - 0.8503, - 0.1128, - 0.9112, - 0.1917, - "A", - 0.9810258150100708 - ], - [ - 0.6587, - 0.1186, - 0.719, - 0.186, - "A", - 0.9783920049667358 - ], - [ - 0.4766, - 0.1212, - 0.5328, - 0.1916, - "A", - 0.9687917828559875 - ], - [ - 0.5683, - 0.1199, - 0.6217, - 0.1859, - "A", - 0.9639236927032471 - ], - [ - 0.7852, - 0.2524, - 0.8253, - 0.288, - "a", - 0.9914705753326416 - ], - [ - 0.5002, - 0.2517, - 0.5432, - 0.2862, - "a", - 0.9906148314476013 - ], - [ - 0.6927, - 0.2471, - 0.7312, - 0.2832, - "a", - 0.9835354089736938 - ], - [ - 0.5963, - 0.2489, - 0.6354, - 0.2856, - "a", - 0.9809314608573914 - ], - [ - 0.4034, - 0.2494, - 0.4504, - 0.2877, - "a", - 0.9800149202346802 - ], - [ - 0.8807, - 0.248, - 0.9223, - 0.2903, - "a", - 0.9736253023147583 - ], - [ - 0.3024, - 0.2486, - 0.3559, - 0.2896, - "a", - 0.9720337986946106 - ] - ] - ], - "text":[ - { - "bbox":[ - { - "x1":0.2924, - "y1":0.1243 - }, - { - "x2":0.3488, - "y2":0.1243 - }, - { - "x3":0.3488, - "y3":0.1873 - }, - { - "x4":0.2924, - "y4":0.1873 - } - ], - "content":"A", - "score":0.9908210039138794 - }, - { - "bbox":[ - { - "x1":0.3907, - "y1":0.1245 - }, - { - "x2":0.4472, - "y2":0.1245 - }, - { - "x3":0.4472, - "y3":0.1909 - }, - { - "x4":0.3907, - "y4":0.1909 - } - ], - "content":"A", - "score":0.9895601272583008 - }, - { - "bbox":[ - { - "x1":0.7505, - "y1":0.1161 - }, - { - "x2":0.8179, - "y2":0.1161 - }, - { - "x3":0.8179, - "y3":0.1909 - }, - { - "x4":0.7505, - "y4":0.1909 - } - ], - "content":"A", - "score":0.9865421056747437 - }, - { - "bbox":[ - { - "x1":0.8503, - "y1":0.1128 - }, - { - "x2":0.9112, - "y2":0.1128 - }, - { - "x3":0.9112, - "y3":0.1917 - }, - { - "x4":0.8503, - "y4":0.1917 - } - ], - "content":"A", - "score":0.9810258150100708 - }, - { - "bbox":[ - { - "x1":0.6587, - "y1":0.1186 - }, - { - "x2":0.719, - "y2":0.1186 - }, - { - "x3":0.719, - "y3":0.186 - }, - { - "x4":0.6587, - "y4":0.186 - } - ], - "content":"A", - "score":0.9783920049667358 - }, - { - "bbox":[ - { - "x1":0.4766, - "y1":0.1212 - }, - { - "x2":0.5328, - "y2":0.1212 - }, - { - "x3":0.5328, - "y3":0.1916 - }, - { - "x4":0.4766, - "y4":0.1916 - } - ], - "content":"A", - "score":0.9687917828559875 - }, - { - "bbox":[ - { - "x1":0.5683, - "y1":0.1199 - }, - { - "x2":0.6217, - "y2":0.1199 - }, - { - "x3":0.6217, - "y3":0.1859 - }, - { - "x4":0.5683, - "y4":0.1859 - } - ], - "content":"A", - "score":0.9639236927032471 - }, - { - "bbox":[ - { - "x1":0.7852, - "y1":0.2524 - }, - { - "x2":0.8253, - "y2":0.2524 - }, - { - "x3":0.8253, - "y3":0.288 - }, - { - "x4":0.7852, - "y4":0.288 - } - ], - "content":"a", - "score":0.9914705753326416 - }, - { - "bbox":[ - { - "x1":0.5002, - "y1":0.2517 - }, - { - "x2":0.5432, - "y2":0.2517 - }, - { - "x3":0.5432, - "y3":0.2862 - }, - { - "x4":0.5002, - "y4":0.2862 - } - ], - "content":"a", - "score":0.9906148314476013 - }, - { - "bbox":[ - { - "x1":0.6927, - "y1":0.2471 - }, - { - "x2":0.7312, - "y2":0.2471 - }, - { - "x3":0.7312, - "y3":0.2832 - }, - { - "x4":0.6927, - "y4":0.2832 - } - ], - "content":"a", - "score":0.9835354089736938 - }, - { - "bbox":[ - { - "x1":0.5963, - "y1":0.2489 - }, - { - "x2":0.6354, - "y2":0.2489 - }, - { - "x3":0.6354, - "y3":0.2856 - }, - { - "x4":0.5963, - "y4":0.2856 - } - ], - "content":"a", - "score":0.9809314608573914 - }, - { - "bbox":[ - { - "x1":0.8807, - "y1":0.248 - }, - { - "x2":0.9223, - "y2":0.248 - }, - { - "x3":0.9223, - "y3":0.2903 - }, - { - "x4":0.8807, - "y4":0.2903 - } - ], - "content":"a", - "score":0.9736253023147583 - }, - { - "bbox":[ - { - "x1":0.3024, - "y1":0.2486 - }, - { - "x2":0.3559, - "y2":0.2486 - }, - { - "x3":0.3559, - "y3":0.2896 - }, - { - "x4":0.3024, - "y4":0.2896 - } - ], - "content":"a", - "score":0.9720337986946106 - } - ] - } - } - // { - // "code": 200000, - // "message": "success", - // "result": { - // "support_results": [ - // [ - // [ - // 0.49317359924316406, - // 0.25097235652010197, - // 0.5522325038909912, - // 0.288081715131967, - // "a", - // 0.990108072757721 - // ] - // ], - // [ - // [ - // 0.7815923094749451, - // 0.2423561773522615, - // 0.8420042395591736, - // 0.2829396176165032, - // "a", - // 0.9900233745574951 - // ] - // ], - // [ - // [ - // 0.5897714495658875, - // 0.24693736438131567, - // 0.6457504034042358, - // 0.2819446122459721, - // "a", - // 0.9894896745681763 - // ] - // ], - // [ - // [ - // 0.2031928449869156, - // 0.25154209940460914, - // 0.26929566264152527, - // 0.29193248868186233, - // "a", - // 0.983356773853302 - // ] - // ], - // [ - // [ - // 0.39285269379615784, - // 0.24877103711543316, - // 0.45319148898124695, - // 0.2872285145969844, - // "a", - // 0.9817916750907898 - // ] - // ], - // [ - // [ - // 0.30443957448005676, - // 0.2532131404780602, - // 0.3565950095653534, - // 0.2885934469473862, - // "a", - // 0.9796608090400696 - // ] - // ], - // [ - // [ - // 0.8672714233398438, - // 0.24161506162136312, - // 0.9294711947441101, - // 0.2848689417255425, - // "a", - // 0.9749398231506348 - // ] - // ], - // [ - // [ - // 0.680833101272583, - // 0.24406777752747533, - // 0.7436296343803406, - // 0.28508718252948045, - // "a", - // 0.9576545357704163 - // ] - // ], - // [ - // [ - // 0.48491987586021423, - // 0.12172665519367754, - // 0.5459403395652771, - // 0.19091845712618705, - // "A", - // 0.9131966829299927 - // ] - // ], - // [ - // [ - // 0.5817452669143677, - // 0.12464039263645885, - // 0.6427905559539795, - // 0.18670312292435287, - // "A", - // 0.8777841925621033 - // ] - // ], - // [ - // [ - // 0.6734722256660461, - // 0.12392509000705718, - // 0.7303305864334106, - // 0.18485528186833022, - // "A", - // 0.8367360234260559 - // ] - // ], - // [ - // [ - // 0.8564218282699585, - // 0.1192738632772547, - // 0.9225841164588928, - // 0.19054701754113432, - // "A", - // 0.7801001071929932 - // ] - // ], - // [ - // [ - // 0.7687476277351379, - // 0.12338259301840243, - // 0.8205023407936096, - // 0.18305307740282176, - // "A", - // 0.6130796670913696 - // ] - // ], - // [ - // [ - // 0.3863550126552582, - // 0.1285817704766488, - // 0.4408574104309082, - // 0.18449943199799176, - // "A", - // 0.5841907858848572 - // ] - // ] - // ], - // "text": [ - // { - // "bbox": [ - // { - // "x1": 0.49317359924316406, - // "y1": 0.25097235652010197 - // }, - // { - // "x2": 0.5522325038909912, - // "y2": 0.25097235652010197 - // }, - // { - // "x3": 0.5522325038909912, - // "y3": 0.288081715131967 - // }, - // { - // "x4": 0.49317359924316406, - // "y4": 0.288081715131967 - // } - // ], - // "content": "a", - // "score": 0.990108072757721 - // }, - // { - // "bbox": [ - // { - // "x1": 0.7815923094749451, - // "y1": 0.2423561773522615 - // }, - // { - // "x2": 0.8420042395591736, - // "y2": 0.2423561773522615 - // }, - // { - // "x3": 0.8420042395591736, - // "y3": 0.2829396176165032 - // }, - // { - // "x4": 0.7815923094749451, - // "y4": 0.2829396176165032 - // } - // ], - // "content": "a", - // "score": 0.9900233745574951 - // }, - // { - // "bbox": [ - // { - // "x1": 0.5897714495658875, - // "y1": 0.24693736438131567 - // }, - // { - // "x2": 0.6457504034042358, - // "y2": 0.24693736438131567 - // }, - // { - // "x3": 0.6457504034042358, - // "y3": 0.2819446122459721 - // }, - // { - // "x4": 0.5897714495658875, - // "y4": 0.2819446122459721 - // } - // ], - // "content": "a", - // "score": 0.9894896745681763 - // }, - // { - // "bbox": [ - // { - // "x1": 0.2031928449869156, - // "y1": 0.25154209940460914 - // }, - // { - // "x2": 0.26929566264152527, - // "y2": 0.25154209940460914 - // }, - // { - // "x3": 0.26929566264152527, - // "y3": 0.29193248868186233 - // }, - // { - // "x4": 0.2031928449869156, - // "y4": 0.29193248868186233 - // } - // ], - // "content": "a", - // "score": 0.983356773853302 - // }, - // { - // "bbox": [ - // { - // "x1": 0.39285269379615784, - // "y1": 0.24877103711543316 - // }, - // { - // "x2": 0.45319148898124695, - // "y2": 0.24877103711543316 - // }, - // { - // "x3": 0.45319148898124695, - // "y3": 0.2872285145969844 - // }, - // { - // "x4": 0.39285269379615784, - // "y4": 0.2872285145969844 - // } - // ], - // "content": "a", - // "score": 0.9817916750907898 - // }, - // { - // "bbox": [ - // { - // "x1": 0.30443957448005676, - // "y1": 0.2532131404780602 - // }, - // { - // "x2": 0.3565950095653534, - // "y2": 0.2532131404780602 - // }, - // { - // "x3": 0.3565950095653534, - // "y3": 0.2885934469473862 - // }, - // { - // "x4": 0.30443957448005676, - // "y4": 0.2885934469473862 - // } - // ], - // "content": "a", - // "score": 0.9796608090400696 - // }, - // { - // "bbox": [ - // { - // "x1": 0.8672714233398438, - // "y1": 0.24161506162136312 - // }, - // { - // "x2": 0.9294711947441101, - // "y2": 0.24161506162136312 - // }, - // { - // "x3": 0.9294711947441101, - // "y3": 0.2848689417255425 - // }, - // { - // "x4": 0.8672714233398438, - // "y4": 0.2848689417255425 - // } - // ], - // "content": "a", - // "score": 0.9749398231506348 - // }, - // { - // "bbox": [ - // { - // "x1": 0.680833101272583, - // "y1": 0.24406777752747533 - // }, - // { - // "x2": 0.7436296343803406, - // "y2": 0.24406777752747533 - // }, - // { - // "x3": 0.7436296343803406, - // "y3": 0.28508718252948045 - // }, - // { - // "x4": 0.680833101272583, - // "y4": 0.28508718252948045 - // } - // ], - // "content": "a", - // "score": 0.9576545357704163 - // }, - // { - // "bbox": [ - // { - // "x1": 0.48491987586021423, - // "y1": 0.12172665519367754 - // }, - // { - // "x2": 0.5459403395652771, - // "y2": 0.12172665519367754 - // }, - // { - // "x3": 0.5459403395652771, - // "y3": 0.19091845712618705 - // }, - // { - // "x4": 0.48491987586021423, - // "y4": 0.19091845712618705 - // } - // ], - // "content": "A", - // "score": 0.9131966829299927 - // }, - // { - // "bbox": [ - // { - // "x1": 0.5817452669143677, - // "y1": 0.12464039263645885 - // }, - // { - // "x2": 0.6427905559539795, - // "y2": 0.12464039263645885 - // }, - // { - // "x3": 0.6427905559539795, - // "y3": 0.18670312292435287 - // }, - // { - // "x4": 0.5817452669143677, - // "y4": 0.18670312292435287 - // } - // ], - // "content": "A", - // "score": 0.8777841925621033 - // }, - // { - // "bbox": [ - // { - // "x1": 0.6734722256660461, - // "y1": 0.12392509000705718 - // }, - // { - // "x2": 0.7303305864334106, - // "y2": 0.12392509000705718 - // }, - // { - // "x3": 0.7303305864334106, - // "y3": 0.18485528186833022 - // }, - // { - // "x4": 0.6734722256660461, - // "y4": 0.18485528186833022 - // } - // ], - // "content": "A", - // "score": 0.8367360234260559 - // }, - // { - // "bbox": [ - // { - // "x1": 0.8564218282699585, - // "y1": 0.1192738632772547 - // }, - // { - // "x2": 0.9225841164588928, - // "y2": 0.1192738632772547 - // }, - // { - // "x3": 0.9225841164588928, - // "y3": 0.19054701754113432 - // }, - // { - // "x4": 0.8564218282699585, - // "y4": 0.19054701754113432 - // } - // ], - // "content": "A", - // "score": 0.7801001071929932 - // }, - // { - // "bbox": [ - // { - // "x1": 0.7687476277351379, - // "y1": 0.12338259301840243 - // }, - // { - // "x2": 0.8205023407936096, - // "y2": 0.12338259301840243 - // }, - // { - // "x3": 0.8205023407936096, - // "y3": 0.18305307740282176 - // }, - // { - // "x4": 0.7687476277351379, - // "y4": 0.18305307740282176 - // } - // ], - // "content": "A", - // "score": 0.6130796670913696 - // }, - // { - // "bbox": [ - // { - // "x1": 0.3863550126552582, - // "y1": 0.1285817704766488 - // }, - // { - // "x2": 0.4408574104309082, - // "y2": 0.1285817704766488 - // }, - // { - // "x3": 0.4408574104309082, - // "y3": 0.18449943199799176 - // }, - // { - // "x4": 0.3863550126552582, - // "y4": 0.18449943199799176 - // } - // ], - // "content": "A", - // "score": 0.5841907858848572 - // } - // ] - // } - // } - - cb(tmpData); - }, - - - photoCheckStart() { - this.getPhotoData((data) => { - this.photoEnd(data); - }) - }, - - - updatePhotoCheck() { - if (this.isOpenPhotoCheck) { - - this.photoCheckStart(); - - this.isOpenPhotoCheck = false; - } - }, - - - update() { - this.updatePhotoCheck(); - }, - - - // ------------------------------------------------ - getSprNode(resName) { - const sf = cc.find('Canvas/res/img/' + resName).getComponent(cc.Sprite).spriteFrame; - const node = new cc.Node(); - node.addComponent(cc.Sprite).spriteFrame = sf; - return node; - }, - - - getSpriteFrimeByUrl(url, cb) { - cc.loader.load({ url }, (err, img) => { - const spriteFrame = new cc.SpriteFrame(img) - if (cb) { - cb(spriteFrame); - } - }) - }, - - getSprNodeByUrl(url, cb) { - const node = new cc.Node(); - const spr = node.addComponent(cc.Sprite); - this.getSpriteFrimeByUrl(url, (sf) => { - spr.spriteFrame = sf; - if (cb) { - cb(node); - } - }) - }, - - _audioId: null, - playAudioByUrl(audio_url, cb = null, loadcb = null, loop = false) { - - if (this._audioId) { - cc.audioEngine.pause(this._audioId); - } - - let audioId; - - if (audio_url) { - cc.assetManager.loadRemote(audio_url, (err, audioClip) => { - - audioId = cc.audioEngine.play(audioClip, loop, 0.8); - this._audioId = audioId; - - if (cb) { - cc.audioEngine.setFinishCallback(audioId, () => { - cb(); - }); - } - - if (loadcb) { - loadcb(audioId); - } - - }); - } - }, - _timeoutIds: null, - _intervalIds: null, - // 生命周期 - onDestroy() { - this.isDestroy = true; - this._timeoutIds.forEach(id => { - clearTimeout(id); - }); - this._intervalIds.forEach(id => { - clearInterval(id); - }); - }, - - - onDestroy() { - - clearTimeout(this.timer_1); - } - - // ------------------------------------------ - -}); - diff --git a/assets/OP_18/scene/OP_18_old.js.meta b/assets/OP_18/scene/OP_18_old.js.meta deleted file mode 100644 index 4013cb67843ebba975df53c5b455dcacad9dcea8..0000000000000000000000000000000000000000 --- a/assets/OP_18/scene/OP_18_old.js.meta +++ /dev/null @@ -1,9 +0,0 @@ -{ - "ver": "1.0.8", - "uuid": "88cb9a2d-6891-46a9-8ab6-32b40d3cc977", - "isPlugin": false, - "loadPluginInWeb": true, - "loadPluginInNative": true, - "loadPluginInEditor": false, - "subMetas": {} -} \ No newline at end of file diff --git a/assets/OP_18/script/util.js b/assets/OP_18/script/OP_18_util.js similarity index 100% rename from assets/OP_18/script/util.js rename to assets/OP_18/script/OP_18_util.js diff --git a/assets/OP_18/script/util.js.meta b/assets/OP_18/script/OP_18_util.js.meta similarity index 100% rename from assets/OP_18/script/util.js.meta rename to assets/OP_18/script/OP_18_util.js.meta diff --git a/assets/OP_18/script/defaultData.js b/assets/OP_18/script/defaultData.js deleted file mode 100644 index b60ef50ae5508f2e59beb316a2f8358d3390da42..0000000000000000000000000000000000000000 --- a/assets/OP_18/script/defaultData.js +++ /dev/null @@ -1,2 +0,0 @@ -// export const defaultData = {"animArr":[{"key":"letter_big_0","title":"大写彩色动画","skeJsonData":{"url":"https://staging-teach.cdn.ireadabc.com/3854b249ba08fe0d7f7be94308eda238.json","name":"D大彩_ske.json"},"texJsonData":{"url":"https://staging-teach.cdn.ireadabc.com/047c4030ce0956e7fa491bb10efa99d0.json","name":"D大彩_tex.json"},"texPngData":{"url":"https://staging-teach.cdn.ireadabc.com/fdeefde6344de8b50de4c1e97532de46.png","name":"D大彩_tex.png"}},{"key":"letter_big_1","title":"大写黑色动画","skeJsonData":{"url":"https://staging-teach.cdn.ireadabc.com/4a73aa0ed1abe9fe59cbc9396164ab0b.json","name":"D大黑_ske.json"},"texJsonData":{"url":"https://staging-teach.cdn.ireadabc.com/264182a83f00f862662611adde7afc05.json","name":"D大黑_tex.json"},"texPngData":{"url":"https://staging-teach.cdn.ireadabc.com/444b96de33fb48ab6a488b058d81449d.png","name":"D大黑_tex.png"}},{"key":"letter_small_0","title":"å°å†™å½©è‰²åŠ¨ç”»","skeJsonData":{"url":"https://staging-teach.cdn.ireadabc.com/4fbe3832ff08127bb2899c525f3c0918.json","name":"Då°å½©_ske.json"},"texJsonData":{"url":"https://staging-teach.cdn.ireadabc.com/958bfb6722f4bf5f2b5d975e420cf23c.json","name":"Då°å½©_tex.json"},"texPngData":{"url":"https://staging-teach.cdn.ireadabc.com/489483bb7b433044f5736ac1f05d4bf2.png","name":"Då°å½©_tex.png"}},{"key":"letter_small_1","title":"å°å†™é»‘色动画","skeJsonData":{"url":"https://staging-teach.cdn.ireadabc.com/f88764f49c73d2bdc7ab21d3f3f3c4bc.json","name":"Då°é»‘_ske.json"},"texJsonData":{"url":"https://staging-teach.cdn.ireadabc.com/403916dcfd80ce24069eddce10e0124c.json","name":"Då°é»‘_tex.json"},"texPngData":{"url":"https://staging-teach.cdn.ireadabc.com/840b55ebf6ae75ec7cf011c48f3189ec.png","name":"Då°é»‘_tex.png"}}],"write_big_0_audio_url":"https://staging-teach.cdn.ireadabc.com/d4c2f72fd4238c48c1b19d747d0ce382.mp3","write_big_1_audio_url":"https://staging-teach.cdn.ireadabc.com/4c5a39defde0e90f3a53bf50db6943f4.mp3","write_big_2_audio_url":"https://staging-teach.cdn.ireadabc.com/a5652eadaf165869b2b551530921bb0d.mp3","write_small_0_audio_url":"https://staging-teach.cdn.ireadabc.com/d099918c85ac7afc33f169c9038f46d4.mp3","write_small_1_audio_url":"https://staging-teach.cdn.ireadabc.com/2f1ea180fb4d17dce34e8d7cc6cf9159.mp3","write_small_2_audio_url":"https://staging-teach.cdn.ireadabc.com/15147c1c4ae733303566baf84fae2840.mp3","finish_audio_url":"https://staging-teach.cdn.ireadabc.com/7fb349c67a76d2112a0604e624acaa97.mp3","tip_audio_url":"https://staging-teach.cdn.ireadabc.com/d5cdef3f02abe29b14ca8c16ad4e7543.mp3","letter":"D","dot_small_2_url":"https://staging-teach.cdn.ireadabc.com/8a8cbc71ad861b372418f36aef32a8cd.png","dot_small_1_url":"https://staging-teach.cdn.ireadabc.com/80221b2a4b62f57c33c7e6491f372077.png","dot_big_1_url":"https://staging-teach.cdn.ireadabc.com/e2b74edc1520bc2001d82b4e8aaba5d7.png","dot_big_2_url":"https://staging-teach.cdn.ireadabc.com/e2b74edc1520bc2001d82b4e8aaba5d7.png","bg_pic_url":"http://staging-teach.cdn.ireadabc.com/7e2e266a6e2e596103ac973e0a22d3ac.jpg"} -export const defaultData = {"write_big_0_audio_url":"https://teach.cdn.ireadabc.com/d1dc9853d03d0237f0d2206dcf7f62e9.mp3","write_big_1_audio_url":"https://teach.cdn.ireadabc.com/eb0054aa1415046dfa35ed31a3a7e35c.mp3","tip_audio_url":"https://teach.cdn.ireadabc.com/52824b6c66664de8ee7b3bef3af5593f.mp3","finish_audio_url":"https://staging-teach.cdn.ireadabc.com/750a7079ea924a9260cebf649645b87c.mp3","write_small_0_audio_url":"https://teach.cdn.ireadabc.com/b2ce05a59cbdcaef5d85e56c6ffdcc20.mp3","write_small_1_audio_url":"https://teach.cdn.ireadabc.com/eb0054aa1415046dfa35ed31a3a7e35c.mp3","write_small_2_audio_url":"https://teach.cdn.ireadabc.com/908269df525600b866042ab473a0b879.mp3","write_big_2_audio_url":"https://teach.cdn.ireadabc.com/0fd3a090c37a2c11bb8503908a1326f2.mp3","letter":"A","animArr":[{"key":"letter_big_0","title":"大写彩色动画","skeJsonData":{"url":"https://teach.cdn.ireadabc.com/cdee11a12d4bf498bd3f0931bfe858cf.json","name":"A大彩_ske.json"},"texJsonData":{"url":"https://teach.cdn.ireadabc.com/ae2b83555093e3a739fcef9f107f52bb.json","name":"A大彩_tex.json"},"texPngData":{"url":"https://teach.cdn.ireadabc.com/db4a8c0d718e998f8fd3983aaf39e8d5.png","name":"A大彩_tex.png"}},{"key":"letter_big_1","title":"大写黑色动画","skeJsonData":{"url":"https://teach.cdn.ireadabc.com/14c5231012b4a1f3ac898ca6f83bc213.json","name":"A大黑_ske.json"},"texJsonData":{"url":"https://teach.cdn.ireadabc.com/a9e874a147023e0944cf89c351661218.json","name":"A大黑_tex.json"},"texPngData":{"url":"https://teach.cdn.ireadabc.com/8e12ae87d2c1a7bb6fc320272a930d9b.png","name":"A大黑_tex.png"}},{"key":"letter_small_0","title":"å°å†™å½©è‰²åŠ¨ç”»","skeJsonData":{"url":"https://teach.cdn.ireadabc.com/8c0ccddb1d49eb555846c006244b27dc.json","name":"Aå°å½©_ske.json"},"texJsonData":{"url":"https://teach.cdn.ireadabc.com/667e32080f139a09ab434a698dccc18b.json","name":"Aå°å½©_tex.json"},"texPngData":{"url":"https://teach.cdn.ireadabc.com/65abc1cc2e73a2b9bbaffa497d81e5a4.png","name":"Aå°å½©_tex.png"}},{"key":"letter_small_1","title":"å°å†™é»‘色动画","skeJsonData":{"url":"https://teach.cdn.ireadabc.com/356e9e26a2a74c57791fff7471142d54.json","name":"Aå°é»‘_ske.json"},"texJsonData":{"url":"https://teach.cdn.ireadabc.com/9a262fdad701a170994510e1562baa76.json","name":"Aå°é»‘_tex.json"},"texPngData":{"url":"https://teach.cdn.ireadabc.com/500b883b3c0c0613a6de963f3deb7f72.png","name":"Aå°é»‘_tex.png"}}],"bg_pic_url":"https://teach.cdn.ireadabc.com/520b8785f6b253aef7ced8941711c1cf.png","dot_big_1_url":"https://teach.cdn.ireadabc.com/125b10277b51185a8238f0ad2d399e3e.png","dot_big_2_url":"https://teach.cdn.ireadabc.com/e61ae4cb1ce8dfbec37f153980233d6b.png","dot_small_1_url":"https://teach.cdn.ireadabc.com/9b5c4f22242cff975aa6189235e4caf9.png","dot_small_2_url":"https://teach.cdn.ireadabc.com/cd32e56db4dc9fadea2ad52aa0c93066.png"} \ No newline at end of file diff --git a/assets/OP_18/script/defaultData.js.meta b/assets/OP_18/script/defaultData.js.meta deleted file mode 100644 index 8d43b1fd21fb8f5449a380018df15fd3ea684318..0000000000000000000000000000000000000000 --- a/assets/OP_18/script/defaultData.js.meta +++ /dev/null @@ -1,9 +0,0 @@ -{ - "ver": "1.0.8", - "uuid": "c41b0e51-55d7-443c-af3a-b22c3dd9b9e5", - "isPlugin": false, - "loadPluginInWeb": true, - "loadPluginInNative": true, - "loadPluginInEditor": false, - "subMetas": {} -} \ No newline at end of file