Commit 80e88d37 authored by huoshizhe's avatar huoshizhe

feat: ZD04

parent 6151e8e4
......@@ -5,6 +5,12 @@
/publish/publish/play
/publish/publish/form
/publish/publish/android
/publish/publish/web_desktop
/publish/publish/ios
/publish/publish/*.zip
/node_modules
\ No newline at end of file
/publish/publish/config.json
/publish/publish/Release*
/node_modules
/play/build_android
/play/build_ios
/play/build_web_desktop
\ No newline at end of file
# cocos-generator
cocos creator技术框架下的H5互动模板框架脚手架,基于cocos creator实现快速开发基于绘玩云的H5互动课件。
# 使用简介
## 前期准备
* git下载 https://git-scm.com/downloads
* nodejs下载 https://nodejs.org/zh-cn/download/
* 谷歌浏览器下载 https://www.google.cn/chrome/
都下载最新版就行,然后默认安装就可以
## 生成项目
* 登录绘玩云课件开发平台:http://staging-teach.ireadabc.com/
* 点击“登录账号,查看我的课件”
* 输入测试的用户名/密码:developers/12345678
* 在右上角“个人中心”的下拉菜单里,点击“我的模板” 菜单,然后点击“新建模板”, 填写必要的信息,在“技术选型”一项上选择“Cocos”
* 点击“确定”后,列表页就会出现一个新生成的模板项目
* 在项目的卡片下找到“开发”按钮,则会弹出相对应的git地址
## 获取并启动项目
```
// xxx 是上面项目对应的Git地址
git clone xxx
cd 项目名称/
npm install
// 打开Cocos Creator, 点击项目(Project)=> 添加(Add) 在打开的对话框里面选择进入clone下来的项目,选择play文件夹,然后打开
// 进行常规的Cocos开发
```
## 本地调试
### 普通模板
* 找到 Cocos Creator 的安装目录下 Creator/2.4.5/CocosCreator.app/Contents/Resources/static/preview-templates/index.jade 文件
* 在引入JS的位置添加如下代码:
```
script(type='text/javascript' charset='utf-8' src='//staging-teach.cdn.ireadabc.com/h5template/h5-static-lib/js/air.js')
```
* 打开浏览器:http://staging-teach.ireadabc.com/template_ci/debug
* 点击右上角齿轮,选择技术选型、调试模式选择“普通”
### 互动模板
* 找到 Cocos Creator 的安装目录下 Creator/2.4.5/CocosCreator.app/Contents/Resources/static/preview-templates/index.jade 文件
* 在引入JS的位置添加如下代码:
```
script(type='text/javascript' charset='utf-8' src='//staging-teach.cdn.ireadabc.com/h5template/h5-static-lib/js/air_online_open.js')
```
* 打开浏览器:http://staging-teach.ireadabc.com/template_ci/debug
* 点击右上角齿轮,选择技术选型、调试模式选择“互动”
* 左侧老师、右侧学生
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
@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;
}
<div class="model-content">
<div style="padding: 10px;">
<div style="width: 300px;" align='center'>
<span>图1: </span>
<app-upload-image-with-preview
[picUrl]="item.pic_url"
(imageUploaded)="onImageUploadSuccess($event, 'pic_url')">
</app-upload-image-with-preview>
</div>
<div style="width: 300px; margin-top: 5px;" align='center'>
<span>图2: </span>
<app-upload-image-with-preview
[picUrl]="item.pic_url_2"
(imageUploaded)="onImageUploadSuccess($event, 'pic_url_2')">
</app-upload-image-with-preview>
</div>
<div class="card-config">
<div *ngFor="let item of dataArray; let i = index" class="card-item" style="padding: 0.5vw;" >
<div class="card-item-content border">
<div class="card-item-content">
<div class="title" >
第-<strong>{{ i + 1 }}</strong>-题
</div>
<div style="width: 300px; margin-top: 15px;">
<span>文本: </span>
<input type="text" nz-input [(ngModel)]="item.text" (blur)="save()">
</div>
<div class="section" >
<div class="section-title" >
问题
</div>
<div class="section-content">
<div style="flex:1">
<div style="display: flex; margin-bottom: 10px;">
<div style="flex:1">
文字
</div>
<div style="flex:5">
<input type="text" nz-input placeholder="" [(ngModel)]="item.question.text" (blur)="saveItem()" style="width: 250px;" />
</div>
</div>
<div style="margin-top: 5px">
<span>音频: </span>
<app-audio-recorder
[audioUrl]="item.audio_url"
(audioUploaded)="onAudioUploadSuccess($event, 'audio_url')"
></app-audio-recorder>
</div>
<div style="display: flex; margin-bottom: 10px;">
<div style="flex:1">
音频
</div>
<div style="flex:5">
<app-audio-recorder [audioUrl]="item.question.audio_url" (audioUploaded)="onAudioUploadSuccessByItem($event, item.question)" ></app-audio-recorder>
</div>
</div>
<div style="display: flex; margin-bottom: 10px;">
<div style="flex:1">
时间
</div>
<div style="flex:5">
<input type="text" nz-input placeholder="" [(ngModel)]="item.time" (blur)="saveItem()" style="width: 80px;" /><span style="margin-left: 10px;"></span>
</div>
</div>
</div>
</div>
</div>
<div class="section" >
<div style="text-align: right; padding-right: 20px;">
<button style="margin-bottom: 10px;" nz-button nzType="danger" (click)="deleteItem(i)" >
<span>删除本题</span>
</button>
</div>
</div>
</div>
</div>
</div>
<div class="card-item" style="padding: 0.5vw;" >
<button nz-button nzType="primary" class="add-btn" (click)="addItem()">
<i nz-icon nzType="plus-circle" nzTheme="outline"></i>
新建卡片组
</button>
</div>
</div>
</div>
@import "../style/common_mixin";
.model-content {
.card-config {
width: 100%;
height: 100%;
margin-left: 10px;
display: flex;
flex-wrap: wrap;
.card-item{
flex:1;
.border {
border-radius: 20px;
border-style: dashed;
padding:20px;
width: 800px;
}
.card-item-content{
.title {
font-size: 24px;
width: 100%;
text-align: center;
}
.section{
border-top: 1px solid ;
padding: 10px 0;
.section-title{
font-size: 24px;
width: 100%;
}
.section-content{
display: flex;
margin: 5px 0 10px 0;
}
}
.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;
}
}
}
}
}
import { Component, EventEmitter, Input, OnDestroy, OnChanges, OnInit, Output, ApplicationRef, ChangeDetectorRef } from '@angular/core';
import { JsonPipe } from '@angular/common';
import {Component, EventEmitter, Input, OnDestroy, OnChanges, OnInit, Output, ApplicationRef} from '@angular/core';
@Component({
selector: 'app-form',
templateUrl: './form.component.html',
styleUrls: ['./form.component.css']
styleUrls: ['./form.component.scss']
})
export class FormComponent implements OnInit, OnChanges, OnDestroy {
// 储存数据用
saveKey = "test_001";
// 储存对象
item;
export class FormComponent implements OnInit, OnChanges, OnDestroy {
constructor(private appRef: ApplicationRef, private changeDetectorRef: ChangeDetectorRef) {
dataArray = [];
_item: any;
KEY = 'ZD04';
set item(item) {
this._item = item;
}
createShell() {
this.item.wordList.push({
word: '',
audio: '',
backWord: '',
backWordAudio: '',
});
this.save();
get item() {
return this._item;
}
removeShell(idx) {
this.item.wordList.splice(idx, 1);
this.save();
@Output()
update = new EventEmitter();
constructor(private appRef: ApplicationRef) {
}
ngOnInit() {
this.item = {};
// 获取存储的数据
(<any>window).courseware.getData((data) => {
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 = {};
}
this.init();
this.changeDetectorRef.markForCheck();
this.changeDetectorRef.detectChanges();
this.refresh();
}, this.saveKey);
this.saveItem();
}, this.KEY);
}
ngOnChanges() {
}
ngOnDestroy() {
}
init() {
if (this.item.contentObj.dataArray) {
this.dataArray = this.item.contentObj.dataArray;
} else {
this.dataArray = this.getDefaultPicArr();
this.item.contentObj.dataArray = this.dataArray;
}
}
cardItemData(){
return {
time: 5,
question:{
text:"",
audio_url:""
},
};
}
cardChoiceData(){
return { isText: true, text: "", image_url: "" }
}
getDefaultPicArr() {
let arr = [];
return arr;
}
/**
* 储存图片数据
* @param e
*/
onImageUploadSuccess(e, key) {
this.item[key] = e.url;
this.save();
initData() {
}
/**
* 储存音频数据
* @param e
*/
onAudioUploadSuccess(e, key) {
this.item[key] = e.url;
deleteItem(index) {
if (index !== -1) {
this.dataArray.splice(index, 1);
}
this.save();
}
deleteChoice(questionIndex, choiceIndex){
if (questionIndex !== -1 && choiceIndex !== -1) {
this.dataArray[questionIndex].choice.incorrect.splice(choiceIndex, 1);
}
this.save();
}
addChoice(questionIndex) {
let item = this.cardChoiceData();
this.dataArray[questionIndex].choice.incorrect.push(item);
this.saveItem();
}
onWordAudioUploadSuccess(e, idx) {
this.item.wordList[idx].audio = e.url;
onImageUploadSuccessByItem(e, item) {
item.image_url = e.url
this.save();
}
onAudioUploadSuccessByItem(e, item) {
item.audio_url = e.url;
this.save();
}
onTitleAudioUploadSuccess(e) {
this.item.contentObj.titleAudio_url = e.url;
this.save();
}
addItem() {
let item = this.cardItemData();
this.dataArray.push(item);
this.saveItem();
}
radioClick(it, radioValue) {
it.radioValue = radioValue;
onBackWordAudioUploadSuccess(e, idx) {
this.item.wordList[idx].backWordAudio = e.url;
this.saveItem();
}
clickCheckBox() {
this.saveItem();
}
saveItem() {
this.save();
}
/**
* 储存数据
*/
save() {
(<any>window).courseware.setData(this.item, null, this.saveKey);
(<any> window).courseware.setData(this.item, null, this.KEY);
this.refresh();
//console.log(this.item)
console.log('this.item = ' + JSON.stringify(this.item));
}
/**
* 刷新 渲染页面
*/
refresh() {
setTimeout(() => {
this.appRef.tick();
}, 1);
}
}
\ 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.1.2",
"uuid": "c35bb2f6-f24a-4850-ae44-643f2fdc7541",
"isBundle": false,
"bundleName": "",
"priority": 1,
"compressionType": {},
"optimizeHotUpdate": {},
"inlineSpriteFrames": {},
"isRemoteBundle": {},
"subMetas": {}
}
\ No newline at end of file
{"ver":"1.1.2","uuid":"c35bb2f6-f24a-4850-ae44-643f2fdc7541","isBundle":false,"bundleName":"","priority":1,"compressionType":{},"optimizeHotUpdate":{},"inlineSpriteFrames":{},"isRemoteBundle":{"ios":false,"android":false},"subMetas":{}}
\ No newline at end of file
{
"ver": "2.0.1",
"uuid": "f0680ae0-c079-45ef-abd7-9e63d90b982b",
"uuid": "5b64c213-7008-4deb-8733-b8bc4787e2ed",
"downloadMode": 0,
"duration": 0.130612,
"duration": 0.5774,
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.0.1",
"uuid": "0de01648-bb35-4437-82e3-c4348ebc5cb3",
"downloadMode": 0,
"duration": 2.336,
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.0.1",
"uuid": "082e4b12-5a20-4c60-b5a6-3f1a8e6e1dbf",
"downloadMode": 0,
"duration": 0.938688,
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.0.1",
"uuid": "02149cf3-2005-4a8b-aeed-c4cb4765ec02",
"downloadMode": 0,
"duration": 1.802449,
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.0.1",
"uuid": "e8289b48-a58a-4e09-ac11-49f262242ebd",
"downloadMode": 0,
"duration": 3.0885,
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.0.1",
"uuid": "3023237b-577b-4876-b528-5e3096a25304",
"downloadMode": 0,
"duration": 0.313469,
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.0.1",
"uuid": "da36de83-153e-47c1-a679-737aeaf7092c",
"downloadMode": 0,
"duration": 0.767083,
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.0.1",
"uuid": "4bda48c7-82c1-41fe-befc-a190cb24e145",
"downloadMode": 0,
"duration": 0.115,
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.0.1",
"uuid": "6a1dde8c-dedd-42ad-9d5e-38a9eb040277",
"downloadMode": 0,
"duration": 0.326,
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.0.1",
"uuid": "ada99876-7c10-44a6-b969-f11044cd391f",
"downloadMode": 0,
"duration": 4,
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.0.1",
"uuid": "829a6c4a-0472-4df0-9481-e305d3f2238c",
"downloadMode": 0,
"duration": 3.787755,
"subMetas": {}
}
\ No newline at end of file
{"frameRate":24,"name":"zd-cloud","version":"5.5","compatibleVersion":"5.5","armature":[{"type":"Armature","frameRate":24,"name":"Armature","aabb":{"x":-115.4,"y":-43.01,"width":226,"height":86},"bone":[{"name":"root"},{"name":"zd-cloud1","parent":"root","transform":{"x":-2.3951,"y":-0.0058}}],"slot":[{"name":"zd-cloud","parent":"zd-cloud1"}],"skin":[{"slot":[{"name":"zd-cloud","display":[{"name":"zd-cloud"}]}]}],"animation":[{"duration":240,"playTimes":0,"name":"newAnimation","bone":[{"name":"zd-cloud1","translateFrame":[{"duration":120,"tweenEasing":0,"x":440.14},{"tweenEasing":0,"x":-427.06},{"duration":119,"tweenEasing":0,"x":440.14},{"duration":0,"x":-427.06}]}],"slot":[{"name":"zd-cloud","colorFrame":[{"duration":30,"tweenEasing":0,"value":{"aM":0}},{"duration":91,"tweenEasing":0},{"duration":30,"tweenEasing":0,"value":{"aM":0}},{"duration":89}]}]}],"defaultActions":[{"gotoAndPlay":"newAnimation"}],"canvas":{"width":1400,"height":300}}]}
\ No newline at end of file
{
"ver": "1.0.1",
"uuid": "6770a4b4-c164-4642-a4a8-8a6c056c34ba",
"subMetas": {}
}
\ No newline at end of file
{"name":"zd-cloud","imagePath":"zd-cloud_tex.png","height":128,"SubTexture":[{"name":"zd-cloud","x":1,"height":86,"y":1,"width":226}],"width":256}
\ No newline at end of file
{
"ver": "1.0.1",
"uuid": "5da48cd4-b88c-408c-ba22-30368a050482",
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "578ddcda-02bb-466b-826c-25c019350f11",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 256,
"height": 128,
"platformSettings": {},
"subMetas": {
"zd-cloud_tex": {
"ver": "1.0.4",
"uuid": "15d54a51-30a6-40e6-af09-5658fcf0f250",
"rawTextureUuid": "578ddcda-02bb-466b-826c-25c019350f11",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": -14,
"offsetY": 20,
"trimX": 1,
"trimY": 1,
"width": 226,
"height": 86,
"rawWidth": 256,
"rawHeight": 128,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{"frameRate":24,"name":"zd-deedback-final","version":"5.5","compatibleVersion":"5.5","armature":[{"type":"Armature","frameRate":24,"name":"Armature","aabb":{"x":-424.5,"y":-354.25,"width":882.33,"height":204.25},"bone":[{"name":"root"},{"name":"star1","parent":"root","transform":{"x":201.5,"y":-334.5}},{"name":"star2","parent":"root","transform":{"x":343.5,"y":-332}},{"name":"star3","parent":"root","transform":{"x":411,"y":-248.5}},{"name":"射光左1","parent":"root","transform":{"x":-361.3864,"y":-203.4318}},{"name":"射光上","parent":"root","transform":{"x":-62.5227,"y":-342.9318}},{"name":"射光右2","parent":"root","transform":{"x":281.8409,"y":-328.9955}},{"name":"点1","parent":"root","transform":{"x":219.5,"y":-157}},{"name":"点2","parent":"root","transform":{"x":-303.5,"y":-334}},{"name":"点3","parent":"root","transform":{"x":-121.5,"y":-301}},{"name":"点4","parent":"root","transform":{"x":-265.5,"y":-156}},{"name":"点5","parent":"root","transform":{"x":276,"y":-230.5}},{"name":"点6","parent":"root","transform":{"x":410,"y":-172}},{"name":"点7","parent":"root","transform":{"x":108,"y":-324}},{"name":"射光右1","parent":"root","transform":{"x":454.5795,"y":-212.5455}},{"name":"射光左2","parent":"root","transform":{"x":-256.8523,"y":-347.7386}},{"name":"星星4","parent":"root","transform":{"x":-2.55,"y":-298.55}},{"name":"星星5","parent":"root","transform":{"x":-411.5,"y":-224.5}},{"name":"星星6","parent":"root","transform":{"x":-192.3829,"y":-325.5276}}],"slot":[{"name":"Oval 2 Copy 2","parent":"点4"},{"name":"Oval 2 Copy 3","parent":"点3"},{"name":"Oval 2 Copy 4","parent":"点5"},{"name":"Oval 2 Copy 5","parent":"点2"},{"name":"Oval 2 Copy 6","parent":"点6"},{"name":"Oval 2 Copy","parent":"点1"},{"name":"Oval 2","parent":"点7"},{"name":"Path 11 Copy","parent":"射光右2"},{"name":"Path 11","parent":"射光右1"},{"name":"Path 12 Copy 2","parent":"射光上"},{"name":"Path 12 Copy","parent":"射光左2"},{"name":"Path 12","parent":"射光左1"},{"name":"Star Copy 2","parent":"星星4"},{"name":"Star Copy 3","parent":"star3"},{"name":"Star Copy 4","parent":"星星5"},{"name":"Star Copy 6","parent":"star2"},{"name":"Star Copy","parent":"星星6"},{"name":"Star","parent":"star1"}],"skin":[{"slot":[{"name":"Path 12","display":[{"name":"Path 12","transform":{"x":72.45,"y":7.07}}]},{"name":"Path 11 Copy","display":[{"name":"Path 11 Copy","transform":{"x":-36.82,"y":28.73}}]},{"name":"Oval 2 Copy 6","display":[{"name":"Oval 2 Copy 6"}]},{"name":"Star Copy 3","display":[{"name":"Star Copy 3"}]},{"name":"Oval 2 Copy","display":[{"name":"Oval 2 Copy"}]},{"name":"Path 12 Copy 2","display":[{"name":"Path 12 Copy 2","transform":{"x":3.7,"y":17.11}}]},{"name":"Oval 2 Copy 3","display":[{"name":"Oval 2 Copy 3"}]},{"name":"Star Copy 4","display":[{"name":"Star Copy 4"}]},{"name":"Oval 2 Copy 4","display":[{"name":"Oval 2 Copy 4"}]},{"name":"Oval 2 Copy 2","display":[{"name":"Oval 2 Copy 2"}]},{"name":"Oval 2 Copy 5","display":[{"name":"Oval 2 Copy 5"}]},{"name":"Star","display":[{"name":"Star"}]},{"name":"Path 11","display":[{"name":"Path 11","transform":{"x":-104.25,"y":9.14}}]},{"name":"Star Copy","display":[{"name":"Star Copy"}]},{"name":"Star Copy 6","display":[{"name":"Star Copy 6"}]},{"name":"Path 12 Copy","display":[{"name":"Path 12 Copy","transform":{"x":35.77,"y":47.99}}]},{"name":"Oval 2","display":[{"name":"Oval 2"}]},{"name":"Star Copy 2","display":[{"name":"Star Copy 2"}]}]}],"animation":[{"duration":27,"playTimes":0,"name":"feedback-final","bone":[{"name":"star1","translateFrame":[{"duration":8,"tweenEasing":0,"x":-201.47,"y":207.56},{"duration":19}],"rotateFrame":[{"duration":8},{"duration":13,"tweenEasing":0},{"duration":6,"rotate":164.5}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":19}]},{"name":"star2","translateFrame":[{"duration":8,"tweenEasing":0,"x":-339.52,"y":198.81},{"duration":19}],"rotateFrame":[{"duration":8},{"duration":13,"tweenEasing":0},{"duration":6,"rotate":180}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":19}]},{"name":"star3","translateFrame":[{"duration":8,"tweenEasing":0,"x":-332.58,"y":117.01},{"duration":19}],"rotateFrame":[{"duration":8},{"duration":13,"tweenEasing":0},{"duration":6,"rotate":180}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":19}]},{"name":"射光左1","translateFrame":[{"duration":8,"tweenEasing":0,"x":364.49,"y":50},{"duration":19}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":11,"tweenEasing":0},{"duration":2,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":6}]},{"name":"射光上","translateFrame":[{"duration":8,"tweenEasing":0,"x":63.35,"y":210.28},{"duration":19}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":11,"tweenEasing":0},{"duration":2,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":6}]},{"name":"射光右2","translateFrame":[{"duration":8,"tweenEasing":0,"x":-262.5,"y":205.68},{"duration":19}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":11,"tweenEasing":0},{"duration":2,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":6}]},{"name":"点1","translateFrame":[{"duration":8,"tweenEasing":0,"x":-143.36,"y":25.39},{"duration":19}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"x":0.01,"y":0.01}]},{"name":"点2","translateFrame":[{"duration":8,"tweenEasing":0,"x":227.31,"y":202.54},{"duration":19}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"x":0.01,"y":0.01}]},{"name":"点3","translateFrame":[{"duration":8,"tweenEasing":0,"x":123.67,"y":174.61},{"duration":19}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"x":0.01,"y":0.01}]},{"name":"点4","translateFrame":[{"duration":8,"tweenEasing":0,"x":267.64,"y":24.54},{"duration":19}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"x":0.01,"y":0.01}]},{"name":"点5","translateFrame":[{"duration":8,"tweenEasing":0,"x":-281.97,"y":101.27},{"duration":19}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"x":0.01,"y":0.01}]},{"name":"点6","translateFrame":[{"duration":8,"tweenEasing":0,"x":-338.9,"y":43.33},{"duration":19}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"x":0.01,"y":0.01}]},{"name":"点7","translateFrame":[{"duration":8,"tweenEasing":0,"x":-107.98,"y":192.95},{"duration":19}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"x":0.01,"y":0.01}]},{"name":"射光右1","translateFrame":[{"duration":8,"tweenEasing":0,"x":-400.57,"y":61.36},{"duration":19}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":11,"tweenEasing":0},{"duration":2,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":6}]},{"name":"射光左2","translateFrame":[{"duration":8,"tweenEasing":0,"x":189.15,"y":213.01},{"duration":19}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":11,"tweenEasing":0},{"duration":2,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":6}]},{"name":"星星4","translateFrame":[{"duration":8,"tweenEasing":0,"x":4.23,"y":169.31},{"duration":19}],"rotateFrame":[{"duration":8},{"duration":13,"tweenEasing":0},{"duration":6,"rotate":-148}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":19}]},{"name":"星星5","translateFrame":[{"duration":8,"tweenEasing":0,"x":341.44,"y":86.04},{"duration":19}],"rotateFrame":[{"duration":8},{"duration":13,"tweenEasing":0},{"duration":6,"rotate":-145}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":19}]},{"name":"星星6","translateFrame":[{"duration":8,"tweenEasing":0,"x":195.71,"y":195.66},{"duration":19}],"rotateFrame":[{"duration":8,"tweenEasing":0,"rotate":171.38},{"duration":13,"tweenEasing":0},{"duration":6,"rotate":-158}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":19}]}],"slot":[{"name":"Oval 2 Copy 2","colorFrame":[{"duration":8,"tweenEasing":0,"value":{"aM":0}},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Oval 2 Copy 3","colorFrame":[{"duration":8,"tweenEasing":0,"value":{"aM":0}},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Oval 2 Copy 4","colorFrame":[{"duration":8,"tweenEasing":0,"value":{"aM":0}},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Oval 2 Copy 5","colorFrame":[{"duration":8,"tweenEasing":0,"value":{"aM":0}},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Oval 2 Copy 6","colorFrame":[{"duration":8,"tweenEasing":0,"value":{"aM":0}},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Oval 2 Copy","colorFrame":[{"duration":8,"tweenEasing":0,"value":{"aM":0}},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Oval 2","colorFrame":[{"duration":8,"tweenEasing":0,"value":{"aM":0}},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Path 11 Copy","colorFrame":[{"duration":17},{"duration":2,"tweenEasing":0},{"duration":8,"value":{"aM":0}}]},{"name":"Path 11","colorFrame":[{"duration":17},{"duration":2,"tweenEasing":0},{"duration":8,"value":{"aM":0}}]},{"name":"Path 12 Copy 2","colorFrame":[{"duration":17},{"duration":2,"tweenEasing":0},{"duration":8,"value":{"aM":0}}]},{"name":"Path 12 Copy","colorFrame":[{"duration":17},{"duration":2,"tweenEasing":0},{"duration":8,"value":{"aM":0}}]},{"name":"Path 12","colorFrame":[{"duration":17},{"duration":2,"tweenEasing":0},{"duration":8,"value":{"aM":0}}]},{"name":"Star Copy 2","colorFrame":[{"duration":8,"tweenEasing":0,"value":{"aM":0}},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Star Copy 3","colorFrame":[{"duration":8,"tweenEasing":0,"value":{"aM":0}},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Star Copy 4","colorFrame":[{"duration":8,"tweenEasing":0,"value":{"aM":0}},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Star Copy 6","colorFrame":[{"duration":8,"tweenEasing":0,"value":{"aM":0}},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Star Copy","colorFrame":[{"duration":8,"tweenEasing":0,"value":{"aM":0}},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Star","colorFrame":[{"duration":8,"tweenEasing":0,"value":{"aM":0}},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]}]}],"defaultActions":[{"gotoAndPlay":"feedback-final"}],"canvas":{"y":-230,"width":960,"height":260}},{"type":"MovieClip","frameRate":24,"name":"MovieClip","bone":[{"name":"root"}],"defaultActions":[{}]}]}
\ No newline at end of file
{
"ver": "1.0.1",
"uuid": "284c5160-ccd7-4a83-94dc-76b12716394a",
"subMetas": {}
}
\ No newline at end of file
{"name":"zd-deedback-final","imagePath":"zd-deedback-final_tex.png","SubTexture":[{"name":"Oval 2 Copy 2","x":231,"height":12,"y":104,"width":12},{"name":"Oval 2 Copy 3","x":241,"height":11,"y":30,"width":11},{"name":"Oval 2 Copy 4","x":241,"height":12,"y":16,"width":12},{"name":"Oval 2 Copy 5","x":244,"height":9,"y":56,"width":9},{"name":"Oval 2 Copy 6","x":244,"height":11,"y":43,"width":11},{"name":"Oval 2 Copy","x":91,"height":12,"y":43,"width":12},{"name":"Oval 2","x":241,"height":13,"y":1,"width":13},{"name":"Path 11 Copy","x":1,"height":70,"y":152,"width":81},{"name":"Path 11","x":1,"height":38,"y":112,"width":215},{"name":"Path 12 Copy 2","x":218,"height":40,"y":43,"width":24},{"name":"Path 12 Copy","x":1,"height":109,"y":1,"width":88},{"name":"Path 12","x":91,"height":40,"y":1,"width":148},{"name":"Star Copy 2","x":231,"height":17,"y":85,"width":18},{"name":"Star Copy 3","x":175,"height":25,"y":85,"width":26},{"name":"Star Copy 4","x":203,"height":25,"y":85,"width":26},{"name":"Star Copy 6","x":91,"height":25,"y":85,"width":26},{"name":"Star Copy","x":119,"height":25,"y":85,"width":26},{"name":"Star","x":147,"height":25,"y":85,"width":26}],"height":256,"width":256}
\ No newline at end of file
{
"ver": "1.0.1",
"uuid": "35bd6e33-c572-4849-8f58-2ebec2b8fdc6",
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "2f8cf376-b417-491b-977b-25b36e65b88e",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 256,
"height": 256,
"platformSettings": {},
"subMetas": {
"zd-deedback-final_tex": {
"ver": "1.0.4",
"uuid": "f6bd5594-9af7-46b6-b24a-18ff62be7bbf",
"rawTextureUuid": "2f8cf376-b417-491b-977b-25b36e65b88e",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 16.5,
"trimX": 1,
"trimY": 1,
"width": 254,
"height": 221,
"rawWidth": 256,
"rawHeight": 256,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{"frameRate":24,"name":"zd-fall","version":"5.5","compatibleVersion":"5.5","armature":[{"type":"Armature","frameRate":24,"name":"Armature","aabb":{"x":-38.98,"y":10.31,"width":79.18,"height":88.63},"bone":[{"name":"root"},{"name":"bone","parent":"root","transform":{"y":28.15}},{"name":"Rectangle 10","parent":"bone","transform":{"x":-27.05,"y":-5.45}},{"name":"Rectangle 10 Copy 2","parent":"bone","transform":{"x":33.6,"y":-7.1}},{"name":"Rectangle 10 Copy","parent":"bone","transform":{"x":7.9,"y":17.5}},{"name":"Rectangle 10 Copy 3","parent":"bone","transform":{"x":-13.4,"y":65.05}}],"slot":[{"name":"Rectangle 10","parent":"Rectangle 10"},{"name":"Rectangle 10 Copy 3","parent":"Rectangle 10 Copy 3"},{"name":"Rectangle 10 Copy 2","parent":"Rectangle 10 Copy 2"},{"name":"Rectangle 10 Copy","parent":"Rectangle 10 Copy"}],"skin":[{"slot":[{"name":"Rectangle 10 Copy","display":[{"name":"Rectangle 10 Copy","transform":{"x":0.84,"y":0.67}}]},{"name":"Rectangle 10","display":[{"name":"Rectangle 10","transform":{"x":1.07,"y":0.61}}]},{"name":"Rectangle 10 Copy 3","display":[{"name":"Rectangle 10 Copy 3","transform":{"x":0.53,"y":0.24}}]},{"name":"Rectangle 10 Copy 2","display":[{"name":"Rectangle 10 Copy 2","transform":{"x":0.6,"y":0.75}}]}]}],"animation":[{"duration":48,"playTimes":0,"name":"newAnimation","bone":[{"name":"Rectangle 10","translateFrame":[{"duration":12,"tweenEasing":0},{"duration":10,"tweenEasing":0,"y":92.53},{"duration":2,"tweenEasing":0},{"duration":12,"tweenEasing":0},{"duration":10,"tweenEasing":0,"y":92.53},{"duration":2}],"rotateFrame":[{"duration":12,"tweenEasing":0},{"duration":10,"tweenEasing":0,"rotate":157.15},{"duration":2,"tweenEasing":0},{"duration":12,"tweenEasing":0},{"duration":10,"tweenEasing":0,"rotate":157.15},{"duration":2}]},{"name":"Rectangle 10 Copy 2","translateFrame":[{"duration":12,"tweenEasing":0},{"duration":10,"tweenEasing":0,"y":106.65},{"duration":2,"tweenEasing":0},{"duration":12,"tweenEasing":0},{"duration":10,"tweenEasing":0,"y":106.65},{"duration":2}],"rotateFrame":[{"duration":12,"tweenEasing":0},{"duration":10,"tweenEasing":0,"rotate":174.11},{"duration":2,"tweenEasing":0},{"duration":12,"tweenEasing":0},{"duration":10,"tweenEasing":0,"rotate":174.11},{"duration":2}]},{"name":"Rectangle 10 Copy","translateFrame":[{"duration":12,"tweenEasing":0},{"duration":10,"tweenEasing":0,"y":105.23},{"duration":2,"tweenEasing":0},{"duration":12,"tweenEasing":0},{"duration":10,"tweenEasing":0,"y":105.23},{"duration":2}],"rotateFrame":[{"duration":12,"tweenEasing":0},{"duration":10,"tweenEasing":0,"rotate":162.37},{"duration":2,"tweenEasing":0},{"duration":12,"tweenEasing":0},{"duration":10,"tweenEasing":0,"rotate":162.37},{"duration":2}]},{"name":"Rectangle 10 Copy 3","translateFrame":[{"duration":12,"tweenEasing":0},{"duration":10,"tweenEasing":0,"y":102.02},{"duration":2,"tweenEasing":0},{"duration":12,"tweenEasing":0},{"duration":10,"tweenEasing":0,"y":102.02},{"duration":2}],"rotateFrame":[{"duration":12,"tweenEasing":0},{"duration":10,"tweenEasing":0,"rotate":-66.79},{"duration":2,"tweenEasing":0},{"duration":12,"tweenEasing":0},{"duration":10,"tweenEasing":0,"rotate":-66.79},{"duration":2}]}],"slot":[{"name":"Rectangle 10","colorFrame":[{"duration":6,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":10,"tweenEasing":0,"value":{"aM":0}},{"duration":2,"tweenEasing":0,"value":{"aM":0}},{"duration":6,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":10,"tweenEasing":0,"value":{"aM":0}},{"duration":2,"tweenEasing":0,"value":{"aM":0}},{"duration":0}]},{"name":"Rectangle 10 Copy 3","colorFrame":[{"duration":6,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":10,"tweenEasing":0,"value":{"aM":0}},{"duration":2,"tweenEasing":0,"value":{"aM":0}},{"duration":6,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":10,"tweenEasing":0,"value":{"aM":0}},{"duration":2,"tweenEasing":0,"value":{"aM":0}},{"duration":0}]},{"name":"Rectangle 10 Copy 2","colorFrame":[{"duration":6,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":10,"tweenEasing":0,"value":{"aM":0}},{"duration":2,"tweenEasing":0,"value":{"aM":0}},{"duration":6,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":10,"tweenEasing":0,"value":{"aM":0}},{"duration":2,"tweenEasing":0,"value":{"aM":0}},{"duration":0}]},{"name":"Rectangle 10 Copy","colorFrame":[{"duration":6,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":10,"tweenEasing":0,"value":{"aM":0}},{"duration":2,"tweenEasing":0,"value":{"aM":0}},{"duration":6,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":10,"tweenEasing":0,"value":{"aM":0}},{"duration":2,"tweenEasing":0,"value":{"aM":0}},{"duration":0}]}]}],"defaultActions":[{"gotoAndPlay":"newAnimation"}],"canvas":{"y":98,"width":140,"height":195}}]}
\ No newline at end of file
{
"ver": "1.0.1",
"uuid": "f2788e90-4573-475c-8c3e-2104ded63346",
"subMetas": {}
}
\ No newline at end of file
{"name":"zd-fall","imagePath":"zd-fall_tex.png","height":32,"SubTexture":[{"name":"Rectangle 10","x":1,"height":26,"y":1,"width":26},{"name":"Rectangle 10 Copy 3","x":43,"height":11,"y":18,"width":11},{"name":"Rectangle 10 Copy 2","x":29,"height":12,"y":18,"width":12},{"name":"Rectangle 10 Copy","x":29,"height":15,"y":1,"width":15}],"width":64}
\ No newline at end of file
{
"ver": "1.0.1",
"uuid": "34c49e94-e882-42c8-89b1-1565a37f1a06",
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "08b609dc-6708-43c6-82b6-42e215fab994",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 64,
"height": 32,
"platformSettings": {},
"subMetas": {
"zd-fall_tex": {
"ver": "1.0.4",
"uuid": "eb8adb2c-f28d-44f5-bd80-ddc415127208",
"rawTextureUuid": "08b609dc-6708-43c6-82b6-42e215fab994",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": -4.5,
"offsetY": 0.5,
"trimX": 1,
"trimY": 1,
"width": 53,
"height": 29,
"rawWidth": 64,
"rawHeight": 32,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{"frameRate":24,"name":"zd-good","version":"5.5","compatibleVersion":"5.5","armature":[{"type":"Armature","frameRate":24,"name":"Armature","aabb":{"x":-291.17,"y":-141.58,"width":580.28,"height":201.23},"bone":[{"name":"root","transform":{"y":199.1678}},{"name":"Good","parent":"root","transform":{"x":0.6,"y":-203.85}},{"name":"Star Copy 6","parent":"root","transform":{"x":12,"y":-298.2}},{"name":"Star Copy 632","parent":"root","transform":{"x":131.7,"y":-151.95}},{"name":"Oval 2","parent":"root","transform":{"x":182.95,"y":-174.75}},{"name":"Star Copy 6321","parent":"root","transform":{"x":274.75,"y":-257.05}},{"name":"Star Copy 62","parent":"root","transform":{"x":187.4,"y":-252}},{"name":"Oval 21","parent":"root","transform":{"x":246.4,"y":-306.15}},{"name":"Oval 211","parent":"root","transform":{"x":98.5,"y":-282.2}},{"name":"Star Copy 63","parent":"root","transform":{"x":-143.4,"y":-180.3}},{"name":"Oval 211111","parent":"root","transform":{"x":-217.8,"y":-165.1}},{"name":"Star Copy 631","parent":"root","transform":{"x":-278.6,"y":-239.5}},{"name":"Oval 21111","parent":"root","transform":{"x":-140.05,"y":-249.7}},{"name":"Star Copy 61","parent":"root","transform":{"x":-59.75,"y":-275}},{"name":"Oval 2111","parent":"root","transform":{"x":36.95,"y":-334.95}}],"slot":[{"name":"Star Copy 6","parent":"Star Copy 6"},{"name":"Oval 2","parent":"Oval 2"},{"name":"Good","parent":"Good"},{"name":"Star Copy 61","parent":"Star Copy 61"},{"name":"Star Copy 62","parent":"Star Copy 62"},{"name":"Star Copy 63","parent":"Star Copy 63"},{"name":"Star Copy 631","parent":"Star Copy 631"},{"name":"Star Copy 632","parent":"Star Copy 632"},{"name":"Star Copy 6321","parent":"Star Copy 6321"},{"name":"Oval 21","parent":"Oval 21"},{"name":"Oval 211","parent":"Oval 211"},{"name":"Oval 2111","parent":"Oval 2111"},{"name":"Oval 21111","parent":"Oval 21111"},{"name":"Oval 211111","parent":"Oval 211111"}],"skin":[{"slot":[{"name":"Star Copy 632","display":[{"name":"Star Copy 6","transform":{"x":-0.2,"y":-0.07}}]},{"name":"Star Copy 6321","display":[{"name":"Star Copy 6","transform":{"x":1.36,"y":0.55}}]},{"name":"Star Copy 6","display":[{"name":"Star Copy 6","transform":{"x":0.68,"y":1.25}}]},{"name":"Good","display":[{"name":"Good","transform":{"x":-1.93,"y":-9.27}}]},{"name":"Oval 2111","display":[{"name":"Oval 2","transform":{"x":0.19,"y":1.2,"scX":0.7232,"scY":0.7232}}]},{"name":"Oval 21111","display":[{"name":"Oval 2","transform":{"x":-0.04,"y":0.86,"scX":0.7232,"scY":0.7232}}]},{"name":"Oval 21","display":[{"name":"Oval 2","transform":{"x":0.36,"y":1.14,"scX":0.7232,"scY":0.7232}}]},{"name":"Oval 211","display":[{"name":"Oval 2","transform":{"x":0.4,"y":0.21,"scX":0.7232,"scY":0.7232}}]},{"name":"Oval 211111","display":[{"name":"Oval 2","transform":{"x":0.95,"y":1.17,"scX":0.8337,"scY":0.8337}}]},{"name":"Star Copy 61","display":[{"name":"Star Copy 6","transform":{"x":-0.61,"y":-0.54,"scX":0.6831,"scY":0.6831}}]},{"name":"Oval 2","display":[{"name":"Oval 2","transform":{"x":-0.33,"y":-0.49,"scX":0.7232,"scY":0.7232}}]},{"name":"Star Copy 62","display":[{"name":"Star Copy 6","transform":{"x":-0.14,"y":0.37,"scX":0.6636,"scY":0.6636}}]},{"name":"Star Copy 63","display":[{"name":"Star Copy 6","transform":{"x":1.39,"y":1.43}}]},{"name":"Star Copy 631","display":[{"name":"Star Copy 6","transform":{"x":0.43,"y":-0.35}}]}]}],"animation":[{"duration":28,"playTimes":0,"name":"newAnimation","bone":[{"name":"Good","scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":20}]},{"name":"Star Copy 6","translateFrame":[{"duration":8,"tweenEasing":0,"x":-6.05,"y":80.35},{"duration":20}],"rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":14,"tweenEasing":0},{"duration":6,"rotate":-119.11}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":20}]},{"name":"Star Copy 632","translateFrame":[{"duration":8,"tweenEasing":0,"x":-129,"y":-50.1},{"duration":20}],"rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":14,"tweenEasing":0},{"duration":6,"rotate":-142.17}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":20}]},{"name":"Oval 2","translateFrame":[{"duration":8,"tweenEasing":0,"x":-182.73,"y":-29.65},{"duration":20}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":20}]},{"name":"Star Copy 6321","translateFrame":[{"duration":8,"tweenEasing":0,"x":-271.68,"y":52.04},{"duration":20}],"rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":14,"tweenEasing":0},{"duration":6,"rotate":-142.17}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":20}]},{"name":"Star Copy 62","translateFrame":[{"duration":8,"tweenEasing":0,"x":-192.11,"y":48.35},{"duration":20}],"rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":14,"tweenEasing":0},{"duration":6,"rotate":-142.17}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":20}]},{"name":"Oval 21","translateFrame":[{"duration":8,"tweenEasing":0,"x":-242.91,"y":96.21},{"duration":20}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":20}]},{"name":"Oval 211","translateFrame":[{"duration":8,"tweenEasing":0,"x":-96.81,"y":71.4},{"duration":20}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":20}]},{"name":"Star Copy 63","translateFrame":[{"duration":8,"tweenEasing":0,"x":139.44,"y":-17.58},{"duration":20}],"rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":14,"tweenEasing":0},{"duration":6,"rotate":130.43}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":20}]},{"name":"Oval 211111","translateFrame":[{"duration":8,"tweenEasing":0,"x":209.41,"y":-43.38},{"duration":20}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":20}]},{"name":"Star Copy 631","translateFrame":[{"duration":8,"tweenEasing":0,"x":270.65,"y":17.3},{"duration":20}],"rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":14,"tweenEasing":0},{"duration":6,"rotate":130.43}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":20}]},{"name":"Oval 21111","translateFrame":[{"duration":8,"tweenEasing":0,"x":143.4,"y":27.26},{"duration":20}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":20}]},{"name":"Star Copy 61","translateFrame":[{"duration":8,"tweenEasing":0,"x":52.04,"y":62.32},{"duration":20}],"rotateFrame":[{"duration":8,"tweenEasing":0},{"duration":14,"tweenEasing":0},{"duration":6,"rotate":130.43}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":20}]},{"name":"Oval 2111","translateFrame":[{"duration":8,"tweenEasing":0,"x":-37.97,"y":126.58},{"duration":20}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":20}]}],"slot":[{"name":"Star Copy 6","colorFrame":[{"duration":22,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Oval 2","colorFrame":[{"duration":22,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Good","colorFrame":[{"duration":22,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Star Copy 61","colorFrame":[{"duration":22,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Star Copy 62","colorFrame":[{"duration":22,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Star Copy 63","colorFrame":[{"duration":22,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Star Copy 631","colorFrame":[{"duration":22,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Star Copy 632","colorFrame":[{"duration":22,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Star Copy 6321","colorFrame":[{"duration":22,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Oval 21","colorFrame":[{"duration":22,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Oval 211","colorFrame":[{"duration":22,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Oval 2111","colorFrame":[{"duration":22,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Oval 21111","colorFrame":[{"duration":22,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Oval 211111","colorFrame":[{"duration":22,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]}]}],"defaultActions":[{"gotoAndPlay":"newAnimation"}],"canvas":{"width":800,"height":420}}]}
\ No newline at end of file
{
"ver": "1.0.1",
"uuid": "f58d3045-3f3f-4d34-bd4b-43aa4f9f9ca2",
"subMetas": {}
}
\ No newline at end of file
{"name":"zd-good","imagePath":"zd-good_tex.png","height":128,"SubTexture":[{"name":"Star Copy 6","x":229,"height":25,"y":1,"width":26},{"name":"Oval 2","x":229,"height":14,"y":28,"width":14},{"name":"Good","x":1,"height":74,"y":1,"width":226}],"width":256}
\ No newline at end of file
{
"ver": "1.0.1",
"uuid": "d7914aec-f9a3-4838-8a98-803230a76ce3",
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "efa5fa09-a4dd-4bfc-ab7e-17c19f85408f",
"uuid": "64f940b2-313c-4ff6-bf13-17165d57dd9e",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 366,
"height": 336,
"width": 256,
"height": 128,
"platformSettings": {},
"subMetas": {
"1orange": {
"zd-good_tex": {
"ver": "1.0.4",
"uuid": "43d1e79d-6de8-4dcb-b8ce-d767df7913aa",
"rawTextureUuid": "efa5fa09-a4dd-4bfc-ab7e-17c19f85408f",
"uuid": "f0f1fdd4-9144-44f0-bc28-2af36de97aee",
"rawTextureUuid": "64f940b2-313c-4ff6-bf13-17165d57dd9e",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": -0.5,
"trimX": 0,
"offsetY": 26,
"trimX": 1,
"trimY": 1,
"width": 366,
"height": 335,
"rawWidth": 366,
"rawHeight": 336,
"width": 254,
"height": 74,
"rawWidth": 256,
"rawHeight": 128,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
......
{"frameRate":24,"name":"zd-nicetry","version":"5.5","compatibleVersion":"5.5","armature":[{"type":"Armature","frameRate":24,"name":"Armature","aabb":{"x":-380.93,"y":-47.18,"width":771.05,"height":89},"bone":[{"name":"root","transform":{"y":201.9159}},{"name":"Nice Try","parent":"root","transform":{"x":-2.55,"y":-204.3}},{"name":"Path 26","parent":"root","transform":{"x":378,"y":-193.45}},{"name":"Path 26 Copy","parent":"root","transform":{"x":-372.9,"y":-229.2}}],"slot":[{"name":"Path 26 Copy","parent":"Path 26 Copy"},{"name":"Path 26","parent":"Path 26"},{"name":"Nice Try","parent":"Nice Try"}],"skin":[{"slot":[{"name":"Path 26 Copy","display":[{"name":"Path 26 Copy","transform":{"x":91.97,"y":2.81}}]},{"name":"Nice Try","display":[{"name":"Nice Try","transform":{"x":4.86,"y":-0.3}}]},{"name":"Path 26","display":[{"name":"Path 26","transform":{"x":-167.88,"y":1.99}}]}]}],"animation":[{"duration":28,"playTimes":0,"name":"newAnimation","bone":[{"name":"Nice Try","scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":20}]},{"name":"Path 26","translateFrame":[{"duration":8,"tweenEasing":0,"x":-382.1,"y":-11.58},{"duration":12,"tweenEasing":0,"x":-203.74},{"duration":8}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":12,"tweenEasing":0},{"duration":8,"tweenEasing":0},{"duration":0,"x":0.01}]},{"name":"Path 26 Copy","translateFrame":[{"duration":8,"tweenEasing":0,"x":369.64,"y":23.45},{"duration":12,"tweenEasing":0,"x":196.26},{"duration":8}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":12,"tweenEasing":0},{"duration":8,"tweenEasing":0},{"duration":0,"x":0.01}]}],"slot":[{"name":"Path 26","colorFrame":[{"duration":7,"tweenEasing":0,"value":{"aM":0}},{"tweenEasing":0,"value":{"aM":0}},{"duration":12,"tweenEasing":0},{"duration":8,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Nice Try","colorFrame":[{"duration":20,"tweenEasing":0},{"duration":8,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Path 26 Copy","colorFrame":[{"duration":7,"tweenEasing":0,"value":{"aM":0}},{"tweenEasing":0,"value":{"aM":0}},{"duration":12,"tweenEasing":0},{"duration":8,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]}]}],"defaultActions":[{"gotoAndPlay":"newAnimation"}],"canvas":{"width":800,"height":420}}]}
\ No newline at end of file
{
"ver": "1.0.1",
"uuid": "b1e54085-091c-473e-b988-02b645c4e3ff",
"subMetas": {}
}
\ No newline at end of file
{"name":"zd-nicetry","imagePath":"zd-nicetry_tex.png","height":256,"SubTexture":[{"name":"Path 26 Copy","x":1,"height":26,"y":120,"width":200},{"name":"Path 26","x":1,"height":26,"y":92,"width":360},{"name":"Nice Try","x":1,"height":89,"y":1,"width":380}],"width":512}
\ No newline at end of file
{
"ver": "1.0.1",
"uuid": "39baf818-c28d-41d4-89c0-f2fa1fb40244",
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "1119b974-ca60-40f6-b8fe-4bd435fdd7f0",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 512,
"height": 256,
"platformSettings": {},
"subMetas": {
"zd-nicetry_tex": {
"ver": "1.0.4",
"uuid": "3dc32dd2-1b64-4526-ae31-5b2469aae179",
"rawTextureUuid": "1119b974-ca60-40f6-b8fe-4bd435fdd7f0",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": -65,
"offsetY": 54.5,
"trimX": 1,
"trimY": 1,
"width": 380,
"height": 145,
"rawWidth": 512,
"rawHeight": 256,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{"frameRate":24,"name":"zd-perfect","version":"5.5","compatibleVersion":"5.5","armature":[{"type":"Armature","frameRate":24,"name":"Armature","aabb":{"x":-361.54,"y":-116.94,"width":756.84,"height":188.97},"bone":[{"name":"root","transform":{"y":207.3301}},{"name":"Perfect","parent":"root","transform":{"x":-2.9,"y":-209.55}},{"name":"root1","parent":"root","transform":{"x":-27.4923,"scX":0.9,"scY":0.9}},{"name":"star2","parent":"root1","transform":{"x":343.5,"y":-332}},{"name":"star3","parent":"root1","transform":{"x":411,"y":-248.5}},{"name":"射光左1","parent":"root1","transform":{"x":-361.3864,"y":-203.4318}},{"name":"射光上","parent":"root1","transform":{"x":-62.5227,"y":-342.9318}},{"name":"射光右2","parent":"root1","transform":{"x":281.8409,"y":-328.9955}},{"name":"点1","parent":"root1","transform":{"x":219.5,"y":-157}},{"name":"点2","parent":"root1","transform":{"x":-303.5,"y":-334}},{"name":"点4","parent":"root1","transform":{"x":-238.1008,"y":-180.8443}},{"name":"star1","parent":"root1","transform":{"x":201.5,"y":-334.5}},{"name":"点5","parent":"root1","transform":{"x":276,"y":-230.5}},{"name":"点6","parent":"root1","transform":{"x":410,"y":-172}},{"name":"点7","parent":"root1","transform":{"x":109.1227,"y":-309.5021}},{"name":"射光右1","parent":"root1","transform":{"x":454.5795,"y":-212.5455}},{"name":"射光左2","parent":"root1","transform":{"x":-256.8523,"y":-347.7386}},{"name":"星星4","parent":"root1","transform":{"x":14.3642,"y":-326.3743,"scX":1.717,"scY":1.717}},{"name":"星星5","parent":"root1","transform":{"x":-307.3917,"y":-265.5989}},{"name":"星星6","parent":"root1","transform":{"x":-192.3829,"y":-325.5276}},{"name":"点3","parent":"root1","transform":{"x":-121.5,"y":-301}}],"slot":[{"name":"Oval 2 Copy 2","parent":"点4"},{"name":"Oval 2 Copy 3","parent":"点3"},{"name":"Oval 2 Copy 4","parent":"点5"},{"name":"Oval 2 Copy 5","parent":"点2"},{"name":"Oval 2 Copy 6","parent":"点6"},{"name":"Oval 2 Copy","parent":"点1"},{"name":"Oval 2","parent":"点7"},{"name":"Path 11 Copy","parent":"射光右2"},{"name":"Path 11","parent":"射光右1"},{"name":"Path 12 Copy 2","parent":"射光上"},{"name":"Path 12 Copy","parent":"射光左2"},{"name":"Path 12","parent":"射光左1"},{"name":"Star Copy 2","parent":"星星4"},{"name":"Star Copy 3","parent":"star3"},{"name":"Star Copy 4","parent":"星星5"},{"name":"Star Copy 6","parent":"star2"},{"name":"Star Copy","parent":"星星6"},{"name":"Star","parent":"star1"},{"name":"Perfect","parent":"Perfect"}],"skin":[{"slot":[{"name":"Star Copy 3","display":[{"name":"Star Copy 3"}]},{"name":"Star Copy 4","display":[{"name":"Star Copy 4"}]},{"name":"Star Copy 6","display":[{"name":"Star Copy 6"}]},{"name":"Oval 2 Copy 2","display":[{"name":"Oval 2 Copy 2"}]},{"name":"Star Copy","display":[{"name":"Star Copy"}]},{"name":"Path 12 Copy 2","display":[{"name":"Path 12 Copy 2","transform":{"x":3.7,"y":17.11}}]},{"name":"Oval 2 Copy 4","display":[{"name":"Oval 2 Copy 4"}]},{"name":"Perfect","display":[{"name":"Perfect","transform":{"x":4.37,"y":-2.47}}]},{"name":"Oval 2 Copy 6","display":[{"name":"Oval 2 Copy 6"}]},{"name":"Oval 2 Copy 3","display":[{"name":"Oval 2 Copy 3"}]},{"name":"Oval 2","display":[{"name":"Oval 2"}]},{"name":"Path 11 Copy","display":[{"name":"Path 11 Copy","transform":{"x":-36.82,"y":28.73}}]},{"name":"Path 11","display":[{"name":"Path 11","transform":{"x":-104.25,"y":9.14}}]},{"name":"Oval 2 Copy","display":[{"name":"Oval 2 Copy"}]},{"name":"Path 12 Copy","display":[{"name":"Path 12 Copy","transform":{"x":35.77,"y":47.99}}]},{"name":"Star","display":[{"name":"Star"}]},{"name":"Path 12","display":[{"name":"Path 12","transform":{"x":72.45,"y":7.07}}]},{"name":"Oval 2 Copy 5","display":[{"name":"Oval 2 Copy 5"}]},{"name":"Star Copy 2","display":[{"name":"Star Copy 2"}]}]}],"animation":[{"duration":27,"playTimes":0,"name":"newAnimation","bone":[{"name":"star1","translateFrame":[{"duration":8,"tweenEasing":0,"x":-201.47,"y":207.56},{"duration":19}],"rotateFrame":[{"duration":8},{"duration":13,"tweenEasing":0},{"duration":6,"rotate":164.5}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":19}]},{"name":"star2","translateFrame":[{"duration":8,"tweenEasing":0,"x":-339.52,"y":198.81},{"duration":19}],"rotateFrame":[{"duration":8},{"duration":13,"tweenEasing":0},{"duration":6,"rotate":180}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":19}]},{"name":"star3","translateFrame":[{"duration":8,"tweenEasing":0,"x":-332.58,"y":117.01},{"duration":19}],"rotateFrame":[{"duration":8},{"duration":13,"tweenEasing":0},{"duration":6,"rotate":180}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":19}]},{"name":"射光左1","translateFrame":[{"duration":8,"tweenEasing":0,"x":364.49,"y":50},{"duration":19}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":11,"tweenEasing":0},{"duration":2,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":6}]},{"name":"射光上","translateFrame":[{"duration":8,"tweenEasing":0,"x":63.35,"y":210.28},{"duration":19}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":11,"tweenEasing":0},{"duration":2,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":6}]},{"name":"射光右2","translateFrame":[{"duration":8,"tweenEasing":0,"x":-262.5,"y":205.68},{"duration":19}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":11,"tweenEasing":0},{"duration":2,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":6}]},{"name":"点1","translateFrame":[{"duration":8,"tweenEasing":0,"x":-143.36,"y":25.39},{"duration":19}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"x":0.01,"y":0.01}]},{"name":"点2","translateFrame":[{"duration":8,"tweenEasing":0,"x":227.31,"y":202.54},{"duration":19}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"x":0.01,"y":0.01}]},{"name":"点3","translateFrame":[{"duration":8,"tweenEasing":0,"x":123.67,"y":174.61},{"duration":19}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"x":0.01,"y":0.01}]},{"name":"点4","translateFrame":[{"duration":8,"tweenEasing":0,"x":267.64,"y":24.54},{"duration":19}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"x":0.01,"y":0.01}]},{"name":"点5","translateFrame":[{"duration":8,"tweenEasing":0,"x":-281.97,"y":101.27},{"duration":19}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"x":0.01,"y":0.01}]},{"name":"点6","translateFrame":[{"duration":8,"tweenEasing":0,"x":-338.9,"y":43.33},{"duration":19}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"x":0.01,"y":0.01}]},{"name":"点7","translateFrame":[{"duration":8,"tweenEasing":0,"x":-107.98,"y":192.95},{"duration":19}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"x":0.01,"y":0.01}]},{"name":"射光右1","translateFrame":[{"duration":8,"tweenEasing":0,"x":-400.57,"y":61.36},{"duration":19}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":11,"tweenEasing":0},{"duration":2,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":6}]},{"name":"射光左2","translateFrame":[{"duration":8,"tweenEasing":0,"x":189.15,"y":213.01},{"duration":19}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":11,"tweenEasing":0},{"duration":2,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":6}]},{"name":"星星4","translateFrame":[{"duration":8,"tweenEasing":0,"x":4.23,"y":169.31},{"duration":19}],"rotateFrame":[{"duration":8},{"duration":13,"tweenEasing":0},{"duration":6,"rotate":-148}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":19}]},{"name":"星星5","translateFrame":[{"duration":8,"tweenEasing":0,"x":341.44,"y":86.04},{"duration":19}],"rotateFrame":[{"duration":8},{"duration":13,"tweenEasing":0},{"duration":6,"rotate":-145}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":19}]},{"name":"星星6","translateFrame":[{"duration":8,"tweenEasing":0,"x":195.71,"y":195.66},{"duration":19}],"rotateFrame":[{"duration":8,"tweenEasing":0,"rotate":171.38},{"duration":13,"tweenEasing":0},{"duration":6,"rotate":-158}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":19}]},{"name":"Perfect","translateFrame":[{"duration":8,"tweenEasing":0,"y":114.19},{"duration":19}],"scaleFrame":[{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":19}]}],"slot":[{"name":"Oval 2 Copy 2","colorFrame":[{"duration":8,"tweenEasing":0,"value":{"aM":0}},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Oval 2 Copy 3","colorFrame":[{"duration":8,"tweenEasing":0,"value":{"aM":0}},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Oval 2 Copy 4","colorFrame":[{"duration":8,"tweenEasing":0,"value":{"aM":0}},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Oval 2 Copy 5","colorFrame":[{"duration":8,"tweenEasing":0,"value":{"aM":0}},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Oval 2 Copy 6","colorFrame":[{"duration":8,"tweenEasing":0,"value":{"aM":0}},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Oval 2 Copy","colorFrame":[{"duration":8,"tweenEasing":0,"value":{"aM":0}},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Oval 2","colorFrame":[{"duration":8,"tweenEasing":0,"value":{"aM":0}},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Path 11 Copy","colorFrame":[{"duration":17},{"duration":2,"tweenEasing":0},{"duration":8,"value":{"aM":0}}]},{"name":"Path 11","colorFrame":[{"duration":17},{"duration":2,"tweenEasing":0},{"duration":8,"value":{"aM":0}}]},{"name":"Path 12 Copy 2","colorFrame":[{"duration":17},{"duration":2,"tweenEasing":0},{"duration":8,"value":{"aM":0}}]},{"name":"Path 12 Copy","colorFrame":[{"duration":17},{"duration":2,"tweenEasing":0},{"duration":8,"value":{"aM":0}}]},{"name":"Path 12","colorFrame":[{"duration":17},{"duration":2,"tweenEasing":0},{"duration":8,"value":{"aM":0}}]},{"name":"Star Copy 2","colorFrame":[{"duration":8,"tweenEasing":0,"value":{"aM":0}},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Star Copy 3","colorFrame":[{"duration":8,"tweenEasing":0,"value":{"aM":0}},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Star Copy 4","colorFrame":[{"duration":8,"tweenEasing":0,"value":{"aM":0}},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Star Copy 6","colorFrame":[{"duration":8,"tweenEasing":0,"value":{"aM":0}},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Star Copy","colorFrame":[{"duration":8,"tweenEasing":0,"value":{"aM":0}},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Star","colorFrame":[{"duration":8,"tweenEasing":0,"value":{"aM":0}},{"duration":13,"tweenEasing":0},{"duration":6,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"Perfect","colorFrame":[{"duration":27},{"duration":0,"value":{"aM":0}}]}]}],"defaultActions":[{"gotoAndPlay":"newAnimation"}],"canvas":{"width":800,"height":420}}]}
\ No newline at end of file
{
"ver": "1.0.1",
"uuid": "61109d45-751f-462a-bfef-98db5ba5281f",
"subMetas": {}
}
\ No newline at end of file
{"name":"zd-perfect","imagePath":"zd-perfect_tex.png","height":256,"SubTexture":[{"name":"Oval 2 Copy 2","x":471,"height":12,"y":196,"width":12},{"name":"Oval 2 Copy 3","x":500,"height":11,"y":194,"width":11},{"name":"Oval 2 Copy 4","x":486,"height":12,"y":181,"width":12},{"name":"Oval 2 Copy 5","x":302,"height":9,"y":78,"width":9},{"name":"Oval 2 Copy 6","x":500,"height":11,"y":181,"width":11},{"name":"Oval 2 Copy","x":486,"height":12,"y":195,"width":12},{"name":"Oval 2","x":471,"height":13,"y":181,"width":13},{"name":"Path 11 Copy","x":368,"height":70,"y":112,"width":81},{"name":"Path 11","x":1,"height":38,"y":78,"width":215},{"name":"Path 12 Copy 2","x":451,"height":40,"y":112,"width":24},{"name":"Path 12 Copy","x":313,"height":109,"y":1,"width":88},{"name":"Path 12","x":218,"height":40,"y":112,"width":148},{"name":"Star Copy 2","x":451,"height":17,"y":181,"width":18},{"name":"Star Copy 3","x":218,"height":25,"y":78,"width":26},{"name":"Star Copy 4","x":479,"height":25,"y":154,"width":26},{"name":"Star Copy 6","x":451,"height":25,"y":154,"width":26},{"name":"Star Copy","x":274,"height":25,"y":78,"width":26},{"name":"Star","x":246,"height":25,"y":78,"width":26},{"name":"Perfect","x":1,"height":75,"y":1,"width":310}],"width":512}
\ No newline at end of file
{
"ver": "1.0.1",
"uuid": "f3a4ece2-474b-4d09-8f97-93e391e7991f",
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "18d07592-51a9-421e-8972-0f67b68d29e1",
"uuid": "1a247095-21a9-46b7-b98c-bdda035dd851",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 144,
"height": 144,
"width": 512,
"height": 256,
"platformSettings": {},
"subMetas": {
"icon": {
"zd-perfect_tex": {
"ver": "1.0.4",
"uuid": "6fbc30a8-3c49-44ae-8ba4-7f56f385b78a",
"rawTextureUuid": "18d07592-51a9-421e-8972-0f67b68d29e1",
"uuid": "eff25a8a-26cd-47d7-9fdc-e6514bf3a9f4",
"rawTextureUuid": "1a247095-21a9-46b7-b98c-bdda035dd851",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": -0.5,
"trimX": 3,
"trimY": 2,
"width": 138,
"height": 141,
"rawWidth": 144,
"rawHeight": 144,
"offsetY": 23.5,
"trimX": 1,
"trimY": 1,
"width": 510,
"height": 207,
"rawWidth": 512,
"rawHeight": 256,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
......
{"frameRate":24,"name":"zd-talk","version":"5.5","compatibleVersion":"5.5","armature":[{"type":"Armature","frameRate":24,"name":"Armature","aabb":{"x":-182.92,"y":-185.61,"width":371,"height":371},"bone":[{"name":"root"},{"name":"圆5","parent":"root"},{"name":"bone","parent":"root"}],"slot":[{"name":"圆4","parent":"bone"},{"name":"圆5","parent":"圆5"}],"skin":[{"slot":[{"name":"圆4","display":[{"name":"圆4","transform":{"x":2.58,"y":-0.11}}]},{"name":"圆5","display":[{"name":"圆5","transform":{"x":2.58,"y":-0.14}}]}]}],"animation":[{"duration":24,"playTimes":0,"name":"newAnimation","bone":[{"name":"圆5","scaleFrame":[{"duration":23,"tweenEasing":0,"x":0.01,"y":0.01},{"tweenEasing":0,"x":1.24,"y":1.24},{"duration":0,"x":0.01,"y":0.01}]},{"name":"bone","scaleFrame":[{"duration":17,"tweenEasing":0,"x":0.27,"y":0.27},{"tweenEasing":0},{"duration":6,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":0,"x":0.27,"y":0.27}]}],"slot":[{"name":"圆5","colorFrame":[{"duration":4,"tweenEasing":0,"value":{"aM":0}},{"duration":16,"tweenEasing":0},{"duration":4,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"圆4","colorFrame":[{"tweenEasing":0,"value":{"aM":0}},{"duration":13,"tweenEasing":0},{"duration":4,"tweenEasing":0},{"duration":4,"tweenEasing":0,"value":{"aM":0}},{"tweenEasing":0},{"tweenEasing":0},{"duration":0,"value":{"aM":0}}]}]}],"defaultActions":[{"gotoAndPlay":"newAnimation"}],"canvas":{"width":390,"height":390}}]}
\ No newline at end of file
{
"ver": "1.0.1",
"uuid": "a1f6782d-f5ba-4be6-ae5a-dbb57bf72408",
"subMetas": {}
}
\ No newline at end of file
{"name":"zd-talk","imagePath":"zd-talk_tex.png","height":512,"SubTexture":[{"name":"圆4","x":1,"height":371,"y":1,"width":371},{"name":"圆5","x":374,"height":299,"y":1,"width":299}],"width":1024}
\ No newline at end of file
{
"ver": "1.0.1",
"uuid": "47a246a7-4493-4509-9826-811f21dba895",
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "3b5bdb32-0599-4571-b490-af0be697e34b",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 1024,
"height": 512,
"platformSettings": {},
"subMetas": {
"zd-talk_tex": {
"ver": "1.0.4",
"uuid": "e4f61681-fd25-4b0c-9f9d-a938b7a6f6f5",
"rawTextureUuid": "3b5bdb32-0599-4571-b490-af0be697e34b",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": -175,
"offsetY": 69.5,
"trimX": 1,
"trimY": 1,
"width": 672,
"height": 371,
"rawWidth": 1024,
"rawHeight": 512,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{"frameRate":24,"name":"zd-timedown","version":"5.5","compatibleVersion":"5.5","armature":[{"type":"Armature","frameRate":24,"name":"Armature","aabb":{"x":-204,"y":-204,"width":408,"height":408},"bone":[{"name":"root"},{"name":"bone","parent":"root"},{"name":"bone1","parent":"root"},{"name":"bone2","parent":"root"},{"name":"bone3","parent":"root"},{"name":"bone4","parent":"root"},{"name":"bone5","parent":"root"}],"slot":[{"name":"圆3","parent":"bone1"},{"name":"圆2","parent":"bone2"},{"name":"圆1","parent":"bone"},{"name":"3","parent":"bone4"},{"name":"2","parent":"bone3"},{"name":"1","parent":"bone5"}],"skin":[{"slot":[{"name":"圆3","display":[{"name":"圆3"}]},{"name":"圆2","display":[{"name":"圆2"}]},{"name":"圆1","display":[{"name":"圆1"}]},{"name":"3","display":[{"name":"3"}]},{"name":"2","display":[{"name":"2"}]},{"name":"1","display":[{"name":"1"}]}]}],"animation":[{"duration":72,"playTimes":0,"name":"newAnimation","bone":[{"name":"bone","scaleFrame":[{"duration":15,"tweenEasing":0,"x":0.35,"y":0.35},{"tweenEasing":0},{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":15,"tweenEasing":0,"x":0.35,"y":0.35},{"tweenEasing":0},{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":15,"tweenEasing":0,"x":0.35,"y":0.35},{"tweenEasing":0},{"duration":8,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":0,"x":0.35,"y":0.35}]},{"name":"bone1","scaleFrame":[{"duration":23,"tweenEasing":0,"x":0.01,"y":0.01},{"tweenEasing":0,"x":1.74,"y":1.74},{"duration":23,"tweenEasing":0,"x":0.01,"y":0.01},{"tweenEasing":0,"x":1.74,"y":1.74},{"duration":23,"tweenEasing":0,"x":0.01,"y":0.01},{"tweenEasing":0,"x":1.74,"y":1.74},{"duration":0,"x":0.01,"y":0.01}]},{"name":"bone2","scaleFrame":[{"duration":19,"tweenEasing":0,"x":0.22,"y":0.22},{"tweenEasing":0,"x":1.24,"y":1.24},{"duration":4,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":19,"tweenEasing":0,"x":0.22,"y":0.22},{"tweenEasing":0,"x":1.24,"y":1.24},{"duration":4,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":19,"tweenEasing":0,"x":0.22,"y":0.22},{"tweenEasing":0,"x":1.24,"y":1.24},{"duration":4,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":0,"x":0.22,"y":0.22}]},{"name":"bone3","scaleFrame":[{"duration":24,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":16,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":7,"tweenEasing":0},{"tweenEasing":0},{"duration":24,"x":0.01,"y":0.01}]},{"name":"bone4","scaleFrame":[{"duration":15,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":8,"tweenEasing":0},{"tweenEasing":0},{"duration":48,"x":0.01,"y":0.01}]},{"name":"bone5","scaleFrame":[{"duration":48,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":16,"tweenEasing":0,"x":0.01,"y":0.01},{"duration":7,"tweenEasing":0},{"tweenEasing":0},{"duration":0,"x":0.01,"y":0.01}]}],"slot":[{"name":"圆3","colorFrame":[{"duration":4,"tweenEasing":0,"value":{"aM":0}},{"duration":16,"tweenEasing":0},{"duration":4,"tweenEasing":0},{"duration":4,"tweenEasing":0,"value":{"aM":0}},{"duration":16,"tweenEasing":0},{"duration":4,"tweenEasing":0},{"duration":4,"tweenEasing":0,"value":{"aM":0}},{"duration":16,"tweenEasing":0},{"duration":4,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"圆2","colorFrame":[{"duration":4,"tweenEasing":0,"value":{"aM":0}},{"duration":16,"tweenEasing":0},{"duration":4,"tweenEasing":0},{"duration":4,"tweenEasing":0,"value":{"aM":0}},{"duration":16,"tweenEasing":0},{"duration":4,"tweenEasing":0},{"duration":4,"tweenEasing":0,"value":{"aM":0}},{"duration":16,"tweenEasing":0},{"duration":4,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]},{"name":"圆1","colorFrame":[{"duration":4,"tweenEasing":0,"value":{"aM":0}},{"duration":16,"tweenEasing":0},{"duration":4,"tweenEasing":0},{"duration":4,"tweenEasing":0,"value":{"aM":0}},{"duration":16,"tweenEasing":0},{"duration":4,"tweenEasing":0},{"duration":4,"tweenEasing":0,"value":{"aM":0}},{"duration":16,"tweenEasing":0},{"duration":4,"tweenEasing":0},{"duration":0,"value":{"aM":0}}]}]}],"defaultActions":[{"gotoAndPlay":"newAnimation"}],"canvas":{"width":420,"height":420}}]}
\ No newline at end of file
{
"ver": "1.0.1",
"uuid": "f926ab7b-a298-440a-aec6-e4f31e63cfa4",
"subMetas": {}
}
\ No newline at end of file
{"name":"zd-timedown","imagePath":"zd-timedown_tex.png","height":512,"SubTexture":[{"name":"圆3","x":737,"height":234,"y":1,"width":234},{"name":"圆2","x":411,"height":324,"y":1,"width":324},{"name":"圆1","x":1,"height":408,"y":1,"width":408},{"name":"3","x":737,"height":200,"y":237,"width":127},{"name":"2","x":866,"height":198,"y":237,"width":125},{"name":"1","x":993,"height":201,"y":237,"width":28}],"width":1024}
\ No newline at end of file
{
"ver": "1.0.1",
"uuid": "62ed0b86-9655-424e-8735-59c6b99860fc",
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "0b7da031-89c6-4b68-a571-76cc006a8646",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 1024,
"height": 512,
"platformSettings": {},
"subMetas": {
"zd-timedown_tex": {
"ver": "1.0.4",
"uuid": "28178702-9e7f-42a4-8714-650cb9617a7d",
"rawTextureUuid": "0b7da031-89c6-4b68-a571-76cc006a8646",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": -1,
"offsetY": 36.5,
"trimX": 1,
"trimY": 1,
"width": 1020,
"height": 437,
"rawWidth": 1024,
"rawHeight": 512,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "1.1.0",
"uuid": "c551970e-b095-45f3-9f1d-25cde8b8deb1",
"uuid": "c79b0682-bf4f-4ad3-b1c0-7ddda6d7e705",
"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",
"uuid": "57ea7c61-9b8b-498a-b024-c98ee9124beb",
"uuid": "62c55203-2f2d-4170-8a46-e076d723068a",
"asyncLoadAssets": false,
"autoReleaseAssets": true,
"subMetas": {}
......
import { onHomeworkFinish } from "../script/util";
import { playAudio, playDragonBoneAnimation } from "../script/util";
import { defaultData } from "../script/defaultData";
cc.Class({
extends: cc.Component,
properties: {
level_bar: {
default: null,
type: cc.ProgressBar,
},
complete_ui:{
default:null,
type: cc.Node,
},
mike_btn:{
default:null,
type:cc.Button,
},
msg_node:{
default:null,
type:cc.Node
},
game_node:{
default:null,
type:cc.Node
},
timer_node:{
default:null,
type:cc.Node
},
level_node:{
default:null,
type:cc.Node
},
evaluate_ndoe:{
default:null,
type:cc.Node
}
},
// 生命周期 onLoad
......@@ -88,17 +119,34 @@ cc.Class({
},
preloadItem() {
this.trasformData(this.data.contentObj.dataArray);
this.addPreloadImage();
this.addPreloadAudio();
this.addPreloadAnima();
this.preload();
},
trasformData(data){
this._words = [];
let max_time = 0;
for(let i = 0; i < data.length; i++){
this._words.push({
time:data[i].time,
word:data[i].question.text,
audio:data[i].question.audio_url
});
max_time += Number(this._words[i].time);
}
this._max_time = max_time;
console.log(this._words);
console.log('max_time = ' + max_time);
window.scene = this;
},
addPreloadImage() {
this._imageResList.push({ url: this.data.pic_url });
this._imageResList.push({ url: this.data.pic_url_2 });
// this._imageResList.push({ url: this.data.pic_url });
// this._imageResList.push({ url: this.data.pic_url_2 });
},
addPreloadAudio() {
......@@ -127,227 +175,330 @@ cc.Class({
loadEnd() {
this.initData();
this.initAudio();
//this.initAudio();
this.initView();
// this.initListener();
},
_cantouch: null,
//_cantouch: null,
initData() {
// 所有全局变量 默认都是null
this._cantouch = true;
//this._cantouch = true;
},
audioBtn: null,
initAudio() {
const audioNode = cc.find('Canvas/res/audio');
//audioBtn: null,
// initAudio() {
// const audioNode = cc.find('res/audio');
const getAudioByResName = (resName) => {
return audioNode.getChildByName(resName).getComponent(cc.AudioSource);
}
// const getAudioByResName = (resName) => {
// return audioNode.getChildByName(resName).getComponent(cc.AudioSource);
// }
this.audioBtn = getAudioByResName('btn');
// this.audioBtn = getAudioByResName('btn');
},
// },
initView() {
const bgNode = cc.find('Canvas/bg');
let _bg = bgNode.getChildByName('bg');
_bg.width = cc.winSize.width;
_bg.height = cc.winSize.height;
//bgNode.scale = this._mapScaleMax;
this.initBg();
this.initPic();
this.initBtn();
this.initIcon();
},
let res = cc.find('res');
//console.log(res);
this._res = res;
res.sv_item = res.getChildByName('sv_item');
res.word_item = res.getChildByName('word_item');
initBg() {
const bgNode = cc.find('Canvas/bg');
bgNode.scale = this._mapScaleMax;
},
this._level_num = this.level_node.getChildByName('level_num').getComponent(cc.Label);
this._evaluate = this.evaluate_ndoe.getComponent(cc.js.getClassByName('Evaluate'));
this._complete = this.complete_ui.getComponent(cc.js.getClassByName('CompleteUI'));
this._wlist = this.game_node.getChildByName('word_list');
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._last_time = cc.find('audio/last321').getComponent(cc.AudioSource);
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);
});
let _cbg = this.complete_ui.getChildByName('bg');
_cbg.scale = 10;
//this._log = cc.find('Canvas').getChildByName('log').getComponent(cc.Label);
if (cc.winSize.width > cc.Canvas.instance.designResolution.width){
this.game_node.getChildByName('fg').width = cc.winSize.width;
}
this.resetData();
},
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);
})
tapReplay(){
this.playAudioByName('replay');
this.resetData();
},
curPage: null,
initBtn() {
tapMikeStart(){
this._current.x = -446;
this.playAudioByName('record');
},
this.curPage = 0;
const bottomPart = cc.find('Canvas/bottomPart');
bottomPart.zIndex = 5; // 提高层级
fallAnimation(){
this.mike_btn.interactable = false;
this.playAudioByName('fall');
let wi = this._current.getComponent(cc.js.getClassByName('WordItem'));
this._item_ani = cc.tween(wi.body)
.repeatForever(
cc.tween()
.to(0.1, {angle:-10})
.to(0.2, {angle:10})
.to(0.1, {angle:0}))
.start();
wi.db_item.active = true;
//playDragonBoneAnimation(wi.db_item, 'newAnimation', 1);
},
bottomPart.x = bottomPart.parent.width / 2;
bottomPart.y = -bottomPart.parent.height / 2;
tapMikeEnd(v){
this._current.getComponent(cc.js.getClassByName('WordItem')).db_item.active = false;
console.log('v = ' + v);
let ev = v;
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();
if (this._item_ani){
this._item_ani.stop();
}
let cx = 0, cy = 104;
if (v == 1){
this._down_dir *= -1;
cx = this._down_dir * 64;
}
else if (v == 2){
cy = 0;
cx = 2000;
ev = -1;
}
// 游戏结束时需要调用这个方法通知系统作业完成
onHomeworkFinish();
this._result[v].push(this._words[this._count].word);
cc.audioEngine.play(this.audioBtn.clip, false, 0.8)
})
if (this.no_tap_horn == false && v < 2){
this._result[2].push(this._words[this._count].word);
v = 2;
ev = 2;
}
const rightBtnNode = bottomPart.getChildByName('btn_right');
//节点中添加了button组件 则可以添加click事件监听
rightBtnNode.on('click', () => {
if (!this._cantouch) {
return;
}
if (this.curPage == 1) {
return;
}
let wi = this._current.getComponent(cc.js.getClassByName('WordItem'));
wi.horn.node.active = false;
this._current.runAction(
cc.sequence(
cc.jumpTo(0.5, cc.v2(cx, this._height), this._space, 1)
,cc.callFunc(()=>{
this._current.angle = 0;
cc.tween(this.game_node)
.by(0.1, {y: -cy})
.call(()=>{
if (this._show_complete)
return;
if (ev >= 0){
this.playAudioByName(['perfect','good','nicetry'][v]);
this._evaluate.setEvaluate(v, ()=>{
if (this._show_complete)
return;
if (this._count < this._words.length){
this._current = this.newWordItem();
}
else{
this.completeResult();
return;
}
});
this._count ++;
}
else{
this.playAudioByName('nicetry');
this._evaluate.setEvaluate(2, ()=>{
if (ev < 0 && this.show_horn == false){
this.show_horn = true;
this.bar_ani.stop();
this.showMsgBar(1);
this.timer321(()=>{
this.showMsgBar(-1);
this.bar_ani.stop();
let lastPos = 1-(3/(this._max_time));
let t1 = this._max_time * (1-this.level_bar.progress);
let t2 = t1-3;
if (t2 > 0){
this.bar_ani = cc.tween(this.level_bar)
.to(t2, {progress: lastPos})
.call(()=>{
this._last_time.play();
})
.to(3, {progress: 1})
.call(()=>{
this.completeResult();
})
.start();
}
else{
if (this._last_time.isPlaying){
this._last_time.play();
}
this.bar_ani = cc.tween(this.level_bar)
.to(t1, {progress: 1})
.call(()=>{
this.completeResult();
})
.start();
}
});
}
this._current = this.newWordItem();
})
}
this._height += cy;
this.setLevelNum(this._count);
})
.start();
})
));
},
this.curPage = 1
this.rightMove();
setLevelNum(num){
this._level_num.string = ''+num;
},
cc.audioEngine.play(this.audioBtn.clip, false, 0.5)
})
showMsgBar(idx){
this.msg_node.active = idx >= 0;
if (idx >= 0){
this.msg_node.children[0].active = idx == 0;
this.msg_node.children[1].active = idx == 1;
}
},
leftMove() {
this._cantouch = false;
const len = this.pic1.parent.width;
cc.tween(this.pic1)
.to(1, { x: this.pic1.baseX }, { easing: 'cubicInOut' })
.start();
timer321(cb){
this.timer_node.active = true;
this.playAudioByName('time321');
playDragonBoneAnimation(this.timer_node, 'newAnimation', 1, ()=>{
cb();
this.timer_node.active = false;
});
},
cc.tween(this.pic2)
.to(1, { x: this.pic2.baseX }, { easing: 'cubicInOut' })
.call(() => {
this._cantouch = true;
resetData(){
this._down_dir = -1;
this.timer_node.active = false;
this.msg_node.active = false;
this.game_node.y = -360;
this._count = 0;
this._height = 348;
this._space = 104;
this.level_bar.progress = 0;
this.no_tap_horn = true;
this.show_horn = false;
this._result = [[],[],[]];
this._show_complete = false;
this._wlist.removeAllChildren();
this.setLevelNum(0);
this.showMsgBar(0);
this.timer321(()=>{
this.showMsgBar(-1);
this._current = this.newWordItem();
let lastPos = 1-(3/(this._max_time));
this.bar_ani = cc.tween(this.level_bar)
.to(this._max_time-3, {progress:lastPos})
.call(()=>{
this._last_time.play();
})
.to(3, {progress: 1})
.call(()=>{
this.completeResult();
})
.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;
newWordItem(){
this.no_tap_horn = true;
let item = cc.instantiate(this._res.word_item);
let wi = item.getComponent(cc.js.getClassByName('WordItem'));
wi.db_item.active = false;
wi.word.string = this._words[this._count].word;
wi.audio = this._words[this._count].audio;
console.log(this.show_horn);
wi.horn.node.active = this.show_horn;
wi.horn.node.on('click', ()=>{
this.no_tap_horn = false;
this.playAudioByUrl(wi.audio);
});
this._wlist.addChild(item);
item.position = cc.v2(-1000, this._height);
cc.tween(item)
.to(0.8, {x: -446})
.call(()=>{
this.mike_btn.interactable = true;
})
.start();
if (this._current){
this._current.angle = 0;
}
return item;
},
// update (dt) {},
completeResult(){
if (this._show_complete == true)
return;
this._show_complete = true;
if (this._count < this._words.length){
for(let i = this._count; i < this._words.length; i++)
this._result[2].push(this._words[i].word);
}
if (this._last_time.isPlaying){
this._last_time.stop();
}
this._result[0] = this.unique(this._result[0]);
this._result[1] = this.unique(this._result[1]);
this._result[2] = this.unique(this._result[2]);
this._result[1] = this.removeArray(this._result[1], this._result[2]);
this._result[0] = this.removeArray(this._result[0], this._result[1]);
this._result[0] = this.removeArray(this._result[0], this._result[2]);
// ------------------------------------------------
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;
this.bar_ani.stop();
this._complete.show();
this.playAudioByName('victory');
},
// update (dt) {},
getSpriteFrimeByUrl(url, cb) {
cc.loader.load({ url }, (err, img) => {
const spriteFrame = new cc.SpriteFrame(img)
if (cb) {
cb(spriteFrame);
removeArray(ar, dar){
var ret = [];
for (var i = 0, j = ar.length; i < j; i++) {
if (dar.indexOf(ar[i]) === -1) {
ret.push(ar[i]);
}
})
}
return ret;
},
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);
unique(ar) {
var ret = [];
for (var i = 0, j = ar.length; i < j; i++) {
if (ret.indexOf(ar[i]) === -1) {
ret.push(ar[i]);
}
})
}
return ret;
},
// ------------------------------------------------
playAudioByUrl(audio_url, cb = null) {
if (audio_url) {
cc.assetManager.loadRemote(audio_url, (err, audioClip) => {
......@@ -361,6 +512,17 @@ cc.Class({
}
},
playAudioByName(audioName) {
return new Promise((resolve, reject) => {
try {
const audioNode = cc.find('audio/'+audioName);
const audioClip = audioNode.getComponent(cc.AudioSource).clip;
playAudio(audioClip, resolve);
} catch (e) {
reject(e);
}
});
},
// ------------------------------------------
});
{
"ver": "1.0.8",
"uuid": "f4ede462-f8d7-4069-ba80-915611c058ca",
"uuid": "6cbfa50e-6ac1-48fb-944f-92481baa5ca8",
"isPlugin": false,
"loadPluginInWeb": true,
"loadPluginInNative": true,
......
import { playDragonBoneAnimation } from "../script/util";
cc.Class({
extends: cc.Component,
name: "CompleteUI",
properties: {
stars:{
default:[],
type: cc.Node
},
lists: {
default: [],
type: cc.Node,
},
animate_node:{
default:null,
type: cc.Node,
},
template_node:{
default:null,
type: cc.Node,
}
},
onLoad:function(){
this.animate_node.active = false;
let replay = this.node.getChildByName('replay_btn');
replay.on('click', ()=>{
this.node.active = false;
scene.tapReplay();
});
},
ctor: function () {
},
show:function(){
this.node.opacity = 0;
this.node.active = true;
this.animate_node.active = true;
playDragonBoneAnimation(this.animate_node, 'feedback-final');
let ar = scene._result;
let col, item, lbl, lbls=[];
for(let i = 0; i < 3; i++){
col = this.lists[i];
col.removeAllChildren();
for(let j = 0; j < ar[i].length; j++){
item = cc.instantiate(this.template_node);
lbl = item.getComponent(cc.Label);
item.x = 0;
lbl.string = ar[i][j];
lbls.push(lbl)
col.addChild(item);
}
}
console.log(ar);
console.log(lbls);
cc.tween(this.node)
.delay(0.1)
.call(()=>{
let maxw = 0;
let item;
for (let i = 0; i < lbls.length; i++) {
maxw = Math.max(lbls[i].node.width, maxw);
}
let rate = 106/maxw;
let neww = 24 * rate;
for (let i = 0; i < lbls.length; i++) {
lbls[i].fontSize = neww;
}
this.node.opacity = 150;
})
.to(0.2, {opacity: 255})
.start();
var maxCount = scene._words.length;
var starNum = 3;
if (ar[2].length > maxCount/2){
starNum = 0;
}
else if (ar[2].length > 0){
starNum = 1;
}
else if (ar[1].length > 0){
starNum = 2;
}
for (let i = 0; i < 3; i++)
this.stars[i].active = i < starNum;
},
});
{
"ver": "1.0.8",
"uuid": "fa5d65a9-fe28-4a3f-afc1-e161d4d7787c",
"isPlugin": false,
"loadPluginInWeb": true,
"loadPluginInNative": true,
"loadPluginInEditor": false,
"subMetas": {}
}
\ 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"
"contentObj": {
"dataArray": [
{
"time": 5,
"question": {
"text": "a",
"audio_url": "http://staging-teach.cdn.ireadabc.com/dd360bbbcf5817eea26ac5fa3341ef5d.mp3"
}
},
{
"time": 5,
"question": {
"text": "background",
"audio_url": "http://staging-teach.cdn.ireadabc.com/738ef124b1882d10b31d59fb2fbd7eb7.mp3"
}
},
{
"time": 5,
"question": {
"text": "position",
"audio_url": "http://staging-teach.cdn.ireadabc.com/f228f396d2007fc20ab07763ebeda22e.mp3"
}
},
{
"time": 5,
"question": {
"text": "scale",
"audio_url": "http://staging-teach.cdn.ireadabc.com/a812f773f22fdb5fa0de04bc7979f6d7.mp3"
}
},
{
"time": 5,
"question": {
"text": "rotation",
"audio_url": "http://staging-teach.cdn.ireadabc.com/43349451985083b94a58c6870b49f115.mp3"
}
}
]
}
}
\ No newline at end of file
import { playDragonBoneAnimation } from "./util";
cc.Class({
extends: cc.Component,
name: "Evaluate",
properties: {
items: {
default: [],
type: cc.Node,
},
},
onLoad:function(){
//this.node.active = false;
},
ctor: function () {
},
setEvaluate:function(idx, cb = null){
this.node.active = true;
for(let i = 0; i < this.items.length; i++){
this.items[i].active = false;
}
this.items[idx].active = true;
playDragonBoneAnimation(this.items[idx], 'newAnimation');
cc.tween(this.node)
.delay(1)
.call(()=>{
this.node.active = false;
cb && cb();
})
.start();
}
});
{
"ver": "1.0.8",
"uuid": "87f08978-a32c-4efc-a86e-f8b87259d539",
"isPlugin": false,
"loadPluginInWeb": true,
"loadPluginInNative": true,
"loadPluginInEditor": false,
"subMetas": {}
}
\ No newline at end of file
import { RandomInt, playDragonBoneAnimation } from "../script/util";
cc.Class({
extends: cc.Component,
name: "MikeButton",
properties: {
db_item:{
default:null,
type:cc.Node
},
button:{
default:null,
type:cc.Button
}
},
ctor: function () {
},
onLoad:function(){
this.node.on(cc.Node.EventType.TOUCH_START, this.tapStart, this);
this.node.on(cc.Node.EventType.TOUCH_END, this.tapEnd, this);
this._down = 0;
this._up = 0;
},
tapStart(event){
if (this.button.interactable == false)
return;
this.db_item.active = true;
console.log(scene._words[scene._count].word);
if (window && window.courseware) {
window.courseware.startTest(scene._words[scene._count].word);
}
scene.tapMikeStart();
},
tapEnd(event){
if (this.button.interactable == false)
return;
this.db_item.active = false;
let data;
scene.fallAnimation();
if (window && window.courseware) {
window.courseware.stopTest((result)=>{
// data = result;
data = JSON.parse(result);
this.handleData(data);
});
}
else{
data = '{ "result" : { "overall" : 62 } }';
data = JSON.parse(data);
data.result.overall = RandomInt(60, 100);
cc.tween(this)
.delay(2)
.call(()=>{
this.handleData(data);
})
.start();
return;
}
},
handleData(data){
let v = 2;
if (data&&data.result&&data.result.overall){
if (data.result.overall > 85) v = 0;
else if (data.result.overall > 70) v = 1;
}
scene.tapMikeEnd(v);
}
});
\ No newline at end of file
{
"ver": "1.0.8",
"uuid": "e6d236be-6454-474b-83ed-273efb9715ee",
"isPlugin": false,
"loadPluginInWeb": true,
"loadPluginInNative": true,
"loadPluginInEditor": false,
"subMetas": {}
}
\ No newline at end of file
......@@ -5,8 +5,6 @@
* LICENSE file in the root directory of this source tree.
*/
cc.sys.capabilities["touches"] = true;
!(function (global) {
"use strict";
......
export function playDragonBoneAnimation(node, animationName, time = 1, onFinish = null, onFrameEvent = null) {
const armatureDisplay = node.getComponent(dragonBones.ArmatureDisplay);
armatureDisplay.once(dragonBones.EventObject.COMPLETE, () => {
if (onFinish) {
onFinish();
}
});
armatureDisplay.on(dragonBones.EventObject.FRAME_EVENT, (event) => {
if (onFrameEvent) {
onFrameEvent(event);
}
});
armatureDisplay.playAnimation(animationName, time);
}
export function getPosByAngle(angle, len) {
const radian = angle * Math.PI / 180;
......@@ -71,64 +86,64 @@ export function setSprNodeMaxLen(sprNode, maxW, maxH) {
}
export function localPosTolocalPos(baseNode, targetNode) {
const worldPos = targetNode.parent.convertToWorldSpaceAR(cc.v2(targetNode.x, targetNode.y));
const localPos = baseNode.parent.convertToNodeSpaceAR(cc.v2(worldPos.x, worldPos.y));
return localPos;
const worldPos = targetNode.parent.convertToWorldSpaceAR(cc.v2(targetNode.x, targetNode.y));
const localPos = baseNode.parent.convertToNodeSpaceAR(cc.v2(worldPos.x, worldPos.y));
return localPos;
}
export function worldPosToLocalPos(worldPos, baseNode) {
const localPos = baseNode.parent.convertToNodeSpaceAR(cc.v2(worldPos.x, worldPos.y));
return localPos;
const localPos = baseNode.parent.convertToNodeSpaceAR(cc.v2(worldPos.x, worldPos.y));
return localPos;
}
export function getScaleRateBy2Node(baseNode, targetNode, maxFlag = true) {
const worldRect1 = targetNode.getBoundingBoxToWorld();
const worldRect2 = baseNode.getBoundingBoxToWorld();
const sx = worldRect1.width / worldRect2.width;
const sy = worldRect1.height / worldRect2.height;
if (maxFlag) {
return Math.max(sx, sy);
} else {
return Math.min(sx, sy);
}
const worldRect1 = targetNode.getBoundingBoxToWorld();
const worldRect2 = baseNode.getBoundingBoxToWorld();
const sx = worldRect1.width / worldRect2.width;
const sy = worldRect1.height / worldRect2.height;
if (maxFlag) {
return Math.max(sx, sy);
} else {
return Math.min(sx, sy);
}
}
export function getDistance (start, end){
var pos = cc.v2(start.x - end.x, start.y - end.y);
var dis = Math.sqrt(pos.x*pos.x + pos.y*pos.y);
return dis;
export function getDistance(start, end) {
var pos = cc.v2(start.x - end.x, start.y - end.y);
var dis = Math.sqrt(pos.x * pos.x + pos.y * pos.y);
return dis;
}
export function playAudioByUrl(audio_url, cb=null) {
if (audio_url) {
cc.assetManager.loadRemote(audio_url, (err, audioClip) => {
export function 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 function btnClickAnima(btn, time=0.15, rate=1.05) {
export function btnClickAnima(btn, time = 0.15, rate = 1.05) {
btn.tmpScale = btn.scale;
btn.on(cc.Node.EventType.TOUCH_START, () => {
cc.tween(btn)
.to(time / 2, {scale: btn.scale * rate})
.to(time / 2, { scale: btn.scale * rate })
.start()
})
btn.on(cc.Node.EventType.TOUCH_CANCEL, () => {
cc.tween(btn)
.to(time / 2, {scale: btn.tmpScale})
.to(time / 2, { scale: btn.tmpScale })
.start()
})
btn.on(cc.Node.EventType.TOUCH_END, () => {
cc.tween(btn)
.to(time / 2, {scale: btn.tmpScale})
.to(time / 2, { scale: btn.tmpScale })
.start()
})
}
......
cc.Class({
extends: cc.Component,
name: "WordItem",
properties: {
word: {
default: null,
type: cc.Label,
},
horn:{
default:null,
type:cc.Button
},
db_item:{
default:null,
type:cc.Node
},
body:{
default:null,
type:cc.Node
}
},
ctor: function () {
},
onLoad:function(){
},
});
\ No newline at end of file
{
"ver": "1.0.8",
"uuid": "c1e18cbb-936d-43d5-abfe-10d040d47495",
"isPlugin": false,
"loadPluginInWeb": true,
"loadPluginInNative": true,
"loadPluginInEditor": false,
"subMetas": {}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "9a79969a-0506-48d4-bc98-3c05d109b027",
"uuid": "5786eb4b-55e5-4fb5-ab6b-06ca26e75f5b",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 61,
"height": 67,
"width": 660,
"height": 14,
"platformSettings": {},
"subMetas": {
"btn_left": {
"bar_bg": {
"ver": "1.0.4",
"uuid": "ce19457d-e8f3-4c38-ae3e-d4b99208ddb5",
"rawTextureUuid": "9a79969a-0506-48d4-bc98-3c05d109b027",
"uuid": "f8fd7667-cf64-4c7c-985b-cda591bd3237",
"rawTextureUuid": "5786eb4b-55e5-4fb5-ab6b-06ca26e75f5b",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
......@@ -22,10 +22,10 @@
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 61,
"height": 67,
"rawWidth": 61,
"rawHeight": 67,
"width": 660,
"height": 14,
"rawWidth": 660,
"rawHeight": 14,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
......
{
"ver": "2.3.5",
"uuid": "8e4b98de-3b84-427f-8243-0fcdbc7bd232",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 660,
"height": 14,
"platformSettings": {},
"subMetas": {
"bar_timer": {
"ver": "1.0.4",
"uuid": "494cd4f0-01f7-4f19-8cfe-c815b4a93a80",
"rawTextureUuid": "8e4b98de-3b84-427f-8243-0fcdbc7bd232",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 660,
"height": 14,
"rawWidth": 660,
"rawHeight": 14,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "e1b4d971-9876-4832-803a-5a321964a78b",
"uuid": "4969d55c-ab5a-43d4-bc11-b36aae60adc4",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 1280,
......@@ -13,8 +13,8 @@
"subMetas": {
"bg": {
"ver": "1.0.4",
"uuid": "8288e3d4-4c75-4b27-8f01-f7014417f4dd",
"rawTextureUuid": "e1b4d971-9876-4832-803a-5a321964a78b",
"uuid": "4ed88af8-404b-4cc3-af00-5c51e5e53f51",
"rawTextureUuid": "4969d55c-ab5a-43d4-bc11-b36aae60adc4",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
......
{
"ver": "2.3.5",
"uuid": "73313a6c-4d9f-4361-82ac-a642fa6c2cc6",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 287,
"height": 79,
"platformSettings": {},
"subMetas": {
"btn_orange": {
"ver": "1.0.4",
"uuid": "00c729ab-e38b-4501-b4b6-bca73b8a7c6f",
"rawTextureUuid": "73313a6c-4d9f-4361-82ac-a642fa6c2cc6",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 287,
"height": 79,
"rawWidth": 287,
"rawHeight": 79,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "a489b0a0-fada-4bbf-854f-009daa7b84ae",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 226,
"height": 86,
"platformSettings": {},
"subMetas": {
"cloud": {
"ver": "1.0.4",
"uuid": "dd4cb0d0-b986-4258-9c7b-dee829fbb723",
"rawTextureUuid": "a489b0a0-fada-4bbf-854f-009daa7b84ae",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 226,
"height": 86,
"rawWidth": 226,
"rawHeight": 86,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "9e1452f6-f65f-4bab-8b63-ffd975c2b3b0",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "point",
"premultiplyAlpha": false,
"genMipmaps": false,
"packable": true,
"width": 500,
"height": 377,
"platformSettings": {},
"subMetas": {
"complete_bg": {
"ver": "1.0.4",
"uuid": "45aecc54-7315-431a-baf2-149e54664d4d",
"rawTextureUuid": "9e1452f6-f65f-4bab-8b63-ffd975c2b3b0",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 500,
"height": 377,
"rawWidth": 500,
"rawHeight": 377,
"borderTop": 71,
"borderBottom": 91,
"borderLeft": 89,
"borderRight": 78,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "0d4ec37d-18ab-4b2d-9a2f-8fa3561d60fb",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 127,
"height": 275,
"platformSettings": {},
"subMetas": {
"complete_sub_bg": {
"ver": "1.0.4",
"uuid": "2e1b000b-7978-4352-a246-2763c2fa22b2",
"rawTextureUuid": "0d4ec37d-18ab-4b2d-9a2f-8fa3561d60fb",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 127,
"height": 275,
"rawWidth": 127,
"rawHeight": 275,
"borderTop": 61,
"borderBottom": 32,
"borderLeft": 29,
"borderRight": 36,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "55f1d035-fd18-455f-a15b-f061e11a9ebb",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 1280,
"height": 637,
"platformSettings": {},
"subMetas": {
"fg": {
"ver": "1.0.4",
"uuid": "6264deb5-888d-4387-852b-31cfa3283844",
"rawTextureUuid": "55f1d035-fd18-455f-a15b-f061e11a9ebb",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 1280,
"height": 637,
"rawWidth": 1280,
"rawHeight": 637,
"borderTop": 105,
"borderBottom": 112,
"borderLeft": 399,
"borderRight": 405,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "47f6d82b-ad1a-4092-8053-e8845dd3b6ec",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 172,
"height": 79,
"platformSettings": {},
"subMetas": {
"icon_box": {
"ver": "1.0.4",
"uuid": "edef237a-43c2-43aa-98bf-38e1c6aa370e",
"rawTextureUuid": "47f6d82b-ad1a-4092-8053-e8845dd3b6ec",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 172,
"height": 79,
"rawWidth": 172,
"rawHeight": 79,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "e2f28911-e0db-4712-b346-5c01e92505b4",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 54,
"height": 80,
"platformSettings": {},
"subMetas": {
"icon_flag": {
"ver": "1.0.4",
"uuid": "e5c4196f-2328-41c6-9564-13a254a96ab2",
"rawTextureUuid": "e2f28911-e0db-4712-b346-5c01e92505b4",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 54,
"height": 80,
"rawWidth": 54,
"rawHeight": 80,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "d582359e-924e-4ee9-9964-1fc4bb417e71",
"uuid": "ba4af36d-c08c-4d7c-864e-90551bb408c7",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": false,
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 61,
"height": 67,
"width": 60,
"height": 69,
"platformSettings": {},
"subMetas": {
"btn_right": {
"icon_hand": {
"ver": "1.0.4",
"uuid": "e5a2dbaa-a677-4a32-90d7-a1b057d7fb59",
"rawTextureUuid": "d582359e-924e-4ee9-9964-1fc4bb417e71",
"uuid": "e6814c51-6a44-449b-b7dd-29243e75b5ec",
"rawTextureUuid": "ba4af36d-c08c-4d7c-864e-90551bb408c7",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": -0.5,
"offsetY": 0.5,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 60,
"height": 66,
"rawWidth": 61,
"rawHeight": 67,
"height": 69,
"rawWidth": 60,
"rawHeight": 69,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
......
{
"ver": "2.3.5",
"uuid": "201cc45e-ed7a-41e1-8ecb-a45e12ebc1e3",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 103,
"height": 103,
"platformSettings": {},
"subMetas": {
"icon_horn": {
"ver": "1.0.4",
"uuid": "6982a40d-5109-47a4-baaa-548a18e8fe46",
"rawTextureUuid": "201cc45e-ed7a-41e1-8ecb-a45e12ebc1e3",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 103,
"height": 103,
"rawWidth": 103,
"rawHeight": 103,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "2126b98e-1214-4a8c-9ecb-ff4ed9f3208c",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 80,
"height": 80,
"platformSettings": {},
"subMetas": {
"icon_horn_1": {
"ver": "1.0.4",
"uuid": "c1abc0b2-3c7e-41e8-b301-9fa8ab04780e",
"rawTextureUuid": "2126b98e-1214-4a8c-9ecb-ff4ed9f3208c",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 80,
"height": 80,
"rawWidth": 80,
"rawHeight": 80,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "c0233caf-47f6-479a-9257-712138ab4675",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 199,
"height": 199,
"platformSettings": {},
"subMetas": {
"icon_mike": {
"ver": "1.0.4",
"uuid": "890dc58f-c539-4c29-a2c6-63ddfc9a6d7a",
"rawTextureUuid": "c0233caf-47f6-479a-9257-712138ab4675",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 199,
"height": 199,
"rawWidth": 199,
"rawHeight": 199,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "d4335327-162a-4d68-baaa-9ce7ba6d2355",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 99,
"height": 99,
"platformSettings": {},
"subMetas": {
"icon_mike_1": {
"ver": "1.0.4",
"uuid": "ea0f5e52-e49f-4666-9745-0bf65feebf7a",
"rawTextureUuid": "d4335327-162a-4d68-baaa-9ce7ba6d2355",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 99,
"height": 99,
"rawWidth": 99,
"rawHeight": 99,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "790d7396-a1aa-44c6-9b5b-6105039c70c5",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 1229,
"height": 128,
"platformSettings": {},
"subMetas": {
"msg_1": {
"ver": "1.0.4",
"uuid": "8334c0da-a364-4590-bc1a-8bacdeb0327b",
"rawTextureUuid": "790d7396-a1aa-44c6-9b5b-6105039c70c5",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 1229,
"height": 128,
"rawWidth": 1229,
"rawHeight": 128,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "82f17649-44a9-4902-b2f0-c3f2fae135ba",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 1194,
"height": 103,
"platformSettings": {},
"subMetas": {
"msg_2": {
"ver": "1.0.4",
"uuid": "cf087ff4-d39b-46d3-991a-40362fc43092",
"rawTextureUuid": "82f17649-44a9-4902-b2f0-c3f2fae135ba",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 1194,
"height": 103,
"rawWidth": 1194,
"rawHeight": 103,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "5818dbb8-4712-4edc-97de-c560b4037c39",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 1280,
"height": 199,
"platformSettings": {},
"subMetas": {
"msg_bg": {
"ver": "1.0.4",
"uuid": "b5f9fbb8-6c6c-4c89-8849-3db6c6c26b6f",
"rawTextureUuid": "5818dbb8-4712-4edc-97de-c560b4037c39",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 1280,
"height": 199,
"rawWidth": 1280,
"rawHeight": 199,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 187,
"borderRight": 279,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "6a7d1cef-3d91-4642-af56-eef63e3afae7",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 98,
"height": 98,
"platformSettings": {},
"subMetas": {
"oval_grey": {
"ver": "1.0.4",
"uuid": "7c158df3-2b8a-4fca-9891-87ebee2fd055",
"rawTextureUuid": "6a7d1cef-3d91-4642-af56-eef63e3afae7",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 98,
"height": 98,
"rawWidth": 98,
"rawHeight": 98,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "13589b5e-4646-4b52-bbb5-5d8d15744463",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 299,
"height": 299,
"platformSettings": {},
"subMetas": {
"oval_mike_1": {
"ver": "1.0.4",
"uuid": "ad10aef9-af25-40ab-a995-9d9930b9da44",
"rawTextureUuid": "13589b5e-4646-4b52-bbb5-5d8d15744463",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 299,
"height": 299,
"rawWidth": 299,
"rawHeight": 299,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "328d67ad-91b9-45f8-a734-42f230805473",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 371,
"height": 371,
"platformSettings": {},
"subMetas": {
"oval_mike_2": {
"ver": "1.0.4",
"uuid": "04b73d8e-86eb-423e-824f-ac7031bc5ef4",
"rawTextureUuid": "328d67ad-91b9-45f8-a734-42f230805473",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 371,
"height": 371,
"rawWidth": 371,
"rawHeight": 371,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "8f24c9a1-d588-4329-8369-7c5cb1216b18",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 324,
"height": 324,
"platformSettings": {},
"subMetas": {
"oval_timer_1": {
"ver": "1.0.4",
"uuid": "71c7113f-7ce5-486f-a2a5-25b664a266f6",
"rawTextureUuid": "8f24c9a1-d588-4329-8369-7c5cb1216b18",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 324,
"height": 324,
"rawWidth": 324,
"rawHeight": 324,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "36b193a2-0914-4e86-85ca-2599e827ef07",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 324,
"height": 324,
"platformSettings": {},
"subMetas": {
"oval_timer_2": {
"ver": "1.0.4",
"uuid": "b757290a-78d9-4b39-a092-24ee324566c6",
"rawTextureUuid": "36b193a2-0914-4e86-85ca-2599e827ef07",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 324,
"height": 324,
"rawWidth": 324,
"rawHeight": 324,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "1f44cf07-f175-473f-b752-b4fa0d732409",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 408,
"height": 408,
"platformSettings": {},
"subMetas": {
"oval_timer_3": {
"ver": "1.0.4",
"uuid": "6f99d9f3-b061-414e-ad60-71cba41df17f",
"rawTextureUuid": "1f44cf07-f175-473f-b752-b4fa0d732409",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 408,
"height": 408,
"rawWidth": 408,
"rawHeight": 408,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "14ab3230-a55d-4ea3-804d-d073929b1129",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 419,
"height": 125,
"platformSettings": {},
"subMetas": {
"ribbon": {
"ver": "1.0.4",
"uuid": "9666a9fb-3abc-4a5c-9acf-661eabccc79d",
"rawTextureUuid": "14ab3230-a55d-4ea3-804d-d073929b1129",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 419,
"height": 125,
"rawWidth": 419,
"rawHeight": 125,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "736bd93f-abed-499a-bf25-2d694730e72e",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 214,
"height": 57,
"platformSettings": {},
"subMetas": {
"star_bg": {
"ver": "1.0.4",
"uuid": "c1776689-3f64-4ded-8bc2-91784b7b53e2",
"rawTextureUuid": "736bd93f-abed-499a-bf25-2d694730e72e",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 214,
"height": 57,
"rawWidth": 214,
"rawHeight": 57,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "45c5d844-83e9-4949-9d4a-d9d0a28608e5",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 42,
"height": 40,
"platformSettings": {},
"subMetas": {
"star_dark_big": {
"ver": "1.0.4",
"uuid": "b2901cea-669e-43ac-9844-b651dfe71333",
"rawTextureUuid": "45c5d844-83e9-4949-9d4a-d9d0a28608e5",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 42,
"height": 40,
"rawWidth": 42,
"rawHeight": 40,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "15e1857e-9e37-4e7d-8f68-65c6ce446f86",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 42,
"height": 40,
"platformSettings": {},
"subMetas": {
"star_light_big": {
"ver": "1.0.4",
"uuid": "4e462f5c-d376-4736-b2a8-9953f7224764",
"rawTextureUuid": "15e1857e-9e37-4e7d-8f68-65c6ce446f86",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 42,
"height": 40,
"rawWidth": 42,
"rawHeight": 40,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
{
"ver": "2.3.5",
"uuid": "d11dbdfa-bd0a-4e86-9b57-d70810a83038",
"type": "sprite",
"wrapMode": "clamp",
"filterMode": "bilinear",
"premultiplyAlpha": true,
"genMipmaps": false,
"packable": true,
"width": 244,
"height": 104,
"platformSettings": {},
"subMetas": {
"wbox": {
"ver": "1.0.4",
"uuid": "149d7343-cd38-4592-8af4-f56e22a85f23",
"rawTextureUuid": "d11dbdfa-bd0a-4e86-9b57-d70810a83038",
"trimType": "auto",
"trimThreshold": 1,
"rotated": false,
"offsetX": 0,
"offsetY": 0,
"trimX": 0,
"trimY": 0,
"width": 244,
"height": 104,
"rawWidth": 244,
"rawHeight": 104,
"borderTop": 0,
"borderBottom": 0,
"borderLeft": 0,
"borderRight": 0,
"subMetas": {}
}
}
}
\ No newline at end of file
......@@ -3,6 +3,6 @@
"packages": "packages",
"name": "play",
"id": "9af72fd2-44a6-4131-8ea3-3e1b3fa22231",
"version": "2.4.5",
"version": "2.4.4",
"isNew": false
}
\ No newline at end of file
{
"title": "play",
"packageName": "org.cocos2d.demo",
"startScene": "57ea7c61-9b8b-498a-b024-c98ee9124beb",
"startScene": "62c55203-2f2d-4170-8a46-e076d723068a",
"excludeScenes": [],
"includeSDKBox": false,
"orientation": {
......@@ -28,7 +28,8 @@
},
"ios": {
"REMOTE_SERVER_ROOT": "",
"packageName": "org.cocos2d.demo"
"packageName": "org.cocos2d.demo",
"ios_enable_jit": true
},
"mac": {
"REMOTE_SERVER_ROOT": "",
......@@ -50,5 +51,6 @@
"scheme": "https",
"skipRecord": false
},
"appBundle": false
"appBundle": false,
"agreements": {}
}
{
"last-module-event-record-time": 1600677246969,
"last-module-event-record-time": 1637470768024,
"migrate-history": [
"cloud-function"
]
......
import express from "express";
import os from "os";
import readline from "readline";
import { build } from "./buildCocos.js";
const networkInfo = os.networkInterfaces();
let host = '';
for (const infos of Object.values(networkInfo)) {
for (const info of infos) {
if (info.family == 'IPv4') {
if (info.address.split('.')[0] != "127") {
host = info.address;
}
}
}
}
var app = express();
app.use('/publish', express.static('publish'));
app.get('/', function (req, res) {
res.send('Hello World');
})
let port = '';
var server = app.listen(8081, function () {
port = server.address().port
console.log("测试服务已启动:%s:%s", host, port)
})
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout
})
rl.on('line', async (str) => {
if (str.trim() == 'build') {
await build();
console.log("测试服务已启动:%s:%s", host, port)
console.log('输入 build 构建。')
} else {
console.log("测试服务已启动:%s:%s", host, port)
console.log('输入 build 构建。')
}
})
cd ../form & npm install & npm run publish & cd ../play & CocosCreator.exe --path "./" --build "platform=web-desktop;debug=true" --force & cd ../publish & node build.js
pause
let fs = require('fs');
const compressing = require('compressing');
function fix2(num) {
if (num >= 10) {
return '' + num;
} else {
return '0' + num;
}
}
async function copyDir(src, dst) {
const exists = await fs.existsSync(dst);
if (!exists) {
await fs.mkdirSync(dst);
}
//读取目录
const paths = await fs.readdirSync(src);
for (let i = 0; i < paths.length; i++) {
let path = paths[i];
const newSrc = `${src}/${path}`;
const newDst = `${dst}/${path}`;
const st = await fs.statSync(newSrc);
if (st.isFile()) {
console.log('copy: ' + newDst);
const data = await fs.readFileSync(newSrc);
await fs.writeFileSync(newDst, data);
} else if (st.isDirectory()) {
copyDir(newSrc, newDst);
}
}
}
async function removeDir(src) {
const exists = await fs.existsSync(src);
if (!exists) {
return;
}
//读取目录
const st = await fs.statSync(src);
console.log(st);
const paths = await fs.readdirSync(src);
for (let i = 0; i < paths.length; i++) {
let path = paths[i];
const newSrc = `${src}/${path}`;
const st = await fs.statSync(newSrc);
if (st.isFile()) {
console.log('remove: ' + newSrc);
await fs.unlinkSync(newSrc);
} else if (st.isDirectory()) {
await removeDir(newSrc);
}
}
await fs.rmdirSync(src);
}
async function main() {
let date = new Date();
let fileName = `Release_${date.getFullYear()}${fix2(date.getMonth() + 1)}${fix2(date.getDate())} `;
fileName += `${fix2(date.getHours())}-${fix2(date.getMinutes())}-${fix2(date.getSeconds())}`;
await removeDir('./publish/play');
await removeDir('./publish/form');
await copyDir('../play/build/web-desktop', './publish/play');
const data = await fs.readFileSync('./index.html');
await fs.writeFileSync('./publish/play/index.html', data);
compressing.zip.uncompress('../form/publish/form.zip', './publish/form')
.then(() => {
const tarStream = new compressing.zip.Stream();
tarStream.addEntry('./publish/play');
tarStream.addEntry('./publish/form');
const destStream = fs.createWriteStream(`publish/${fileName}.zip`);
tarStream.pipe(destStream);
console.log('打包完成!');
});
}
main();
\ No newline at end of file
import { build } from "./buildCocos.js";
await build();
\ No newline at end of file
#!/bin/sh
cd publish
set -e
node build_check.js
set +e
cd ../form
npm install
npm run publish
cd ../publish
node build_step_0.js
cd ../play
/Applications/CocosCreator/Creator/2.4.0/CocosCreator.app/Contents/MacOS/CocosCreator --path "./" --build "platform=web-desktop;debug=true" --force
echo "生成 web desktop 完成~!"
cd ../publish
node build_step_1.js
echo "build_step_1 完成~!"
cd ../play
/Applications/CocosCreator/Creator/2.4.4/CocosCreator.app/Contents/MacOS/CocosCreator --path "./" --build "platform=ios;debug=false;md5Cache=true;buildPath=build_ios;encryptJs=true;xxteaKey=6bbfce23-28b4-4a;zipCompressJs=true" --force
echo "生成 ios 完成~!"
cd ../publish
node build_step_2.js
echo "build_step_2 完成~!"
cd ../play
/Applications/CocosCreator/Creator/2.4.4/CocosCreator.app/Contents/MacOS/CocosCreator --path "./" --build "platform=ios;debug=false;md5Cache=true;buildPath=build_android;appABIs=['armeabi-v7a','x86','x86_64','arm64-v8a'];encryptJs=true;xxteaKey=6bbfce23-28b4-4a;zipCompressJs=true" --force
echo "生成 android 完成~!"
cd ../publish
node build_step_3.js
echo "build_step_3 完成~!"
cd ../play
/Applications/CocosCreator/Creator/2.4.4/CocosCreator.app/Contents/MacOS/CocosCreator --path "./" --build "platform=web-desktop;debug=false;buildPath=build_web_desktop" --force
echo "生成 web-desktop 完成~!"
cd ../publish
node build_step_4.js
echo "build_step_4 完成~!"
\ No newline at end of file
import { spawn } from "child_process";
import fs from "fs";
import compressing from 'compressing';
import { v4, parse } from 'uuid';
import { Base64 } from 'js-base64';
import { copyDir, removeDir, fix2 } from "./utils.js";
export async function build() {
const startTime = new Date().getTime();
// 构建前检查
const projectName = build_check();
// 清理旧文件
await removeDir('./publish/play');
await removeDir('./publish/ios');
await removeDir('./publish/android');
await removeDir('./publish/web_desktop');
await removeDir('./publish/form');
// 构建form
await buildForm();
// 替换uuid
replaceUuids();
// 构建play
// 改设置为非bundle
changeSettingToWebDesktop();
// 构建web_desktop
await buildWebDesktop();
await copyDir('../play/build/web-desktop', 'publish/play');
replaceIndexHtml();
console.log('构建 web desktop 成功!');
// 改设置为bundle
changeSettingsToBundle();
await buildAndroidBundle();
await copyDir('../play/build_android/jsb-link/remote', 'publish/android');
console.log('构建 android bundle 成功!');
await buildIosBundle();
await copyDir('../play/build_ios/jsb-link/remote', 'publish/ios');
console.log('构建 ios bundle 成功!');
await buildWebBundle();
await copyDir(`../play/build_web_desktop/web-desktop/assets/${projectName}`, 'publish/web_desktop');
console.log('构建 web bundle 成功!');
// 改设置为非bundle
changeSettingToWebDesktop();
createConfigFile(projectName);
compressAll(projectName);
const endTime = new Date().getTime();
const duration = new Date(endTime - startTime);
console.log(`打包完成!`);
console.log(`用时${duration.getMinutes()}${duration.getSeconds()}秒。`);
}
async function buildForm() {
const paths = fs.readdirSync('../form');
if (!paths.includes('tsconfig.json')) {
await copyDir('../form/src', 'publish/form');
return;
}
if (process.platform == 'win32') {
await execCmd('npm.cmd', ['install'], '../form');
} else {
await execCmd('npm', ['install'], '../form');
}
if (process.platform == 'win32') {
await execCmd('npm.cmd', ['run', 'publish'], '../form');
} else {
await execCmd('npm', ['run', 'publish'], '../form');
}
await compressing.zip.uncompress('../form/publish/form.zip', './publish/form');
}
function execCmd(cmd, params, path) {
return new Promise((resolve, reject) => {
const buffer = spawn(
cmd,
params,
{ cwd: path }
);
buffer.stdout.on('data', (data) => {
console.log(`stdout: ${data}`);
});
buffer.stderr.on('data', (data) => {
console.error(`stderr: ${data}`);
});
buffer.on('close', (code) => {
console.log(`child process exited with code ${code}`);
resolve();
});
});
}
const creatorBasePath = 'C:\\CocosDashboard_1.0.6\\resources\\.editors\\Creator';
export function buildWebDesktop() {
return new Promise((resolve, reject) => {
const buffer = spawn(
`${creatorBasePath}\\2.4.0\\CocosCreator.exe`,
['--path', './', '--build', 'platform=web-desktop;debug=true', '--force'],
{ cwd: '../play' }
);
buffer.stdout.on('data', (data) => {
console.log(`stdout: ${data}`);
});
buffer.stderr.on('data', (data) => {
console.error(`stderr: ${data}`);
});
buffer.on('close', (code) => {
console.log(`child process exited with code ${code}`);
resolve();
});
});
}
export function buildAndroidBundle() {
return new Promise((resolve, reject) => {
const buffer = spawn(
`${creatorBasePath}\\2.4.4\\CocosCreator.exe`,
['--path', './', '--build', "platform=ios;debug=false;md5Cache=true;buildPath=build_android;appABIs=['armeabi-v7a','x86','x86_64','arm64-v8a'];encryptJs=true;xxteaKey=6bbfce23-28b4-4a;zipCompressJs=true", '--force'],
{ cwd: '../play' }
);
buffer.stdout.on('data', (data) => {
console.log(`stdout: ${data}`);
});
buffer.stderr.on('data', (data) => {
console.error(`stderr: ${data}`);
});
buffer.on('close', (code) => {
console.log(`child process exited with code ${code}`);
resolve();
});
});
}
export function buildIosBundle() {
return new Promise((resolve, reject) => {
const buffer = spawn(
`${creatorBasePath}\\2.4.4\\CocosCreator.exe`,
['--path', './', '--build', "platform=ios;debug=false;md5Cache=true;buildPath=build_ios;encryptJs=true;xxteaKey=6bbfce23-28b4-4a;zipCompressJs=true", '--force'],
{ cwd: '../play' }
);
buffer.stdout.on('data', (data) => {
console.log(`stdout: ${data}`);
});
buffer.stderr.on('data', (data) => {
console.error(`stderr: ${data}`);
});
buffer.on('close', (code) => {
console.log(`child process exited with code ${code}`);
resolve();
});
});
}
export function buildWebBundle() {
return new Promise((resolve, reject) => {
const buffer = spawn(
`${creatorBasePath}\\2.4.4\\CocosCreator.exe`,
['--path', './', '--build', "platform=web-desktop;debug=false;buildPath=build_web_desktop", '--force'],
{ cwd: '../play' }
);
buffer.stdout.on('data', (data) => {
console.log(`stdout: ${data}`);
});
buffer.stderr.on('data', (data) => {
console.error(`stderr: ${data}`);
});
buffer.on('close', (code) => {
console.log(`child process exited with code ${code}`);
resolve();
});
});
}
export function createConfigFile(projectName) {
const androidPaths = fs.readdirSync(`publish/android/${projectName}`);
const androidConfigFileName = androidPaths.find(path => path.indexOf('config') == 0);
const androidVersion = androidConfigFileName.split('.')[1];
const iosPaths = fs.readdirSync(`publish/ios/${projectName}`);
const iosConfigFileName = iosPaths.find(path => path.indexOf('config') == 0);
const iosVersion = iosConfigFileName.split('.')[1];
const config = {
"ios": {
"sceneName": projectName,
"version": iosVersion
},
"android": {
"sceneName": projectName,
"version": androidVersion
}
}
fs.writeFileSync('publish/config.json', JSON.stringify(config));
}
export function compressAll(projectName) {
const tarStream = new compressing.zip.Stream();
tarStream.addEntry('./publish/play');
tarStream.addEntry('./publish/form');
tarStream.addEntry('./publish/ios');
tarStream.addEntry('./publish/android');
tarStream.addEntry('./publish/web_desktop');
tarStream.addEntry('./publish/config.json');
const destStream = fs.createWriteStream(`publish/${getReleaseFileName(projectName)}.zip`);
tarStream.pipe(destStream);
}
function getReleaseFileName(projectName) {
let date = new Date();
let fileName = `${projectName}_${date.getFullYear()}${fix2(date.getMonth() + 1)}${fix2(date.getDate())} `;
fileName += `${fix2(date.getHours())}-${fix2(date.getMinutes())}-${fix2(date.getSeconds())}`;
return fileName;
}
export function build_check() {
const dirNames = process.cwd().split(/\/|\\/);
const projectName = dirNames[dirNames.length - 2];
const path = '../play/assets'
let folderName = '';
fs.readdirSync(path).find(fileName => {
const st = fs.statSync(`${path}/${fileName}`);
if (st.isDirectory()) {
folderName = fileName;
}
});
if (projectName != folderName) {
throw (`项目名(${projectName})与bundle文件夹名(${folderName})不相同`);
}
let same = false;
const files = fs.readdirSync(`${path}/${folderName}/scene`);
files.forEach(fileName => {
fileName.split('.').forEach((str, idx, arr) => {
if (str == 'fire') {
const sceneName = arr[idx - 1];
if (folderName == sceneName) {
same = true;
}
}
})
});
if (!same) {
throw (`bundle文件夹名称(${folderName})与scene名称不相同`);
}
return projectName;
}
function getFolderName(path) {
let folderName = '';
fs.readdirSync(path).find(fileName => {
const st = fs.statSync(`${path}/${fileName}`);
if (st.isDirectory()) {
folderName = fileName;
}
});
return folderName;
}
function editFolderMeta(path, folderName, isBundle) {
const metaPath = `${path}/${folderName}.meta`;
const metaDataStr = fs.readFileSync(metaPath);
const metaData = JSON.parse(metaDataStr);
metaData.isBundle = isBundle;
metaData.isRemoteBundle = {
ios: isBundle,
android: isBundle
};
fs.writeFileSync(metaPath, JSON.stringify(metaData));
}
export function changeSettingToWebDesktop() {
const path = '../play/assets'
const folderName = getFolderName(path);
editFolderMeta(path, folderName, false);
}
export function changeSettingsToBundle() {
const path = '../play/assets'
const folderName = getFolderName(path);
editFolderMeta(path, folderName, true);
}
export function replaceUuids() {
console.log('build_step_0 开始~!');
function getFolderName(path) {
let folderName = '';
fs.readdirSync(path).find(fileName => {
const st = fs.statSync(`${path}/${fileName}`);
if (st.isDirectory()) {
folderName = fileName;
}
});
return folderName;
}
function editFolderMeta(path, folderName) {
const metaPath = `${path}/${folderName}.meta`;
const metaDataStr = fs.readFileSync(metaPath);
const metaData = JSON.parse(metaDataStr);
metaData.isBundle = false;
fs.writeFileSync(metaPath, JSON.stringify(metaData));
}
function fileReplace(path, replaceStr, newStr) {
const fileStr = fs.readFileSync(path);
const newFileStr = fileStr.toString().replace(new RegExp(replaceStr.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"), 'g'), newStr);
fs.writeFileSync(path, newFileStr);
}
const path = '../play/assets'
const folderName = getFolderName(path);
editFolderMeta(path, folderName);
const oldFireUuid = '57ea7c61-9b8b-498a-b024-c98ee9124beb';
const newFireUuid = v4();
fileReplace(`../play/assets/${folderName}/scene/${folderName}.fire.meta`, oldFireUuid, newFireUuid);
fileReplace(`../play/assets/${folderName}/scene/${folderName}.fire`, oldFireUuid, newFireUuid);
fileReplace('../play/settings/builder.json', oldFireUuid, newFireUuid);
function getShortUuid(uuid) {
const bytes = parse(uuid).subarray(1);
return uuid.substring(0, 5) + Base64.fromUint8Array(bytes).substring(2);
}
const oldJsUuid = 'f4ede462-f8d7-4069-ba80-915611c058ca';
const oldJsShortUuid = 'f4edeRi+NdAabqAkVYRwFjK';
const oldJsId = 'e687yyoRBIzZAOVRL8Sseh';
const newJsUuid = v4();
const newJsShortUuid = getShortUuid(newJsUuid);
const newJsId = v4().replace(/-/g, '').substring(0, oldJsId.length);
fileReplace(`../play/assets/${folderName}/scene/${folderName}.js.meta`, oldJsUuid, newJsUuid);
fileReplace(`../play/assets/${folderName}/scene/${folderName}.fire`, oldFireUuid, newFireUuid);
fileReplace(`../play/assets/${folderName}/scene/${folderName}.fire`, oldJsShortUuid, newJsShortUuid);
fileReplace(`../play/assets/${folderName}/scene/${folderName}.fire`, oldJsId, newJsId);
console.log('build_step_0 完成~!');
}
export function replaceIndexHtml() {
const data = fs.readFileSync('./index.html');
fs.writeFileSync('./publish/play/index.html', data);
}
let fs = require('fs');
const dirNames = __dirname.split('/');
const projectName = dirNames[dirNames.length - 2];
const path = '../play/assets'
let folderName = '';
fs.readdirSync(path).find(fileName => {
const st = fs.statSync(`${path}/${fileName}`);
if (st.isDirectory()) {
folderName = fileName;
}
});
if (projectName != folderName) {
throw (`项目名(${projectName})与bundle文件夹名(${folderName})不相同`);
}
let same = false;
const files = fs.readdirSync(`${path}/${folderName}/scene`);
files.forEach(fileName => {
fileName.split('.').forEach((str, idx, arr) => {
if (str == 'fire') {
const sceneName = arr[idx - 1];
if (folderName == sceneName) {
same = true;
}
}
})
});
if (!same) {
throw (`bundle文件夹名称(${folderName})与scene名称不相同`);
}
\ No newline at end of file
let fs = require('fs');
const path = '../play/assets'
let folderName = '';
fs.readdirSync(path).find(fileName => {
const st = fs.statSync(`${path}/${fileName}`);
if (st.isDirectory()) {
folderName = fileName;
}
});
const metaPath = `${path}/${folderName}.meta`;
const metaDataStr = fs.readFileSync(metaPath);
const metaData = JSON.parse(metaDataStr);
metaData.isBundle = false;
fs.writeFileSync(metaPath, JSON.stringify(metaData));
const { removeDir, copyDir, fix2 } = require('./utils');
const compressing = require('compressing');
let fs = require('fs');
async function main() {
await removeDir('./publish/play');
await removeDir('./publish/form');
await copyDir('../play/build/web-desktop', './publish/play');
compressing.zip.uncompress('../form/publish/form.zip', './publish/form');
const data = await fs.readFileSync('./index.html');
await fs.writeFileSync('./publish/play/index.html', data);
await removeDir('../play/build/web-desktop');
const path = '../play/assets'
let folderName = '';
fs.readdirSync(path).find(fileName => {
const st = fs.statSync(`${path}/${fileName}`);
if (st.isDirectory()) {
folderName = fileName;
}
});
const metaPath = `${path}/${folderName}.meta`;
const metaDataStr = fs.readFileSync(metaPath);
const metaData = JSON.parse(metaDataStr);
metaData.isBundle = true;
metaData.isRemoteBundle = {
ios: true,
android: true
};
fs.writeFileSync(metaPath, JSON.stringify(metaData));
}
main();
\ No newline at end of file
const { removeDir, copyDir, fix2 } = require('./utils');
const compressing = require('compressing');
async function main() {
await removeDir('./publish/ios');
await copyDir('../play/build_ios/jsb-link/remote', './publish/ios');
await removeDir('../play/build_ios/jsb-link');
}
main();
\ No newline at end of file
const { removeDir, copyDir, fix2 } = require('./utils');
const compressing = require('compressing');
let fs = require('fs');
async function main() {
await removeDir('./publish/android');
await copyDir('../play/build_android/jsb-link/remote', './publish/android');
await removeDir('../play/build_android/jsb-link');
}
main();
\ No newline at end of file
const { removeDir, copyDir, fix2 } = require('./utils');
const compressing = require('compressing');
let fs = require('fs');
async function main() {
await removeDir('./publish/web_desktop');
const projectName = await getBundleName('../play/build_web_desktop/web-desktop/assets');
await copyDir(`../play/build_web_desktop/web-desktop/assets/${projectName}`, './publish/web_desktop');
await removeDir('../play/build_web_desktop');
const bundleData = {
ios: await getBundleData('./publish/ios'),
android: await getBundleData('./publish/android'),
}
fs.writeFileSync('./publish/config.json', JSON.stringify(bundleData));
const tarStream = new compressing.zip.Stream();
tarStream.addEntry('./publish/play');
tarStream.addEntry('./publish/form');
tarStream.addEntry('./publish/ios');
tarStream.addEntry('./publish/android');
tarStream.addEntry('./publish/web_desktop');
tarStream.addEntry('./publish/config.json');
const destStream = fs.createWriteStream(`publish/${getReleaseFileName()}.zip`);
tarStream.pipe(destStream);
console.log('打包完成!');
}
async function getBundleName(path) {
const paths = fs.readdirSync(path);
return paths.find(path => path != 'internal' && path !='main');
}
async function getBundleData(path) {
const bundleData = {
sceneName: '',
version: '',
}
const paths = fs.readdirSync(path);
bundleData.sceneName = paths[0];
const files = fs.readdirSync(path + '/' + bundleData.sceneName);
files.forEach(fileName => {
fileName.split('.').forEach((str, idx, arr) => {
if (str == 'config') {
bundleData.version = arr[idx + 1];
}
})
});
return bundleData;
}
function getReleaseFileName() {
let date = new Date();
let fileName = `Release_${date.getFullYear()}${fix2(date.getMonth() + 1)}${fix2(date.getDate())} `;
fileName += `${fix2(date.getHours())}-${fix2(date.getMinutes())}-${fix2(date.getSeconds())}`;
return fileName;
}
main();
\ No newline at end of file
{
"name": "publish",
"version": "1.0.0",
"lockfileVersion": 1,
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "publish",
"version": "1.0.0",
"license": "ISC",
"dependencies": {
"child_process": "^1.0.2",
"compressing": "^1.5.1",
"express": "^4.17.1",
"js-base64": "^3.7.2",
"uuid": "^8.3.2"
}
},
"node_modules/accepts": {
"version": "1.3.7",
"resolved": "https://registry.nlark.com/accepts/download/accepts-1.3.7.tgz",
"integrity": "sha1-UxvHJlF6OytB+FACHGzBXqq1B80=",
"dependencies": {
"mime-types": "~2.1.24",
"negotiator": "0.6.2"
},
"engines": {
"node": ">= 0.6"
}
},
"node_modules/array-flatten": {
"version": "1.1.1",
"resolved": "https://registry.nlark.com/array-flatten/download/array-flatten-1.1.1.tgz",
"integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI="
},
"node_modules/bl": {
"version": "1.2.3",
"resolved": "https://registry.npmjs.org/bl/-/bl-1.2.3.tgz",
"integrity": "sha512-pvcNpa0UU69UT341rO6AYy4FVAIkUHuZXRIWbq+zHnsVcRzDDjIAhGuuYoi0d//cwIwtt4pkpKycWEfjdV+vww==",
"dependencies": {
"readable-stream": "^2.3.5",
"safe-buffer": "^5.1.1"
}
},
"node_modules/body-parser": {
"version": "1.19.0",
"resolved": "https://registry.npm.taobao.org/body-parser/download/body-parser-1.19.0.tgz?cache=0&sync_timestamp=1615817950402&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbody-parser%2Fdownload%2Fbody-parser-1.19.0.tgz",
"integrity": "sha1-lrJwnlfJxOCab9Zqj9l5hE9p8Io=",
"dependencies": {
"bytes": "3.1.0",
"content-type": "~1.0.4",
"debug": "2.6.9",
"depd": "~1.1.2",
"http-errors": "1.7.2",
"iconv-lite": "0.4.24",
"on-finished": "~2.3.0",
"qs": "6.7.0",
"raw-body": "2.4.0",
"type-is": "~1.6.17"
},
"engines": {
"node": ">= 0.8"
}
},
"node_modules/body-parser/node_modules/iconv-lite": {
"version": "0.4.24",
"resolved": "https://registry.nlark.com/iconv-lite/download/iconv-lite-0.4.24.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Ficonv-lite%2Fdownload%2Ficonv-lite-0.4.24.tgz",
"integrity": "sha1-ICK0sl+93CHS9SSXSkdKr+czkIs=",
"dependencies": {
"safer-buffer": ">= 2.1.2 < 3"
},
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/buffer-alloc": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz",
"integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==",
"dependencies": {
"buffer-alloc-unsafe": "^1.1.0",
"buffer-fill": "^1.0.0"
}
},
"node_modules/buffer-alloc-unsafe": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz",
"integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg=="
},
"node_modules/buffer-crc32": {
"version": "0.2.13",
"resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz",
"integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=",
"engines": {
"node": "*"
}
},
"node_modules/buffer-fill": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz",
"integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw="
},
"node_modules/bytes": {
"version": "3.1.0",
"resolved": "https://registry.npm.taobao.org/bytes/download/bytes-3.1.0.tgz",
"integrity": "sha1-9s95M6Ng4FiPqf3oVlHNx/gF0fY=",
"engines": {
"node": ">= 0.8"
}
},
"node_modules/child_process": {
"version": "1.0.2",
"resolved": "https://registry.npm.taobao.org/child_process/download/child_process-1.0.2.tgz",
"integrity": "sha1-sffn/HPSXn/R1FWtyU4UODAYK1o="
},
"node_modules/compressing": {
"version": "1.5.1",
"resolved": "https://registry.npmjs.org/compressing/-/compressing-1.5.1.tgz",
"integrity": "sha512-1AGBR4Vh0/rpPKSXHoV9cerLo0CUlAhZ/xsJqU3a9+2cbSaFjWT3fk2MIGkCnbpk//DGWrcWw03rhKFQrA9RQw==",
"dependencies": {
"flushwritable": "^1.0.0",
"get-ready": "^1.0.0",
"iconv-lite": "^0.5.0",
"mkdirp": "^0.5.1",
"pump": "^3.0.0",
"streamifier": "^0.1.1",
"tar-stream": "^1.5.2",
"yauzl": "^2.7.0",
"yazl": "^2.4.2"
},
"engines": {
"node": ">= 4.0.0"
}
},
"node_modules/content-disposition": {
"version": "0.5.3",
"resolved": "https://registry.npm.taobao.org/content-disposition/download/content-disposition-0.5.3.tgz",
"integrity": "sha1-4TDK9+cnkIfFYWwgB9BIVpiYT70=",
"dependencies": {
"safe-buffer": "5.1.2"
},
"engines": {
"node": ">= 0.6"
}
},
"node_modules/content-disposition/node_modules/safe-buffer": {
"version": "5.1.2",
"resolved": "https://registry.npm.taobao.org/safe-buffer/download/safe-buffer-5.1.2.tgz",
"integrity": "sha1-mR7GnSluAxN0fVm9/St0XDX4go0="
},
"node_modules/content-type": {
"version": "1.0.4",
"resolved": "https://registry.npm.taobao.org/content-type/download/content-type-1.0.4.tgz",
"integrity": "sha1-4TjMdeBAxyexlm/l5fjJruJW/js=",
"engines": {
"node": ">= 0.6"
}
},
"node_modules/cookie": {
"version": "0.4.0",
"resolved": "https://registry.npm.taobao.org/cookie/download/cookie-0.4.0.tgz",
"integrity": "sha1-vrQ35wIrO21JAZ0IhmUwPr6cFLo=",
"engines": {
"node": ">= 0.6"
}
},
"node_modules/cookie-signature": {
"version": "1.0.6",
"resolved": "https://registry.nlark.com/cookie-signature/download/cookie-signature-1.0.6.tgz",
"integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw="
},
"node_modules/core-util-is": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
"integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
},
"node_modules/debug": {
"version": "2.6.9",
"resolved": "https://registry.npmmirror.com/debug/download/debug-2.6.9.tgz",
"integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=",
"dependencies": {
"ms": "2.0.0"
}
},
"node_modules/depd": {
"version": "1.1.2",
"resolved": "https://registry.npm.taobao.org/depd/download/depd-1.1.2.tgz",
"integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=",
"engines": {
"node": ">= 0.6"
}
},
"node_modules/destroy": {
"version": "1.0.4",
"resolved": "https://registry.npm.taobao.org/destroy/download/destroy-1.0.4.tgz",
"integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA="
},
"node_modules/ee-first": {
"version": "1.1.1",
"resolved": "https://registry.npm.taobao.org/ee-first/download/ee-first-1.1.1.tgz",
"integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0="
},
"node_modules/encodeurl": {
"version": "1.0.2",
"resolved": "https://registry.npm.taobao.org/encodeurl/download/encodeurl-1.0.2.tgz",
"integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=",
"engines": {
"node": ">= 0.8"
}
},
"node_modules/end-of-stream": {
"version": "1.4.4",
"resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz",
"integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==",
"dependencies": {
"once": "^1.4.0"
}
},
"node_modules/escape-html": {
"version": "1.0.3",
"resolved": "https://registry.npm.taobao.org/escape-html/download/escape-html-1.0.3.tgz",
"integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg="
},
"node_modules/etag": {
"version": "1.8.1",
"resolved": "https://registry.nlark.com/etag/download/etag-1.8.1.tgz?cache=0&sync_timestamp=1618847044821&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fetag%2Fdownload%2Fetag-1.8.1.tgz",
"integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=",
"engines": {
"node": ">= 0.6"
}
},
"node_modules/express": {
"version": "4.17.1",
"resolved": "https://registry.npm.taobao.org/express/download/express-4.17.1.tgz",
"integrity": "sha1-RJH8OGBc9R+GKdOcK10Cb5ikwTQ=",
"dependencies": {
"accepts": "~1.3.7",
"array-flatten": "1.1.1",
"body-parser": "1.19.0",
"content-disposition": "0.5.3",
"content-type": "~1.0.4",
"cookie": "0.4.0",
"cookie-signature": "1.0.6",
"debug": "2.6.9",
"depd": "~1.1.2",
"encodeurl": "~1.0.2",
"escape-html": "~1.0.3",
"etag": "~1.8.1",
"finalhandler": "~1.1.2",
"fresh": "0.5.2",
"merge-descriptors": "1.0.1",
"methods": "~1.1.2",
"on-finished": "~2.3.0",
"parseurl": "~1.3.3",
"path-to-regexp": "0.1.7",
"proxy-addr": "~2.0.5",
"qs": "6.7.0",
"range-parser": "~1.2.1",
"safe-buffer": "5.1.2",
"send": "0.17.1",
"serve-static": "1.14.1",
"setprototypeof": "1.1.1",
"statuses": "~1.5.0",
"type-is": "~1.6.18",
"utils-merge": "1.0.1",
"vary": "~1.1.2"
},
"engines": {
"node": ">= 0.10.0"
}
},
"node_modules/express/node_modules/safe-buffer": {
"version": "5.1.2",
"resolved": "https://registry.npm.taobao.org/safe-buffer/download/safe-buffer-5.1.2.tgz",
"integrity": "sha1-mR7GnSluAxN0fVm9/St0XDX4go0="
},
"node_modules/fd-slicer": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz",
"integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=",
"dependencies": {
"pend": "~1.2.0"
}
},
"node_modules/finalhandler": {
"version": "1.1.2",
"resolved": "https://registry.npm.taobao.org/finalhandler/download/finalhandler-1.1.2.tgz",
"integrity": "sha1-t+fQAP/RGTjQ/bBTUG9uur6fWH0=",
"dependencies": {
"debug": "2.6.9",
"encodeurl": "~1.0.2",
"escape-html": "~1.0.3",
"on-finished": "~2.3.0",
"parseurl": "~1.3.3",
"statuses": "~1.5.0",
"unpipe": "~1.0.0"
},
"engines": {
"node": ">= 0.8"
}
},
"node_modules/flushwritable": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/flushwritable/-/flushwritable-1.0.0.tgz",
"integrity": "sha1-PjKNj95BKtR+c44751C00pAENJg="
},
"node_modules/forwarded": {
"version": "0.2.0",
"resolved": "https://registry.nlark.com/forwarded/download/forwarded-0.2.0.tgz?cache=0&sync_timestamp=1622503499867&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fforwarded%2Fdownload%2Fforwarded-0.2.0.tgz",
"integrity": "sha1-ImmTZCiq1MFcfr6XeahL8LKoGBE=",
"engines": {
"node": ">= 0.6"
}
},
"node_modules/fresh": {
"version": "0.5.2",
"resolved": "https://registry.nlark.com/fresh/download/fresh-0.5.2.tgz",
"integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=",
"engines": {
"node": ">= 0.6"
}
},
"node_modules/fs-constants": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz",
"integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow=="
},
"node_modules/get-ready": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/get-ready/-/get-ready-1.0.0.tgz",
"integrity": "sha1-+RgX8emt7P6hOlYq38jeiDqzR4I="
},
"node_modules/http-errors": {
"version": "1.7.2",
"resolved": "https://registry.npmmirror.com/http-errors/download/http-errors-1.7.2.tgz?cache=0&sync_timestamp=1636932182141&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fhttp-errors%2Fdownload%2Fhttp-errors-1.7.2.tgz",
"integrity": "sha1-T1ApzxMjnzEDblsuVSkrz7zIXI8=",
"dependencies": {
"depd": "~1.1.2",
"inherits": "2.0.3",
"setprototypeof": "1.1.1",
"statuses": ">= 1.5.0 < 2",
"toidentifier": "1.0.0"
},
"engines": {
"node": ">= 0.6"
}
},
"node_modules/http-errors/node_modules/inherits": {
"version": "2.0.3",
"resolved": "https://registry.nlark.com/inherits/download/inherits-2.0.3.tgz",
"integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4="
},
"node_modules/iconv-lite": {
"version": "0.5.2",
"resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.5.2.tgz",
"integrity": "sha512-kERHXvpSaB4aU3eANwidg79K8FlrN77m8G9V+0vOR3HYaRifrlwMEpT7ZBJqLSEIHnEgJTHcWK82wwLwwKwtag==",
"dependencies": {
"safer-buffer": ">= 2.1.2 < 3"
},
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/inherits": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
},
"node_modules/ipaddr.js": {
"version": "1.9.1",
"resolved": "https://registry.nlark.com/ipaddr.js/download/ipaddr.js-1.9.1.tgz",
"integrity": "sha1-v/OFQ+64mEglB5/zoqjmy9RngbM=",
"engines": {
"node": ">= 0.10"
}
},
"node_modules/isarray": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
"integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
},
"node_modules/js-base64": {
"version": "3.7.2",
"resolved": "https://registry.npmmirror.com/js-base64/download/js-base64-3.7.2.tgz",
"integrity": "sha1-gW0R2BqK/yQWA9Gc5XYeE+Qdd0U="
},
"node_modules/media-typer": {
"version": "0.3.0",
"resolved": "https://registry.nlark.com/media-typer/download/media-typer-0.3.0.tgz",
"integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=",
"engines": {
"node": ">= 0.6"
}
},
"node_modules/merge-descriptors": {
"version": "1.0.1",
"resolved": "https://registry.nlark.com/merge-descriptors/download/merge-descriptors-1.0.1.tgz",
"integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E="
},
"node_modules/methods": {
"version": "1.1.2",
"resolved": "https://registry.npm.taobao.org/methods/download/methods-1.1.2.tgz",
"integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=",
"engines": {
"node": ">= 0.6"
}
},
"node_modules/mime": {
"version": "1.6.0",
"resolved": "https://registry.npmmirror.com/mime/download/mime-1.6.0.tgz",
"integrity": "sha1-Ms2eXGRVO9WNGaVor0Uqz/BJgbE=",
"bin": {
"mime": "cli.js"
},
"engines": {
"node": ">=4"
}
},
"node_modules/mime-db": {
"version": "1.51.0",
"resolved": "https://registry.npmmirror.com/mime-db/download/mime-db-1.51.0.tgz?cache=0&sync_timestamp=1636425960296&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fmime-db%2Fdownload%2Fmime-db-1.51.0.tgz",
"integrity": "sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g==",
"engines": {
"node": ">= 0.6"
}
},
"node_modules/mime-types": {
"version": "2.1.34",
"resolved": "https://registry.npmmirror.com/mime-types/download/mime-types-2.1.34.tgz?cache=0&sync_timestamp=1636432302620&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fmime-types%2Fdownload%2Fmime-types-2.1.34.tgz",
"integrity": "sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A==",
"dependencies": {
"mime-db": "1.51.0"
},
"engines": {
"node": ">= 0.6"
}
},
"node_modules/minimist": {
"version": "1.2.5",
"resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
"integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw=="
},
"node_modules/mkdirp": {
"version": "0.5.5",
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz",
"integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==",
"dependencies": {
"minimist": "^1.2.5"
},
"bin": {
"mkdirp": "bin/cmd.js"
}
},
"node_modules/ms": {
"version": "2.0.0",
"resolved": "https://registry.npmmirror.com/ms/download/ms-2.0.0.tgz",
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
},
"node_modules/negotiator": {
"version": "0.6.2",
"resolved": "https://registry.npm.taobao.org/negotiator/download/negotiator-0.6.2.tgz",
"integrity": "sha1-/qz3zPUlp3rpY0Q2pkiD/+yjRvs=",
"engines": {
"node": ">= 0.6"
}
},
"node_modules/on-finished": {
"version": "2.3.0",
"resolved": "https://registry.npm.taobao.org/on-finished/download/on-finished-2.3.0.tgz?cache=0&sync_timestamp=1614930634590&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fon-finished%2Fdownload%2Fon-finished-2.3.0.tgz",
"integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=",
"dependencies": {
"ee-first": "1.1.1"
},
"engines": {
"node": ">= 0.8"
}
},
"node_modules/once": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
"integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
"dependencies": {
"wrappy": "1"
}
},
"node_modules/parseurl": {
"version": "1.3.3",
"resolved": "https://registry.npm.taobao.org/parseurl/download/parseurl-1.3.3.tgz",
"integrity": "sha1-naGee+6NEt/wUT7Vt2lXeTvC6NQ=",
"engines": {
"node": ">= 0.8"
}
},
"node_modules/path-to-regexp": {
"version": "0.1.7",
"resolved": "https://registry.npm.taobao.org/path-to-regexp/download/path-to-regexp-0.1.7.tgz",
"integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w="
},
"node_modules/pend": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz",
"integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA="
},
"node_modules/process-nextick-args": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
"integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag=="
},
"node_modules/proxy-addr": {
"version": "2.0.7",
"resolved": "https://registry.nlark.com/proxy-addr/download/proxy-addr-2.0.7.tgz",
"integrity": "sha1-8Z/mnOqzEe65S0LnDowgcPm6ECU=",
"dependencies": {
"forwarded": "0.2.0",
"ipaddr.js": "1.9.1"
},
"engines": {
"node": ">= 0.10"
}
},
"node_modules/pump": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz",
"integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==",
"dependencies": {
"end-of-stream": "^1.1.0",
"once": "^1.3.1"
}
},
"node_modules/qs": {
"version": "6.7.0",
"resolved": "https://registry.npm.taobao.org/qs/download/qs-6.7.0.tgz",
"integrity": "sha1-QdwaAV49WB8WIXdr4xr7KHapsbw=",
"engines": {
"node": ">=0.6"
}
},
"node_modules/range-parser": {
"version": "1.2.1",
"resolved": "https://registry.nlark.com/range-parser/download/range-parser-1.2.1.tgz",
"integrity": "sha1-PPNwI9GZ4cJNGlW4SADC8+ZGgDE=",
"engines": {
"node": ">= 0.6"
}
},
"node_modules/raw-body": {
"version": "2.4.0",
"resolved": "https://registry.nlark.com/raw-body/download/raw-body-2.4.0.tgz",
"integrity": "sha1-oc5vucm8NWylLoklarWQWeE9AzI=",
"dependencies": {
"bytes": "3.1.0",
"http-errors": "1.7.2",
"iconv-lite": "0.4.24",
"unpipe": "1.0.0"
},
"engines": {
"node": ">= 0.8"
}
},
"node_modules/raw-body/node_modules/iconv-lite": {
"version": "0.4.24",
"resolved": "https://registry.nlark.com/iconv-lite/download/iconv-lite-0.4.24.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Ficonv-lite%2Fdownload%2Ficonv-lite-0.4.24.tgz",
"integrity": "sha1-ICK0sl+93CHS9SSXSkdKr+czkIs=",
"dependencies": {
"safer-buffer": ">= 2.1.2 < 3"
},
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/readable-stream": {
"version": "2.3.7",
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz",
"integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==",
"dependencies": {
"core-util-is": "~1.0.0",
"inherits": "~2.0.3",
"isarray": "~1.0.0",
"process-nextick-args": "~2.0.0",
"safe-buffer": "~5.1.1",
"string_decoder": "~1.1.1",
"util-deprecate": "~1.0.1"
}
},
"node_modules/readable-stream/node_modules/safe-buffer": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
"integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
},
"node_modules/safe-buffer": {
"version": "5.2.1",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
"integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ=="
},
"node_modules/safer-buffer": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
"integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
},
"node_modules/send": {
"version": "0.17.1",
"resolved": "https://registry.npm.taobao.org/send/download/send-0.17.1.tgz",
"integrity": "sha1-wdiwWfeQD3Rm3Uk4vcROEd2zdsg=",
"dependencies": {
"debug": "2.6.9",
"depd": "~1.1.2",
"destroy": "~1.0.4",
"encodeurl": "~1.0.2",
"escape-html": "~1.0.3",
"etag": "~1.8.1",
"fresh": "0.5.2",
"http-errors": "~1.7.2",
"mime": "1.6.0",
"ms": "2.1.1",
"on-finished": "~2.3.0",
"range-parser": "~1.2.1",
"statuses": "~1.5.0"
},
"engines": {
"node": ">= 0.8.0"
}
},
"node_modules/send/node_modules/ms": {
"version": "2.1.1",
"resolved": "https://registry.npmmirror.com/ms/download/ms-2.1.1.tgz",
"integrity": "sha1-MKWGTrPrsKZvLr5tcnrwagnYbgo="
},
"node_modules/serve-static": {
"version": "1.14.1",
"resolved": "https://registry.npm.taobao.org/serve-static/download/serve-static-1.14.1.tgz",
"integrity": "sha1-Zm5jbcTwEPfvKZcKiKZ0MgiYsvk=",
"dependencies": {
"encodeurl": "~1.0.2",
"escape-html": "~1.0.3",
"parseurl": "~1.3.3",
"send": "0.17.1"
},
"engines": {
"node": ">= 0.8.0"
}
},
"node_modules/setprototypeof": {
"version": "1.1.1",
"resolved": "https://registry.npm.taobao.org/setprototypeof/download/setprototypeof-1.1.1.tgz",
"integrity": "sha1-fpWsskqpL1iF4KvvW6ExMw1K5oM="
},
"node_modules/statuses": {
"version": "1.5.0",
"resolved": "https://registry.npm.taobao.org/statuses/download/statuses-1.5.0.tgz?cache=0&sync_timestamp=1609654066899&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstatuses%2Fdownload%2Fstatuses-1.5.0.tgz",
"integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=",
"engines": {
"node": ">= 0.6"
}
},
"node_modules/streamifier": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/streamifier/-/streamifier-0.1.1.tgz",
"integrity": "sha1-l+mNj6TRBdYqJpHR3AfoINuN/E8=",
"engines": {
"node": ">=0.10"
}
},
"node_modules/string_decoder": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
"integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
"dependencies": {
"safe-buffer": "~5.1.0"
}
},
"node_modules/string_decoder/node_modules/safe-buffer": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
"integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
},
"node_modules/tar-stream": {
"version": "1.6.2",
"resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.6.2.tgz",
"integrity": "sha512-rzS0heiNf8Xn7/mpdSVVSMAWAoy9bfb1WOTYC78Z0UQKeKa/CWS8FOq0lKGNa8DWKAn9gxjCvMLYc5PGXYlK2A==",
"dependencies": {
"bl": "^1.0.0",
"buffer-alloc": "^1.2.0",
"end-of-stream": "^1.0.0",
"fs-constants": "^1.0.0",
"readable-stream": "^2.3.0",
"to-buffer": "^1.1.1",
"xtend": "^4.0.0"
},
"engines": {
"node": ">= 0.8.0"
}
},
"node_modules/to-buffer": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz",
"integrity": "sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg=="
},
"node_modules/toidentifier": {
"version": "1.0.0",
"resolved": "https://registry.npmmirror.com/toidentifier/download/toidentifier-1.0.0.tgz?cache=0&sync_timestamp=1636938521998&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Ftoidentifier%2Fdownload%2Ftoidentifier-1.0.0.tgz",
"integrity": "sha1-fhvjRw8ed5SLxD2Uo8j013UrpVM=",
"engines": {
"node": ">=0.6"
}
},
"node_modules/type-is": {
"version": "1.6.18",
"resolved": "https://registry.npm.taobao.org/type-is/download/type-is-1.6.18.tgz",
"integrity": "sha1-TlUs0F3wlGfcvE73Od6J8s83wTE=",
"dependencies": {
"media-typer": "0.3.0",
"mime-types": "~2.1.24"
},
"engines": {
"node": ">= 0.6"
}
},
"node_modules/unpipe": {
"version": "1.0.0",
"resolved": "https://registry.npm.taobao.org/unpipe/download/unpipe-1.0.0.tgz",
"integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=",
"engines": {
"node": ">= 0.8"
}
},
"node_modules/util-deprecate": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
"integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
},
"node_modules/utils-merge": {
"version": "1.0.1",
"resolved": "https://registry.npm.taobao.org/utils-merge/download/utils-merge-1.0.1.tgz",
"integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=",
"engines": {
"node": ">= 0.4.0"
}
},
"node_modules/uuid": {
"version": "8.3.2",
"resolved": "https://registry.npmmirror.com/uuid/download/uuid-8.3.2.tgz",
"integrity": "sha1-gNW1ztJxu5r2xEXyGhoExgbO++I=",
"bin": {
"uuid": "dist/bin/uuid"
}
},
"node_modules/vary": {
"version": "1.1.2",
"resolved": "https://registry.npm.taobao.org/vary/download/vary-1.1.2.tgz",
"integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=",
"engines": {
"node": ">= 0.8"
}
},
"node_modules/wrappy": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
"integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8="
},
"node_modules/xtend": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
"integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==",
"engines": {
"node": ">=0.4"
}
},
"node_modules/yauzl": {
"version": "2.10.0",
"resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz",
"integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=",
"dependencies": {
"buffer-crc32": "~0.2.3",
"fd-slicer": "~1.1.0"
}
},
"node_modules/yazl": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/yazl/-/yazl-2.5.1.tgz",
"integrity": "sha512-phENi2PLiHnHb6QBVot+dJnaAZ0xosj7p3fWl+znIjBDlnMI2PsZCJZ306BPTFOaHf5qdDEI8x5qFrSOBN5vrw==",
"dependencies": {
"buffer-crc32": "~0.2.3"
}
}
},
"dependencies": {
"accepts": {
"version": "1.3.7",
"resolved": "https://registry.nlark.com/accepts/download/accepts-1.3.7.tgz",
"integrity": "sha1-UxvHJlF6OytB+FACHGzBXqq1B80=",
"requires": {
"mime-types": "~2.1.24",
"negotiator": "0.6.2"
}
},
"array-flatten": {
"version": "1.1.1",
"resolved": "https://registry.nlark.com/array-flatten/download/array-flatten-1.1.1.tgz",
"integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI="
},
"bl": {
"version": "1.2.3",
"resolved": "https://registry.npmjs.org/bl/-/bl-1.2.3.tgz",
......@@ -13,6 +807,33 @@
"safe-buffer": "^5.1.1"
}
},
"body-parser": {
"version": "1.19.0",
"resolved": "https://registry.npm.taobao.org/body-parser/download/body-parser-1.19.0.tgz?cache=0&sync_timestamp=1615817950402&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbody-parser%2Fdownload%2Fbody-parser-1.19.0.tgz",
"integrity": "sha1-lrJwnlfJxOCab9Zqj9l5hE9p8Io=",
"requires": {
"bytes": "3.1.0",
"content-type": "~1.0.4",
"debug": "2.6.9",
"depd": "~1.1.2",
"http-errors": "1.7.2",
"iconv-lite": "0.4.24",
"on-finished": "~2.3.0",
"qs": "6.7.0",
"raw-body": "2.4.0",
"type-is": "~1.6.17"
},
"dependencies": {
"iconv-lite": {
"version": "0.4.24",
"resolved": "https://registry.nlark.com/iconv-lite/download/iconv-lite-0.4.24.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Ficonv-lite%2Fdownload%2Ficonv-lite-0.4.24.tgz",
"integrity": "sha1-ICK0sl+93CHS9SSXSkdKr+czkIs=",
"requires": {
"safer-buffer": ">= 2.1.2 < 3"
}
}
}
},
"buffer-alloc": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz",
......@@ -37,6 +858,16 @@
"resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz",
"integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw="
},
"bytes": {
"version": "3.1.0",
"resolved": "https://registry.npm.taobao.org/bytes/download/bytes-3.1.0.tgz",
"integrity": "sha1-9s95M6Ng4FiPqf3oVlHNx/gF0fY="
},
"child_process": {
"version": "1.0.2",
"resolved": "https://registry.npm.taobao.org/child_process/download/child_process-1.0.2.tgz",
"integrity": "sha1-sffn/HPSXn/R1FWtyU4UODAYK1o="
},
"compressing": {
"version": "1.5.1",
"resolved": "https://registry.npmjs.org/compressing/-/compressing-1.5.1.tgz",
......@@ -53,11 +884,69 @@
"yazl": "^2.4.2"
}
},
"content-disposition": {
"version": "0.5.3",
"resolved": "https://registry.npm.taobao.org/content-disposition/download/content-disposition-0.5.3.tgz",
"integrity": "sha1-4TDK9+cnkIfFYWwgB9BIVpiYT70=",
"requires": {
"safe-buffer": "5.1.2"
},
"dependencies": {
"safe-buffer": {
"version": "5.1.2",
"resolved": "https://registry.npm.taobao.org/safe-buffer/download/safe-buffer-5.1.2.tgz",
"integrity": "sha1-mR7GnSluAxN0fVm9/St0XDX4go0="
}
}
},
"content-type": {
"version": "1.0.4",
"resolved": "https://registry.npm.taobao.org/content-type/download/content-type-1.0.4.tgz",
"integrity": "sha1-4TjMdeBAxyexlm/l5fjJruJW/js="
},
"cookie": {
"version": "0.4.0",
"resolved": "https://registry.npm.taobao.org/cookie/download/cookie-0.4.0.tgz",
"integrity": "sha1-vrQ35wIrO21JAZ0IhmUwPr6cFLo="
},
"cookie-signature": {
"version": "1.0.6",
"resolved": "https://registry.nlark.com/cookie-signature/download/cookie-signature-1.0.6.tgz",
"integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw="
},
"core-util-is": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
"integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
},
"debug": {
"version": "2.6.9",
"resolved": "https://registry.npmmirror.com/debug/download/debug-2.6.9.tgz",
"integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=",
"requires": {
"ms": "2.0.0"
}
},
"depd": {
"version": "1.1.2",
"resolved": "https://registry.npm.taobao.org/depd/download/depd-1.1.2.tgz",
"integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak="
},
"destroy": {
"version": "1.0.4",
"resolved": "https://registry.npm.taobao.org/destroy/download/destroy-1.0.4.tgz",
"integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA="
},
"ee-first": {
"version": "1.1.1",
"resolved": "https://registry.npm.taobao.org/ee-first/download/ee-first-1.1.1.tgz",
"integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0="
},
"encodeurl": {
"version": "1.0.2",
"resolved": "https://registry.npm.taobao.org/encodeurl/download/encodeurl-1.0.2.tgz",
"integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k="
},
"end-of-stream": {
"version": "1.4.4",
"resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz",
......@@ -66,6 +955,60 @@
"once": "^1.4.0"
}
},
"escape-html": {
"version": "1.0.3",
"resolved": "https://registry.npm.taobao.org/escape-html/download/escape-html-1.0.3.tgz",
"integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg="
},
"etag": {
"version": "1.8.1",
"resolved": "https://registry.nlark.com/etag/download/etag-1.8.1.tgz?cache=0&sync_timestamp=1618847044821&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fetag%2Fdownload%2Fetag-1.8.1.tgz",
"integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc="
},
"express": {
"version": "4.17.1",
"resolved": "https://registry.npm.taobao.org/express/download/express-4.17.1.tgz",
"integrity": "sha1-RJH8OGBc9R+GKdOcK10Cb5ikwTQ=",
"requires": {
"accepts": "~1.3.7",
"array-flatten": "1.1.1",
"body-parser": "1.19.0",
"content-disposition": "0.5.3",
"content-type": "~1.0.4",
"cookie": "0.4.0",
"cookie-signature": "1.0.6",
"debug": "2.6.9",
"depd": "~1.1.2",
"encodeurl": "~1.0.2",
"escape-html": "~1.0.3",
"etag": "~1.8.1",
"finalhandler": "~1.1.2",
"fresh": "0.5.2",
"merge-descriptors": "1.0.1",
"methods": "~1.1.2",
"on-finished": "~2.3.0",
"parseurl": "~1.3.3",
"path-to-regexp": "0.1.7",
"proxy-addr": "~2.0.5",
"qs": "6.7.0",
"range-parser": "~1.2.1",
"safe-buffer": "5.1.2",
"send": "0.17.1",
"serve-static": "1.14.1",
"setprototypeof": "1.1.1",
"statuses": "~1.5.0",
"type-is": "~1.6.18",
"utils-merge": "1.0.1",
"vary": "~1.1.2"
},
"dependencies": {
"safe-buffer": {
"version": "5.1.2",
"resolved": "https://registry.npm.taobao.org/safe-buffer/download/safe-buffer-5.1.2.tgz",
"integrity": "sha1-mR7GnSluAxN0fVm9/St0XDX4go0="
}
}
},
"fd-slicer": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz",
......@@ -74,11 +1017,35 @@
"pend": "~1.2.0"
}
},
"finalhandler": {
"version": "1.1.2",
"resolved": "https://registry.npm.taobao.org/finalhandler/download/finalhandler-1.1.2.tgz",
"integrity": "sha1-t+fQAP/RGTjQ/bBTUG9uur6fWH0=",
"requires": {
"debug": "2.6.9",
"encodeurl": "~1.0.2",
"escape-html": "~1.0.3",
"on-finished": "~2.3.0",
"parseurl": "~1.3.3",
"statuses": "~1.5.0",
"unpipe": "~1.0.0"
}
},
"flushwritable": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/flushwritable/-/flushwritable-1.0.0.tgz",
"integrity": "sha1-PjKNj95BKtR+c44751C00pAENJg="
},
"forwarded": {
"version": "0.2.0",
"resolved": "https://registry.nlark.com/forwarded/download/forwarded-0.2.0.tgz?cache=0&sync_timestamp=1622503499867&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fforwarded%2Fdownload%2Fforwarded-0.2.0.tgz",
"integrity": "sha1-ImmTZCiq1MFcfr6XeahL8LKoGBE="
},
"fresh": {
"version": "0.5.2",
"resolved": "https://registry.nlark.com/fresh/download/fresh-0.5.2.tgz",
"integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac="
},
"fs-constants": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz",
......@@ -89,6 +1056,25 @@
"resolved": "https://registry.npmjs.org/get-ready/-/get-ready-1.0.0.tgz",
"integrity": "sha1-+RgX8emt7P6hOlYq38jeiDqzR4I="
},
"http-errors": {
"version": "1.7.2",
"resolved": "https://registry.npmmirror.com/http-errors/download/http-errors-1.7.2.tgz?cache=0&sync_timestamp=1636932182141&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fhttp-errors%2Fdownload%2Fhttp-errors-1.7.2.tgz",
"integrity": "sha1-T1ApzxMjnzEDblsuVSkrz7zIXI8=",
"requires": {
"depd": "~1.1.2",
"inherits": "2.0.3",
"setprototypeof": "1.1.1",
"statuses": ">= 1.5.0 < 2",
"toidentifier": "1.0.0"
},
"dependencies": {
"inherits": {
"version": "2.0.3",
"resolved": "https://registry.nlark.com/inherits/download/inherits-2.0.3.tgz",
"integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4="
}
}
},
"iconv-lite": {
"version": "0.5.2",
"resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.5.2.tgz",
......@@ -102,11 +1088,54 @@
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
},
"ipaddr.js": {
"version": "1.9.1",
"resolved": "https://registry.nlark.com/ipaddr.js/download/ipaddr.js-1.9.1.tgz",
"integrity": "sha1-v/OFQ+64mEglB5/zoqjmy9RngbM="
},
"isarray": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
"integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE="
},
"js-base64": {
"version": "3.7.2",
"resolved": "https://registry.npmmirror.com/js-base64/download/js-base64-3.7.2.tgz",
"integrity": "sha1-gW0R2BqK/yQWA9Gc5XYeE+Qdd0U="
},
"media-typer": {
"version": "0.3.0",
"resolved": "https://registry.nlark.com/media-typer/download/media-typer-0.3.0.tgz",
"integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g="
},
"merge-descriptors": {
"version": "1.0.1",
"resolved": "https://registry.nlark.com/merge-descriptors/download/merge-descriptors-1.0.1.tgz",
"integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E="
},
"methods": {
"version": "1.1.2",
"resolved": "https://registry.npm.taobao.org/methods/download/methods-1.1.2.tgz",
"integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4="
},
"mime": {
"version": "1.6.0",
"resolved": "https://registry.npmmirror.com/mime/download/mime-1.6.0.tgz",
"integrity": "sha1-Ms2eXGRVO9WNGaVor0Uqz/BJgbE="
},
"mime-db": {
"version": "1.51.0",
"resolved": "https://registry.npmmirror.com/mime-db/download/mime-db-1.51.0.tgz?cache=0&sync_timestamp=1636425960296&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fmime-db%2Fdownload%2Fmime-db-1.51.0.tgz",
"integrity": "sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g=="
},
"mime-types": {
"version": "2.1.34",
"resolved": "https://registry.npmmirror.com/mime-types/download/mime-types-2.1.34.tgz?cache=0&sync_timestamp=1636432302620&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fmime-types%2Fdownload%2Fmime-types-2.1.34.tgz",
"integrity": "sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A==",
"requires": {
"mime-db": "1.51.0"
}
},
"minimist": {
"version": "1.2.5",
"resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
......@@ -120,6 +1149,24 @@
"minimist": "^1.2.5"
}
},
"ms": {
"version": "2.0.0",
"resolved": "https://registry.npmmirror.com/ms/download/ms-2.0.0.tgz",
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g="
},
"negotiator": {
"version": "0.6.2",
"resolved": "https://registry.npm.taobao.org/negotiator/download/negotiator-0.6.2.tgz",
"integrity": "sha1-/qz3zPUlp3rpY0Q2pkiD/+yjRvs="
},
"on-finished": {
"version": "2.3.0",
"resolved": "https://registry.npm.taobao.org/on-finished/download/on-finished-2.3.0.tgz?cache=0&sync_timestamp=1614930634590&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fon-finished%2Fdownload%2Fon-finished-2.3.0.tgz",
"integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=",
"requires": {
"ee-first": "1.1.1"
}
},
"once": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
......@@ -128,6 +1175,16 @@
"wrappy": "1"
}
},
"parseurl": {
"version": "1.3.3",
"resolved": "https://registry.npm.taobao.org/parseurl/download/parseurl-1.3.3.tgz",
"integrity": "sha1-naGee+6NEt/wUT7Vt2lXeTvC6NQ="
},
"path-to-regexp": {
"version": "0.1.7",
"resolved": "https://registry.npm.taobao.org/path-to-regexp/download/path-to-regexp-0.1.7.tgz",
"integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w="
},
"pend": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz",
......@@ -138,6 +1195,15 @@
"resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
"integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag=="
},
"proxy-addr": {
"version": "2.0.7",
"resolved": "https://registry.nlark.com/proxy-addr/download/proxy-addr-2.0.7.tgz",
"integrity": "sha1-8Z/mnOqzEe65S0LnDowgcPm6ECU=",
"requires": {
"forwarded": "0.2.0",
"ipaddr.js": "1.9.1"
}
},
"pump": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz",
......@@ -147,6 +1213,37 @@
"once": "^1.3.1"
}
},
"qs": {
"version": "6.7.0",
"resolved": "https://registry.npm.taobao.org/qs/download/qs-6.7.0.tgz",
"integrity": "sha1-QdwaAV49WB8WIXdr4xr7KHapsbw="
},
"range-parser": {
"version": "1.2.1",
"resolved": "https://registry.nlark.com/range-parser/download/range-parser-1.2.1.tgz",
"integrity": "sha1-PPNwI9GZ4cJNGlW4SADC8+ZGgDE="
},
"raw-body": {
"version": "2.4.0",
"resolved": "https://registry.nlark.com/raw-body/download/raw-body-2.4.0.tgz",
"integrity": "sha1-oc5vucm8NWylLoklarWQWeE9AzI=",
"requires": {
"bytes": "3.1.0",
"http-errors": "1.7.2",
"iconv-lite": "0.4.24",
"unpipe": "1.0.0"
},
"dependencies": {
"iconv-lite": {
"version": "0.4.24",
"resolved": "https://registry.nlark.com/iconv-lite/download/iconv-lite-0.4.24.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.nlark.com%2Ficonv-lite%2Fdownload%2Ficonv-lite-0.4.24.tgz",
"integrity": "sha1-ICK0sl+93CHS9SSXSkdKr+czkIs=",
"requires": {
"safer-buffer": ">= 2.1.2 < 3"
}
}
}
},
"readable-stream": {
"version": "2.3.7",
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz",
......@@ -178,6 +1275,54 @@
"resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
"integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg=="
},
"send": {
"version": "0.17.1",
"resolved": "https://registry.npm.taobao.org/send/download/send-0.17.1.tgz",
"integrity": "sha1-wdiwWfeQD3Rm3Uk4vcROEd2zdsg=",
"requires": {
"debug": "2.6.9",
"depd": "~1.1.2",
"destroy": "~1.0.4",
"encodeurl": "~1.0.2",
"escape-html": "~1.0.3",
"etag": "~1.8.1",
"fresh": "0.5.2",
"http-errors": "~1.7.2",
"mime": "1.6.0",
"ms": "2.1.1",
"on-finished": "~2.3.0",
"range-parser": "~1.2.1",
"statuses": "~1.5.0"
},
"dependencies": {
"ms": {
"version": "2.1.1",
"resolved": "https://registry.npmmirror.com/ms/download/ms-2.1.1.tgz",
"integrity": "sha1-MKWGTrPrsKZvLr5tcnrwagnYbgo="
}
}
},
"serve-static": {
"version": "1.14.1",
"resolved": "https://registry.npm.taobao.org/serve-static/download/serve-static-1.14.1.tgz",
"integrity": "sha1-Zm5jbcTwEPfvKZcKiKZ0MgiYsvk=",
"requires": {
"encodeurl": "~1.0.2",
"escape-html": "~1.0.3",
"parseurl": "~1.3.3",
"send": "0.17.1"
}
},
"setprototypeof": {
"version": "1.1.1",
"resolved": "https://registry.npm.taobao.org/setprototypeof/download/setprototypeof-1.1.1.tgz",
"integrity": "sha1-fpWsskqpL1iF4KvvW6ExMw1K5oM="
},
"statuses": {
"version": "1.5.0",
"resolved": "https://registry.npm.taobao.org/statuses/download/statuses-1.5.0.tgz?cache=0&sync_timestamp=1609654066899&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstatuses%2Fdownload%2Fstatuses-1.5.0.tgz",
"integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow="
},
"streamifier": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/streamifier/-/streamifier-0.1.1.tgz",
......@@ -217,11 +1362,45 @@
"resolved": "https://registry.npmjs.org/to-buffer/-/to-buffer-1.1.1.tgz",
"integrity": "sha512-lx9B5iv7msuFYE3dytT+KE5tap+rNYw+K4jVkb9R/asAb+pbBSM17jtunHplhBe6RRJdZx3Pn2Jph24O32mOVg=="
},
"toidentifier": {
"version": "1.0.0",
"resolved": "https://registry.npmmirror.com/toidentifier/download/toidentifier-1.0.0.tgz?cache=0&sync_timestamp=1636938521998&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Ftoidentifier%2Fdownload%2Ftoidentifier-1.0.0.tgz",
"integrity": "sha1-fhvjRw8ed5SLxD2Uo8j013UrpVM="
},
"type-is": {
"version": "1.6.18",
"resolved": "https://registry.npm.taobao.org/type-is/download/type-is-1.6.18.tgz",
"integrity": "sha1-TlUs0F3wlGfcvE73Od6J8s83wTE=",
"requires": {
"media-typer": "0.3.0",
"mime-types": "~2.1.24"
}
},
"unpipe": {
"version": "1.0.0",
"resolved": "https://registry.npm.taobao.org/unpipe/download/unpipe-1.0.0.tgz",
"integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw="
},
"util-deprecate": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
"integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8="
},
"utils-merge": {
"version": "1.0.1",
"resolved": "https://registry.npm.taobao.org/utils-merge/download/utils-merge-1.0.1.tgz",
"integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM="
},
"uuid": {
"version": "8.3.2",
"resolved": "https://registry.npmmirror.com/uuid/download/uuid-8.3.2.tgz",
"integrity": "sha1-gNW1ztJxu5r2xEXyGhoExgbO++I="
},
"vary": {
"version": "1.1.2",
"resolved": "https://registry.npm.taobao.org/vary/download/vary-1.1.2.tgz",
"integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw="
},
"wrappy": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
......
......@@ -4,11 +4,18 @@
"description": "",
"main": "build.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
"test": "echo \"Error: no test specified\" && exit 1",
"build": "node build.js",
"start": "node app.js"
},
"type": "module",
"author": "",
"license": "ISC",
"dependencies": {
"compressing": "^1.5.1"
"child_process": "^1.0.2",
"compressing": "^1.5.1",
"express": "^4.17.1",
"js-base64": "^3.7.2",
"uuid": "^8.3.2"
}
}
let fs = require('fs');
import fs from 'fs';
module.exports = {
fix2: function (num) {
if (num >= 10) {
return '' + num;
} else {
return '0' + num;
}
},
copyDir: async function (src, dst) {
const exists = await fs.existsSync(dst);
if (!exists) {
await fs.mkdirSync(dst);
}
//读取目录
const paths = await fs.readdirSync(src);
for (let i = 0; i < paths.length; i++) {
let path = paths[i];
const newSrc = `${src}/${path}`;
const newDst = `${dst}/${path}`;
const st = await fs.statSync(newSrc);
if (st.isFile()) {
console.log('copy: ' + newDst);
const data = await fs.readFileSync(newSrc);
await fs.writeFileSync(newDst, data);
} else if (st.isDirectory()) {
arguments.callee(newSrc, newDst);
}
}
},
export function fix2(num) {
if (num >= 10) {
return '' + num;
} else {
return '0' + num;
}
}
removeDir: async function (src) {
const exists = await fs.existsSync(src);
if (!exists) {
return;
export async function copyDir(src, dst) {
const exists = await fs.existsSync(dst);
if (!exists) {
await fs.mkdirSync(dst);
}
//读取目录
const paths = await fs.readdirSync(src);
for (let i = 0; i < paths.length; i++) {
let path = paths[i];
const newSrc = `${src}/${path}`;
const newDst = `${dst}/${path}`;
const st = await fs.statSync(newSrc);
if (st.isFile()) {
console.log('copy: ' + newDst);
const data = await fs.readFileSync(newSrc);
await fs.writeFileSync(newDst, data);
} else if (st.isDirectory()) {
await copyDir(newSrc, newDst);
}
}
}
//读取目录
const st = await fs.statSync(src);
const paths = await fs.readdirSync(src);
for (let i = 0; i < paths.length; i++) {
let path = paths[i];
const newSrc = `${src}/${path}`;
const st = await fs.statSync(newSrc);
if (st.isFile()) {
console.log('remove: ' + newSrc);
await fs.unlinkSync(newSrc);
} else if (st.isDirectory()) {
await arguments.callee(newSrc);
}
export async function removeDir(src) {
const exists = await fs.existsSync(src);
if (!exists) {
return;
}
//读取目录
const st = await fs.statSync(src);
const paths = await fs.readdirSync(src);
for (let i = 0; i < paths.length; i++) {
let path = paths[i];
const newSrc = `${src}/${path}`;
const st = await fs.statSync(newSrc);
if (st.isFile()) {
console.log('remove: ' + newSrc);
await fs.unlinkSync(newSrc);
} else if (st.isDirectory()) {
await removeDir(newSrc);
}
await fs.rmdirSync(src);
}
}
await fs.rmdirSync(src);
}
\ 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