Commit 9f6aed56 authored by Tt's avatar Tt

1

parent 9f5f5457
{ {
"ver": "2.0.1", "ver": "2.0.1",
"uuid": "f0680ae0-c079-45ef-abd7-9e63d90b982b", "uuid": "ed69b5af-07d8-4a24-b3eb-57bf1c7b7cc6",
"downloadMode": 0, "downloadMode": 0,
"duration": 0.130612, "duration": 1.764,
"subMetas": {} "subMetas": {}
} }
\ No newline at end of file
{
"ver": "2.0.1",
"uuid": "9aea96dc-0ed1-4a3b-aee1-a981674e1e53",
"downloadMode": 0,
"duration": 0.168,
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.0.1",
"uuid": "18e16f8e-7ef2-438f-ac07-0a68ea7b2fc9",
"downloadMode": 0,
"duration": 4.892,
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.0.1",
"uuid": "665e544c-fe92-4f24-bdcc-9475a763ff0c",
"downloadMode": 0,
"duration": 0.556563,
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.0.1",
"uuid": "c38a5b68-3f3b-415e-89ee-e6afb6fedbdf",
"downloadMode": 0,
"duration": 2.52,
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.0.1",
"uuid": "ab03c99c-c830-45fa-a537-eaf8f1295c4d",
"downloadMode": 0,
"duration": 4.146667,
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.0.1",
"uuid": "0eebd891-d79b-4b0f-87c8-613f7780d841",
"downloadMode": 0,
"duration": 0.972,
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.0.1",
"uuid": "342d6b41-d606-43d5-9676-7b67f03d236f",
"downloadMode": 0,
"duration": 0.938688,
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.0.1",
"uuid": "16a0bc5d-fd4e-443e-aeb0-80139b29574d",
"downloadMode": 0,
"duration": 3.787755,
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.0.1",
"uuid": "e187dccb-ea0a-45de-be95-53c50683cd19",
"downloadMode": 0,
"duration": 1.708286,
"subMetas": {}
}
\ No newline at end of file
{"name":"guid","version":"5.5","frameRate":24,"armature":[{"name":"Armature","animation":[{"name":"guid","ffd":[],"frame":[],"duration":28,"slot":[{"name":"bg_recordmove1","colorFrame":[{"tweenEasing":0,"color":{"aM":54},"duration":8},{"tweenEasing":0,"color":{"aM":54},"duration":20},{"color":{"aM":0},"duration":0}],"displayFrame":[]},{"name":"bg_recordmove","colorFrame":[{"tweenEasing":0,"duration":20},{"color":{"aM":0},"duration":8}],"displayFrame":[]}],"bone":[{"name":"root","scaleFrame":[],"translateFrame":[],"rotateFrame":[]},{"name":"bone","scaleFrame":[{"duration":20,"tweenEasing":0},{"x":1.5,"duration":8,"y":1.5}],"translateFrame":[],"rotateFrame":[]},{"name":"bone1","scaleFrame":[{"x":0.7,"duration":8,"tweenEasing":0,"y":0.7},{"x":0.7,"duration":20,"tweenEasing":0,"y":0.7},{"x":1.5,"duration":0,"y":1.5}],"translateFrame":[],"rotateFrame":[]}],"ik":[],"playTimes":0}],"bone":[{"name":"root","transform":{}},{"name":"bone","transform":{},"parent":"root"},{"name":"bone1","transform":{},"parent":"root"}],"defaultActions":[{"gotoAndPlay":"guid"}],"skin":[{"name":"","slot":[{"name":"bg_recordmove1","display":[{"name":"bg_recordmove","transform":{},"type":"image","path":"bg_recordmove"}]},{"name":"bg_recordmove","display":[{"name":"bg_recordmove","transform":{},"type":"image","path":"bg_recordmove"}]}]}],"frameRate":24,"slot":[{"name":"bg_recordmove","color":{},"parent":"bone"},{"name":"bg_recordmove1","color":{},"z":1,"parent":"bone1"}],"type":"Armature","ik":[],"aabb":{"x":-145.5,"height":234,"y":-117,"width":291}}],"isGlobal":0}
\ No newline at end of file
{
"ver": "1.0.1",
"uuid": "798dc639-44aa-43f5-8633-c41b650f52f3",
"subMetas": {}
}
\ No newline at end of file
{"name":"guid","SubTexture":[{"name":"bg_recordmove","x":1,"height":234,"y":1,"width":291}],"imagePath":"guid_tex.png","height":256,"width":512}
\ No newline at end of file
{
"ver": "1.0.1",
"uuid": "b1e23e77-8349-4843-9061-3a4bd057cb93",
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "b9bdbc54-4550-4d06-9e4f-49a009235a00",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 512,
"height": 256,
"platformSettings": {},
"subMetas": {
"guid_tex": {
"ver": "1.0.4",
"uuid": "d30dd787-4e2d-41a7-8258-38040017f35c",
"rawTextureUuid": "b9bdbc54-4550-4d06-9e4f-49a009235a00",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": -109.5,
"offsetY": 10,
"trimX": 1,
"trimY": 1,
"width": 291,
"height": 234,
"rawWidth": 512,
"rawHeight": 256,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{"frameRate":24,"name":"下滑","version":"5.5","compatibleVersion":"5.5","armature":[{"type":"Armature","frameRate":24,"name":"Armature","aabb":{"x":-21.49,"y":-71.41,"width":46,"height":127},"bone":[{"name":"root"},{"length":143,"name":"bone","parent":"root","transform":{"y":46.686,"skX":-90,"skY":-90}}],"slot":[{"displayIndex":1,"name":"图层1","parent":"bone"},{"name":"圆角矩形_5_拷贝_5(3)","parent":"bone"},{"name":"圆角矩形_5_拷贝_5(2)","parent":"bone"}],"skin":[{"slot":[{"name":"圆角矩形_5_拷贝_5(2)","display":[{"name":"右滑/圆角矩形_5_拷贝_5(2)","transform":{"x":76.1,"y":1.51,"skX":-179.92,"skY":-179.92}},{"name":"右滑/圆角矩形_5_拷贝_5","transform":{"x":76.1,"y":1.51,"skX":-179.92,"skY":-179.92}}]},{"name":"图层1","display":[{"name":"右滑/图层1","transform":{"x":16.1,"y":1.42,"skX":-179.92,"skY":-179.92}},{"name":"右滑/图层1(2)","transform":{"x":16.1,"y":1.42,"skX":-179.92,"skY":-179.92}}]},{"name":"圆角矩形_5_拷贝_5(3)","display":[{"name":"右滑/圆角矩形_5_拷贝_5(3)","transform":{"x":45.1,"y":1.46,"skX":-179.92,"skY":-179.92}},{"name":"右滑/圆角矩形 5 拷贝 5_0","transform":{"x":45.6,"y":1.46,"skX":-179.92,"skY":-179.92}}]}]}],"animation":[{"duration":24,"playTimes":0,"name":"normal","slot":[{"name":"图层1","displayFrame":[{"duration":18,"value":1},{"duration":6},{"duration":0,"value":1}]},{"name":"圆角矩形_5_拷贝_5(3)","displayFrame":[{"duration":12},{"duration":6,"value":1},{"duration":6}]},{"name":"圆角矩形_5_拷贝_5(2)","displayFrame":[{"duration":6},{"duration":6,"value":1},{"duration":12}]}]}],"defaultActions":[{"gotoAndPlay":"normal"}]}]}
\ No newline at end of file
{
"ver": "1.0.1",
"uuid": "84759aec-66d8-4e1a-a255-ad6174a46111",
"subMetas": {}
}
\ No newline at end of file
{"name":"下滑","imagePath":"下滑_tex.png","SubTexture":[{"name":"右滑/图层1","x":97,"height":50,"y":75,"width":30},{"name":"右滑/图层1(2)","x":129,"height":50,"y":75,"width":30},{"name":"右滑/圆角矩形 5 拷贝 5_0","x":139,"height":72,"frameY":0,"y":1,"frameHeight":72,"frameX":-1,"frameWidth":41,"width":40},{"name":"右滑/圆角矩形_5_拷贝_5(3)","x":97,"height":72,"y":1,"width":40},{"name":"右滑/圆角矩形_5_拷贝_5(2)","x":49,"height":84,"y":1,"width":46},{"name":"右滑/圆角矩形_5_拷贝_5","x":1,"height":84,"y":1,"width":46}],"height":128,"width":256}
\ No newline at end of file
{
"ver": "1.0.1",
"uuid": "4cf9326e-9c64-4b95-b162-fa2b1041b592",
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "8b5af6a4-00d2-4f06-8bad-638637f908d9",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 256,
"height": 128,
"platformSettings": {},
"subMetas": {
"下滑_tex": {
"ver": "1.0.4",
"uuid": "ccc02bac-cbef-4a2c-84c8-25bad93da948",
"rawTextureUuid": "8b5af6a4-00d2-4f06-8bad-638637f908d9",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": -38,
"offsetY": 1,
"trimX": 1,
"trimY": 1,
"width": 178,
"height": 124,
"rawWidth": 256,
"rawHeight": 128,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{ {
"ver": "1.1.0", "ver": "1.1.0",
"uuid": "c551970e-b095-45f3-9f1d-25cde8b8deb1", "uuid": "f792997f-f029-4df1-9adb-5e28c3e1a1c4",
"subMetas": {} "subMetas": {}
} }
\ No newline at end of file
{
"ver": "1.1.0",
"uuid": "5d8c6a7f-89af-4150-a1e1-c687492e05c3",
"subMetas": {}
}
\ No newline at end of file
{
"ver": "1.1.0",
"uuid": "04c2b808-1c8a-499b-9152-128a1abe340a",
"subMetas": {}
}
\ No newline at end of file
{
"ver": "1.1.0",
"uuid": "f0adf7cd-b2db-4a5a-87fe-4d818a6a6b89",
"subMetas": {}
}
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
{ {
"ver": "1.2.9", "ver": "1.2.9",
"uuid": "0737ce42-24f0-45c6-8e1a-8bdab4f74ba3", "uuid": "e9759136-33bc-45ff-be96-695974b7f179",
"asyncLoadAssets": false, "asyncLoadAssets": false,
"autoReleaseAssets": true, "autoReleaseAssets": true,
"subMetas": {} "subMetas": {}
......
import { onHomeworkFinish } from "../script/util";
import { defaultData } from "../script/defaultData";
import { itemData } from "./data";
import { hyLoader } from "./hyLoader";
import GameManager from "./gameManager";
import pg from "./pg";
import ani from "./ani";
import { asyncDelay, RandomInt, showFireworks } from "../script/utils";
cc.Class({
extends: cc.Component,
properties: {
},
// 生命周期 onLoad
onLoad() {
this.initSceneData();
this.initSize();
},
showLog(str) {
const node = cc.find('middleLayer');
if (node) {
node.getComponent('middleLayer').showLog(str);
} else {
cc.log(str);
}
},
_intervalIds: null,
_timeoutIds: null,
_imageResList: null,
_audioResList: null,
_animaResList: null,
initSceneData() {
this._imageResList = [];
this._audioResList = [];
this._animaResList = [];
this._timeoutIds = [];
this._intervalIds = [];
},
_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;
},
// 生命周期 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();
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.pic_url });
// this._imageResList.push({ url: this.data.pic_url_2 });
},
addPreloadAudio() {
// this._audioResList.push({ url: this.data.audio_url });
},
addPreloadAnima() {
},
preload() {
// const preloadArr = this._imageResList.concat(this._audioResList).concat(this._animaResList);
// cc.assetManager.loadAny(preloadArr, null, null, (err, data) => {
// this.loadEnd();
// if (window && window["air"]) {
// window["air"].hideAirClassLoading();
// }
// cc.debug.setDisplayStats(false);
// });
const preloadArr = [
...this._imageResList,
...this._audioResList,
...this._animaResList
];
cc.assetManager.loadAny(preloadArr, null, null, (err, data) => {
// this.loadEnd();
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();
}
cc.debug.setDisplayStats(false);
});
},
//---------------------------------项目代码开始---------------------------------
loadEnd() {
cc.macro.ENABLE_MULTI_TOUCH = false;
this.initData();
this.initSingleData();
this.initAudio();
this.initView();
this.initEvent();
},
//全局游戏
_gameCode: null,
resultArr: null,
initData() {
//数据解析
GameManager.getIns().parseData(this.data);
this._gameCode = 0;
this.resultArr = [];
},
//单局游戏
_cantouch: null,
_cardPage: null,
_cardLayout: null,
_cardTouchItems: null,
_successItems: null,
initSingleData() {
this._cat = GameManager.getIns().cat;
this._tryagain = GameManager.getIns().tryagain;
this._stageData = GameManager.getIns().getStageData();
GameManager.getIns().setState(0);//调用数组中的数据,同时设置关卡状态为0
// console.log("1")
// this._title = GameManager.getIns().getTitle();
// this._zhuClass = GameManager.getIns().getZhuClass();
// // 所有全局变量 默认都是null
// this._cantouch = 0;
// //界面用数据
// this._cardTouchItems = [];
// this._successItems = [];
// this._cardPage = CardManager.getIns().getPage();
// cc.log(this._cardPage);
},
initAudio() {
},
initView() {
this.initLayout();
},
initLayout() {
if (GameManager.getIns().getState() == 0) {
this.state0InitPart();
} else if (GameManager.getIns().getState() == 1) {
this.state1StartPlay();
} else if (GameManager.getIns().getState() == 2) {
this.state2ComplatePlay();
} else if (GameManager.getIns().getState() == 3) {
this.state3GoodJob();
} else if (GameManager.getIns().getState() == 4) {
this.state4TryAgain();
} else if (GameManager.getIns().getState() == 5) {
this.state5Finish();
} else if (GameManager.getIns().getState() == 6) {
}
},
initEvent() {
let btn_mao = pg.view.find(this, "btn_mao")
let btn_carton = pg.view.find(this, "btn_carton")
let btn_replay = pg.view.find(this, "btn_replay")
let btn_recording = pg.view.find(this, "btn_recording")
let btn_record = pg.view.find(this, "btn_record")
let progress = pg.view.find(this, "progress")
let end = pg.view.find(this, "end");
let end_success = pg.view.find(end, "bg_success")
let bg_tryagain = pg.view.find(end, "bg_tryagain")
let carton = pg.view.find(this, "carton")
let bg_book = pg.view.find(this, "bg_book");
let icon_ex = pg.view.find(this, "icon_ex");
let btn_next = pg.view.find(this, "btn_next");
let btn_return = pg.view.find(this, "btn_return");
let icon_ex_txt = pg.view.find(icon_ex, "txt");
let icon_hand = pg.view.find(this, "icon_hand");
let btn_picture = pg.view.find(this, "btn_picture");
let layout_normal = pg.view.find(this, "card_group/layout_normal");
pg.view.touchOn(btn_record, this.onTouchRecord, this);//注册按钮监听
pg.view.touchOn(btn_next, this.onTouchNext, this);
pg.view.touchOn(btn_return, this.onTouchReturn, this);
pg.view.touchOn(btn_recording, this.onTouchRecording, this);
pg.view.touchOn(btn_replay, this.onTouchReplay, this);
pg.view.touchOn(btn_picture, this.onTouchPicture, this);
pg.view.touchOn(btn_carton, this.onTouchCarton, this);
pg.view.touchOn(icon_ex, this.onTouchWord, this);
pg.view.touchOn(layout_normal, this.onTouchWord, this);
pg.view.touchOn(btn_mao, this.onTouchCat, this);
},
state0InitPart() {
let btn_replay = pg.view.find(this, "btn_replay")
let btn_recording = pg.view.find(this, "btn_recording")
let btn_record = pg.view.find(this, "btn_record")
let progress = pg.view.find(this, "progress")
let end = pg.view.find(this, "end");
let end_success = pg.view.find(end, "bg_success")
let bg_tryagain = pg.view.find(end, "bg_tryagain")
let carton = pg.view.find(this, "carton")
let bg_book = pg.view.find(this, "bg_book");
let icon_ex = pg.view.find(this, "icon_ex");
let btn_next = pg.view.find(this, "btn_next");
let btn_return = pg.view.find(this, "btn_return");
let icon_ex_txt = pg.view.find(icon_ex, "txt");
let icon_hand = pg.view.find(this, "icon_hand");
let btn_picture = pg.view.find(this, "btn_picture");
let layout_normal = pg.view.find(this, "card_group/layout_normal");
layout_normal.removeAllChildren();
let layout_card = pg.view.find(this, "card_group/layout_card");
cc.find("card_group/card_bg2", this.node).opacity = 0;
layout_card.removeAllChildren();
pg.view.visible(pg.view.find(this, "card_group/slider"), false);
this.hideRestartBtn();
pg.view.visible(btn_record, false);
pg.view.visible(end, false);//不显示的内容用false
pg.view.visible(end_success, false);
pg.view.visible(icon_ex, false);
//更换书的样子
pg.view.visible(btn_next, true);//显示的内容用true
pg.view.visible(btn_return, true);
let bg_book_img = this._stageData.img;//从数组中调取img数据
pg.view.setNetImg(bg_book, bg_book_img);//与界面的节点绑定
//拓展加载动画的内容
this.animationName = "";
this._tryagainCount = 0;
if (!this._cat || !this._cat.start || this._catStartPlayed) {
pg.view.loadDB(carton, { ske: this._stageData.cartoonSke, tex: this._stageData.cartoonTex, png: this._stageData.cartoonPng }).then((animationName) => {
this.animationName = animationName;
GameManager.getIns().setState(1);
this.initLayout()//完成后直接进入下一步
})
} else {
pg.audio.playAudioByUrl(this._cat.start).then(() => {
this._catStartPlayed = true;
pg.view.loadDB(carton, { ske: this._stageData.cartoonSke, tex: this._stageData.cartoonTex, png: this._stageData.cartoonPng }).then((animationName) => {
this.animationName = animationName;
GameManager.getIns().setState(1);
this.initLayout()//完成后直接进入下一步
})
})
}
},
state1StartPlay() {
let btn_replay = pg.view.find(this, "btn_replay")
let btn_recording = pg.view.find(this, "btn_recording")
let btn_record = pg.view.find(this, "btn_record")
let progress = pg.view.find(this, "progress")
let end = pg.view.find(this, "end");
let end_success = pg.view.find(end, "bg_success")
let bg_tryagain = pg.view.find(end, "bg_tryagain")
let carton = pg.view.find(this, "carton")
let bg_book = pg.view.find(this, "bg_book");
let icon_ex = pg.view.find(this, "icon_ex");
let btn_next = pg.view.find(this, "btn_next");
let btn_return = pg.view.find(this, "btn_return");
let icon_ex_txt = pg.view.find(icon_ex, "txt");
let icon_hand = pg.view.find(this, "icon_hand");
let btn_picture = pg.view.find(this, "btn_picture");
let layout_card = pg.view.find(this, "card_group/layout_card");
cc.find("card_group/card_bg2", this.node).opacity = 0;
layout_card.removeAllChildren();
let layout_normal = pg.view.find(this, "card_group/layout_normal");
layout_normal.removeAllChildren();
layout_normal.opacity = 0;
this.hideRestartBtn();
pg.view.visible(btn_record, false);
this.playPartAni()
this.playWordAni().then(() => {
this.playRecordAudio();
})
// this._timeoutIds.push(setTimeout(() => {
// pg.view.visible(icon_hand, true);
// let action = cc.tween(icon_hand);
// action.sequence(
// cc.tween().by(0.5, { y: 50 }),
// cc.tween().by(0.5, { y: -50 }),
// ).repeatForever();
// action.start();
// }, 1000 * 6.3));
},
state2ComplatePlay() {
let btn_replay = pg.view.find(this, "btn_replay")
let btn_recording = pg.view.find(this, "btn_recording")
let btn_record = pg.view.find(this, "btn_record")
let progress = pg.view.find(this, "progress")
let end = pg.view.find(this, "end");
let end_success = pg.view.find(end, "bg_success")
let bg_tryagain = pg.view.find(end, "bg_tryagain")
let carton = pg.view.find(this, "carton")
let bg_book = pg.view.find(this, "bg_book");
let icon_ex = pg.view.find(this, "icon_ex");
let btn_next = pg.view.find(this, "btn_next");
let btn_return = pg.view.find(this, "btn_return");
let icon_ex_txt = pg.view.find(icon_ex, "txt");
let icon_hand = pg.view.find(this, "icon_hand");
let btn_picture = pg.view.find(this, "btn_picture");
pg.view.visible(icon_hand, false);
pg.view.visible(btn_record, false);
this.hideRestartBtn();
pg.view.visible(btn_recording, true);
pg.view.visible(progress, true);
},
state3GoodJob() {
let btn_replay = pg.view.find(this, "btn_replay")
let btn_recording = pg.view.find(this, "btn_recording")
let btn_record = pg.view.find(this, "btn_record")
let progress = pg.view.find(this, "progress")
let end = pg.view.find(this, "end");
let end_success = pg.view.find(end, "bg_success")
let bg_tryagain = pg.view.find(end, "bg_tryagain")
let carton = pg.view.find(this, "carton")
let bg_book = pg.view.find(this, "bg_book");
let icon_ex = pg.view.find(this, "icon_ex");
let btn_next = pg.view.find(this, "btn_next");
let btn_return = pg.view.find(this, "btn_return");
let icon_ex_txt = pg.view.find(icon_ex, "txt");
let icon_hand = pg.view.find(this, "icon_hand");
let btn_picture = pg.view.find(this, "btn_picture");
pg.view.visible(btn_record, false);
pg.view.visible(btn_recording, false);
pg.view.visible(progress, false);
this._timeoutIds.push(setTimeout(() => {//4秒钟之后出现goodjob提示
pg.view.visible(end, true);
pg.view.visible(end_success, true);
this.playSFX("audio_goodjob");
}, 1000 * 0.5));
this._timeoutIds.push(setTimeout(() => {
this.nextStage();
}, 1000 * 4));//6秒钟之后进入下一关卡
},
state4TryAgain() {
let btn_replay = pg.view.find(this, "btn_replay")
let btn_recording = pg.view.find(this, "btn_recording")
let btn_record = pg.view.find(this, "btn_record")
let progress = pg.view.find(this, "progress")
let end = pg.view.find(this, "end");
let end_success = pg.view.find(end, "bg_success")
let bg_tryagain = pg.view.find(end, "bg_tryagain")
let carton = pg.view.find(this, "carton")
let bg_book = pg.view.find(this, "bg_book");
let icon_ex = pg.view.find(this, "icon_ex");
let btn_next = pg.view.find(this, "btn_next");
let btn_return = pg.view.find(this, "btn_return");
let icon_ex_txt = pg.view.find(icon_ex, "txt");
let icon_hand = pg.view.find(this, "icon_hand");
let btn_picture = pg.view.find(this, "btn_picture");
// 一局失败弹出tryagain,同时下方录音按钮明亮并出现提示
this.playSFX("audio_tryagain").then(() => {
pg.view.visible(bg_tryagain, false);
pg.view.visible(end, false);
})
pg.view.visible(end, true);
pg.view.visible(bg_tryagain, true);
pg.view.visible(btn_recording, false);
pg.view.visible(btn_record, true);
pg.view.visible(progress, false);
this._playing = true;
this._tryagainCount++;
this._timeoutIds.push(setTimeout(() => {
if (this._tryagainCount == 1) {
pg.audio.playAudioByUrl(this._tryagain.one).then(() => {
this._playing = false;
})
// this.playSFX("audio_record");
pg.view.visible(icon_hand, true);
let action = cc.tween(icon_hand);
action.sequence(
cc.tween().by(0.5, { y: 50 }),
cc.tween().by(0.5, { y: -50 }),
).repeatForever();
action.start();
} else if (this._tryagainCount == 2) {
pg.audio.playAudioByUrl(this._tryagain.two).then(() => {
this._playing = false;
})
// this.playSFX("audio_record");
pg.view.visible(icon_hand, true);
let action = cc.tween(icon_hand);
action.sequence(
cc.tween().by(0.5, { y: 50 }),
cc.tween().by(0.5, { y: -50 }),
).repeatForever();
action.start();
} else {
pg.audio.playAudioByUrl(this._tryagain.three).then(() => {
this._playing = false;
this.nextStage();
})
}
}, 1000 * 1));
},
state5Finish() {
let btn_replay = pg.view.find(this, "btn_replay")
let btn_recording = pg.view.find(this, "btn_recording")
let btn_record = pg.view.find(this, "btn_record")
let progress = pg.view.find(this, "progress")
let end = pg.view.find(this, "end");
let end_success = pg.view.find(end, "bg_success")
let bg_tryagain = pg.view.find(end, "bg_tryagain")
let carton = pg.view.find(this, "carton")
let bg_book = pg.view.find(this, "bg_book");
let icon_ex = pg.view.find(this, "icon_ex");
let btn_next = pg.view.find(this, "btn_next");
let btn_return = pg.view.find(this, "btn_return");
let icon_ex_txt = pg.view.find(icon_ex, "txt");
let icon_hand = pg.view.find(this, "icon_hand");
let btn_picture = pg.view.find(this, "btn_picture");
pg.view.visible(end, false);
pg.view.visible(end_success, false);
pg.view.visible(bg_tryagain, false);
pg.audio.playAudioByUrl(this._cat.finish)
// this.playSFX("audio_finish");
// pg.view.visible(btn_picture, true);
pg.view.visible(btn_record, false);
console.log('this.resultArr: ', JSON.stringify(this.resultArr));
onHomeworkFinish && onHomeworkFinish({ result: this.resultArr });
},
playPartAni() {
return new Promise((resolve, reject) => {
let btn_replay = pg.view.find(this, "btn_replay")
let btn_recording = pg.view.find(this, "btn_recording")
let btn_record = pg.view.find(this, "btn_record")
let progress = pg.view.find(this, "progress")
let end = pg.view.find(this, "end");
let end_success = pg.view.find(end, "bg_success")
let bg_tryagain = pg.view.find(end, "bg_tryagain")
let carton = pg.view.find(this, "carton")
let bg_book = pg.view.find(this, "bg_book");
let icon_ex = pg.view.find(this, "icon_ex");
let btn_next = pg.view.find(this, "btn_next");
let btn_return = pg.view.find(this, "btn_return");
let icon_ex_txt = pg.view.find(icon_ex, "txt");
let icon_hand = pg.view.find(this, "icon_hand");
let btn_picture = pg.view.find(this, "btn_picture");
let dragonDisplay = carton.getComponent(dragonBones.ArmatureDisplay);
dragonDisplay.playAnimation(this.animationName, 1);//animation所有的动画名称
});
},
playWordAni(jumpWait) {
let self = this;
return new Promise((resolve, reject) => {
let btn_replay = pg.view.find(this, "btn_replay")
let btn_recording = pg.view.find(this, "btn_recording")
let btn_record = pg.view.find(this, "btn_record")
let progress = pg.view.find(this, "progress")
let end = pg.view.find(this, "end");
let end_success = pg.view.find(end, "bg_success")
let bg_tryagain = pg.view.find(end, "bg_tryagain")
let carton = pg.view.find(this, "carton")
let bg_book = pg.view.find(this, "bg_book");
let icon_ex = pg.view.find(this, "icon_ex");
let btn_next = pg.view.find(this, "btn_next");
let btn_return = pg.view.find(this, "btn_return");
let icon_ex_txt = pg.view.find(icon_ex, "txt");
let icon_hand = pg.view.find(this, "icon_hand");
let btn_picture = pg.view.find(this, "btn_picture");
this._playing = true;
icon_ex_txt.active = false;
icon_ex.active = false;
pg.view.visible(pg.view.find(this, "card_group/slider"), false);
this.showCardLayout();
if (jumpWait) {
pg.view.visible(pg.view.find(this, "card_group/slider"), true);
// pg.view.visible(icon_ex, true);
let icon_ex_word = self._stageData.word;
let aniFinished = true;
let audioFinished = false;
// this.wordAni(icon_ex_txt, icon_ex_word).then(() => {
// aniFinished = true;
// if (aniFinished && audioFinished) {
// this._playing = false;
// resolve('');
// }
// })
pg.audio.playAudioByUrlCall(this._stageData.sound).then((id) => {
audioFinished = true;
let time = cc.audioEngine.getDuration(id);
this.showSliderAction(time).then(() => {
if (aniFinished && audioFinished) {
this._playing = false;
resolve('');
}
});
})
} else {
this._timeoutIds.push(setTimeout(() => {
// pg.view.visible(icon_ex, true);
pg.view.visible(pg.view.find(this, "card_group/slider"), true);
let icon_ex_word = self._stageData.word;
let aniFinished = true;
let audioFinished = false;
// this.wordAni(icon_ex_txt, icon_ex_word).then(() => {
// aniFinished = true;
// if (aniFinished && audioFinished) {
// this._playing = false;
// resolve('');
// }
// })
pg.audio.playAudioByUrlCall(this._stageData.sound).then((id) => {
audioFinished = true;
let time = cc.audioEngine.getDuration(id);
this.showSliderAction(time).then(() => {
if (aniFinished && audioFinished) {
this._playing = false;
resolve('');
}
});
})
}, 1000 * 2));
}
});
},
playRecordAudio() {
return new Promise((resolve, reject) => {
this._playing = true;
let btn_replay = pg.view.find(this, "btn_replay")
let btn_recording = pg.view.find(this, "btn_recording")
let btn_record = pg.view.find(this, "btn_record")
let progress = pg.view.find(this, "progress")
let end = pg.view.find(this, "end");
let end_success = pg.view.find(end, "bg_success")
let bg_tryagain = pg.view.find(end, "bg_tryagain")
let carton = pg.view.find(this, "carton")
let bg_book = pg.view.find(this, "bg_book");
let icon_ex = pg.view.find(this, "icon_ex");
let btn_next = pg.view.find(this, "btn_next");
let btn_return = pg.view.find(this, "btn_return");
let icon_ex_txt = pg.view.find(icon_ex, "txt");
let icon_hand = pg.view.find(this, "icon_hand");
let btn_picture = pg.view.find(this, "btn_picture");
pg.view.visible(btn_record, true);
this.showRestartBtn();
if (this._audio_record) {
this._playing = false;
resolve("");
} else {
this._audio_record = true;
pg.audio.playAudioByUrl(this._cat.record).then(() => {
this._playing = false;
resolve('');
})
}
});
},
wordAni(item, content) {
return new Promise((resolve, reject) => {
item.active = true;
let itemfirst = pg.view.find(item, "first");
//动态居中算法。
//锚点在中间,左右延长,第一个字不去显示
let contentArr = content.split("");
let s0 = contentArr.shift();
let s1 = contentArr.join("");
//首字母变大
let count = 100;
let max = 150;
let str1 = `<size=${max}><color=#ffffff>${s0}</color></size><size=${count}><color=#0000>${s1}</color></size>`
let strfirst1 = `<size=${max}><color=#fc4a4a>${s0}</color></size>`;
item.getComponent(cc.RichText).string = str1;
itemfirst.y = 17;
itemfirst.getComponent(cc.RichText).string = strfirst1;
this._timeoutIds.push(setTimeout(() => {
let times = 20;
let time = 0;
let inter = setInterval(() => {
time++;
let nowCount = count + (max - count) * (time / times);
if (nowCount >= 150) {
nowCount = 150;
clearInterval(inter);
}
let str2 = `<size=${max}><color=#ffffff>${s0}</color></size><size=${nowCount}><color=#0000>${s1}</color></size>`
itemfirst.y = 0;
item.getComponent(cc.RichText).string = str2;
}, 30);
this._intervalIds.push(inter);
setTimeout(() => {
resolve('');
}, 1200);
}, 4100));
});
},
showCardLayout() {
let content = this._stageData.word;
let card_group = cc.find("card_group", this.node);
let layout_card = cc.find("layout_card", card_group);
let layout_normal = cc.find("layout_normal", card_group);
let card = cc.find("card", card_group);
let card1 = cc.find("card1", card_group);
let card2 = cc.find("card2", card_group);
let add = cc.find("add", card_group);
let normal_label = cc.find("normal_label", card_group);
let slider = cc.find("slider", card_group);
let card_bg2 = cc.find("card_group/card_bg2", this.node)
slider.action = true;
layout_card.removeAllChildren();
layout_normal.removeAllChildren();
layout_card.opacity = 255;
layout_normal.opacity = 0;
let r = [239, 0, 135];
let l = [2, 171, 241];
content.forEach((item, idx) => {
if (idx != 0) {
let cAdd = cc.instantiate(add);
layout_card.addChild(cAdd);
cAdd.active = true;
}
let cCard = cc.instantiate(item.card.length == 1 ? card : item.card.length == 2 ? card1 : card2);
layout_card.addChild(cCard);
let text = cc.find("text", cCard);
text.getComponent(cc.Label).string = item.card;
text.color = item.color == 0 ? new cc.Color(r[0], r[1], r[2]) : new cc.Color(l[0], l[1], l[2]);
cCard.active = true;
cCard.data = item;
})
content.forEach((item, idx) => {
if (item.card.length > 1) {
let str = item.card.split("");
str.forEach((c) => {
let laebl = cc.instantiate(normal_label);
layout_normal.addChild(laebl);
laebl.getComponent(cc.Label).string = c;
laebl.active = true;
})
} else {
let laebl = cc.instantiate(normal_label);
layout_normal.addChild(laebl);
laebl.getComponent(cc.Label).string = item.card;
laebl.active = true;
}
})
setTimeout(() => {
card_bg2.width = layout_card.width;
}, 60);
},
showSliderAction(time) {
return new Promise((resolve, reject) => {
let card_group = cc.find("card_group", this.node);
let slider = cc.find("slider", card_group);
slider.action = true;
let sl = slider.getComponent(cc.Slider)
sl.progress = 0;
let t = time / 10;
cc.tween(sl)
.to(t, { progress: 0.1 }).call(() => { this.setCardColor(sl.progress); })
.to(t, { progress: 0.2 }).call(() => { this.setCardColor(sl.progress); })
.to(t, { progress: 0.3 }).call(() => { this.setCardColor(sl.progress); })
.to(t, { progress: 0.4 }).call(() => { this.setCardColor(sl.progress); })
.to(t, { progress: 0.5 }).call(() => { this.setCardColor(sl.progress); })
.to(t, { progress: 0.6 }).call(() => { this.setCardColor(sl.progress); })
.to(t, { progress: 0.7 }).call(() => { this.setCardColor(sl.progress); })
.to(t, { progress: 0.8 }).call(() => { this.setCardColor(sl.progress); })
.to(t, { progress: 0.9 }).call(() => { this.setCardColor(sl.progress); })
.to(t, { progress: 1 }).call(() => {
this.setCardColor(sl.progress);
this.hideBox();
return resolve("")
})
.start();
});
},
hideBox() {
let layout_normal = cc.find("card_group/layout_normal", this.node);
cc.tween(layout_normal).to(0.5, { opacity: 255 }).start();
let layout_card = cc.find("card_group/layout_card", this.node);
// layout_card.opacity = 0;
cc.tween(layout_card).to(0.1, { opacity: 0 }).start();
// let card_bg2 = cc.find("card_group/card_bg2", this.node);
// cc.tween(card_bg2).to(0.5, { opacity: 0 }).start();
// layout_card.children.forEach((item) => {
// if (item.name == "add") return;
// item.getComponent(cc.Sprite).enabled = false;
// // cc.tween(item).to(0.5, { opacity: 0 }).start();
// })
},
setCardColor(progress) {
let layout_card = cc.find("card_group/layout_card", this.node);
let r = [239, 0, 135];
let l = [2, 171, 241];
let b = [35, 31, 32]
layout_card.children.forEach((ch) => {
if (ch.name == "add") return;
let text = cc.find("text", ch);
let ish = !ch.data.color;
let nr = ish ? r[0] - progress * (r[0] - b[0]) : l[0] - progress * (l[0] - b[0]);
let ng = ish ? r[1] - progress * (r[1] - b[1]) : l[1] - progress * (l[1] - b[1]);
let nb = ish ? r[2] - progress * (r[2] - b[2]) : l[2] - progress * (l[2] - b[2]);
text.color = new cc.Color(nr, ng, nb);
})
},
//按钮触发,使用的方法
onTouchRecord() {
this.nextStage();
if (1) return;
if (this._playing) {
cc.audioEngine.stopAllEffects();
}
this.playSFX("audio_btns");
let end = pg.view.find(this, "end");
let bg_tryagain = pg.view.find(end, "bg_tryagain")
pg.view.visible(end, false);
pg.view.visible(bg_tryagain, false);
GameManager.getIns().setState(2);
this.initLayout()
let str = "";
this._stageData.word.forEach((t) => {
str += t.card;
})
window.courseware && window.courseware.startTest(str); //开始录音
this._timeoutIds.push(setTimeout(() => {
if (!window.courseware) return this.recrodEnd({
"dtLastResponse": "2021-09-17 13:36:26:109",
"refText": "I haven't found anything out about him yet.",
"recordId": "6144295213f0a2200000ed93",
"eof": 1,
"result": {
"pronunciation": 25,
"resource_version": "3.1.0",
"fluency": 60,
"rhythm": 90,
"kernel_version": "5.2.4",
"overall": 25,//75
"integrity": 100,
"duration": "6.779",
"rear_tone": "fall",
"speed": 96,
},
"tokenId": "6144295408558b08dd000001",
"applicationId": "154838659000009e"
})
window.courseware && window.courseware.stopTest((data) => {
data = JSON.parse(data);
this.recrodEnd(data);
}); //结束录音
}, 4000));
},
recrodEnd(data) {
let score = data.result.overall;
this._stageData.curScore = score;
// score = (score / 100) * 40 + (100 - 40);
// score = 40;
if (score >= 80) {
GameManager.getIns().setState(3);
this.initLayout();
} else {
GameManager.getIns().setState(4);
this.initLayout();
}
},
onTouchNext() {
this.playSFX("audio_btns");
},
onTouchReturn() {
this.playSFX("audio_btns");
},
onTouchRecording() {
this.playSFX("audio_btns");
},
onTouchReplay() {
if (this._playing) return;
this.playSFX("audio_btns");
GameManager.getIns().setState(1);
this.initLayout()
},
onTouchPicture() {
// this.playSFX("audio_btns");
},
onTouchCarton() {
if (this._playing) return;
this._playing = true;
this.playPartAni();
setTimeout(() => {
this._playing = false;
}, 900);
},
onTouchWord() {
if (this._playing) return;
this.playWordAni(true);
},
onTouchCat() {
if (this._playing) return;
this._playing = true;
pg.audio.playAudioByUrl(this._cat.wait).then(() => {
this._playing = false;
})
},
nextStage() {
let isOver = GameManager.getIns().addStage();//关卡标记+1
this.pushResultData();
if (isOver) {
//执行总结束的内容
GameManager.getIns().setState(5);
this.initLayout()
} else {
this.initSingleData();//刷新当前关卡所使用的的数据
this.initLayout();//刷新界面显示内容
}
},
pushResultData() {
console.log(' in pushResultData');
const word = this._stageData.word;
const score = this._stageData.curScore;
this.resultArr.push({ word, score });
},
onTouchIconRecord() {
let btn_replay = pg.view.find(this, "btn_replay")
let btn_record = pg.view.find(this, "btn_record")
let btn_recording = pg.view.find(this, "btn_recording")
let progress = pg.view.find(this, "progress")
this.hideRestartBtn();//隐藏
pg.view.visible(btn_record, false);
pg.view.visible(btn_recording, true);//显示
pg.view.visible(progress, true);
},
initStep1() {
let btn_replay = pg.view.find(this, "btn_replay")
let btn_recording = pg.view.find(this, "btn_recording")
let btn_record = pg.view.find(this, "btn_record")
let progress = pg.view.find(this, "progress")
let end = pg.view.find(this, "end")
let ant_ske = pg.view.find(this, "ant_ske")
let ax_ske = pg.view.find(this, "ax_ske")
this.hideRestartBtn();
pg.view.visible(btn_record, false);
pg.view.visible(btn_recording, false);
pg.view.visible(progress, false);
pg.view.visible(end, false);
pg.view.visible(ant_ske, false);
pg.view.visible(ax_ske, false);
this._timeoutIds.push(setTimeout(() => {
this.initStep2();
}, 2000));
},
initStep2() {
let btn_replay = pg.view.find(this, "btn_replay")
let btn_record = pg.view.find(this, "btn_record")
this.showRestartBtn();
pg.view.visible(btn_record, true);
},
initStep3() {
},
createAni() {
// cc.assetManager.loadRemote('http://www.cloud.com/test1.jpg', (err, texture) => console.log(err));
},
//显示replay
showRestartBtn() {
const btn = cc.find('Canvas/btn_replay');
if (btn.canClick) {
return;
}
btn.active = true;
btn.canClick = true;
const circle = cc.find('Canvas/btn_replay/btn_restart_circle');
cc.tween(circle)
.set({ scale: 0.8, opacity: 255 })
.to(2, { scale: 1.2, opacity: 0 })
.union()
.repeatForever()
.start();
},
hideRestartBtn() {
console.log('hideRestartBtn');
const btn = cc.find('Canvas/btn_replay');
if (!btn.canClick) {
return;
}
btn.canClick = false;
btn.active = false;
const circle = cc.find('Canvas/btn_replay/btn_restart_circle');
circle.stopAllActions();
circle.scale = 0.8;
circle.opacity = 255;
},
//
onTouchVoice(touch) {
let item = touch.target;
pg.audio.playAudioByUrl(item.data.audio_url);
},
//回合结束
groupEnd() {
for (let i = 0; i < this._boxItems.length; i++) {
let box = this._boxItems[i];
if (box.data.success.length != box.data.child.length) return;
}
// if (this._successItems.length < this._cardPage.length) return;
if (this._gameCode != 0) return;
this._gameCode = 2;
//播放星星动画 然后结束
this.playSFX("audio_sahua");
this.createFireworkAni().then(() => {
// 游戏结束时需要调用这个方法通知系统作业完成
onHomeworkFinish();
})
},
playSFX(name) {
return new Promise((resolve, reject) => {
let node = pg.view.find(this, name);
if (!node) return resolve();
let audioSource = node.getComponent(cc.AudioSource);
if (!audioSource) return resolve();
let audioClip = audioSource.clip;
if (!audioClip) return resolve();
let id = cc.audioEngine.play(audioClip, false, 1);
cc.audioEngine.setFinishCallback(id, () => {
resolve();
})
});
},
resizeInfo() {
//0.设计尺寸
let baseSize = cc.size(1280, 720);
//1.获取屏幕尺寸
let canvasSize = cc.view.getCanvasSize();
//2.将屏幕宽高 以高度对齐的方式 换算出场景 宽度
let sumSizeW = cc.size(canvasSize.width * baseSize.height / canvasSize.height, baseSize.height)
//3.计算场景宽度与设计宽度比率
let scaleX = sumSizeW.width / baseSize.width;
//高屏幕适配
if (scaleX <= 1) {
let sumSizeY = cc.size(baseSize.width, canvasSize.height * (baseSize.width / canvasSize.width))
let scaleY = sumSizeY.height / baseSize.height;
let posY = sumSizeY.height - baseSize.height;
return {
scaleX: 1,
posX: 0,
moveX: 0,
scaleY: scaleY,
posY: posY,
moveY: - posY / 2
}
} else {
let posX = sumSizeW.width - baseSize.width;
//需要拓展的宽度缩放比
return {
scaleX: scaleX,
posX: posX,
moveX: - posX / 2,
scaleY: 1,
posY: 0,
moveY: 0
};
}
},
playAudioAni(item) {
return new Promise((resolve, reject) => {
var anim = pg.view.find(item, `audio`).getComponent(cc.Animation);
anim.play();
//如果没有audio也要能正常走
pg.audio.playAudioByUrl(item.data.audio).then(() => {
anim.stop();
pg.view.visible(pg.view.find(item, `audio/btn_laba`), true);
resolve('');
});
});
},
createRightAni(pos) {
let right = pg.view.find(this, 'right');
let aniRight = cc.instantiate(right);
aniRight.x = pos.x;
aniRight.y = pos.y;
pg.view.find(this, 'ani').addChild(aniRight);
let armDisplay = aniRight.getComponent(dragonBones.ArmatureDisplay);
armDisplay.playAnimation('newAnimation', 1);
pg.view.visible(aniRight, true);
},
createStarAni() {
return new Promise((resolve, reject) => {
this.showStar();
this._timeoutIds.push(setTimeout(() => {
resolve('');
}, 500));
});
},
createFireworkAni() {
return new Promise((resolve, reject) => {
// this.showAllFirework(cc.find('Canvas/firework_ani'), cc.find('Canvas/paperBase').children);
// setTimeout(() => {
// resolve('');
// }, 1000);
showFireworks(
cc.find('Canvas/firework_ani'),
cc.find('Canvas/RibbonNodeBase').children,
cc.v2(0, -400), cc.v2(0, 1000), 200, 200,
(id) => {
this._timeoutIds.push(id);
}
);
showFireworks(
cc.find('Canvas/firework_ani'),
cc.find('Canvas/RibbonNodeBase').children,
cc.v2(-600, -400), cc.v2(200, 1000), 200, 200,
(id) => {
this._timeoutIds.push(id);
}
);
showFireworks(
cc.find('Canvas/firework_ani'),
cc.find('Canvas/RibbonNodeBase').children,
cc.v2(600, -400), cc.v2(-200, 1000), 200, 200,
(id) => {
this._timeoutIds.push(id);
}
);
this._timeoutIds.push(setTimeout(() => {
resolve('');
}, 1000));
});
},
len: null,
addStar() {
if (!this.len) {
this.len = 0;
}
this.len++;
let length = this.len;
const starLayout = cc.find('Canvas/layout_stars');
starLayout.removeAllChildren();
const paddingY = starLayout.getComponent(cc.Layout).spacingY;
for (let i = 0; i < length; i++) {
const starBase = cc.instantiate(cc.find('Canvas/StarBase'));
starBase.name = `starBase_${i}`;
starBase.scale = this.Between(0.5, (starLayout.height / length - paddingY) / starBase.height, 1);
starBase.parent = starLayout;
}
this.currentStarIdx = 0;
},
currentStarIdx: null,
showStar() {
if (!this.currentStarIdx) {
this.currentStarIdx = 0;
}
const starBase = cc.find(`Canvas/layout_stars/starBase_${this.currentStarIdx}`);
if (!starBase) {
return;
}
const star = starBase.getChildByName('Star');
const starBig = star.getChildByName('StarBig');
starBig.scale = 1;
star.active = true;
star.scaleX = 0.7 / starBase.scale;
star.scaleY = 1 / starBase.scale;
star.angle = 90;
const canvas = cc.find('Canvas');
const startPos = this.exchangeNodePos(star.parent, canvas, cc.v2(0, -canvas.height / 2));
const middlePos = this.exchangeNodePos(star.parent, canvas, cc.v2(0, -canvas.height / 4));
star.x = startPos.x;
star.y = startPos.y - starBig.height;
console.log('middlePos = ' + JSON.stringify(middlePos));
const time = 1;
cc.tween(star)
.to(0.3, { y: middlePos.y + 80 }, { easing: 'quadOut' })
.to(0.1, { y: middlePos.y + 40, scaleX: 1.2 / starBase.scale, scaleY: 0.8 / starBase.scale }, { easing: 'quadOut' })
.to(0.1, { y: middlePos.y, scaleX: 1 / starBase.scale, scaleY: 1 / starBase.scale }, { easing: 'quadOut' })
.delay(0.1)
.to(0.8, { angle: -720, scale: 1 })
.start();
cc.tween(star)
.delay(0.6)
.to(0.8, { x: 0 }, { easing: 'quadIn' })
.start();
cc.tween(star)
.delay(0.6)
.to(0.8, { y: 0 }, { easing: 'quadOut' })
.start();
cc.tween(starBig)
.delay(0.6)
.to(0.8, { scale: 0 }, { easing: 'quadOut' })
.call(() => {
// this.checkGameEnd();
})
.start();
this.currentStarIdx++;
},
Between(a, b, c) {
return [a, b, c].sort()[1];
},
exchangeNodePos(targetNode, baseNode, basePos) {
return targetNode.convertToNodeSpaceAR(baseNode.convertToWorldSpaceAR(cc.v2(basePos.x, basePos.y)));
},
async showAllFirework(parentNode, nodeList) {
for (let i = 0; i < 6; i++) {
this.showFirework(cc.v2(0, -parentNode.height / 2), parentNode, nodeList, parentNode.width * 2 / 3, parentNode.height * 1.3);
await asyncDelay(0.1, (id) => {
this._timeoutIds.push(id);
});
}
},
showFirework(pos, parentNode, nodeList, width = 200, height = 200, number = 30) {
for (let i = 0; i < number; i++) {
const quad = this.createQuads(pos, parentNode, nodeList);
const targetX = RandomInt(width / 2, -width / 2);
const targetY = RandomInt(height);
cc.tween(quad)
.by(0.5, { x: targetX })
.by(3, { x: targetX * 2 })
.start();
cc.tween(quad)
.by(0.5, { y: targetY }, { easing: 'quadOut' })
.to(4, { y: -parentNode.height * 2 }, { easing: 'quadIn' })
.removeSelf()
.start();
cc.tween(quad)
.delay(1)
.to(1.5, { opacity: 0 })
.start();
}
},
createQuads(pos, parentNode, nodeList) {
const quadBase = cc.instantiate(nodeList[RandomInt(nodeList.length)]);
quadBase.x = pos.x;
quadBase.y = pos.y;
quadBase.z = pos.z;
quadBase.angle = RandomInt(180);
quadBase.parent = parentNode;
const quad = quadBase.getChildByName('quad');
quad.x = 0;
quad.y = 0;
quad.angle = RandomInt(180);
const paper = quad.getChildByName('paper');
paper.scaleX = Math.random() * 0.5 + 0.5;
paper.scaleY = Math.random() * 0.5 + 0.5;
quadBase.scaleX = Math.random();
cc.tween(quadBase)
.to((1 - quadBase.scaleX) * 0.3, { scaleX: 1 })
.call(() => {
const time = Math.random() * 0.2;
cc.tween(quadBase)
.to(0.1 + time, { scaleX: -1 })
.to(0.1 + time, { scaleX: 1 })
.union()
.repeatForever()
.start();
})
.start();
return quadBase;
},
// 生命周期
onDestroy() {
this._timeoutIds.forEach(id => {
clearTimeout(id);
});
this._intervalIds.forEach(id => {
clearInterval(id);
});
},
});
{ {
"ver": "1.0.8", "ver": "1.0.8",
"uuid": "f8b451ff-857c-4ca8-9870-866bc5154a29", "uuid": "079b14c1-2b16-435a-8a77-6fecc373403a",
"isPlugin": false, "isPlugin": false,
"loadPluginInWeb": true, "loadPluginInWeb": true,
"loadPluginInNative": true, "loadPluginInNative": true,
......
class Ani {
//抖动效果
static shake(item) {
// alert("抖动效果");
let tween = cc.tween(item);
tween.to(0.06, { angle: 10 })
.to(0.06, { angle: 0 })
.to(0.06, { angle: -10 })
.to(0.06, { angle: 0 });
tween.repeat(4);
tween.start();
}
static scaleOut(item) {
return new Promise((resolve) => {
let tween = cc.tween(item);
tween.to(0.2, { scaleX: 0, scaleY: 0 })
.call(() => { resolve() });
tween.start();
})
}
static scaleIn(item) {
return new Promise((resolve) => {
item.scaleX = 0;
item.scaleY = 0;
let tween = cc.tween(item);
tween.to(0.2, { scaleX: 1, scaleY: 1 })
.call(() => { resolve() });
tween.start();
})
}
static flipX0(item) {
return new Promise((resolve) => {
let itemScale = item.scaleY;
item.scaleX = itemScale;
let tween = cc.tween(item);
tween.to(0.2, { scaleX: 0 })
.call(() => { resolve() });
tween.start();
})
}
static flipX1(item) {
return new Promise((resolve) => {
let itemScale = item.scaleY;
item.scaleX = 0;
let tween = cc.tween(item);
tween.to(0.2, { scaleX: itemScale })
.call(() => { resolve() });
tween.start();
})
}
}
export default Ani;
\ No newline at end of file
{ {
"ver": "1.0.8", "ver": "1.0.8",
"uuid": "408a67f8-65fa-4cf1-8cf2-83e20e1a0fd5", "uuid": "b15f80f1-6507-44eb-af5b-07bfb945bf0c",
"isPlugin": false, "isPlugin": false,
"loadPluginInWeb": true, "loadPluginInWeb": true,
"loadPluginInNative": true, "loadPluginInNative": true,
......
class Card {
constructor(picItem, cardId, doubuleId) {
//单个具体内容 一对的内容 一组的内容
this.cardId = cardId;
this.cardDid = doubuleId;
this.type = CardManager.TYPE_NULL;
if (picItem.radioValue == "A") {
if (picItem.title) {
this.txt = picItem.title;
this.type = CardManager.TYPE_TXT;
}
} else if (picItem.radioValue == "B") {
if (picItem.pic_url) {
this.img = picItem.pic_url;
this.type = CardManager.TYPE_IMG;
}
} else if (picItem.radioValue == "C") {
if (picItem.audio_url) {
this.audio = picItem.audio_url;
this.type = CardManager.TYPE_MP3;
}
}
// this.type = CardManager.TYPE_MP3;
}
// 具体去怎么分配 按照不同的分配逻辑去走
}
//最大的星星 一二三星 卡片组 卡片对 卡片 卡片内数据
class CardManager {
static TYPE_NULL = 0;
static TYPE_TXT = 1;
static TYPE_IMG = 2;
static TYPE_MP3 = 3;
static instance;
static getIns() {
if (!CardManager.instance) CardManager.instance = new CardManager();
return CardManager.instance;
}
_cardArray;//所有卡片的组
testletId;//组id
pageId;//页id
constructor() {
this._cardArray = [];//组 页
this.testletId = 0;
this.pageId = 0;
}
initCards(obj) {
console.log(obj);
let picArr = obj.contentObj.picArr;
this._cardArray = [];
let doubuleId = 0;
let cardId = 0;
for (let m = 0; m < picArr.length; m++) {
let testlet = [];
for (let n = 0; n < picArr[m].length; n++) {
let page = [];
for (let i = 0; i < picArr[m][n].length; i++) {
doubuleId++;
let pic = picArr[m][n][i];
let left = pic.left;
let right = pic.right;
cardId++;
let card1 = new Card(left, cardId, doubuleId);
cardId++;
let card2 = new Card(right, cardId, doubuleId);
if (card1.type == CardManager.TYPE_NULL || card2.type == CardManager.TYPE_NULL) {
doubuleId--;
continue;
}
page.push(card1, card2);
}
testlet.push(page);
}
this._cardArray.push(testlet);
}
}
getTestlet() {
return this._cardArray.length - 1;
}
getPage() {
if (this._cardArray[this.testletId] && this._cardArray[this.testletId][this.pageId]) {
return this._cardArray[this.testletId][this.pageId];
} else {
return null;
}
}
addPageNum() {
this.pageId++;
if (!this.getPage()) {
this.pageId = 0;
this.testletId++;
if (!this.getPage()) {
return 2;//游戏结束
}
return 1;//组结束
} else {
return 0;//页结束
}
}
resetPageNum() {
this.testletId = 0;
this.pageId = 0;
}
randomPageCards() {
//页面内部数字要打乱 0 1 2 3 4 5 6 7 8 每次动态取出一个值 然后动态处理
let radArray = [];
for (let m = 0; m < this._cardArray.length; m++) {
for (let n = 0; n < this._cardArray[m].length; n++) {
let arr = [];
while (this._cardArray[m][n].length > 0) {
let rand = Math.floor(Math.random() * this._cardArray[m][n].length);
arr.push(this._cardArray[m][n][rand]);
this._cardArray[m][n].splice(rand, 1);
}
this._cardArray[m][n] = arr;
}
}
}
}
export default CardManager;
\ No newline at end of file
{
"ver": "1.0.8",
"uuid": "11f21116-6718-42e0-bd5e-a369c8a95b33",
"isPlugin": false,
"loadPluginInWeb": true,
"loadPluginInNative": true,
"loadPluginInEditor": false,
"subMetas": {}
}
\ No newline at end of file
function retData() {
// let item = {"contentObj":{"picArr":[[[{"cardId":"","left":{"title":"boy1","pic_url":"http://staging-teach.cdn.ireadabc.com/1baedb0b31dc5503e65e114ce21940ab.jpeg","audio_url":"http://staging-teach.cdn.ireadabc.com/495324991838775e49e3ca6593d432c9.mp3","radioValue":"C"},"right":{"title":"food","pic_url":"http://staging-teach.cdn.ireadabc.com/38117778476574c7ef8b445cf24d6eb5.jpg","audio_url":"http://staging-teach.cdn.ireadabc.com/495324991838775e49e3ca6593d432c9.mp3","radioValue":"A"},"radioValue":"B"},{"cardId":"","left":{"title":"boy2","pic_url":"","audio_url":"http://staging-teach.cdn.ireadabc.com/17cc0e2a383e4632147dc495a1397915.mp3","radioValue":"C"},"right":{"title":"","pic_url":"http://staging-teach.cdn.ireadabc.com/21373528a7f38575e871de1d8e5a9671.jpg","audio_url":"http://staging-teach.cdn.ireadabc.com/17cc0e2a383e4632147dc495a1397915.mp3","radioValue":"B"},"radioValue":"E"}],[{"cardId":"","left":{"title":"girl1","pic_url":"","audio_url":"http://staging-teach.cdn.ireadabc.com/205722475ccaca6233b2f28e635405ca.mp3","radioValue":"A"},"right":{"title":"","pic_url":"http://staging-teach.cdn.ireadabc.com/5d099c38000b804241f7dc1286b17457.jpg","audio_url":"http://staging-teach.cdn.ireadabc.com/205722475ccaca6233b2f28e635405ca.mp3","radioValue":"B"},"radioValue":"D"},{"cardId":"","left":{"title":"girl2","pic_url":"","audio_url":"http://staging-teach.cdn.ireadabc.com/0b6ef24f15c6d8ad7bf27cc913445ebf.mp3","radioValue":"A"},"right":{"title":"","pic_url":"http://staging-teach.cdn.ireadabc.com/0abab9a26d537ebf1835a2ed8430162e.jpg","audio_url":"http://staging-teach.cdn.ireadabc.com/0b6ef24f15c6d8ad7bf27cc913445ebf.mp3","radioValue":"B"},"radioValue":"D"},{"cardId":"","left":{"title":"girl3","pic_url":"","audio_url":"http://staging-teach.cdn.ireadabc.com/b2c170f84b85dddf554b5c837d1d6e30.mp3","radioValue":"A"},"right":{"title":"","pic_url":"http://staging-teach.cdn.ireadabc.com/5f34d4100a6ecb187fd715c99e917fc8.jpg","audio_url":"http://staging-teach.cdn.ireadabc.com/b2c170f84b85dddf554b5c837d1d6e30.mp3","radioValue":"B"},"radioValue":"D"}]],[[{"cardId":"","left":{"title":"rabbit","pic_url":"","audio_url":"http://staging-teach.cdn.ireadabc.com/a7bd7c4de71319db5b6b0b60f0957e21.mp3","radioValue":"A"},"right":{"title":"","pic_url":"http://staging-teach.cdn.ireadabc.com/fe229e6b32f385fb8fe5eb9ec5843c66.jpg","audio_url":"http://staging-teach.cdn.ireadabc.com/a7bd7c4de71319db5b6b0b60f0957e21.mp3","radioValue":"B"},"radioValue":"D"},{"cardId":"","left":{"title":"cat","pic_url":"","audio_url":"http://staging-teach.cdn.ireadabc.com/6c8dcd159d4f05bc93838cc47d3895f4.mp3","radioValue":"A"},"right":{"title":"","pic_url":"http://staging-teach.cdn.ireadabc.com/9c5fa50efd7a004f24ea7fcbcf81080e.jpg","audio_url":"http://staging-teach.cdn.ireadabc.com/6c8dcd159d4f05bc93838cc47d3895f4.mp3","radioValue":"B"},"radioValue":"A"},{"cardId":"","left":{"title":"coffe","pic_url":"","audio_url":"http://staging-teach.cdn.ireadabc.com/3d0fea61d5d97f3caf04a9b738a0291b.mp3","radioValue":"A"},"right":{"title":"","pic_url":"http://staging-teach.cdn.ireadabc.com/9d114554c4760ff35f1ff5479504a531.jpg","audio_url":"http://staging-teach.cdn.ireadabc.com/a7bd7c4de71319db5b6b0b60f0957e21.mp3","radioValue":"B"},"radioValue":"D"},{"cardId":"","left":{"title":"tea","pic_url":"","audio_url":"http://staging-teach.cdn.ireadabc.com/448291140d0b780c0278a14bf49277cb.mp3","radioValue":"A"},"right":{"title":"","pic_url":"http://staging-teach.cdn.ireadabc.com/bf26f92e4f0557ad70ac27006855dae9.jpg","audio_url":"http://staging-teach.cdn.ireadabc.com/6c8dcd159d4f05bc93838cc47d3895f4.mp3","radioValue":"B"},"radioValue":"D"}]],[[{"cardId":"","left":{"title":"cool","pic_url":"","audio_url":"http://staging-teach.cdn.ireadabc.com/0e67aa701df18cbb5581ffb81ffa7836.mp3","radioValue":"A"},"right":{"title":"","pic_url":"http://staging-teach.cdn.ireadabc.com/38117778476574c7ef8b445cf24d6eb5.jpg","audio_url":"http://staging-teach.cdn.ireadabc.com/4c0379bc0f3bd0722874b2e11fb35336.mp3","radioValue":"B"},"radioValue":"D"},{"cardId":"","left":{"title":"big eye","pic_url":"","audio_url":"http://staging-teach.cdn.ireadabc.com/fe226bc303f03ea994cb9a93d1620284.mp3","radioValue":"A"},"right":{"title":"","pic_url":"http://staging-teach.cdn.ireadabc.com/21373528a7f38575e871de1d8e5a9671.jpg","audio_url":"http://staging-teach.cdn.ireadabc.com/b985b71cd2f3c2d31e45992e4ae69d7f.mp3","radioValue":"B"},"radioValue":"A"},{"cardId":"","left":{"title":"cute","pic_url":"","audio_url":"http://staging-teach.cdn.ireadabc.com/84c7b82de1a09da792237a174ebe071b.mp3","radioValue":"A"},"right":{"title":"","pic_url":"http://staging-teach.cdn.ireadabc.com/5d099c38000b804241f7dc1286b17457.jpg","audio_url":"http://staging-teach.cdn.ireadabc.com/7c1d1540233b6d050eae8215679104a8.mp3","radioValue":"B"},"radioValue":"D"},{"cardId":"","left":{"title":"shuai","pic_url":"","audio_url":"http://staging-teach.cdn.ireadabc.com/9e799e7e86cd50c6699ca0e859c8aa1f.mp3","radioValue":"A"},"right":{"title":"","pic_url":"http://staging-teach.cdn.ireadabc.com/338dbee896e1fa8869495c84c603c33f.jpg","audio_url":"http://staging-teach.cdn.ireadabc.com/9a6b3177ab53ba75bcf293df1065bb64.mp3","radioValue":"B"},"radioValue":"D"},{"cardId":"","left":{"title":"big m","pic_url":"","audio_url":"http://staging-teach.cdn.ireadabc.com/495324991838775e49e3ca6593d432c9.mp3","radioValue":"C"},"right":{"title":"","pic_url":"http://staging-teach.cdn.ireadabc.com/0abab9a26d537ebf1835a2ed8430162e.jpg","audio_url":"http://staging-teach.cdn.ireadabc.com/17cc0e2a383e4632147dc495a1397915.mp3","radioValue":"B"},"radioValue":"E"}]]]}}
let item = {
"contentObj":
{
"picArr":
[
{
"title": "apple",
"bgImg": "http://staging-teach.cdn.ireadabc.com/38a22cb51e444e2ef4fad6dede56bc6e.png",
"wordAudio": "http://staging-teach.cdn.ireadabc.com/ab3538f7d4d57ac1abd740bd32f06b2d.mp3",
"imgAni": {
"ske": {
"url": "http://staging-teach.cdn.ireadabc.com/c81816bbb714b22c57267ac5150ee1fe.json",
"name": "apple_ske.json"
},
"tex": {
"url": "http://staging-teach.cdn.ireadabc.com/6088eec0273bc0488d5f66dfb63c1003.json",
"name": "apple_tex.json"
},
"png": {
"url": "http://staging-teach.cdn.ireadabc.com/a51151d68bd74d430e2e586d86c6ddd3.png",
"name": "apple_tex.png"
}
}
}, { "title": "ant", "bgImg": "http://staging-teach.cdn.ireadabc.com/38a22cb51e444e2ef4fad6dede56bc6e.png", "wordAudio": "http://staging-teach.cdn.ireadabc.com/ab3538f7d4d57ac1abd740bd32f06b2d.mp3", "imgAni": { "ske": { "url": "http://staging-teach.cdn.ireadabc.com/dd4ede22a761f1f8ec261c93a5306f5c.json", "name": "ant_ske.json" }, "tex": { "url": "http://staging-teach.cdn.ireadabc.com/56078bcdcc7116843a56ecc4c23d3665.json", "name": "ant_tex.json" }, "png": { "url": "http://staging-teach.cdn.ireadabc.com/1a0c95cab05487b003a8dec9dd151ba4.png", "name": "ant_tex.png" } } }]
}
}
return item;
}
export const itemData = retData();
\ No newline at end of file
{
"ver": "1.0.8",
"uuid": "4e93bb38-2b8e-4524-a0cf-ee046467baf5",
"isPlugin": false,
"loadPluginInWeb": true,
"loadPluginInNative": true,
"loadPluginInEditor": false,
"subMetas": {}
}
\ No newline at end of file
class GameManager {
static TYPE_NULL = 0;
static TYPE_TXT = 1;
static TYPE_IMG = 2;
static TYPE_MP3 = 3;
static instance;
static getIns() {
if (!GameManager.instance) GameManager.instance = new GameManager();
return GameManager.instance;
}//允许调用
constructor() {
this._list = [];
this._stage = 0;//关卡
this._state = 0;//状态
this._cat = {};
this._tryagain = {};
}
init() {
console.log(`init`);
}
parseData(data) {
this._list = [];
this._stage = 0;//关卡
this._state = 0;//状态
this._cat = {};
this._tryagain = {};
console.log(data);
this._cat = data.contentObj.picArr.cat;
this._tryagain = data.contentObj.picArr.tryagain;
let arr = data.contentObj.picArr.list;
for (let i = 0; i < arr.length; i++) {
let ar = arr[i];
let obj = {};
obj.word = ar.titleObj;
obj.sound = ar.wordAudio;
obj.img = ar.bgImg;
obj.cartoonSke = ar.imgAni.ske.url;
obj.cartoonTex = ar.imgAni.tex.url;
obj.cartoonPng = ar.imgAni.png.url;
this._list.push(obj);
}
console.log(this._list);//原始数据转为数组
}
get cat() {
return this._cat;
}
get tryagain() {
return this._tryagain;
}
setState(num) {
this._state = num;
}
getState() {
return this._state;
}
getStageData() {
return this._list[this._stage];
}
addStage() {
this._stage++;
return this._stage >= this._list.length;
}
}
export default GameManager;
\ No newline at end of file
{
"ver": "1.0.8",
"uuid": "2f000cc9-5e11-497b-b268-3dced7dde2a9",
"isPlugin": false,
"loadPluginInWeb": true,
"loadPluginInNative": true,
"loadPluginInEditor": false,
"subMetas": {}
}
\ No newline at end of file
class HYLoader {
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);
}
})
}
playAudioByUrl(audio_url, cb = null) {
if (audio_url) {
cc.assetManager.loadRemote(audio_url, (err, audioClip) => {
const audioId = cc.audioEngine.play(audioClip, false, 0.8);
if (cb) {
cc.audioEngine.setFinishCallback(audioId, () => {
cb();
});
}
});
}
}
}
export const hyLoader = new HYLoader();
\ No newline at end of file
{
"ver": "1.0.8",
"uuid": "2bc1b858-63dd-4bec-bb40-e6703d306bbc",
"isPlugin": false,
"loadPluginInWeb": true,
"loadPluginInNative": true,
"loadPluginInEditor": false,
"subMetas": {}
}
\ No newline at end of file
let pg = {};
//打印
pg.logger = {
d: (str) => {
cc.log(str);
},
w: function (str) {
cc.warn(str);
}
}
const log = pg.logger;
//显示常用
pg.view = {
//显示隐藏
//添加节点
//删除节点
//加载网络节点
touchEnable(item, isEnable) {
if (!item) return pg.logger.w("设置按钮响应失败,传入了错误的item");
let node = item.node ? item.node : item;
if (!node) return pg.logger.w("设置按钮响应失败,传入了错误的item");
let btn = node.getComponent(cc.Button);
if (!btn) return pg.logger.w("当前节点没有添加button->" + node.name);
btn.interactable = isEnable;
return true;
},
touchOn(item, callback, target) {
if (!item) return pg.logger.w("添加按钮响应失败,传入了错误的item");
if (!callback || !target) return pg.logger.w("添加按钮响应失败,传入了空回调");
let node = item.node ? item.node : item;
node.on(cc.Node.EventType.TOUCH_END, callback, target);
return true;
},
touchOff(item, callback, target) {
if (!item) return log.w("移除按钮响应失败,传入了错误的item");
if (!callback || !target) return log.w("移除按钮响应失败,传入了空回调");
let node = item.node ? item.node : item;
if (!node || !node.parent) return log.w("节点已移除");
node.off(cc.Node.EventType.TOUCH_END, callback, target);
return true;
},
//更换图片
setImg(item, res) {
return new Promise((resolve, reject) => {
if (!item) return log.w("图片更换失败,传入了错误的item");
if (!res) return log.w("图片更换失败,传入了错误的res");
pg.load.loadImg(res).then((spriteFrame) => {
if (!cc.isValid(item)) return log.i("节点已销毁");
let node = item.node ? item.node : item;
if (!cc.isValid(node)) return log.i("节点已销毁");
let component = node.getComponent(cc.Sprite);
let { width, height } = spriteFrame._rect;
component.spriteFrame = spriteFrame;
resolve({ width, height });
})
})
},
setNetImg(item, res) {
return new Promise((resolve, reject) => {
if (!item) return log.w("图片更换失败,传入了错误的item");
let node = item.node ? item.node : item;
if (!res) {
node.active = false;
return log.w("图片更换失败,传入了错误的res");
}
if (!node) return log.w("图片更换失败,传入了错误的item");
if (node.net_url == res) return;
let w = node.width;
let h = node.height;
// node.active = false;//
pg.load.loadNetImg(res).then((texture) => {
if (!cc.isValid(node)) return log.i("节点已销毁");
let nw = node.width = texture.width;
let nh = node.height = texture.height;
let component = node.getComponent(cc.Sprite);
let spriteFrame = new cc.SpriteFrame(texture);
component.spriteFrame = spriteFrame;
node.net_url = res;
let a = w / nw;//100 2000 0.05
let b = h / nh;//100 1000 0.1
if (a < b) {
node.width = a * nw;
node.height = a * nh;
} else {
node.width = b * nw;
node.height = b * nh;
}
node.scaleX = node.parent.scaleX;
node.scaleY = node.parent.scaleY;
// node.active = true;
resolve({ w: nw, h: nh });
})
})
},
visible(item, isVisible) {
if (!item) return log.w("节点显示失败,传入了错误的item");
let node = item.node ? item.node : item;
if (!node || !node.parent) return log.w("节点已移除");
node.active = isVisible;
return true;
},
setString(item, text, count = 0) {
if (!item) return log.w("节点text失败,传入了错误的item");
if (count > 0) {
function parse_str(str, count) {
if (!str) return "";
var segmants = str.split('+');
str = segmants.join('');
var len = 0;
var idx = 0;
for (var i = 0; i < str.length; i++) {
var p = /[^x00-xff]/g;
var a = str.charAt(i);
if (p.test(a)) {
len += 2;
idx++;
}
else {
len += 1;
idx++;
}
if (len >= count * 2)
break;
}
return str.substr(0, idx);
}
text = parse_str(text, count);
}
let node = item.node ? item.node : item;
if (!node) return;
let component = node.getComponent(cc.Label);//组件功能 非node的功能
component.string = text;
return true;
},
setColor(item, color, outlineWidth = -1) {
if (!item) return log.w("setColor warn->传入了错误的item");
let RGB = this.colorRgb(color);
if (!RGB || RGB.length == 0) return log.w("color ->传入了错误的color");
item.color = new cc.Color(RGB[0], RGB[1], RGB[2]);
if (outlineWidth < 0) return;
let LabelOutline = item.getComponent(cc.LabelOutline);
if (!LabelOutline) return log.w("LabelOutline warn->未添加描边");
LabelOutline.width = outlineWidth;
},
colorRgb(color) {
var reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/;
var sColor = color;
if (sColor && reg.test(sColor)) {
if (sColor.length === 4) {
var sColorNew = "#";
for (var i = 1; i < 4; i += 1) {
sColorNew += sColor.slice(i, i + 1).concat(sColor.slice(i, i + 1));
}
sColor = sColorNew;
}
//处理六位的颜色值
var sColorChange = [];
for (var i = 1; i < 7; i += 2) {
sColorChange.push(parseInt("0x" + sColor.slice(i, i + 2)));
}
return sColorChange;
} else {
return sColor;
}
},
find(item, childPath) {
if (typeof item == "string") {
childPath = item;
item = null;
}
if (!childPath || childPath == '' || typeof childPath != 'string') return log.w("findChildByPath error->" + "请传入路径");
let child = null;
if (item) {
let node = item.node ? item.node : item;
if (!node.children || node.children.length == 0) return log.w("findChild error->" + "找不到此节点,请检查层级路径:" + childPath);
child = cc.find(childPath, node);
} else {
child = cc.find(childPath);
}
if (!child) return log.w("findChildByPath error->" + "找不到此节点,请检查层级路径:" + childPath);
return child;
},
findComponent(item, type) {
let child = null;
if (item) {
let node = item.node ? item.node : item;
if (!node.children || node.children.length == 0) return log.w("findChild error->" + "找不到此节点,请检查层级路径:" + childPath);
child = node.getComponent(type)
} else {
child = node.getComponent(type)
}
if (!child) return log.w("findChildByPath error->" + "找不到此节点,请检查层级路径:" + childPath);
return child;
},
addChild(item, child, zIndex) {
if (!child) return console.log("addChild error ->请传入子节点");
if (!item) return console.log("addChild error ->请传入父节点");
let node = item.node ? item.node : item;
if (!node) return console.log("addChild error ->请传入父节点");
if (child.parent)
return log.w("此节点已经有父节点->" + child.name);
if (zIndex >= 0) {
node.addChild(child, zIndex)
} else {
node.addChild(child);
}
return true;
},
removeSelf(item) {
if (!item) return log.w("节点移除失败,传入了错误的item");
let node = item.node ? item.node : item;
node.removeFromParent();
node.destroy();
},
removChildren(item) {
if (!item) return log.w("节点remove失败,传入了错误的item");
let node = item.node ? item.node : item;
if (!node.parent) return log.w("节点remove失败,传入了错误的item");
node.removeAllChildren();
return true;
},
removeChild(item, child) {
if (!item) return log.w("节点remove失败,传入了错误的item");
let node = item.node ? item.node : item;
if (child.parent && child.parent == node) {
node.removeChild(child);
node.destroy();
}
return true;
},
playSpineAnimation(item, aniName, loop) {
if (!item || !cc.isValid(item)) return log.w("动画播放失败,传入了错误的item");
if (!aniName) return log.w("动画播放失败,传入了错误的aniName");
let node = item.node ? item.node : item;
if (!cc.isValid(node)) return log.w("节点已销毁");
let skl = node.getComponent(sp.Skeleton);
skl.setAnimation(0, aniName, loop);
return skl;
},
cloneNode(node) {
return cc.instantiate(node);
},
loadDB(item, config) {
return new Promise((resolve, reject) => {
pg.load.loadNetRes(config.png).then((png) => {
pg.load.loadNetRes(config.ske).then((ske) => {
pg.load.loadNetRes(config.tex).then((tex) => {
var atlas = new dragonBones.DragonBonesAtlasAsset();
atlas.atlasJson = JSON.stringify(tex.json);
atlas.texture = png;
var asset = new dragonBones.DragonBonesAsset();
asset.dragonBonesJson = JSON.stringify(ske.json);
let dragonDisplay = item.getComponent(dragonBones.ArmatureDisplay);
dragonDisplay.dragonAtlasAsset = atlas;
dragonDisplay.dragonAsset = asset;
//设置
let defaultArmature = ske.json.armature[0];//aramture 所有的骨骼名称
dragonDisplay.armatureName = defaultArmature.name;
resolve(defaultArmature.animation[0].name);
})
})
})
});
}
}
//加载 未封装bundle
pg.load = {
loadRes: function (res, type, bundleName) {
//此处需要二次封装,新的存在assetbundle
return new Promise((resolve, reject) => {
cc.loader.loadRes(res, type, (err, data) => {
if (err && !data) return resolve(pg.logger.d('loading loadRes error-> ', res));
resolve(data);
});
})
},
loadNetRes: function (url) {
return new Promise((resolve, reject) => {
cc.assetManager.loadRemote(url, (err, data) => {
if (err && !data) return resolve(pg.logger.w('loading loadRes warn-> ', res));
resolve(data);
});
})
},
loadImg: function () {
return new Promise((resolve, reject) => {
this.loadRes(url, cc.SpriteFrame).then((data) => {
if (!data || data.length == 0) return;
resolve(data);
})
})
},
loadPrefab: function (path = "") {
return new Promise((resolve, reject) => {
url = "/prefabs/" + path;
this.loadRes(url, cc.Prefab).then((data) => {
if (!data || data.length == 0) return reject();
return resolve(cc.instantiate(data));
})
})
},
loadNetImg: function (url) {
return new Promise((resolve, reject) => {
cc.assetManager.loadRemote(url, (err, texture) => {
if (err && !data) return resolve(pg.logger.w('loading loadRes warn-> ', res));
resolve(texture);
});
})
},
}
//本地存储
pg.localStorage = {
setItem: function (key, val) {
cc.sys.localStorage.setItem(key, val);
},
getItem: function (key, defVal) {
return cc.sys.localStorage.getItem(key) || defVal;
}
}
//HTTP网络请求
pg.http = {
send: function (type = "GET", url, data, callback) {
let xhr = cc.loader.getXMLHttpRequest();
xhr.timeout = 5000;
xhr.responseType = "text";
xhr.open(type, url, true);
xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xhr.onreadystatechange = () => {
if (xhr.readyState !== 4) return;
if (xhr.status >= 200 && xhr.status < 300) {
try {
let resp = xhr.responseText;
pg.logger.d("resp->" + JSON.stringify(resp));
callback(resp);
} catch (e) {
}
}
else {
}
};
xhr.onerror = (e) => {
pg.logger.w("onerror->" + url);
};
xhr.ontimeout = (e) => {
pg.logger.w("ontimeout->" + url);
};
xhr.send(data);
}
}
/**事件监听部分
*
*
*
*/
class Emitter {
static instance;
static getInstance() {
if (!Emitter.instance) {
Emitter.instance = new Emitter();
}
return Emitter.instance;
}
constructor() {
this._callbacks = {};
return this;
}
on(event, fn) {
(this._callbacks[event] = this._callbacks[event] || []).push(fn);
};
once(event, fn) {
function on() {
this.off(event, on);
fn.apply(this, arguments);
}
on.fn = fn;
this.on(event, on);
};
off(event, fn) {
// all
if (0 == arguments.length) {
this._callbacks = {};
return;
}
// specific event
let callbacks = this._callbacks[event];
if (!callbacks) return;
// remove all handlers
if (1 == arguments.length) {
delete this._callbacks[event];
return;
}
// remove specific handler
let cb;
for (let i = 0; i < callbacks.length; i++) {
cb = callbacks[i];
if (cb === fn || cb.fn === fn) {
callbacks.splice(i, 1);
break;
}
}
return;
}
emit(event, ...args) {
this._callbacks = this._callbacks || {};
// let args = [].slice.call(arguments, 1);
let callbacks = this._callbacks[event];
if (callbacks) {
callbacks = callbacks.slice(0);
for (let i = 0, len = callbacks.length; i < len; ++i) {
callbacks[i].apply(this, args);
}
}
}
listeners(event) {
this._callbacks = this._callbacks || {};
return this._callbacks[event] || [];
};
hasListeners(event) {
return !!this.listeners(event).length;
};
}
class SceneStruct {
constructor() {
this.nowScene = "hb_login";
this.sceneObject = {};
this.sceneObject[this.nowScene] = [];
}
addScene(sceneName) {
this.nowScene = sceneName;
//if (!this.sceneObject[this.nowScene])
this.sceneObject[this.nowScene] = [];
}
addLayer(layerName) {
if (!this.sceneObject[this.nowScene]) return console.log("sceneStruct err->scene未初始化:" + this.nowScene)
if (!this.sceneObject[this.nowScene].includes(layerName)) {
this.sceneObject[this.nowScene].push(layerName);
}
}
removeLayer(layerName) {
if (!this.sceneObject[this.nowScene]) return console.log("sceneStruct err->scene未初始化:" + this.nowScene)
let arr = this.sceneObject[this.nowScene];
let isSuccess = false;
for (let i = arr.length - 1; i >= 0; i--) {
let laName = arr[i];
if (layerName == laName) {
isSuccess = true;
arr.splice(i, 1);
}
}
if (!isSuccess) {
console.log("sceneStruct err->scene没有对应layer:" + this.nowScene + ">" + layerName);
}
}
clearLayer() {
this.sceneObject[this.nowScene] = [];
}
getLayers() {
return this.sceneObject[this.nowScene] || [];
}
}
class SceneManager {
static debug = true;
static instance;
static getInstance() {
if (!SceneManager.instance) {
SceneManager.instance = new SceneManager();
}
return SceneManager.instance;
}
//py [-zIndex.bottom-]
//py [-zIndex.login-]
//py [-zIndex.hall-]
//py [-zIndex.club-]
//py [-zIndex.clubPop-]
//py [-zIndex.game-]
//py [-zIndex.game_1-]
//py [-zIndex.game_2-]
//py [-zIndex.game_3-]
//py [-zIndex.notice-]
//py [-zIndex.tip-]
//py [-zIndex.tips-]
//py [-zIndex.top-]
constructor() {
this.sceneStruct = new SceneStruct();
//addLayer之前和之后要对scene进行一次对比,如果异常,不进行添加。 继续游戏能看到大厅的bug。
this.zIndex = {
bottom: 0,
login: 1,
hall: 2,
game: 5,
notice: 9,
tip: 10,
top: 12,
webView: 90,//webView 会在最上层,防止出现无法关闭活动界面
}
}
nameScene;
scene;
get stage() {
return cc.find("Canvas");
}
get bottom() {
return cc.find("Canvas/bottom");
}
get camera() {
return cc.find('Canvas/Main Camera')
}
beforeLoadScene() {
let layers = [].concat(this.sceneStruct.getLayers());
if (!layers || layers.length == 0) return;
layers.forEach(layerName => {
this.removeLayer(layerName, true);
})
}
//py [-loadScene(${1:sceneName})-]
loadScene(sceneName, data, prepareFunc) {
// pg.loading.releaseAllRes();
return new Promise((resolve, reject) => {
if (this.nameScene == sceneName) {
resolve();
return console.warn("加载重复的scene->" + sceneName);
}
// this.beforeLoadScene();
setTimeout(() => {
this.sceneStruct.clearLayer();
// if (sceneName != "coclub" && sceneName != "cohall_login") {
// pg.loading.releaseAddAssetList();
// }
// pg.loading.releaseAddAssetList();
// if (!cc.game.isPaused()) {
// cc.game.pause();
// cc.loader.releaseAll();
// }
prepareFunc && prepareFunc();
cc.director.loadScene(sceneName, () => {
// cc.game.resume();
this.beforeLoadScene();//等待加载完成再移除当前场景 3.11 王林
this.nameScene = sceneName;
this.sceneStruct.addScene(sceneName);
event.call(sceneName + "_open", data);
resolve();
});
}, 0);
})
}
preloadScene(sceneName) {
// cc.isValid 判断节点是否被销毁。
return cc.director.preloadScene(sceneName);
}
preLoadLayer(layerName) {
return new Promise((resolve, reject) => {
loading.loadPrefab(layerName).then(prefab => {
resolve();
})
})
}
/*
!#zh
添加子层,并且可以修改该层的层级顺序和名字。
@param layerName 层的预制文件名称(路径在loadPrefab中自动填写)
@param zIndex 层级|zIndex.bottom /zIndex.login
@param data layerName_opn|传输得值
@example
```js
sceneManager.addLayer('login_layer', 1);
```
*/
//py [-addLayer(${1:layerName},${2:pg.scene.zIndex.},${3:data})-]
addLayer(layerName, zIndex, data, forceRepeat = false, path = "") {
return new Promise((resolve, reject) => {
if (!zIndex && zIndex != 0) {
console.warn("addLayer warn->" + "未添加zIndex:" + layerName);
zIndex = this.zIndex.top;
}
if (!forceRepeat && this.sceneStruct.getLayers().some(ln => { return ln == layerName })) {
event.call(layerName + "_open_repeat", data);
return resolve(log.w("addLayer warn->" + "重复添加界面:" + layerName));
}
let uuid = this.stage && this.stage.uuid ? this.stage.uuid : 0;
loading.loadPrefab(layerName, path).then(prefab => {
if (window.game_center.isLoadingGame || window.game_center.isRunningGame) {//|| !window.isInHall
return reject(log.w("dating ..."));
}
if (!this.stage) return reject(log.w("addLayer warn->" + "场景已切换:" + layerName));
if (uuid && uuid != this.stage.uuid) return reject(log.w("addLayer warn->" + "场景已切换:" + layerName));
if (this.sceneStruct.getLayers().indexOf(layerName) != -1) return resolve(log.w("addLayer warn->" + "多次添加界面:" + layerName));
if (zIndex == this.zIndex.bottom) {
this.bottom && this.bottom.addChild(prefab, zIndex, layerName);
// this.sceneStruct.addLayer(layerName);
} else {
this.stage.addChild(prefab, zIndex, layerName);
}
event.call(layerName + "_open", data);
this.sceneStruct.addLayer(layerName);
resolve(prefab);
})
})
}
//py [-removeLayer(${1:layerName})-]
removeLayer(layerName, isRelease = false) {
// if (layerName == "cohall_WaitLayer") {
// console.log("请求移除等待界面");
// }
if (!this.stage) return console.log("removeLayer warn->" + "找不到当前stage")
let node = this.stage.getChildByName(layerName);
if (!node && this.bottom) node = this.bottom.getChildByName(layerName);
if (!node) return (layerName != "cohall_WaitLayer" && layerName != "cohall_SceneWaitLayer") && console.log("removeLayer warn->" + "当前stage找不到“" + layerName + "");
node.removeFromParent(false);
node.destroy();
// if (layerName == "cohall_WaitLayer") {
// console.log("等待界面移除成功");
// }
this.sceneStruct.removeLayer(layerName);
if (isRelease) loading.releasePrefab(layerName, isRelease);
}
backLayer(layerName, isVisible = false) {
return new Promise((resolve, reject) => {
let layer = this.getLayerByName(layerName);
if (!layer) {
pg.scene.addLayer(layerName, pg.scene.zIndex.bottom, {}, false, false).then(layer => {
layer.active = isVisible;
return resolve();
});
return;
}
layer.parent = this.bottom;
layer.zIndex = this.zIndex.bottom;
layer.active = isVisible;
return resolve();
})
}
frontLayer(layerName) {
return new Promise((resolve, reject) => {
let layer = this.getLayerByName(layerName);
if (!layer) {
pg.scene.addLayer(layerName, pg.scene.zIndex.hall).then(layer => {
layer.active = true;
return resolve();
});
return;
} else {
layer.parent = this.stage;
layer.zIndex = this.zIndex.hall;
layer.active = true;
}
return resolve();
})
}
//py [-getLayerByName(${1:layerName})-]
getLayerByName(layerName) {
let node = this.stage.getChildByName(layerName);
if (!node) node = this.bottom.getChildByName(layerName);
return node;
}
clearLayer() {
this.sceneStruct.clearLayer();
}
//py [-isHaveLayer(${1:layerName})-]
isHaveLayer(layerName) {
return !!this.getLayerByName(layerName);
}
getSceneName() {
return this.nameScene;
}
}
/**音频播放部分
*
*
*
*/
let KEY_MUSIC_VOL = "music_vol";
let KEY_EFFECT_VOL = "effect_vol";
class AudioUtil {
static instance;
static getInstance() {
if (!AudioUtil.instance) {
AudioUtil.instance = new AudioUtil();
}
return AudioUtil.instance;
}
constructor() {
this.bgm_volume = 1.0;
this.sfx_volume = 1.0;
this.sfx_button = "button";
this.cur_bgm = "";
this.updateVolume();
// cc.game.on(cc.game.EVENT_HIDE, function () {
// cc.audioEngine.pauseAll();
// });
// cc.game.on(cc.game.EVENT_SHOW, function () {
// cc.audioEngine.resumeAll();
// });
}
updateVolume() {
let vvol = cc.sys.localStorage.getItem(KEY_MUSIC_VOL);
if (vvol != null) {
this.bgm_volume = parseFloat(vvol);
}
let evol = cc.sys.localStorage.getItem(KEY_EFFECT_VOL);
if (evol != null) {
this.sfx_volume = parseFloat(evol);
}
}
get_audio_url(url) {
return url;
}
getSfxVolume() {
return this.sfx_volume;
}
getBgmVolume() {
return this.bgm_volume;
}
clickButton() {
this.playSFX(this.sfx_button);
}
playBGM(url, ispath) {
this.updateVolume();
let us = url.split("/");
let len = us.length;
if (len < 1) return;
let surl = us[len - 1];
if (this.cur_bgm == surl) return;
let audioUrl = ispath ? url : this.get_audio_url(url);
this.load(audioUrl).then((audio) => {
if (this.bgm_audio_id >= 0) {
cc.audioEngine.stop(this.bgm_audio_id);
}
this.bgm_audio_id = cc.audioEngine.play(audio, true, this.bgm_volume);
this.cur_bgm = surl;
})
}
playSFX(url, ispath) {
return new Promise((resolve, reject) => {
let audioUrl = ispath ? url : this.get_audio_url(url);
if (this.sfx_volume > 0) {
this.load(audioUrl).then((audio) => {
let audioId = cc.audioEngine.play(audio, false, this.sfx_volume);
cc.audioEngine.setFinishCallback(audioId, () => {
resolve(audio);
});
})
}
})
}
stopAll() {
cc.audioEngine.stopAll();
this.bgm_audio_id = -1;
this.cur_bgm = "";
}
setSFXVolume(v) {
v = Number(v);
if (this.sfx_volume != v) {
cc.sys.localStorage.setItem("sfxVolume_hbhall", "" + v);
this.sfx_volume = v;
}
}
setBGMVolume(v, force) {
v = Number(v);
if (this.bgm_audio_id >= 0) {
if (v > 0) {
cc.audioEngine.resume(this.bgm_audio_id);
}
else {
cc.audioEngine.pause(this.bgm_audio_id);
}
if (this.bgm_volume != v || force) {
cc.sys.localStorage.setItem("bgmVolume_hbhall", "" + v);
this.bgm_volume = v;
cc.audioEngine.setVolume(this.bgm_audio_id, v);
}
}
}
pauseAll() {
cc.audioEngine.pauseAll();
}
resumeAll() {
cc.audioEngine.resumeAll();
}
load(audioUrl) {
return new Promise((resolve, reject) => {
cc.resources.load(audioUrl, cc.AudioClip, (err, audio) => {
if (err) {
return cc.warn("音效加载失败->" + audioUrl);
}
if (!audio) return cc.warn("音效加载失败->" + audioUrl);
resolve(audio);
});
})
}
playAudioByUrl(audio_url) {
return new Promise((resolve, reject) => {
if (!audio_url) return resolve(null);
cc.assetManager.loadRemote(audio_url, (err, audioClip) => {
const audioId = cc.audioEngine.play(audioClip, false, 0.8);
cc.audioEngine.setFinishCallback(audioId, () => {
resolve(audioClip);
});
});
});
}
playAudioByUrlCall(audio_url, cb = null, loadCb = null) {
return new Promise((resolve, reject) => {
if (!audio_url) return resolve(null);
cc.assetManager.loadRemote(audio_url, (err, audioClip) => {
const audioId = cc.audioEngine.play(audioClip, false, 0.8);
cc.audioEngine.setFinishCallback(audioId, () => {
cb && cb();
});
loadCb && loadCb(audioId);
resolve(audioId);
});
});
}
}
pg.event = Emitter.getInstance();
pg.audio = AudioUtil.getInstance();
pg.scene = SceneManager.getInstance();
export default pg;
// window.pg = pg;
//EVENT CONFIG DATA NET
//SYSTEM——MANAGER ---配置文件管理,网络管理,事件管理,数据管理
//VIEW——MANAGER ---界面管理,网络数据本地同步,界面事件推送
//VIEW ---界面效果,滚动等等
\ No newline at end of file
{
"ver": "1.0.8",
"uuid": "24305734-8e44-4e40-b9cf-802b2ae89e08",
"isPlugin": false,
"loadPluginInWeb": true,
"loadPluginInNative": true,
"loadPluginInEditor": false,
"subMetas": {}
}
\ No newline at end of file
// Learn cc.Class:
// - https://docs.cocos.com/creator/manual/en/scripting/class.html
// Learn Attribute:
// - https://docs.cocos.com/creator/manual/en/scripting/reference/attributes.html
// Learn life-cycle callbacks:
// - https://docs.cocos.com/creator/manual/en/scripting/life-cycle-callbacks.html
import pg from "./pg";
cc.Class({
extends: cc.Component,
properties: {
// foo: {
// // ATTRIBUTES:
// default: null, // The default value will be used only when the component attaching
// // to a node for the first time
// type: cc.SpriteFrame, // optional, default is typeof default
// serializable: true, // optional, default is true
// },
// bar: {
// get () {
// return this._bar;
// },
// set (value) {
// this._bar = value;
// }
// },
},
// LIFE-CYCLE CALLBACKS:
onLoad() {
this.p0 = pg.view.find(this, "p0");
this.p1 = pg.view.find(this, "p1");
this.p2 = pg.view.find(this, "p2");
this.count = 0;
},
start() {
},
update(dt) {
if (!this.p0) return;
this.count++;
let m = Math.floor(this.count / 20) % 4;
this[`p0`].scaleX = m == 1 ? 1.3 : 1.0;
this[`p0`].scaleY = m == 1 ? 1.3 : 1.0;
this[`p1`].scaleX = m == 2 ? 1.3 : 1.0;
this[`p1`].scaleY = m == 2 ? 1.3 : 1.0;
this[`p2`].scaleX = m == 3 ? 1.3 : 1.0;
this[`p2`].scaleY = m == 3 ? 1.3 : 1.0;
},
});
{
"ver": "1.0.8",
"uuid": "bea9617c-f6be-43d4-8fcf-2472770a4244",
"isPlugin": false,
"loadPluginInWeb": true,
"loadPluginInNative": true,
"loadPluginInEditor": false,
"subMetas": {}
}
\ No newline at end of file
import pg from "./pg";
cc.Class({
extends: cc.Component,
properties: {
costtime: 4,
// foo: {
// // ATTRIBUTES:
// default: null, // The default value will be used only when the component attaching
// // to a node for the first time
// type: cc.SpriteFrame, // optional, default is typeof default
// serializable: true, // optional, default is true
// },
// bar: {
// get () {
// return this._bar;
// },
// set (value) {
// this._bar = value;
// }
// },
},
// LIFE-CYCLE CALLBACKS:
// onLoad () {},
start() {
let progressBar = pg.view.findComponent(this, cc.ProgressBar);
progressBar.progress = 0;
this._interval = setInterval(() => {
if (!this.node.active) {
progressBar.progress = 0;
return;
}
this.updateTime();
}, 30);//30ms 执行一次
},
updateTime() {
let progressBar = pg.view.findComponent(this, cc.ProgressBar);
progressBar.progress = progressBar.progress + (1 / (1000 / 30) / this.costtime);
},
update(dt) {
//1 60 2000 1
},
// 生命周期
onDestroy() {
clearInterval(this._interval);
},
});
{
"ver": "1.0.8",
"uuid": "45e8ddf3-fcf2-4728-8f88-66f7e27c22cc",
"isPlugin": false,
"loadPluginInWeb": true,
"loadPluginInNative": true,
"loadPluginInEditor": false,
"subMetas": {}
}
\ No newline at end of file
class CalculativeResize {
static resizeInfo() {
//0.设计尺寸
let baseSize = cc.size(1280, 720);
//1.获取屏幕尺寸
let canvasSize = cc.view.getCanvasSize();
//2.将屏幕宽高 以高度对齐的方式 换算出场景 宽度
let sumSizeW = cc.size(canvasSize.width * baseSize.height / canvasSize.height, baseSize.height)
//3.计算场景宽度与设计宽度比率
let scaleX = sumSizeW.width / baseSize.width;
//高屏幕适配
if (scaleX <= 1) {
let sumSizeY = cc.size(baseSize.width, canvasSize.height * (baseSize.width / canvasSize.width))
let scaleY = sumSizeY.height / baseSize.height;
let posY = sumSizeY.height - baseSize.height;
return {
scaleX: 1,
posX: 0,
moveX: 0,
scaleY: scaleY,
posY: posY,
moveY: - posY / 2
}
} else {
let posX = sumSizeW.width - baseSize.width;
//需要拓展的宽度缩放比
return {
scaleX: scaleX,
posX: posX,
moveX: - posX / 2,
scaleY: 1,
posY: 0,
moveY: 0
};
}
}
}
//关于齐刘海的适配方案。
//1.需要获取对应的手机型号
//2.需要写上安全间距标记(主要是中间部分)
//3.不同的手机安全间距可能不同。(主要适配iPhone X)
cc.Class({
extends: cc.Component,
properties: {
r_width: 1,
r_height: 1,
r_top: 0,
r_bottom: 0,
p_left: 0,
p_right: 0,
p_top: 0,
p_bottom: 0,
black: 0,//用于不能直接缩放的图片(如引导),两边补齐黑边
noHead: 0,
debug: 0,
},
// LIFE-CYCLE CALLBACKS:
onLoad() {
let { scaleX, posX, scaleY, posY } = CalculativeResize.resizeInfo();
this.resizeScaleX = scaleX;
this.resizeScaleY = scaleY;
this.posX = posX;
this.posY = posY;
let { width, height, x, y } = this.node;
this.nodeWidth = width;
this.nodeHeight = height;
this.nodeX = x;
this.nodeY = y;
//增加一个resize的监听,当屏幕出现宽高比变化的时候,进行一次重新适配。
//主要用于刘海屏的重置,以及动态屏幕变化的控制(虚拟按键屏)。
},
start() {
this.resize();
},
update(dt) {
},
onDestroy() {
if (this.black1)
pg.view.removChildren(this.black1);
if (this.black2)
pg.view.removChildren(this.black2);
this.black1 = null;
this.black2 = null;
},
resize() {
if (!this.resizeScaleX && !this.nodeWidth) {
console.warn("手动调用此方法时,不能再onLoad中使用");
return;
}
this.resizeHeight();
this.resizeWidth();
},
//高屏幕适配
resizeHeight() {
if (this.resizeScaleY <= 1.05) return;
let scaleY = this.resizeScaleY;
let posY = this.posY;
let nodeWidth = this.nodeWidth;
let nodeHeight = this.nodeHeight;
let nodeX = this.nodeX;
let nodeY = this.nodeY;
if (this.debug == 1) {
console.log("断点调试点");
}
//宽度拉伸
if (this.r_width == 1) {
this.node.width = nodeWidth * scaleY;
}
//高度拉升
if (this.r_height == 1) {
this.node.height = nodeHeight * scaleY;
// //高度拉伸后,图片顶部齐边【坐标下移】 y坐标下移
// if (this.r_top == 1) {
// this.node.y = nodeY - nodeHeight * (scaleY - 1) / 2;
// }
// //高度拉伸后,图片底部齐边【坐标上移】 y坐标上移
// if (this.r_bottom == 1) {
// this.node.y = nodeY + nodeHeight * (scaleY - 1) / 2;
// }
}
// //如果是刘海屏,减去对应的刘海屏的宽度
// let lhpSize = { top: 0, bottom: 0 };
// //动态左移
// if (this.p_left == 1) {
// this.node.x = nodeX - posX / 2 + lhpSize.top;
// }
// //动态右移
// if (this.p_right == 1) {
// this.node.x = nodeX + posX / 2 - lhpSize.bottom;
// }
//动态上移
if (this.p_top == 1) {
this.node.y = nodeY + posY / 2
}
//动态下移
if (this.p_bottom == 1) {
this.node.y = nodeY - posY / 2
}
},
//长屏幕适配
resizeWidth() {
if (this.resizeScaleX <= 1.05) return;
let resizeScaleX = this.resizeScaleX;
let posX = this.posX;
let nodeWidth = this.nodeWidth;
let nodeHeight = this.nodeHeight;
let nodeX = this.nodeX;
let nodeY = this.nodeY;
if (this.debug == 1) {
console.log("断点调试点");
}
//宽度拉伸
if (this.r_width == 1) {
this.node.width = nodeWidth * resizeScaleX;
}
//高度拉升
if (this.r_height == 1) {
this.node.height = nodeHeight * resizeScaleX;
//高度拉伸后,图片顶部齐边【坐标下移】 y坐标下移
if (this.r_top == 1) {
this.node.y = nodeY - nodeHeight * (resizeScaleX - 1) / 2;
}
//高度拉伸后,图片底部齐边【坐标上移】 y坐标上移
if (this.r_bottom == 1) {
this.node.y = nodeY + nodeHeight * (resizeScaleX - 1) / 2;
}
}
if (this.black == 1) {
let baseSize = cc.size(1280, 720);
this.black1 = this.createBalck();
this.black2 = this.createBalck();
let curWidth = nodeWidth * resizeScaleX;
let curHeight = nodeHeight * resizeScaleX;
let blackWidth = (curWidth - baseSize.width) / 2;
let blackHeight = curHeight;
this.black1.width = blackWidth;
this.black1.height = blackHeight;
this.black2.width = blackWidth;
this.black2.height = blackHeight;
this.black1.x = - baseSize.width / 2 - this.black1.width / 2;
this.black2.x = baseSize.width / 2 + this.black1.width / 2;
this.black1.y = this.black2.y = nodeY;
pg.view.addChild(this.node, this.black1);
pg.view.addChild(this.node, this.black2);
this.black1.active = false;
this.black2.active = false;
if (this.node.nodeData && (this.node.nodeData.bg != "" && this.node.nodeData.bg != "rect")) {
this.black1.active = true;
this.black2.active = true;
}
}
//如果是刘海屏,减去对应的刘海屏的宽度
let lhpSize = { top: 0, bottom: 0 };
if (!this.noHead && posX != 0) lhpSize = { top: 44 * 1.5, bottom: 34 * 1.5 };
//动态左移
if (this.p_left == 1) {
this.node.x = nodeX - posX / 2 + lhpSize.top;
}
//动态右移
if (this.p_right == 1) {
this.node.x = nodeX + posX / 2 - lhpSize.bottom;
}
},
//屏幕适配--end
createBalck() {
let black = cc.instantiate(cc.find('Canvas/blackBg'));
return black;
},
setBlackActive(val) {
if (this.black1)
this.black1.active = val;
if (this.black2)
this.black2.active = val;
}
});
{
"ver": "1.0.8",
"uuid": "85b1fa7a-77a0-4811-8b62-826a7ca77c7e",
"isPlugin": false,
"loadPluginInWeb": true,
"loadPluginInNative": true,
"loadPluginInEditor": false,
"subMetas": {}
}
\ No newline at end of file
export const defaultData = {
"contentObj": {
"picArr": {
"cat": {
"start": "http://staging-teach.cdn.ireadabc.com/c3db5ac421ef039cf540edfa5116c831.mp3",
"record": "http://staging-teach.cdn.ireadabc.com/2db9fa7c28a11fdbcecfa6a5b5e62319.mp3",
"wait": "http://staging-teach.cdn.ireadabc.com/aaeb274c49f400c26b05583d481aca09.mp3",
"finish": "http://staging-teach.cdn.ireadabc.com/f1ce89b2162d82214369265e47d3dda3.mp3"
},
"tryagain": {
"one": "http://staging-teach.cdn.ireadabc.com/bdc09d9eb89b73e67357b502ae2158dd.mp3",
"two": "http://staging-teach.cdn.ireadabc.com/aaeb274c49f400c26b05583d481aca09.mp3",
"three": "http://staging-teach.cdn.ireadabc.com/301ec5c708d22928ccf2162215f429fe.mp3"
},
"list": [
{
"titleObj": [
{
"card": "a",
"color": 0
},
{
"card": "pp",
"color": 1
},
{
"card": "le",
"color": 1
}
],
"bgImg": "http://staging-teach.cdn.ireadabc.com/97e19da9309e4e5aafca5ea2e9db8f46.png",
"wordAudio": "http://staging-teach.cdn.ireadabc.com/ab3538f7d4d57ac1abd740bd32f06b2d.mp3",
"imgAni": {
"ske": {
"url": "http://staging-teach.cdn.ireadabc.com/c81816bbb714b22c57267ac5150ee1fe.json",
"name": "apple_ske.json"
},
"tex": {
"url": "http://staging-teach.cdn.ireadabc.com/6088eec0273bc0488d5f66dfb63c1003.json",
"name": "apple_tex.json"
},
"png": {
"url": "http://staging-teach.cdn.ireadabc.com/a51151d68bd74d430e2e586d86c6ddd3.png",
"name": "apple_tex.png"
}
}
},
{
"titleObj": [
{
"card": "a",
"color": 0
},
{
"card": "n",
"color": 0
},
{
"card": "t",
"color": 1
}
],
"bgImg": "http://staging-teach.cdn.ireadabc.com/0600790c4336c3839d90756aca5da45e.png",
"wordAudio": "http://staging-teach.cdn.ireadabc.com/ab3538f7d4d57ac1abd740bd32f06b2d.mp3",
"imgAni": {
"ske": {
"url": "http://staging-teach.cdn.ireadabc.com/dd4ede22a761f1f8ec261c93a5306f5c.json",
"name": "ant_ske.json"
},
"tex": {
"url": "http://staging-teach.cdn.ireadabc.com/56078bcdcc7116843a56ecc4c23d3665.json",
"name": "ant_tex.json"
},
"png": {
"url": "http://staging-teach.cdn.ireadabc.com/1a0c95cab05487b003a8dec9dd151ba4.png",
"name": "ant_tex.png"
}
}
},
{
"titleObj": [
{
"card": "a",
"color": 0
},
{
"card": "l",
"color": 0
},
{
"card": "l",
"color": 1
},
{
"card": "a",
"color": 1
},
{
"card": "i",
"color": 1
},
{
"card": "g",
"color": 1
},
{
"card": "n",
"color": 1
}
],
"bgImg": "http://staging-teach.cdn.ireadabc.com/97e19da9309e4e5aafca5ea2e9db8f46.png",
"wordAudio": "http://staging-teach.cdn.ireadabc.com/ab3538f7d4d57ac1abd740bd32f06b2d.mp3",
"imgAni": {
"ske": {
"url": "http://staging-teach.cdn.ireadabc.com/cf0fd816076652f64cc992c084248a80.json",
"name": "alligator_ske.json"
},
"tex": {
"url": "http://staging-teach.cdn.ireadabc.com/5ece588b347d8fbe05eba19a40c985f0.json",
"name": "alligator_tex.json"
},
"png": {
"url": "http://staging-teach.cdn.ireadabc.com/a84eff5545eca41f3e997ea8a53ac66f.png",
"name": "alligator_tex.png"
}
}
}
]
}
}
}
\ No newline at end of file
...@@ -5,8 +5,6 @@ ...@@ -5,8 +5,6 @@
* LICENSE file in the root directory of this source tree. * LICENSE file in the root directory of this source tree.
*/ */
cc.sys.capabilities["touches"] = true;
!(function (global) { !(function (global) {
"use strict"; "use strict";
......
...@@ -94,13 +94,13 @@ export function getScaleRateBy2Node(baseNode, targetNode, maxFlag = true) { ...@@ -94,13 +94,13 @@ export function getScaleRateBy2Node(baseNode, targetNode, maxFlag = true) {
} }
} }
export function getDistance (start, end){ export function getDistance(start, end) {
var pos = cc.v2(start.x - end.x, start.y - end.y); var pos = cc.v2(start.x - end.x, start.y - end.y);
var dis = Math.sqrt(pos.x*pos.x + pos.y*pos.y); var dis = Math.sqrt(pos.x * pos.x + pos.y * pos.y);
return dis; return dis;
} }
export function playAudioByUrl(audio_url, cb=null) { export function playAudioByUrl(audio_url, cb = null) {
if (audio_url) { if (audio_url) {
cc.assetManager.loadRemote(audio_url, (err, audioClip) => { cc.assetManager.loadRemote(audio_url, (err, audioClip) => {
const audioId = cc.audioEngine.play(audioClip, false, 0.8); const audioId = cc.audioEngine.play(audioClip, false, 0.8);
...@@ -114,21 +114,21 @@ export function playAudioByUrl(audio_url, cb=null) { ...@@ -114,21 +114,21 @@ export function playAudioByUrl(audio_url, cb=null) {
} }
export function btnClickAnima(btn, time=0.15, rate=1.05) { export function btnClickAnima(btn, time = 0.15, rate = 1.05) {
btn.tmpScale = btn.scale; btn.tmpScale = btn.scale;
btn.on(cc.Node.EventType.TOUCH_START, () => { btn.on(cc.Node.EventType.TOUCH_START, () => {
cc.tween(btn) cc.tween(btn)
.to(time / 2, {scale: btn.scale * rate}) .to(time / 2, { scale: btn.scale * rate })
.start() .start()
}) })
btn.on(cc.Node.EventType.TOUCH_CANCEL, () => { btn.on(cc.Node.EventType.TOUCH_CANCEL, () => {
cc.tween(btn) cc.tween(btn)
.to(time / 2, {scale: btn.tmpScale}) .to(time / 2, { scale: btn.tmpScale })
.start() .start()
}) })
btn.on(cc.Node.EventType.TOUCH_END, () => { btn.on(cc.Node.EventType.TOUCH_END, () => {
cc.tween(btn) cc.tween(btn)
.to(time / 2, {scale: btn.tmpScale}) .to(time / 2, { scale: btn.tmpScale })
.start() .start()
}) })
} }
...@@ -165,7 +165,7 @@ export function getSprNodeByUrl(url, cb) { ...@@ -165,7 +165,7 @@ export function getSprNodeByUrl(url, cb) {
export function playAudio(audioClip, cb = null) { export function playAudio(audioClip, cb = null) {
if (audioClip) { if (audioClip) {
const audioId = cc.audioEngine.playEffect(audioClip, false); const audioId = cc.audioEngine.playEffect(audioClip, false, 0.8);
if (cb) { if (cb) {
cc.audioEngine.setFinishCallback(audioId, () => { cc.audioEngine.setFinishCallback(audioId, () => {
cb(); cb();
...@@ -174,88 +174,15 @@ export function playAudio(audioClip, cb = null) { ...@@ -174,88 +174,15 @@ export function playAudio(audioClip, cb = null) {
} }
} }
export async function asyncDelay(time) { export async function asyncDelay(time, func) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
try { const id = setTimeout(() => {
cc.tween(cc.find('Canvas')) resolve();
.delay(time) }, time * 1000);
.call(()=>{ func && func(id);
resolve(null);
})
.start();
} catch (e) {
reject(e);
}
}) })
} }
export async function asyncLoadDragonBoneAnime(node, { skeJsonData: { url: skeJsonDataUrl }, texJsonData: { url: texJsonDataUrl }, texPngData: { url: texPngDataUrl } }) {
if (!texPngDataUrl || !texJsonDataUrl || !texPngDataUrl
|| texPngDataUrl == '' || texJsonDataUrl == '' || texPngDataUrl == '') {
return;
}
return new Promise((resolve, reject) => {
if (node.animaNode) {
node.animaNode.removeFromParent();
}
const animaNode = new cc.Node();
animaNode.name = 'animaNode';
animaNode.parent = node;
animaNode.active = true;
node.animaNode = animaNode;
const dragonDisplay = animaNode.addComponent(dragonBones.ArmatureDisplay);
const loadTexture = new Promise((resolve, reject) => {
cc.assetManager.loadRemote(texPngDataUrl, (error, texture) => {
if (error) {
reject(error);
}
resolve(texture);
});
});
const loadTexJsonData = new Promise((resolve, reject) => {
cc.assetManager.loadAny({ url: texJsonDataUrl }, (error, atlasJson) => {
if (error) {
reject(error);
}
resolve(atlasJson);
});
});
const loadSkeJsonData = new Promise((resolve, reject) => {
cc.assetManager.loadAny({ url: skeJsonDataUrl }, (error, dragonBonesJson) => {
if (error) {
reject(error);
}
resolve(dragonBonesJson);
});
});
Promise.all([loadTexture, loadTexJsonData, loadSkeJsonData]).then(([texture, atlasJson, dragonBonesJson]) => {
const atlas = new dragonBones.DragonBonesAtlasAsset();
atlas.atlasJson = JSON.stringify(atlasJson);
atlas.texture = texture;
const asset = new dragonBones.DragonBonesAsset();
asset.dragonBonesJson = JSON.stringify(dragonBonesJson);
dragonDisplay.dragonAtlasAsset = atlas;
dragonDisplay.dragonAsset = asset;
let armatureNames = dragonBonesJson.armature.map(data => data.name);
if (armatureNames.length > 0) {
dragonDisplay.armatureName = armatureNames[0];
}
resolve(animaNode);
});
});
}
export class FireworkSettings { export class FireworkSettings {
baseNode; // 父节点 baseNode; // 父节点
nodeList; // 火花节点的array nodeList; // 火花节点的array
...@@ -366,7 +293,7 @@ export async function asyncTweenTo(node, duration, obj, ease = undefined) { ...@@ -366,7 +293,7 @@ export async function asyncTweenTo(node, duration, obj, ease = undefined) {
cc.tween(node) cc.tween(node)
.to(duration, obj, ease) .to(duration, obj, ease)
.call(() => { .call(() => {
resolve(null); resolve();
}) })
.start(); .start();
} catch (e) { } catch (e) {
...@@ -381,7 +308,7 @@ export async function asyncTweenBy(node, duration, obj, ease = undefined) { ...@@ -381,7 +308,7 @@ export async function asyncTweenBy(node, duration, obj, ease = undefined) {
cc.tween(node) cc.tween(node)
.by(duration, obj, ease) .by(duration, obj, ease)
.call(() => { .call(() => {
resolve(null); resolve();
}) })
.start(); .start();
} catch (e) { } catch (e) {
...@@ -411,56 +338,14 @@ export function showTrebleFirework(baseNode, rabbonList) { ...@@ -411,56 +338,14 @@ export function showTrebleFirework(baseNode, rabbonList) {
showFireworks(right); showFireworks(right);
} }
export function httpHeadCall(requsetUrl: string, callback) { export function onHomeworkFinish() {
let xhr = new XMLHttpRequest();
console.log("Status: Send Post Request to " + requsetUrl);
try {
xhr.onreadystatechange = () => {
try {
console.log('xhr.readyState: ', xhr.readyState);
if (xhr.readyState == 4) {
if ((xhr.status >= 200 && xhr.status < 400)) {
callback(true);
} else {
callback(false);
}
}
} catch (e) {
console.log(e)
}
};
xhr.open("HEAD", requsetUrl, true);
xhr.send();
xhr.timeout = 15000;
xhr.onerror = (e) => {
callback(false);
};
xhr.ontimeout = (e) => {
callback(false);
};
} catch (e) {
console.log("Send Get Request error: ", e);
}
}
export function onHomeworkFinish(data = "", callback = ()=>{}) {
const middleLayer = cc.find('middleLayer'); const middleLayer = cc.find('middleLayer');
if (middleLayer) { if (middleLayer) {
const middleLayerComponent = middleLayer.getComponent('middleLayer'); const middleLayerComponent = middleLayer.getComponent('middleLayer');
middleLayerComponent.onHomeworkFinish(callback, data); if (middleLayerComponent.role == 'student') {
} else { middleLayerComponent.onHomeworkFinish(() => { });
console.log('onHomeworkFinish', JSON.stringify(data));
} }
}
export function callMiddleLayerFunction(apiName: string, data: any, callback: Function) {
const middleLayer = cc.find('middleLayer');
if (middleLayer) {
const middleLayerComponent = middleLayer.getComponent('middleLayer');
middleLayerComponent.callMiddleLayerFunction(apiName, data, callback);
} else { } else {
console.log('callMiddleLayerFunction: ' + apiName); console.log('onHomeworkFinish');
} }
} }
\ No newline at end of file
export function getPosByAngle(angle, len) {
const radian = angle * Math.PI / 180;
const x = Math.sin(radian) * len;
const y = Math.cos(radian) * len;
return { x, y };
}
export function getAngleByPos(px, py, mx, my) {
const x = Math.abs(px - mx);
const y = Math.abs(py - my);
const z = Math.sqrt(Math.pow(x, 2) + Math.pow(y, 2));
const cos = y / z;
const radina = Math.acos(cos); // 用反三角函数求弧度
let angle = Math.floor(180 / (Math.PI / radina) * 100) / 100; // 将弧度转换成角度
if (mx > px && my > py) {// 鼠标在第四象限
angle = 180 - angle;
}
if (mx === px && my > py) {// 鼠标在y轴负方向上
angle = 180;
}
if (mx > px && my === py) {// 鼠标在x轴正方向上
angle = 90;
}
if (mx < px && my > py) {// 鼠标在第三象限
angle = 180 + angle;
}
if (mx < px && my === py) {// 鼠标在x轴负方向
angle = 270;
}
if (mx < px && my < py) {// 鼠标在第二象限
angle = 360 - angle;
}
// console.log('angle: ', angle);
return angle;
}
export function exchangeNodePos(baseNode, targetNode) {
return baseNode.convertToNodeSpaceAR(targetNode._parent.convertToWorldSpaceAR(cc.v2(targetNode.x, targetNode.y)));
}
export function RandomInt(a, b = 0) {
let max = Math.max(a, b);
let min = Math.min(a, b);
return Math.floor(Math.random() * (max - min) + min);
}
export function randomSortByArr(arr) {
const newArr = [];
const tmpArr = arr.concat();
while (tmpArr.length > 0) {
const randomIndex = Math.floor(tmpArr.length * Math.random());
newArr.push(tmpArr[randomIndex]);
tmpArr.splice(randomIndex, 1);
}
return newArr;
}
export async function asyncTweenTo(node, duration, obj, ease = undefined) {
return new Promise((resolve, reject) => {
cc.tween(node)
.to(duration, obj, ease)
.call(() => {
resolve();
})
.start();
});
}
export async function asyncTweenBy(node, duration, obj, ease = undefined) {
return new Promise((resolve, reject) => {
cc.tween(node)
.by(duration, obj, ease)
.call(() => {
resolve();
})
.start();
});
}
export async function asyncPlayDragonBoneAnimation(node, animationName, time = 1, onFrameEvent) {
return new Promise((resolve, reject) => {
node.getComponent(dragonBones.ArmatureDisplay)
.once(dragonBones.EventObject.COMPLETE, () => {
resolve();
});
node.getComponent(dragonBones.ArmatureDisplay)
.on(dragonBones.EventObject.FRAME_EVENT, ({ name }) => {
if (onFrameEvent && typeof (onFrameEvent) == 'function') {
onFrameEvent(name);
}
});
node.getComponent(dragonBones.ArmatureDisplay)
.playAnimation(animationName, time);
});
}
export async function asyncPlayEffectByUrl(url, loop = false) {
return new Promise((resolve, reject) => {
cc.assetManager.loadRemote(url, (err, clip) => {
console.log(clip);
cc.audioEngine.playEffect(clip, loop);
resolve();
});
});
}
export async function jelly(node) {
return new Promise((resolve, reject) => {
cc.tween(node)
.to(0.1, { scaleX: 0.9, scaleY: 1.1 })
.to(0.1, { scaleX: 1.1, scaleY: 0.9 })
.to(0.1, { scaleX: 1, scaleY: 1 })
.call(resolve)
.start();
});
}
export async function asyncDelay(time, func) {
return new Promise((resolve, reject) => {
const id = setTimeout(() => {
resolve();
}, time * 1000);
func && func(id);
})
}
export async function showFireworks(baseNode, nodeList, pos = cc.v2(0, 0), side = cc.v2(0, 100), range = 50, number = 100, func) {
new Array(number).fill(' ').forEach(async (_, i) => {
let rabbonNode = new cc.Node();
rabbonNode.parent = baseNode;
rabbonNode.x = pos.x;
rabbonNode.y = pos.y;
rabbonNode.angle = 60 * Math.random() - 30;
let node = cc.instantiate(nodeList[RandomInt(nodeList.length)]);
node.parent = rabbonNode;
node.active = true;
node.x = 0;
node.y = 0;
node.angle = 0;
const rate = Math.random();
const angle = Math.PI * (Math.random() * 2 - 1);
await asyncTweenBy(rabbonNode, 0.3, {
x: side.x * rate + Math.cos(angle) * range * rate,
y: side.y * rate + Math.sin(angle) * range * rate
}, {
easing: 'quadIn'
});
cc.tween(rabbonNode)
.by(8, { y: -2000 })
.start();
rabbonFall(rabbonNode);
await asyncDelay(Math.random(), func);
cc.tween(node)
.by(0.15, { x: -10, angle: -10 })
.by(0.3, { x: 20, angle: 20 })
.by(0.15, { x: -10, angle: -10 })
.union()
.repeatForever()
.start();
cc.tween(rabbonNode)
.delay(5)
.to(0.3, { opacity: 0 })
.call(() => {
node.stopAllActions();
node.active = false;
node.parent = null;
node = null;
})
.start();
});
}
async function rabbonFall(node) {
const time = 1 + Math.random();
const offsetX = RandomInt(-200, 200) * time;
await asyncTweenBy(node, time, { x: offsetX, angle: offsetX * 60 / 200 });
rabbonFall(node);
}
\ No newline at end of file
{
"ver": "1.0.8",
"uuid": "c857edee-430c-4a82-84aa-6ab34daaad76",
"isPlugin": false,
"loadPluginInWeb": true,
"loadPluginInNative": true,
"loadPluginInEditor": false,
"subMetas": {}
}
\ No newline at end of file
{
"ver": "1.1.2",
"uuid": "6900b8d9-61fb-4b3a-9693-7d0e2595691a",
"isBundle": false,
"bundleName": "",
"priority": 1,
"compressionType": {},
"optimizeHotUpdate": {},
"inlineSpriteFrames": {},
"isRemoteBundle": {},
"subMetas": {}
}
\ No newline at end of file
{
"ver": "1.1.2",
"uuid": "29562f5c-d8d5-4628-b7eb-9a2f1038a8ae",
"isBundle": false,
"bundleName": "",
"priority": 1,
"compressionType": {},
"optimizeHotUpdate": {},
"inlineSpriteFrames": {},
"isRemoteBundle": {},
"subMetas": {}
}
\ No newline at end of file
{"name":"alligator","version":"5.5","armature":[{"name":"Armature","slot":[{"name":"alligator","color":{},"parent":"alligator"},{"name":"egg1","color":{},"z":1,"parent":"egg1"}],"bone":[{"name":"root","transform":{}},{"name":"egg1","transform":{"x":-419.25,"skY":-90,"y":220.45,"skX":-90},"length":275,"parent":"root"},{"name":"alligator","transform":{"x":432.45,"skY":-89.372,"y":-96.5,"skX":-89.372},"length":159,"parent":"root"},{"name":"bone","transform":{"x":806.2358,"skY":115.6133,"y":-475.5656,"skX":115.6133},"length":3,"parent":"alligator"}],"frameRate":24,"aabb":{"x":-731,"height":755,"y":-428,"width":1559},"canvas":{"x":0,"height":1600,"y":0,"width":2176},"animation":[{"name":"newAnimation","frame":[],"bone":[{"name":"root","rotateFrame":[],"translateFrame":[],"scaleFrame":[]},{"name":"egg1","rotateFrame":[{"duration":5,"tweenEasing":0},{"duration":5,"rotate":-5.9102,"tweenEasing":0},{"duration":5,"tweenEasing":0},{"duration":5,"rotate":3.9844,"tweenEasing":0},{"duration":5,"tweenEasing":0},{"duration":5,"rotate":3.9844,"tweenEasing":0},{"duration":10}],"translateFrame":[],"scaleFrame":[{"tweenEasing":0,"duration":5},{"tweenEasing":0,"x":0.97,"duration":5},{"tweenEasing":0,"duration":5},{"tweenEasing":0,"x":0.97,"duration":5},{"tweenEasing":0,"duration":5},{"tweenEasing":0,"x":0.97,"duration":5},{"duration":10}]},{"name":"alligator","rotateFrame":[],"translateFrame":[{"tweenEasing":0,"x":-784.8246,"y":-11.4035,"duration":26},{"tweenEasing":0,"x":-784.8246,"y":-11.4035,"duration":14},{"x":18.6842,"y":-12.2807,"duration":0}],"scaleFrame":[{"tweenEasing":0,"x":0.3,"y":0.3,"duration":26},{"tweenEasing":0,"x":0.3,"y":0.3,"duration":14},{"duration":0}]},{"name":"bone","rotateFrame":[],"translateFrame":[],"scaleFrame":[]}],"playTimes":0,"ffd":[],"slot":[{"name":"egg1","displayFrame":[{"duration":5},{"duration":5,"value":1},{"duration":5,"value":2},{"duration":5,"value":3},{"duration":5,"value":4},{"duration":5,"value":6},{"duration":10,"value":5}],"colorFrame":[]},{"name":"alligator","displayFrame":[],"colorFrame":[]}],"ik":[],"duration":40}],"skin":[{"name":"","slot":[{"name":"alligator","display":[{"name":"alligator/alligator","transform":{"x":-19.0738,"skY":89.372,"y":-52.2441,"skX":89.372},"type":"image","path":"alligator/alligator"}]},{"name":"egg1","display":[{"name":"alligator/egg1","transform":{"x":270.95,"skY":90,"y":-14.75,"skX":90},"type":"image","path":"alligator/egg1"},{"name":"alligator/egg2","transform":{"x":270.95,"skY":90,"y":-14.75,"skX":90},"type":"image","path":"alligator/egg2"},{"name":"alligator/egg3","transform":{"x":270.95,"skY":90,"y":-14.75,"skX":90},"type":"image","path":"alligator/egg3"},{"name":"alligator/egg4","transform":{"x":270.95,"skY":90,"y":-14.75,"skX":90},"type":"image","path":"alligator/egg4"},{"name":"alligator/egg5","transform":{"x":270.95,"skY":90,"y":-14.75,"skX":90},"type":"image","path":"alligator/egg5"},{"name":"alligator/egg6","transform":{"x":270.95,"skY":90,"y":-14.75,"skX":90},"type":"image","path":"alligator/egg6"},{"name":"alligator/egg6_0","transform":{"x":270.95,"skY":90,"y":-14.75,"skX":90},"type":"image","path":"alligator/egg6_0"}]}]}],"defaultActions":[{"gotoAndPlay":"newAnimation"}],"ik":[],"type":"Armature"}],"frameRate":24,"isGlobal":0}
\ No newline at end of file
{
"ver": "1.0.1",
"uuid": "15504af4-d637-42ff-a1bc-e6f12ecc637a",
"subMetas": {}
}
\ No newline at end of file
{"name":"alligator","imagePath":"alligator_tex.png","SubTexture":[{"name":"alligator/alligator","x":1,"height":488,"y":2272,"width":896},{"name":"alligator/egg1","x":1193,"height":755,"y":1,"width":594},{"name":"alligator/egg5","x":1,"height":755,"y":1515,"width":594},{"name":"alligator/egg3","x":1,"height":755,"y":758,"width":594},{"name":"alligator/egg6","x":1193,"height":755,"y":758,"width":594},{"name":"alligator/egg4","x":1,"height":755,"y":1,"width":594},{"name":"alligator/egg6_0","x":597,"height":755,"y":758,"width":594},{"name":"alligator/egg2","x":597,"height":755,"y":1,"width":594}],"height":4096,"width":2048}
\ No newline at end of file
{
"ver": "1.0.1",
"uuid": "b4a89414-6bd9-4fe5-8d94-da2011ede24c",
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "b736853d-8d7d-4ae0-9f95-e925c080daf2",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 2048,
"height": 4096,
"platformSettings": {},
"subMetas": {
"alligator_tex": {
"ver": "1.0.4",
"uuid": "af7146c6-3d69-4849-9e99-264d043c6ee3",
"rawTextureUuid": "b736853d-8d7d-4ae0-9f95-e925c080daf2",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": -130,
"offsetY": 667.5,
"trimX": 1,
"trimY": 1,
"width": 1786,
"height": 2759,
"rawWidth": 2048,
"rawHeight": 4096,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "1.1.2",
"uuid": "aee44df0-1ced-4216-ac8a-b5ff1cb75f5b",
"isBundle": false,
"bundleName": "",
"priority": 1,
"compressionType": {},
"optimizeHotUpdate": {},
"inlineSpriteFrames": {},
"isRemoteBundle": {},
"subMetas": {}
}
\ No newline at end of file
{"name":"ant","version":"5.5","armature":[{"name":"Armature","slot":[{"name":"1","color":{},"displayIndex":1,"parent":"root"},{"name":"ant/apple4","color":{},"z":1,"parent":"apple1"},{"name":"ant/apple3","color":{},"z":2,"parent":"apple1"},{"name":"ant/apple2","color":{},"z":3,"parent":"apple1"},{"name":"apple1","color":{},"z":4,"parent":"apple1"},{"name":"ant","color":{},"z":5,"parent":"ant"}],"bone":[{"name":"root","transform":{}},{"name":"ant","transform":{"x":450.5,"skY":-90,"y":-128,"skX":-90},"length":126,"parent":"root"},{"name":"apple1","transform":{"x":-434.6,"skY":-90,"y":-59.2,"skX":-90},"length":110,"parent":"root"}],"frameRate":24,"aabb":{"x":-662,"height":552,"y":-414.00000000000006,"width":1472},"canvas":{"x":0,"height":1600,"y":0,"width":2176},"animation":[{"name":"newAnimation","frame":[],"bone":[{"name":"root","rotateFrame":[],"translateFrame":[],"scaleFrame":[]},{"name":"ant","rotateFrame":[{"duration":10,"rotate":-38.3686,"tweenEasing":0},{"duration":10,"rotate":-56.5741,"tweenEasing":0},{"duration":10,"rotate":-69.0413,"tweenEasing":0},{"duration":10,"rotate":-81.1856,"tweenEasing":0},{"duration":8}],"translateFrame":[{"tweenEasing":0,"x":-713.6523,"y":-51.7589,"duration":10},{"tweenEasing":0,"x":-737.1135,"y":8.7348,"duration":10},{"tweenEasing":0,"x":-737.1135,"y":57.4618,"duration":10},{"tweenEasing":0,"x":-718.3445,"y":96.9487,"duration":10},{"x":-63.2368,"y":9.6732,"duration":8}],"scaleFrame":[{"tweenEasing":0,"x":0.13,"y":0.13,"duration":30},{"tweenEasing":0,"x":0.13,"y":0.13,"duration":10},{"tweenEasing":0,"duration":4},{"tweenEasing":0,"x":0.96,"duration":4},{"duration":0}]},{"name":"apple1","rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":8,"rotate":2.031,"tweenEasing":0},{"duration":8,"tweenEasing":0},{"duration":24,"rotate":2.031}],"translateFrame":[],"scaleFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"x":0.98,"duration":8},{"tweenEasing":0,"duration":8},{"x":0.98,"duration":24}]}],"playTimes":0,"ffd":[],"slot":[{"name":"apple1","displayFrame":[],"colorFrame":[{"duration":8,"tweenEasing":0},{"duration":40,"color":{"aM":0}}]},{"name":"1","displayFrame":[{"duration":4},{"duration":4,"value":1},{"duration":4},{"duration":4,"value":1},{"duration":4},{"duration":4,"value":1},{"duration":4},{"duration":20,"value":1}],"colorFrame":[]},{"name":"ant","displayFrame":[],"colorFrame":[]},{"name":"ant/apple2","displayFrame":[],"colorFrame":[{"duration":8},{"duration":8,"tweenEasing":0},{"duration":32,"color":{"aM":0}}]},{"name":"ant/apple3","displayFrame":[],"colorFrame":[{"duration":16},{"duration":8,"tweenEasing":0},{"duration":24,"color":{"aM":0}}]},{"name":"ant/apple4","displayFrame":[],"colorFrame":[]}],"ik":[],"duration":48}],"skin":[{"name":"","slot":[{"name":"1","display":[{"name":"ant/1","transform":{"x":-197,"y":-188},"type":"image","path":"ant/1"},{"name":"ant/2","transform":{"x":-202.5,"y":-158.5},"type":"image","path":"ant/2"}]},{"name":"ant","display":[{"name":"ant/ant","transform":{"x":10,"skY":90,"y":-43,"skX":90},"type":"image","path":"ant/ant"}]},{"name":"ant/apple4","display":[{"name":"ant/apple4","transform":{"x":40.8,"skY":90,"y":-4.9,"skX":90},"type":"image","path":"ant/apple4"}]},{"name":"ant/apple3","display":[{"name":"ant/apple3","transform":{"x":40.8,"skY":90,"y":-4.9,"skX":90},"type":"image","path":"ant/apple3"}]},{"name":"ant/apple2","display":[{"name":"ant/apple2","transform":{"x":40.8,"skY":90,"y":-4.9,"skX":90},"type":"image","path":"ant/apple2"}]},{"name":"apple1","display":[{"name":"ant/apple1","transform":{"x":40.8,"skY":90,"y":-4.9,"skX":90},"type":"image","path":"ant/apple1"}]}]}],"defaultActions":[{"gotoAndPlay":"newAnimation"}],"ik":[],"type":"Armature"}],"frameRate":24,"isGlobal":0}
\ No newline at end of file
{
"ver": "1.0.1",
"uuid": "430f14b7-59ac-4f6d-a79d-838296c9713c",
"subMetas": {}
}
\ No newline at end of file
{"name":"ant","imagePath":"ant_tex.png","SubTexture":[{"name":"ant/1","x":885,"height":80,"y":1,"width":74},{"name":"ant/2","x":808,"height":155,"y":1,"width":75},{"name":"ant/apple4","x":448,"height":430,"y":987,"width":445},{"name":"ant/apple3","x":1,"height":430,"y":987,"width":445},{"name":"ant/apple2","x":448,"height":430,"y":555,"width":445},{"name":"ant/apple1","x":1,"height":430,"y":555,"width":445},{"name":"ant/ant","x":1,"height":552,"y":1,"width":805}],"height":2048,"width":1024}
\ No newline at end of file
{
"ver": "1.0.1",
"uuid": "b49c0c6a-b9af-4989-946a-24d24ea4759f",
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "2cfd8b17-0d23-4e0b-93bf-731bfd0aea9f",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 1024,
"height": 2048,
"platformSettings": {},
"subMetas": {
"ant_tex": {
"ver": "1.0.4",
"uuid": "f413a87e-539b-496a-823a-b5f5aceaa9c6",
"rawTextureUuid": "2cfd8b17-0d23-4e0b-93bf-731bfd0aea9f",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": -32,
"offsetY": 315,
"trimX": 1,
"trimY": 1,
"width": 958,
"height": 1416,
"rawWidth": 1024,
"rawHeight": 2048,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "1.1.2",
"uuid": "15e5bf20-3417-4166-849e-c41799aaceb0",
"isBundle": false,
"bundleName": "",
"priority": 1,
"compressionType": {},
"optimizeHotUpdate": {},
"inlineSpriteFrames": {},
"isRemoteBundle": {},
"subMetas": {}
}
\ No newline at end of file
{"name":"apple","version":"5.5","armature":[{"name":"Armature","slot":[{"name":"grass","color":{},"parent":"root"},{"name":"trunk","color":{},"z":1,"parent":"trunk1"},{"name":"leaf","color":{},"z":2,"parent":"leaf"},{"name":"apple","color":{},"z":3,"parent":"apple"},{"name":"apple_拷贝_3","color":{},"z":4,"parent":"apple_拷贝_3"},{"name":"apple_拷贝_4","color":{},"z":5,"parent":"apple_拷贝_4"},{"name":"apple-right","color":{},"z":6,"parent":"apple-right"}],"bone":[{"name":"root","transform":{}},{"name":"trunk","transform":{"x":-380.15,"skY":-89.212,"y":279.55,"skX":-89.212},"length":123,"parent":"root"},{"name":"trunk1","transform":{"x":234.9542,"skY":-9.0231,"y":-11.841,"skX":-9.0231},"length":208,"parent":"trunk"},{"name":"apple_拷贝_3","transform":{"x":354.4537,"skY":6.7757,"y":-157.0405,"skX":6.7757},"parent":"trunk1"},{"name":"apple-right","transform":{"x":304.8128,"skY":8.2351,"y":71.4344,"skX":8.2351},"length":144,"parent":"trunk1"},{"name":"leaf","transform":{"x":277.4203,"skY":6.7757,"y":-17.4854,"skX":6.7757},"length":233,"parent":"trunk1"},{"name":"apple_拷贝_4","transform":{"x":551.5805,"skY":6.7757,"y":-168.1698,"skX":6.7757},"parent":"trunk1"},{"name":"apple","transform":{"x":460.6752,"skY":6.7757,"y":120.991,"skX":6.7757},"parent":"trunk1"}],"frameRate":24,"aabb":{"x":-841.0000000000007,"height":1000.0000000000008,"y":-625.0000000000008,"width":773},"canvas":{"x":0,"height":1600,"y":0,"width":2176},"animation":[{"name":"apple","frame":[],"bone":[{"name":"root","rotateFrame":[],"translateFrame":[],"scaleFrame":[]},{"name":"apple-right","rotateFrame":[{"duration":16},{"duration":8,"rotate":-21.4686,"tweenEasing":0},{"duration":8,"rotate":2.135,"curve":[0.5,0,1,1]},{"duration":10,"rotate":27.0497,"tweenEasing":0},{"duration":8,"rotate":-2.1746}],"translateFrame":[{"tweenEasing":0,"x":-2.7035,"y":44.3605,"duration":14},{"tweenEasing":0,"x":-2.7035,"y":44.3605,"duration":2},{"tweenEasing":0,"x":-2.7035,"y":44.3605,"duration":8},{"curve":[0.6506550218340612,0.0036290322580645167,1,1],"x":-24.1274,"y":62.0149,"duration":8},{"tweenEasing":0,"x":-431.6818,"y":131.9618,"duration":10},{"x":-201.1672,"y":703.3942,"duration":8}],"scaleFrame":[{"tweenEasing":0,"x":0.28,"y":0.28,"duration":14},{"tweenEasing":0,"x":0.28,"y":0.28,"duration":18},{"tweenEasing":0,"x":0.28,"y":0.28,"duration":10},{"tweenEasing":0,"duration":4},{"tweenEasing":0,"x":0.89,"duration":4},{"duration":0}]},{"name":"trunk","rotateFrame":[{"duration":8,"curve":[0,0,0.5,1]},{"duration":8,"rotate":-3.6523,"curve":[0.5,0,1,1]},{"duration":6,"rotate":4.9399,"curve":[0,0,0.5,1]},{"duration":6,"rotate":0.2875,"tweenEasing":0},{"duration":4,"rotate":4.9399,"curve":[0,0,0.5,1]},{"duration":4,"rotate":-4.1735,"tweenEasing":0},{"duration":4,"rotate":-1.4239,"tweenEasing":0},{"duration":10,"rotate":-1.5202}],"translateFrame":[],"scaleFrame":[]},{"name":"trunk1","rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":8,"rotate":-4.2973,"tweenEasing":0},{"duration":6,"rotate":13.4533,"curve":[0,0,0.5,1]},{"duration":6,"rotate":7.8667,"tweenEasing":0},{"duration":4,"rotate":13.4533,"curve":[0,0,0.5,1]},{"duration":4,"rotate":5.1101,"tweenEasing":0},{"duration":4,"rotate":7.8651,"tweenEasing":0},{"duration":10,"rotate":4.021}],"translateFrame":[],"scaleFrame":[]},{"name":"leaf","rotateFrame":[],"translateFrame":[],"scaleFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"x":1.1,"duration":6},{"duration":36}]},{"name":"apple","rotateFrame":[{"duration":8,"curve":[0,0,0.5,1]},{"duration":6,"rotate":16.4327,"tweenEasing":0},{"duration":2,"tweenEasing":0},{"duration":6,"rotate":11.8408,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":22,"rotate":11.8408}],"translateFrame":[],"scaleFrame":[]},{"name":"apple_拷贝_4","rotateFrame":[{"duration":8,"curve":[0,0,0.5,1]},{"duration":6,"rotate":14.1412,"tweenEasing":0},{"duration":2,"curve":[0,0,0.5,1]},{"duration":6,"rotate":6.0539,"tweenEasing":0},{"duration":6,"curve":[0,0,0.5,1]},{"duration":22,"rotate":6.0539}],"translateFrame":[],"scaleFrame":[]},{"name":"apple_拷贝_3","rotateFrame":[{"duration":8,"curve":[0,0,0.5,1]},{"duration":6,"rotate":11.295,"tweenEasing":0},{"duration":2,"curve":[0,0,0.5,1]},{"duration":6,"rotate":10.3318,"tweenEasing":0},{"duration":6,"curve":[0,0,0.5,1]},{"duration":22,"rotate":10.3318}],"translateFrame":[],"scaleFrame":[]}],"playTimes":0,"ffd":[],"slot":[{"name":"grass","displayFrame":[],"colorFrame":[]},{"name":"trunk","displayFrame":[],"colorFrame":[]},{"name":"leaf","displayFrame":[],"colorFrame":[]},{"name":"apple","displayFrame":[],"colorFrame":[]},{"name":"apple_拷贝_3","displayFrame":[],"colorFrame":[]},{"name":"apple_拷贝_4","displayFrame":[],"colorFrame":[]},{"name":"apple-right","displayFrame":[],"colorFrame":[]}],"ik":[],"duration":50}],"skin":[{"name":"","slot":[{"name":"apple-right","display":[{"name":"apple/apple-right","transform":{"x":36.95,"skY":90,"y":-4.9,"skX":90},"type":"image","path":"apple/apple-right"}]},{"name":"trunk","display":[{"bonePose":[1,0.013752744539744436,-0.9999054265367423,0.9999054265367423,0.013752744539744436,-380.15,279.55,2,-0.14323494834957837,-0.9896887134707022,0.9896887134707022,-0.14323494834957837,-388.7586206896555,44.455172413793015],"userEdges":[],"slotPose":[1,-6.661338147750939e-16,6.661338147750939e-16,1,-397.5000000000001,72.99999999999994],"weights":[1,2,1,2,1,0.28383161233905957,2,0.7161683876609405,2,1,0.6224004474861904,2,0.37759955251380967,2,1,0.9009136778129336,2,0.09908632218706628,1,1,1,1,1,1,2,1,0.83576885015101,2,0.16423114984899007,2,1,0.5333009755569753,2,0.46669902444302475,2,1,0.17971475711662627,2,0.8202852428833737,1,2,1,1,2,1,1,2,1,1,2,1,1,2,1,2,1,0.004049944466725675,2,0.9959500555332743,1,2,1,1,2,1],"transform":{"x":-26.9984,"skY":98.2351,"y":-12.7399,"skX":98.2351},"type":"mesh","width":207,"name":"apple/trunk","uvs":[1,0.18929,0.95435,0.43739,0.87923,0.66197,0.84589,0.88834,0.80845,1.00011,0.3587,1.00011,0.32126,0.80305,0.28382,0.64023,0.20048,0.4229,0.08792,0.23992,-0.00024,0.09506,-0.00024,0,0.27971,0,0.46691,0.1458,0.55459,0.34317,0.74179,0,1,0],"height":476,"vertices":[103.5,-147.9,94.05,-29.8,78.5,77.1,71.6,184.85,63.85,238.05,-29.25,238.05,-37,144.25,-44.75,66.75,-62,-36.7,-85.3,-123.8,-103.55,-192.75,-103.55,-238,-45.6,-238,-6.85,-168.6,11.3,-74.65,50.05,-238,103.5,-238],"path":"apple/trunk","triangles":[7,2,1,14,7,1,14,1,0,15,0,16,6,3,2,8,7,14,7,6,2,5,4,3,6,5,3,13,9,14,9,8,14,12,10,13,10,9,13,11,10,12,0,14,15],"edges":[0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,16,16,0]}]},{"name":"grass","display":[{"name":"apple/grass","transform":{"x":-417.5,"y":286},"type":"image","path":"apple/grass"}]},{"name":"leaf","display":[{"name":"apple/leaf","transform":{"x":143.0752,"skY":91.4594,"y":-5.0578,"skX":91.4594},"type":"image","path":"apple/leaf"}]},{"name":"apple","display":[{"name":"apple/apple","transform":{"x":10.7857,"skY":91.4594,"y":-3.2264,"skX":91.4594},"type":"image","path":"apple/apple"}]},{"name":"apple_拷贝_3","display":[{"name":"apple/apple_拷贝_3","transform":{"x":17.5564,"skY":91.4594,"y":3.8984,"skX":91.4594},"type":"image","path":"apple/apple_拷贝_3"}]},{"name":"apple_拷贝_4","display":[{"name":"apple/apple_拷贝_4","transform":{"x":11.154,"skY":91.4594,"y":-0.0159,"skX":91.4594},"type":"image","path":"apple/apple_拷贝_4"}]}]}],"defaultActions":[{"gotoAndPlay":"apple"}],"ik":[],"type":"Armature"}],"frameRate":24,"isGlobal":0}
\ No newline at end of file
{
"ver": "1.0.1",
"uuid": "0c3549c9-9951-47a1-9c7d-c1eeb12ceff2",
"subMetas": {}
}
\ No newline at end of file
{"name":"apple","imagePath":"apple_tex.png","SubTexture":[{"name":"apple/grass","x":1,"height":178,"y":1049,"width":515},{"name":"apple/trunk","x":776,"height":476,"y":1,"width":207},{"name":"apple/leaf","x":1,"height":509,"y":1,"width":773},{"name":"apple/apple","x":557,"height":137,"y":512,"width":141},{"name":"apple/apple_拷贝_3","x":700,"height":137,"y":618,"width":141},{"name":"apple/apple_拷贝_4","x":776,"height":137,"y":479,"width":141},{"name":"apple/apple-right","x":1,"height":535,"y":512,"width":554}],"height":2048,"width":1024}
\ No newline at end of file
{
"ver": "1.0.1",
"uuid": "bd58c477-0554-44be-8fde-701542d0ce66",
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "61ca985d-fe63-4927-a454-25038ce57ab7",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 1024,
"height": 2048,
"platformSettings": {},
"subMetas": {
"apple_tex": {
"ver": "1.0.4",
"uuid": "21969a63-04a1-4e41-a8b8-cf09c609d3a1",
"rawTextureUuid": "61ca985d-fe63-4927-a454-25038ce57ab7",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": -20,
"offsetY": 410,
"trimX": 1,
"trimY": 1,
"width": 982,
"height": 1226,
"rawWidth": 1024,
"rawHeight": 2048,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "1.1.2",
"uuid": "8541f4ce-82c3-4f46-baed-233893b50b0a",
"isBundle": false,
"bundleName": "",
"priority": 1,
"compressionType": {},
"optimizeHotUpdate": {},
"inlineSpriteFrames": {},
"isRemoteBundle": {},
"subMetas": {}
}
\ No newline at end of file
{"name":"ax","version":"5.5","armature":[{"name":"Armature","slot":[{"name":"wood","color":{},"parent":"root"},{"name":"ax","color":{},"z":1,"parent":"ax"},{"name":"痕迹","color":{},"z":2,"parent":"root"}],"bone":[{"name":"root","transform":{}},{"name":"ax","transform":{"x":349.5,"skY":-170.2833,"y":-118.6,"skX":-170.2833},"length":340,"parent":"root"}],"frameRate":24,"aabb":{"x":-807,"height":705,"y":-315,"width":1188},"canvas":{"x":0,"height":1600,"y":0,"width":2176},"animation":[{"name":"newAnimation","frame":[],"bone":[{"name":"root","rotateFrame":[],"translateFrame":[],"scaleFrame":[]},{"name":"ax","rotateFrame":[{"duration":12,"curve":[0.5,0,1,1]},{"duration":2,"rotate":20.8703,"curve":[0,0,0.3253275109170305,1.0036290322580645]},{"duration":6,"rotate":20.8703,"curve":[0,0,0.3253275109170305,1.0036290322580645]},{"duration":3,"rotate":6.957,"tweenEasing":0},{"duration":9,"rotate":6.957,"curve":[0.5,0,1,1]},{"duration":4,"rotate":44.2233,"tweenEasing":0},{"duration":12,"rotate":44.2233,"curve":[0.6746724890829694,-0.0012096774193548392,1,1]},{"duration":0}],"translateFrame":[],"scaleFrame":[]}],"playTimes":0,"ffd":[],"slot":[{"name":"wood","displayFrame":[],"colorFrame":[]},{"name":"ax","displayFrame":[],"colorFrame":[]},{"name":"痕迹","displayFrame":[{"duration":48,"value":-1},{"duration":0}],"colorFrame":[]}],"ik":[],"duration":48}],"skin":[{"name":"","slot":[{"name":"ax","display":[{"name":"ax/ax","transform":{"x":394.4474,"skY":170.2833,"y":-21.9889,"skX":170.2833},"type":"image","path":"ax/ax"}]},{"name":"痕迹","display":[{"name":"ax/痕迹","transform":{"x":-367.5,"y":-31},"type":"image","path":"ax/痕迹"}]},{"name":"wood","display":[{"name":"ax/wood","transform":{"x":-381.5,"y":114},"type":"image","path":"ax/wood"}]}]}],"defaultActions":[{"gotoAndPlay":"newAnimation"}],"ik":[],"type":"Armature"}],"frameRate":24,"isGlobal":0}
\ No newline at end of file
{
"ver": "1.0.1",
"uuid": "3dea3437-c958-4db1-8892-577532882929",
"subMetas": {}
}
\ No newline at end of file
{"name":"ax","imagePath":"ax_tex.png","SubTexture":[{"name":"ax/wood","x":1,"height":552,"y":1,"width":851},{"name":"ax/ax","x":1,"height":303,"y":555,"width":848},{"name":"ax/痕迹","x":1,"height":82,"y":860,"width":191}],"height":1024,"width":1024}
\ No newline at end of file
{
"ver": "1.0.1",
"uuid": "43b1cdd8-e759-482d-9435-3ca8696e8d11",
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "273d9d69-5b4e-41ad-80b7-e6f5e1b9ed9b",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 1024,
"height": 1024,
"platformSettings": {},
"subMetas": {
"ax_tex": {
"ver": "1.0.4",
"uuid": "9285cf00-d32e-4bfe-878a-3d2c3dc7b82d",
"rawTextureUuid": "273d9d69-5b4e-41ad-80b7-e6f5e1b9ed9b",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": -85.5,
"offsetY": 40.5,
"trimX": 1,
"trimY": 1,
"width": 851,
"height": 941,
"rawWidth": 1024,
"rawHeight": 1024,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "1.1.2",
"uuid": "2459cf92-5ad7-4282-8fbf-33a5d2147f2a",
"isBundle": false,
"bundleName": "",
"priority": 1,
"compressionType": {},
"optimizeHotUpdate": {},
"inlineSpriteFrames": {},
"isRemoteBundle": {},
"subMetas": {}
}
\ No newline at end of file
{"name":"mao","version":"5.5","armature":[{"name":"Armature","slot":[{"name":"影子","color":{},"parent":"root"},{"name":"尾巴","color":{},"z":1,"parent":"尾巴2"},{"name":"右腿","color":{},"z":2,"parent":"右腿"},{"name":"左腿","color":{},"z":3,"parent":"左腿"},{"name":"右手","color":{},"z":4,"parent":"右手2"},{"name":"左手","color":{},"z":5,"parent":"左手2"},{"name":"左手伸直","color":{},"z":6,"parent":"左手"},{"name":"右手伸直","color":{},"z":7,"parent":"右手"},{"name":"身体","color":{},"z":8,"parent":"bone"},{"name":"领带","color":{},"z":9,"parent":"领带2"},{"name":"右耳","color":{},"z":10,"parent":"右耳"},{"name":"左耳","color":{},"z":11,"parent":"左耳"},{"name":"组_1","color":{},"z":12,"parent":"bone1"},{"name":"右眼","color":{},"z":13,"parent":"右眼"},{"name":"右眉毛","color":{},"z":14,"parent":"右眉毛"},{"name":"左眼","color":{},"z":15,"parent":"左眼"},{"name":"左眉毛","color":{},"z":16,"parent":"左眉毛"},{"name":"眼镜","color":{},"z":17,"parent":"眼镜"},{"name":"胡子","color":{},"z":18,"parent":"胡子1"},{"name":"鼻子","color":{},"z":19,"parent":"鼻子"},{"name":"嘴","color":{},"z":20,"parent":"嘴"},{"name":"帽子","color":{},"z":21,"parent":"帽子"}],"defaultActions":[{"gotoAndPlay":"begin"}],"aabb":{"x":710.308561974626,"height":483.5647539622176,"y":285.4193106747044,"width":362.6105263157899},"canvas":{"x":0,"height":1600,"y":0,"width":2176},"skin":[{"name":"","slot":[{"name":"左耳","display":[{"name":"猫01/左耳","transform":{"x":7.2491,"skY":127.651,"y":4.5192,"skX":127.651},"type":"image","path":"猫01/左耳"}]},{"name":"影子","display":[{"name":"猫01/影子","transform":{"x":884.8534,"y":735.9841},"type":"image","path":"猫01/影子"}]},{"name":"眼镜","display":[{"name":"猫01/眼镜","transform":{"x":-1.5367,"skY":97.8429,"y":2.3624,"skX":97.8429},"type":"image","path":"猫01/眼镜"}]},{"name":"左手伸直","display":[{"name":"猫01伸/左手伸直","transform":{"x":-0.9077,"skY":-128.9072,"y":53.8063,"skX":-128.9072},"type":"image","path":"猫01伸/左手伸直"}]},{"name":"胡子","display":[{"bonePose":[24,-0.9086924368221263,0.41746623248146225,-0.41746623248146225,-0.9086924368221263,0,-54.9,25,0.9915333108690438,0.12985258348247164,-0.12985258348247164,0.9915333108690438,34.7,-61.65],"userEdges":[],"slotPose":[0.9999999999999999,-2.498001805406602e-16,2.498001805406602e-16,0.9999999999999999,21.000000000000007,-42.499999999999986],"weights":[2,24,0.5957227179303393,25,0.4042772820696607,1,24,1,1,24,1,1,24,1,1,24,1,2,24,0.5465316356128019,25,0.4534683643871981,1,25,1,1,25,1,1,25,1,1,25,1,1,25,1],"transform":{"x":-11.0973,"skY":-7.4611,"y":20.7668,"skX":-7.4611},"type":"mesh","width":176,"name":"猫01/胡子","uvs":[0.47727,0.42941,0.14858,0.99941,0,0.99941,0,0.25294,0.16619,0.11824,0.46989,0.26824,0.62784,0.07647,0.83381,0,1,0,1,0.81412,0.76108,0.56471],"height":85,"vertices":[-4,-6,-61.85,42.45,-88,42.45,-88,-21,-58.75,-32.45,-5.3,-19.7,22.5,-36,58.75,-42.5,88,-42.5,88,26.7,45.95,5.5],"path":"猫01/胡子","triangles":[10,9,8,7,10,8,6,10,7,6,0,10,5,0,6,5,4,0,4,1,0,3,2,1,3,1,4],"edges":[0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,0]}]},{"name":"鼻子","display":[{"name":"猫01/鼻子","transform":{"x":0.6893,"skY":62.2415,"y":-0.1933,"skX":62.2415},"type":"image","path":"猫01/鼻子"}]},{"name":"左手","display":[{"bonePose":[2,0.10006862050548088,-0.9949805380961629,0.9949805380961629,0.10006862050548088,-26.4,128.95,8,-0.628061234545813,0.7781639195316045,-0.7781639195316045,-0.628061234545813,-66.7,22,19,-0.564293574788866,-0.8255742010576654,0.8255742010576654,-0.564293574788866,-98.5,61.400000000000006,27,-0.9634528338167091,-0.267878026367511,0.267878026367511,-0.9634528338167091,-114.05000000000001,38.650000000000006],"userEdges":[],"slotPose":[0.9999999999999998,4.440892098500626e-16,-4.440892098500626e-16,0.9999999999999998,-116,41.99999999999999],"weights":[1,27,1,1,27,1,2,27,0.52,19,0.48,3,19,0.5,8,0.29,27,0.21,2,19,0.53,8,0.47000000000000003,2,19,0.49,8,0.51,1,2,1,1,2,1,1,2,1,2,2,0.64,8,0.36,2,8,0.81,2,0.19,2,19,0.49,8,0.51,2,19,0.73,8,0.27,2,27,0.52,19,0.48,1,27,1,1,27,1,1,27,1],"transform":{"x":0.9813,"skY":164.462,"y":-3.7499,"skX":164.462},"type":"mesh","width":124,"name":"猫01/左手","uvs":[0,0.44257,0.07621,0.56284,0.37742,0.60135,0.41734,0.83581,0.53871,1,0.66532,1,0.87742,0.81351,1,0.36622,1,0,0.84556,0,0.70887,0.18176,0.61815,0.30878,0.59758,0.26622,0.49274,0.10338,0.37379,0.05878,0.26774,0,0,0],"height":74,"vertices":[-62,-4.25,-52.55,4.65,-15.2,7.5,-10.25,24.85,4.8,37,20.5,37,46.8,23.2,62,-9.9,62,-37,42.85,-37,25.9,-23.55,14.65,-14.15,12.1,-17.3,-0.9,-29.35,-15.65,-32.65,-28.8,-37,-62,-37],"path":"猫01/左手","triangles":[10,6,7,9,10,7,9,7,8,10,11,6,11,5,6,3,4,11,2,3,11,11,4,5,12,2,11,13,2,12,14,2,13,14,15,2,15,1,2,0,1,15,16,0,15],"edges":[0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,16,16,0]}]},{"name":"左眼","display":[{"name":"猫01/左眼","transform":{"x":2.2392,"skY":103.3513,"y":5.7217,"skX":103.3513},"type":"image","path":"猫01/左眼"}]},{"name":"身体","display":[{"bonePose":[2,0.10006862050548088,-0.9949805380961629,0.9949805380961629,0.10006862050548088,-26.4,128.95,5,-0.23092160580048127,-0.9729723593065361,0.9729723593065361,-0.23092160580048127,5.200000000000003,5.750000000000014],"userEdges":[],"slotPose":[1,0,0,1,-17,62],"weights":[1,5,1,1,5,1,2,2,0.6890456427703172,5,0.31095435722968284,2,2,0.8737792266327024,5,0.12622077336729756,2,2,0.9246026735291119,5,0.0753973264708881,2,2,0.8441279451809226,5,0.15587205481907737,2,2,0.7438188647372951,5,0.25618113526270503,2,2,0.458852511481229,5,0.541147488518771,1,5,1,1,5,1],"transform":{"x":10,"y":-38.75},"type":"mesh","width":122,"name":"猫01/身体","uvs":[0.45041,0.00556,0.12418,0.12861,0.0168,0.3625,0,0.80194,0.09139,1,0.9123,1,1,0.80194,1,0.41944,1,0.10028,0.82377,0],"height":180,"vertices":[-6.05,-89,-45.85,-66.85,-58.95,-24.75,-61,54.35,-49.85,90,50.3,90,61,54.35,61,-14.5,61,-71.95,39.5,-90],"path":"猫01/身体","triangles":[1,2,0,9,0,7,0,2,7,2,3,7,9,7,8,4,5,6,3,4,6,7,3,6],"edges":[0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,0]}]},{"name":"尾巴","display":[{"bonePose":[2,0.10006862050548088,-0.9949805380961629,0.9949805380961629,0.10006862050548088,-26.4,128.95,7,-0.9857652909736379,0.1681273062642085,-0.1681273062642085,-0.9857652909736379,-65.55000000000001,142.15000000000003,17,0.11417268347300655,-0.9934609193866524,0.9934609193866524,0.11417268347300655,-127.69999999999999,152.75000000000003,26,-0.793406064886026,-0.6086927108172653,0.6086927108172653,-0.793406064886026,-120.50000000000001,90.10000000000002,29,-0.9773007365750258,0.21185672113461934,-0.21185672113461934,-0.9773007365750258,-161.95000000000002,58.3],"userEdges":[],"slotPose":[1,-6.661338147750939e-16,6.661338147750939e-16,1,-133.49999999999997,108.50000000000007],"weights":[1,29,1,4,29,0.5227016984146547,26,0.43202636408426703,17,0.03465313859056454,7,0.010618798910513497,2,26,0.48,17,0.52,1,17,1,4,17,0.4911620289380977,7,0.486310553875708,26,0.015607726312633907,29,0.006919690873560398,4,17,0.4935498145297986,7,0.4918862208015806,26,0.010039731191844524,29,0.004524233476776202,1,7,1,1,7,1,1,2,1,1,2,1,1,2,1,1,7,1,1,7,1,4,7,0.7433172546809301,17,0.24222335523992874,26,0.01106360379462275,29,0.0033957862845183373,1,17,1,2,26,0.48,17,0.52,1,26,1,4,29,0.7305281686669947,26,0.2600263049428544,17,0.007092878355418108,7,0.002352648034732981,1,29,1],"transform":{"x":-0.8857,"skY":142.505,"y":-22.5117,"skX":142.505},"type":"mesh","width":175,"name":"猫01/尾巴","uvs":[0.00514,0.23853,0.31057,0.16835,0.45657,0.27477,0.50629,0.53807,0.46914,0.88945,0.52057,1,0.69714,1,0.86914,0.96422,1,0.81972,1,0.62844,0.92057,0.63899,0.82286,0.75,0.68286,0.82752,0.60543,0.82477,0.63114,0.57706,0.61057,0.2,0.45143,0,0.28571,0,0,0],"height":109,"vertices":[-86.6,-28.5,-33.15,-36.15,-7.6,-24.55,1.1,4.15,-5.4,42.45,3.6,54.5,34.5,54.5,64.6,50.6,87.5,34.85,87.5,14,73.6,15.15,56.5,27.25,32,35.7,18.45,35.4,22.95,8.4,19.35,-32.7,-8.5,-54.5,-37.5,-54.5,-87.5,-54.5],"path":"猫01/尾巴","triangles":[10,11,8,11,7,8,10,8,9,12,6,11,11,6,7,15,3,14,12,13,6,13,5,6,2,3,15,3,13,14,16,2,15,4,5,13,3,4,13,16,1,2,17,1,16,17,0,1,18,0,17],"edges":[0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,16,16,17,17,18,18,0]}]},{"name":"右腿","display":[{"name":"猫01/右腿","transform":{"x":23.5727,"skY":-75.4548,"y":-10.6202,"skX":-75.4548},"type":"image","path":"猫01/右腿"}]},{"name":"组_1","display":[{"name":"猫01/组_1","transform":{"x":89.5565,"skY":103.3513,"y":0.4939,"skX":103.3513},"type":"image","path":"猫01/组_1"}]},{"name":"左眉毛","display":[{"name":"猫01/左眉毛","transform":{"x":3.113,"skY":19.409,"y":1.998,"skX":19.409},"type":"image","path":"猫01/左眉毛"}]},{"name":"领带","display":[{"bonePose":[2,0.10006862050548088,-0.9949805380961629,0.9949805380961629,0.10006862050548088,-26.4,128.95,6,-3.885780586188048e-16,1,-1,-3.885780586188048e-16,-5.299999999999999,16.85000000000001,15,-0.02855977389887697,0.9995920864606948,-0.9995920864606948,-0.02855977389887697,-5.299999999999999,81.95,5,-0.23092160580048127,-0.9729723593065361,0.9729723593065361,-0.23092160580048127,5.200000000000003,5.750000000000014],"userEdges":[],"slotPose":[1.0000000000000002,6.938893903907228e-18,-6.938893903907228e-18,1.0000000000000002,-11.999999999999996,70.00000000000001],"weights":[1,2,1,1,2,1,1,2,1,1,5,1,1,5,1,1,5,1,1,2,1,1,2,1,2,15,0.5404804692408611,6,0.4595195307591388,2,15,0.9385812044988878,6,0.061418795501112136,2,15,0.9420585956610453,6,0.05794140433895465,2,15,0.5420950026535496,6,0.45790499734645035],"transform":{"x":-11.7538,"skY":-91.6366,"y":7.0386,"skX":-91.6366},"type":"mesh","width":120,"name":"猫01/领带","uvs":[0.46583,0.18397,0.25292,0.19872,0,0.15897,0,0.00288,0.57875,0,1,0,1,0.15417,0.65917,0.16891,0.6625,0.61314,0.685,1,0.39792,1,0.43375,0.61314],"height":156,"vertices":[-4.1,-49.3,-29.65,-47,-60,-53.2,-60,-77.55,9.45,-78,60,-78,60,-53.95,19.1,-51.65,19.5,17.65,22.2,78,-12.25,78,-7.95,17.65],"path":"猫01/领带","triangles":[4,7,5,5,7,6,0,11,8,0,8,7,4,0,7,8,11,9,11,10,9,1,0,4,3,1,4,3,2,1],"edges":[0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,0]}]},{"name":"右手","display":[{"bonePose":[2,0.10006862050548088,-0.9949805380961629,0.9949805380961629,0.10006862050548088,-26.4,128.95,9,0.6141409115204024,0.7891963892447109,-0.7891963892447109,0.6141409115204024,31.80000000000001,23.89999999999999,21,-0.8582390203981698,0.5132502156511869,-0.5132502156511869,-0.8582390203981698,74.25,78.44999999999999,28,0.7318029361026762,0.6815162967321489,-0.6815162967321489,0.7318029361026762,33.70000000000001,102.69999999999999],"userEdges":[],"slotPose":[1,1.6653345369377348e-16,-1.6653345369377348e-16,1,56.49999999999999,72],"weights":[3,9,0.9332953684052754,21,0.03988697109198161,28,0.026817660502743007,1,2,1,1,2,1,1,9,1,2,9,0.56,21,0.44,1,21,1,2,28,0.55,21,0.45,1,28,1,1,28,1,1,28,1,1,28,1,1,28,1,1,28,1,1,28,1,1,28,1,1,28,1,2,28,0.55,21,0.45,1,21,1,1,21,1,3,21,0.4586177517259628,9,0.4535368207985339,28,0.0878454274755032,2,9,0.56,21,0.44,1,9,1,1,9,1,1,9,1,1,9,1],"transform":{"x":-4.2374,"skY":-42.9622,"y":-38.0049,"skX":-42.9622},"type":"mesh","width":69,"name":"猫01/右手","uvs":[0.26884,0,0,0,0,0.39918,0.1587,0.41721,0.37391,0.55164,0.16449,0.59098,0.00507,0.70041,0,0.77664,0.03116,0.8832,0.3,1,0.72101,1,0.77536,0.91557,0.71957,0.84959,0.61522,0.81107,0.46667,0.81311,0.43913,0.81557,0.42029,0.80246,0.66667,0.78443,0.90507,0.73402,1,0.65492,1,0.58811,1,0.47828,0.92319,0.34221,0.70217,0.1791,0.36522,0.02336],"height":122,"vertices":[-15.95,-61,-34.5,-61,-34.5,-12.3,-23.55,-10.1,-8.7,6.3,-23.15,11.1,-34.15,24.45,-34.5,33.75,-32.35,46.75,-13.8,61,15.25,61,19,50.7,15.15,42.65,7.95,37.95,-2.3,38.2,-4.2,38.5,-5.5,36.9,11.5,34.7,27.95,28.55,34.5,18.9,34.5,10.75,34.5,-2.65,29.2,-19.25,13.95,-39.15,-9.3,-58.15],"path":"猫01/右手","triangles":[22,4,21,17,18,20,4,17,20,21,4,20,18,19,20,23,4,22,3,4,23,12,10,11,4,16,17,13,14,10,14,9,10,13,10,12,15,9,14,24,3,23,1,3,0,0,3,24,5,6,16,8,9,16,4,5,16,16,9,15,6,7,16,7,8,16,1,2,3],"edges":[0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,14,14,15,15,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,0]}]},{"name":"右眼","display":[{"name":"猫01/右眼","transform":{"x":1.7338,"skY":103.3513,"y":5.0365,"skX":103.3513},"type":"image","path":"猫01/右眼"}]},{"name":"右眉毛","display":[{"name":"猫01/右眉毛","transform":{"x":8.65,"y":-0.05},"type":"image","path":"猫01/右眉毛"}]},{"name":"左腿","display":[{"name":"猫01/左腿","transform":{"x":16.201,"skY":-91.0238,"y":2.711,"skX":-91.0238},"type":"image","path":"猫01/左腿"}]},{"name":"嘴","display":[{"name":"猫01/嘴","transform":{"x":2.7,"y":0.4},"type":"image","path":"猫01/嘴"}]},{"name":"右耳","display":[{"name":"猫01/右耳","transform":{"x":24.8427,"skY":78.1755,"y":-7.2444,"skX":78.1755},"type":"image","path":"猫01/右耳"}]},{"name":"帽子","display":[{"name":"猫01/帽子","transform":{"x":12.1614,"skY":20.7126,"y":6.1486,"skX":20.7126},"type":"image","path":"猫01/帽子"}]},{"name":"右手伸直","display":[{"name":"猫01伸/右手伸直","transform":{"x":-6.0558,"skY":-52.1105,"y":-53.1162,"skX":-52.1105},"type":"image","path":"猫01伸/右手伸直"}]}]}],"animation":[{"name":"begin","frame":[],"bone":[{"name":"root","rotateFrame":[{"duration":48,"tweenEasing":0},{"duration":48,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"bone","rotateFrame":[{"duration":48,"tweenEasing":0},{"duration":48,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"领带","rotateFrame":[{"duration":24,"tweenEasing":0},{"duration":24,"rotate":1.7096,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":1.7096,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":24},{"tweenEasing":0,"y":-2.769,"duration":24},{"tweenEasing":0,"duration":24},{"tweenEasing":0,"y":-2.769,"duration":24},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"左腿","rotateFrame":[{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-1.656,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-1.656,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":24},{"tweenEasing":0,"x":-2.7551,"y":0.2771,"duration":24},{"tweenEasing":0,"duration":24},{"tweenEasing":0,"x":-2.7551,"y":0.2771,"duration":24},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"右腿","rotateFrame":[{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-1.656,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-1.656,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":24},{"tweenEasing":0,"x":-2.7551,"y":0.2771,"duration":24},{"tweenEasing":0,"duration":24},{"tweenEasing":0,"x":-2.7551,"y":0.2771,"duration":24},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"bone1","rotateFrame":[{"duration":24,"tweenEasing":0},{"duration":24,"rotate":10.0266,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":10.0266,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":24},{"tweenEasing":0,"x":-1.298,"y":-9.9228,"duration":24},{"tweenEasing":0,"duration":24},{"tweenEasing":0,"x":-1.298,"y":-9.9228,"duration":24},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"领带1","rotateFrame":[{"duration":12,"tweenEasing":0},{"duration":12,"rotate":-6.0264,"tweenEasing":0},{"duration":12,"rotate":-7.2656,"tweenEasing":0},{"duration":12,"rotate":-1.7867,"tweenEasing":0},{"duration":12,"tweenEasing":0},{"duration":12,"rotate":-6.0264,"tweenEasing":0},{"duration":12,"rotate":-7.2656,"tweenEasing":0},{"duration":12,"rotate":-1.7867,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"尾巴","rotateFrame":[{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-12.8988,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-12.8988,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"左手","rotateFrame":[{"duration":24,"tweenEasing":0},{"duration":24,"rotate":27.8631,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":27.8631,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"右手","rotateFrame":[{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-3.1516,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-3.1516,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"眼镜","rotateFrame":[{"duration":48,"tweenEasing":0},{"duration":48,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"帽子","rotateFrame":[{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-3.153,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-3.153,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"鼻子","rotateFrame":[{"duration":48,"tweenEasing":0},{"duration":48,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"左眉毛","rotateFrame":[{"duration":48,"tweenEasing":0},{"duration":48,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"左眼","rotateFrame":[{"duration":48,"tweenEasing":0},{"duration":48,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":6},{"tweenEasing":0,"x":0.2,"duration":6},{"tweenEasing":0,"duration":36},{"tweenEasing":0,"duration":6},{"tweenEasing":0,"x":0.2,"duration":6},{"tweenEasing":0,"duration":36},{"duration":0}]},{"name":"领带2","rotateFrame":[{"duration":12,"tweenEasing":0},{"duration":12,"rotate":4.3629,"tweenEasing":0},{"duration":12,"rotate":-7.231,"tweenEasing":0},{"duration":12,"rotate":-16.1684,"tweenEasing":0},{"duration":12,"tweenEasing":0},{"duration":12,"rotate":4.3629,"tweenEasing":0},{"duration":12,"rotate":-7.231,"tweenEasing":0},{"duration":12,"rotate":-16.1684,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"右眼","rotateFrame":[{"duration":12,"tweenEasing":0},{"duration":36,"tweenEasing":0},{"duration":12,"tweenEasing":0},{"duration":36,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":6},{"tweenEasing":0,"x":0.2,"duration":6},{"tweenEasing":0,"duration":36},{"tweenEasing":0,"duration":6},{"tweenEasing":0,"x":0.2,"duration":6},{"tweenEasing":0,"duration":36},{"duration":0}]},{"name":"尾巴1","rotateFrame":[{"duration":24,"tweenEasing":0},{"duration":24,"rotate":7.109,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":7.109,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"右眉毛","rotateFrame":[{"duration":48,"tweenEasing":0},{"duration":48,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"左手1","rotateFrame":[{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-20.969,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-20.969,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"嘴","rotateFrame":[{"duration":48,"tweenEasing":0},{"duration":48,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":6},{"tweenEasing":0,"y":0.2,"duration":6},{"tweenEasing":0,"duration":6},{"tweenEasing":0,"y":0.2,"duration":6},{"tweenEasing":0,"duration":6},{"tweenEasing":0,"y":0.2,"duration":6},{"tweenEasing":0,"duration":6},{"tweenEasing":0,"y":0.2,"duration":6},{"tweenEasing":0,"duration":6},{"tweenEasing":0,"y":0.2,"duration":6},{"tweenEasing":0,"duration":6},{"tweenEasing":0,"y":0.2,"duration":6},{"tweenEasing":0,"duration":6},{"tweenEasing":0,"y":0.2,"duration":6},{"tweenEasing":0,"duration":6},{"tweenEasing":0,"y":0.2,"duration":6},{"duration":0}]},{"name":"右手1","rotateFrame":[{"duration":24,"tweenEasing":0},{"duration":24,"rotate":2.3286,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":2.3286,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"左耳","rotateFrame":[{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-13.8027,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-13.8027,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"右耳","rotateFrame":[{"duration":24,"tweenEasing":0},{"duration":24,"rotate":25.9315,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":25.9315,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"左手2","rotateFrame":[{"duration":24,"tweenEasing":0},{"duration":24,"rotate":6.5829,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":6.5829,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"胡子1","rotateFrame":[{"duration":48,"tweenEasing":0},{"duration":48,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"尾巴2","rotateFrame":[{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-6.2263,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-6.2263,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":24},{"tweenEasing":0,"duration":24},{"tweenEasing":0,"duration":24},{"tweenEasing":0,"duration":24},{"duration":0}]},{"name":"胡子","rotateFrame":[{"duration":48,"tweenEasing":0},{"duration":48,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"右手2","rotateFrame":[{"duration":24,"tweenEasing":0},{"duration":24,"rotate":8.6942,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":8.6942,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"bone2","rotateFrame":[{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-12.1888,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-12.1888,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]}],"playTimes":0,"ffd":[],"ik":[],"slot":[{"name":"尾巴","displayFrame":[],"colorFrame":[]},{"name":"右腿","displayFrame":[],"colorFrame":[]},{"name":"左腿","displayFrame":[],"colorFrame":[]},{"name":"右手","displayFrame":[],"colorFrame":[]},{"name":"左手","displayFrame":[],"colorFrame":[]},{"name":"领带","displayFrame":[],"colorFrame":[]},{"name":"右耳","displayFrame":[],"colorFrame":[]},{"name":"左耳","displayFrame":[],"colorFrame":[]},{"name":"组_1","displayFrame":[],"colorFrame":[]},{"name":"右眼","displayFrame":[],"colorFrame":[]},{"name":"右眉毛","displayFrame":[],"colorFrame":[]},{"name":"左眼","displayFrame":[],"colorFrame":[]},{"name":"左眉毛","displayFrame":[],"colorFrame":[]},{"name":"眼镜","displayFrame":[],"colorFrame":[]},{"name":"胡子","displayFrame":[],"colorFrame":[]},{"name":"鼻子","displayFrame":[],"colorFrame":[]},{"name":"嘴","displayFrame":[],"colorFrame":[]},{"name":"帽子","displayFrame":[],"colorFrame":[]},{"name":"影子","displayFrame":[],"colorFrame":[]},{"name":"身体","displayFrame":[],"colorFrame":[]},{"name":"左手伸直","displayFrame":[{"duration":96,"value":-1}],"colorFrame":[]},{"name":"右手伸直","displayFrame":[{"duration":96,"value":-1}],"colorFrame":[]}],"duration":96},{"name":"right","frame":[],"bone":[{"name":"root","rotateFrame":[{"duration":40,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":40},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":40},{"duration":0}]},{"name":"bone","rotateFrame":[{"duration":40,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":40},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":40},{"duration":0}]},{"name":"领带","rotateFrame":[{"duration":20,"tweenEasing":0},{"duration":20,"rotate":-4.3907,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":20},{"tweenEasing":0,"y":-7.3176,"duration":20},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":40},{"duration":0}]},{"name":"左腿","rotateFrame":[{"duration":20,"tweenEasing":0},{"duration":20,"rotate":5.635,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":20},{"tweenEasing":0,"x":-5.3204,"y":0.1256,"duration":20},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":40},{"duration":0}]},{"name":"右腿","rotateFrame":[{"duration":20,"tweenEasing":0},{"duration":20,"rotate":5.635,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":20},{"tweenEasing":0,"x":-8.6457,"y":0.2041,"duration":20},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":40},{"duration":0}]},{"name":"bone1","rotateFrame":[{"duration":20,"tweenEasing":0},{"duration":20,"rotate":10.6931,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":20},{"tweenEasing":0,"x":2.133,"y":-0.0504,"duration":20},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":40},{"duration":0}]},{"name":"领带1","rotateFrame":[{"duration":20,"tweenEasing":0},{"duration":20,"rotate":13.0682,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":40},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":40},{"duration":0}]},{"name":"尾巴","rotateFrame":[{"duration":20,"tweenEasing":0},{"duration":20,"rotate":-19.1744,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":40},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":40},{"duration":0}]},{"name":"左手","rotateFrame":[{"duration":20,"tweenEasing":0},{"duration":20,"rotate":-7.5433,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":40},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":40},{"duration":0}]},{"name":"右手","rotateFrame":[{"duration":20,"tweenEasing":0},{"duration":20,"rotate":25.5925,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":40},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":40},{"duration":0}]},{"name":"眼镜","rotateFrame":[{"duration":40,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":5},{"tweenEasing":0,"x":10.1211,"y":2.1099,"duration":5},{"tweenEasing":0,"duration":30},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":40},{"duration":0}]},{"name":"帽子","rotateFrame":[{"duration":40,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":10},{"tweenEasing":0,"x":13.1211,"y":2.3609,"duration":10},{"tweenEasing":0,"x":-4.4837,"y":-0.0621,"duration":10},{"tweenEasing":0,"x":5.8327,"y":1.4218,"duration":10},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":40},{"duration":0}]},{"name":"鼻子","rotateFrame":[{"duration":40,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":40},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":40},{"duration":0}]},{"name":"左眉毛","rotateFrame":[{"duration":40,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":5},{"tweenEasing":0,"x":5.3923,"y":1.1241,"duration":5},{"tweenEasing":0,"x":-2.6063,"y":-0.337,"duration":30},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":40},{"duration":0}]},{"name":"左眼","rotateFrame":[{"duration":40,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":40},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":10},{"tweenEasing":0,"x":1.2,"y":1.2,"duration":10},{"tweenEasing":0,"x":1.2,"y":1.2,"duration":10},{"tweenEasing":0,"x":1.2,"y":1.2,"duration":10},{"duration":0}]},{"name":"领带2","rotateFrame":[{"duration":10,"tweenEasing":0},{"duration":10,"rotate":-6.3333,"tweenEasing":0},{"duration":10,"rotate":7.1423,"tweenEasing":0},{"duration":10,"rotate":10.2162,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":40},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":40},{"duration":0}]},{"name":"右眼","rotateFrame":[{"duration":40,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":40},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":10},{"tweenEasing":0,"x":1.2,"y":1.2,"duration":10},{"tweenEasing":0,"x":1.2,"y":1.2,"duration":10},{"tweenEasing":0,"x":1.2,"y":1.2,"duration":10},{"duration":0}]},{"name":"尾巴1","rotateFrame":[{"duration":20,"tweenEasing":0},{"duration":20,"rotate":-26.3138,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":40},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":40},{"duration":0}]},{"name":"右眉毛","rotateFrame":[{"duration":40,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":5},{"tweenEasing":0,"x":5.3923,"y":1.1241,"duration":5},{"tweenEasing":0,"x":-2.6063,"y":-0.337,"duration":30},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":40},{"duration":0}]},{"name":"左手1","rotateFrame":[{"duration":10,"tweenEasing":0},{"duration":10,"rotate":-49.9219,"tweenEasing":0},{"duration":20,"rotate":-39.9594,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":40},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":40},{"duration":0}]},{"name":"嘴","rotateFrame":[{"duration":40,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":40},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":5},{"tweenEasing":0,"y":1.2,"duration":5},{"tweenEasing":0,"y":0.2,"duration":5},{"tweenEasing":0,"y":1.2,"duration":5},{"tweenEasing":0,"y":0.2,"duration":7},{"tweenEasing":0,"y":1.2,"duration":7},{"tweenEasing":0,"y":0.2,"duration":6},{"duration":0}]},{"name":"右手1","rotateFrame":[{"duration":10,"tweenEasing":0},{"duration":30,"rotate":-64.9909,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":40},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":40},{"duration":0}]},{"name":"左耳","rotateFrame":[{"duration":10,"tweenEasing":0},{"duration":10,"rotate":-14.1404,"tweenEasing":0},{"duration":10,"rotate":-5.0194,"tweenEasing":0},{"duration":10,"rotate":-17.9662,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":40},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":40},{"duration":0}]},{"name":"右耳","rotateFrame":[{"duration":10,"tweenEasing":0},{"duration":10,"rotate":16.8101,"tweenEasing":0},{"duration":10,"rotate":5.1383,"tweenEasing":0},{"duration":10,"rotate":20.1338,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":40},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":40},{"duration":0}]},{"name":"左手2","rotateFrame":[{"duration":10,"tweenEasing":0},{"duration":10,"rotate":43.9461,"tweenEasing":0},{"duration":20,"rotate":22.7134,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":40},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":40},{"duration":0}]},{"name":"胡子1","rotateFrame":[{"duration":10,"tweenEasing":0},{"duration":10,"rotate":-19.9919,"tweenEasing":0},{"duration":20,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":40},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":40},{"duration":0}]},{"name":"尾巴2","rotateFrame":[{"duration":20,"tweenEasing":0},{"duration":20,"rotate":16.3186,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":40},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":40},{"duration":0}]},{"name":"胡子","rotateFrame":[{"duration":10,"tweenEasing":0},{"duration":10,"rotate":24.2661,"tweenEasing":0},{"duration":20,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":40},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":40},{"duration":0}]},{"name":"右手2","rotateFrame":[{"duration":40,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":40},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":40},{"duration":0}]},{"name":"bone2","rotateFrame":[{"duration":20,"tweenEasing":0},{"duration":20,"rotate":17.0811,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":40},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":40},{"duration":0}]}],"playTimes":0,"ffd":[],"ik":[],"slot":[{"name":"尾巴","displayFrame":[],"colorFrame":[]},{"name":"右腿","displayFrame":[],"colorFrame":[]},{"name":"左腿","displayFrame":[],"colorFrame":[]},{"name":"右手","displayFrame":[{"duration":40,"value":-1}],"colorFrame":[]},{"name":"左手","displayFrame":[{"duration":40,"value":-1}],"colorFrame":[]},{"name":"领带","displayFrame":[],"colorFrame":[]},{"name":"右耳","displayFrame":[],"colorFrame":[]},{"name":"左耳","displayFrame":[],"colorFrame":[]},{"name":"组_1","displayFrame":[],"colorFrame":[]},{"name":"右眼","displayFrame":[],"colorFrame":[]},{"name":"右眉毛","displayFrame":[],"colorFrame":[]},{"name":"左眼","displayFrame":[],"colorFrame":[]},{"name":"左眉毛","displayFrame":[],"colorFrame":[]},{"name":"眼镜","displayFrame":[],"colorFrame":[]},{"name":"胡子","displayFrame":[],"colorFrame":[]},{"name":"鼻子","displayFrame":[],"colorFrame":[]},{"name":"嘴","displayFrame":[],"colorFrame":[]},{"name":"帽子","displayFrame":[],"colorFrame":[]},{"name":"影子","displayFrame":[],"colorFrame":[]},{"name":"身体","displayFrame":[],"colorFrame":[]},{"name":"左手伸直","displayFrame":[{"duration":40}],"colorFrame":[]},{"name":"右手伸直","displayFrame":[],"colorFrame":[]}],"duration":40},{"name":"normal","frame":[],"bone":[{"name":"root","rotateFrame":[{"duration":36,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":36},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":36},{"duration":0}]},{"name":"bone","rotateFrame":[{"duration":36,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":36},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":36},{"duration":0}]},{"name":"领带","rotateFrame":[{"duration":36,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":18},{"tweenEasing":0,"y":-2.0329,"duration":18},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":36},{"duration":0}]},{"name":"左腿","rotateFrame":[{"duration":36,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":18},{"tweenEasing":0,"x":-3.3712,"y":0.3391,"duration":18},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":36},{"duration":0}]},{"name":"右腿","rotateFrame":[{"duration":36,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":18},{"tweenEasing":0,"x":-3.3712,"y":0.3391,"duration":18},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":36},{"duration":0}]},{"name":"bone1","rotateFrame":[{"duration":18,"tweenEasing":0},{"duration":18,"rotate":5.0458,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":36},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":36},{"duration":0}]},{"name":"领带1","rotateFrame":[{"duration":18,"tweenEasing":0},{"duration":18,"rotate":4.4081,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":36},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":36},{"duration":0}]},{"name":"尾巴","rotateFrame":[{"duration":18,"tweenEasing":0},{"duration":18,"rotate":-9.2734,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":36},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":36},{"duration":0}]},{"name":"左手","rotateFrame":[{"duration":18,"tweenEasing":0},{"duration":18,"rotate":-3.9571,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":36},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":36},{"duration":0}]},{"name":"右手","rotateFrame":[{"duration":18,"tweenEasing":0},{"duration":18,"rotate":-4.1269,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":36},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":36},{"duration":0}]},{"name":"眼镜","rotateFrame":[{"duration":36,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":36},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":36},{"duration":0}]},{"name":"帽子","rotateFrame":[{"duration":36,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":36},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":36},{"duration":0}]},{"name":"鼻子","rotateFrame":[{"duration":36,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":36},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":36},{"duration":0}]},{"name":"左眉毛","rotateFrame":[{"duration":36,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":36},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":36},{"duration":0}]},{"name":"左眼","rotateFrame":[{"duration":36,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":36},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":9},{"tweenEasing":0,"x":0.2,"duration":9},{"tweenEasing":0,"duration":18},{"duration":0}]},{"name":"领带2","rotateFrame":[{"duration":18,"tweenEasing":0},{"duration":18,"rotate":6.5924,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":36},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":36},{"duration":0}]},{"name":"右眼","rotateFrame":[{"duration":18,"tweenEasing":0},{"duration":18,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":36},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":9},{"tweenEasing":0,"x":0.2,"duration":9},{"tweenEasing":0,"duration":18},{"duration":0}]},{"name":"尾巴1","rotateFrame":[{"duration":18,"tweenEasing":0},{"duration":18,"rotate":5.0456,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":36},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":36},{"duration":0}]},{"name":"右眉毛","rotateFrame":[{"duration":36,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":36},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":36},{"duration":0}]},{"name":"左手1","rotateFrame":[{"duration":36,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":36},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":36},{"duration":0}]},{"name":"嘴","rotateFrame":[{"duration":36,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":36},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":36},{"duration":0}]},{"name":"右手1","rotateFrame":[{"duration":18,"tweenEasing":0},{"duration":18,"rotate":-0.5975,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":36},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":36},{"duration":0}]},{"name":"左耳","rotateFrame":[{"duration":18,"tweenEasing":0},{"duration":18,"rotate":-5.8134,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":36},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":36},{"duration":0}]},{"name":"右耳","rotateFrame":[{"duration":18,"tweenEasing":0},{"duration":18,"rotate":5.67,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":36},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":36},{"duration":0}]},{"name":"左手2","rotateFrame":[{"duration":36,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":36},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":36},{"duration":0}]},{"name":"胡子1","rotateFrame":[{"duration":18,"tweenEasing":0},{"duration":18,"rotate":-4.6385,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":36},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":36},{"duration":0}]},{"name":"尾巴2","rotateFrame":[{"duration":18,"tweenEasing":0},{"duration":18,"rotate":-4.7872,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":36},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":36},{"duration":0}]},{"name":"胡子","rotateFrame":[{"duration":18,"tweenEasing":0},{"duration":18,"rotate":3.4123,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":36},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":36},{"duration":0}]},{"name":"右手2","rotateFrame":[{"duration":18,"tweenEasing":0},{"duration":18,"rotate":7.7593,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":36},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":36},{"duration":0}]},{"name":"bone2","rotateFrame":[{"duration":18,"tweenEasing":0},{"duration":18,"rotate":-4.5584,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":36},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":36},{"duration":0}]}],"playTimes":0,"ffd":[],"ik":[],"slot":[{"name":"尾巴","displayFrame":[],"colorFrame":[]},{"name":"右腿","displayFrame":[],"colorFrame":[]},{"name":"左腿","displayFrame":[],"colorFrame":[]},{"name":"右手","displayFrame":[],"colorFrame":[]},{"name":"左手","displayFrame":[],"colorFrame":[]},{"name":"领带","displayFrame":[],"colorFrame":[]},{"name":"右耳","displayFrame":[],"colorFrame":[]},{"name":"左耳","displayFrame":[],"colorFrame":[]},{"name":"组_1","displayFrame":[],"colorFrame":[]},{"name":"右眼","displayFrame":[],"colorFrame":[]},{"name":"右眉毛","displayFrame":[],"colorFrame":[]},{"name":"左眼","displayFrame":[],"colorFrame":[]},{"name":"左眉毛","displayFrame":[],"colorFrame":[]},{"name":"眼镜","displayFrame":[],"colorFrame":[]},{"name":"胡子","displayFrame":[],"colorFrame":[]},{"name":"鼻子","displayFrame":[],"colorFrame":[]},{"name":"嘴","displayFrame":[],"colorFrame":[]},{"name":"帽子","displayFrame":[],"colorFrame":[]},{"name":"影子","displayFrame":[],"colorFrame":[]},{"name":"身体","displayFrame":[],"colorFrame":[]},{"name":"左手伸直","displayFrame":[{"duration":36,"value":-1}],"colorFrame":[]},{"name":"右手伸直","displayFrame":[{"duration":36,"value":-1}],"colorFrame":[]}],"duration":36},{"name":"wrong","frame":[],"bone":[{"name":"root","rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":32,"tweenEasing":0},{"duration":8,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}]},{"name":"bone","rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":32,"tweenEasing":0},{"duration":8,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}]},{"name":"领带","rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":32,"rotate":2.8008,"tweenEasing":0},{"duration":8,"rotate":2.8008,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}]},{"name":"左腿","rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":32,"rotate":-2.6065,"tweenEasing":0},{"duration":8,"rotate":-2.6065,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"x":-1.9782,"y":0.2972,"duration":32},{"tweenEasing":0,"x":-1.9782,"y":0.2972,"duration":8},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}]},{"name":"右腿","rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":32,"rotate":-2.6065,"tweenEasing":0},{"duration":8,"rotate":-2.6065,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"x":1.9782,"y":-0.2972,"duration":32},{"tweenEasing":0,"x":1.9782,"y":-0.2972,"duration":8},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}]},{"name":"bone1","rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":16,"rotate":4.3759,"tweenEasing":0},{"duration":16,"rotate":-0.9493,"tweenEasing":0},{"duration":8,"rotate":4.3759,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}]},{"name":"领带1","rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":16,"tweenEasing":0},{"duration":16,"rotate":-8.3373,"tweenEasing":0},{"duration":8,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}]},{"name":"尾巴","rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":16,"tweenEasing":0},{"duration":16,"rotate":-17.9294,"tweenEasing":0},{"duration":8,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}]},{"name":"左手","rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":7,"rotate":8.1159,"tweenEasing":0},{"duration":18,"rotate":17.0262,"tweenEasing":0},{"duration":7,"rotate":17.7957,"tweenEasing":0},{"duration":8,"rotate":8.1159,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}]},{"name":"右手","rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":32,"tweenEasing":0},{"duration":8,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}]},{"name":"眼镜","rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":32,"tweenEasing":0},{"duration":8,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}]},{"name":"帽子","rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":32,"tweenEasing":0},{"duration":8,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}]},{"name":"鼻子","rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":32,"tweenEasing":0},{"duration":8,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}]},{"name":"左眉毛","rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":32,"tweenEasing":0},{"duration":8,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}]},{"name":"左眼","rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":32,"tweenEasing":0},{"duration":8,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}]},{"name":"领带2","rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":16,"tweenEasing":0},{"duration":16,"rotate":-7.4285,"tweenEasing":0},{"duration":8,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}]},{"name":"右眼","rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":32,"tweenEasing":0},{"duration":8,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}]},{"name":"尾巴1","rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":32,"tweenEasing":0},{"duration":8,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}]},{"name":"右眉毛","rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":32,"tweenEasing":0},{"duration":8,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}]},{"name":"左手1","rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":7,"rotate":-27.0428,"tweenEasing":0},{"duration":18,"rotate":-42.1864,"tweenEasing":0},{"duration":7,"rotate":-44.7675,"tweenEasing":0},{"duration":8,"rotate":-27.0428,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}]},{"name":"嘴","rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":32,"tweenEasing":0},{"duration":8,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":6},{"tweenEasing":0,"y":0.2,"duration":2},{"tweenEasing":0,"y":0.4667,"duration":4},{"tweenEasing":0,"duration":6},{"tweenEasing":0,"y":0.2,"duration":6},{"tweenEasing":0,"duration":6},{"tweenEasing":0,"y":0.2,"duration":6},{"tweenEasing":0,"duration":4},{"tweenEasing":0,"y":0.4667,"duration":2},{"tweenEasing":0,"y":0.2,"duration":6},{"duration":0}]},{"name":"右手1","rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":32,"tweenEasing":0},{"duration":8,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}]},{"name":"左耳","rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":16,"rotate":-34.0903,"tweenEasing":0},{"duration":16,"rotate":-15.4811,"tweenEasing":0},{"duration":8,"rotate":-25.9899,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}]},{"name":"右耳","rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":16,"rotate":31.1127,"tweenEasing":0},{"duration":16,"rotate":9.0714,"tweenEasing":0},{"duration":8,"rotate":28.4615,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}]},{"name":"左手2","rotateFrame":[{"duration":6,"tweenEasing":0},{"duration":2,"rotate":21.1976,"tweenEasing":0},{"duration":7,"rotate":26.0029,"tweenEasing":0},{"duration":9,"rotate":96.3651,"tweenEasing":0},{"duration":9,"rotate":34.0843,"tweenEasing":0},{"duration":7,"rotate":98.4071,"tweenEasing":0},{"duration":8,"rotate":26.0029,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}]},{"name":"胡子1","rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":32,"tweenEasing":0},{"duration":8,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}]},{"name":"尾巴2","rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":32,"tweenEasing":0},{"duration":8,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}]},{"name":"胡子","rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":32,"tweenEasing":0},{"duration":8,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}]},{"name":"右手2","rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":32,"tweenEasing":0},{"duration":8,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}]},{"name":"bone2","rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":32,"tweenEasing":0},{"duration":8,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"duration":32},{"tweenEasing":0,"duration":8},{"duration":0}]}],"playTimes":0,"ffd":[],"ik":[],"slot":[{"name":"尾巴","displayFrame":[],"colorFrame":[]},{"name":"右腿","displayFrame":[],"colorFrame":[]},{"name":"左腿","displayFrame":[],"colorFrame":[]},{"name":"右手","displayFrame":[],"colorFrame":[]},{"name":"左手","displayFrame":[],"colorFrame":[]},{"name":"领带","displayFrame":[],"colorFrame":[]},{"name":"右耳","displayFrame":[],"colorFrame":[]},{"name":"左耳","displayFrame":[],"colorFrame":[]},{"name":"组_1","displayFrame":[],"colorFrame":[]},{"name":"右眼","displayFrame":[],"colorFrame":[]},{"name":"右眉毛","displayFrame":[],"colorFrame":[]},{"name":"左眼","displayFrame":[],"colorFrame":[]},{"name":"左眉毛","displayFrame":[],"colorFrame":[]},{"name":"眼镜","displayFrame":[],"colorFrame":[]},{"name":"胡子","displayFrame":[],"colorFrame":[]},{"name":"鼻子","displayFrame":[],"colorFrame":[]},{"name":"嘴","displayFrame":[],"colorFrame":[]},{"name":"帽子","displayFrame":[],"colorFrame":[]},{"name":"影子","displayFrame":[],"colorFrame":[]},{"name":"身体","displayFrame":[],"colorFrame":[]},{"name":"左手伸直","displayFrame":[{"duration":48,"value":-1}],"colorFrame":[]},{"name":"右手伸直","displayFrame":[{"duration":48,"value":-1}],"colorFrame":[]}],"duration":48},{"name":"finish","frame":[],"bone":[{"name":"root","rotateFrame":[{"duration":50,"tweenEasing":0},{"duration":10,"tweenEasing":0},{"duration":48,"tweenEasing":0},{"duration":48,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"bone","rotateFrame":[{"duration":50,"tweenEasing":0},{"duration":10,"tweenEasing":0},{"duration":48,"tweenEasing":0},{"duration":48,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"领带","rotateFrame":[{"duration":26,"tweenEasing":0},{"duration":24,"rotate":-3.8619,"tweenEasing":0},{"duration":10,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":1.7096,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":1.7096,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":26},{"tweenEasing":0,"y":-7.6181,"duration":24},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":24},{"tweenEasing":0,"y":-2.769,"duration":24},{"tweenEasing":0,"duration":24},{"tweenEasing":0,"y":-2.769,"duration":24},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"左腿","rotateFrame":[{"duration":26,"tweenEasing":0},{"duration":24,"rotate":6.305,"tweenEasing":0},{"duration":10,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-1.656,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-1.656,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":26},{"tweenEasing":0,"x":-5.4386,"y":0.1786,"duration":24},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":24},{"tweenEasing":0,"x":-2.7551,"y":0.2771,"duration":24},{"tweenEasing":0,"duration":24},{"tweenEasing":0,"x":-2.7551,"y":0.2771,"duration":24},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"右腿","rotateFrame":[{"duration":26,"tweenEasing":0},{"duration":24,"rotate":6.305,"tweenEasing":0},{"duration":10,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-1.656,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-1.656,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":26},{"tweenEasing":0,"x":-6.7031,"y":-5.1693,"duration":24},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":24},{"tweenEasing":0,"x":-2.7551,"y":0.2771,"duration":24},{"tweenEasing":0,"duration":24},{"tweenEasing":0,"x":-2.7551,"y":0.2771,"duration":24},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"bone1","rotateFrame":[{"duration":26,"tweenEasing":0},{"duration":24,"rotate":9.5597,"tweenEasing":0},{"duration":10,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":10.0266,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":10.0266,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":24},{"tweenEasing":0,"x":-1.298,"y":-9.9228,"duration":24},{"tweenEasing":0,"duration":24},{"tweenEasing":0,"x":-1.298,"y":-9.9228,"duration":24},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"领带1","rotateFrame":[{"duration":26,"tweenEasing":0},{"duration":24,"rotate":17.3385,"tweenEasing":0},{"duration":10,"tweenEasing":0},{"duration":12,"tweenEasing":0},{"duration":12,"rotate":-6.0264,"tweenEasing":0},{"duration":12,"rotate":-7.2656,"tweenEasing":0},{"duration":12,"rotate":-1.7867,"tweenEasing":0},{"duration":12,"tweenEasing":0},{"duration":12,"rotate":-6.0264,"tweenEasing":0},{"duration":12,"rotate":-7.2656,"tweenEasing":0},{"duration":12,"rotate":-1.7867,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"尾巴","rotateFrame":[{"duration":26,"tweenEasing":0},{"duration":24,"rotate":-19.1782,"tweenEasing":0},{"duration":10,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-12.8988,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-12.8988,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"左手","rotateFrame":[{"duration":26,"tweenEasing":0},{"duration":24,"rotate":-12.0712,"tweenEasing":0},{"duration":25,"tweenEasing":0},{"duration":24,"rotate":27.8631,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":27.8631,"tweenEasing":0},{"duration":9}],"translateFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":49},{"tweenEasing":0,"duration":48},{"duration":9}],"scaleFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":49},{"tweenEasing":0,"duration":48},{"duration":9}]},{"name":"右手","rotateFrame":[{"duration":26,"tweenEasing":0},{"duration":22,"rotate":18.0014,"tweenEasing":0},{"duration":10,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-3.1516,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-3.1516,"tweenEasing":0},{"duration":2}],"translateFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":2}],"scaleFrame":[{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":2}]},{"name":"眼镜","rotateFrame":[{"duration":14,"tweenEasing":0},{"duration":36,"tweenEasing":0},{"duration":10,"tweenEasing":0},{"duration":48,"tweenEasing":0},{"duration":48,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":14},{"tweenEasing":0,"duration":6},{"tweenEasing":0,"x":13.048,"y":-0.5502,"duration":6},{"tweenEasing":0,"x":0.692,"y":0.5317,"duration":24},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":14},{"tweenEasing":0,"duration":36},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"帽子","rotateFrame":[{"duration":50,"tweenEasing":0},{"duration":10,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-3.153,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-3.153,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"x":7.457,"y":1.5583,"duration":6},{"tweenEasing":0,"x":-6.6664,"y":1.1384,"duration":36},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"鼻子","rotateFrame":[{"duration":50,"tweenEasing":0},{"duration":10,"tweenEasing":0},{"duration":48,"tweenEasing":0},{"duration":48,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"左眉毛","rotateFrame":[{"duration":50,"tweenEasing":0},{"duration":10,"tweenEasing":0},{"duration":48,"tweenEasing":0},{"duration":48,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"x":6.4728,"y":0.8607,"duration":42},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"左眼","rotateFrame":[{"duration":50,"tweenEasing":0},{"duration":10,"tweenEasing":0},{"duration":48,"tweenEasing":0},{"duration":48,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":6},{"tweenEasing":0,"x":0.2,"duration":4},{"tweenEasing":0,"duration":16},{"tweenEasing":0,"duration":4},{"tweenEasing":0,"x":0.2,"duration":4},{"tweenEasing":0,"duration":16},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":6},{"tweenEasing":0,"x":0.2,"duration":6},{"tweenEasing":0,"duration":36},{"tweenEasing":0,"duration":6},{"tweenEasing":0,"x":0.2,"duration":6},{"tweenEasing":0,"duration":36},{"duration":0}]},{"name":"领带2","rotateFrame":[{"duration":14,"tweenEasing":0},{"duration":20,"rotate":-13.0313,"tweenEasing":0},{"duration":16,"rotate":14.5197,"tweenEasing":0},{"duration":10,"tweenEasing":0},{"duration":12,"tweenEasing":0},{"duration":12,"rotate":4.3629,"tweenEasing":0},{"duration":12,"rotate":-7.231,"tweenEasing":0},{"duration":12,"rotate":-16.1684,"tweenEasing":0},{"duration":12,"tweenEasing":0},{"duration":12,"rotate":4.3629,"tweenEasing":0},{"duration":12,"rotate":-7.231,"tweenEasing":0},{"duration":12,"rotate":-16.1684,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"右眼","rotateFrame":[{"duration":50,"tweenEasing":0},{"duration":10,"tweenEasing":0},{"duration":12,"tweenEasing":0},{"duration":36,"tweenEasing":0},{"duration":12,"tweenEasing":0},{"duration":36,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":6},{"tweenEasing":0,"x":0.2,"duration":4},{"tweenEasing":0,"duration":16},{"tweenEasing":0,"duration":4},{"tweenEasing":0,"x":0.2,"duration":4},{"tweenEasing":0,"duration":16},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":6},{"tweenEasing":0,"x":0.2,"duration":6},{"tweenEasing":0,"duration":36},{"tweenEasing":0,"duration":6},{"tweenEasing":0,"x":0.2,"duration":6},{"tweenEasing":0,"duration":36},{"duration":0}]},{"name":"尾巴1","rotateFrame":[{"duration":26,"tweenEasing":0},{"duration":24,"rotate":6.1561,"tweenEasing":0},{"duration":10,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":7.109,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":7.109,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"右眉毛","rotateFrame":[{"duration":50,"tweenEasing":0},{"duration":10,"tweenEasing":0},{"duration":48,"tweenEasing":0},{"duration":48,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"x":6.4728,"y":0.8607,"duration":42},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"左手1","rotateFrame":[{"duration":14,"tweenEasing":0},{"duration":36,"rotate":-76.2623,"tweenEasing":0},{"duration":10,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-20.969,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-20.969,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"嘴","rotateFrame":[{"duration":50,"tweenEasing":0},{"duration":10,"tweenEasing":0},{"duration":48,"tweenEasing":0},{"duration":48,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":8},{"tweenEasing":0,"y":0.2,"duration":6},{"tweenEasing":0,"duration":6},{"tweenEasing":0,"y":0.2,"duration":6},{"tweenEasing":0,"duration":6},{"tweenEasing":0,"y":0.2,"duration":6},{"tweenEasing":0,"duration":6},{"tweenEasing":0,"y":0.2,"duration":6},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":6},{"tweenEasing":0,"y":0.2,"duration":6},{"tweenEasing":0,"duration":6},{"tweenEasing":0,"y":0.2,"duration":6},{"tweenEasing":0,"duration":6},{"tweenEasing":0,"y":0.2,"duration":6},{"tweenEasing":0,"duration":6},{"tweenEasing":0,"y":0.2,"duration":6},{"tweenEasing":0,"duration":6},{"tweenEasing":0,"y":0.2,"duration":6},{"tweenEasing":0,"duration":6},{"tweenEasing":0,"y":0.2,"duration":6},{"tweenEasing":0,"duration":6},{"tweenEasing":0,"y":0.2,"duration":6},{"tweenEasing":0,"duration":6},{"tweenEasing":0,"y":0.2,"duration":6},{"duration":0}]},{"name":"右手1","rotateFrame":[{"duration":14,"tweenEasing":0},{"duration":12,"rotate":-106.3868,"tweenEasing":0},{"duration":24,"rotate":-26.2264,"tweenEasing":0},{"duration":10,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":2.3286,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":2.3286,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"左耳","rotateFrame":[{"duration":14,"tweenEasing":0},{"duration":12,"rotate":-14.9384,"tweenEasing":0},{"duration":12,"rotate":5.3691,"tweenEasing":0},{"duration":12,"rotate":-13.3337,"tweenEasing":0},{"duration":10,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-13.8027,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-13.8027,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"右耳","rotateFrame":[{"duration":14,"tweenEasing":0},{"duration":12,"rotate":14.6986,"tweenEasing":0},{"duration":12,"rotate":4.7716,"tweenEasing":0},{"duration":12,"rotate":12.1816,"tweenEasing":0},{"duration":10,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":25.9315,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":25.9315,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"左手2","rotateFrame":[{"duration":14,"tweenEasing":0},{"duration":12,"rotate":35.243,"tweenEasing":0},{"duration":24,"rotate":30.1214,"tweenEasing":0},{"duration":10,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":6.5829,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":6.5829,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"胡子1","rotateFrame":[{"duration":14,"tweenEasing":0},{"duration":6,"rotate":4.4556,"tweenEasing":0},{"duration":6,"rotate":-19.7558,"tweenEasing":0},{"duration":8,"rotate":10.9587,"tweenEasing":0},{"duration":8,"rotate":-11.7808,"tweenEasing":0},{"duration":8,"rotate":17.3524,"tweenEasing":0},{"duration":10,"tweenEasing":0},{"duration":48,"tweenEasing":0},{"duration":48,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"尾巴2","rotateFrame":[{"duration":26,"tweenEasing":0},{"duration":24,"rotate":-18.3593,"tweenEasing":0},{"duration":10,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-6.2263,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-6.2263,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":24},{"tweenEasing":0,"duration":24},{"tweenEasing":0,"duration":24},{"tweenEasing":0,"duration":24},{"duration":0}]},{"name":"胡子","rotateFrame":[{"duration":14,"tweenEasing":0},{"duration":6,"rotate":-0.0026,"tweenEasing":0},{"duration":6,"rotate":13.7518,"tweenEasing":0},{"duration":8,"rotate":-4.6954,"tweenEasing":0},{"duration":8,"rotate":17.3351,"tweenEasing":0},{"duration":8,"rotate":-7.5326,"tweenEasing":0},{"duration":10,"tweenEasing":0},{"duration":48,"tweenEasing":0},{"duration":48,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"右手2","rotateFrame":[{"duration":14,"tweenEasing":0},{"duration":12,"rotate":112.3086,"tweenEasing":0},{"duration":24,"rotate":37.7087,"tweenEasing":0},{"duration":10,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":8.6942,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":8.6942,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]},{"name":"bone2","rotateFrame":[{"duration":26,"tweenEasing":0},{"duration":24,"rotate":-9.3495,"tweenEasing":0},{"duration":10,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-12.1888,"tweenEasing":0},{"duration":24,"tweenEasing":0},{"duration":24,"rotate":-12.1888,"tweenEasing":0},{"duration":0}],"translateFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}],"scaleFrame":[{"tweenEasing":0,"duration":50},{"tweenEasing":0,"duration":10},{"tweenEasing":0,"duration":48},{"tweenEasing":0,"duration":48},{"duration":0}]}],"playTimes":0,"ffd":[],"ik":[],"slot":[{"name":"尾巴","displayFrame":[],"colorFrame":[]},{"name":"右腿","displayFrame":[],"colorFrame":[]},{"name":"左腿","displayFrame":[],"colorFrame":[]},{"name":"右手","displayFrame":[{"duration":3},{"duration":2,"value":-1},{"duration":45,"value":-1},{"duration":106}],"colorFrame":[]},{"name":"左手","displayFrame":[{"duration":3},{"duration":2,"value":-1},{"duration":45,"value":-1},{"duration":106}],"colorFrame":[]},{"name":"领带","displayFrame":[],"colorFrame":[]},{"name":"右耳","displayFrame":[],"colorFrame":[]},{"name":"左耳","displayFrame":[],"colorFrame":[]},{"name":"组_1","displayFrame":[],"colorFrame":[]},{"name":"右眼","displayFrame":[],"colorFrame":[]},{"name":"右眉毛","displayFrame":[],"colorFrame":[]},{"name":"左眼","displayFrame":[],"colorFrame":[]},{"name":"左眉毛","displayFrame":[],"colorFrame":[]},{"name":"眼镜","displayFrame":[],"colorFrame":[]},{"name":"胡子","displayFrame":[],"colorFrame":[]},{"name":"鼻子","displayFrame":[],"colorFrame":[]},{"name":"嘴","displayFrame":[],"colorFrame":[]},{"name":"帽子","displayFrame":[],"colorFrame":[]},{"name":"影子","displayFrame":[],"colorFrame":[]},{"name":"身体","displayFrame":[],"colorFrame":[]},{"name":"左手伸直","displayFrame":[{"duration":3,"value":-1},{"duration":2},{"duration":45},{"duration":106,"value":-1}],"colorFrame":[]},{"name":"右手伸直","displayFrame":[{"duration":3,"value":-1},{"duration":2},{"duration":45},{"duration":8,"value":-1},{"duration":98,"value":-1}],"colorFrame":[]}],"duration":156}],"bone":[{"name":"root","transform":{}},{"name":"bone","transform":{"x":891.9191,"y":616.1693},"length":160,"parent":"root"},{"name":"领带","transform":{"x":0.6,"skY":-84.2569,"y":28.2,"skX":-84.2569},"length":113,"parent":"bone"},{"name":"左腿","transform":{"x":-20.0746,"skY":175.2807,"y":-25.7203,"skX":175.2807},"length":67,"parent":"领带"},{"name":"右腿","transform":{"x":-8.2206,"skY":159.7117,"y":32.1842,"skX":159.7117},"length":66,"parent":"领带"},{"name":"bone1","transform":{"x":125.7438,"skY":-19.0945,"y":19.1129,"skX":-19.0945},"length":235,"parent":"领带"},{"name":"领带1","transform":{"x":113.6488,"skY":174.2569,"y":9.7764,"skX":174.2569},"length":65,"parent":"领带"},{"name":"尾巴","transform":{"x":-17.0514,"skY":-105.4221,"y":-37.6326,"skX":-105.4221},"length":63,"parent":"领带"},{"name":"左手","transform":{"x":102.3804,"skY":-146.8359,"y":-50.8001,"skX":-146.8359},"length":50,"parent":"领带"},{"name":"右手","transform":{"x":110.3467,"skY":136.3674,"y":47.3957,"skX":136.3674},"length":69,"parent":"领带"},{"name":"鼻子","transform":{"x":59.3977,"skY":41.1099,"y":27.0986,"skX":41.1099},"length":1,"parent":"bone1"},{"name":"帽子","transform":{"x":192.6558,"skY":82.6388,"y":-5.4078,"skX":82.6388},"length":27,"parent":"bone1"},{"name":"眼镜","transform":{"x":78.9107,"skY":5.5084,"y":15.902,"skX":5.5084},"length":28,"parent":"bone1"},{"name":"左眉毛","transform":{"x":140.8962,"skY":83.9424,"y":-36.7575,"skX":83.9424},"length":10,"parent":"bone1"},{"name":"左眼","transform":{"x":96.0507,"y":-35.5301},"parent":"bone1"},{"name":"领带2","transform":{"x":65.1,"skY":1.6366,"skX":1.6366},"length":66,"parent":"领带1"},{"name":"右眼","transform":{"x":96.7167,"y":59.7489},"parent":"bone1"},{"name":"尾巴1","transform":{"x":63.0475,"skY":106.2349,"skX":106.2349},"length":63,"parent":"尾巴"},{"name":"右眉毛","transform":{"x":143.1362,"skY":103.3513,"y":60.3339,"skX":103.3513},"length":17,"parent":"bone1"},{"name":"左手1","transform":{"x":50.632,"skY":106.7395,"skX":106.7395},"length":27,"parent":"左手"},{"name":"嘴","transform":{"x":33.0885,"skY":103.3513,"y":8.4698,"skX":103.3513},"length":16,"parent":"bone1"},{"name":"右手1","transform":{"x":69.1209,"skY":97.009,"skX":97.009},"length":47,"parent":"右手"},{"name":"左耳","transform":{"x":151.1649,"skY":-24.2997,"y":-83.7051,"skX":-24.2997},"length":57,"parent":"bone1"},{"name":"右耳","transform":{"x":134.348,"skY":25.1759,"y":78.9579,"skX":25.1759},"length":64,"parent":"bone1"},{"name":"胡子","transform":{"x":-11.3223,"skY":-142.4333,"y":-14.2123,"skX":-142.4333},"length":65,"parent":"鼻子"},{"name":"胡子1","transform":{"x":10.8123,"skY":69.7025,"y":13.3506,"skX":69.7025},"length":66,"parent":"鼻子"},{"name":"尾巴2","transform":{"x":63.0624,"skY":-59.0609,"skX":-59.0609},"length":52,"parent":"尾巴1"},{"name":"左手2","transform":{"x":27.5566,"skY":-40.1087,"skX":-40.1087},"length":55,"parent":"左手1"},{"name":"右手2","transform":{"x":47.2479,"skY":-106.1572,"skX":-106.1572},"length":37,"parent":"右手1"},{"name":"bone2","transform":{"x":52.2431,"skY":-49.7262,"skX":-49.7262},"length":61,"parent":"尾巴2"}],"frameRate":24,"type":"Armature","ik":[]}],"frameRate":24,"isGlobal":0}
\ No newline at end of file
{
"ver": "1.0.1",
"uuid": "0ec7ccd1-a7be-4ed4-8964-d9f90fb9c1c9",
"subMetas": {}
}
\ No newline at end of file
{"name":"mao","imagePath":"mao_tex.png","SubTexture":[{"name":"猫01/影子","x":1,"height":66,"y":343,"width":337},{"name":"猫01/尾巴","x":1,"height":109,"y":188,"width":175},{"name":"猫01/右腿","x":178,"height":117,"y":188,"width":104},{"name":"猫01/左腿","x":1,"height":115,"y":569,"width":64},{"name":"猫01/右手","x":427,"height":122,"y":590,"width":69},{"name":"猫01/左手","x":301,"height":74,"y":590,"width":124},{"name":"猫01伸/左手伸直","x":299,"height":169,"y":1,"width":168},{"name":"猫01伸/右手伸直","x":299,"height":169,"y":172,"width":168},{"name":"猫01/身体","x":340,"height":180,"y":343,"width":122},{"name":"猫01/领带","x":1,"height":156,"y":411,"width":120},{"name":"猫01/右耳","x":155,"height":76,"y":602,"width":90},{"name":"猫01/左耳","x":67,"height":85,"y":602,"width":86},{"name":"猫01/组_1","x":1,"height":185,"y":1,"width":296},{"name":"猫01/右眼","x":1,"height":60,"y":686,"width":59},{"name":"猫01/右眉毛","x":67,"height":5,"y":595,"width":33},{"name":"猫01/左眼","x":247,"height":60,"y":666,"width":59},{"name":"猫01/左眉毛","x":247,"height":12,"y":602,"width":31},{"name":"猫01/眼镜","x":301,"height":63,"y":525,"width":170},{"name":"猫01/胡子","x":123,"height":85,"y":515,"width":176},{"name":"猫01/鼻子","x":67,"height":24,"y":569,"width":28},{"name":"猫01/嘴","x":1,"height":30,"y":299,"width":65},{"name":"猫01/帽子","x":123,"height":102,"y":411,"width":158}],"height":1024,"width":512}
\ No newline at end of file
{
"ver": "1.0.1",
"uuid": "348d2f21-e4da-4ff3-b20c-c769e12aa82c",
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "8850792d-bf55-417f-95f8-19256eda7a01",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 512,
"height": 1024,
"platformSettings": {},
"subMetas": {
"mao_tex": {
"ver": "1.0.4",
"uuid": "449b54c3-472a-4b32-9def-fa72548d6fe6",
"rawTextureUuid": "8850792d-bf55-417f-95f8-19256eda7a01",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": -7.5,
"offsetY": 138.5,
"trimX": 1,
"trimY": 1,
"width": 495,
"height": 745,
"rawWidth": 512,
"rawHeight": 1024,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{"name":"right","isGlobal":0,"version":"5.5","armature":[{"name":"Armature","ik":[],"defaultActions":[{"gotoAndPlay":"newAnimation"}],"slot":[{"name":"圆","color":{},"parent":"圆"},{"name":"星1","color":{},"z":1,"parent":"星1"},{"name":"星2","color":{},"z":2,"parent":"星2"},{"name":"星3","color":{},"z":3,"parent":"星3"},{"name":"星4","color":{},"z":4,"parent":"星4"},{"name":"星6","color":{},"z":5,"parent":"星6"},{"name":"星7","displayIndex":1,"color":{},"z":6,"parent":"星7"},{"name":"星8","color":{},"z":7,"parent":"星8"},{"name":"星9","color":{},"z":8,"parent":"星9"},{"name":"星61","color":{},"z":9,"parent":"星61"},{"name":"星31","color":{},"z":10,"parent":"星31"},{"name":"星11","color":{},"z":11,"parent":"星11"},{"name":"星71","displayIndex":1,"color":{},"z":12,"parent":"星71"},{"name":"星72","displayIndex":1,"color":{},"z":13,"parent":"星72"},{"name":"星711","displayIndex":1,"color":{},"z":14,"parent":"星711"}],"bone":[{"name":"root","transform":{}},{"name":"圆","transform":{"scX":0.1,"scY":0.1,"skX":-89.6569,"skY":-89.6569},"length":41,"parent":"root"},{"name":"星6","transform":{"x":0.1442,"y":-31.5107},"parent":"root"},{"name":"星8","transform":{"x":41.1298,"y":-39.776,"skX":135,"skY":135},"parent":"root"},{"name":"星3","transform":{"x":24.7785,"y":-4.3335},"parent":"root"},{"name":"星2","transform":{"x":24.8087,"y":-25.5917},"parent":"root"},{"name":"星4","transform":{"x":7.0488,"y":8.8215},"parent":"root"},{"name":"星7","transform":{"x":-20.4814,"y":5.3537,"skX":-135,"skY":-135},"parent":"root"},{"name":"星9","transform":{"x":-33.2434,"y":-13.9017,"skX":-45,"skY":-45},"parent":"root"},{"name":"星1","transform":{"x":-18.8442,"y":-17.612,"skX":180,"skY":180},"parent":"root"},{"name":"星61","transform":{"x":23.0639,"scX":0.7,"y":-38.5822,"scY":0.7,"skX":32.5617,"skY":32.5617},"parent":"root"},{"name":"星31","transform":{"x":3.6733,"scX":0.8,"y":-5.783,"scY":0.8,"skX":17.0044,"skY":17.0044},"parent":"root"},{"name":"星11","transform":{"x":0.7025,"y":-9.1509,"skX":-14.3406,"skY":-14.3406},"parent":"root"},{"name":"星71","transform":{"x":-2.2132,"scX":0.6,"y":16.0506,"scY":0.6,"skX":136.3452,"skY":136.3452},"parent":"root"},{"name":"星72","transform":{"x":-18.9634,"y":-7.9725,"skX":73.3148,"skY":73.3148},"parent":"root"},{"name":"星711","transform":{"x":-8.6825,"scX":0.8,"y":26.0182,"scY":0.8,"skX":-87.3096,"skY":-87.3096},"parent":"root"}],"aabb":{"x":-64,"height":128.32128078297362,"y":-72.32128078297362,"width":128},"frameRate":24,"animation":[{"name":"newAnimation","frame":[],"duration":26,"slot":[{"name":"圆","colorFrame":[{"duration":4},{"duration":8,"tweenEasing":0},{"color":{"aM":0},"duration":14}],"displayFrame":[]},{"name":"星1","colorFrame":[{"duration":4},{"duration":18,"tweenEasing":0},{"color":{"aM":0},"duration":4}],"displayFrame":[]},{"name":"星2","colorFrame":[{"duration":4},{"duration":20,"tweenEasing":0},{"color":{"aM":0},"duration":2}],"displayFrame":[]},{"name":"星3","colorFrame":[{"duration":4},{"duration":14,"tweenEasing":0},{"color":{"aM":0},"duration":8}],"displayFrame":[]},{"name":"星4","colorFrame":[{"duration":4},{"duration":22,"tweenEasing":0},{"color":{"aM":0},"duration":0}],"displayFrame":[]},{"name":"星6","colorFrame":[{"duration":4},{"duration":14,"tweenEasing":0},{"color":{"aM":0},"duration":8}],"displayFrame":[]},{"name":"星7","colorFrame":[{"duration":4},{"duration":20,"tweenEasing":0},{"color":{"aM":0},"duration":2}],"displayFrame":[]},{"name":"星8","colorFrame":[{"duration":4},{"duration":18,"tweenEasing":0},{"color":{"aM":0},"duration":4}],"displayFrame":[]},{"name":"星9","colorFrame":[{"duration":4},{"duration":16,"tweenEasing":0},{"color":{"aM":0},"duration":6}],"displayFrame":[]},{"name":"星61","colorFrame":[{"duration":7},{"duration":11,"tweenEasing":0},{"color":{"aM":0},"duration":8}],"displayFrame":[]},{"name":"星31","colorFrame":[{"duration":7},{"duration":11,"tweenEasing":0},{"color":{"aM":0},"duration":8}],"displayFrame":[]},{"name":"星11","colorFrame":[{"duration":7},{"duration":15,"tweenEasing":0},{"color":{"aM":0},"duration":4}],"displayFrame":[]},{"name":"星71","colorFrame":[{"duration":7},{"duration":17,"tweenEasing":0},{"color":{"aM":0},"duration":2}],"displayFrame":[]},{"name":"星72","colorFrame":[{"duration":7},{"duration":17,"tweenEasing":0},{"color":{"aM":0},"duration":2}],"displayFrame":[]},{"name":"星711","colorFrame":[{"duration":7},{"duration":17,"tweenEasing":0},{"color":{"aM":0},"duration":2}],"displayFrame":[]}],"bone":[{"name":"root","scaleFrame":[],"translateFrame":[],"rotateFrame":[]},{"name":"圆","scaleFrame":[{"duration":4,"tweenEasing":0},{"x":10,"duration":22,"y":10}],"translateFrame":[],"rotateFrame":[]},{"name":"星6","scaleFrame":[{"duration":4},{"duration":14,"tweenEasing":0},{"x":0.6,"duration":8,"y":0.6}],"translateFrame":[{"duration":4,"curve":[0,0,0.5,1]},{"x":38.3058,"duration":3,"tweenEasing":0,"y":-60.5579},{"x":38.3058,"duration":19,"y":-89.2535}],"rotateFrame":[{"duration":4,"curve":[0,0,0.5,1]},{"rotate":42.9161,"duration":22}]},{"name":"星8","scaleFrame":[],"translateFrame":[{"duration":4,"tweenEasing":0},{"x":65.1904,"duration":22,"y":-16.9062}],"rotateFrame":[{"duration":4,"tweenEasing":0},{"rotate":-280.7822,"duration":22}]},{"name":"星3","scaleFrame":[{"duration":4},{"duration":14,"tweenEasing":0},{"x":0.7,"duration":8,"y":0.7}],"translateFrame":[{"duration":4,"tweenEasing":0},{"x":77.9671,"duration":22,"y":38.7037}],"rotateFrame":[{"duration":4,"tweenEasing":0},{"rotate":74.0647,"duration":22}]},{"name":"星2","scaleFrame":[{"duration":4},{"duration":20,"tweenEasing":0},{"x":0.9,"duration":2,"y":0.9}],"translateFrame":[{"duration":4,"curve":[0,0,0.5,1]},{"x":73.3471,"duration":22,"y":22.5}],"rotateFrame":[{"duration":4,"curve":[0,0,0.5,1]},{"rotate":104.5284,"duration":22}]},{"name":"星4","scaleFrame":[],"translateFrame":[{"duration":4,"curve":[0,0,0.5,1]},{"x":61.4575,"duration":22,"y":98.3431}],"rotateFrame":[{"duration":4,"curve":[0,0,0.5,1]},{"rotate":-117.9757,"duration":22}]},{"name":"星7","scaleFrame":[{"duration":4},{"duration":20,"tweenEasing":0},{"x":0.6,"duration":2,"y":0.6}],"translateFrame":[{"duration":4,"tweenEasing":0},{"x":-57.0486,"duration":22,"y":81.3916}],"rotateFrame":[{"duration":4,"tweenEasing":0},{"rotate":88.876,"duration":22}]},{"name":"星9","scaleFrame":[{"duration":4},{"duration":16,"tweenEasing":0},{"x":0.9,"duration":6,"y":0.9}],"translateFrame":[{"duration":4,"curve":[0,0,0.5,1]},{"x":-71.6637,"duration":22,"y":-21.9835}],"rotateFrame":[{"rotate":45,"duration":4,"curve":[0,0,0.5,1]},{"duration":22}]},{"name":"星1","scaleFrame":[{"duration":4},{"duration":18,"tweenEasing":0},{"x":0.6,"duration":4,"y":0.6}],"translateFrame":[{"duration":4,"curve":[0,0,0.5,1]},{"x":-49.7215,"duration":22,"y":-72.3329}],"rotateFrame":[{"duration":4,"curve":[0,0,0.5,1]},{"rotate":-285.7677,"duration":22}]},{"name":"星61","scaleFrame":[{"duration":7},{"duration":11,"tweenEasing":0},{"x":0.6,"duration":8,"y":0.6}],"translateFrame":[{"duration":7,"curve":[0,0,0.5,1]},{"x":83.4688,"duration":19,"y":-84.797}],"rotateFrame":[{"duration":7,"curve":[0,0,0.5,1]},{"rotate":42.9161,"duration":19}]},{"name":"星31","scaleFrame":[{"duration":7},{"duration":11,"tweenEasing":0},{"x":0.7,"duration":8,"y":0.7}],"translateFrame":[{"duration":7,"tweenEasing":0},{"x":81.2468,"duration":19,"y":-25.1106}],"rotateFrame":[{"duration":7,"tweenEasing":0},{"rotate":74.0647,"duration":19}]},{"name":"星11","scaleFrame":[{"duration":7},{"duration":15,"tweenEasing":0},{"x":0.6,"duration":4,"y":0.6}],"translateFrame":[{"duration":7,"curve":[0,0,0.5,1]},{"x":-17.132,"duration":19,"y":-85.5193}],"rotateFrame":[{"duration":7,"curve":[0,0,0.5,1]},{"rotate":73.2489,"duration":19}]},{"name":"星71","scaleFrame":[{"duration":7},{"duration":17,"tweenEasing":0},{"x":0.6,"duration":2,"y":0.6}],"translateFrame":[{"duration":7,"tweenEasing":0},{"x":-35.332,"duration":19,"y":93.2033}],"rotateFrame":[{"duration":7,"tweenEasing":0},{"rotate":88.876,"duration":19}]},{"name":"星72","scaleFrame":[{"duration":7},{"duration":17,"tweenEasing":0},{"x":0.6,"duration":2,"y":0.6}],"translateFrame":[{"duration":7,"tweenEasing":0},{"x":-87.0726,"duration":19,"y":22.0384}],"rotateFrame":[{"duration":7,"tweenEasing":0},{"rotate":88.876,"duration":19}]},{"name":"星711","scaleFrame":[{"duration":7},{"duration":17,"tweenEasing":0},{"x":0.6,"duration":2,"y":0.6}],"translateFrame":[{"duration":7,"tweenEasing":0},{"x":32.2728,"duration":19,"y":59.8038}],"rotateFrame":[{"duration":7,"tweenEasing":0},{"rotate":88.876,"duration":19}]}],"playTimes":0,"ffd":[],"ik":[]}],"type":"Armature","skin":[{"name":"","slot":[{"name":"星4","display":[{"name":"1/星4","transform":{"x":1.1,"y":0.1},"type":"image","path":"1/星4"}]},{"name":"圆","display":[{"name":"1/圆","transform":{"skX":89.6569,"skY":89.6569},"type":"image","path":"1/勾"}]},{"name":"星61","display":[{"name":"1/星6","transform":{"x":1.55,"y":0.3},"type":"image","path":"1/星6"}]},{"name":"星31","display":[{"name":"1/星3","transform":{"x":0.8,"y":-0.15},"type":"image","path":"1/星3"}]},{"name":"星3","display":[{"name":"1/星3","transform":{"x":0.8,"y":-0.15},"type":"image","path":"1/星3"}]},{"name":"星11","display":[{"name":"1/星1","transform":{"x":-0.65,"y":-0.55,"skX":180,"skY":180},"type":"image","path":"1/星1"}]},{"name":"星71","display":[{"name":"1/星7","transform":{"x":-51.937,"y":13.4704,"skX":135,"skY":135},"type":"image","path":"1/星7"},{"name":"1/星5","transform":{"x":0.3889,"y":0.0354,"skX":135,"skY":135},"type":"image","path":"1/星5"}]},{"name":"星2","display":[{"name":"1/星2","transform":{"x":0.65,"y":1.1},"type":"image","path":"1/星2"}]},{"name":"星72","display":[{"name":"1/星7","transform":{"x":-51.937,"y":13.4704,"skX":135,"skY":135},"type":"image","path":"1/星7"},{"name":"1/星5","transform":{"x":0.3889,"y":0.0354,"skX":135,"skY":135},"type":"image","path":"1/星5"}]},{"name":"星8","display":[{"name":"1/星8","transform":{"x":0.0707,"y":-0.495,"skX":-135,"skY":-135},"type":"image","path":"1/星8"}]},{"name":"星9","display":[{"name":"1/星9","transform":{"x":0.2475,"y":0.3889,"skX":45,"skY":45},"type":"image","path":"1/星9"}]},{"name":"星711","display":[{"name":"1/星7","transform":{"x":-51.937,"y":13.4704,"skX":135,"skY":135},"type":"image","path":"1/星7"},{"name":"1/星5","transform":{"x":0.3889,"y":0.0354,"skX":135,"skY":135},"type":"image","path":"1/星5"}]},{"name":"星1","display":[{"name":"1/星1","transform":{"x":-0.65,"y":-0.55,"skX":180,"skY":180},"type":"image","path":"1/星1"}]},{"name":"星7","display":[{"name":"1/星7","transform":{"x":-51.937,"y":13.4704,"skX":135,"skY":135},"type":"image","path":"1/星7"},{"name":"1/星5","transform":{"x":0.3889,"y":0.0354,"skX":135,"skY":135},"type":"image","path":"1/星5"}]},{"name":"星6","display":[{"name":"1/星6","transform":{"x":1.55,"y":0.3,"skX":0.1937,"skY":0.1937},"type":"image","path":"1/星6"}]}]}]}],"frameRate":24}
\ No newline at end of file
{
"ver": "1.0.1",
"uuid": "3e36e8af-4f6a-4ec8-a56c-411bcee09d53",
"subMetas": {}
}
\ No newline at end of file
{"name":"right","SubTexture":[{"name":"1/勾","x":1,"height":112,"y":1,"width":128},{"name":"1/星1","x":196,"height":59,"y":72,"width":57},{"name":"1/星2","x":1,"height":45,"y":192,"width":43},{"name":"1/星3","x":131,"height":64,"y":72,"width":63},{"name":"1/星4","x":201,"height":45,"y":1,"width":45},{"name":"1/星6","x":131,"height":69,"y":1,"width":68},{"name":"1/星7","x":1,"height":40,"y":115,"width":37},{"name":"1/星5","x":196,"height":57,"y":133,"width":56},{"name":"1/星8","x":78,"height":33,"y":115,"width":32},{"name":"1/星9","x":40,"height":37,"y":115,"width":36}],"imagePath":"right_tex.png","height":256,"width":256}
\ No newline at end of file
{
"ver": "1.0.1",
"uuid": "4d4d9b71-e7f8-4683-93df-f145ba327b12",
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "83b08d7c-c82f-4dc7-b6ea-4f8f6dec8a0e",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 256,
"height": 256,
"platformSettings": {},
"subMetas": {
"right_tex": {
"ver": "1.0.4",
"uuid": "aabe1819-f211-4c52-98e3-9baeb06e457c",
"rawTextureUuid": "83b08d7c-c82f-4dc7-b6ea-4f8f6dec8a0e",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": -1,
"offsetY": 9,
"trimX": 1,
"trimY": 1,
"width": 252,
"height": 236,
"rawWidth": 256,
"rawHeight": 256,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "1.1.2",
"uuid": "8a74de80-d2bd-438f-a9ee-1de6a165a134",
"isBundle": false,
"bundleName": "",
"priority": 1,
"compressionType": {},
"optimizeHotUpdate": {},
"inlineSpriteFrames": {},
"isRemoteBundle": {},
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "ab54f59a-8911-4422-8eb9-14d7eba06b3d",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 89,
"height": 42,
"platformSettings": {},
"subMetas": {
"bg_lowerright": {
"ver": "1.0.4",
"uuid": "0464b6d6-15d1-48b2-b668-f8aac578eac7",
"rawTextureUuid": "ab54f59a-8911-4422-8eb9-14d7eba06b3d",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 89,
"height": 42,
"rawWidth": 89,
"rawHeight": 42,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "5889a9cd-09b0-42b9-9540-82974635f420",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 217,
"height": 134,
"platformSettings": {},
"subMetas": {
"bg_upperleft": {
"ver": "1.0.4",
"uuid": "7a61878a-38ac-4c27-a1c0-6e5ae07274d9",
"rawTextureUuid": "5889a9cd-09b0-42b9-9540-82974635f420",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 217,
"height": 134,
"rawWidth": 217,
"rawHeight": 134,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "76439ee2-25b8-4feb-be8a-8e54d746066c",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 106,
"height": 80,
"platformSettings": {},
"subMetas": {
"btn_laba": {
"ver": "1.0.4",
"uuid": "7d28afb4-1a18-45af-bb78-26f677922825",
"rawTextureUuid": "76439ee2-25b8-4feb-be8a-8e54d746066c",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 106,
"height": 80,
"rawWidth": 106,
"rawHeight": 80,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "5743c786-68fe-4a92-955b-f73bb10ab0a0",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 106,
"height": 80,
"platformSettings": {},
"subMetas": {
"btn_laba1": {
"ver": "1.0.4",
"uuid": "ed28fe62-4b3c-432e-84c5-09492cc175e3",
"rawTextureUuid": "5743c786-68fe-4a92-955b-f73bb10ab0a0",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 18,
"offsetY": 0,
"trimX": 36,
"trimY": 0,
"width": 70,
"height": 80,
"rawWidth": 106,
"rawHeight": 80,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "0c9dfc8c-3c04-4fc7-a2f6-9a44933a79b9",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 106,
"height": 80,
"platformSettings": {},
"subMetas": {
"btn_laba2": {
"ver": "1.0.4",
"uuid": "4a765d5e-6fac-4d01-8ef6-f093daee7c4c",
"rawTextureUuid": "0c9dfc8c-3c04-4fc7-a2f6-9a44933a79b9",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 4,
"offsetY": 0,
"trimX": 8,
"trimY": 0,
"width": 98,
"height": 80,
"rawWidth": 106,
"rawHeight": 80,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "ca595bd6-9407-4e26-95e3-a61d5aff17d8",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 106,
"height": 80,
"platformSettings": {},
"subMetas": {
"btn_laba3": {
"ver": "1.0.4",
"uuid": "faa52f66-df1a-4db6-86ae-904b7c0a410a",
"rawTextureUuid": "ca595bd6-9407-4e26-95e3-a61d5aff17d8",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 106,
"height": 80,
"rawWidth": 106,
"rawHeight": 80,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "68f8a196-dc35-4234-a7c4-4b05cc36c4ba",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 36,
"height": 42,
"platformSettings": {},
"subMetas": {
"btn_replay": {
"ver": "1.0.4",
"uuid": "164513e6-2391-4105-909a-77e01894c447",
"rawTextureUuid": "68f8a196-dc35-4234-a7c4-4b05cc36c4ba",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 36,
"height": 42,
"rawWidth": 36,
"rawHeight": 42,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "1.1.2",
"uuid": "02aa5267-253a-448a-8553-ff3a8696cc4e",
"isBundle": false,
"bundleName": "",
"priority": 1,
"compressionType": {},
"optimizeHotUpdate": {},
"inlineSpriteFrames": {},
"isRemoteBundle": {},
"subMetas": {}
}
\ No newline at end of file
{
"ver": "1.1.2",
"uuid": "83f8721d-e058-4f0d-9e75-58325c8ffdd0",
"isBundle": false,
"bundleName": "",
"priority": 1,
"compressionType": {},
"optimizeHotUpdate": {},
"inlineSpriteFrames": {},
"isRemoteBundle": {},
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "45e38f9a-3251-42c2-8bb7-1a61efdc95a6",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 230,
"height": 252,
"platformSettings": {},
"subMetas": {
"bg_bian3": {
"ver": "1.0.4",
"uuid": "e16387eb-c1c2-4710-a0e3-ea42de412c20",
"rawTextureUuid": "45e38f9a-3251-42c2-8bb7-1a61efdc95a6",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 230,
"height": 252,
"rawWidth": 230,
"rawHeight": 252,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "513b31d5-e9e1-45a2-ae65-882b4ea51db6",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 230,
"height": 252,
"platformSettings": {},
"subMetas": {
"bg_card3": {
"ver": "1.0.4",
"uuid": "35bcb871-b832-41ca-94af-3e5fa53e8125",
"rawTextureUuid": "513b31d5-e9e1-45a2-ae65-882b4ea51db6",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": -0.5,
"trimX": 8,
"trimY": 8,
"width": 214,
"height": 237,
"rawWidth": 230,
"rawHeight": 252,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "1.1.2",
"uuid": "55c34a3e-e570-46b3-b120-085860352776",
"isBundle": false,
"bundleName": "",
"priority": 1,
"compressionType": {},
"optimizeHotUpdate": {},
"inlineSpriteFrames": {},
"isRemoteBundle": {},
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "3867d163-aa66-476a-ade1-ec60cabcae1e",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 314,
"height": 342,
"platformSettings": {},
"subMetas": {
"bg_bian2": {
"ver": "1.0.4",
"uuid": "53ec3cb5-71e9-4cb4-84e3-5d4591dfc410",
"rawTextureUuid": "3867d163-aa66-476a-ade1-ec60cabcae1e",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 314,
"height": 342,
"rawWidth": 314,
"rawHeight": 342,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "f7ac7858-07a9-4e4c-ab18-6787b7755a03",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 314,
"height": 342,
"platformSettings": {},
"subMetas": {
"bg_card2": {
"ver": "1.0.4",
"uuid": "9b1913e0-0eb8-4bd4-8fbe-69c13d2cc14a",
"rawTextureUuid": "f7ac7858-07a9-4e4c-ab18-6787b7755a03",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": -0.5,
"trimX": 8,
"trimY": 8,
"width": 298,
"height": 327,
"rawWidth": 314,
"rawHeight": 342,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "1.1.2",
"uuid": "f8f0e0fc-057c-46aa-abe3-8c38149b96b9",
"isBundle": false,
"bundleName": "",
"priority": 1,
"compressionType": {},
"optimizeHotUpdate": {},
"inlineSpriteFrames": {},
"isRemoteBundle": {},
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "43b58cb0-33f8-4727-924d-fea8b302f313",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 282,
"height": 304,
"platformSettings": {},
"subMetas": {
"bg_bian1": {
"ver": "1.0.4",
"uuid": "3da1269a-d7d3-419b-b2ba-6f0e19f7578c",
"rawTextureUuid": "43b58cb0-33f8-4727-924d-fea8b302f313",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 282,
"height": 304,
"rawWidth": 282,
"rawHeight": 304,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "dc71f8ac-8d34-414a-9c10-25d8d5d656aa",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 282,
"height": 304,
"platformSettings": {},
"subMetas": {
"bg_card1": {
"ver": "1.0.4",
"uuid": "6c6c588d-4e73-4903-9e3f-543e5c89e618",
"rawTextureUuid": "dc71f8ac-8d34-414a-9c10-25d8d5d656aa",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": -2.5,
"trimX": 8,
"trimY": 8,
"width": 266,
"height": 293,
"rawWidth": 282,
"rawHeight": 304,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "f8c6bce2-8db6-44ef-a78c-b77893f51923",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 278,
"height": 275,
"platformSettings": {},
"subMetas": {
"icon_bigstar": {
"ver": "1.0.4",
"uuid": "fe2e20a8-05ef-42a7-a284-80db3ccc0733",
"rawTextureUuid": "f8c6bce2-8db6-44ef-a78c-b77893f51923",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 278,
"height": 275,
"rawWidth": 278,
"rawHeight": 275,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "44825581-819a-4d73-8f81-9fa435f885ce",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 62,
"height": 69,
"platformSettings": {},
"subMetas": {
"icon_star": {
"ver": "1.0.4",
"uuid": "38ab7ad4-ce3f-44d7-bf5b-e31e4b5ba155",
"rawTextureUuid": "44825581-819a-4d73-8f81-9fa435f885ce",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 62,
"height": 69,
"rawWidth": 62,
"rawHeight": 69,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{ {
"ver": "2.3.5", "ver": "2.3.5",
"uuid": "d582359e-924e-4ee9-9964-1fc4bb417e71", "uuid": "e992b78a-61ca-411f-b34e-b1e0d2a1ab5e",
"type": "sprite", "type": "sprite",
"wrapMode": "clamp", "wrapMode": "clamp",
"filterMode": "bilinear", "filterMode": "bilinear",
"premultiplyAlpha": false, "premultiplyAlpha": false,
"genMipmaps": false, "genMipmaps": false,
"packable": true, "packable": true,
"width": 61, "width": 62,
"height": 67, "height": 69,
"platformSettings": {}, "platformSettings": {},
"subMetas": { "subMetas": {
"btn_right": { "icon_stardi": {
"ver": "1.0.4", "ver": "1.0.4",
"uuid": "e5a2dbaa-a677-4a32-90d7-a1b057d7fb59", "uuid": "bcc1e8bd-c557-491a-87c4-c17370c2645a",
"rawTextureUuid": "d582359e-924e-4ee9-9964-1fc4bb417e71", "rawTextureUuid": "e992b78a-61ca-411f-b34e-b1e0d2a1ab5e",
"trimType": "auto", "trimType": "auto",
"trimThreshold": 1, "trimThreshold": 1,
"rotated": false, "rotated": false,
"offsetX": -0.5, "offsetX": 0,
"offsetY": 0.5, "offsetY": 1.5,
"trimX": 0, "trimX": 0,
"trimY": 0, "trimY": 0,
"width": 60, "width": 62,
"height": 66, "height": 66,
"rawWidth": 61, "rawWidth": 62,
"rawHeight": 67, "rawHeight": 69,
"borderTop": 0, "borderTop": 0,
"borderBottom": 0, "borderBottom": 0,
"borderLeft": 0, "borderLeft": 0,
......
{
"__type__": "cc.AnimationClip",
"_name": "laba",
"_objFlags": 0,
"_native": "",
"_duration": 0.3333333333333333,
"sample": 60,
"speed": 0.35,
"wrapMode": 2,
"curveData": {
"paths": {
"btn_laba": {
"props": {
"active": [
{
"frame": 0,
"value": false
},
{
"frame": 0.08333333333333333,
"value": false
},
{
"frame": 0.16666666666666666,
"value": false
},
{
"frame": 0.25,
"value": true
}
]
}
},
"btn_laba3": {
"props": {
"active": [
{
"frame": 0,
"value": false
},
{
"frame": 0.08333333333333333,
"value": false
},
{
"frame": 0.16666666666666666,
"value": true
},
{
"frame": 0.25,
"value": false
}
]
}
},
"btn_laba2": {
"props": {
"active": [
{
"frame": 0,
"value": false
},
{
"frame": 0.08333333333333333,
"value": true
},
{
"frame": 0.16666666666666666,
"value": false
},
{
"frame": 0.25,
"value": false
}
]
}
},
"btn_laba1": {
"props": {
"active": [
{
"frame": 0,
"value": true
},
{
"frame": 0.08333333333333333,
"value": false
},
{
"frame": 0.16666666666666666,
"value": false
},
{
"frame": 0.25,
"value": false
},
{
"frame": 0.3333333333333333,
"value": true
}
]
}
}
}
},
"events": []
}
\ No newline at end of file
{
"ver": "2.1.0",
"uuid": "5aef0251-2a6e-4f11-ba21-953a769c01d0",
"subMetas": {}
}
\ No newline at end of file
{
"ver": "1.1.2",
"uuid": "0b2e3cdb-a1d7-4020-aa87-b561d2e12959",
"isBundle": false,
"bundleName": "",
"priority": 1,
"compressionType": {},
"optimizeHotUpdate": {},
"inlineSpriteFrames": {},
"isRemoteBundle": {},
"subMetas": {}
}
\ No newline at end of file
{
"ver": "1.1.2",
"uuid": "616558ee-72d8-4979-a2ee-83d2f5ae7600",
"isBundle": false,
"bundleName": "",
"priority": 1,
"compressionType": {},
"optimizeHotUpdate": {},
"inlineSpriteFrames": {},
"isRemoteBundle": {},
"subMetas": {}
}
\ No newline at end of file
{ {
"ver": "2.3.5", "ver": "2.3.5",
"uuid": "e1b4d971-9876-4832-803a-5a321964a78b", "uuid": "94e8fd64-848f-4ab0-aeb5-6e25fe1b7fe8",
"type": "sprite", "type": "sprite",
"wrapMode": "clamp", "wrapMode": "clamp",
"filterMode": "bilinear", "filterMode": "bilinear",
...@@ -11,10 +11,10 @@ ...@@ -11,10 +11,10 @@
"height": 720, "height": 720,
"platformSettings": {}, "platformSettings": {},
"subMetas": { "subMetas": {
"bg": { "invalid_name": {
"ver": "1.0.4", "ver": "1.0.4",
"uuid": "8288e3d4-4c75-4b27-8f01-f7014417f4dd", "uuid": "f5df3f59-f45c-4611-84bf-7b3708bec211",
"rawTextureUuid": "e1b4d971-9876-4832-803a-5a321964a78b", "rawTextureUuid": "94e8fd64-848f-4ab0-aeb5-6e25fe1b7fe8",
"trimType": "auto", "trimType": "auto",
"trimThreshold": 1, "trimThreshold": 1,
"rotated": false, "rotated": false,
......
{
"ver": "2.3.5",
"uuid": "dd0dc7c5-e5a6-4242-bad2-3dbe9c26da5a",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 1280,
"height": 629,
"platformSettings": {},
"subMetas": {
"invalid_name_2": {
"ver": "1.0.4",
"uuid": "01d5767c-e6fc-48d5-a05b-ef680212f0d9",
"rawTextureUuid": "dd0dc7c5-e5a6-4242-bad2-3dbe9c26da5a",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 1280,
"height": 629,
"rawWidth": 1280,
"rawHeight": 629,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "a3541557-1475-4a71-8809-44f8262ec2f2",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 502,
"height": 76,
"platformSettings": {},
"subMetas": {
"title_bg": {
"ver": "1.0.4",
"uuid": "ca14e2fd-63e3-4c46-8eec-91fd20af5f60",
"rawTextureUuid": "a3541557-1475-4a71-8809-44f8262ec2f2",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 502,
"height": 76,
"rawWidth": 502,
"rawHeight": 76,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "1.1.2",
"uuid": "137087ea-eeb7-4679-ae78-2658af9840cf",
"isBundle": false,
"bundleName": "",
"priority": 1,
"compressionType": {},
"optimizeHotUpdate": {},
"inlineSpriteFrames": {},
"isRemoteBundle": {},
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "2642bc88-a42b-4b01-8393-900c0a1dadb0",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 150,
"height": 80,
"platformSettings": {},
"subMetas": {
"chose": {
"ver": "1.0.4",
"uuid": "86d42669-be71-4333-a47a-e75f1d141a5c",
"rawTextureUuid": "2642bc88-a42b-4b01-8393-900c0a1dadb0",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 150,
"height": 80,
"rawWidth": 150,
"rawHeight": 80,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "3dfdbb29-4a4a-4c0e-bdc5-1154dde83d4e",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 430,
"height": 68,
"platformSettings": {},
"subMetas": {
"combined_shape_3": {
"ver": "1.0.4",
"uuid": "39ce2398-164a-4dba-829f-646ed523cd4a",
"rawTextureUuid": "3dfdbb29-4a4a-4c0e-bdc5-1154dde83d4e",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 430,
"height": 68,
"rawWidth": 430,
"rawHeight": 68,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "86783601-f1d7-434c-8992-48c6fbd2eff7",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 470,
"height": 68,
"platformSettings": {},
"subMetas": {
"combined_shape_4": {
"ver": "1.0.4",
"uuid": "577b0319-8a9a-4503-ab96-f3dd5b000a53",
"rawTextureUuid": "86783601-f1d7-434c-8992-48c6fbd2eff7",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 470,
"height": 68,
"rawWidth": 470,
"rawHeight": 68,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{ {
"ver": "2.3.5", "ver": "2.3.5",
"uuid": "9a79969a-0506-48d4-bc98-3c05d109b027", "uuid": "12290598-9ea6-4e9f-b0db-8a9b6dd0033e",
"type": "sprite", "type": "sprite",
"wrapMode": "clamp", "wrapMode": "clamp",
"filterMode": "bilinear", "filterMode": "bilinear",
"premultiplyAlpha": false, "premultiplyAlpha": false,
"genMipmaps": false, "genMipmaps": false,
"packable": true, "packable": true,
"width": 61, "width": 154,
"height": 67, "height": 86,
"platformSettings": {}, "platformSettings": {},
"subMetas": { "subMetas": {
"btn_left": { "fail": {
"ver": "1.0.4", "ver": "1.0.4",
"uuid": "ce19457d-e8f3-4c38-ae3e-d4b99208ddb5", "uuid": "104f34e0-1777-4bd6-ba34-c0c1da5a0882",
"rawTextureUuid": "9a79969a-0506-48d4-bc98-3c05d109b027", "rawTextureUuid": "12290598-9ea6-4e9f-b0db-8a9b6dd0033e",
"trimType": "auto", "trimType": "auto",
"trimThreshold": 1, "trimThreshold": 1,
"rotated": false, "rotated": false,
...@@ -22,10 +22,10 @@ ...@@ -22,10 +22,10 @@
"offsetY": 0, "offsetY": 0,
"trimX": 0, "trimX": 0,
"trimY": 0, "trimY": 0,
"width": 61, "width": 154,
"height": 67, "height": 86,
"rawWidth": 61, "rawWidth": 154,
"rawHeight": 67, "rawHeight": 86,
"borderTop": 0, "borderTop": 0,
"borderBottom": 0, "borderBottom": 0,
"borderLeft": 0, "borderLeft": 0,
......
{
"ver": "2.3.5",
"uuid": "5957cfce-76c9-4a29-9dc4-428c42ee8b0a",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 163,
"height": 185,
"platformSettings": {},
"subMetas": {
"group_4_copy_2": {
"ver": "1.0.4",
"uuid": "7cffa85e-7b5a-48a2-b387-48ae1288c639",
"rawTextureUuid": "5957cfce-76c9-4a29-9dc4-428c42ee8b0a",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 163,
"height": 185,
"rawWidth": 163,
"rawHeight": 185,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "3091ec1a-b7a4-45eb-b256-d8c2a193ebee",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 80,
"height": 48,
"platformSettings": {},
"subMetas": {
"icon": {
"ver": "1.0.4",
"uuid": "405a5ae7-9f20-4d23-8681-455a17ac3514",
"rawTextureUuid": "3091ec1a-b7a4-45eb-b256-d8c2a193ebee",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 80,
"height": 48,
"rawWidth": 80,
"rawHeight": 48,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "b11d8ba1-b5ee-4501-8494-40c16bf1fff0",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 208,
"height": 88,
"platformSettings": {},
"subMetas": {
"oval_18": {
"ver": "1.0.4",
"uuid": "817eb1a2-dace-4cc4-8f23-4a03b692dbb6",
"rawTextureUuid": "b11d8ba1-b5ee-4501-8494-40c16bf1fff0",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 208,
"height": 88,
"rawWidth": 208,
"rawHeight": 88,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "02d43794-a798-430f-96e6-82162b8f8f3d",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 154,
"height": 86,
"platformSettings": {},
"subMetas": {
"oval_2_copy": {
"ver": "1.0.4",
"uuid": "14e8da8f-dacf-4974-a738-0b9bc5747dac",
"rawTextureUuid": "02d43794-a798-430f-96e6-82162b8f8f3d",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 154,
"height": 86,
"rawWidth": 154,
"rawHeight": 86,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "ca8e8657-8ded-4f81-a171-239170e223f4",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 186,
"height": 75,
"platformSettings": {},
"subMetas": {
"oval_2_copy_10": {
"ver": "1.0.4",
"uuid": "49454315-2fbc-49d7-980b-03990d784088",
"rawTextureUuid": "ca8e8657-8ded-4f81-a171-239170e223f4",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 186,
"height": 75,
"rawWidth": 186,
"rawHeight": 75,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "25b579dd-7802-4de9-a253-282c55d5fa76",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 186,
"height": 75,
"platformSettings": {},
"subMetas": {
"oval_2_copy_9": {
"ver": "1.0.4",
"uuid": "43bb4581-6acd-4928-9a46-b10ee983cb60",
"rawTextureUuid": "25b579dd-7802-4de9-a253-282c55d5fa76",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 186,
"height": 75,
"rawWidth": 186,
"rawHeight": 75,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "b1a260cf-fa78-4b47-be0b-9b950b896d10",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 124,
"height": 47,
"platformSettings": {},
"subMetas": {
"success": {
"ver": "1.0.4",
"uuid": "efc40866-ef82-4fac-b41b-99795e03cf96",
"rawTextureUuid": "b1a260cf-fa78-4b47-be0b-9b950b896d10",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 124,
"height": 47,
"rawWidth": 124,
"rawHeight": 47,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "1.1.2",
"uuid": "40cd2209-7806-404c-998a-e8c7e1ded86f",
"isBundle": false,
"bundleName": "",
"priority": 1,
"compressionType": {},
"optimizeHotUpdate": {},
"inlineSpriteFrames": {},
"isRemoteBundle": {},
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "9365ddf4-78a9-45ef-9560-00f3c1b4478a",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 102,
"height": 104,
"platformSettings": {},
"subMetas": {
"combined_shape": {
"ver": "1.0.4",
"uuid": "a79ec948-2c32-4d8a-9de5-72756c0c8603",
"rawTextureUuid": "9365ddf4-78a9-45ef-9560-00f3c1b4478a",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 102,
"height": 104,
"rawWidth": 102,
"rawHeight": 104,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "2154aa82-ff09-4fe2-8ffe-61617746bad1",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 116,
"height": 117,
"platformSettings": {},
"subMetas": {
"combined_shape_2": {
"ver": "1.0.4",
"uuid": "a47191ae-c423-4c09-982c-291a9ffeb0da",
"rawTextureUuid": "2154aa82-ff09-4fe2-8ffe-61617746bad1",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 116,
"height": 117,
"rawWidth": 116,
"rawHeight": 117,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "2d690ccf-e2b6-4a1e-a8aa-3911a5aa11bd",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 87,
"height": 85,
"platformSettings": {},
"subMetas": {
"combined_shape_copy_2": {
"ver": "1.0.4",
"uuid": "46aaad2d-77df-45d6-ab63-a80468d0330a",
"rawTextureUuid": "2d690ccf-e2b6-4a1e-a8aa-3911a5aa11bd",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 87,
"height": 85,
"rawWidth": 87,
"rawHeight": 85,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "84678017-3e2d-4644-a49e-b9472cc9b73c",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 203,
"height": 51,
"platformSettings": {},
"subMetas": {
"combined_shape_copy_3": {
"ver": "1.0.4",
"uuid": "41069ac1-9cb1-4f02-a98a-19a4f17af6e2",
"rawTextureUuid": "84678017-3e2d-4644-a49e-b9472cc9b73c",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 203,
"height": 51,
"rawWidth": 203,
"rawHeight": 51,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "fa2150de-2701-4f3a-9a7b-196b81d7131c",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 153,
"height": 86,
"platformSettings": {},
"subMetas": {
"group_5": {
"ver": "1.0.4",
"uuid": "8fef2fd6-a702-461f-955d-6c2d8f4b2677",
"rawTextureUuid": "fa2150de-2701-4f3a-9a7b-196b81d7131c",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 153,
"height": 86,
"rawWidth": 153,
"rawHeight": 86,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "fb561a78-2e2b-48ae-8a18-d70fc0745e3a",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 152,
"height": 85,
"platformSettings": {},
"subMetas": {
"group_6": {
"ver": "1.0.4",
"uuid": "48a4a851-1ce1-4e02-be55-229591cf3e36",
"rawTextureUuid": "fb561a78-2e2b-48ae-8a18-d70fc0745e3a",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 152,
"height": 85,
"rawWidth": 152,
"rawHeight": 85,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "e98b3336-1e04-4a4e-be74-9b61067904dd",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 15,
"height": 70,
"platformSettings": {},
"subMetas": {
"rectangle_40": {
"ver": "1.0.4",
"uuid": "f9c94281-5c01-40d5-92fb-65fb17349815",
"rawTextureUuid": "e98b3336-1e04-4a4e-be74-9b61067904dd",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 15,
"height": 70,
"rawWidth": 15,
"rawHeight": 70,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "90223791-6f4b-48c5-84ba-379025b709bf",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 1201,
"height": 679,
"platformSettings": {},
"subMetas": {
"view": {
"ver": "1.0.4",
"uuid": "59ca3150-1f56-4f3e-908c-3c22e870861c",
"rawTextureUuid": "90223791-6f4b-48c5-84ba-379025b709bf",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 1201,
"height": 679,
"rawWidth": 1201,
"rawHeight": 679,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "1.1.2",
"uuid": "7c206c4b-e4ff-4b86-9ef9-184a45353a4a",
"isBundle": false,
"bundleName": "",
"priority": 1,
"compressionType": {},
"optimizeHotUpdate": {},
"inlineSpriteFrames": {},
"isRemoteBundle": {},
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "5418f730-4911-460b-b9f5-54b7ae04ce5f",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 49,
"height": 49,
"platformSettings": {},
"subMetas": {
"add": {
"ver": "1.0.4",
"uuid": "cfe19ca9-98be-4c19-90c9-727f3e0b0b94",
"rawTextureUuid": "5418f730-4911-460b-b9f5-54b7ae04ce5f",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 49,
"height": 49,
"rawWidth": 49,
"rawHeight": 49,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "7a5ef7ea-5250-454f-b420-7954fe0a955d",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 46,
"height": 34,
"platformSettings": {},
"subMetas": {
"arrow": {
"ver": "1.0.4",
"uuid": "78aaf9ca-f249-4466-9072-1f65b37698d7",
"rawTextureUuid": "7a5ef7ea-5250-454f-b420-7954fe0a955d",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 46,
"height": 34,
"rawWidth": 46,
"rawHeight": 34,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "87743ec9-3130-4813-b0f1-6d3dfd5d4f1f",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 384,
"height": 48,
"platformSettings": {},
"subMetas": {
"arrow_bg1": {
"ver": "1.0.4",
"uuid": "35c019c0-35a3-4fca-9683-8bc1704c4a3b",
"rawTextureUuid": "87743ec9-3130-4813-b0f1-6d3dfd5d4f1f",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 384,
"height": 48,
"rawWidth": 384,
"rawHeight": 48,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "f179d51d-d566-4abb-af85-2a5b939769c5",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 299,
"height": 48,
"platformSettings": {},
"subMetas": {
"arrow_bg_2": {
"ver": "1.0.4",
"uuid": "85ff3045-bcca-463b-9357-6ea7136c8e61",
"rawTextureUuid": "f179d51d-d566-4abb-af85-2a5b939769c5",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 299,
"height": 48,
"rawWidth": 299,
"rawHeight": 48,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "e219744c-727b-4cdf-bd1e-01b41b5e72b5",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 1088,
"height": 800,
"platformSettings": {},
"subMetas": {
"bg_bg": {
"ver": "1.0.4",
"uuid": "ea192d54-bdfd-4ec4-8ea5-4d19053eda65",
"rawTextureUuid": "e219744c-727b-4cdf-bd1e-01b41b5e72b5",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 1088,
"height": 800,
"rawWidth": 1088,
"rawHeight": 800,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "7edddb9d-f2d0-4481-8f00-e5e0a15c6f7e",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 1208,
"height": 322,
"platformSettings": {},
"subMetas": {
"bg_book": {
"ver": "1.0.4",
"uuid": "49accd5b-11ef-422b-9442-3645842f76a4",
"rawTextureUuid": "7edddb9d-f2d0-4481-8f00-e5e0a15c6f7e",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 1208,
"height": 322,
"rawWidth": 1208,
"rawHeight": 322,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{ {
"ver": "2.3.5", "ver": "2.3.5",
"uuid": "efa5fa09-a4dd-4bfc-ab7e-17c19f85408f", "uuid": "1eec481a-79ef-4945-b9d4-b7e3da0df6c9",
"type": "sprite", "type": "sprite",
"wrapMode": "clamp", "wrapMode": "clamp",
"filterMode": "bilinear", "filterMode": "bilinear",
"premultiplyAlpha": false, "premultiplyAlpha": false,
"genMipmaps": false, "genMipmaps": false,
"packable": true, "packable": true,
"width": 366, "width": 1088,
"height": 336, "height": 336,
"platformSettings": {}, "platformSettings": {},
"subMetas": { "subMetas": {
"1orange": { "bg_desk": {
"ver": "1.0.4", "ver": "1.0.4",
"uuid": "43d1e79d-6de8-4dcb-b8ce-d767df7913aa", "uuid": "a3bbb339-5ac1-4ae2-8b8d-16e9764bc848",
"rawTextureUuid": "efa5fa09-a4dd-4bfc-ab7e-17c19f85408f", "rawTextureUuid": "1eec481a-79ef-4945-b9d4-b7e3da0df6c9",
"trimType": "auto", "trimType": "auto",
"trimThreshold": 1, "trimThreshold": 1,
"rotated": false, "rotated": false,
"offsetX": 0, "offsetX": 0,
"offsetY": -0.5, "offsetY": 0,
"trimX": 0, "trimX": 0,
"trimY": 1, "trimY": 0,
"width": 366, "width": 1088,
"height": 335, "height": 336,
"rawWidth": 366, "rawWidth": 1088,
"rawHeight": 336, "rawHeight": 336,
"borderTop": 0, "borderTop": 0,
"borderBottom": 0, "borderBottom": 0,
......
{
"ver": "2.3.5",
"uuid": "e83087d4-812b-41a1-8f8e-c8548f91b545",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 1068,
"height": 416,
"platformSettings": {},
"subMetas": {
"bg_good_job": {
"ver": "1.0.4",
"uuid": "0dfa1159-bf38-41f9-9fbd-3ce1de927a82",
"rawTextureUuid": "e83087d4-812b-41a1-8f8e-c8548f91b545",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 1068,
"height": 416,
"rawWidth": 1068,
"rawHeight": 416,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "cfcb0bc3-38a3-4eb9-8bef-6f390715a887",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 1246,
"height": 1234,
"platformSettings": {},
"subMetas": {
"bg_light": {
"ver": "1.0.4",
"uuid": "61f2fdd4-a347-4bfa-820f-9440bf5e8519",
"rawTextureUuid": "cfcb0bc3-38a3-4eb9-8bef-6f390715a887",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 1246,
"height": 1234,
"rawWidth": 1246,
"rawHeight": 1234,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "8648f0ac-0dc6-465f-8b38-52cfff78b94f",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 713,
"height": 45,
"platformSettings": {},
"subMetas": {
"bg_progressbar": {
"ver": "1.0.4",
"uuid": "36ef48dd-66d5-4b69-8ab8-81df61883258",
"rawTextureUuid": "8648f0ac-0dc6-465f-8b38-52cfff78b94f",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 713,
"height": 45,
"rawWidth": 713,
"rawHeight": 45,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "8f6bf5d6-f9c3-4a41-99a9-0d3da517c2e5",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 713,
"height": 45,
"platformSettings": {},
"subMetas": {
"bg_progressbar2": {
"ver": "1.0.4",
"uuid": "782c442c-cae4-43f5-80b8-7d337df2601d",
"rawTextureUuid": "8f6bf5d6-f9c3-4a41-99a9-0d3da517c2e5",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 4,
"trimX": 10,
"trimY": 5,
"width": 693,
"height": 27,
"rawWidth": 713,
"rawHeight": 45,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 42,
"borderRight": 48,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "b21b9eef-e56a-4c2b-a119-eb18e2a89ebb",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 291,
"height": 234,
"platformSettings": {},
"subMetas": {
"bg_recordmove": {
"ver": "1.0.4",
"uuid": "0c97e3bf-e60b-4e4d-8c5c-69cd5e94eb34",
"rawTextureUuid": "b21b9eef-e56a-4c2b-a119-eb18e2a89ebb",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 291,
"height": 234,
"rawWidth": 291,
"rawHeight": 234,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "699b596b-2816-431a-a084-c2a498b32e7b",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 1068,
"height": 416,
"platformSettings": {},
"subMetas": {
"bg_tryagain": {
"ver": "1.0.4",
"uuid": "536c7203-4462-4233-b8b5-87b85ef80023",
"rawTextureUuid": "699b596b-2816-431a-a084-c2a498b32e7b",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 1068,
"height": 416,
"rawWidth": 1068,
"rawHeight": 416,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "4950f71c-f109-4a56-81d1-efb878abd325",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 684,
"height": 244,
"platformSettings": {},
"subMetas": {
"bg_word_background": {
"ver": "1.0.4",
"uuid": "1077458b-a6e0-4e1c-a0cc-4cf56c575178",
"rawTextureUuid": "4950f71c-f109-4a56-81d1-efb878abd325",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 684,
"height": 244,
"rawWidth": 684,
"rawHeight": 244,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "5830996d-7f8f-4287-a222-a9c525573eea",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 209,
"height": 146,
"platformSettings": {},
"subMetas": {
"btn_next": {
"ver": "1.0.4",
"uuid": "056d41b1-2a9b-4f22-8092-306cf5af3251",
"rawTextureUuid": "5830996d-7f8f-4287-a222-a9c525573eea",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 209,
"height": 146,
"rawWidth": 209,
"rawHeight": 146,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "3dec35c1-56ec-4304-b963-fad67d9d9046",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 325,
"height": 251,
"platformSettings": {},
"subMetas": {
"btn_picture": {
"ver": "1.0.4",
"uuid": "6dec5fe3-5dcf-406f-bb49-88c46854268e",
"rawTextureUuid": "3dec35c1-56ec-4304-b963-fad67d9d9046",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 325,
"height": 251,
"rawWidth": 325,
"rawHeight": 251,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "05405613-b93f-4dc4-bee9-1e1e2d7dcecc",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 244,
"height": 232,
"platformSettings": {},
"subMetas": {
"btn_record": {
"ver": "1.0.4",
"uuid": "ce2dae10-9b79-4de9-8163-75702e087b62",
"rawTextureUuid": "05405613-b93f-4dc4-bee9-1e1e2d7dcecc",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 244,
"height": 232,
"rawWidth": 244,
"rawHeight": 232,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "e5ae881a-65c3-4e3c-866c-ae67cd08de0a",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 176,
"height": 206,
"platformSettings": {},
"subMetas": {
"btn_replay": {
"ver": "1.0.4",
"uuid": "dd09a3f5-2df8-4334-89a7-36396823aae0",
"rawTextureUuid": "e5ae881a-65c3-4e3c-866c-ae67cd08de0a",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 176,
"height": 206,
"rawWidth": 176,
"rawHeight": 206,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "5e1cc31e-9ab3-4cb1-b57c-c83e08e1c58d",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 262,
"height": 268,
"platformSettings": {},
"subMetas": {
"btn_restart": {
"ver": "1.0.4",
"uuid": "3f3258fc-f4c1-4862-bc12-6467ec15b5b3",
"rawTextureUuid": "5e1cc31e-9ab3-4cb1-b57c-c83e08e1c58d",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 262,
"height": 268,
"rawWidth": 262,
"rawHeight": 268,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "69bdf5db-fc29-42d1-bf66-c20cf0dbe674",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 409,
"height": 409,
"platformSettings": {},
"subMetas": {
"btn_restart_circle": {
"ver": "1.0.4",
"uuid": "b34babe1-0856-4403-9446-7b6e2bbe9f15",
"rawTextureUuid": "69bdf5db-fc29-42d1-bf66-c20cf0dbe674",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 409,
"height": 409,
"rawWidth": 409,
"rawHeight": 409,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "89b0a0c9-7a7c-4d60-9959-2969cabbb406",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 171,
"height": 146,
"platformSettings": {},
"subMetas": {
"btn_return": {
"ver": "1.0.4",
"uuid": "3c77fd69-041b-4411-a9b4-273c49497376",
"rawTextureUuid": "89b0a0c9-7a7c-4d60-9959-2969cabbb406",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 171,
"height": 146,
"rawWidth": 171,
"rawHeight": 146,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "70b489fe-f009-49b9-afc4-36c869876b38",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 124,
"height": 124,
"platformSettings": {},
"subMetas": {
"card_bg1": {
"ver": "1.0.4",
"uuid": "48f2aabb-d6f5-4008-b809-7e16b10101f3",
"rawTextureUuid": "70b489fe-f009-49b9-afc4-36c869876b38",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 124,
"height": 124,
"rawWidth": 124,
"rawHeight": 124,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "b1df9a2f-a1a0-4ad9-a430-d6ab5cefc95c",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 428,
"height": 124,
"platformSettings": {},
"subMetas": {
"card_bg2": {
"ver": "1.0.4",
"uuid": "4d51a805-5c5d-42f9-9e4c-1410dc4014a3",
"rawTextureUuid": "b1df9a2f-a1a0-4ad9-a430-d6ab5cefc95c",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 428,
"height": 124,
"rawWidth": 428,
"rawHeight": 124,
"borderTop": 18,
"borderBottom": 18,
"borderLeft": 22,
"borderRight": 21,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "1f85cbb2-c106-4d3e-8095-1a37df8be29b",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 220,
"height": 124,
"platformSettings": {},
"subMetas": {
"card_bg3": {
"ver": "1.0.4",
"uuid": "0a3bdb9a-cde0-4c7d-ba1b-9e4e2d4d77ba",
"rawTextureUuid": "1f85cbb2-c106-4d3e-8095-1a37df8be29b",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 220,
"height": 124,
"rawWidth": 220,
"rawHeight": 124,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "58100af5-6063-4f2a-a2aa-4a7a1538c158",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 277,
"height": 124,
"platformSettings": {},
"subMetas": {
"card_bg4": {
"ver": "1.0.4",
"uuid": "4484df43-f358-4ba3-bb4c-7da0f2cbf61d",
"rawTextureUuid": "58100af5-6063-4f2a-a2aa-4a7a1538c158",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 277,
"height": 124,
"rawWidth": 277,
"rawHeight": 124,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "c055eecd-5931-40c7-ad02-c7b7db52b0c5",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 88,
"height": 185,
"platformSettings": {},
"subMetas": {
"icon_hand": {
"ver": "1.0.4",
"uuid": "8a3ed353-ff01-4d14-a50e-efa58a411f61",
"rawTextureUuid": "c055eecd-5931-40c7-ad02-c7b7db52b0c5",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 88,
"height": 185,
"rawWidth": 88,
"rawHeight": 185,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "3156cdc9-6635-4616-b87a-23d0f8bb5538",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 244,
"height": 232,
"platformSettings": {},
"subMetas": {
"icon_record": {
"ver": "1.0.4",
"uuid": "c9122267-cd57-4742-bfe7-1c928880d5de",
"rawTextureUuid": "3156cdc9-6635-4616-b87a-23d0f8bb5538",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 23,
"trimX": 69,
"trimY": 24,
"width": 106,
"height": 138,
"rawWidth": 244,
"rawHeight": 232,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "b1fb6ea1-0e55-4401-921c-46fb6713acaa",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 244,
"height": 232,
"platformSettings": {},
"subMetas": {
"icon_recording": {
"ver": "1.0.4",
"uuid": "dff89d8e-e14f-4e19-ab8f-c7dd09bd4c68",
"rawTextureUuid": "b1fb6ea1-0e55-4401-921c-46fb6713acaa",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 2.5,
"offsetY": 24.5,
"trimX": 31,
"trimY": 61,
"width": 187,
"height": 61,
"rawWidth": 244,
"rawHeight": 232,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "6dab856d-21e5-4624-8254-c40feb8c1af2",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 58,
"height": 61,
"platformSettings": {},
"subMetas": {
"icon_recording_point": {
"ver": "1.0.4",
"uuid": "e468fde1-083c-4fac-909e-afb9b4d1c3ce",
"rawTextureUuid": "6dab856d-21e5-4624-8254-c40feb8c1af2",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 58,
"height": 61,
"rawWidth": 58,
"rawHeight": 61,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "1.1.2",
"uuid": "6a0f0fdf-1b7e-487b-a027-7f34150e59c5",
"isBundle": false,
"bundleName": "",
"priority": 1,
"compressionType": {},
"optimizeHotUpdate": {},
"inlineSpriteFrames": {},
"isRemoteBundle": {},
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "da518f72-e19c-4130-8b32-f80c8ec5ff69",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 29,
"height": 29,
"platformSettings": {},
"subMetas": {
"Img_paper": {
"ver": "1.0.4",
"uuid": "6bed546e-5efa-4af6-859d-90a8c0afc027",
"rawTextureUuid": "da518f72-e19c-4130-8b32-f80c8ec5ff69",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 29,
"height": 29,
"rawWidth": 29,
"rawHeight": 29,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "cfc6ffbd-32c5-4ed7-84b4-4a26c6f3529f",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 36,
"height": 24,
"platformSettings": {},
"subMetas": {
"bg_sahua": {
"ver": "1.0.4",
"uuid": "e563d755-7640-4e80-9845-4e8e7e891845",
"rawTextureUuid": "cfc6ffbd-32c5-4ed7-84b4-4a26c6f3529f",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 36,
"height": 24,
"rawWidth": 36,
"rawHeight": 24,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "0884ca03-555a-420e-8a4f-1d8165ae8067",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 278,
"height": 275,
"platformSettings": {},
"subMetas": {
"icon_bigstar": {
"ver": "1.0.4",
"uuid": "a7582b91-c35c-484d-af61-26dba567aaa5",
"rawTextureUuid": "0884ca03-555a-420e-8a4f-1d8165ae8067",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 278,
"height": 275,
"rawWidth": 278,
"rawHeight": 275,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "94828d7d-0bf7-42d5-ac21-bd7333ffb305",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 62,
"height": 69,
"platformSettings": {},
"subMetas": {
"icon_star": {
"ver": "1.0.4",
"uuid": "ceeeffbc-5d56-4ffb-a0db-587ececa68ae",
"rawTextureUuid": "94828d7d-0bf7-42d5-ac21-bd7333ffb305",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 62,
"height": 69,
"rawWidth": 62,
"rawHeight": 69,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "2ac76f4e-4982-48c8-91a1-f9907d9686c1",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 62,
"height": 69,
"platformSettings": {},
"subMetas": {
"icon_stardi": {
"ver": "1.0.4",
"uuid": "7d34919d-d0e8-4aaf-ad40-1994c1e2eb97",
"rawTextureUuid": "2ac76f4e-4982-48c8-91a1-f9907d9686c1",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 1.5,
"trimX": 0,
"trimY": 0,
"width": 62,
"height": 66,
"rawWidth": 62,
"rawHeight": 69,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
[
{
"__type__": "cc.SceneAsset",
"_name": "",
"_objFlags": 0,
"_native": "",
"scene": {
"__id__": 1
}
},
{
"__type__": "cc.Scene",
"_objFlags": 0,
"_parent": null,
"_children": [
{
"__id__": 2
}
],
"_active": false,
"_components": [],
"_prefab": null,
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 0,
"height": 0
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0,
"y": 0
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
0,
0,
0,
0,
0,
1,
1,
1,
1
]
},
"_is3DNode": true,
"_groupIndex": 0,
"groupIndex": 0,
"autoReleaseAssets": true,
"_id": "0737ce42-24f0-45c6-8e1a-8bdab4f74ba3"
},
{
"__type__": "cc.Node",
"_name": "Canvas",
"_objFlags": 0,
"_parent": {
"__id__": 1
},
"_children": [
{
"__id__": 3
},
{
"__id__": 5
},
{
"__id__": 7
},
{
"__id__": 14
}
],
"_active": true,
"_components": [
{
"__id__": 24
},
{
"__id__": 25
},
{
"__id__": 26
}
],
"_prefab": null,
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 1280,
"height": 720
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.5,
"y": 0.5
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
640,
360,
0,
0,
0,
0,
1,
1,
1,
1
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": "a5esZu+45LA5mBpvttspPD"
},
{
"__type__": "cc.Node",
"_name": "Main Camera",
"_objFlags": 0,
"_parent": {
"__id__": 2
},
"_children": [],
"_active": true,
"_components": [
{
"__id__": 4
}
],
"_prefab": null,
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 1280,
"height": 720
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.5,
"y": 0.5
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
0,
362.85545494732423,
0,
0,
0,
1,
1,
1,
1
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": "e1WoFrQ79G7r4ZuQE3HlNb"
},
{
"__type__": "cc.Camera",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 3
},
"_enabled": true,
"_cullingMask": 4294967295,
"_clearFlags": 7,
"_backgroundColor": {
"__type__": "cc.Color",
"r": 0,
"g": 0,
"b": 0,
"a": 255
},
"_depth": -1,
"_zoomRatio": 1,
"_targetTexture": null,
"_fov": 60,
"_orthoSize": 10,
"_nearClip": 1,
"_farClip": 4096,
"_ortho": true,
"_rect": {
"__type__": "cc.Rect",
"x": 0,
"y": 0,
"width": 1,
"height": 1
},
"_renderStages": 1,
"_alignWithScreen": true,
"_id": "81GN3uXINKVLeW4+iKSlim"
},
{
"__type__": "cc.Node",
"_name": "bg",
"_objFlags": 0,
"_parent": {
"__id__": 2
},
"_children": [],
"_active": true,
"_components": [
{
"__id__": 6
}
],
"_prefab": null,
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 1280,
"height": 720
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.5,
"y": 0.5
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
0,
0,
0,
0,
0,
1,
1,
1,
1
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": "32MJMZ2HRGF4BOf533Avyi"
},
{
"__type__": "cc.Sprite",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 5
},
"_enabled": true,
"_materials": [
{
"__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432"
}
],
"_srcBlendFactor": 770,
"_dstBlendFactor": 771,
"_spriteFrame": {
"__uuid__": "8288e3d4-4c75-4b27-8f01-f7014417f4dd"
},
"_type": 0,
"_sizeMode": 1,
"_fillType": 0,
"_fillCenter": {
"__type__": "cc.Vec2",
"x": 0,
"y": 0
},
"_fillStart": 0,
"_fillRange": 0,
"_isTrimmedMode": true,
"_atlas": null,
"_id": "97/S6HDq9MeqgmV1Zwnhbb"
},
{
"__type__": "cc.Node",
"_name": "bottomPart",
"_objFlags": 0,
"_parent": {
"__id__": 2
},
"_children": [
{
"__id__": 8
},
{
"__id__": 11
}
],
"_active": true,
"_components": [],
"_prefab": null,
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 0,
"height": 0
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.5,
"y": 0.5
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
635.132,
-356.326,
0,
0,
0,
0,
1,
1,
1,
1
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": "8c7k8ep/ZFNpO263+1QHz9"
},
{
"__type__": "cc.Node",
"_name": "btn_left",
"_objFlags": 0,
"_parent": {
"__id__": 7
},
"_children": [],
"_active": true,
"_components": [
{
"__id__": 9
},
{
"__id__": 10
}
],
"_prefab": null,
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 61,
"height": 67
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.5,
"y": 0.5
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
-148.464,
34,
0,
0,
0,
0,
1,
1,
1,
1
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": "5ad2wLQLxIN5Eg7OHecSH6"
},
{
"__type__": "cc.Sprite",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 8
},
"_enabled": true,
"_materials": [
{
"__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432"
}
],
"_srcBlendFactor": 770,
"_dstBlendFactor": 771,
"_spriteFrame": {
"__uuid__": "ce19457d-e8f3-4c38-ae3e-d4b99208ddb5"
},
"_type": 0,
"_sizeMode": 1,
"_fillType": 0,
"_fillCenter": {
"__type__": "cc.Vec2",
"x": 0,
"y": 0
},
"_fillStart": 0,
"_fillRange": 0,
"_isTrimmedMode": true,
"_atlas": null,
"_id": "84mqOgJ3JNqZrYVTEU8CjE"
},
{
"__type__": "cc.Button",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 8
},
"_enabled": true,
"_normalMaterial": null,
"_grayMaterial": null,
"duration": 0.1,
"zoomScale": 1.2,
"clickEvents": [],
"_N$interactable": true,
"_N$enableAutoGrayEffect": false,
"_N$transition": 0,
"transition": 0,
"_N$normalColor": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_N$pressedColor": {
"__type__": "cc.Color",
"r": 211,
"g": 211,
"b": 211,
"a": 255
},
"pressedColor": {
"__type__": "cc.Color",
"r": 211,
"g": 211,
"b": 211,
"a": 255
},
"_N$hoverColor": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"hoverColor": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_N$disabledColor": {
"__type__": "cc.Color",
"r": 124,
"g": 124,
"b": 124,
"a": 255
},
"_N$normalSprite": null,
"_N$pressedSprite": null,
"pressedSprite": null,
"_N$hoverSprite": null,
"hoverSprite": null,
"_N$disabledSprite": null,
"_N$target": null,
"_id": "bcYN/4EKBJhbIAfovo9Ah1"
},
{
"__type__": "cc.Node",
"_name": "btn_right",
"_objFlags": 0,
"_parent": {
"__id__": 7
},
"_children": [],
"_active": true,
"_components": [
{
"__id__": 12
},
{
"__id__": 13
}
],
"_prefab": null,
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 60,
"height": 66
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.5,
"y": 0.5
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
-47.164,
34,
0,
0,
0,
0,
1,
1,
1,
1
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": "46i3stdzpHX6zQHTGnRsNE"
},
{
"__type__": "cc.Sprite",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 11
},
"_enabled": true,
"_materials": [
{
"__uuid__": "eca5d2f2-8ef6-41c2-bbe6-f9c79d09c432"
}
],
"_srcBlendFactor": 770,
"_dstBlendFactor": 771,
"_spriteFrame": {
"__uuid__": "e5a2dbaa-a677-4a32-90d7-a1b057d7fb59"
},
"_type": 0,
"_sizeMode": 1,
"_fillType": 0,
"_fillCenter": {
"__type__": "cc.Vec2",
"x": 0,
"y": 0
},
"_fillStart": 0,
"_fillRange": 0,
"_isTrimmedMode": true,
"_atlas": null,
"_id": "42Sh8QS/BHn4WiGyPQPKPt"
},
{
"__type__": "cc.Button",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 11
},
"_enabled": true,
"_normalMaterial": null,
"_grayMaterial": null,
"duration": 0.1,
"zoomScale": 1.2,
"clickEvents": [],
"_N$interactable": true,
"_N$enableAutoGrayEffect": false,
"_N$transition": 0,
"transition": 0,
"_N$normalColor": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_N$pressedColor": {
"__type__": "cc.Color",
"r": 211,
"g": 211,
"b": 211,
"a": 255
},
"pressedColor": {
"__type__": "cc.Color",
"r": 211,
"g": 211,
"b": 211,
"a": 255
},
"_N$hoverColor": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"hoverColor": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_N$disabledColor": {
"__type__": "cc.Color",
"r": 124,
"g": 124,
"b": 124,
"a": 255
},
"_N$normalSprite": null,
"_N$pressedSprite": null,
"pressedSprite": null,
"_N$hoverSprite": null,
"hoverSprite": null,
"_N$disabledSprite": null,
"_N$target": null,
"_id": "1aj32fYY1IxLesa77E70Qu"
},
{
"__type__": "cc.Node",
"_name": "res",
"_objFlags": 0,
"_parent": {
"__id__": 2
},
"_children": [
{
"__id__": 15
},
{
"__id__": 18
},
{
"__id__": 21
}
],
"_active": false,
"_components": [],
"_prefab": null,
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 0,
"height": 0
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.5,
"y": 0.5
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
0,
0,
0,
0,
0,
1,
1,
1,
1
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": "0aAzbH6R1E+6AmGRrkKa5O"
},
{
"__type__": "cc.Node",
"_name": "font",
"_objFlags": 0,
"_parent": {
"__id__": 14
},
"_children": [
{
"__id__": 16
}
],
"_active": true,
"_components": [],
"_prefab": null,
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 0,
"height": 0
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.5,
"y": 0.5
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
0,
0,
0,
0,
0,
1,
1,
1,
1
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": "9bLfcYeeNKrr524vzWchiM"
},
{
"__type__": "cc.Node",
"_name": "BRLNSDB",
"_objFlags": 0,
"_parent": {
"__id__": 15
},
"_children": [],
"_active": true,
"_components": [
{
"__id__": 17
}
],
"_prefab": null,
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 0,
"height": 0
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.5,
"y": 0.5
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
0,
0,
0,
0,
0,
1,
1,
1,
1
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": "cfMLGsq0BMhJARv+ySMAxS"
},
{
"__type__": "cc.Label",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 16
},
"_enabled": true,
"_materials": [],
"_srcBlendFactor": 770,
"_dstBlendFactor": 771,
"_string": "",
"_N$string": "",
"_fontSize": 40,
"_lineHeight": 40,
"_enableWrapText": true,
"_N$file": {
"__uuid__": "c551970e-b095-45f3-9f1d-25cde8b8deb1"
},
"_isSystemFontUsed": false,
"_spacingX": 0,
"_batchAsBitmap": false,
"_styleFlags": 0,
"_underlineHeight": 0,
"_N$horizontalAlign": 0,
"_N$verticalAlign": 0,
"_N$fontFamily": "Arial",
"_N$overflow": 0,
"_N$cacheMode": 0,
"_id": "9bNHNPu5lC7rQYyr8ai/sY"
},
{
"__type__": "cc.Node",
"_name": "img",
"_objFlags": 0,
"_parent": {
"__id__": 14
},
"_children": [
{
"__id__": 19
}
],
"_active": true,
"_components": [],
"_prefab": null,
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 0,
"height": 0
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.5,
"y": 0.5
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
0,
0,
0,
0,
0,
1,
1,
1,
1
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": "53LUHHG2pEr79fyrvazXJs"
},
{
"__type__": "cc.Node",
"_name": "icon",
"_objFlags": 0,
"_parent": {
"__id__": 18
},
"_children": [],
"_active": true,
"_components": [
{
"__id__": 20
}
],
"_prefab": null,
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 138,
"height": 141
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.5,
"y": 0.5
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
0,
0,
0,
0,
0,
1,
1,
1,
1
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": "1blU2OArJIfoC9XfupGxJG"
},
{
"__type__": "cc.Sprite",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 19
},
"_enabled": true,
"_materials": [],
"_srcBlendFactor": 770,
"_dstBlendFactor": 771,
"_spriteFrame": {
"__uuid__": "6fbc30a8-3c49-44ae-8ba4-7f56f385b78a"
},
"_type": 0,
"_sizeMode": 1,
"_fillType": 0,
"_fillCenter": {
"__type__": "cc.Vec2",
"x": 0,
"y": 0
},
"_fillStart": 0,
"_fillRange": 0,
"_isTrimmedMode": true,
"_atlas": null,
"_id": "03GEWUEZJGyKormWgIWCtM"
},
{
"__type__": "cc.Node",
"_name": "audio",
"_objFlags": 0,
"_parent": {
"__id__": 14
},
"_children": [
{
"__id__": 22
}
],
"_active": true,
"_components": [],
"_prefab": null,
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 0,
"height": 0
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.5,
"y": 0.5
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
0,
0,
0,
0,
0,
1,
1,
1,
1
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": "d9f+b0lmZGSJJae6zrADhp"
},
{
"__type__": "cc.Node",
"_name": "btn",
"_objFlags": 0,
"_parent": {
"__id__": 21
},
"_children": [],
"_active": true,
"_components": [
{
"__id__": 23
}
],
"_prefab": null,
"_opacity": 255,
"_color": {
"__type__": "cc.Color",
"r": 255,
"g": 255,
"b": 255,
"a": 255
},
"_contentSize": {
"__type__": "cc.Size",
"width": 0,
"height": 0
},
"_anchorPoint": {
"__type__": "cc.Vec2",
"x": 0.5,
"y": 0.5
},
"_trs": {
"__type__": "TypedArray",
"ctor": "Float64Array",
"array": [
0,
0,
0,
0,
0,
0,
1,
1,
1,
1
]
},
"_eulerAngles": {
"__type__": "cc.Vec3",
"x": 0,
"y": 0,
"z": 0
},
"_skewX": 0,
"_skewY": 0,
"_is3DNode": false,
"_groupIndex": 0,
"groupIndex": 0,
"_id": "e87DSaFCVJfb2PAUkf4/o7"
},
{
"__type__": "cc.AudioSource",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 22
},
"_enabled": true,
"_clip": {
"__uuid__": "f0680ae0-c079-45ef-abd7-9e63d90b982b"
},
"_volume": 1,
"_mute": false,
"_loop": false,
"_firstlyEnabled": true,
"playOnLoad": false,
"preload": false,
"_id": "dey05oKrBIspvsDa6pOIQz"
},
{
"__type__": "cc.Canvas",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 2
},
"_enabled": true,
"_designResolution": {
"__type__": "cc.Size",
"width": 1280,
"height": 720
},
"_fitWidth": true,
"_fitHeight": true,
"_id": "59Cd0ovbdF4byw5sbjJDx7"
},
{
"__type__": "cc.Widget",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 2
},
"_enabled": true,
"alignMode": 1,
"_target": null,
"_alignFlags": 45,
"_left": 0,
"_right": 0,
"_top": 0,
"_bottom": 0,
"_verticalCenter": 0,
"_horizontalCenter": 0,
"_isAbsLeft": true,
"_isAbsRight": true,
"_isAbsTop": true,
"_isAbsBottom": true,
"_isAbsHorizontalCenter": true,
"_isAbsVerticalCenter": true,
"_originalWidth": 0,
"_originalHeight": 0,
"_id": "29zXboiXFBKoIV4PQ2liTe"
},
{
"__type__": "408a6f4ZfpM8Yzyg+IOGg/V",
"_name": "",
"_objFlags": 0,
"node": {
"__id__": 2
},
"_enabled": true,
"_id": "eaTVUpqahPfZeO9+sUI7RP"
}
]
\ No newline at end of file
import { asyncDelay, onHomeworkFinish } from "../script/util";
import { MyCocosSceneComponent } from "../script/MyCocosSceneComponent";
const { ccclass, property } = cc._decorator;
@ccclass
export default class SceneComponent extends MyCocosSceneComponent {
addPreloadImage() {
// TODO 根据自己的配置预加载图片资源
this._imageResList.push({ url: this.data.pic_url });
this._imageResList.push({ url: this.data.pic_url_2 });
}
addPreloadAudio() {
// TODO 根据自己的配置预加载音频资源
this._audioResList.push({ url: this.data.audio_url });
}
addPreloadAnima() {
}
onLoadEnd() {
// TODO 加载完成后的逻辑写在这里, 下面的代码仅供参考
this.initData();
this.initView();
this.initListener();
}
_cantouch = null;
initData() {
// 所有全局变量 默认都是null
this._cantouch = true;
}
initView() {
this.initBg();
this.initPic();
this.initBtn();
this.initIcon();
}
initBg() {
const bgNode = cc.find('Canvas/bg');
bgNode.scale = this._mapScaleMax;
}
pic1 = null;
pic2 = null;
initPic() {
const canvas = cc.find('Canvas');
const maxW = canvas.width * 0.7;
this.getSprNodeByUrl(this.data.pic_url, (sprNode) => {
const picNode1 = sprNode;
picNode1.scale = maxW / picNode1.width;
picNode1.baseX = picNode1.x;
canvas.addChild(picNode1);
this.pic1 = picNode1;
const labelNode = new cc.Node();
labelNode.color = cc.Color.YELLOW;
const label = labelNode.addComponent(cc.Label);
label.string = this.data.text;
label.fontSize = 60;
label.lineHeight = 60;
label.font = cc.find('Canvas/res/font/BRLNSDB').getComponent('cc.Label').font;
picNode1.addChild(labelNode);
});
this.getSprNodeByUrl(this.data.pic_url_2, (sprNode) => {
const picNode2 = sprNode;
picNode2.scale = maxW / picNode2.width;
canvas.addChild(picNode2);
picNode2.x = canvas.width;
picNode2.baseX = picNode2.x;
this.pic2 = picNode2;
const labelNode = new cc.Node();
const label = labelNode.addComponent(cc.RichText);
const size = 60
label.font = cc.find('Canvas/res/font/BRLNSDB').getComponent(cc.Label).font;
label.string = `<outline color=#751e00 width=4><size=${size}><color=#ffffff>${this.data.text}</color></size></outline>`
label.lineHeight = size;
picNode2.addChild(labelNode);
});
}
initIcon() {
const iconNode = this.getSprNode('icon');
iconNode.zIndex = 5;
iconNode.anchorX = 1;
iconNode.anchorY = 1;
iconNode.parent = cc.find('Canvas');
iconNode.x = iconNode.parent.width / 2 - 10;
iconNode.y = iconNode.parent.height / 2 - 10;
iconNode.on(cc.Node.EventType.TOUCH_START, () => {
this.playAudioByUrl(this.data.audio_url);
})
}
curPage = null;
initBtn() {
this.curPage = 0;
const bottomPart = cc.find('Canvas/bottomPart');
bottomPart.zIndex = 5; // 提高层级
bottomPart.x = bottomPart.parent.width / 2;
bottomPart.y = -bottomPart.parent.height / 2;
const leftBtnNode = bottomPart.getChildByName('btn_left');
//节点中添加了button组件 则可以添加click事件监听
leftBtnNode.on('click', () => {
if (!this._cantouch) {
return;
}
if (this.curPage == 0) {
return;
}
this.curPage = 0
this.leftMove();
this.playLocalAudio('btn');
})
const rightBtnNode = bottomPart.getChildByName('btn_right');
//节点中添加了button组件 则可以添加click事件监听
rightBtnNode.on('click', () => {
if (!this._cantouch) {
return;
}
if (this.curPage == 1) {
return;
}
this.curPage = 1
this.rightMove();
// 游戏结束时需要调用这个方法通知系统作业完成
onHomeworkFinish();
this.playLocalAudio('btn');
})
}
leftMove() {
this._cantouch = false;
const len = this.pic1.parent.width;
cc.tween(this.pic1)
.to(1, { x: this.pic1.baseX }, { easing: 'cubicInOut' })
.start();
cc.tween(this.pic2)
.to(1, { x: this.pic2.baseX }, { easing: 'cubicInOut' })
.call(() => {
this._cantouch = true;
})
.start();
}
rightMove() {
this._cantouch = false;
const len = this.pic1.parent.width;
cc.tween(this.pic1)
.to(1, { x: this.pic1.baseX - len }, { easing: 'cubicInOut' })
.start();
cc.tween(this.pic2)
.to(1, { x: this.pic2.baseX - len }, { easing: 'cubicInOut' })
.call(() => {
this._cantouch = true;
})
.start();
}
// update (dt) {},
initListener() {
}
playLocalAudio(audioName) {
const audio = cc.find(`Canvas/res/audio/${audioName}`).getComponent(cc.AudioSource);
return new Promise((resolve, reject) => {
const id = cc.audioEngine.playEffect(audio.clip, false);
cc.audioEngine.setFinishCallback(id, () => {
resolve(id);
});
})
}
}
import { defaultData } from "../script/defaultData";
export class MyCocosSceneComponent extends cc.Component {
// 生命周期 onLoad
onLoad() {
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;
cc.director['_scene'].width = frameSize.width;
cc.director['_scene'].height = frameSize.height;
}
data = null;
// 生命周期 start
start() {
if (window && (<any>window).courseware && (<any>window).courseware.getData) {
(<any>window).courseware.getData((data) => {
this.log('data:' + data);
this.data = data || this.getDefaultData();
this.data = JSON.parse(JSON.stringify(this.data));
this.preloadItem();
})
} else {
this.data = this.getDefaultData();
this.preloadItem();
}
}
getDefaultData() {
return defaultData;
}
preloadItem() {
this.addPreloadImage();
this.addPreloadAudio();
this.addPreloadAnima();
this.preload();
}
addPreloadImage() {
}
addPreloadAudio() {
}
addPreloadAnima() {
}
preload() {
const preloadArr = this._imageResList.concat(this._audioResList).concat(this._animaResList);
cc.assetManager.loadAny(preloadArr, null, null, (err, data) => {
if (window && window["air"]) {
// window["air"].onCourseInScreen = (next) => {
// window["air"].isCourseInScreen = true;
// this.onLoadEnd();
// next();
// };
this.onLoadEnd();
window["air"].hideAirClassLoading();
} else {
this.onLoadEnd();
}
cc.debug.setDisplayStats(false);
});
}
log (str) {
const node = cc.find('middleLayer');
if(node){
node.getComponent('middleLayer').log(str);
}else{
cc.log(str);
}
}
onLoadEnd() {
}
// ------------------------------------------------
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);
}
})
}
playAudioByUrl(audio_url, cb = null) {
if (audio_url) {
cc.assetManager.loadRemote(audio_url, (err, audioClip) => {
const audioId = cc.audioEngine.play(audioClip, false, 0.8);
if (cb) {
cc.audioEngine.setFinishCallback(audioId, () => {
cb();
});
}
});
}else{
cb && cb();
}
}
}
\ No newline at end of file
export const defaultData = {
"pic_url": "http://staging-teach.cdn.ireadabc.com/ed94332a503c31e0908bd4c6923a2665.png",
"pic_url_2": "http://staging-teach.cdn.ireadabc.com/5fb60317ade0195d35ad8034d5370a7f.png",
"text": "This is a test label.",
"audio_url": "http://staging-teach.cdn.ireadabc.com/f47f1d7b5c160fe1c59500d180346240.mp3"
}
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
define("ace/ext/menu_tools/overlay_page",["require","exports","module","ace/lib/dom"],function(e,t,n){"use strict";var r=e("../../lib/dom"),i="#ace_settingsmenu, #kbshortcutmenu {background-color: #F7F7F7;color: black;box-shadow: -5px 4px 5px rgba(126, 126, 126, 0.55);padding: 1em 0.5em 2em 1em;overflow: auto;position: absolute;margin: 0;bottom: 0;right: 0;top: 0;z-index: 9991;cursor: default;}.ace_dark #ace_settingsmenu, .ace_dark #kbshortcutmenu {box-shadow: -20px 10px 25px rgba(126, 126, 126, 0.25);background-color: rgba(255, 255, 255, 0.6);color: black;}.ace_optionsMenuEntry:hover {background-color: rgba(100, 100, 100, 0.1);transition: all 0.3s}.ace_closeButton {background: rgba(245, 146, 146, 0.5);border: 1px solid #F48A8A;border-radius: 50%;padding: 7px;position: absolute;right: -8px;top: -8px;z-index: 100000;}.ace_closeButton{background: rgba(245, 146, 146, 0.9);}.ace_optionsMenuKey {color: darkslateblue;font-weight: bold;}.ace_optionsMenuCommand {color: darkcyan;font-weight: normal;}.ace_optionsMenuEntry input, .ace_optionsMenuEntry button {vertical-align: middle;}.ace_optionsMenuEntry button[ace_selected_button=true] {background: #e7e7e7;box-shadow: 1px 0px 2px 0px #adadad inset;border-color: #adadad;}.ace_optionsMenuEntry button {background: white;border: 1px solid lightgray;margin: 0px;}.ace_optionsMenuEntry button:hover{background: #f0f0f0;}";r.importCssString(i,"settings_menu.css",!1),n.exports.overlayPage=function(t,n,r){function o(e){e.keyCode===27&&u()}function u(){if(!i)return;document.removeEventListener("keydown",o),i.parentNode.removeChild(i),t&&t.focus(),i=null,r&&r()}function a(e){s=e,e&&(i.style.pointerEvents="none",n.style.pointerEvents="auto")}var i=document.createElement("div"),s=!1;return i.style.cssText="margin: 0; padding: 0; position: fixed; top:0; bottom:0; left:0; right:0;z-index: 9990; "+(t?"background-color: rgba(0, 0, 0, 0.3);":""),i.addEventListener("click",function(e){s||u()}),document.addEventListener("keydown",o),n.addEventListener("click",function(e){e.stopPropagation()}),i.appendChild(n),document.body.appendChild(i),t&&t.blur(),{close:u,setIgnoreFocusOut:a}}}),define("ace/ext/modelist",["require","exports","module"],function(e,t,n){"use strict";function i(e){var t=a.text,n=e.split(/[\/\\]/).pop();for(var i=0;i<r.length;i++)if(r[i].supportsFile(n)){t=r[i];break}return t}var r=[],s=function(e,t,n){this.name=e,this.caption=t,this.mode="ace/mode/"+e,this.extensions=n;var r;/\^/.test(n)?r=n.replace(/\|(\^)?/g,function(e,t){return"$|"+(t?"^":"^.*\\.")})+"$":r="^.*\\.("+n+")$",this.extRe=new RegExp(r,"gi")};s.prototype.supportsFile=function(e){return e.match(this.extRe)};var o={ABAP:["abap"],ABC:["abc"],ActionScript:["as"],ADA:["ada|adb"],Alda:["alda"],Apache_Conf:["^htaccess|^htgroups|^htpasswd|^conf|htaccess|htgroups|htpasswd"],Apex:["apex|cls|trigger|tgr"],AQL:["aql"],AsciiDoc:["asciidoc|adoc"],ASL:["dsl|asl|asl.json"],Assembly_x86:["asm|a"],AutoHotKey:["ahk"],BatchFile:["bat|cmd"],C_Cpp:["cpp|c|cc|cxx|h|hh|hpp|ino"],C9Search:["c9search_results"],Cirru:["cirru|cr"],Clojure:["clj|cljs"],Cobol:["CBL|COB"],coffee:["coffee|cf|cson|^Cakefile"],ColdFusion:["cfm"],Crystal:["cr"],CSharp:["cs"],Csound_Document:["csd"],Csound_Orchestra:["orc"],Csound_Score:["sco"],CSS:["css"],Curly:["curly"],D:["d|di"],Dart:["dart"],Diff:["diff|patch"],Dockerfile:["^Dockerfile"],Dot:["dot"],Drools:["drl"],Edifact:["edi"],Eiffel:["e|ge"],EJS:["ejs"],Elixir:["ex|exs"],Elm:["elm"],Erlang:["erl|hrl"],Forth:["frt|fs|ldr|fth|4th"],Fortran:["f|f90"],FSharp:["fsi|fs|ml|mli|fsx|fsscript"],FSL:["fsl"],FTL:["ftl"],Gcode:["gcode"],Gherkin:["feature"],Gitignore:["^.gitignore"],Glsl:["glsl|frag|vert"],Gobstones:["gbs"],golang:["go"],GraphQLSchema:["gql"],Groovy:["groovy"],HAML:["haml"],Handlebars:["hbs|handlebars|tpl|mustache"],Haskell:["hs"],Haskell_Cabal:["cabal"],haXe:["hx"],Hjson:["hjson"],HTML:["html|htm|xhtml|vue|we|wpy"],HTML_Elixir:["eex|html.eex"],HTML_Ruby:["erb|rhtml|html.erb"],INI:["ini|conf|cfg|prefs"],Io:["io"],Jack:["jack"],Jade:["jade|pug"],Java:["java"],JavaScript:["js|jsm|jsx"],JSON:["json"],JSON5:["json5"],JSONiq:["jq"],JSP:["jsp"],JSSM:["jssm|jssm_state"],JSX:["jsx"],Julia:["jl"],Kotlin:["kt|kts"],LaTeX:["tex|latex|ltx|bib"],Latte:["latte"],LESS:["less"],Liquid:["liquid"],Lisp:["lisp"],LiveScript:["ls"],LogiQL:["logic|lql"],LSL:["lsl"],Lua:["lua"],LuaPage:["lp"],Lucene:["lucene"],Makefile:["^Makefile|^GNUmakefile|^makefile|^OCamlMakefile|make"],Markdown:["md|markdown"],Mask:["mask"],MATLAB:["matlab"],Maze:["mz"],MediaWiki:["wiki|mediawiki"],MEL:["mel"],MIPS:["s|asm"],MIXAL:["mixal"],MUSHCode:["mc|mush"],MySQL:["mysql"],Nginx:["nginx|conf"],Nim:["nim"],Nix:["nix"],NSIS:["nsi|nsh"],Nunjucks:["nunjucks|nunjs|nj|njk"],ObjectiveC:["m|mm"],OCaml:["ml|mli"],Pascal:["pas|p"],Perl:["pl|pm"],pgSQL:["pgsql"],PHP:["php|inc|phtml|shtml|php3|php4|php5|phps|phpt|aw|ctp|module"],PHP_Laravel_blade:["blade.php"],Pig:["pig"],Powershell:["ps1"],Praat:["praat|praatscript|psc|proc"],Prisma:["prisma"],Prolog:["plg|prolog"],Properties:["properties"],Protobuf:["proto"],Puppet:["epp|pp"],Python:["py"],QML:["qml"],R:["r"],Raku:["raku|rakumod|rakutest|p6|pl6|pm6"],Razor:["cshtml|asp"],RDoc:["Rd"],Red:["red|reds"],RHTML:["Rhtml"],RST:["rst"],Ruby:["rb|ru|gemspec|rake|^Guardfile|^Rakefile|^Gemfile"],Rust:["rs"],SASS:["sass"],SCAD:["scad"],Scala:["scala|sbt"],Scheme:["scm|sm|rkt|oak|scheme"],Scrypt:["scrypt"],SCSS:["scss"],SH:["sh|bash|^.bashrc"],SJS:["sjs"],Slim:["slim|skim"],Smarty:["smarty|tpl"],Smithy:["smithy"],snippets:["snippets"],Soy_Template:["soy"],Space:["space"],SQL:["sql"],SQLServer:["sqlserver"],Stylus:["styl|stylus"],SVG:["svg"],Swift:["swift"],Tcl:["tcl"],Terraform:["tf","tfvars","terragrunt"],Tex:["tex"],Text:["txt"],Textile:["textile"],Toml:["toml"],TSX:["tsx"],Twig:["twig|swig"],Typescript:["ts|typescript|str"],Vala:["vala"],VBScript:["vbs|vb"],Velocity:["vm"],Verilog:["v|vh|sv|svh"],VHDL:["vhd|vhdl"],Visualforce:["vfp|component|page"],Wollok:["wlk|wpgm|wtest"],XML:["xml|rdf|rss|wsdl|xslt|atom|mathml|mml|xul|xbl|xaml"],XQuery:["xq"],YAML:["yaml|yml"],Zeek:["zeek|bro"],Django:["html"]},u={ObjectiveC:"Objective-C",CSharp:"C#",golang:"Go",C_Cpp:"C and C++",Csound_Document:"Csound Document",Csound_Orchestra:"Csound",Csound_Score:"Csound Score",coffee:"CoffeeScript",HTML_Ruby:"HTML (Ruby)",HTML_Elixir:"HTML (Elixir)",FTL:"FreeMarker",PHP_Laravel_blade:"PHP (Blade Template)",Perl6:"Perl 6",AutoHotKey:"AutoHotkey / AutoIt"},a={};for(var f in o){var l=o[f],c=(u[f]||f).replace(/_/g," "),h=f.toLowerCase(),p=new s(h,c,l[0]);a[h]=p,r.push(p)}n.exports={getModeForPath:i,modes:r,modesByName:a}}),define("ace/ext/themelist",["require","exports","module"],function(e,t,n){"use strict";var r=[["Chrome"],["Clouds"],["Crimson Editor"],["Dawn"],["Dreamweaver"],["Eclipse"],["GitHub"],["IPlastic"],["Solarized Light"],["TextMate"],["Tomorrow"],["Xcode"],["Kuroir"],["KatzenMilch"],["SQL Server","sqlserver","light"],["Ambiance","ambiance","dark"],["Chaos","chaos","dark"],["Clouds Midnight","clouds_midnight","dark"],["Dracula","","dark"],["Cobalt","cobalt","dark"],["Gruvbox","gruvbox","dark"],["Green on Black","gob","dark"],["idle Fingers","idle_fingers","dark"],["krTheme","kr_theme","dark"],["Merbivore","merbivore","dark"],["Merbivore Soft","merbivore_soft","dark"],["Mono Industrial","mono_industrial","dark"],["Monokai","monokai","dark"],["Nord Dark","nord_dark","dark"],["One Dark","one_dark","dark"],["Pastel on dark","pastel_on_dark","dark"],["Solarized Dark","solarized_dark","dark"],["Terminal","terminal","dark"],["Tomorrow Night","tomorrow_night","dark"],["Tomorrow Night Blue","tomorrow_night_blue","dark"],["Tomorrow Night Bright","tomorrow_night_bright","dark"],["Tomorrow Night 80s","tomorrow_night_eighties","dark"],["Twilight","twilight","dark"],["Vibrant Ink","vibrant_ink","dark"]];t.themesByName={},t.themes=r.map(function(e){var n=e[1]||e[0].replace(/ /g,"_").toLowerCase(),r={caption:e[0],theme:"ace/theme/"+n,isDark:e[2]=="dark",name:n};return t.themesByName[n]=r,r})}),define("ace/ext/options",["require","exports","module","ace/ext/menu_tools/overlay_page","ace/lib/dom","ace/lib/oop","ace/config","ace/lib/event_emitter","ace/ext/modelist","ace/ext/themelist"],function(e,t,n){"use strict";e("./menu_tools/overlay_page");var r=e("../lib/dom"),i=e("../lib/oop"),s=e("../config"),o=e("../lib/event_emitter").EventEmitter,u=r.buildDom,a=e("./modelist"),f=e("./themelist"),l={Bright:[],Dark:[]};f.themes.forEach(function(e){l[e.isDark?"Dark":"Bright"].push({caption:e.caption,value:e.theme})});var c=a.modes.map(function(e){return{caption:e.caption,value:e.mode}}),h={Main:{Mode:{path:"mode",type:"select",items:c},Theme:{path:"theme",type:"select",items:l},Keybinding:{type:"buttonBar",path:"keyboardHandler",items:[{caption:"Ace",value:null},{caption:"Vim",value:"ace/keyboard/vim"},{caption:"Emacs",value:"ace/keyboard/emacs"},{caption:"Sublime",value:"ace/keyboard/sublime"},{caption:"VSCode",value:"ace/keyboard/vscode"}]},"Font Size":{path:"fontSize",type:"number",defaultValue:12,defaults:[{caption:"12px",value:12},{caption:"24px",value:24}]},"Soft Wrap":{type:"buttonBar",path:"wrap",items:[{caption:"Off",value:"off"},{caption:"View",value:"free"},{caption:"margin",value:"printMargin"},{caption:"40",value:"40"}]},"Cursor Style":{path:"cursorStyle",items:[{caption:"Ace",value:"ace"},{caption:"Slim",value:"slim"},{caption:"Smooth",value:"smooth"},{caption:"Smooth And Slim",value:"smooth slim"},{caption:"Wide",value:"wide"}]},Folding:{path:"foldStyle",items:[{caption:"Manual",value:"manual"},{caption:"Mark begin",value:"markbegin"},{caption:"Mark begin and end",value:"markbeginend"}]},"Soft Tabs":[{path:"useSoftTabs"},{ariaLabel:"Tab Size",path:"tabSize",type:"number",values:[2,3,4,8,16]}],Overscroll:{type:"buttonBar",path:"scrollPastEnd",items:[{caption:"None",value:0},{caption:"Half",value:.5},{caption:"Full",value:1}]}},More:{"Atomic soft tabs":{path:"navigateWithinSoftTabs"},"Enable Behaviours":{path:"behavioursEnabled"},"Wrap with quotes":{path:"wrapBehavioursEnabled"},"Enable Auto Indent":{path:"enableAutoIndent"},"Full Line Selection":{type:"checkbox",values:"text|line",path:"selectionStyle"},"Highlight Active Line":{path:"highlightActiveLine"},"Show Invisibles":{path:"showInvisibles"},"Show Indent Guides":{path:"displayIndentGuides"},"Persistent HScrollbar":{path:"hScrollBarAlwaysVisible"},"Persistent VScrollbar":{path:"vScrollBarAlwaysVisible"},"Animate scrolling":{path:"animatedScroll"},"Show Gutter":{path:"showGutter"},"Show Line Numbers":{path:"showLineNumbers"},"Relative Line Numbers":{path:"relativeLineNumbers"},"Fixed Gutter Width":{path:"fixedWidthGutter"},"Show Print Margin":[{path:"showPrintMargin"},{ariaLabel:"Print Margin",type:"number",path:"printMarginColumn"}],"Indented Soft Wrap":{path:"indentedSoftWrap"},"Highlight selected word":{path:"highlightSelectedWord"},"Fade Fold Widgets":{path:"fadeFoldWidgets"},"Use textarea for IME":{path:"useTextareaForIME"},"Merge Undo Deltas":{path:"mergeUndoDeltas",items:[{caption:"Always",value:"always"},{caption:"Never",value:"false"},{caption:"Timed",value:"true"}]},"Elastic Tabstops":{path:"useElasticTabstops"},"Incremental Search":{path:"useIncrementalSearch"},"Read-only":{path:"readOnly"},"Copy without selection":{path:"copyWithEmptySelection"},"Live Autocompletion":{path:"enableLiveAutocompletion"}}},p=function(e,t){this.editor=e,this.container=t||document.createElement("div"),this.groups=[],this.options={}};(function(){i.implement(this,o),this.add=function(e){e.Main&&i.mixin(h.Main,e.Main),e.More&&i.mixin(h.More,e.More)},this.render=function(){this.container.innerHTML="",u(["table",{role:"presentation",id:"controls"},this.renderOptionGroup(h.Main),["tr",null,["td",{colspan:2},["table",{role:"presentation",id:"more-controls"},this.renderOptionGroup(h.More)]]],["tr",null,["td",{colspan:2},"version "+s.version]]],this.container)},this.renderOptionGroup=function(e){return Object.keys(e).map(function(t,n){var r=e[t];return r.position||(r.position=n/1e4),r.label||(r.label=t),r}).sort(function(e,t){return e.position-t.position}).map(function(e){return this.renderOption(e.label,e)},this)},this.renderOptionControl=function(e,t){var n=this;if(Array.isArray(t))return t.map(function(t){return n.renderOptionControl(e,t)});var r,i=n.getOption(t);t.values&&t.type!="checkbox"&&(typeof t.values=="string"&&(t.values=t.values.split("|")),t.items=t.values.map(function(e){return{value:e,name:e}}));if(t.type=="buttonBar")r=["div",{role:"group","aria-labelledby":t.path+"-label"},t.items.map(function(e){return["button",{value:e.value,ace_selected_button:i==e.value,"aria-pressed":i==e.value,onclick:function(){n.setOption(t,e.value);var r=this.parentNode.querySelectorAll("[ace_selected_button]");for(var i=0;i<r.length;i++)r[i].removeAttribute("ace_selected_button"),r[i].setAttribute("aria-pressed",!1);this.setAttribute("ace_selected_button",!0),this.setAttribute("aria-pressed",!0)}},e.desc||e.caption||e.name]})];else if(t.type=="number")r=["input",{type:"number",value:i||t.defaultValue,style:"width:3em",oninput:function(){n.setOption(t,parseInt(this.value))}}],t.ariaLabel?r[1]["aria-label"]=t.ariaLabel:r[1].id=e,t.defaults&&(r=[r,t.defaults.map(function(e){return["button",{onclick:function(){var t=this.parentNode.firstChild;t.value=e.value,t.oninput()}},e.caption]})]);else if(t.items){var s=function(e){return e.map(function(e){return["option",{value:e.value||e.name},e.desc||e.caption||e.name]})},o=Array.isArray(t.items)?s(t.items):Object.keys(t.items).map(function(e){return["optgroup",{label:e},s(t.items[e])]});r=["select",{id:e,value:i,onchange:function(){n.setOption(t,this.value)}},o]}else typeof t.values=="string"&&(t.values=t.values.split("|")),t.values&&(i=i==t.values[1]),r=["input",{type:"checkbox",id:e,checked:i||null,onchange:function(){var e=this.checked;t.values&&(e=t.values[e?1:0]),n.setOption(t,e)}}],t.type=="checkedNumber"&&(r=[r,[]]);return r},this.renderOption=function(e,t){if(t.path&&!t.onchange&&!this.editor.$options[t.path])return;var n=Array.isArray(t)?t[0].path:t.path;this.options[n]=t;var r="-"+n,i=n+"-label",s=this.renderOptionControl(r,t);return["tr",{"class":"ace_optionsMenuEntry"},["td",["label",{"for":r,id:i},e]],["td",s]]},this.setOption=function(e,t){typeof e=="string"&&(e=this.options[e]),t=="false"&&(t=!1),t=="true"&&(t=!0),t=="null"&&(t=null),t=="undefined"&&(t=undefined),typeof t=="string"&&parseFloat(t).toString()==t&&(t=parseFloat(t)),e.onchange?e.onchange(t):e.path&&this.editor.setOption(e.path,t),this._signal("setOption",{name:e.path,value:t})},this.getOption=function(e){return e.getValue?e.getValue():this.editor.getOption(e.path)}}).call(p.prototype),t.OptionPanel=p}); (function() {
window.require(["ace/ext/options"], function(m) {
if (typeof module == "object" && typeof exports == "object" && module) {
module.exports = m;
}
});
})();
\ No newline at end of file
define("ace/mode/doc_comment_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text_highlight_rules").TextHighlightRules,s=function(){this.$rules={start:[{token:"comment.doc.tag",regex:"@[\\w\\d_]+"},s.getTagRule(),{defaultToken:"comment.doc",caseInsensitive:!0}]}};r.inherits(s,i),s.getTagRule=function(e){return{token:"comment.doc.tag.storage.type",regex:"\\b(?:TODO|FIXME|XXX|HACK)\\b"}},s.getStartRule=function(e){return{token:"comment.doc",regex:"\\/\\*(?=\\*)",next:e}},s.getEndRule=function(e){return{token:"comment.doc",regex:"\\*\\/",next:e}},t.DocCommentHighlightRules=s}),define("ace/mode/javascript_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/doc_comment_highlight_rules","ace/mode/text_highlight_rules"],function(e,t,n){"use strict";function a(){var e=o.replace("\\d","\\d\\-"),t={onMatch:function(e,t,n){var r=e.charAt(1)=="/"?2:1;if(r==1)t!=this.nextState?n.unshift(this.next,this.nextState,0):n.unshift(this.next),n[2]++;else if(r==2&&t==this.nextState){n[1]--;if(!n[1]||n[1]<0)n.shift(),n.shift()}return[{type:"meta.tag.punctuation."+(r==1?"":"end-")+"tag-open.xml",value:e.slice(0,r)},{type:"meta.tag.tag-name.xml",value:e.substr(r)}]},regex:"</?"+e+"",next:"jsxAttributes",nextState:"jsx"};this.$rules.start.unshift(t);var n={regex:"{",token:"paren.quasi.start",push:"start"};this.$rules.jsx=[n,t,{include:"reference"},{defaultToken:"string"}],this.$rules.jsxAttributes=[{token:"meta.tag.punctuation.tag-close.xml",regex:"/?>",onMatch:function(e,t,n){return t==n[0]&&n.shift(),e.length==2&&(n[0]==this.nextState&&n[1]--,(!n[1]||n[1]<0)&&n.splice(0,2)),this.next=n[0]||"start",[{type:this.token,value:e}]},nextState:"jsx"},n,f("jsxAttributes"),{token:"entity.other.attribute-name.xml",regex:e},{token:"keyword.operator.attribute-equals.xml",regex:"="},{token:"text.tag-whitespace.xml",regex:"\\s+"},{token:"string.attribute-value.xml",regex:"'",stateName:"jsx_attr_q",push:[{token:"string.attribute-value.xml",regex:"'",next:"pop"},{include:"reference"},{defaultToken:"string.attribute-value.xml"}]},{token:"string.attribute-value.xml",regex:'"',stateName:"jsx_attr_qq",push:[{token:"string.attribute-value.xml",regex:'"',next:"pop"},{include:"reference"},{defaultToken:"string.attribute-value.xml"}]},t],this.$rules.reference=[{token:"constant.language.escape.reference.xml",regex:"(?:&#[0-9]+;)|(?:&#x[0-9a-fA-F]+;)|(?:&[a-zA-Z0-9_:\\.-]+;)"}]}function f(e){return[{token:"comment",regex:/\/\*/,next:[i.getTagRule(),{token:"comment",regex:"\\*\\/",next:e||"pop"},{defaultToken:"comment",caseInsensitive:!0}]},{token:"comment",regex:"\\/\\/",next:[i.getTagRule(),{token:"comment",regex:"$|^",next:e||"pop"},{defaultToken:"comment",caseInsensitive:!0}]}]}var r=e("../lib/oop"),i=e("./doc_comment_highlight_rules").DocCommentHighlightRules,s=e("./text_highlight_rules").TextHighlightRules,o="[a-zA-Z\\$_\u00a1-\uffff][a-zA-Z\\d\\$_\u00a1-\uffff]*",u=function(e){var t=this.createKeywordMapper({"variable.language":"Array|Boolean|Date|Function|Iterator|Number|Object|RegExp|String|Proxy|Namespace|QName|XML|XMLList|ArrayBuffer|Float32Array|Float64Array|Int16Array|Int32Array|Int8Array|Uint16Array|Uint32Array|Uint8Array|Uint8ClampedArray|Error|EvalError|InternalError|RangeError|ReferenceError|StopIteration|SyntaxError|TypeError|URIError|decodeURI|decodeURIComponent|encodeURI|encodeURIComponent|eval|isFinite|isNaN|parseFloat|parseInt|JSON|Math|this|arguments|prototype|window|document",keyword:"const|yield|import|get|set|async|await|break|case|catch|continue|default|delete|do|else|finally|for|function|if|in|of|instanceof|new|return|switch|throw|try|typeof|let|var|while|with|debugger|__parent__|__count__|escape|unescape|with|__proto__|class|enum|extends|super|export|implements|private|public|interface|package|protected|static","storage.type":"const|let|var|function","constant.language":"null|Infinity|NaN|undefined","support.function":"alert","constant.language.boolean":"true|false"},"identifier"),n="case|do|else|finally|in|instanceof|return|throw|try|typeof|yield|void",r="\\\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|u{[0-9a-fA-F]{1,6}}|[0-2][0-7]{0,2}|3[0-7][0-7]?|[4-7][0-7]?|.)";this.$rules={no_regex:[i.getStartRule("doc-start"),f("no_regex"),{token:"string",regex:"'(?=.)",next:"qstring"},{token:"string",regex:'"(?=.)',next:"qqstring"},{token:"constant.numeric",regex:/0(?:[xX][0-9a-fA-F]+|[oO][0-7]+|[bB][01]+)\b/},{token:"constant.numeric",regex:/(?:\d\d*(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+\b)?/},{token:["storage.type","punctuation.operator","support.function","punctuation.operator","entity.name.function","text","keyword.operator"],regex:"("+o+")(\\.)(prototype)(\\.)("+o+")(\\s*)(=)",next:"function_arguments"},{token:["storage.type","punctuation.operator","entity.name.function","text","keyword.operator","text","storage.type","text","paren.lparen"],regex:"("+o+")(\\.)("+o+")(\\s*)(=)(\\s*)(function)(\\s*)(\\()",next:"function_arguments"},{token:["entity.name.function","text","keyword.operator","text","storage.type","text","paren.lparen"],regex:"("+o+")(\\s*)(=)(\\s*)(function)(\\s*)(\\()",next:"function_arguments"},{token:["storage.type","punctuation.operator","entity.name.function","text","keyword.operator","text","storage.type","text","entity.name.function","text","paren.lparen"],regex:"("+o+")(\\.)("+o+")(\\s*)(=)(\\s*)(function)(\\s+)(\\w+)(\\s*)(\\()",next:"function_arguments"},{token:["storage.type","text","entity.name.function","text","paren.lparen"],regex:"(function)(\\s+)("+o+")(\\s*)(\\()",next:"function_arguments"},{token:["entity.name.function","text","punctuation.operator","text","storage.type","text","paren.lparen"],regex:"("+o+")(\\s*)(:)(\\s*)(function)(\\s*)(\\()",next:"function_arguments"},{token:["text","text","storage.type","text","paren.lparen"],regex:"(:)(\\s*)(function)(\\s*)(\\()",next:"function_arguments"},{token:"keyword",regex:"from(?=\\s*('|\"))"},{token:"keyword",regex:"(?:"+n+")\\b",next:"start"},{token:["support.constant"],regex:/that\b/},{token:["storage.type","punctuation.operator","support.function.firebug"],regex:/(console)(\.)(warn|info|log|error|time|trace|timeEnd|assert)\b/},{token:t,regex:o},{token:"punctuation.operator",regex:/[.](?![.])/,next:"property"},{token:"storage.type",regex:/=>/,next:"start"},{token:"keyword.operator",regex:/--|\+\+|\.{3}|===|==|=|!=|!==|<+=?|>+=?|!|&&|\|\||\?:|[!$%&*+\-~\/^]=?/,next:"start"},{token:"punctuation.operator",regex:/[?:,;.]/,next:"start"},{token:"paren.lparen",regex:/[\[({]/,next:"start"},{token:"paren.rparen",regex:/[\])}]/},{token:"comment",regex:/^#!.*$/}],property:[{token:"text",regex:"\\s+"},{token:["storage.type","punctuation.operator","entity.name.function","text","keyword.operator","text","storage.type","text","entity.name.function","text","paren.lparen"],regex:"("+o+")(\\.)("+o+")(\\s*)(=)(\\s*)(function)(?:(\\s+)(\\w+))?(\\s*)(\\()",next:"function_arguments"},{token:"punctuation.operator",regex:/[.](?![.])/},{token:"support.function",regex:/(s(?:h(?:ift|ow(?:Mod(?:elessDialog|alDialog)|Help))|croll(?:X|By(?:Pages|Lines)?|Y|To)?|t(?:op|rike)|i(?:n|zeToContent|debar|gnText)|ort|u(?:p|b(?:str(?:ing)?)?)|pli(?:ce|t)|e(?:nd|t(?:Re(?:sizable|questHeader)|M(?:i(?:nutes|lliseconds)|onth)|Seconds|Ho(?:tKeys|urs)|Year|Cursor|Time(?:out)?|Interval|ZOptions|Date|UTC(?:M(?:i(?:nutes|lliseconds)|onth)|Seconds|Hours|Date|FullYear)|FullYear|Active)|arch)|qrt|lice|avePreferences|mall)|h(?:ome|andleEvent)|navigate|c(?:har(?:CodeAt|At)|o(?:s|n(?:cat|textual|firm)|mpile)|eil|lear(?:Timeout|Interval)?|a(?:ptureEvents|ll)|reate(?:StyleSheet|Popup|EventObject))|t(?:o(?:GMTString|S(?:tring|ource)|U(?:TCString|pperCase)|Lo(?:caleString|werCase))|est|a(?:n|int(?:Enabled)?))|i(?:s(?:NaN|Finite)|ndexOf|talics)|d(?:isableExternalCapture|ump|etachEvent)|u(?:n(?:shift|taint|escape|watch)|pdateCommands)|j(?:oin|avaEnabled)|p(?:o(?:p|w)|ush|lugins.refresh|a(?:ddings|rse(?:Int|Float)?)|r(?:int|ompt|eference))|e(?:scape|nableExternalCapture|val|lementFromPoint|x(?:p|ec(?:Script|Command)?))|valueOf|UTC|queryCommand(?:State|Indeterm|Enabled|Value)|f(?:i(?:nd|le(?:ModifiedDate|Size|CreatedDate|UpdatedDate)|xed)|o(?:nt(?:size|color)|rward)|loor|romCharCode)|watch|l(?:ink|o(?:ad|g)|astIndexOf)|a(?:sin|nchor|cos|t(?:tachEvent|ob|an(?:2)?)|pply|lert|b(?:s|ort))|r(?:ou(?:nd|teEvents)|e(?:size(?:By|To)|calc|turnValue|place|verse|l(?:oad|ease(?:Capture|Events)))|andom)|g(?:o|et(?:ResponseHeader|M(?:i(?:nutes|lliseconds)|onth)|Se(?:conds|lection)|Hours|Year|Time(?:zoneOffset)?|Da(?:y|te)|UTC(?:M(?:i(?:nutes|lliseconds)|onth)|Seconds|Hours|Da(?:y|te)|FullYear)|FullYear|A(?:ttention|llResponseHeaders)))|m(?:in|ove(?:B(?:y|elow)|To(?:Absolute)?|Above)|ergeAttributes|a(?:tch|rgins|x))|b(?:toa|ig|o(?:ld|rderWidths)|link|ack))\b(?=\()/},{token:"support.function.dom",regex:/(s(?:ub(?:stringData|mit)|plitText|e(?:t(?:NamedItem|Attribute(?:Node)?)|lect))|has(?:ChildNodes|Feature)|namedItem|c(?:l(?:ick|o(?:se|neNode))|reate(?:C(?:omment|DATASection|aption)|T(?:Head|extNode|Foot)|DocumentFragment|ProcessingInstruction|E(?:ntityReference|lement)|Attribute))|tabIndex|i(?:nsert(?:Row|Before|Cell|Data)|tem)|open|delete(?:Row|C(?:ell|aption)|T(?:Head|Foot)|Data)|focus|write(?:ln)?|a(?:dd|ppend(?:Child|Data))|re(?:set|place(?:Child|Data)|move(?:NamedItem|Child|Attribute(?:Node)?)?)|get(?:NamedItem|Element(?:sBy(?:Name|TagName|ClassName)|ById)|Attribute(?:Node)?)|blur)\b(?=\()/},{token:"support.constant",regex:/(s(?:ystemLanguage|cr(?:ipts|ollbars|een(?:X|Y|Top|Left))|t(?:yle(?:Sheets)?|atus(?:Text|bar)?)|ibling(?:Below|Above)|ource|uffixes|e(?:curity(?:Policy)?|l(?:ection|f)))|h(?:istory|ost(?:name)?|as(?:h|Focus))|y|X(?:MLDocument|SLDocument)|n(?:ext|ame(?:space(?:s|URI)|Prop))|M(?:IN_VALUE|AX_VALUE)|c(?:haracterSet|o(?:n(?:structor|trollers)|okieEnabled|lorDepth|mp(?:onents|lete))|urrent|puClass|l(?:i(?:p(?:boardData)?|entInformation)|osed|asses)|alle(?:e|r)|rypto)|t(?:o(?:olbar|p)|ext(?:Transform|Indent|Decoration|Align)|ags)|SQRT(?:1_2|2)|i(?:n(?:ner(?:Height|Width)|put)|ds|gnoreCase)|zIndex|o(?:scpu|n(?:readystatechange|Line)|uter(?:Height|Width)|p(?:sProfile|ener)|ffscreenBuffering)|NEGATIVE_INFINITY|d(?:i(?:splay|alog(?:Height|Top|Width|Left|Arguments)|rectories)|e(?:scription|fault(?:Status|Ch(?:ecked|arset)|View)))|u(?:ser(?:Profile|Language|Agent)|n(?:iqueID|defined)|pdateInterval)|_content|p(?:ixelDepth|ort|ersonalbar|kcs11|l(?:ugins|atform)|a(?:thname|dding(?:Right|Bottom|Top|Left)|rent(?:Window|Layer)?|ge(?:X(?:Offset)?|Y(?:Offset)?))|r(?:o(?:to(?:col|type)|duct(?:Sub)?|mpter)|e(?:vious|fix)))|e(?:n(?:coding|abledPlugin)|x(?:ternal|pando)|mbeds)|v(?:isibility|endor(?:Sub)?|Linkcolor)|URLUnencoded|P(?:I|OSITIVE_INFINITY)|f(?:ilename|o(?:nt(?:Size|Family|Weight)|rmName)|rame(?:s|Element)|gColor)|E|whiteSpace|l(?:i(?:stStyleType|n(?:eHeight|kColor))|o(?:ca(?:tion(?:bar)?|lName)|wsrc)|e(?:ngth|ft(?:Context)?)|a(?:st(?:M(?:odified|atch)|Index|Paren)|yer(?:s|X)|nguage))|a(?:pp(?:MinorVersion|Name|Co(?:deName|re)|Version)|vail(?:Height|Top|Width|Left)|ll|r(?:ity|guments)|Linkcolor|bove)|r(?:ight(?:Context)?|e(?:sponse(?:XML|Text)|adyState))|global|x|m(?:imeTypes|ultiline|enubar|argin(?:Right|Bottom|Top|Left))|L(?:N(?:10|2)|OG(?:10E|2E))|b(?:o(?:ttom|rder(?:Width|RightWidth|BottomWidth|Style|Color|TopWidth|LeftWidth))|ufferDepth|elow|ackground(?:Color|Image)))\b/},{token:"identifier",regex:o},{regex:"",token:"empty",next:"no_regex"}],start:[i.getStartRule("doc-start"),f("start"),{token:"string.regexp",regex:"\\/",next:"regex"},{token:"text",regex:"\\s+|^$",next:"start"},{token:"empty",regex:"",next:"no_regex"}],regex:[{token:"regexp.keyword.operator",regex:"\\\\(?:u[\\da-fA-F]{4}|x[\\da-fA-F]{2}|.)"},{token:"string.regexp",regex:"/[sxngimy]*",next:"no_regex"},{token:"invalid",regex:/\{\d+\b,?\d*\}[+*]|[+*$^?][+*]|[$^][?]|\?{3,}/},{token:"constant.language.escape",regex:/\(\?[:=!]|\)|\{\d+\b,?\d*\}|[+*]\?|[()$^+*?.]/},{token:"constant.language.delimiter",regex:/\|/},{token:"constant.language.escape",regex:/\[\^?/,next:"regex_character_class"},{token:"empty",regex:"$",next:"no_regex"},{defaultToken:"string.regexp"}],regex_character_class:[{token:"regexp.charclass.keyword.operator",regex:"\\\\(?:u[\\da-fA-F]{4}|x[\\da-fA-F]{2}|.)"},{token:"constant.language.escape",regex:"]",next:"regex"},{token:"constant.language.escape",regex:"-"},{token:"empty",regex:"$",next:"no_regex"},{defaultToken:"string.regexp.charachterclass"}],function_arguments:[{token:"variable.parameter",regex:o},{token:"punctuation.operator",regex:"[, ]+"},{token:"punctuation.operator",regex:"$"},{token:"empty",regex:"",next:"no_regex"}],qqstring:[{token:"constant.language.escape",regex:r},{token:"string",regex:"\\\\$",consumeLineEnd:!0},{token:"string",regex:'"|$',next:"no_regex"},{defaultToken:"string"}],qstring:[{token:"constant.language.escape",regex:r},{token:"string",regex:"\\\\$",consumeLineEnd:!0},{token:"string",regex:"'|$",next:"no_regex"},{defaultToken:"string"}]};if(!e||!e.noES6)this.$rules.no_regex.unshift({regex:"[{}]",onMatch:function(e,t,n){this.next=e=="{"?this.nextState:"";if(e=="{"&&n.length)n.unshift("start",t);else if(e=="}"&&n.length){n.shift(),this.next=n.shift();if(this.next.indexOf("string")!=-1||this.next.indexOf("jsx")!=-1)return"paren.quasi.end"}return e=="{"?"paren.lparen":"paren.rparen"},nextState:"start"},{token:"string.quasi.start",regex:/`/,push:[{token:"constant.language.escape",regex:r},{token:"paren.quasi.start",regex:/\${/,push:"start"},{token:"string.quasi.end",regex:/`/,next:"pop"},{defaultToken:"string.quasi"}]}),(!e||e.jsx!=0)&&a.call(this);this.embedRules(i,"doc-",[i.getEndRule("no_regex")]),this.normalizeRules()};r.inherits(u,s),t.JavaScriptHighlightRules=u}),define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"],function(e,t,n){"use strict";var r=e("../range").Range,i=function(){};(function(){this.checkOutdent=function(e,t){return/^\s+$/.test(e)?/^\s*\}/.test(t):!1},this.autoOutdent=function(e,t){var n=e.getLine(t),i=n.match(/^(\s*\})/);if(!i)return 0;var s=i[1].length,o=e.findMatchingBracket({row:t,column:s});if(!o||o.row==t)return 0;var u=this.$getIndent(e.getLine(o.row));e.replace(new r(t,0,t,s-1),u)},this.$getIndent=function(e){return e.match(/^\s*/)[0]}}).call(i.prototype),t.MatchingBraceOutdent=i}),define("ace/mode/folding/cstyle",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(e,t,n){"use strict";var r=e("../../lib/oop"),i=e("../../range").Range,s=e("./fold_mode").FoldMode,o=t.FoldMode=function(e){e&&(this.foldingStartMarker=new RegExp(this.foldingStartMarker.source.replace(/\|[^|]*?$/,"|"+e.start)),this.foldingStopMarker=new RegExp(this.foldingStopMarker.source.replace(/\|[^|]*?$/,"|"+e.end)))};r.inherits(o,s),function(){this.foldingStartMarker=/([\{\[\(])[^\}\]\)]*$|^\s*(\/\*)/,this.foldingStopMarker=/^[^\[\{\(]*([\}\]\)])|^[\s\*]*(\*\/)/,this.singleLineBlockCommentRe=/^\s*(\/\*).*\*\/\s*$/,this.tripleStarBlockCommentRe=/^\s*(\/\*\*\*).*\*\/\s*$/,this.startRegionRe=/^\s*(\/\*|\/\/)#?region\b/,this._getFoldWidgetBase=this.getFoldWidget,this.getFoldWidget=function(e,t,n){var r=e.getLine(n);if(this.singleLineBlockCommentRe.test(r)&&!this.startRegionRe.test(r)&&!this.tripleStarBlockCommentRe.test(r))return"";var i=this._getFoldWidgetBase(e,t,n);return!i&&this.startRegionRe.test(r)?"start":i},this.getFoldWidgetRange=function(e,t,n,r){var i=e.getLine(n);if(this.startRegionRe.test(i))return this.getCommentRegionBlock(e,i,n);var s=i.match(this.foldingStartMarker);if(s){var o=s.index;if(s[1])return this.openingBracketBlock(e,s[1],n,o);var u=e.getCommentFoldRange(n,o+s[0].length,1);return u&&!u.isMultiLine()&&(r?u=this.getSectionRange(e,n):t!="all"&&(u=null)),u}if(t==="markbegin")return;var s=i.match(this.foldingStopMarker);if(s){var o=s.index+s[0].length;return s[1]?this.closingBracketBlock(e,s[1],n,o):e.getCommentFoldRange(n,o,-1)}},this.getSectionRange=function(e,t){var n=e.getLine(t),r=n.search(/\S/),s=t,o=n.length;t+=1;var u=t,a=e.getLength();while(++t<a){n=e.getLine(t);var f=n.search(/\S/);if(f===-1)continue;if(r>f)break;var l=this.getFoldWidgetRange(e,"all",t);if(l){if(l.start.row<=s)break;if(l.isMultiLine())t=l.end.row;else if(r==f)break}u=t}return new i(s,o,u,e.getLine(u).length)},this.getCommentRegionBlock=function(e,t,n){var r=t.search(/\s*$/),s=e.getLength(),o=n,u=/^\s*(?:\/\*|\/\/|--)#?(end)?region\b/,a=1;while(++n<s){t=e.getLine(n);var f=u.exec(t);if(!f)continue;f[1]?a--:a++;if(!a)break}var l=n;if(l>o)return new i(o,r,l,t.length)}}.call(o.prototype)}),define("ace/mode/javascript",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/javascript_highlight_rules","ace/mode/matching_brace_outdent","ace/worker/worker_client","ace/mode/behaviour/cstyle","ace/mode/folding/cstyle"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text").Mode,s=e("./javascript_highlight_rules").JavaScriptHighlightRules,o=e("./matching_brace_outdent").MatchingBraceOutdent,u=e("../worker/worker_client").WorkerClient,a=e("./behaviour/cstyle").CstyleBehaviour,f=e("./folding/cstyle").FoldMode,l=function(){this.HighlightRules=s,this.$outdent=new o,this.$behaviour=new a,this.foldingRules=new f};r.inherits(l,i),function(){this.lineCommentStart="//",this.blockComment={start:"/*",end:"*/"},this.$quotes={'"':'"',"'":"'","`":"`"},this.getNextLineIndent=function(e,t,n){var r=this.$getIndent(t),i=this.getTokenizer().getLineTokens(t,e),s=i.tokens,o=i.state;if(s.length&&s[s.length-1].type=="comment")return r;if(e=="start"||e=="no_regex"){var u=t.match(/^.*(?:\bcase\b.*:|[\{\(\[])\s*$/);u&&(r+=n)}else if(e=="doc-start"){if(o=="start"||o=="no_regex")return"";var u=t.match(/^\s*(\/?)\*/);u&&(u[1]&&(r+=" "),r+="* ")}return r},this.checkOutdent=function(e,t,n){return this.$outdent.checkOutdent(t,n)},this.autoOutdent=function(e,t,n){this.$outdent.autoOutdent(t,n)},this.createWorker=function(e){var t=new u(["ace"],"ace/mode/javascript_worker","JavaScriptWorker");return t.attachToDocument(e.getDocument()),t.on("annotate",function(t){e.setAnnotations(t.data)}),t.on("terminate",function(){e.clearAnnotations()}),t},this.$id="ace/mode/javascript",this.snippetFileId="ace/snippets/javascript"}.call(l.prototype),t.Mode=l}); (function() {
window.require(["ace/mode/javascript"], function(m) {
if (typeof module == "object" && typeof exports == "object" && module) {
module.exports = m;
}
});
})();
\ No newline at end of file
define("ace/mode/json_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text_highlight_rules").TextHighlightRules,s=function(){this.$rules={start:[{token:"variable",regex:'["](?:(?:\\\\.)|(?:[^"\\\\]))*?["]\\s*(?=:)'},{token:"string",regex:'"',next:"string"},{token:"constant.numeric",regex:"0[xX][0-9a-fA-F]+\\b"},{token:"constant.numeric",regex:"[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b"},{token:"constant.language.boolean",regex:"(?:true|false)\\b"},{token:"text",regex:"['](?:(?:\\\\.)|(?:[^'\\\\]))*?[']"},{token:"comment",regex:"\\/\\/.*$"},{token:"comment.start",regex:"\\/\\*",next:"comment"},{token:"paren.lparen",regex:"[[({]"},{token:"paren.rparen",regex:"[\\])}]"},{token:"text",regex:"\\s+"}],string:[{token:"constant.language.escape",regex:/\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|["\\\/bfnrt])/},{token:"string",regex:'"|$',next:"start"},{defaultToken:"string"}],comment:[{token:"comment.end",regex:"\\*\\/",next:"start"},{defaultToken:"comment"}]}};r.inherits(s,i),t.JsonHighlightRules=s}),define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"],function(e,t,n){"use strict";var r=e("../range").Range,i=function(){};(function(){this.checkOutdent=function(e,t){return/^\s+$/.test(e)?/^\s*\}/.test(t):!1},this.autoOutdent=function(e,t){var n=e.getLine(t),i=n.match(/^(\s*\})/);if(!i)return 0;var s=i[1].length,o=e.findMatchingBracket({row:t,column:s});if(!o||o.row==t)return 0;var u=this.$getIndent(e.getLine(o.row));e.replace(new r(t,0,t,s-1),u)},this.$getIndent=function(e){return e.match(/^\s*/)[0]}}).call(i.prototype),t.MatchingBraceOutdent=i}),define("ace/mode/folding/cstyle",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(e,t,n){"use strict";var r=e("../../lib/oop"),i=e("../../range").Range,s=e("./fold_mode").FoldMode,o=t.FoldMode=function(e){e&&(this.foldingStartMarker=new RegExp(this.foldingStartMarker.source.replace(/\|[^|]*?$/,"|"+e.start)),this.foldingStopMarker=new RegExp(this.foldingStopMarker.source.replace(/\|[^|]*?$/,"|"+e.end)))};r.inherits(o,s),function(){this.foldingStartMarker=/([\{\[\(])[^\}\]\)]*$|^\s*(\/\*)/,this.foldingStopMarker=/^[^\[\{\(]*([\}\]\)])|^[\s\*]*(\*\/)/,this.singleLineBlockCommentRe=/^\s*(\/\*).*\*\/\s*$/,this.tripleStarBlockCommentRe=/^\s*(\/\*\*\*).*\*\/\s*$/,this.startRegionRe=/^\s*(\/\*|\/\/)#?region\b/,this._getFoldWidgetBase=this.getFoldWidget,this.getFoldWidget=function(e,t,n){var r=e.getLine(n);if(this.singleLineBlockCommentRe.test(r)&&!this.startRegionRe.test(r)&&!this.tripleStarBlockCommentRe.test(r))return"";var i=this._getFoldWidgetBase(e,t,n);return!i&&this.startRegionRe.test(r)?"start":i},this.getFoldWidgetRange=function(e,t,n,r){var i=e.getLine(n);if(this.startRegionRe.test(i))return this.getCommentRegionBlock(e,i,n);var s=i.match(this.foldingStartMarker);if(s){var o=s.index;if(s[1])return this.openingBracketBlock(e,s[1],n,o);var u=e.getCommentFoldRange(n,o+s[0].length,1);return u&&!u.isMultiLine()&&(r?u=this.getSectionRange(e,n):t!="all"&&(u=null)),u}if(t==="markbegin")return;var s=i.match(this.foldingStopMarker);if(s){var o=s.index+s[0].length;return s[1]?this.closingBracketBlock(e,s[1],n,o):e.getCommentFoldRange(n,o,-1)}},this.getSectionRange=function(e,t){var n=e.getLine(t),r=n.search(/\S/),s=t,o=n.length;t+=1;var u=t,a=e.getLength();while(++t<a){n=e.getLine(t);var f=n.search(/\S/);if(f===-1)continue;if(r>f)break;var l=this.getFoldWidgetRange(e,"all",t);if(l){if(l.start.row<=s)break;if(l.isMultiLine())t=l.end.row;else if(r==f)break}u=t}return new i(s,o,u,e.getLine(u).length)},this.getCommentRegionBlock=function(e,t,n){var r=t.search(/\s*$/),s=e.getLength(),o=n,u=/^\s*(?:\/\*|\/\/|--)#?(end)?region\b/,a=1;while(++n<s){t=e.getLine(n);var f=u.exec(t);if(!f)continue;f[1]?a--:a++;if(!a)break}var l=n;if(l>o)return new i(o,r,l,t.length)}}.call(o.prototype)}),define("ace/mode/json",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/json_highlight_rules","ace/mode/matching_brace_outdent","ace/mode/behaviour/cstyle","ace/mode/folding/cstyle","ace/worker/worker_client"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text").Mode,s=e("./json_highlight_rules").JsonHighlightRules,o=e("./matching_brace_outdent").MatchingBraceOutdent,u=e("./behaviour/cstyle").CstyleBehaviour,a=e("./folding/cstyle").FoldMode,f=e("../worker/worker_client").WorkerClient,l=function(){this.HighlightRules=s,this.$outdent=new o,this.$behaviour=new u,this.foldingRules=new a};r.inherits(l,i),function(){this.lineCommentStart="//",this.blockComment={start:"/*",end:"*/"},this.getNextLineIndent=function(e,t,n){var r=this.$getIndent(t);if(e=="start"){var i=t.match(/^.*[\{\(\[]\s*$/);i&&(r+=n)}return r},this.checkOutdent=function(e,t,n){return this.$outdent.checkOutdent(t,n)},this.autoOutdent=function(e,t,n){this.$outdent.autoOutdent(t,n)},this.createWorker=function(e){var t=new f(["ace"],"ace/mode/json_worker","JsonWorker");return t.attachToDocument(e.getDocument()),t.on("annotate",function(t){e.setAnnotations(t.data)}),t.on("terminate",function(){e.clearAnnotations()}),t},this.$id="ace/mode/json"}.call(l.prototype),t.Mode=l}); (function() {
window.require(["ace/mode/json"], function(m) {
if (typeof module == "object" && typeof exports == "object" && module) {
module.exports = m;
}
});
})();
\ No newline at end of file
define("ace/mode/json_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/text_highlight_rules"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text_highlight_rules").TextHighlightRules,s=function(){this.$rules={start:[{token:"variable",regex:'["](?:(?:\\\\.)|(?:[^"\\\\]))*?["]\\s*(?=:)'},{token:"string",regex:'"',next:"string"},{token:"constant.numeric",regex:"0[xX][0-9a-fA-F]+\\b"},{token:"constant.numeric",regex:"[+-]?\\d+(?:(?:\\.\\d*)?(?:[eE][+-]?\\d+)?)?\\b"},{token:"constant.language.boolean",regex:"(?:true|false)\\b"},{token:"text",regex:"['](?:(?:\\\\.)|(?:[^'\\\\]))*?[']"},{token:"comment",regex:"\\/\\/.*$"},{token:"comment.start",regex:"\\/\\*",next:"comment"},{token:"paren.lparen",regex:"[[({]"},{token:"paren.rparen",regex:"[\\])}]"},{token:"text",regex:"\\s+"}],string:[{token:"constant.language.escape",regex:/\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|["\\\/bfnrt])/},{token:"string",regex:'"|$',next:"start"},{defaultToken:"string"}],comment:[{token:"comment.end",regex:"\\*\\/",next:"start"},{defaultToken:"comment"}]}};r.inherits(s,i),t.JsonHighlightRules=s}),define("ace/mode/json5_highlight_rules",["require","exports","module","ace/lib/oop","ace/mode/json_highlight_rules"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./json_highlight_rules").JsonHighlightRules,s=function(){i.call(this);var e=[{token:"variable",regex:/[a-zA-Z$_\u00a1-\uffff][\w$\u00a1-\uffff]*\s*(?=:)/},{token:"variable",regex:/['](?:(?:\\.)|(?:[^'\\]))*?[']\s*(?=:)/},{token:"constant.language.boolean",regex:/(?:null)\b/},{token:"string",regex:/'/,next:[{token:"constant.language.escape",regex:/\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|["\/bfnrt]|$)/,consumeLineEnd:!0},{token:"string",regex:/'|$/,next:"start"},{defaultToken:"string"}]},{token:"string",regex:/"(?![^"]*":)/,next:[{token:"constant.language.escape",regex:/\\(?:x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4}|["\/bfnrt]|$)/,consumeLineEnd:!0},{token:"string",regex:/"|$/,next:"start"},{defaultToken:"string"}]},{token:"constant.numeric",regex:/[+-]?(?:Infinity|NaN)\b/}];for(var t in this.$rules)this.$rules[t].unshift.apply(this.$rules[t],e);this.normalizeRules()};r.inherits(s,i),t.Json5HighlightRules=s}),define("ace/mode/matching_brace_outdent",["require","exports","module","ace/range"],function(e,t,n){"use strict";var r=e("../range").Range,i=function(){};(function(){this.checkOutdent=function(e,t){return/^\s+$/.test(e)?/^\s*\}/.test(t):!1},this.autoOutdent=function(e,t){var n=e.getLine(t),i=n.match(/^(\s*\})/);if(!i)return 0;var s=i[1].length,o=e.findMatchingBracket({row:t,column:s});if(!o||o.row==t)return 0;var u=this.$getIndent(e.getLine(o.row));e.replace(new r(t,0,t,s-1),u)},this.$getIndent=function(e){return e.match(/^\s*/)[0]}}).call(i.prototype),t.MatchingBraceOutdent=i}),define("ace/mode/folding/cstyle",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(e,t,n){"use strict";var r=e("../../lib/oop"),i=e("../../range").Range,s=e("./fold_mode").FoldMode,o=t.FoldMode=function(e){e&&(this.foldingStartMarker=new RegExp(this.foldingStartMarker.source.replace(/\|[^|]*?$/,"|"+e.start)),this.foldingStopMarker=new RegExp(this.foldingStopMarker.source.replace(/\|[^|]*?$/,"|"+e.end)))};r.inherits(o,s),function(){this.foldingStartMarker=/([\{\[\(])[^\}\]\)]*$|^\s*(\/\*)/,this.foldingStopMarker=/^[^\[\{\(]*([\}\]\)])|^[\s\*]*(\*\/)/,this.singleLineBlockCommentRe=/^\s*(\/\*).*\*\/\s*$/,this.tripleStarBlockCommentRe=/^\s*(\/\*\*\*).*\*\/\s*$/,this.startRegionRe=/^\s*(\/\*|\/\/)#?region\b/,this._getFoldWidgetBase=this.getFoldWidget,this.getFoldWidget=function(e,t,n){var r=e.getLine(n);if(this.singleLineBlockCommentRe.test(r)&&!this.startRegionRe.test(r)&&!this.tripleStarBlockCommentRe.test(r))return"";var i=this._getFoldWidgetBase(e,t,n);return!i&&this.startRegionRe.test(r)?"start":i},this.getFoldWidgetRange=function(e,t,n,r){var i=e.getLine(n);if(this.startRegionRe.test(i))return this.getCommentRegionBlock(e,i,n);var s=i.match(this.foldingStartMarker);if(s){var o=s.index;if(s[1])return this.openingBracketBlock(e,s[1],n,o);var u=e.getCommentFoldRange(n,o+s[0].length,1);return u&&!u.isMultiLine()&&(r?u=this.getSectionRange(e,n):t!="all"&&(u=null)),u}if(t==="markbegin")return;var s=i.match(this.foldingStopMarker);if(s){var o=s.index+s[0].length;return s[1]?this.closingBracketBlock(e,s[1],n,o):e.getCommentFoldRange(n,o,-1)}},this.getSectionRange=function(e,t){var n=e.getLine(t),r=n.search(/\S/),s=t,o=n.length;t+=1;var u=t,a=e.getLength();while(++t<a){n=e.getLine(t);var f=n.search(/\S/);if(f===-1)continue;if(r>f)break;var l=this.getFoldWidgetRange(e,"all",t);if(l){if(l.start.row<=s)break;if(l.isMultiLine())t=l.end.row;else if(r==f)break}u=t}return new i(s,o,u,e.getLine(u).length)},this.getCommentRegionBlock=function(e,t,n){var r=t.search(/\s*$/),s=e.getLength(),o=n,u=/^\s*(?:\/\*|\/\/|--)#?(end)?region\b/,a=1;while(++n<s){t=e.getLine(n);var f=u.exec(t);if(!f)continue;f[1]?a--:a++;if(!a)break}var l=n;if(l>o)return new i(o,r,l,t.length)}}.call(o.prototype)}),define("ace/mode/json5",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/json5_highlight_rules","ace/mode/matching_brace_outdent","ace/mode/behaviour/cstyle","ace/mode/folding/cstyle"],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("./text").Mode,s=e("./json5_highlight_rules").Json5HighlightRules,o=e("./matching_brace_outdent").MatchingBraceOutdent,u=e("./behaviour/cstyle").CstyleBehaviour,a=e("./folding/cstyle").FoldMode,f=function(){this.HighlightRules=s,this.$outdent=new o,this.$behaviour=new u,this.foldingRules=new a};r.inherits(f,i),function(){this.lineCommentStart="//",this.blockComment={start:"/*",end:"*/"},this.checkOutdent=function(e,t,n){return this.$outdent.checkOutdent(t,n)},this.autoOutdent=function(e,t,n){this.$outdent.autoOutdent(t,n)},this.$id="ace/mode/json5"}.call(f.prototype),t.Mode=f}); (function() {
window.require(["ace/mode/json5"], function(m) {
if (typeof module == "object" && typeof exports == "object" && module) {
module.exports = m;
}
});
})();
\ No newline at end of file
define("ace/snippets/javascript",["require","exports","module"],function(e,t,n){"use strict";t.snippetText='# Prototype\nsnippet proto\n ${1:class_name}.prototype.${2:method_name} = function(${3:first_argument}) {\n ${4:// body...}\n };\n# Function\nsnippet fun\n function ${1?:function_name}(${2:argument}) {\n ${3:// body...}\n }\n# Anonymous Function\nregex /((=)\\s*|(:)\\s*|(\\()|\\b)/f/(\\))?/\nsnippet f\n function${M1?: ${1:functionName}}($2) {\n ${0:$TM_SELECTED_TEXT}\n }${M2?;}${M3?,}${M4?)}\n# Immediate function\ntrigger \\(?f\\(\nendTrigger \\)?\nsnippet f(\n (function(${1}) {\n ${0:${TM_SELECTED_TEXT:/* code */}}\n }(${1}));\n# if\nsnippet if\n if (${1:true}) {\n ${0}\n }\n# if ... else\nsnippet ife\n if (${1:true}) {\n ${2}\n } else {\n ${0}\n }\n# tertiary conditional\nsnippet ter\n ${1:/* condition */} ? ${2:a} : ${3:b}\n# switch\nsnippet switch\n switch (${1:expression}) {\n case \'${3:case}\':\n ${4:// code}\n break;\n ${5}\n default:\n ${2:// code}\n }\n# case\nsnippet case\n case \'${1:case}\':\n ${2:// code}\n break;\n ${3}\n\n# while (...) {...}\nsnippet wh\n while (${1:/* condition */}) {\n ${0:/* code */}\n }\n# try\nsnippet try\n try {\n ${0:/* code */}\n } catch (e) {}\n# do...while\nsnippet do\n do {\n ${2:/* code */}\n } while (${1:/* condition */});\n# Object Method\nsnippet :f\nregex /([,{[])|^\\s*/:f/\n ${1:method_name}: function(${2:attribute}) {\n ${0}\n }${3:,}\n# setTimeout function\nsnippet setTimeout\nregex /\\b/st|timeout|setTimeo?u?t?/\n setTimeout(function() {${3:$TM_SELECTED_TEXT}}, ${1:10});\n# Get Elements\nsnippet gett\n getElementsBy${1:TagName}(\'${2}\')${3}\n# Get Element\nsnippet get\n getElementBy${1:Id}(\'${2}\')${3}\n# console.log (Firebug)\nsnippet cl\n console.log(${1});\n# return\nsnippet ret\n return ${1:result}\n# for (property in object ) { ... }\nsnippet fori\n for (var ${1:prop} in ${2:Things}) {\n ${0:$2[$1]}\n }\n# hasOwnProperty\nsnippet has\n hasOwnProperty(${1})\n# docstring\nsnippet /**\n /**\n * ${1:description}\n *\n */\nsnippet @par\nregex /^\\s*\\*\\s*/@(para?m?)?/\n @param {${1:type}} ${2:name} ${3:description}\nsnippet @ret\n @return {${1:type}} ${2:description}\n# JSON.parse\nsnippet jsonp\n JSON.parse(${1:jstr});\n# JSON.stringify\nsnippet jsons\n JSON.stringify(${1:object});\n# self-defining function\nsnippet sdf\n var ${1:function_name} = function(${2:argument}) {\n ${3:// initial code ...}\n\n $1 = function($2) {\n ${4:// main code}\n };\n }\n# singleton\nsnippet sing\n function ${1:Singleton} (${2:argument}) {\n // the cached instance\n var instance;\n\n // rewrite the constructor\n $1 = function $1($2) {\n return instance;\n };\n \n // carry over the prototype properties\n $1.prototype = this;\n\n // the instance\n instance = new $1();\n\n // reset the constructor pointer\n instance.constructor = $1;\n\n ${3:// code ...}\n\n return instance;\n }\n# class\nsnippet class\nregex /^\\s*/clas{0,2}/\n var ${1:class} = function(${20}) {\n $40$0\n };\n \n (function() {\n ${60:this.prop = ""}\n }).call(${1:class}.prototype);\n \n exports.${1:class} = ${1:class};\n# \nsnippet for-\n for (var ${1:i} = ${2:Things}.length; ${1:i}--; ) {\n ${0:${2:Things}[${1:i}];}\n }\n# for (...) {...}\nsnippet for\n for (var ${1:i} = 0; $1 < ${2:Things}.length; $1++) {\n ${3:$2[$1]}$0\n }\n# for (...) {...} (Improved Native For-Loop)\nsnippet forr\n for (var ${1:i} = ${2:Things}.length - 1; $1 >= 0; $1--) {\n ${3:$2[$1]}$0\n }\n\n\n#modules\nsnippet def\n define(function(require, exports, module) {\n "use strict";\n var ${1/.*\\///} = require("${1}");\n \n $TM_SELECTED_TEXT\n });\nsnippet req\nguard ^\\s*\n var ${1/.*\\///} = require("${1}");\n $0\nsnippet requ\nguard ^\\s*\n var ${1/.*\\/(.)/\\u$1/} = require("${1}").${1/.*\\/(.)/\\u$1/};\n $0\n',t.scope="javascript"}); (function() {
window.require(["ace/snippets/javascript"], function(m) {
if (typeof module == "object" && typeof exports == "object" && module) {
module.exports = m;
}
});
})();
\ No newline at end of file
; (function() {
window.require(["ace/snippets/json"], function(m) {
if (typeof module == "object" && typeof exports == "object" && module) {
module.exports = m;
}
});
})();
\ No newline at end of file
; (function() {
window.require(["ace/snippets/json5"], function(m) {
if (typeof module == "object" && typeof exports == "object" && module) {
module.exports = m;
}
});
})();
\ No newline at end of file
define("ace/theme/chrome",["require","exports","module","ace/lib/dom"],function(e,t,n){t.isDark=!1,t.cssClass="ace-chrome",t.cssText='.ace-chrome .ace_gutter {background: #ebebeb;color: #333;overflow : hidden;}.ace-chrome .ace_print-margin {width: 1px;background: #e8e8e8;}.ace-chrome {background-color: #FFFFFF;color: black;}.ace-chrome .ace_cursor {color: black;}.ace-chrome .ace_invisible {color: rgb(191, 191, 191);}.ace-chrome .ace_constant.ace_buildin {color: rgb(88, 72, 246);}.ace-chrome .ace_constant.ace_language {color: rgb(88, 92, 246);}.ace-chrome .ace_constant.ace_library {color: rgb(6, 150, 14);}.ace-chrome .ace_invalid {background-color: rgb(153, 0, 0);color: white;}.ace-chrome .ace_fold {}.ace-chrome .ace_support.ace_function {color: rgb(60, 76, 114);}.ace-chrome .ace_support.ace_constant {color: rgb(6, 150, 14);}.ace-chrome .ace_support.ace_type,.ace-chrome .ace_support.ace_class.ace-chrome .ace_support.ace_other {color: rgb(109, 121, 222);}.ace-chrome .ace_variable.ace_parameter {font-style:italic;color:#FD971F;}.ace-chrome .ace_keyword.ace_operator {color: rgb(104, 118, 135);}.ace-chrome .ace_comment {color: #236e24;}.ace-chrome .ace_comment.ace_doc {color: #236e24;}.ace-chrome .ace_comment.ace_doc.ace_tag {color: #236e24;}.ace-chrome .ace_constant.ace_numeric {color: rgb(0, 0, 205);}.ace-chrome .ace_variable {color: rgb(49, 132, 149);}.ace-chrome .ace_xml-pe {color: rgb(104, 104, 91);}.ace-chrome .ace_entity.ace_name.ace_function {color: #0000A2;}.ace-chrome .ace_heading {color: rgb(12, 7, 255);}.ace-chrome .ace_list {color:rgb(185, 6, 144);}.ace-chrome .ace_marker-layer .ace_selection {background: rgb(181, 213, 255);}.ace-chrome .ace_marker-layer .ace_step {background: rgb(252, 255, 0);}.ace-chrome .ace_marker-layer .ace_stack {background: rgb(164, 229, 101);}.ace-chrome .ace_marker-layer .ace_bracket {margin: -1px 0 0 -1px;border: 1px solid rgb(192, 192, 192);}.ace-chrome .ace_marker-layer .ace_active-line {background: rgba(0, 0, 0, 0.07);}.ace-chrome .ace_gutter-active-line {background-color : #dcdcdc;}.ace-chrome .ace_marker-layer .ace_selected-word {background: rgb(250, 250, 255);border: 1px solid rgb(200, 200, 250);}.ace-chrome .ace_storage,.ace-chrome .ace_keyword,.ace-chrome .ace_meta.ace_tag {color: rgb(147, 15, 128);}.ace-chrome .ace_string.ace_regex {color: rgb(255, 0, 0)}.ace-chrome .ace_string {color: #1A1AA6;}.ace-chrome .ace_entity.ace_other.ace_attribute-name {color: #994409;}.ace-chrome .ace_indent-guide {background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y;}';var r=e("../lib/dom");r.importCssString(t.cssText,t.cssClass,!1)}); (function() {
window.require(["ace/theme/chrome"], function(m) {
if (typeof module == "object" && typeof exports == "object" && module) {
module.exports = m;
}
});
})();
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
"no use strict";!function(e){function t(e,t){var n=e,r="";while(n){var i=t[n];if(typeof i=="string")return i+r;if(i)return i.location.replace(/\/*$/,"/")+(r||i.main||i.name);if(i===!1)return"";var s=n.lastIndexOf("/");if(s===-1)break;r=n.substr(s)+r,n=n.slice(0,s)}return e}if(typeof e.window!="undefined"&&e.document)return;if(e.require&&e.define)return;e.console||(e.console=function(){var e=Array.prototype.slice.call(arguments,0);postMessage({type:"log",data:e})},e.console.error=e.console.warn=e.console.log=e.console.trace=e.console),e.window=e,e.ace=e,e.onerror=function(e,t,n,r,i){postMessage({type:"error",data:{message:e,data:i.data,file:t,line:n,col:r,stack:i.stack}})},e.normalizeModule=function(t,n){if(n.indexOf("!")!==-1){var r=n.split("!");return e.normalizeModule(t,r[0])+"!"+e.normalizeModule(t,r[1])}if(n.charAt(0)=="."){var i=t.split("/").slice(0,-1).join("/");n=(i?i+"/":"")+n;while(n.indexOf(".")!==-1&&s!=n){var s=n;n=n.replace(/^\.\//,"").replace(/\/\.\//,"/").replace(/[^\/]+\/\.\.\//,"")}}return n},e.require=function(r,i){i||(i=r,r=null);if(!i.charAt)throw new Error("worker.js require() accepts only (parentId, id) as arguments");i=e.normalizeModule(r,i);var s=e.require.modules[i];if(s)return s.initialized||(s.initialized=!0,s.exports=s.factory().exports),s.exports;if(!e.require.tlns)return console.log("unable to load "+i);var o=t(i,e.require.tlns);return o.slice(-3)!=".js"&&(o+=".js"),e.require.id=i,e.require.modules[i]={},importScripts(o),e.require(r,i)},e.require.modules={},e.require.tlns={},e.define=function(t,n,r){arguments.length==2?(r=n,typeof t!="string"&&(n=t,t=e.require.id)):arguments.length==1&&(r=t,n=[],t=e.require.id);if(typeof r!="function"){e.require.modules[t]={exports:r,initialized:!0};return}n.length||(n=["require","exports","module"]);var i=function(n){return e.require(t,n)};e.require.modules[t]={exports:{},factory:function(){var e=this,t=r.apply(this,n.slice(0,r.length).map(function(t){switch(t){case"require":return i;case"exports":return e.exports;case"module":return e;default:return i(t)}}));return t&&(e.exports=t),e}}},e.define.amd={},require.tlns={},e.initBaseUrls=function(t){for(var n in t)require.tlns[n]=t[n]},e.initSender=function(){var n=e.require("ace/lib/event_emitter").EventEmitter,r=e.require("ace/lib/oop"),i=function(){};return function(){r.implement(this,n),this.callback=function(e,t){postMessage({type:"call",id:t,data:e})},this.emit=function(e,t){postMessage({type:"event",name:e,data:t})}}.call(i.prototype),new i};var n=e.main=null,r=e.sender=null;e.onmessage=function(t){var i=t.data;if(i.event&&r)r._signal(i.event,i.data);else if(i.command)if(n[i.command])n[i.command].apply(n,i.args);else{if(!e[i.command])throw new Error("Unknown command:"+i.command);e[i.command].apply(e,i.args)}else if(i.init){e.initBaseUrls(i.tlns),r=e.sender=e.initSender();var s=require(i.module)[i.classname];n=e.main=new s(r)}}}(this),define("ace/lib/oop",[],function(e,t,n){"use strict";t.inherits=function(e,t){e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}})},t.mixin=function(e,t){for(var n in t)e[n]=t[n];return e},t.implement=function(e,n){t.mixin(e,n)}}),define("ace/range",[],function(e,t,n){"use strict";var r=function(e,t){return e.row-t.row||e.column-t.column},i=function(e,t,n,r){this.start={row:e,column:t},this.end={row:n,column:r}};(function(){this.isEqual=function(e){return this.start.row===e.start.row&&this.end.row===e.end.row&&this.start.column===e.start.column&&this.end.column===e.end.column},this.toString=function(){return"Range: ["+this.start.row+"/"+this.start.column+"] -> ["+this.end.row+"/"+this.end.column+"]"},this.contains=function(e,t){return this.compare(e,t)==0},this.compareRange=function(e){var t,n=e.end,r=e.start;return t=this.compare(n.row,n.column),t==1?(t=this.compare(r.row,r.column),t==1?2:t==0?1:0):t==-1?-2:(t=this.compare(r.row,r.column),t==-1?-1:t==1?42:0)},this.comparePoint=function(e){return this.compare(e.row,e.column)},this.containsRange=function(e){return this.comparePoint(e.start)==0&&this.comparePoint(e.end)==0},this.intersects=function(e){var t=this.compareRange(e);return t==-1||t==0||t==1},this.isEnd=function(e,t){return this.end.row==e&&this.end.column==t},this.isStart=function(e,t){return this.start.row==e&&this.start.column==t},this.setStart=function(e,t){typeof e=="object"?(this.start.column=e.column,this.start.row=e.row):(this.start.row=e,this.start.column=t)},this.setEnd=function(e,t){typeof e=="object"?(this.end.column=e.column,this.end.row=e.row):(this.end.row=e,this.end.column=t)},this.inside=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)||this.isStart(e,t)?!1:!0:!1},this.insideStart=function(e,t){return this.compare(e,t)==0?this.isEnd(e,t)?!1:!0:!1},this.insideEnd=function(e,t){return this.compare(e,t)==0?this.isStart(e,t)?!1:!0:!1},this.compare=function(e,t){return!this.isMultiLine()&&e===this.start.row?t<this.start.column?-1:t>this.end.column?1:0:e<this.start.row?-1:e>this.end.row?1:this.start.row===e?t>=this.start.column?0:-1:this.end.row===e?t<=this.end.column?0:1:0},this.compareStart=function(e,t){return this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.compareEnd=function(e,t){return this.end.row==e&&this.end.column==t?1:this.compare(e,t)},this.compareInside=function(e,t){return this.end.row==e&&this.end.column==t?1:this.start.row==e&&this.start.column==t?-1:this.compare(e,t)},this.clipRows=function(e,t){if(this.end.row>t)var n={row:t+1,column:0};else if(this.end.row<e)var n={row:e,column:0};if(this.start.row>t)var r={row:t+1,column:0};else if(this.start.row<e)var r={row:e,column:0};return i.fromPoints(r||this.start,n||this.end)},this.extend=function(e,t){var n=this.compare(e,t);if(n==0)return this;if(n==-1)var r={row:e,column:t};else var s={row:e,column:t};return i.fromPoints(r||this.start,s||this.end)},this.isEmpty=function(){return this.start.row===this.end.row&&this.start.column===this.end.column},this.isMultiLine=function(){return this.start.row!==this.end.row},this.clone=function(){return i.fromPoints(this.start,this.end)},this.collapseRows=function(){return this.end.column==0?new i(this.start.row,0,Math.max(this.start.row,this.end.row-1),0):new i(this.start.row,0,this.end.row,0)},this.toScreenRange=function(e){var t=e.documentToScreenPosition(this.start),n=e.documentToScreenPosition(this.end);return new i(t.row,t.column,n.row,n.column)},this.moveBy=function(e,t){this.start.row+=e,this.start.column+=t,this.end.row+=e,this.end.column+=t}}).call(i.prototype),i.fromPoints=function(e,t){return new i(e.row,e.column,t.row,t.column)},i.comparePoints=r,i.comparePoints=function(e,t){return e.row-t.row||e.column-t.column},t.Range=i}),define("ace/apply_delta",[],function(e,t,n){"use strict";function r(e,t){throw console.log("Invalid Delta:",e),"Invalid Delta: "+t}function i(e,t){return t.row>=0&&t.row<e.length&&t.column>=0&&t.column<=e[t.row].length}function s(e,t){t.action!="insert"&&t.action!="remove"&&r(t,"delta.action must be 'insert' or 'remove'"),t.lines instanceof Array||r(t,"delta.lines must be an Array"),(!t.start||!t.end)&&r(t,"delta.start/end must be an present");var n=t.start;i(e,t.start)||r(t,"delta.start must be contained in document");var s=t.end;t.action=="remove"&&!i(e,s)&&r(t,"delta.end must contained in document for 'remove' actions");var o=s.row-n.row,u=s.column-(o==0?n.column:0);(o!=t.lines.length-1||t.lines[o].length!=u)&&r(t,"delta.range must match delta lines")}t.applyDelta=function(e,t,n){var r=t.start.row,i=t.start.column,s=e[r]||"";switch(t.action){case"insert":var o=t.lines;if(o.length===1)e[r]=s.substring(0,i)+t.lines[0]+s.substring(i);else{var u=[r,1].concat(t.lines);e.splice.apply(e,u),e[r]=s.substring(0,i)+e[r],e[r+t.lines.length-1]+=s.substring(i)}break;case"remove":var a=t.end.column,f=t.end.row;r===f?e[r]=s.substring(0,i)+s.substring(a):e.splice(r,f-r+1,s.substring(0,i)+e[f].substring(a))}}}),define("ace/lib/event_emitter",[],function(e,t,n){"use strict";var r={},i=function(){this.propagationStopped=!0},s=function(){this.defaultPrevented=!0};r._emit=r._dispatchEvent=function(e,t){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var n=this._eventRegistry[e]||[],r=this._defaultHandlers[e];if(!n.length&&!r)return;if(typeof t!="object"||!t)t={};t.type||(t.type=e),t.stopPropagation||(t.stopPropagation=i),t.preventDefault||(t.preventDefault=s),n=n.slice();for(var o=0;o<n.length;o++){n[o](t,this);if(t.propagationStopped)break}if(r&&!t.defaultPrevented)return r(t,this)},r._signal=function(e,t){var n=(this._eventRegistry||{})[e];if(!n)return;n=n.slice();for(var r=0;r<n.length;r++)n[r](t,this)},r.once=function(e,t){var n=this;this.on(e,function r(){n.off(e,r),t.apply(null,arguments)});if(!t)return new Promise(function(e){t=e})},r.setDefaultHandler=function(e,t){var n=this._defaultHandlers;n||(n=this._defaultHandlers={_disabled_:{}});if(n[e]){var r=n[e],i=n._disabled_[e];i||(n._disabled_[e]=i=[]),i.push(r);var s=i.indexOf(t);s!=-1&&i.splice(s,1)}n[e]=t},r.removeDefaultHandler=function(e,t){var n=this._defaultHandlers;if(!n)return;var r=n._disabled_[e];if(n[e]==t)r&&this.setDefaultHandler(e,r.pop());else if(r){var i=r.indexOf(t);i!=-1&&r.splice(i,1)}},r.on=r.addEventListener=function(e,t,n){this._eventRegistry=this._eventRegistry||{};var r=this._eventRegistry[e];return r||(r=this._eventRegistry[e]=[]),r.indexOf(t)==-1&&r[n?"unshift":"push"](t),t},r.off=r.removeListener=r.removeEventListener=function(e,t){this._eventRegistry=this._eventRegistry||{};var n=this._eventRegistry[e];if(!n)return;var r=n.indexOf(t);r!==-1&&n.splice(r,1)},r.removeAllListeners=function(e){e||(this._eventRegistry=this._defaultHandlers=undefined),this._eventRegistry&&(this._eventRegistry[e]=undefined),this._defaultHandlers&&(this._defaultHandlers[e]=undefined)},t.EventEmitter=r}),define("ace/anchor",[],function(e,t,n){"use strict";var r=e("./lib/oop"),i=e("./lib/event_emitter").EventEmitter,s=t.Anchor=function(e,t,n){this.$onChange=this.onChange.bind(this),this.attach(e),typeof n=="undefined"?this.setPosition(t.row,t.column):this.setPosition(t,n)};(function(){function e(e,t,n){var r=n?e.column<=t.column:e.column<t.column;return e.row<t.row||e.row==t.row&&r}function t(t,n,r){var i=t.action=="insert",s=(i?1:-1)*(t.end.row-t.start.row),o=(i?1:-1)*(t.end.column-t.start.column),u=t.start,a=i?u:t.end;return e(n,u,r)?{row:n.row,column:n.column}:e(a,n,!r)?{row:n.row+s,column:n.column+(n.row==a.row?o:0)}:{row:u.row,column:u.column}}r.implement(this,i),this.getPosition=function(){return this.$clipPositionToDocument(this.row,this.column)},this.getDocument=function(){return this.document},this.$insertRight=!1,this.onChange=function(e){if(e.start.row==e.end.row&&e.start.row!=this.row)return;if(e.start.row>this.row)return;var n=t(e,{row:this.row,column:this.column},this.$insertRight);this.setPosition(n.row,n.column,!0)},this.setPosition=function(e,t,n){var r;n?r={row:e,column:t}:r=this.$clipPositionToDocument(e,t);if(this.row==r.row&&this.column==r.column)return;var i={row:this.row,column:this.column};this.row=r.row,this.column=r.column,this._signal("change",{old:i,value:r})},this.detach=function(){this.document.off("change",this.$onChange)},this.attach=function(e){this.document=e||this.document,this.document.on("change",this.$onChange)},this.$clipPositionToDocument=function(e,t){var n={};return e>=this.document.getLength()?(n.row=Math.max(0,this.document.getLength()-1),n.column=this.document.getLine(n.row).length):e<0?(n.row=0,n.column=0):(n.row=e,n.column=Math.min(this.document.getLine(n.row).length,Math.max(0,t))),t<0&&(n.column=0),n}}).call(s.prototype)}),define("ace/document",[],function(e,t,n){"use strict";var r=e("./lib/oop"),i=e("./apply_delta").applyDelta,s=e("./lib/event_emitter").EventEmitter,o=e("./range").Range,u=e("./anchor").Anchor,a=function(e){this.$lines=[""],e.length===0?this.$lines=[""]:Array.isArray(e)?this.insertMergedLines({row:0,column:0},e):this.insert({row:0,column:0},e)};(function(){r.implement(this,s),this.setValue=function(e){var t=this.getLength()-1;this.remove(new o(0,0,t,this.getLine(t).length)),this.insert({row:0,column:0},e)},this.getValue=function(){return this.getAllLines().join(this.getNewLineCharacter())},this.createAnchor=function(e,t){return new u(this,e,t)},"aaa".split(/a/).length===0?this.$split=function(e){return e.replace(/\r\n|\r/g,"\n").split("\n")}:this.$split=function(e){return e.split(/\r\n|\r|\n/)},this.$detectNewLine=function(e){var t=e.match(/^.*?(\r\n|\r|\n)/m);this.$autoNewLine=t?t[1]:"\n",this._signal("changeNewLineMode")},this.getNewLineCharacter=function(){switch(this.$newLineMode){case"windows":return"\r\n";case"unix":return"\n";default:return this.$autoNewLine||"\n"}},this.$autoNewLine="",this.$newLineMode="auto",this.setNewLineMode=function(e){if(this.$newLineMode===e)return;this.$newLineMode=e,this._signal("changeNewLineMode")},this.getNewLineMode=function(){return this.$newLineMode},this.isNewLine=function(e){return e=="\r\n"||e=="\r"||e=="\n"},this.getLine=function(e){return this.$lines[e]||""},this.getLines=function(e,t){return this.$lines.slice(e,t+1)},this.getAllLines=function(){return this.getLines(0,this.getLength())},this.getLength=function(){return this.$lines.length},this.getTextRange=function(e){return this.getLinesForRange(e).join(this.getNewLineCharacter())},this.getLinesForRange=function(e){var t;if(e.start.row===e.end.row)t=[this.getLine(e.start.row).substring(e.start.column,e.end.column)];else{t=this.getLines(e.start.row,e.end.row),t[0]=(t[0]||"").substring(e.start.column);var n=t.length-1;e.end.row-e.start.row==n&&(t[n]=t[n].substring(0,e.end.column))}return t},this.insertLines=function(e,t){return console.warn("Use of document.insertLines is deprecated. Use the insertFullLines method instead."),this.insertFullLines(e,t)},this.removeLines=function(e,t){return console.warn("Use of document.removeLines is deprecated. Use the removeFullLines method instead."),this.removeFullLines(e,t)},this.insertNewLine=function(e){return console.warn("Use of document.insertNewLine is deprecated. Use insertMergedLines(position, ['', '']) instead."),this.insertMergedLines(e,["",""])},this.insert=function(e,t){return this.getLength()<=1&&this.$detectNewLine(t),this.insertMergedLines(e,this.$split(t))},this.insertInLine=function(e,t){var n=this.clippedPos(e.row,e.column),r=this.pos(e.row,e.column+t.length);return this.applyDelta({start:n,end:r,action:"insert",lines:[t]},!0),this.clonePos(r)},this.clippedPos=function(e,t){var n=this.getLength();e===undefined?e=n:e<0?e=0:e>=n&&(e=n-1,t=undefined);var r=this.getLine(e);return t==undefined&&(t=r.length),t=Math.min(Math.max(t,0),r.length),{row:e,column:t}},this.clonePos=function(e){return{row:e.row,column:e.column}},this.pos=function(e,t){return{row:e,column:t}},this.$clipPosition=function(e){var t=this.getLength();return e.row>=t?(e.row=Math.max(0,t-1),e.column=this.getLine(t-1).length):(e.row=Math.max(0,e.row),e.column=Math.min(Math.max(e.column,0),this.getLine(e.row).length)),e},this.insertFullLines=function(e,t){e=Math.min(Math.max(e,0),this.getLength());var n=0;e<this.getLength()?(t=t.concat([""]),n=0):(t=[""].concat(t),e--,n=this.$lines[e].length),this.insertMergedLines({row:e,column:n},t)},this.insertMergedLines=function(e,t){var n=this.clippedPos(e.row,e.column),r={row:n.row+t.length-1,column:(t.length==1?n.column:0)+t[t.length-1].length};return this.applyDelta({start:n,end:r,action:"insert",lines:t}),this.clonePos(r)},this.remove=function(e){var t=this.clippedPos(e.start.row,e.start.column),n=this.clippedPos(e.end.row,e.end.column);return this.applyDelta({start:t,end:n,action:"remove",lines:this.getLinesForRange({start:t,end:n})}),this.clonePos(t)},this.removeInLine=function(e,t,n){var r=this.clippedPos(e,t),i=this.clippedPos(e,n);return this.applyDelta({start:r,end:i,action:"remove",lines:this.getLinesForRange({start:r,end:i})},!0),this.clonePos(r)},this.removeFullLines=function(e,t){e=Math.min(Math.max(0,e),this.getLength()-1),t=Math.min(Math.max(0,t),this.getLength()-1);var n=t==this.getLength()-1&&e>0,r=t<this.getLength()-1,i=n?e-1:e,s=n?this.getLine(i).length:0,u=r?t+1:t,a=r?0:this.getLine(u).length,f=new o(i,s,u,a),l=this.$lines.slice(e,t+1);return this.applyDelta({start:f.start,end:f.end,action:"remove",lines:this.getLinesForRange(f)}),l},this.removeNewLine=function(e){e<this.getLength()-1&&e>=0&&this.applyDelta({start:this.pos(e,this.getLine(e).length),end:this.pos(e+1,0),action:"remove",lines:["",""]})},this.replace=function(e,t){e instanceof o||(e=o.fromPoints(e.start,e.end));if(t.length===0&&e.isEmpty())return e.start;if(t==this.getTextRange(e))return e.end;this.remove(e);var n;return t?n=this.insert(e.start,t):n=e.start,n},this.applyDeltas=function(e){for(var t=0;t<e.length;t++)this.applyDelta(e[t])},this.revertDeltas=function(e){for(var t=e.length-1;t>=0;t--)this.revertDelta(e[t])},this.applyDelta=function(e,t){var n=e.action=="insert";if(n?e.lines.length<=1&&!e.lines[0]:!o.comparePoints(e.start,e.end))return;n&&e.lines.length>2e4?this.$splitAndapplyLargeDelta(e,2e4):(i(this.$lines,e,t),this._signal("change",e))},this.$safeApplyDelta=function(e){var t=this.$lines.length;(e.action=="remove"&&e.start.row<t&&e.end.row<t||e.action=="insert"&&e.start.row<=t)&&this.applyDelta(e)},this.$splitAndapplyLargeDelta=function(e,t){var n=e.lines,r=n.length-t+1,i=e.start.row,s=e.start.column;for(var o=0,u=0;o<r;o=u){u+=t-1;var a=n.slice(o,u);a.push(""),this.applyDelta({start:this.pos(i+o,s),end:this.pos(i+u,s=0),action:e.action,lines:a},!0)}e.lines=n.slice(o),e.start.row=i+o,e.start.column=s,this.applyDelta(e,!0)},this.revertDelta=function(e){this.$safeApplyDelta({start:this.clonePos(e.start),end:this.clonePos(e.end),action:e.action=="insert"?"remove":"insert",lines:e.lines.slice()})},this.indexToPosition=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length;for(var i=t||0,s=n.length;i<s;i++){e-=n[i].length+r;if(e<0)return{row:i,column:e+n[i].length+r}}return{row:s-1,column:e+n[s-1].length+r}},this.positionToIndex=function(e,t){var n=this.$lines||this.getAllLines(),r=this.getNewLineCharacter().length,i=0,s=Math.min(e.row,n.length);for(var o=t||0;o<s;++o)i+=n[o].length+r;return i+e.column}}).call(a.prototype),t.Document=a}),define("ace/lib/lang",[],function(e,t,n){"use strict";t.last=function(e){return e[e.length-1]},t.stringReverse=function(e){return e.split("").reverse().join("")},t.stringRepeat=function(e,t){var n="";while(t>0){t&1&&(n+=e);if(t>>=1)e+=e}return n};var r=/^\s\s*/,i=/\s\s*$/;t.stringTrimLeft=function(e){return e.replace(r,"")},t.stringTrimRight=function(e){return e.replace(i,"")},t.copyObject=function(e){var t={};for(var n in e)t[n]=e[n];return t},t.copyArray=function(e){var t=[];for(var n=0,r=e.length;n<r;n++)e[n]&&typeof e[n]=="object"?t[n]=this.copyObject(e[n]):t[n]=e[n];return t},t.deepCopy=function s(e){if(typeof e!="object"||!e)return e;var t;if(Array.isArray(e)){t=[];for(var n=0;n<e.length;n++)t[n]=s(e[n]);return t}if(Object.prototype.toString.call(e)!=="[object Object]")return e;t={};for(var n in e)t[n]=s(e[n]);return t},t.arrayToMap=function(e){var t={};for(var n=0;n<e.length;n++)t[e[n]]=1;return t},t.createMap=function(e){var t=Object.create(null);for(var n in e)t[n]=e[n];return t},t.arrayRemove=function(e,t){for(var n=0;n<=e.length;n++)t===e[n]&&e.splice(n,1)},t.escapeRegExp=function(e){return e.replace(/([.*+?^${}()|[\]\/\\])/g,"\\$1")},t.escapeHTML=function(e){return(""+e).replace(/&/g,"&#38;").replace(/"/g,"&#34;").replace(/'/g,"&#39;").replace(/</g,"&#60;")},t.getMatchOffsets=function(e,t){var n=[];return e.replace(t,function(e){n.push({offset:arguments[arguments.length-2],length:e.length})}),n},t.deferredCall=function(e){var t=null,n=function(){t=null,e()},r=function(e){return r.cancel(),t=setTimeout(n,e||0),r};return r.schedule=r,r.call=function(){return this.cancel(),e(),r},r.cancel=function(){return clearTimeout(t),t=null,r},r.isPending=function(){return t},r},t.delayedCall=function(e,t){var n=null,r=function(){n=null,e()},i=function(e){n==null&&(n=setTimeout(r,e||t))};return i.delay=function(e){n&&clearTimeout(n),n=setTimeout(r,e||t)},i.schedule=i,i.call=function(){this.cancel(),e()},i.cancel=function(){n&&clearTimeout(n),n=null},i.isPending=function(){return n},i}}),define("ace/worker/mirror",[],function(e,t,n){"use strict";var r=e("../range").Range,i=e("../document").Document,s=e("../lib/lang"),o=t.Mirror=function(e){this.sender=e;var t=this.doc=new i(""),n=this.deferredUpdate=s.delayedCall(this.onUpdate.bind(this)),r=this;e.on("change",function(e){var i=e.data;if(i[0].start)t.applyDeltas(i);else for(var s=0;s<i.length;s+=2){if(Array.isArray(i[s+1]))var o={action:"insert",start:i[s],lines:i[s+1]};else var o={action:"remove",start:i[s],end:i[s+1]};t.applyDelta(o,!0)}if(r.$timeout)return n.schedule(r.$timeout);r.onUpdate()})};(function(){this.$timeout=500,this.setTimeout=function(e){this.$timeout=e},this.setValue=function(e){this.doc.setValue(e),this.deferredUpdate.schedule(this.$timeout)},this.getValue=function(e){this.sender.callback(this.doc.getValue(),e)},this.onUpdate=function(){},this.isPending=function(){return this.deferredUpdate.isPending()}}).call(o.prototype)}),define("ace/mode/json/json_parse",[],function(e,t,n){"use strict";var r,i,s={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:"\n",r:"\r",t:" "},o,u=function(e){throw{name:"SyntaxError",message:e,at:r,text:o}},a=function(e){return e&&e!==i&&u("Expected '"+e+"' instead of '"+i+"'"),i=o.charAt(r),r+=1,i},f=function(){var e,t="";i==="-"&&(t="-",a("-"));while(i>="0"&&i<="9")t+=i,a();if(i==="."){t+=".";while(a()&&i>="0"&&i<="9")t+=i}if(i==="e"||i==="E"){t+=i,a();if(i==="-"||i==="+")t+=i,a();while(i>="0"&&i<="9")t+=i,a()}e=+t;if(!isNaN(e))return e;u("Bad number")},l=function(){var e,t,n="",r;if(i==='"')while(a()){if(i==='"')return a(),n;if(i==="\\"){a();if(i==="u"){r=0;for(t=0;t<4;t+=1){e=parseInt(a(),16);if(!isFinite(e))break;r=r*16+e}n+=String.fromCharCode(r)}else{if(typeof s[i]!="string")break;n+=s[i]}}else{if(i=="\n"||i=="\r")break;n+=i}}u("Bad string")},c=function(){while(i&&i<=" ")a()},h=function(){switch(i){case"t":return a("t"),a("r"),a("u"),a("e"),!0;case"f":return a("f"),a("a"),a("l"),a("s"),a("e"),!1;case"n":return a("n"),a("u"),a("l"),a("l"),null}u("Unexpected '"+i+"'")},p,d=function(){var e=[];if(i==="["){a("["),c();if(i==="]")return a("]"),e;while(i){e.push(p()),c();if(i==="]")return a("]"),e;a(","),c()}}u("Bad array")},v=function(){var e,t={};if(i==="{"){a("{"),c();if(i==="}")return a("}"),t;while(i){e=l(),c(),a(":"),Object.hasOwnProperty.call(t,e)&&u('Duplicate key "'+e+'"'),t[e]=p(),c();if(i==="}")return a("}"),t;a(","),c()}}u("Bad object")};return p=function(){c();switch(i){case"{":return v();case"[":return d();case'"':return l();case"-":return f();default:return i>="0"&&i<="9"?f():h()}},function(e,t){var n;return o=e,r=0,i=" ",n=p(),c(),i&&u("Syntax error"),typeof t=="function"?function s(e,n){var r,i,o=e[n];if(o&&typeof o=="object")for(r in o)Object.hasOwnProperty.call(o,r)&&(i=s(o,r),i!==undefined?o[r]=i:delete o[r]);return t.call(e,n,o)}({"":n},""):n}}),define("ace/mode/json_worker",[],function(e,t,n){"use strict";var r=e("../lib/oop"),i=e("../worker/mirror").Mirror,s=e("./json/json_parse"),o=t.JsonWorker=function(e){i.call(this,e),this.setTimeout(200)};r.inherits(o,i),function(){this.onUpdate=function(){var e=this.doc.getValue(),t=[];try{e&&s(e)}catch(n){var r=this.doc.indexToPosition(n.at-1);t.push({row:r.row,column:r.column,text:n.message,type:"error"})}this.sender.emit("annotate",t)}}.call(o.prototype)})
\ No newline at end of file
...@@ -128,8 +128,5 @@ ...@@ -128,8 +128,5 @@
} }
} }
}, },
"defaultProject": "ng-template-generator", "defaultProject": "ng-template-generator"
"cli": {
"analytics": "5f501d82-8f25-4817-a608-9ac70d1f1f70"
}
} }
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>NgOne</title>
<!-- <base href="/"> -->
<!-- <meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">-->
<meta name="viewport" content="width=device-width, initial-scale=1">
<script src="ace/ace.js" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript" src="//staging-teach.cdn.ireadabc.com/h5template/h5-static-lib/js/air.js"></script>
<style>
#saveDataTextarea {
margin: 0;
position: absolute;
top: 0;
left: 0;
right: 180px;
height: 100%;
}
.upload-container {
width: 100px;
height: 40px;
position: absolute;
right: 40px;
border-radius: 2px;
border: 1px solid #dcdfe6;
line-height: 100px;
margin: 10px;
text-align: center;
display:flex;
align-items:center;
justify-content:center;
}
.hide-fileinput {
position: absolute;
top: 0px;
left: 0px;
width: 100%;
height: 100%;
opacity: 0;
cursor: pointer;
}
</style>
</head>
<body onload="loadData();" style="background-color: white;">
<pre id="saveDataTextarea"></pre>
<div class="upload-container">
<div class="upload-file">上传文件</div>
<input class="hide-fileinput" type="file" name="file" onchange="uploadFile()">
</div>
</body>
<script>
var editor = ace.edit("saveDataTextarea");
editor.setTheme("ace/theme/chrome");
editor.session.setMode("ace/mode/json");
editor.session.on('change', function(delta) {
try {
const data = JSON.parse(editor.getValue());
window.courseware.setData(data, null, "cocos_001");
} catch (error) {}
});
let saveDataStr = '';
function loadData() {
window.courseware.getData((data) => {
try {
editor.setValue(JSON.stringify(data, null, 2));
editor.gotoLine(editor.session.getLength());
} catch (error) {}
}, "cocos_001");
}
function uploadFile(){
const dom = document.querySelector(".hide-fileinput");
const file = dom.files[0];
dom.setAttribute("disabled", true);
document.querySelector(".upload-file").innerHTML = "上传中...";
commonUploadFile(file, (data) => {
try {
const d = JSON.parse(data);
const protocolStr = document.location.protocol;
const url = d.url
.replace(/http:/g, protocolStr)
.replace(/https:/g, protocolStr);
editor.insert(url);
} catch (error) {}
dom.removeAttribute("disabled");
document.querySelector(".upload-file").innerHTML = "上传文件";
});
}
function commonUploadFile(file, callback) {
const uploadUrl = window.courseware.uploadUrl(); //上传文件的路径
const uploadData = window.courseware.uploadData(); //上传文件必须要的参数
const formData = new FormData();
formData.append("file", file);
for (const key in uploadData) {
formData.append(key, uploadData[key]);
}
var xhr = new XMLHttpRequest();
xhr.open("post",uploadUrl);
//回调
xhr.onreadystatechange = function () {
if (xhr.readyState==4 && xhr.status==200){
callback && callback(xhr.responseText);
}
}
//获取上传的进度
xhr.upload.onprogress = function (event) {
if(event.lengthComputable){
var percent = event.loaded/event.total *100;
document.querySelector(".upload-file").innerHTML = Math.floor(percent)+"%";
}
}
//将formdata上传
xhr.send(formData);
}
</script>
</html>
\ No newline at end of file
...@@ -1780,7 +1780,7 @@ ...@@ -1780,7 +1780,7 @@
}, },
"abbrev": { "abbrev": {
"version": "1.1.1", "version": "1.1.1",
"resolved": "https://registry.npmmirror.com/abbrev/-/abbrev-1.1.1.tgz", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
"integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q=="
}, },
"accepts": { "accepts": {
...@@ -1907,8 +1907,8 @@ ...@@ -1907,8 +1907,8 @@
}, },
"amdefine": { "amdefine": {
"version": "1.0.1", "version": "1.0.1",
"resolved": "https://registry.npmmirror.com/amdefine/-/amdefine-1.0.1.tgz", "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz",
"integrity": "sha512-S2Hw0TtNkMJhIabBwIojKL9YHO5T0n5eNqWJ7Lrlel/zDbftQpxpapi8tZs3X1HWa+u+QeydGmzzNU0m09+Rcg==" "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU="
}, },
"ansi-colors": { "ansi-colors": {
"version": "3.2.4", "version": "3.2.4",
...@@ -1981,7 +1981,7 @@ ...@@ -1981,7 +1981,7 @@
}, },
"are-we-there-yet": { "are-we-there-yet": {
"version": "1.1.7", "version": "1.1.7",
"resolved": "https://registry.npmmirror.com/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz",
"integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==",
"requires": { "requires": {
"delegates": "^1.0.0", "delegates": "^1.0.0",
...@@ -2033,8 +2033,8 @@ ...@@ -2033,8 +2033,8 @@
}, },
"array-find-index": { "array-find-index": {
"version": "1.0.2", "version": "1.0.2",
"resolved": "https://registry.npmmirror.com/array-find-index/-/array-find-index-1.0.2.tgz", "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz",
"integrity": "sha512-M1HQyIXcBGtVywBt8WVdim+lrNaK7VHp99Qt5pSNziXznKHViIBbXWtfRTpEFpF/c4FdfxNAsCCwPp5phBYJtw==" "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E="
}, },
"array-flatten": { "array-flatten": {
"version": "2.1.2", "version": "2.1.2",
...@@ -2174,8 +2174,8 @@ ...@@ -2174,8 +2174,8 @@
}, },
"async-foreach": { "async-foreach": {
"version": "0.1.3", "version": "0.1.3",
"resolved": "https://registry.npmmirror.com/async-foreach/-/async-foreach-0.1.3.tgz", "resolved": "https://registry.npmjs.org/async-foreach/-/async-foreach-0.1.3.tgz",
"integrity": "sha512-VUeSMD8nEGBWaZK4lizI1sf3yEC7pnAQ/mrI7pC2fBz2s/tq5jWWEngTwaf0Gruu/OoXRGLGg1XFqpYBiGTYJA==" "integrity": "sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI="
}, },
"async-limiter": { "async-limiter": {
"version": "1.0.1", "version": "1.0.1",
...@@ -2408,8 +2408,8 @@ ...@@ -2408,8 +2408,8 @@
}, },
"block-stream": { "block-stream": {
"version": "0.0.9", "version": "0.0.9",
"resolved": "https://registry.npmmirror.com/block-stream/-/block-stream-0.0.9.tgz", "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz",
"integrity": "sha512-OorbnJVPII4DuUKbjARAe8u8EfqOmkEEaSFIyoQ7OjTHn6kafxWl0wLgoZ2rXaYd7MyLcDaU4TmhfxtwgcccMQ==", "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=",
"requires": { "requires": {
"inherits": "~2.0.0" "inherits": "~2.0.0"
} }
...@@ -2838,8 +2838,8 @@ ...@@ -2838,8 +2838,8 @@
}, },
"camelcase-keys": { "camelcase-keys": {
"version": "2.1.0", "version": "2.1.0",
"resolved": "https://registry.npmmirror.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz", "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz",
"integrity": "sha512-bA/Z/DERHKqoEOrp+qeGKw1QlvEQkGZSc0XaY6VnTxZr+Kv1G5zFwttpjv8qxZ/sBPT4nthwZaAcsAZTJlSKXQ==", "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=",
"requires": { "requires": {
"camelcase": "^2.0.0", "camelcase": "^2.0.0",
"map-obj": "^1.0.0" "map-obj": "^1.0.0"
...@@ -2847,8 +2847,8 @@ ...@@ -2847,8 +2847,8 @@
"dependencies": { "dependencies": {
"camelcase": { "camelcase": {
"version": "2.1.1", "version": "2.1.1",
"resolved": "https://registry.npmmirror.com/camelcase/-/camelcase-2.1.1.tgz", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz",
"integrity": "sha512-DLIsRzJVBQu72meAKPkWQOLcujdXT32hwdfnkI1frSiSRMK1MofjKHf+MEx0SB6fjEFXL8fBDv1dKymBlOp4Qw==" "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8="
} }
} }
}, },
...@@ -3302,8 +3302,8 @@ ...@@ -3302,8 +3302,8 @@
}, },
"console-control-strings": { "console-control-strings": {
"version": "1.1.0", "version": "1.1.0",
"resolved": "https://registry.npmmirror.com/console-control-strings/-/console-control-strings-1.1.0.tgz", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
"integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==" "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4="
}, },
"constants-browserify": { "constants-browserify": {
"version": "1.0.0", "version": "1.0.0",
...@@ -3800,8 +3800,8 @@ ...@@ -3800,8 +3800,8 @@
}, },
"currently-unhandled": { "currently-unhandled": {
"version": "0.4.1", "version": "0.4.1",
"resolved": "https://registry.npmmirror.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz", "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz",
"integrity": "sha512-/fITjgjGU50vjQ4FH6eUoYu+iUoUKIXws2hL15JJpIR+BbTxaXQsMuuyjtNh2WqsSBS5nsaZHFsFecyw5CCAng==", "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=",
"requires": { "requires": {
"array-find-index": "^1.0.1" "array-find-index": "^1.0.1"
} }
...@@ -4059,8 +4059,8 @@ ...@@ -4059,8 +4059,8 @@
}, },
"delegates": { "delegates": {
"version": "1.0.0", "version": "1.0.0",
"resolved": "https://registry.npmmirror.com/delegates/-/delegates-1.0.0.tgz", "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
"integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==" "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o="
}, },
"depd": { "depd": {
"version": "1.1.2", "version": "1.1.2",
...@@ -5207,7 +5207,7 @@ ...@@ -5207,7 +5207,7 @@
}, },
"fstream": { "fstream": {
"version": "1.0.12", "version": "1.0.12",
"resolved": "https://registry.npmmirror.com/fstream/-/fstream-1.0.12.tgz", "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz",
"integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==",
"requires": { "requires": {
"graceful-fs": "^4.1.2", "graceful-fs": "^4.1.2",
...@@ -5256,8 +5256,8 @@ ...@@ -5256,8 +5256,8 @@
}, },
"gauge": { "gauge": {
"version": "2.7.4", "version": "2.7.4",
"resolved": "https://registry.npmmirror.com/gauge/-/gauge-2.7.4.tgz", "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz",
"integrity": "sha512-14x4kjc6lkD3ltw589k0NrPD6cCNTD6CWoVUNpB85+DrtONoZn+Rug6xZU5RvSC4+TZPxA5AnBibQYAvZn41Hg==", "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=",
"requires": { "requires": {
"aproba": "^1.0.3", "aproba": "^1.0.3",
"console-control-strings": "^1.0.0", "console-control-strings": "^1.0.0",
...@@ -5271,16 +5271,16 @@ ...@@ -5271,16 +5271,16 @@
"dependencies": { "dependencies": {
"is-fullwidth-code-point": { "is-fullwidth-code-point": {
"version": "1.0.0", "version": "1.0.0",
"resolved": "https://registry.npmmirror.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
"integrity": "sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==", "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
"requires": { "requires": {
"number-is-nan": "^1.0.0" "number-is-nan": "^1.0.0"
} }
}, },
"string-width": { "string-width": {
"version": "1.0.2", "version": "1.0.2",
"resolved": "https://registry.npmmirror.com/string-width/-/string-width-1.0.2.tgz", "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
"integrity": "sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
"requires": { "requires": {
"code-point-at": "^1.0.0", "code-point-at": "^1.0.0",
"is-fullwidth-code-point": "^1.0.0", "is-fullwidth-code-point": "^1.0.0",
...@@ -5291,7 +5291,7 @@ ...@@ -5291,7 +5291,7 @@
}, },
"gaze": { "gaze": {
"version": "1.1.3", "version": "1.1.3",
"resolved": "https://registry.npmmirror.com/gaze/-/gaze-1.1.3.tgz", "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz",
"integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==", "integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==",
"requires": { "requires": {
"globule": "^1.0.0" "globule": "^1.0.0"
...@@ -5316,8 +5316,8 @@ ...@@ -5316,8 +5316,8 @@
}, },
"get-stdin": { "get-stdin": {
"version": "4.0.1", "version": "4.0.1",
"resolved": "https://registry.npmmirror.com/get-stdin/-/get-stdin-4.0.1.tgz", "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
"integrity": "sha512-F5aQMywwJ2n85s4hJPTT9RPxGmubonuB10MNYo17/xph174n2MIR33HRguhzVag10O/npM7SPk73LMZNP+FaWw==" "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4="
}, },
"get-stream": { "get-stream": {
"version": "4.1.0", "version": "4.1.0",
...@@ -5419,7 +5419,7 @@ ...@@ -5419,7 +5419,7 @@
}, },
"globule": { "globule": {
"version": "1.3.3", "version": "1.3.3",
"resolved": "https://registry.npmmirror.com/globule/-/globule-1.3.3.tgz", "resolved": "https://registry.npmjs.org/globule/-/globule-1.3.3.tgz",
"integrity": "sha512-mb1aYtDbIjTu4ShMB85m3UzjX9BVKe9WCzsnfMSZk+K5GpIbBOexgg4PPCt5eHDEG5/ZQAUX2Kct02zfiPLsKg==", "integrity": "sha512-mb1aYtDbIjTu4ShMB85m3UzjX9BVKe9WCzsnfMSZk+K5GpIbBOexgg4PPCt5eHDEG5/ZQAUX2Kct02zfiPLsKg==",
"requires": { "requires": {
"glob": "~7.1.1", "glob": "~7.1.1",
...@@ -5524,8 +5524,8 @@ ...@@ -5524,8 +5524,8 @@
}, },
"has-unicode": { "has-unicode": {
"version": "2.0.1", "version": "2.0.1",
"resolved": "https://registry.npmmirror.com/has-unicode/-/has-unicode-2.0.1.tgz", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz",
"integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==" "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk="
}, },
"has-value": { "has-value": {
"version": "1.0.0", "version": "1.0.0",
...@@ -5918,7 +5918,7 @@ ...@@ -5918,7 +5918,7 @@
}, },
"in-publish": { "in-publish": {
"version": "2.0.1", "version": "2.0.1",
"resolved": "https://registry.npmmirror.com/in-publish/-/in-publish-2.0.1.tgz", "resolved": "https://registry.npmjs.org/in-publish/-/in-publish-2.0.1.tgz",
"integrity": "sha512-oDM0kUSNFC31ShNxHKUyfZKy8ZeXZBWMjMdZHKLOk13uvT27VTL/QzRGfRUcevJhpkZAvlhPYuXkF7eNWrtyxQ==" "integrity": "sha512-oDM0kUSNFC31ShNxHKUyfZKy8ZeXZBWMjMdZHKLOk13uvT27VTL/QzRGfRUcevJhpkZAvlhPYuXkF7eNWrtyxQ=="
}, },
"indent-string": { "indent-string": {
...@@ -6228,7 +6228,7 @@ ...@@ -6228,7 +6228,7 @@
}, },
"is-finite": { "is-finite": {
"version": "1.1.0", "version": "1.1.0",
"resolved": "https://registry.npmmirror.com/is-finite/-/is-finite-1.1.0.tgz", "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz",
"integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==" "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w=="
}, },
"is-fullwidth-code-point": { "is-fullwidth-code-point": {
...@@ -6358,8 +6358,8 @@ ...@@ -6358,8 +6358,8 @@
}, },
"is-utf8": { "is-utf8": {
"version": "0.2.1", "version": "0.2.1",
"resolved": "https://registry.npmmirror.com/is-utf8/-/is-utf8-0.2.1.tgz", "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz",
"integrity": "sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q==" "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI="
}, },
"is-windows": { "is-windows": {
"version": "1.0.2", "version": "1.0.2",
...@@ -6918,8 +6918,8 @@ ...@@ -6918,8 +6918,8 @@
}, },
"load-json-file": { "load-json-file": {
"version": "1.1.0", "version": "1.1.0",
"resolved": "https://registry.npmmirror.com/load-json-file/-/load-json-file-1.1.0.tgz", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz",
"integrity": "sha512-cy7ZdNRXdablkXYNI049pthVeXFurRyb9+hA/dZzerZ0pGTx42z+y+ssxBaVV2l70t1muq5IdKhn4UtcoGUY9A==", "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=",
"requires": { "requires": {
"graceful-fs": "^4.1.2", "graceful-fs": "^4.1.2",
"parse-json": "^2.2.0", "parse-json": "^2.2.0",
...@@ -6930,21 +6930,21 @@ ...@@ -6930,21 +6930,21 @@
"dependencies": { "dependencies": {
"parse-json": { "parse-json": {
"version": "2.2.0", "version": "2.2.0",
"resolved": "https://registry.npmmirror.com/parse-json/-/parse-json-2.2.0.tgz", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz",
"integrity": "sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ==", "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=",
"requires": { "requires": {
"error-ex": "^1.2.0" "error-ex": "^1.2.0"
} }
}, },
"pify": { "pify": {
"version": "2.3.0", "version": "2.3.0",
"resolved": "https://registry.npmmirror.com/pify/-/pify-2.3.0.tgz", "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
"integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==" "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw="
}, },
"strip-bom": { "strip-bom": {
"version": "2.0.0", "version": "2.0.0",
"resolved": "https://registry.npmmirror.com/strip-bom/-/strip-bom-2.0.0.tgz", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz",
"integrity": "sha512-kwrX1y7czp1E69n2ajbG65mIo9dqvJ+8aBQXOGVxqwvNbsXdFM6Lq37dLAY3mknUwru8CfcCbfOLL/gMo+fi3g==", "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=",
"requires": { "requires": {
"is-utf8": "^0.2.0" "is-utf8": "^0.2.0"
} }
...@@ -7050,8 +7050,8 @@ ...@@ -7050,8 +7050,8 @@
}, },
"loud-rejection": { "loud-rejection": {
"version": "1.6.0", "version": "1.6.0",
"resolved": "https://registry.npmmirror.com/loud-rejection/-/loud-rejection-1.6.0.tgz", "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz",
"integrity": "sha512-RPNliZOFkqFumDhvYqOaNY4Uz9oJM2K9tC6JWsJJsNdhuONW4LQHRBpb0qf4pJApVffI5N39SwzWZJuEhfd7eQ==", "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=",
"requires": { "requires": {
"currently-unhandled": "^0.4.1", "currently-unhandled": "^0.4.1",
"signal-exit": "^3.0.0" "signal-exit": "^3.0.0"
...@@ -7185,8 +7185,8 @@ ...@@ -7185,8 +7185,8 @@
}, },
"map-obj": { "map-obj": {
"version": "1.0.1", "version": "1.0.1",
"resolved": "https://registry.npmmirror.com/map-obj/-/map-obj-1.0.1.tgz", "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz",
"integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==" "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0="
}, },
"map-visit": { "map-visit": {
"version": "1.0.0", "version": "1.0.0",
...@@ -7243,8 +7243,8 @@ ...@@ -7243,8 +7243,8 @@
}, },
"meow": { "meow": {
"version": "3.7.0", "version": "3.7.0",
"resolved": "https://registry.npmmirror.com/meow/-/meow-3.7.0.tgz", "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
"integrity": "sha512-TNdwZs0skRlpPpCUK25StC4VH+tP5GgeY1HQOOGP+lQ2xtdkN2VtT/5tiX9k3IWpkBPV9b3LsAWXn4GGi/PrSA==", "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=",
"requires": { "requires": {
"camelcase-keys": "^2.0.0", "camelcase-keys": "^2.0.0",
"decamelize": "^1.1.2", "decamelize": "^1.1.2",
...@@ -7776,7 +7776,7 @@ ...@@ -7776,7 +7776,7 @@
}, },
"node-gyp": { "node-gyp": {
"version": "3.8.0", "version": "3.8.0",
"resolved": "https://registry.npmmirror.com/node-gyp/-/node-gyp-3.8.0.tgz", "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.8.0.tgz",
"integrity": "sha512-3g8lYefrRRzvGeSowdJKAKyks8oUpLEd/DyPV4eMhVlhJ0aNaZqIrNUIPuEWWTAoPqyFkfGrM67MC69baqn6vA==", "integrity": "sha512-3g8lYefrRRzvGeSowdJKAKyks8oUpLEd/DyPV4eMhVlhJ0aNaZqIrNUIPuEWWTAoPqyFkfGrM67MC69baqn6vA==",
"requires": { "requires": {
"fstream": "^1.0.0", "fstream": "^1.0.0",
...@@ -7795,12 +7795,12 @@ ...@@ -7795,12 +7795,12 @@
"dependencies": { "dependencies": {
"semver": { "semver": {
"version": "5.3.0", "version": "5.3.0",
"resolved": "https://registry.npmmirror.com/semver/-/semver-5.3.0.tgz", "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz",
"integrity": "sha512-mfmm3/H9+67MCVix1h+IXTpDwL6710LyHuk7+cWC9T1mE0qz4iHhh6r4hU2wrIT9iTsAAC2XQRvfblL028cpLw==" "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8="
}, },
"tar": { "tar": {
"version": "2.2.2", "version": "2.2.2",
"resolved": "https://registry.npmmirror.com/tar/-/tar-2.2.2.tgz", "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.2.tgz",
"integrity": "sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA==", "integrity": "sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA==",
"requires": { "requires": {
"block-stream": "*", "block-stream": "*",
...@@ -7857,7 +7857,7 @@ ...@@ -7857,7 +7857,7 @@
}, },
"node-sass": { "node-sass": {
"version": "4.14.1", "version": "4.14.1",
"resolved": "https://registry.npmmirror.com/node-sass/-/node-sass-4.14.1.tgz", "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.14.1.tgz",
"integrity": "sha512-sjCuOlvGyCJS40R8BscF5vhVlQjNN069NtQ1gSxyK1u9iqvn6tf7O1R4GNowVZfiZUCRt5MmMs1xd+4V/7Yr0g==", "integrity": "sha512-sjCuOlvGyCJS40R8BscF5vhVlQjNN069NtQ1gSxyK1u9iqvn6tf7O1R4GNowVZfiZUCRt5MmMs1xd+4V/7Yr0g==",
"requires": { "requires": {
"async-foreach": "^0.1.3", "async-foreach": "^0.1.3",
...@@ -7881,13 +7881,13 @@ ...@@ -7881,13 +7881,13 @@
"dependencies": { "dependencies": {
"ansi-styles": { "ansi-styles": {
"version": "2.2.1", "version": "2.2.1",
"resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-2.2.1.tgz", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
"integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==" "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4="
}, },
"chalk": { "chalk": {
"version": "1.1.3", "version": "1.1.3",
"resolved": "https://registry.npmmirror.com/chalk/-/chalk-1.1.3.tgz", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
"integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
"requires": { "requires": {
"ansi-styles": "^2.2.1", "ansi-styles": "^2.2.1",
"escape-string-regexp": "^1.0.2", "escape-string-regexp": "^1.0.2",
...@@ -7898,8 +7898,8 @@ ...@@ -7898,8 +7898,8 @@
}, },
"cross-spawn": { "cross-spawn": {
"version": "3.0.1", "version": "3.0.1",
"resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-3.0.1.tgz", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-3.0.1.tgz",
"integrity": "sha512-eZ+m1WNhSZutOa/uRblAc9Ut5MQfukFrFMtPSm3bZCA888NmMd5AWXWdgRZ80zd+pTk1P2JrGjg9pUPTvl2PWQ==", "integrity": "sha1-ElYDfsufDF9549bvE14wdwGEuYI=",
"requires": { "requires": {
"lru-cache": "^4.0.1", "lru-cache": "^4.0.1",
"which": "^1.2.9" "which": "^1.2.9"
...@@ -7907,7 +7907,7 @@ ...@@ -7907,7 +7907,7 @@
}, },
"lru-cache": { "lru-cache": {
"version": "4.1.5", "version": "4.1.5",
"resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-4.1.5.tgz", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz",
"integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==",
"requires": { "requires": {
"pseudomap": "^1.0.2", "pseudomap": "^1.0.2",
...@@ -7916,20 +7916,20 @@ ...@@ -7916,20 +7916,20 @@
}, },
"supports-color": { "supports-color": {
"version": "2.0.0", "version": "2.0.0",
"resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-2.0.0.tgz", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
"integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==" "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc="
}, },
"yallist": { "yallist": {
"version": "2.1.2", "version": "2.1.2",
"resolved": "https://registry.npmmirror.com/yallist/-/yallist-2.1.2.tgz", "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz",
"integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==" "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI="
} }
} }
}, },
"nopt": { "nopt": {
"version": "3.0.6", "version": "3.0.6",
"resolved": "https://registry.npmmirror.com/nopt/-/nopt-3.0.6.tgz", "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz",
"integrity": "sha512-4GUt3kSEYmk4ITxzB/b9vaIDfUVWN/Ml1Fwl11IlnIG2iaJ9O6WXZ9SrYM9NLI8OCBieN2Y8SWC2oJV0RQ7qYg==", "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=",
"requires": { "requires": {
"abbrev": "1" "abbrev": "1"
} }
...@@ -8061,7 +8061,7 @@ ...@@ -8061,7 +8061,7 @@
}, },
"npmlog": { "npmlog": {
"version": "4.1.2", "version": "4.1.2",
"resolved": "https://registry.npmmirror.com/npmlog/-/npmlog-4.1.2.tgz", "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz",
"integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==",
"requires": { "requires": {
"are-we-there-yet": "~1.1.2", "are-we-there-yet": "~1.1.2",
...@@ -9878,8 +9878,8 @@ ...@@ -9878,8 +9878,8 @@
}, },
"read-pkg": { "read-pkg": {
"version": "1.1.0", "version": "1.1.0",
"resolved": "https://registry.npmmirror.com/read-pkg/-/read-pkg-1.1.0.tgz", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz",
"integrity": "sha512-7BGwRHqt4s/uVbuyoeejRn4YmFnYZiFl4AuaeXHlgZf3sONF0SOGlxs2Pw8g6hCKupo08RafIO5YXFNOKTfwsQ==", "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=",
"requires": { "requires": {
"load-json-file": "^1.0.0", "load-json-file": "^1.0.0",
"normalize-package-data": "^2.3.2", "normalize-package-data": "^2.3.2",
...@@ -9888,8 +9888,8 @@ ...@@ -9888,8 +9888,8 @@
"dependencies": { "dependencies": {
"path-type": { "path-type": {
"version": "1.1.0", "version": "1.1.0",
"resolved": "https://registry.npmmirror.com/path-type/-/path-type-1.1.0.tgz", "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz",
"integrity": "sha512-S4eENJz1pkiQn9Znv33Q+deTOKmbl+jj1Fl+qiP/vYezj+S8x+J3Uo0ISrx/QoEvIlOaDWJhPaRd1flJ9HXZqg==", "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=",
"requires": { "requires": {
"graceful-fs": "^4.1.2", "graceful-fs": "^4.1.2",
"pify": "^2.0.0", "pify": "^2.0.0",
...@@ -9898,15 +9898,15 @@ ...@@ -9898,15 +9898,15 @@
}, },
"pify": { "pify": {
"version": "2.3.0", "version": "2.3.0",
"resolved": "https://registry.npmmirror.com/pify/-/pify-2.3.0.tgz", "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
"integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==" "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw="
} }
} }
}, },
"read-pkg-up": { "read-pkg-up": {
"version": "1.0.1", "version": "1.0.1",
"resolved": "https://registry.npmmirror.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz", "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz",
"integrity": "sha512-WD9MTlNtI55IwYUS27iHh9tK3YoIVhxis8yKhLpTqWtml739uXc9NWTpxoHkfZf3+DkCCsXox94/VWZniuZm6A==", "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=",
"requires": { "requires": {
"find-up": "^1.0.0", "find-up": "^1.0.0",
"read-pkg": "^1.0.0" "read-pkg": "^1.0.0"
...@@ -9914,8 +9914,8 @@ ...@@ -9914,8 +9914,8 @@
"dependencies": { "dependencies": {
"find-up": { "find-up": {
"version": "1.1.2", "version": "1.1.2",
"resolved": "https://registry.npmmirror.com/find-up/-/find-up-1.1.2.tgz", "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz",
"integrity": "sha512-jvElSjyuo4EMQGoTwo1uJU5pQMwTW5lS1x05zzfJuTIyLR3zwO27LYrxNg+dlvKpGOuGy/MzBdXh80g0ve5+HA==", "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=",
"requires": { "requires": {
"path-exists": "^2.0.0", "path-exists": "^2.0.0",
"pinkie-promise": "^2.0.0" "pinkie-promise": "^2.0.0"
...@@ -9923,8 +9923,8 @@ ...@@ -9923,8 +9923,8 @@
}, },
"path-exists": { "path-exists": {
"version": "2.1.0", "version": "2.1.0",
"resolved": "https://registry.npmmirror.com/path-exists/-/path-exists-2.1.0.tgz", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz",
"integrity": "sha512-yTltuKuhtNeFJKa1PiRzfLAU5182q1y4Eb4XCJ3PBqyzEDkAZRzBrKKBct682ls9reBVHf9udYLN5Nd+K1B9BQ==", "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=",
"requires": { "requires": {
"pinkie-promise": "^2.0.0" "pinkie-promise": "^2.0.0"
} }
...@@ -9968,8 +9968,8 @@ ...@@ -9968,8 +9968,8 @@
}, },
"redent": { "redent": {
"version": "1.0.0", "version": "1.0.0",
"resolved": "https://registry.npmmirror.com/redent/-/redent-1.0.0.tgz", "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz",
"integrity": "sha512-qtW5hKzGQZqKoh6JNSD+4lfitfPKGz42e6QwiRmPM5mmKtR0N41AbJRYu0xJi7nhOJ4WDgRkKvAk6tw4WIwR4g==", "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=",
"requires": { "requires": {
"indent-string": "^2.1.0", "indent-string": "^2.1.0",
"strip-indent": "^1.0.1" "strip-indent": "^1.0.1"
...@@ -9977,8 +9977,8 @@ ...@@ -9977,8 +9977,8 @@
"dependencies": { "dependencies": {
"indent-string": { "indent-string": {
"version": "2.1.0", "version": "2.1.0",
"resolved": "https://registry.npmmirror.com/indent-string/-/indent-string-2.1.0.tgz", "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz",
"integrity": "sha512-aqwDFWSgSgfRaEwao5lg5KEcVd/2a+D1rvoG7NdilmYz0NwRk6StWpWdz/Hpk34MKPpx7s8XxUqimfcQK6gGlg==", "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=",
"requires": { "requires": {
"repeating": "^2.0.0" "repeating": "^2.0.0"
} }
...@@ -10119,8 +10119,8 @@ ...@@ -10119,8 +10119,8 @@
}, },
"repeating": { "repeating": {
"version": "2.0.1", "version": "2.0.1",
"resolved": "https://registry.npmmirror.com/repeating/-/repeating-2.0.1.tgz", "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz",
"integrity": "sha512-ZqtSMuVybkISo2OWvqvm7iHSWngvdaW3IpsT9/uP8v4gMi591LY6h35wdOfvQdWCKFWZWm2Y1Opp4kV7vQKT6A==", "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=",
"requires": { "requires": {
"is-finite": "^1.0.0" "is-finite": "^1.0.0"
} }
...@@ -10327,7 +10327,7 @@ ...@@ -10327,7 +10327,7 @@
}, },
"sass-graph": { "sass-graph": {
"version": "2.2.5", "version": "2.2.5",
"resolved": "https://registry.npmmirror.com/sass-graph/-/sass-graph-2.2.5.tgz", "resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.5.tgz",
"integrity": "sha512-VFWDAHOe6mRuT4mZRd4eKE+d8Uedrk6Xnh7Sh9b4NGufQLQjOrvf/MQoOdx+0s92L89FeyUUNfU597j/3uNpag==", "integrity": "sha512-VFWDAHOe6mRuT4mZRd4eKE+d8Uedrk6Xnh7Sh9b4NGufQLQjOrvf/MQoOdx+0s92L89FeyUUNfU597j/3uNpag==",
"requires": { "requires": {
"glob": "^7.0.0", "glob": "^7.0.0",
...@@ -10337,13 +10337,13 @@ ...@@ -10337,13 +10337,13 @@
}, },
"dependencies": { "dependencies": {
"ansi-regex": { "ansi-regex": {
"version": "4.1.1", "version": "4.1.0",
"resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-4.1.1.tgz", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
"integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==" "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg=="
}, },
"cliui": { "cliui": {
"version": "5.0.0", "version": "5.0.0",
"resolved": "https://registry.npmmirror.com/cliui/-/cliui-5.0.0.tgz", "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz",
"integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==",
"requires": { "requires": {
"string-width": "^3.1.0", "string-width": "^3.1.0",
...@@ -10353,22 +10353,22 @@ ...@@ -10353,22 +10353,22 @@
}, },
"emoji-regex": { "emoji-regex": {
"version": "7.0.3", "version": "7.0.3",
"resolved": "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-7.0.3.tgz", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
"integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA=="
}, },
"get-caller-file": { "get-caller-file": {
"version": "2.0.5", "version": "2.0.5",
"resolved": "https://registry.npmmirror.com/get-caller-file/-/get-caller-file-2.0.5.tgz", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
"integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg=="
}, },
"require-main-filename": { "require-main-filename": {
"version": "2.0.0", "version": "2.0.0",
"resolved": "https://registry.npmmirror.com/require-main-filename/-/require-main-filename-2.0.0.tgz", "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz",
"integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==" "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg=="
}, },
"string-width": { "string-width": {
"version": "3.1.0", "version": "3.1.0",
"resolved": "https://registry.npmmirror.com/string-width/-/string-width-3.1.0.tgz", "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
"integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
"requires": { "requires": {
"emoji-regex": "^7.0.1", "emoji-regex": "^7.0.1",
...@@ -10378,7 +10378,7 @@ ...@@ -10378,7 +10378,7 @@
}, },
"strip-ansi": { "strip-ansi": {
"version": "5.2.0", "version": "5.2.0",
"resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-5.2.0.tgz", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
"integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
"requires": { "requires": {
"ansi-regex": "^4.1.0" "ansi-regex": "^4.1.0"
...@@ -10386,7 +10386,7 @@ ...@@ -10386,7 +10386,7 @@
}, },
"wrap-ansi": { "wrap-ansi": {
"version": "5.1.0", "version": "5.1.0",
"resolved": "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz",
"integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==",
"requires": { "requires": {
"ansi-styles": "^3.2.0", "ansi-styles": "^3.2.0",
...@@ -10396,7 +10396,7 @@ ...@@ -10396,7 +10396,7 @@
}, },
"yargs": { "yargs": {
"version": "13.3.2", "version": "13.3.2",
"resolved": "https://registry.npmmirror.com/yargs/-/yargs-13.3.2.tgz", "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz",
"integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==",
"requires": { "requires": {
"cliui": "^5.0.0", "cliui": "^5.0.0",
...@@ -10413,7 +10413,7 @@ ...@@ -10413,7 +10413,7 @@
}, },
"yargs-parser": { "yargs-parser": {
"version": "13.1.2", "version": "13.1.2",
"resolved": "https://registry.npmmirror.com/yargs-parser/-/yargs-parser-13.1.2.tgz", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz",
"integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==",
"requires": { "requires": {
"camelcase": "^5.0.0", "camelcase": "^5.0.0",
...@@ -10520,8 +10520,8 @@ ...@@ -10520,8 +10520,8 @@
}, },
"scss-tokenizer": { "scss-tokenizer": {
"version": "0.2.3", "version": "0.2.3",
"resolved": "https://registry.npmmirror.com/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz", "resolved": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz",
"integrity": "sha512-dYE8LhncfBUar6POCxMTm0Ln+erjeczqEvCJib5/7XNkdw1FkUGgwMPY360FY0FgPWQxHWCx29Jl3oejyGLM9Q==", "integrity": "sha1-jrBtualyMzOCTT9VMGQRSYR85dE=",
"requires": { "requires": {
"js-base64": "^2.1.8", "js-base64": "^2.1.8",
"source-map": "^0.4.2" "source-map": "^0.4.2"
...@@ -10529,8 +10529,8 @@ ...@@ -10529,8 +10529,8 @@
"dependencies": { "dependencies": {
"source-map": { "source-map": {
"version": "0.4.4", "version": "0.4.4",
"resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.4.4.tgz", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
"integrity": "sha512-Y8nIfcb1s/7DcobUz1yOO1GSp7gyL+D9zLHDehT7iRESqGSxjJ448Sg7rvfgsRJCnKLdSl11uGf0s9X80cH0/A==", "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=",
"requires": { "requires": {
"amdefine": ">=0.0.4" "amdefine": ">=0.0.4"
} }
...@@ -11362,7 +11362,7 @@ ...@@ -11362,7 +11362,7 @@
}, },
"stdout-stream": { "stdout-stream": {
"version": "1.4.1", "version": "1.4.1",
"resolved": "https://registry.npmmirror.com/stdout-stream/-/stdout-stream-1.4.1.tgz", "resolved": "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.1.tgz",
"integrity": "sha512-j4emi03KXqJWcIeF8eIXkjMFN1Cmb8gUlDYGeBALLPo5qdyTfA9bOtl8m33lRoC+vFMkP3gl0WsDr6+gzxbbTA==", "integrity": "sha512-j4emi03KXqJWcIeF8eIXkjMFN1Cmb8gUlDYGeBALLPo5qdyTfA9bOtl8m33lRoC+vFMkP3gl0WsDr6+gzxbbTA==",
"requires": { "requires": {
"readable-stream": "^2.0.1" "readable-stream": "^2.0.1"
...@@ -11531,8 +11531,8 @@ ...@@ -11531,8 +11531,8 @@
}, },
"strip-indent": { "strip-indent": {
"version": "1.0.1", "version": "1.0.1",
"resolved": "https://registry.npmmirror.com/strip-indent/-/strip-indent-1.0.1.tgz", "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz",
"integrity": "sha512-I5iQq6aFMM62fBEAIB/hXzwJD6EEZ0xEGCX2t7oXqaKPIRgt4WruAQ285BISgdkP+HLGWyeGmNJcpIwFeRYRUA==", "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=",
"requires": { "requires": {
"get-stdin": "^4.0.1" "get-stdin": "^4.0.1"
} }
...@@ -12080,12 +12080,12 @@ ...@@ -12080,12 +12080,12 @@
}, },
"trim-newlines": { "trim-newlines": {
"version": "1.0.0", "version": "1.0.0",
"resolved": "https://registry.npmmirror.com/trim-newlines/-/trim-newlines-1.0.0.tgz", "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz",
"integrity": "sha512-Nm4cF79FhSTzrLKGDMi3I4utBtFv8qKy4sq1enftf2gMdpqI8oVQTAfySkTz5r49giVzDj88SVZXP4CeYQwjaw==" "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM="
}, },
"true-case-path": { "true-case-path": {
"version": "1.0.3", "version": "1.0.3",
"resolved": "https://registry.npmmirror.com/true-case-path/-/true-case-path-1.0.3.tgz", "resolved": "https://registry.npmjs.org/true-case-path/-/true-case-path-1.0.3.tgz",
"integrity": "sha512-m6s2OdQe5wgpFMC+pAJ+q9djG82O2jcHPOI6RNg1yy9rCYR+WD6Nbpl32fDpfC56nirdRy+opFa/Vk7HYhqaew==", "integrity": "sha512-m6s2OdQe5wgpFMC+pAJ+q9djG82O2jcHPOI6RNg1yy9rCYR+WD6Nbpl32fDpfC56nirdRy+opFa/Vk7HYhqaew==",
"requires": { "requires": {
"glob": "^7.1.2" "glob": "^7.1.2"
...@@ -13219,11 +13219,11 @@ ...@@ -13219,11 +13219,11 @@
"integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=" "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho="
}, },
"wide-align": { "wide-align": {
"version": "1.1.5", "version": "1.1.3",
"resolved": "https://registry.npmmirror.com/wide-align/-/wide-align-1.1.5.tgz", "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz",
"integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==",
"requires": { "requires": {
"string-width": "^1.0.2 || 2 || 3 || 4" "string-width": "^1.0.2 || 2"
} }
}, },
"win-release": { "win-release": {
......
...@@ -6,7 +6,7 @@ import { Component , OnInit} from '@angular/core'; ...@@ -6,7 +6,7 @@ import { Component , OnInit} from '@angular/core';
styleUrls: ['./app.component.scss'] styleUrls: ['./app.component.scss']
}) })
export class AppComponent implements OnInit { export class AppComponent implements OnInit {
type = 'form'; type = 'play';
constructor() { constructor() {
const tp = this.getQueryString('type'); const tp = this.getQueryString('type');
......
import { BrowserModule } from '@angular/platform-browser'; import { BrowserModule } from '@angular/platform-browser';
import { NgModule, ErrorHandler } from '@angular/core'; import { NgModule, ErrorHandler } from '@angular/core';
import {MyErrorHandler} from './MyError'; import { MyErrorHandler } from './MyError';
import { AppComponent } from './app.component'; import { AppComponent } from './app.component';
import { NgZorroAntdModule, NZ_I18N, zh_CN } from 'ng-zorro-antd'; import { NgZorroAntdModule, NZ_I18N, zh_CN } from 'ng-zorro-antd';
...@@ -10,17 +10,18 @@ import { HttpClientModule } from '@angular/common/http'; ...@@ -10,17 +10,18 @@ import { HttpClientModule } from '@angular/common/http';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { registerLocaleData } from '@angular/common'; import { registerLocaleData } from '@angular/common';
import zh from '@angular/common/locales/zh'; import zh from '@angular/common/locales/zh';
import {FormComponent} from './form/form.component'; import { OverlayModule } from '@angular/cdk/overlay';
import {PlayComponent} from './play/play.component'; import { FormComponent } from './form/form.component';
import {LessonTitleConfigComponent} from './common/lesson-title-config/lesson-title-config.component'; import { PlayComponent } from './play/play.component';
import {BackgroundImagePipe} from './pipes/background-image.pipe'; import { LessonTitleConfigComponent } from './common/lesson-title-config/lesson-title-config.component';
import {UploadImageWithPreviewComponent} from './common/upload-image-with-preview/upload-image-with-preview.component'; import { BackgroundImagePipe } from './pipes/background-image.pipe';
import {PlayerContentWrapperComponent} from './common/player-content-wrapper/player-content-wrapper.component'; import { UploadImageWithPreviewComponent } from './common/upload-image-with-preview/upload-image-with-preview.component';
import {CustomHotZoneComponent} from './common/custom-hot-zone/custom-hot-zone.component'; import { PlayerContentWrapperComponent } from './common/player-content-wrapper/player-content-wrapper.component';
import {UploadVideoComponent} from './common/upload-video/upload-video.component'; import { CustomHotZoneComponent } from './common/custom-hot-zone/custom-hot-zone.component';
import {TimePipe} from './pipes/time.pipe'; import { UploadVideoComponent } from './common/upload-video/upload-video.component';
import {ResourcePipe} from './pipes/resource.pipe'; import { TimePipe } from './pipes/time.pipe';
import {AudioRecorderComponent} from './common/audio-recorder/audio-recorder.component'; import { ResourcePipe } from './pipes/resource.pipe';
import { AudioRecorderComponent } from './common/audio-recorder/audio-recorder.component';
import { FontAwesomeModule, FaIconLibrary } from '@fortawesome/angular-fontawesome'; import { FontAwesomeModule, FaIconLibrary } from '@fortawesome/angular-fontawesome';
import { fas } from '@fortawesome/free-solid-svg-icons'; import { fas } from '@fortawesome/free-solid-svg-icons';
import { far } from '@fortawesome/free-regular-svg-icons'; import { far } from '@fortawesome/free-regular-svg-icons';
...@@ -51,16 +52,19 @@ registerLocaleData(zh); ...@@ -51,16 +52,19 @@ registerLocaleData(zh);
FormsModule, FormsModule,
HttpClientModule, HttpClientModule,
BrowserAnimationsModule, BrowserAnimationsModule,
FontAwesomeModule FontAwesomeModule,
OverlayModule
], ],
providers: [ providers: [
{provide: ErrorHandler, useClass: MyErrorHandler}, { provide: ErrorHandler, useClass: MyErrorHandler },
{ provide: NZ_I18N, useValue: zh_CN } { provide: NZ_I18N, useValue: zh_CN }
], ],
bootstrap: [AppComponent] bootstrap: [AppComponent]
}) })
export class AppModule { export class AppModule {
constructor(library: FaIconLibrary) { constructor(library: FaIconLibrary) {
library.addIconPacks(fas, far); const fs: any = fas;
const fr: any = far;
library.addIconPacks(fs, fr);
} }
} }
...@@ -45,19 +45,17 @@ ...@@ -45,19 +45,17 @@
<fa-icon icon="cog"></fa-icon> <fa-icon icon="cog"></fa-icon>
</div> </div>
</ng-template> </ng-template>
</div> </div>
<div class="p-progress ml-2" (click)="onBtnPlay()" *ngIf="audioUrl || audioBlob" <div class="p-progress ml-2" (click)="onBtnPlay()" *ngIf="audioUrl || audioBlob">
style="background-color: #70B603; width: 35px; height: 35px; border-radius: 35px; margin-left: 10px;margin-top:-1px"> <nz-progress [nzPercent]="percent" [nzWidth]="30" [nzFormat]="progressText"
<nz-progress [nzPercent]="percent" [nzWidth]="35" [nzFormat]="progressText" nzType="circle"></nz-progress>
nzType="circle"> <div class="p-btn-play" [style.left]="isPlaying?'8px':''">
</nz-progress>
<div class="p-btn-play"
style="color: white;margin-left: 2px;margin-top: 1px;"
[style.left]="isPlaying?'8px':''">
<fa-icon [icon]="playIcon"></fa-icon> <fa-icon [icon]="playIcon"></fa-icon>
</div> </div>
</div> </div>
<div class="audio-name">{{_audioName}}</div>
</div> </div>
...@@ -90,26 +90,17 @@ ...@@ -90,26 +90,17 @@
} }
.p-progress { .p-progress {
margin-top: 3.5px; margin-top: 2px;
position: relative; position: relative;
background-color: #27b43f;
border-radius: 15px;
line-height: 26px; line-height: 26px;
.p-btn-play { .p-btn-play {
position: absolute; position: absolute;
left: 11px; left: 10px;
top: 3px; top: 3px;
color: #ffffff; color: #555;
} }
} }
.audio-name{
margin-top: 3.5px;
position: relative;
margin-left: 7px;;
line-height: 26px;
}
:host ::ng-deep nz-upload { :host ::ng-deep nz-upload {
line-height: 33px; line-height: 33px;
} }
......
...@@ -31,21 +31,12 @@ export class AudioRecorderComponent implements OnInit, OnChanges, OnDestroy { ...@@ -31,21 +31,12 @@ export class AudioRecorderComponent implements OnInit, OnChanges, OnDestroy {
@Input() @Input()
audioItem: any = null; audioItem: any = null;
@Input()
_audioName: any = null;
@Input() @Input()
set audioUrl(url) { set audioUrl(url) {
this._audioUrl = url; this._audioUrl = url;
if (url) { if (url) {
this.httpHeadCall(this._audioUrl, flag => {
if (flag) {
this.audio.src = this._audioUrl; this.audio.src = this._audioUrl;
} else {
this.audio.src = this._audioUrl.replace("_l.", ".");
}
this.audio.load(); this.audio.load();
});
} }
this.init(); this.init();
} }
...@@ -57,7 +48,6 @@ export class AudioRecorderComponent implements OnInit, OnChanges, OnDestroy { ...@@ -57,7 +48,6 @@ export class AudioRecorderComponent implements OnInit, OnChanges, OnDestroy {
@Output() audioUploaded = new EventEmitter(); @Output() audioUploaded = new EventEmitter();
@Output() audioUploadFailure = new EventEmitter(); @Output() audioUploadFailure = new EventEmitter();
@Output() audioRemoved = new EventEmitter(); @Output() audioRemoved = new EventEmitter();
@Output() audioName = new EventEmitter();
percent = 0; percent = 0;
progress = 0; progress = 0;
recorder: any; recorder: any;
...@@ -74,41 +64,6 @@ export class AudioRecorderComponent implements OnInit, OnChanges, OnDestroy { ...@@ -74,41 +64,6 @@ export class AudioRecorderComponent implements OnInit, OnChanges, OnDestroy {
}; };
} }
httpHeadCall(requsetUrl: string, callback) {
let xhr = new XMLHttpRequest();
console.log("Status: Send Post Request to " + requsetUrl);
try {
xhr.onreadystatechange = () => {
try {
console.log('xhr.readyState: ', xhr.readyState);
if (xhr.readyState == 4) {
if ((xhr.status >= 200 && xhr.status < 400)) {
callback(true);
} else {
callback(false);
}
}
} catch (e) {
console.log(e)
}
};
xhr.open("HEAD", requsetUrl, true);
xhr.send();
xhr.timeout = 15000;
xhr.onerror = (e) => {
console.log("汪汪汪 posterror", e);
callback(false);
};
xhr.ontimeout = (e) => {
console.log("汪汪汪 ontimeout", e);
callback(false);
};
} catch (e) {
console.log("Send Get Request error: ", e)
}
}
init() { init() {
this.playIcon = 'play'; this.playIcon = 'play';
this.isPlaying = false; this.isPlaying = false;
...@@ -213,12 +168,8 @@ export class AudioRecorderComponent implements OnInit, OnChanges, OnDestroy { ...@@ -213,12 +168,8 @@ export class AudioRecorderComponent implements OnInit, OnChanges, OnDestroy {
break; break;
case 'success': case 'success':
this.isUploading = false; this.isUploading = false;
let url = info.file.response.url;
url = url.substring(0, url.lastIndexOf(".")) + "_l.mp3";
info.file.response.url = url;
this.uploadSuccess(info.file.response); this.uploadSuccess(info.file.response);
this.audioUploaded.emit(info.file.response); this.audioUploaded.emit(info.file.response);
this.audioName.emit(info.file.name);
break; break;
case 'progress': case 'progress':
this.progress = parseInt(info.event.percent, 10); this.progress = parseInt(info.event.percent, 10);
......
...@@ -80,62 +80,43 @@ export class UploadVideoComponent implements OnChanges, OnDestroy { ...@@ -80,62 +80,43 @@ export class UploadVideoComponent implements OnChanges, OnDestroy {
URL.revokeObjectURL(this.videoUrl); URL.revokeObjectURL(this.videoUrl);
} }
httpHeadCall(requsetUrl: string, callback) {
let xhr = new XMLHttpRequest();
console.log("Status: Send Post Request to " + requsetUrl);
try {
xhr.onreadystatechange = () => {
try {
console.log('xhr.readyState: ', xhr.readyState);
if (xhr.readyState == 4) {
if ((xhr.status >= 200 && xhr.status < 400)) {
callback(true);
} else {
callback(false);
}
}
} catch (e) {
console.log(e)
}
};
xhr.open("HEAD", requsetUrl, true);
xhr.send();
xhr.timeout = 15000;
xhr.onerror = (e) => {
callback(false);
};
xhr.ontimeout = (e) => {
callback(false);
};
} catch (e) {
console.log("Send Get Request error: ", e)
}
}
safeVideoUrl(url) { safeVideoUrl(url) {
const _url = url.replace("_l.", "."); console.log(url);
return this.sanitization.bypassSecurityTrustResourceUrl(_url); // `${url}`; return this.sanitization.bypassSecurityTrustResourceUrl(url); // `${url}`;
} }
videoLoadedMetaData() { videoLoadedMetaData() {
} }
handleChange(info: UploadChangeParam): void { handleChange(info: UploadChangeParam/* { type: string, file: UploadFile, event: any }*/): void {
console.log('info:' , info);
switch (info.type) { switch (info.type) {
case 'start': case 'start':
// this.beforeUpload(info.file);
if (!this.checkSelectFile(info.file)) { if (!this.checkSelectFile(info.file)) {
return; return;
} }
this.uploading = true; this.uploading = true;
this.progress = 0; this.progress = 0;
break; break;
case 'success': case 'success':
let url = info.file.response.url;
url = url.substring(0, url.lastIndexOf(".")) + "_l.mp4";
info.file.response.url = url;
this.uploadSuccess(info.file); this.uploadSuccess(info.file);
// this.beforeUpload(info.file);
// this.uploadSuccess(info.file);
break; break;
case 'progress': case 'progress':
this.progress = info.event.percent; this.progress = info.event.percent;
...@@ -144,6 +125,7 @@ export class UploadVideoComponent implements OnChanges, OnDestroy { ...@@ -144,6 +125,7 @@ export class UploadVideoComponent implements OnChanges, OnDestroy {
} }
} }
checkSelectFile(file) { checkSelectFile(file) {
if (!file.lastModified) { if (!file.lastModified) {
return false; return false;
......
@import '../style/common_mixin.css';
.model-content {
width: 100%;
height: 100%;
/* display: flex; */
/* justify-content: flex-start; */
/* align-items: flex-start; */
/* flex-wrap: wrap; */
}
.item-box {
display: flex;
align-items: center;
justify-content: center;
flex-direction: column;
padding: 10px;
padding-bottom: 2vw;
padding-top: 3vw;
}
.pic-sound-box {
width: 50%;
display: flex;
flex-direction: column;
}
.add-btn-box {
display: flex;
align-items: center;
justify-content: center;
height: 20vw;
padding: 10px;
padding-top: 5vw;
}
.border {
width: 450px;
height: 450px;
border-radius: 20px;
border-style: dashed;
text-align: center;
float: left;
margin-left: 10px;
margin-bottom: 10px;
}
.group-title {
width: 100%;
}
.group-item {
width: 100%;
display: flex;
justify-content: flex-start;
align-items: flex-start;
flex-wrap: wrap;
padding: 10px;
}
.box-dbt-0 {
border: 1px solid gray;
width: 100%;
/* text-align: center; */
border-top-left-radius: 25px;
border-top-right-radius: 25px;
border-bottom: 0px;
}
.box-dbt-1 {
border: 1px solid gray;
width: 100%;
text-align: left;
border-bottom-left-radius: 25px;
border-bottom-right-radius: 25px;
}
.box-dbt-2 {
margin-left: 25%;
width: 50%;
height: 100px;
text-align: center;
}
.box-lbt-0 {
border: 1px solid gray;
width: 100%;
text-align: center;
border-left: 0px;
border-right: 0px;
}
.box-lbt-1 {
border: 1px 0px 0px 0px solid gray;
width: 100%;
text-align: left;
}
.box-lbt-2 {
border: 1px 0px 0px 0px solid gray;
margin-left: 25%;
width: 50%;
height: 100px;
text-align: center;
}
.box-son-0 {
border: 1px solid gray;
width: 100%;
text-align: center;
border-left: 0px;
border-right: 0px;
border-bottom: 0px;
}
.box-son-1 {
border: 1px 0px 0px 0px solid gray;
width: 100%;
text-align: left;
}
.error-message {
border: 1px solid gray;
margin-top: 1%;
width: 100%;
height: 100px;
background-color: #fff;
border-radius: 15px;
text-align: center;
box-shadow: 0px 0px 5px 2px #888888;
overflow: hidden;
}
/* .cdk-overlay-container {
width: 600px;
height: 300px;
position: absolute;
background: #fff;
border: 1px solid rgba(0, 0, 0, 0.2);
border-radius: 10px;
margin-left: 100px;
margin-top: 100px;
text-align: center;
padding: 10px;
} */
\ No newline at end of file
<!--
一组游戏
一个图片动画
一个文字动画
一个文字声音
一个图片背景
不限制组的数量
-->
<div>
<div>
<div>
<div class="border">
<div style="width: 100%; align-items:center;">
<div class="item-box" style="width: 50%;height:200px; margin-left: 25%; margin-top: 10%;">
<span>猫咪开始引导音频</span>
<div style="display: flex; justify-items: center; padding-top: 10px">
<app-audio-recorder [audioUrl]="picArr.cat.start"
(audioUploaded)="onAudioUploadSuccess($event, picArr.cat,'start')">
</app-audio-recorder>
</div>
<span>猫咪录音引导音频</span>
<div style="display: flex; justify-items: center; padding-top: 10px">
<app-audio-recorder [audioUrl]="picArr.cat.record"
(audioUploaded)="onAudioUploadSuccess($event, picArr.cat,'record')">
</app-audio-recorder>
</div>
<span>猫咪待机音频</span>
<div style="display: flex; justify-items: center; padding-top: 10px">
<app-audio-recorder [audioUrl]="picArr.cat.wait"
(audioUploaded)="onAudioUploadSuccess($event, picArr.cat,'wait')">
</app-audio-recorder>
</div>
<span>猫咪结束音频</span>
<div style="display: flex; justify-items: center; padding-top: 10px">
<app-audio-recorder [audioUrl]="picArr.cat.finish"
(audioUploaded)="onAudioUploadSuccess($event, picArr.cat,'finish')">
</app-audio-recorder>
</div>
</div>
</div>
</div>
</div>
<div>
<div class="border">
<div style="width: 100%; align-items:center;">
<div class="item-box" style="width: 50%;height:200px; margin-left: 25%; margin-top: 10%;">
<span>try again 音效一</span>
<div style="display: flex; justify-items: center; padding-top: 10px">
<app-audio-recorder [audioUrl]="picArr.tryagain.one"
(audioUploaded)="onAudioUploadSuccess($event, picArr.tryagain,'one')">
</app-audio-recorder>
</div>
<span>try again 音效二</span>
<div style="display: flex; justify-items: center; padding-top: 10px">
<app-audio-recorder [audioUrl]="picArr.tryagain.two"
(audioUploaded)="onAudioUploadSuccess($event, picArr.tryagain,'two')">
</app-audio-recorder>
</div>
<span>try again 音效三</span>
<div style="display: flex; justify-items: center; padding-top: 10px">
<app-audio-recorder [audioUrl]="picArr.tryagain.three"
(audioUploaded)="onAudioUploadSuccess($event, picArr.tryagain,'three')">
</app-audio-recorder>
</div>
</div>
</div>
</div>
</div>
<!-- http://localhost:4200/?type=form
一组游戏
一个图片动画
一个文字动画
一个文字声音
一个图片背景
不限制组的数量 -->
</div>
<div *ngFor="let item of picArr.list; let i = index">
<div class="border" style="height:500px;">
<div style="width: 100%; align-items:center;">
<!-- <span style="font-weight: 500; font-size: 27px; color: red; ">选项</span> -->
<div class="item-box" style="width: 50%;height:300px; margin-left: 25%; margin-top: 10%;">
<span>文字</span>
<input style="width: 80%; margin-bottom: 0.5vw" type="text" nz-input placeholder="" [(ngModel)]="item.title"
(blur)="saveItem()">
<span>选择标红文字</span>
<div style="display: flex;">
<style>
.switch-box {
border: 1px solid #333;
padding: 2px 10px;
margin: 5px;
cursor: pointer;
}
</style>
<div *ngFor="let s of item.title.split(''); let m = index">
<div *ngIf="item.titleRed[m] != 1" class="switch-box" style="color: #333;"
(click)="onChoseRed(item.titleRed,m,1,item)">
{{s}}
</div>
<div *ngIf="item.titleRed[m] == 1" class="switch-box" style="color: #f00;"
(click)="onChoseRed(item.titleRed,m,0,item)">
{{s}}
</div>
</div>
</div>
<div style="margin-top: 10px;">
<app-upload-dragon-bone style="width: 100%" (save)="onDragonBoneSave($event,item)"
[skeJsonData]="item.imgAni.ske" [texJsonData]="item.imgAni.tex" [texPngData]="item.imgAni.png">
</app-upload-dragon-bone>
</div>
<span>图片</span>
<app-upload-image-with-preview style="width: 100%" [picUrl]="item.bgImg"
(imageUploaded)="onImageUploadSuccessByItem($event, item)">
</app-upload-image-with-preview>
<div style="display: flex; justify-items: center; padding-top: 10px">
<app-audio-recorder [audioUrl]="item.wordAudio" (audioUploaded)="onAudioUploadSuccessByItem($event, item)">
</app-audio-recorder>
</div>
</div>
<div class="item-box" style="width: 50%; margin-left: 25%;
margin-top: 30px;">
<button style="margin-bottom: 10px;" nz-button nzType="danger" (click)="deleteItem(i)">
<span>删除</span>
</button>
</div>
</div>
</div>
</div>
<div>
<div class="border">
<div style="width: 100%; align-items:center;">
<div class="item-box" style="width: 50%; margin-left: 25%;
margin-top: 30px;">
<button style="margin-bottom: 10px;" nz-button nzType="default" (click)="addItem()">
<span>增加</span>
</button>
</div>
</div>
</div>
</div>
</div>
\ No newline at end of file
import { Component, EventEmitter, Input, OnDestroy, OnChanges, OnInit, Output, ApplicationRef } from '@angular/core';
@Component({
selector: 'app-form',
templateUrl: './form.component.html',
styleUrls: ['./form.component.css']
})
export class FormComponent implements OnInit, OnChanges, OnDestroy {
picArr = {
cat: {
start: "",
record: "",
wait: "",
finish: "",
},
tryagain: {
one: "",
two: "",
three: "",
},
list: [],
};
_item: any;
KEY = 'hw_op52';
errs = [];
// @Input()
set item(item) {
this._item = item;
// this.init();
}
get item() {
return this._item;
}
@Output()
update = new EventEmitter();
constructor(private appRef: ApplicationRef) {
}
ngOnInit() {
this.item = {};
this.item.contentObj = {};
const getData = (<any>window).courseware.getData;
getData((data) => {
if (data) {
this.item = data;
} else {
this.item = {};
}
if (!this.item.contentObj) {
this.item.contentObj = {};
}
console.log('~data:', data);
this.init();
this.refresh();
}, this.KEY);
// this.initData();
}
ngOnChanges() {
}
ngOnDestroy() {
}
classItem() {
function AniAssets() {
this.ske = {};
this.tex = {};
this.png = {};
this.setData = function (obj) {
this.ske = obj.ske;
this.tex = obj.tex;
this.png = obj.png;
}
}
function Item() {
this.title = "";
this.titleRed = [];
this.titleObj = {};
this.bgImg = "";
this.wordAudio = "";
this.imgAni = new AniAssets();
}
return new Item();
}
onChoseRed(arr, i, val, item) {
console.log(arr);
arr[i] = val;
item.titleObj = item.title.split("").map((s, idx) => {
return {
card: s,
color: item.titleRed[idx] == 1 ? 0 : 1
}
})
this.save();
}
init() {
//在卡片组之上需要增加 两个组 0根->picArr 1题组->testlet 2页面->page 3卡片对->itemData
if (this.item.contentObj.picArr) {
this.picArr = this.item.contentObj.picArr;
this.check();
} else {
this.picArr = this.getDefaultPicArr();
this.item.contentObj.picArr = this.picArr;
}
console.log('item:', this.item);
}
cardItemData() {
return this.classItem()
}
getDefaultPicArr() {
let cat = {
start: "",
record: "",
wait: "",
finish: "",
}
let tryagain = {
one: "",
two: "",
three: "",
}
let list = [this.classItem()]
return { cat: cat, tryagain: tryagain, list: list };
}
initData() {
}
onDragonBoneSave(e, item) {
console.log(e);
this.save();
}
onImageUploadSuccessByItem(e, item) {
item.bgImg = e.url;
this.save();
}
onAudioUploadSuccessByItem(e, item) {
item.wordAudio = e.url;
this.save();
}
onAudioUploadSuccess(e, item, key) {
item[key] = e.url;
this.save();
}
//添加一对
addItem() {
//最多4个
let item = this.cardItemData();
this.picArr.list.push(item)
this.saveItem();
}
deleteItem(i) {
this.picArr.list.splice(i, 1);
this.save();
}
//选择圆圈
radioClick(it, radioValue) {
it.radioValue = radioValue;
this.saveItem();
}
saveItem() {
console.log(' in saveItem');
// this.update.emit(this.item);
this.save();
}
check() {
if (!this.picArr) return;
this.errs.length = 0;
console.log("this.errs");
console.log(this.errs);
console.log("-------------------------");
}
save() {
//触发一次检测
this.check();
(<any>window).courseware.setData(this.item, null, this.KEY);
console.log('this.item = ' + JSON.stringify(this.item));
this.refresh();
}
refresh() {
setTimeout(() => {
this.appRef.tick();
}, 1);
}
}
/* You can add global styles to this file, and also import other style files */ /* You can add global styles to this file, and also import other style files */
@import "~ng-zorro-antd/ng-zorro-antd.min.css";
\ No newline at end of file
import { ApplicationRef, ChangeDetectorRef, ElementRef, ViewChild } from "@angular/core";
export class ComponentBase {
// 储存数据用
saveKey = "";
// 储存对象
item: any = {};
ngOnChanges() { }
ngOnDestroy() { }
constructor(private appRef: ApplicationRef, private changeDetectorRef: ChangeDetectorRef) { }
ngOnInit() {
// 获取存储的数据
(<any>window).courseware.getData((data) => {
if (data) {
this.item = data;
this.itemStr = JSON.stringify(this.item, null, 4).trim();
}
this.init();
this.changeDetectorRef.markForCheck();
this.changeDetectorRef.detectChanges();
this.refresh();
}, this.saveKey);
}
@ViewChild("itemTextarea", { static: true }) itemTextarea: ElementRef;
copyData() {
this.itemTextarea.nativeElement.select();
document.execCommand("copy");
}
/**
* 储存图片数据
* @param e
*/
onAssetUploadSuccess(e: any, ...key: Array<string>) {
let item = this.item;
for (let i = 0; i < key.length; i++) {
if (i + 1 == key.length) {
item[key[i]] = e.url;
this.save();
return;
}
item = item[key[i]];
}
}
save() {
(<any>window).courseware.setData(this.item, null, this.saveKey);
this.itemStr = JSON.stringify(this.item, null, 4).trim();
this.refresh();
console.log('this.item = ' + JSON.stringify(this.item));
}
itemStr = "";
load() {
this.itemStr = this.itemTextarea.nativeElement.value;
if (this.isJSON(this.itemStr)) {
this.item = JSON.parse(this.itemStr);
this.init();
this.changeDetectorRef.markForCheck();
this.changeDetectorRef.detectChanges();
this.refresh();
}
}
isJSON(str) {
if (typeof str == 'string') {
try {
var obj = JSON.parse(str);
if (typeof obj == 'object' && obj) {
return true;
}
return false;
} catch (e) {
return false;
}
}
return false;
}
/**
* 刷新 渲染页面
*/
refresh() {
setTimeout(() => {
this.appRef.tick();
}, 1);
}
init() { }
}
@import '../style/common_mixin.css';
.model-content {
width: 100%;
height: 100%;
}
.radioPaire {
float: left;
margin: 3px;
border-style: dashed;
border-color: #000;
border-width: 1px;
}
.border {
border-radius: 20px;
border-style: dashed;
padding: 20px;
margin: 20px;
/*width: 500px; */
/*//border-radius: 20px;*/
/*//border-width: 2px;*/
/*//border-color: #000000;*/
}
.border-lite {
border: 2px dashed #ddd;
border-radius: 0.5rem;
padding: 10px;
margin: 10px;
}
.button-right {
border-style: dotted;
border-color: rgb(42, 142, 72);
width: 100px;
height: 50px;
color: rgb(42, 142, 72);
background-color: white;
}
.button-wrong {
border-style: dotted;
border-color: rgb(180, 0, 0);
width: 100px;
height: 50px;
color: rgb(180, 0, 0);
background-color: white;
}
.button-disable {
border-style: dotted;
border-color: black;
width: 100px;
height: 50px;
color: black;
background-color: white;
}
\ No newline at end of file
<div class="model-content">
<div style="padding: 10px;">
<div class="border" style="width: 1000px;">
<textarea style="width: 955px; height: 300px;" (blur)="load()" #itemTextarea>{{itemStr}}</textarea>
<button (click)="copyData();">Copy</button>
</div>
<div class="border" style="width: 1000px;">
<span style="font-size: 20px;">标题: </span>
<input type="text" nz-input [(ngModel)]="item.title" (blur)="save()">
<span style="font-size: 20px;">题目说明: </span>
<input type="text" nz-input [(ngModel)]="item.questionText" (blur)="save()">
<span style="font-size: 20px;">题目说明音频: </span>
<app-audio-recorder
[audioUrl]="item.questionTextAudio"
(audioUploaded)="onAssetUploadSuccess($event, 'questionTextAudio')"
[_audioName]="item.audioFileName"
(audioName)="saveAudioFileName($event)"
></app-audio-recorder>
</div>
<div class="border" style="width: 1000px;">
<div *ngFor="let question of item.questions; let i = index">
<div class="border" style="width: 950px;">
<span style="font-size: 20px;">选项类型: </span>
<div *ngIf="question.type=='img'">
<button class="button-right">图片</button>
&nbsp;
<button class="button-disable" (click)="question.type='txt'; save();">文字</button>
</div>
<div *ngIf="question.type=='txt'">
<button class="button-disable" (click)="question.type='img'; save();">图片</button>
&nbsp;
<button class="button-right">文字</button>
</div>
<div *ngIf="question.type=='img'">
图片:
<div style="width: 300px;">
<app-upload-image-with-preview [picUrl]="question.image"
(imageUploaded)="onAssetUploadSuccess($event, 'questions', i, 'image')">
</app-upload-image-with-preview>
</div>
</div>
<span>音频: </span>
<app-audio-recorder [audioUrl]="question.audio"
(audioUploaded)="onAssetUploadSuccess($event, 'questions', i, 'audio')">
</app-audio-recorder>
<div *ngIf="question.type=='txt'">
<span>文本: </span>
<input type="text" nz-input [(ngModel)]="question.text" (blur)="save()">
</div>
<br>
<button style="width: 900px; height: 30px; color: red;" (click)="removeQuestion(i)">删除题目</button>
</div>
</div>
<div class="border" style="width: 950px;">
<button style="width: 900px; height: 100px;" (click)="addQuestion()">增加题目</button>
</div>
</div>
</div>
</div>
\ No newline at end of file
import { Component, EventEmitter, Input, OnDestroy, OnChanges, OnInit, Output, ApplicationRef, ChangeDetectorRef } from '@angular/core';
import { JsonPipe } from '@angular/common';
import { ComponentBase } from './ComponentBase';
@Component({
selector: 'app-form',
templateUrl: './form.component.html',
styleUrls: ['./form.component.css']
})
export class FormComponent extends ComponentBase implements OnInit, OnChanges, OnDestroy {
// 储存数据用
saveKey = "card_machine";
// 储存对象
item: any = {
title: '',
questionText: '',
questionTextAudio: '',
audioFileName: '',
questions: [],
};
addQuestion() {
this.item.questions.push({
type: 'img',
audio: '',
text: '',
image: ''
});
this.save();
}
removeQuestion(idx) {
this.item.questions.splice(idx, 1);
this.save();
}
saveAudioFileName(name) {
this.item.audioFileName=name;
this.save();
}
}
\ No newline at end of file
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