Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Z
zeroing-libs
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
劳工
zeroing-libs
Commits
57aa8bf6
Commit
57aa8bf6
authored
Mar 27, 2020
by
13732208043
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
茶叶更新
parent
7393d156
Changes
7
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
262 additions
and
221 deletions
+262
-221
pick-tea.json
dist/customs/pick-tea.json
+32
-13
main.js
src/custom/pick-tea/debug/main.js
+69
-89
main.js.map
src/custom/pick-tea/debug/main.js.map
+1
-1
meta.json
src/custom/pick-tea/meta.json
+31
-12
GameView.ts
src/custom/pick-tea/src/game/GameView.ts
+108
-99
GameWrapper.ts
src/custom/pick-tea/src/game/GameWrapper.ts
+9
-5
utils.ts
src/custom/pick-tea/src/game/utils.ts
+12
-2
No files found.
dist/customs/pick-tea.json
View file @
57aa8bf6
{
{
"name"
:
"采茶叶"
,
"name"
:
"采茶叶"
,
"desc"
:
"采茶叶模
块
"
,
"desc"
:
"采茶叶模
左上角0,0点
"
,
"props"
:
{
"props"
:
{
"versePos"
:
{
"versePos"
:
{
"alias"
:
"诗句的起始位置"
,
"alias"
:
"诗句的起始位置"
,
...
@@ -10,7 +10,7 @@
...
@@ -10,7 +10,7 @@
"verses"
:
{
"verses"
:
{
"alias"
:
"诗句"
,
"alias"
:
"诗句"
,
"type"
:
"array<string>"
,
"type"
:
"array<string>"
,
"default"
:
"今
朝有酒今朝醉,今宵更有湘江月,找出霏霏满碗花,雨过林霏清石气,秋将山翠入诗心,生怕芳丛鹰嘴芽,老郎封寄谪仙家
"
"default"
:
"今
宵更有湘江月,照出霏霏满碗花,雨过林霏清石气,秋将山翠入诗心
"
},
},
"verseLabel"
:
{
"verseLabel"
:
{
"alias"
:
"提示语框xys"
,
"alias"
:
"提示语框xys"
,
...
@@ -22,6 +22,16 @@
...
@@ -22,6 +22,16 @@
"type"
:
"array<string>"
,
"type"
:
"array<string>"
,
"default"
:
"#33628b,#99b1c5"
"default"
:
"#33628b,#99b1c5"
},
},
"showFrontImg"
:
{
"alias"
:
"茶叶前景图1显示2隐藏"
,
"type"
:
"number"
,
"default"
:
"1"
},
"FrontImgPos"
:
{
"alias"
:
"茶叶前景图位置"
,
"type"
:
"array<number>"
,
"default"
:
"0,584"
},
"pickTeaSpeed"
:
{
"pickTeaSpeed"
:
{
"alias"
:
"采集茶叶的速度ms"
,
"alias"
:
"采集茶叶的速度ms"
,
"type"
:
"number"
,
"type"
:
"number"
,
...
@@ -30,12 +40,12 @@
...
@@ -30,12 +40,12 @@
"basketSvgaPos"
:
{
"basketSvgaPos"
:
{
"alias"
:
"人物的位置"
,
"alias"
:
"人物的位置"
,
"type"
:
"array<number>"
,
"type"
:
"array<number>"
,
"default"
:
"110,4
2
0"
"default"
:
"110,4
1
0"
},
},
"addOneSvgaPos"
:
{
"addOneSvgaPos"
:
{
"alias"
:
"+1SVGA的位置"
,
"alias"
:
"+1SVGA的位置"
,
"type"
:
"array<number>"
,
"type"
:
"array<number>"
,
"default"
:
"
70,72
0"
"default"
:
"
0,-10
0"
},
},
"pickTeaSvgaPos"
:
{
"pickTeaSvgaPos"
:
{
"alias"
:
"采茶叶SVGA的位置"
,
"alias"
:
"采茶叶SVGA的位置"
,
...
@@ -50,12 +60,12 @@
...
@@ -50,12 +60,12 @@
"handGraspSvgaPos"
:
{
"handGraspSvgaPos"
:
{
"alias"
:
"手点击SVGA的位置"
,
"alias"
:
"手点击SVGA的位置"
,
"type"
:
"array<number>"
,
"type"
:
"array<number>"
,
"default"
:
"
543,791
"
"default"
:
"
477,-29
"
},
},
"handGraspMovePos"
:
{
"handGraspMovePos"
:
{
"alias"
:
"手点击移动的位置"
,
"alias"
:
"手点击移动的位置"
,
"type"
:
"array<number>"
,
"type"
:
"array<number>"
,
"default"
:
"
460,700
"
"default"
:
"
372,-145
"
},
},
"progressbarBgImgPos"
:
{
"progressbarBgImgPos"
:
{
"alias"
:
"进度条底图的位置"
,
"alias"
:
"进度条底图的位置"
,
...
@@ -65,7 +75,7 @@
...
@@ -65,7 +75,7 @@
"progressbarImgPos"
:
{
"progressbarImgPos"
:
{
"alias"
:
"进度条的位置"
,
"alias"
:
"进度条的位置"
,
"type"
:
"array<number>"
,
"type"
:
"array<number>"
,
"default"
:
"-
443
,4"
"default"
:
"-
335
,4"
},
},
"teaStarImgPos"
:
{
"teaStarImgPos"
:
{
"alias"
:
"小茶叶的位置"
,
"alias"
:
"小茶叶的位置"
,
...
@@ -84,6 +94,12 @@
...
@@ -84,6 +94,12 @@
}
}
},
},
"assets"
:
[
"assets"
:
[
{
"name"
:
"前景"
,
"url"
:
"//yun.duiba.com.cn/aurora/assets/1da0ea14267ff35f90f49c22deb1b34181571e90.png"
,
"uuid"
:
"9f5db57e-47f9-43e5-af80-adf41299280d"
,
"ext"
:
".png"
},
{
{
"name"
:
"气泡框"
,
"name"
:
"气泡框"
,
"url"
:
"//yun.duiba.com.cn/aurora/assets/585743f25262b6992ac97015e22d91054d506821.png"
,
"url"
:
"//yun.duiba.com.cn/aurora/assets/585743f25262b6992ac97015e22d91054d506821.png"
,
...
@@ -98,7 +114,7 @@
...
@@ -98,7 +114,7 @@
},
},
{
{
"name"
:
"进度"
,
"name"
:
"进度"
,
"url"
:
"//yun.duiba.com.cn/aurora/assets/
047218962662ed238192f211719c109fa107e8e1
.png"
,
"url"
:
"//yun.duiba.com.cn/aurora/assets/
afb6b2655838ea955d250663fc535cc166b466e7
.png"
,
"uuid"
:
"23e7861c-75a9-46bd-93f8-2825d4810d31"
,
"uuid"
:
"23e7861c-75a9-46bd-93f8-2825d4810d31"
,
"ext"
:
".png"
"ext"
:
".png"
},
},
...
@@ -190,26 +206,29 @@
...
@@ -190,26 +206,29 @@
"events"
:
{
"events"
:
{
"in"
:
{
"in"
:
{
"event-getchange-TeaNum"
:
{
"event-getchange-TeaNum"
:
{
"alias"
:
"茶叶数量{初始值
totalNum,总量nowNum
} "
"alias"
:
"茶叶数量{初始值
nowNum,总量totalNum,后端时间serverData
} "
},
},
"event-getBasket-Type"
:
{
"event-getBasket-Type"
:
{
"alias"
:
"获得篮子类型"
"alias"
:
"获得篮子类型
(纸 布 竹 木)0 1 2 3
"
},
},
"event-hand-grasp"
:
{
"event-hand-grasp"
:
{
"alias"
:
"手抓去"
"alias"
:
"手抓去"
},
"event-getClick-person"
:
{
"alias"
:
"点击人物"
}
}
},
},
"out"
:
{
"out"
:
{
"event-setchange-TeaNum"
:
{
"event-setchange-TeaNum"
:
{
"alias"
:
""
,
"alias"
:
"
获取茶叶数量{初始值nowNum,总量totalNum,后端时间serverData}
"
,
"data"
:
{}
"data"
:
{}
},
},
"event-setBasket-Typ"
:
{
"event-setBasket-Typ"
:
{
"alias"
:
""
,
"alias"
:
"
获得篮子类型(纸 布 竹 木)0 1 2 3
"
,
"data"
:
{}
"data"
:
{}
}
}
}
}
},
},
"id"
:
"pick-tea"
,
"id"
:
"pick-tea"
,
"code"
:
"(function (global, factory) {
\n\t
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('tslib')) :
\n\t
typeof define === 'function' && define.amd ? define(['tslib'], factory) :
\n\t
(global = global || self, global['pick-tea'] = factory(global.tslib));
\n
}(this, (function (tslib) { 'use strict';
\n\n\t
var props = {};
\r\n\t
function prepareProps() {
\r\n\t
var metaProps = getProps();
\r\n\t
engine.injectProp(props, metaProps);
\r\n\t
}
\r\n\t
function injectProps(p) {
\r\n\t
engine.injectProp(props, p);
\r\n\t
}
\r\n\t
//# sourceMappingURL=props.js.map
\n\n\t
function getTexture(uuid) {
\r\n\t
return engine.Texture.from(getAssetByUUID(uuid).uuid);
\r\n\t
}
\r\n\t
function getTextureByName(name) {
\r\n\t
return getTexture(engine.getAssetByName(name).uuid);
\r\n\t
}
\r\n\t
function createSvga(name, anchorName) {
\r\n\t
var inst = new svga.Svga();
\r\n\t
inst.source = 'asset://' + engine.getAssetByName(name).uuid;
\r\n\t
return inst;
\r\n\t
}
\r\n\t
//# sourceMappingURL=utils.js.map
\n\n\t
var GameView = (function (_super) {
\r\n\t
tslib.__extends(GameView, _super);
\r\n\t
function GameView() {
\r\n\t
var _this = _super.call(this) || this;
\r\n\t
_this.nowPercentage = 0;
\r\n\t
_this.goodsItems = [];
\r\n\t
_this._touchEnabled = true;
\r\n\t
_this.once(engine.Event.ADDED_TO_STAGE, _this.setup, _this);
\r\n\t
return _this;
\r\n\t
}
\r\n\t
GameView.prototype.setup = function () {
\r\n\t
var _this = this;
\r\n\t
if (this._hasSetup) {
\r\n\t
return;
\r\n\t
}
\r\n\t
this._hasSetup = true;
\r\n\t
this.pickTeaBg = new engine.Container();
\r\n\t
var bgGroud = new engine.Image();
\r\n\t
bgGroud.source = '//yun.duiba.com.cn/aurora/assets/a988c47db8d3131faad175c7c2944773392be643.png';
\r\n\t
this.addChild(bgGroud);
\r\n\t
this.addChild(this.pickTeaBg);
\r\n\t
this.teaHalfImg = new engine.Image();
\r\n\t
this.paperBasketSvga = createSvga(
\"
采茶童-纸篮子
\"
);
\r\n\t
this.clothBasketSvga = createSvga(
\"
采茶童-布篮子
\"
);
\r\n\t
this.bambooBasketSvga = createSvga(
\"
采茶童-竹编篮
\"
);
\r\n\t
this.woodBasketSvga = createSvga(
\"
采茶童-木篮子
\"
);
\r\n\t
this.addOneSvga = createSvga(
\"
+1
\"
);
\r\n\t
this.pickTeaSvga = createSvga(
\"
采茶叶
\"
);
\r\n\t
this.teaSkyUpSvga = createSvga(
\"
茶叶向上飞
\"
);
\r\n\t
this.handGraspSvga = createSvga(
\"
手抓去
\"
);
\r\n\t
this.pickTeaBg.addChild(this.paperBasketSvga);
\r\n\t
this.pickTeaBg.addChild(this.clothBasketSvga);
\r\n\t
this.pickTeaBg.addChild(this.bambooBasketSvga);
\r\n\t
this.pickTeaBg.addChild(this.woodBasketSvga);
\r\n\t
this.pickTeaBg.addChild(this.addOneSvga);
\r\n\t
this.pickTeaBg.addChild(this.pickTeaSvga);
\r\n\t
this.pickTeaBg.addChild(this.teaSkyUpSvga);
\r\n\t
this.pickTeaBg.addChild(this.handGraspSvga);
\r\n\t
this.basketSvgaGroup = [this.paperBasketSvga, this.clothBasketSvga, this.bambooBasketSvga, this.woodBasketSvga];
\r\n\t
this.progressbarBgImg = new engine.Image(getTextureByName('进度条底框'));
\r\n\t
this.progressbarImg = new engine.Image(getTextureByName('进度'));
\r\n\t
this.teaHalfFlagImg = new engine.Image(getTextureByName('茶叶进度缺'));
\r\n\t
this.teaFullFlagImg = new engine.Image(getTextureByName('茶叶进度满'));
\r\n\t
this.teaStarImg = new engine.Image(getTextureByName('小茶叶'));
\r\n\t
this.verseImg = new engine.Image(getTextureByName('气泡框'));
\r\n\t
this.pickTeaBg.addChild(this.verseImg);
\r\n\t
var mask = new engine.Rect();
\r\n\t
mask.width = 600;
\r\n\t
mask.height = 50;
\r\n\t
mask.x = 10;
\r\n\t
mask.y = 0;
\r\n\t
mask.alpha = 1;
\r\n\t
this.progressbarImg.mask = mask;
\r\n\t
console.log(this.progressbarImg.mask);
\r\n\t
this.progressbarBgImg.addChild(this.progressbarImg);
\r\n\t
this.progressbarBgImg.addChild(mask);
\r\n\t
console.log('遮罩坐标');
\r\n\t
console.log(mask.x, mask.y);
\r\n\t
this.progressbarBgImg.addChild(this.teaHalfFlagImg);
\r\n\t
this.progressbarBgImg.addChild(this.teaFullFlagImg);
\r\n\t
this.progressbarBgImg.addChild(this.teaStarImg);
\r\n\t
this.pickTeaCount = new engine.Label();
\r\n\t
this.progressbarBgImg.addChild(this.pickTeaCount);
\r\n\t
this.addChild(this.progressbarBgImg);
\r\n\t
var myDate = new Date();
\r\n\t
var nowData = myDate.getTime();
\r\n\t
this.setTeaNum({ totalNum: 430, nowNum: 0, serverData: nowData });
\r\n\t
this.initChildrenPos();
\r\n\t
setInterval(function () {
\r\n\t
_this.handGrasp();
\r\n\t
}, 5000);
\r\n\t
};
\r\n\t
GameView.prototype.reset = function () {
\r\n\t
var _this = this;
\r\n\t
console.log('111111111reset1');
\r\n\t
this.initView();
\r\n\t
setTimeout(function () {
\r\n\t
return _this.setPickTeaLevel(1);
\r\n\t
}, 500);
\r\n\t
};
\r\n\t
GameView.prototype.start = function () {
\r\n\t
};
\r\n\t
GameView.prototype.pause = function () {
\r\n\t
this.gameIng = false;
\r\n\t
};
\r\n\t
GameView.prototype.revive = function () {
\r\n\t
this.gameIng = true;
\r\n\t
};
\r\n\t
GameView.prototype.resume = function () {
\r\n\t
this.reset();
\r\n\t
this.start();
\r\n\t
};
\r\n\t
GameView.prototype.initView = function () {
\r\n\t
this.pickTeaBg.mouseEnabled = false;
\r\n\t
this.teaHalfImg.visible = false;
\r\n\t
this.pickTeaSvga.visible = false;
\r\n\t
this.teaSkyUpSvga.visible = false;
\r\n\t
this.verseImg.visible = false;
\r\n\t
this.initChildrenPos();
\r\n\t
};
\r\n\t
GameView.prototype.initChildrenPos = function () {
\r\n\t
for (var i = 0; i < this.basketSvgaGroup.length; i++) {
\r\n\t
this.basketSvgaGroup[i].visible = false;
\r\n\t
this.basketSvgaGroup[i].x = props.basketSvgaPos[0];
\r\n\t
this.basketSvgaGroup[i].y = props.basketSvgaPos[1];
\r\n\t
this.basketSvgaGroup[i].addEventListener(engine.MouseEvent.CLICK, this.showVerse, this);
\r\n\t
}
\r\n\t
this.verseImg.x = props.versePos[0];
\r\n\t
this.verseImg.y = props.versePos[1];
\r\n\t
this.addOneSvga.x = props.addOneSvgaPos[0];
\r\n\t
this.addOneSvga.y = props.addOneSvgaPos[1];
\r\n\t
this.pickTeaSvga.x = props.pickTeaSvgaPos[0];
\r\n\t
this.pickTeaSvga.y = props.pickTeaSvgaPos[1];
\r\n\t
this.teaSkyUpSvga.x = props.teaSkyUpSvgaPos[0];
\r\n\t
this.teaSkyUpSvga.y = props.teaSkyUpSvgaPos[1];
\r\n\t
this.handGraspSvga.x = props.handGraspSvgaPos[0];
\r\n\t
this.handGraspSvga.y = props.handGraspSvgaPos[1];
\r\n\t
this.progressbarBgImg.x = props.progressbarBgImgPos[0];
\r\n\t
this.progressbarBgImg.y = props.progressbarBgImgPos[1];
\r\n\t
this.progressbarImg.x = props.progressbarImgPos[0];
\r\n\t
this.progressbarImg.y = props.progressbarImgPos[1];
\r\n\t
this.teaHalfFlagImg.x = props.teaHalfFlagImgPos[0];
\r\n\t
this.teaHalfFlagImg.y = props.teaHalfFlagImgPos[1];
\r\n\t
this.teaHalfFlagImg.anchorX = this.teaHalfFlagImg.width / 2;
\r\n\t
this.teaHalfFlagImg.anchorY = this.teaHalfFlagImg.height / 2;
\r\n\t
this.teaFullFlagImg.x = props.teaHalfFlagImgPos[0];
\r\n\t
this.teaFullFlagImg.y = props.teaHalfFlagImgPos[1];
\r\n\t
this.teaFullFlagImg.visible = false;
\r\n\t
this.teaStarImg.x = props.teaStarImgPos[0];
\r\n\t
this.teaStarImg.y = props.teaStarImgPos[1];
\r\n\t
this.pickTeaCount.fillColor = 'white';
\r\n\t
this.pickTeaCount.size = 30;
\r\n\t
this.pickTeaCount.text = '';
\r\n\t
this.pickTeaCount.x = props.pickTeaCountPos[0];
\r\n\t
this.pickTeaCount.y = props.pickTeaCountPos[1];
\r\n\t
this.pickTeaCount.height = 50;
\r\n\t
this.pickTeaCount.width = 200;
\r\n\t
this.verseLabel = new engine.TextField();
\r\n\t
this.verseLabel.size = props.verseLabel[2];
\r\n\t
this.verseLabel.text = '11';
\r\n\t
this.verseLabel.fillColor = props.verseColor[0];
\r\n\t
this.verseLabel.height = props.verseLabel[1];
\r\n\t
this.verseLabel.width = props.verseLabel[0];
\r\n\t
this.verseLabel.strokeColor = props.verseColor[1];
\r\n\t
this.verseLabel.stroke = 0.5;
\r\n\t
this.verseLabel.y = 15;
\r\n\t
this.verseLabel['textHeight'] = 14;
\r\n\t
this.verseLabel.textAlign = engine.TEXT_ALIGN.CENTER;
\r\n\t
this.verseImg.visible = false;
\r\n\t
this.verseImg.addChild(this.verseLabel);
\r\n\t
};
\r\n\t
GameView.prototype.showVerse = function () {
\r\n\t
return tslib.__awaiter(this, void 0, void 0, function () {
\r\n\t
var random, verse, y;
\r\n\t
var _this = this;
\r\n\t
return tslib.__generator(this, function (_a) {
\r\n\t
console.log('显示诗句');
\r\n\t
if (!this._touchEnabled) {
\r\n\t
return [2];
\r\n\t
}
\r\n\t
this._touchEnabled = false;
\r\n\t
this.verseImg.visible = true;
\r\n\t
random = Math.floor(Math.random() * 3);
\r\n\t
console.log('random', random);
\r\n\t
console.log('props.verses');
\r\n\t
console.log(props.verses);
\r\n\t
verse = props.verses[random];
\r\n\t
console.log('verse', verse);
\r\n\t
this.verseLabel.text = verse;
\r\n\t
y = this.verseImg.y;
\r\n\t
engine.Tween.get(this.verseImg)
\r\n\t
.to({ alpha: 0 }, 3000).call(function () {
\r\n\t
_this.verseImg.visible = false;
\r\n\t
_this.verseImg.alpha = 1;
\r\n\t
_this._touchEnabled = true;
\r\n\t
});
\r\n\t
return [2];
\r\n\t
});
\r\n\t
});
\r\n\t
};
\r\n\t
GameView.prototype.setTeaNum = function (TeaNums) {
\r\n\t
var _this = this;
\r\n\t
if (this.schedule) {
\r\n\t
console.log('清理定时器,重新设置同步');
\r\n\t
clearInterval(this.schedule);
\r\n\t
}
\r\n\t
var totalNum = TeaNums.totalNum;
\r\n\t
var nowNum = TeaNums.nowNum;
\r\n\t
this.pickTeaCount.text = nowNum + '/' + totalNum;
\r\n\t
this.getTeaPercentage(nowNum, totalNum);
\r\n\t
var surplus = nowNum - totalNum;
\r\n\t
console.log('surplus', surplus);
\r\n\t
var width = this.progressbarImg.width;
\r\n\t
var myDate = new Date();
\r\n\t
var nowData = myDate.getTime();
\r\n\t
var serverData = TeaNums.serverData;
\r\n\t
var fbdvalue = Math.abs((nowData - serverData / 1000));
\r\n\t
console.log('fbdvalue', fbdvalue);
\r\n\t
var dataDiff = 0;
\r\n\t
var x = -width * (1 - nowNum / totalNum);
\r\n\t
console.log('x', x);
\r\n\t
this.progressbarImg.x = parseFloat(x.toFixed(3));
\r\n\t
console.log('this.progressbarImg.x', this.progressbarImg.x);
\r\n\t
var step = (width - (width - Math.abs(this.progressbarImg.x))) / surplus;
\r\n\t
console.log('进图条每秒比例原始step', step);
\r\n\t
step = parseFloat(step.toFixed(3));
\r\n\t
console.log('进图条每秒比例step', step);
\r\n\t
this.addOneSvga.play(1, true);
\r\n\t
var speed = props.pickTeaSpeed;
\r\n\t
var teaFullRotation = engine.Tween.get(this.teaHalfFlagImg, { loop: true })
\r\n\t
.to({ rotation: 360 }, speed).call(function () {
\r\n\t
_this.teaHalfFlagImg.rotation = 0;
\r\n\t
});
\r\n\t
this.schedule = setInterval(function () {
\r\n\t
if (nowNum == totalNum) {
\r\n\t
console.log('达到最大长度');
\r\n\t
clearInterval(_this.schedule);
\r\n\t
engine.Tween.pauseTweens(teaFullRotation);
\r\n\t
_this.progressbarImg.x = 0;
\r\n\t
_this.teaHalfFlagImg.visible = false;
\r\n\t
_this.teaFullFlagImg.visible = !_this.teaHalfFlagImg.visible;
\r\n\t
_this.addOneSvga.visible = !_this.teaHalfFlagImg.visible;
\r\n\t
_this.addOneSvga.stop();
\r\n\t
}
\r\n\t
if (_this.progressbarImg.x <= -2) {
\r\n\t
_this.progressbarImg.x -= step;
\r\n\t
}
\r\n\t
_this.getTeaPercentage(nowNum, totalNum);
\r\n\t
nowNum++;
\r\n\t
dataDiff++;
\r\n\t
myDate = new Date();
\r\n\t
nowData = myDate.getTime();
\r\n\t
console.log('nowData');
\r\n\t
console.log(nowData);
\r\n\t
console.log('nowData - serverData) / 1000 - dataDiff', (nowData - serverData) / 1000 - (fbdvalue + dataDiff));
\r\n\t
if (Math.abs((nowData - serverData) / 1000) - dataDiff > (fbdvalue + 3)) {
\r\n\t
clearInterval(_this.schedule);
\r\n\t
engine.Tween.pauseTweens(teaFullRotation);
\r\n\t
engine.globalEvent.dispatchEvent('event-setchange-TeaNum');
\r\n\t
return;
\r\n\t
}
\r\n\t
console.log('this.progressbarImg.x', _this.progressbarImg.x);
\r\n\t
}, speed);
\r\n\t
};
\r\n\t
GameView.prototype.getTeaPercentage = function (nowNum, totalNum) {
\r\n\t
this.pickTeaCount.text = nowNum + '/' + totalNum;
\r\n\t
var teaPercentage = 2;
\r\n\t
var portion = totalNum / 3;
\r\n\t
if (nowNum < portion) {
\r\n\t
return;
\r\n\t
}
\r\n\t
if (nowNum < (portion * 2)) {
\r\n\t
teaPercentage = 1;
\r\n\t
}
\r\n\t
console.log('teaPercentage', teaPercentage);
\r\n\t
if (this.nowPercentage != teaPercentage) {
\r\n\t
console.log('状态改变');
\r\n\t
this.nowPercentage = teaPercentage;
\r\n\t
this.updateTeaPercentage(teaPercentage);
\r\n\t
}
\r\n\t
};
\r\n\t
GameView.prototype.updateTeaPercentage = function (teaPercentage) {
\r\n\t
if (teaPercentage === void 0) { teaPercentage = 0; }
\r\n\t
console.log('需要更换茶叶数量皮肤');
\r\n\t
console.log('延迟500ms');
\r\n\t
var pickTeaSVGA = this.basketSvgaGroup[1];
\r\n\t
console.log('pickTeaSVGA');
\r\n\t
console.log(pickTeaSVGA);
\r\n\t
pickTeaSVGA.removeChildAt(10);
\r\n\t
var originframes = pickTeaSVGA.children[7];
\r\n\t
if (!originframes) {
\r\n\t
return;
\r\n\t
}
\r\n\t
var teaBucketframes = JSON.parse(JSON.stringify(originframes.frames));
\r\n\t
if (teaPercentage == 1) {
\r\n\t
this.teaHalfImg = new engine.Image(getTextureByName('茶叶-少'));
\r\n\t
}
\r\n\t
else if (teaPercentage == 2) {
\r\n\t
this.teaHalfImg = new engine.Image(getTextureByName('茶叶-满'));
\r\n\t
}
\r\n\t
this.teaHalfImg.visible = false;
\r\n\t
this.teaHalfImg['frames'] = teaBucketframes;
\r\n\t
console.log('this.teaHalfImg');
\r\n\t
console.log(this.teaHalfImg);
\r\n\t
pickTeaSVGA.addChildAt(this.teaHalfImg, 10);
\r\n\t
};
\r\n\t
GameView.prototype.setPickTeaLevel = function (level) {
\r\n\t
var _this = this;
\r\n\t
console.log('setPickTeaLevel', level);
\r\n\t
var pickTeaSVGA = this.basketSvgaGroup[level];
\r\n\t
pickTeaSVGA.visible = true;
\r\n\t
setTimeout(function () {
\r\n\t
console.log('延迟500ms');
\r\n\t
var originframes = pickTeaSVGA.children[7];
\r\n\t
var teaBucketframes = JSON.parse(JSON.stringify(originframes.frames));
\r\n\t
if (_this.teaHalfImg) {
\r\n\t
_this.teaHalfImg['frames'] = teaBucketframes;
\r\n\t
}
\r\n\t
console.log('this.teaHalfImg');
\r\n\t
console.log(_this.teaHalfImg);
\r\n\t
pickTeaSVGA.addChildAt(_this.teaHalfImg, 10);
\r\n\t
pickTeaSVGA.gotoAndPlay(1, true);
\r\n\t
}, 300);
\r\n\t
};
\r\n\t
GameView.prototype.handGrasp = function () {
\r\n\t
console.log('handGrasp');
\r\n\t
var that = this;
\r\n\t
setTimeout(function () {
\r\n\t
that.handGraspSvga.play(1, true);
\r\n\t
engine.Tween.get(that.handGraspSvga)
\r\n\t
.to({ x: props.handGraspMovePos[0], y: props.handGraspMovePos[1] }, 600).call(function () {
\r\n\t
that.handGraspSvga.x = props.handGraspSvgaPos[0];
\r\n\t
that.handGraspSvga.y = props.handGraspSvgaPos[1];
\r\n\t
that.pickTeaSvga.visible = true;
\r\n\t
that.pickTeaSvga.play(1, false);
\r\n\t
});
\r\n\t
that.pickTeaSvga.addEventListener(engine.Event.END_FRAME, function () {
\r\n\t
that.teaSkyUpSvga.visible = true;
\r\n\t
that.teaSkyUpSvga.play(1, false);
\r\n\t
});
\r\n\t
that.teaSkyUpSvga.addEventListener(engine.Event.END_FRAME, function () {
\r\n\t
that.teaSkyUpSvga.visible = false;
\r\n\t
});
\r\n\t
}, 500);
\r\n\t
};
\r\n\t
return GameView;
\r\n\t
}(engine.Container));
\r\n\t
//# sourceMappingURL=GameView.js.map
\n\n\t
var GameWrapper = (function (_super) {
\r\n\t
tslib.__extends(GameWrapper, _super);
\r\n\t
function GameWrapper() {
\r\n\t
var _this = _super.call(this) || this;
\r\n\t
engine.globalEvent.addEventListener('event-pickTeaGame-init', _this.reset, _this);
\r\n\t
engine.globalEvent.addEventListener('event-hand-grasp', _this.handGrasp, _this);
\r\n\t
engine.globalEvent.addEventListener('event-getchange-TeaNum', _this.setTeaNum, _this);
\r\n\t
engine.globalEvent.addEventListener('event-getBasket-Type', _this.setPickTeaLevel, _this);
\r\n\t
var gameView = _this._gameView = new GameView();
\r\n\t
_this.addChild(gameView);
\r\n\t
return _this;
\r\n\t
}
\r\n\t
GameWrapper.prototype.setTeaNum = function (event) {
\r\n\t
injectProps(event.data);
\r\n\t
this._gameView.setTeaNum(event.data);
\r\n\t
};
\r\n\t
GameWrapper.prototype.setPickTeaLevel = function (event) {
\r\n\t
injectProps(event.data);
\r\n\t
this._gameView.setPickTeaLevel(event.data);
\r\n\t
};
\r\n\t
GameWrapper.prototype.reset = function (event) {
\r\n\t
injectProps(event.data);
\r\n\t
this._gameView.visible = true;
\r\n\t
this._gameView.reset();
\r\n\t
};
\r\n\t
GameWrapper.prototype.start = function (event) {
\r\n\t
injectProps(event.data);
\r\n\t
this._status = 1;
\r\n\t
this._gameView.start();
\r\n\t
};
\r\n\t
GameWrapper.prototype.pause = function () {
\r\n\t
this._gameView.pause();
\r\n\t
};
\r\n\t
GameWrapper.prototype.resume = function () {
\r\n\t
this._gameView.resume();
\r\n\t
};
\r\n\t
GameWrapper.prototype.revive = function () {
\r\n\t
this._gameView.revive();
\r\n\t
};
\r\n\t
GameWrapper.prototype.clear = function () {
\r\n\t
this._gameView.visible = false;
\r\n\t
};
\r\n\t
GameWrapper.prototype.handGrasp = function () {
\r\n\t
this._gameView.handGrasp()
;
\r\n\t
};
\r\n\t
GameWrapper.prototype.onTap = function (event) {
\r\n\t
};
\r\n\t
return GameWrapper;
\r\n\t
}(engine.Container));
\r\n\t
//# sourceMappingURL=GameWrapper.js.map
\n\n\t
function index (props) {
\r\n\t
prepareProps();
\r\n\t
injectProps(props);
\r\n\t
var instance = new GameWrapper();
\r\n\t
return instance;
\r\n\t
}
\r\n\t
//# sourceMappingURL=index.js.map
\n\n\t
return index;
\n\n
})));
\n
"
"code"
:
"(function (global, factory) {
\n\t
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('tslib')) :
\n\t
typeof define === 'function' && define.amd ? define(['tslib'], factory) :
\n\t
(global = global || self, global['pick-tea'] = factory(global.tslib));
\n
}(this, (function (tslib) { 'use strict';
\n\n\t
var props = {};
\r\n\t
function prepareProps() {
\r\n\t
var metaProps = getProps();
\r\n\t
engine.injectProp(props, metaProps);
\r\n\t
}
\r\n\t
function injectProps(p) {
\r\n\t
engine.injectProp(props, p);
\r\n\t
}
\r\n\t
//# sourceMappingURL=props.js.map
\n\n\t
function getTexture(uuid) {
\r\n\t
return engine.Texture.from(getAssetByUUID(uuid).uuid);
\r\n\t
}
\r\n\t
function getTextureByName(name) {
\r\n\t
return getTexture(engine.getAssetByName(name).uuid);
\r\n\t
}
\r\n\t
function createSvga(name, anchorName) {
\r\n\t
var inst = new svga.Svga();
\r\n\t
inst.source = 'asset://' + engine.getAssetByName(name).uuid;
\r\n\t
return inst;
\r\n\t
}
\r\n\t
function showLog(abjname, obj) {
\r\n\t
}
\r\n\t
//# sourceMappingURL=utils.js.map
\n\n\t
var GameView = (function (_super) {
\r\n\t
tslib.__extends(GameView, _super);
\r\n\t
function GameView() {
\r\n\t
var _this = _super.call(this) || this;
\r\n\t
_this.nowPercentage = 0;
\r\n\t
_this.goodsItems = [];
\r\n\t
_this._touchEnabled = true;
\r\n\t
_this.once(engine.Event.ADDED_TO_STAGE, _this.setup, _this);
\r\n\t
return _this;
\r\n\t
}
\r\n\t
GameView.prototype.setup = function () {
\r\n\t
var _this = this;
\r\n\t
if (this._hasSetup) {
\r\n\t
return;
\r\n\t
}
\r\n\t
this._hasSetup = true;
\r\n\t
this.pickTeaBg = new engine.Container();
\r\n\t
this.addChild(this.pickTeaBg);
\r\n\t
this.teaHalfImg = new engine.Image();
\r\n\t
this.paperBasketSvga = createSvga(
\"
采茶童-纸篮子
\"
);
\r\n\t
this.clothBasketSvga = createSvga(
\"
采茶童-布篮子
\"
);
\r\n\t
this.bambooBasketSvga = createSvga(
\"
采茶童-竹编篮
\"
);
\r\n\t
this.woodBasketSvga = createSvga(
\"
采茶童-木篮子
\"
);
\r\n\t
this.addOneSvga = createSvga(
\"
+1
\"
);
\r\n\t
this.pickTeaSvga = createSvga(
\"
采茶叶
\"
);
\r\n\t
this.teaSkyUpSvga = createSvga(
\"
茶叶向上飞
\"
);
\r\n\t
this.handGraspSvga = createSvga(
\"
手抓去
\"
);
\r\n\t
this.frontImg = new engine.Image(getTextureByName('前景'));
\r\n\t
this.pickTeaBg.addChild(this.paperBasketSvga);
\r\n\t
this.pickTeaBg.addChild(this.clothBasketSvga);
\r\n\t
this.pickTeaBg.addChild(this.bambooBasketSvga);
\r\n\t
this.pickTeaBg.addChild(this.woodBasketSvga);
\r\n\t
this.pickTeaBg.addChild(this.pickTeaSvga);
\r\n\t
this.pickTeaBg.addChild(this.teaSkyUpSvga);
\r\n\t
this.basketSvgaGroup = [this.paperBasketSvga, this.clothBasketSvga, this.bambooBasketSvga, this.woodBasketSvga];
\r\n\t
this.progressbarBgImg = new engine.Image(getTextureByName('进度条底框'));
\r\n\t
this.progressbarImg = new engine.Image(getTextureByName('进度'));
\r\n\t
this.teaHalfFlagImg = new engine.Image(getTextureByName('茶叶进度缺'));
\r\n\t
this.teaFullFlagImg = new engine.Image(getTextureByName('茶叶进度满'));
\r\n\t
this.teaStarImg = new engine.Image(getTextureByName('小茶叶'));
\r\n\t
this.verseImg = new engine.Image(getTextureByName('气泡框'));
\r\n\t
this.pickTeaBg.addChild(this.verseImg);
\r\n\t
var mask = new engine.Rect();
\r\n\t
mask.width = 600;
\r\n\t
mask.height = 50;
\r\n\t
mask.x = 10;
\r\n\t
mask.y = 0;
\r\n\t
mask.alpha = 1;
\r\n\t
this.progressbarImg.mask = mask;
\r\n\t
showLog(this.progressbarImg.mask);
\r\n\t
this.addChild(this.frontImg);
\r\n\t
this.progressbarBgImg.addChild(this.progressbarImg);
\r\n\t
this.progressbarBgImg.addChild(mask);
\r\n\t
this.progressbarBgImg.addChild(this.addOneSvga);
\r\n\t
this.progressbarBgImg.addChild(this.handGraspSvga);
\r\n\t
this.progressbarBgImg.addChild(this.teaHalfFlagImg);
\r\n\t
this.progressbarBgImg.addChild(this.teaFullFlagImg);
\r\n\t
this.progressbarBgImg.addChild(this.teaStarImg);
\r\n\t
this.pickTeaCount = new engine.Label();
\r\n\t
this.progressbarBgImg.addChild(this.pickTeaCount);
\r\n\t
this.addChild(this.progressbarBgImg);
\r\n\t
this.initView();
\r\n\t
setTimeout(function () {
\r\n\t
_this.setTeaNum({ totalNum: 10, nowNum: 0, serverData: 1585290768011 });
\r\n\t
}, 500);
\r\n\t
};
\r\n\t
GameView.prototype.reset = function () {
\r\n\t
this.initView();
\r\n\t
};
\r\n\t
GameView.prototype.start = function () {
\r\n\t
};
\r\n\t
GameView.prototype.pause = function () {
\r\n\t
this.gameIng = false;
\r\n\t
};
\r\n\t
GameView.prototype.revive = function () {
\r\n\t
this.gameIng = true;
\r\n\t
};
\r\n\t
GameView.prototype.resume = function () {
\r\n\t
this.reset();
\r\n\t
this.start();
\r\n\t
};
\r\n\t
GameView.prototype.initView = function () {
\r\n\t
this.pickTeaBg.mouseEnabled = false;
\r\n\t
this.teaHalfImg.visible = false;
\r\n\t
this.pickTeaSvga.visible = false;
\r\n\t
this.teaSkyUpSvga.visible = false;
\r\n\t
this.verseImg.visible = false;
\r\n\t
this.frontImg.visible = props.showFrontImg == 1;
\r\n\t
this.initChildrenPos();
\r\n\t
};
\r\n\t
GameView.prototype.initChildrenPos = function () {
\r\n\t
for (var i = 0; i < this.basketSvgaGroup.length; i++) {
\r\n\t
this.basketSvgaGroup[i].visible = false;
\r\n\t
this.basketSvgaGroup[i].x = props.basketSvgaPos[0];
\r\n\t
this.basketSvgaGroup[i].y = props.basketSvgaPos[1];
\r\n\t
}
\r\n\t
this.verseImg.x = props.versePos[0];
\r\n\t
this.verseImg.y = props.versePos[1];
\r\n\t
this.addOneSvga.x = props.addOneSvgaPos[0];
\r\n\t
this.addOneSvga.y = props.addOneSvgaPos[1];
\r\n\t
this.pickTeaSvga.x = props.pickTeaSvgaPos[0];
\r\n\t
this.pickTeaSvga.y = props.pickTeaSvgaPos[1];
\r\n\t
this.teaSkyUpSvga.x = props.teaSkyUpSvgaPos[0];
\r\n\t
this.teaSkyUpSvga.y = props.teaSkyUpSvgaPos[1];
\r\n\t
this.handGraspSvga.x = props.handGraspSvgaPos[0];
\r\n\t
this.handGraspSvga.y = props.handGraspSvgaPos[1];
\r\n\t
this.progressbarBgImg.x = props.progressbarBgImgPos[0];
\r\n\t
this.progressbarBgImg.y = props.progressbarBgImgPos[1];
\r\n\t
this.progressbarImg.x = props.progressbarImgPos[0];
\r\n\t
this.progressbarImg.y = props.progressbarImgPos[1];
\r\n\t
this.teaHalfFlagImg.x = props.teaHalfFlagImgPos[0];
\r\n\t
this.teaHalfFlagImg.y = props.teaHalfFlagImgPos[1];
\r\n\t
this.teaHalfFlagImg.anchorX = this.teaHalfFlagImg.width / 2;
\r\n\t
this.teaHalfFlagImg.anchorY = this.teaHalfFlagImg.height / 2;
\r\n\t
this.teaFullFlagImg.x = props.teaHalfFlagImgPos[0];
\r\n\t
this.teaFullFlagImg.y = props.teaHalfFlagImgPos[1];
\r\n\t
this.frontImg.x = props.FrontImgPos[0];
\r\n\t
this.frontImg.y = props.FrontImgPos[1];
\r\n\t
this.teaFullFlagImg.visible = false;
\r\n\t
this.teaStarImg.x = props.teaStarImgPos[0];
\r\n\t
this.teaStarImg.y = props.teaStarImgPos[1];
\r\n\t
this.pickTeaCount.fillColor = 'white';
\r\n\t
this.pickTeaCount.size = 30;
\r\n\t
this.pickTeaCount.text = '';
\r\n\t
this.pickTeaCount.x = props.pickTeaCountPos[0];
\r\n\t
this.pickTeaCount.y = props.pickTeaCountPos[1];
\r\n\t
this.pickTeaCount.height = 50;
\r\n\t
this.pickTeaCount.width = 200;
\r\n\t
this.verseLabel = new engine.TextField();
\r\n\t
this.verseLabel.size = props.verseLabel[2];
\r\n\t
this.verseLabel.text = '';
\r\n\t
this.verseLabel.fillColor = props.verseColor[0];
\r\n\t
this.verseLabel.height = props.verseLabel[1];
\r\n\t
this.verseLabel.width = props.verseLabel[0];
\r\n\t
this.verseLabel.strokeColor = props.verseColor[1];
\r\n\t
this.verseLabel.stroke = 0.5;
\r\n\t
this.verseLabel.y = 15;
\r\n\t
this.verseLabel['textHeight'] = 14;
\r\n\t
this.verseLabel.textAlign = engine.TEXT_ALIGN.CENTER;
\r\n\t
this.verseImg.visible = false;
\r\n\t
this.verseImg.addChild(this.verseLabel);
\r\n\t
};
\r\n\t
GameView.prototype.showVerse = function () {
\r\n\t
var _this = this;
\r\n\t
this.verseImg.visible = true;
\r\n\t
var len = props.verses.length;
\r\n\t
var random = Math.floor(Math.random() * len);
\r\n\t
var verse = props.verses[random];
\r\n\t
this.verseLabel.text = verse;
\r\n\t
var y = this.verseImg.y;
\r\n\t
engine.Tween.get(this.verseImg)
\r\n\t
.to({ alpha: 0 }, 3000).call(function () {
\r\n\t
_this.verseImg.visible = false;
\r\n\t
_this.verseImg.alpha = 1;
\r\n\t
});
\r\n\t
};
\r\n\t
GameView.prototype.setTeaNum = function (TeaNums) {
\r\n\t
var _this = this;
\r\n\t
if (this.schedule) {
\r\n\t
clearInterval(this.schedule);
\r\n\t
}
\r\n\t
var totalNum = TeaNums.totalNum;
\r\n\t
var nowNum = TeaNums.nowNum + 1;
\r\n\t
var surplus = nowNum - totalNum;
\r\n\t
if (surplus == 0) {
\r\n\t
console.log('达到最大长度');
\r\n\t
this.progressbarImg.x = this.teaFullFlagImg.width / 2;
\r\n\t
this.teaHalfFlagImg.visible = false;
\r\n\t
this.teaFullFlagImg.visible = !this.teaHalfFlagImg.visible;
\r\n\t
this.addOneSvga.visible = !this.teaHalfFlagImg.visible;
\r\n\t
this.addOneSvga.stop();
\r\n\t
return;
\r\n\t
}
\r\n\t
console.log('surplus', surplus);
\r\n\t
var width = this.progressbarImg.width;
\r\n\t
var myDate = new Date();
\r\n\t
var nowData = myDate.getTime();
\r\n\t
var serverData = TeaNums.serverData;
\r\n\t
var fbdvalue = Math.abs((nowData - serverData));
\r\n\t
console.log('fbdvalue', fbdvalue);
\r\n\t
var dataDiff = 0;
\r\n\t
var x = -width * (1 - nowNum / totalNum);
\r\n\t
console.log('x', x);
\r\n\t
console.log('parseFloat(x.toFixed(3))', parseFloat(x.toFixed(3)));
\r\n\t
this.progressbarImg.x = parseFloat(x.toFixed(3)) + this.teaFullFlagImg.width / 2 - Math.abs(this.teaFullFlagImg.x);
\r\n\t
console.log('this.progressbarImg.x', this.progressbarImg.x);
\r\n\t
var step = (this.teaFullFlagImg.width / 2 - this.progressbarImg.x) / surplus;
\r\n\t
console.log('step', step);
\r\n\t
this.addOneSvga.play(1, true);
\r\n\t
var speed = props.pickTeaSpeed;
\r\n\t
var teaFullRotation = engine.Tween.get(this.teaHalfFlagImg, { loop: true })
\r\n\t
.to({ rotation: 360 }, speed).call(function () {
\r\n\t
_this.teaHalfFlagImg.rotation = 0;
\r\n\t
});
\r\n\t
this.schedule = setInterval(function () {
\r\n\t
if (nowNum == totalNum) {
\r\n\t
console.log('达到最大长度');
\r\n\t
clearInterval(_this.schedule);
\r\n\t
engine.Tween.removeTweens(teaFullRotation);
\r\n\t
_this.progressbarImg.x = _this.teaFullFlagImg.width / 2;
\r\n\t
_this.teaHalfFlagImg.visible = false;
\r\n\t
_this.teaFullFlagImg.visible = !_this.teaHalfFlagImg.visible;
\r\n\t
_this.addOneSvga.visible = !_this.teaHalfFlagImg.visible;
\r\n\t
_this.addOneSvga.stop();
\r\n\t
}
\r\n\t
console.log('nowNum', nowNum, 'totalNum', totalNum);
\r\n\t
_this.getTeaPercentage(nowNum, totalNum);
\r\n\t
if (_this.progressbarImg.x < _this.teaFullFlagImg.width / 2 + step) {
\r\n\t
_this.progressbarImg.x -= step;
\r\n\t
}
\r\n\t
nowNum++;
\r\n\t
dataDiff += speed;
\r\n\t
myDate = new Date();
\r\n\t
nowData = myDate.getTime();
\r\n\t
if (Math.abs((nowData - serverData)) - dataDiff > (fbdvalue + 3000)) {
\r\n\t
console.log('校准数据前后数据偏差过大');
\r\n\t
console.log(Math.abs((nowData - serverData)) - dataDiff - (fbdvalue + 3000));
\r\n\t
clearInterval(_this.schedule);
\r\n\t
engine.Tween.removeTweens(teaFullRotation);
\r\n\t
engine.globalEvent.dispatchEvent('event-setchange-TeaNum');
\r\n\t
_this.addOneSvga.visible = false;
\r\n\t
_this.addOneSvga.stop();
\r\n\t
return;
\r\n\t
}
\r\n\t
}, speed);
\r\n\t
};
\r\n\t
GameView.prototype.getTeaPercentage = function (nowNum, totalNum) {
\r\n\t
this.pickTeaCount.text = nowNum + '/' + totalNum;
\r\n\t
var teaPercentage = 2;
\r\n\t
var portion = totalNum / 3;
\r\n\t
if (nowNum < portion) {
\r\n\t
return;
\r\n\t
}
\r\n\t
if (nowNum < (portion * 2)) {
\r\n\t
teaPercentage = 1;
\r\n\t
}
\r\n\t
console.log('teaPercentage', teaPercentage);
\r\n\t
if (this.nowPercentage != teaPercentage) {
\r\n\t
this.nowPercentage = teaPercentage;
\r\n\t
this.updateTeaPercentage(teaPercentage);
\r\n\t
}
\r\n\t
};
\r\n\t
GameView.prototype.updateTeaPercentage = function (teaPercentage) {
\r\n\t
if (teaPercentage === void 0) { teaPercentage = 0; }
\r\n\t
var pickTeaSVGA = this.basketSvgaGroup[1];
\r\n\t
pickTeaSVGA.removeChildAt(10);
\r\n\t
var originframes = pickTeaSVGA.children[7];
\r\n\t
if (!originframes) {
\r\n\t
return;
\r\n\t
}
\r\n\t
var teaBucketframes = JSON.parse(JSON.stringify(originframes.frames));
\r\n\t
if (teaPercentage == 1) {
\r\n\t
this.teaHalfImg = new engine.Image(getTextureByName('茶叶-少'));
\r\n\t
}
\r\n\t
else if (teaPercentage == 2) {
\r\n\t
this.teaHalfImg = new engine.Image(getTextureByName('茶叶-满'));
\r\n\t
}
\r\n\t
this.teaHalfImg.visible = false;
\r\n\t
this.teaHalfImg['frames'] = teaBucketframes;
\r\n\t
pickTeaSVGA.addChildAt(this.teaHalfImg, 10);
\r\n\t
};
\r\n\t
GameView.prototype.setPickTeaLevel = function (level) {
\r\n\t
var _this = this;
\r\n\t
var pickTeaSVGA = this.basketSvgaGroup[level];
\r\n\t
pickTeaSVGA.visible = true;
\r\n\t
setTimeout(function () {
\r\n\t
var originframes = pickTeaSVGA.children[7];
\r\n\t
var teaBucketframes = JSON.parse(JSON.stringify(originframes.frames));
\r\n\t
if (_this.teaHalfImg) {
\r\n\t
_this.teaHalfImg['frames'] = teaBucketframes;
\r\n\t
}
\r\n\t
showLog(_this.teaHalfImg);
\r\n\t
pickTeaSVGA.addChildAt(_this.teaHalfImg, 10);
\r\n\t
pickTeaSVGA.gotoAndPlay(1, true);
\r\n\t
}, 300);
\r\n\t
};
\r\n\t
GameView.prototype.handGrasp = function () {
\r\n\t
var that = this;
\r\n\t
setTimeout(function () {
\r\n\t
engine.Tween.get(that.handGraspSvga)
\r\n\t
.to({ x: props.handGraspMovePos[0], y: props.handGraspMovePos[1] }, 400).call(function () {
\r\n\t
that.handGraspSvga.play(1, true);
\r\n\t
setTimeout(function () {
\r\n\t
that.handGraspSvga.stop();
\r\n\t
that.handGraspSvga.x = props.handGraspSvgaPos[0];
\r\n\t
that.handGraspSvga.y = props.handGraspSvgaPos[1];
\r\n\t
}, 600);
\r\n\t
that.pickTeaSvga.visible = true;
\r\n\t
that.pickTeaSvga.play(1, false);
\r\n\t
});
\r\n\t
that.pickTeaSvga.addEventListener(engine.Event.END_FRAME, function () {
\r\n\t
that.teaSkyUpSvga.visible = true;
\r\n\t
that.teaSkyUpSvga.play(1, false);
\r\n\t
});
\r\n\t
that.teaSkyUpSvga.addEventListener(engine.Event.END_FRAME, function () {
\r\n\t
that.teaSkyUpSvga.visible = false;
\r\n\t
that.updateTeaPercentage(0);
\r\n\t
});
\r\n\t
}, 500);
\r\n\t
};
\r\n\t
return GameView;
\r\n\t
}(engine.Container));
\n\n\t
var GameWrapper = (function (_super) {
\r\n\t
tslib.__extends(GameWrapper, _super);
\r\n\t
function GameWrapper() {
\r\n\t
var _this = _super.call(this) || this;
\r\n\t
engine.globalEvent.addEventListener('event-pickTeaGame-init', _this.reset, _this);
\r\n\t
engine.globalEvent.addEventListener('event-hand-grasp', _this.handGrasp, _this);
\r\n\t
engine.globalEvent.addEventListener('event-getClick-person', _this.clickPerson, _this);
\r\n\t
engine.globalEvent.addEventListener('event-getchange-TeaNum', _this.setTeaNum, _this);
\r\n\t
engine.globalEvent.addEventListener('event-getBasket-Type', _this.setPickTeaLevel, _this);
\r\n\t
var gameView = _this._gameView = new GameView();
\r\n\t
_this.addChild(gameView);
\r\n\t
return _this;
\r\n\t
}
\r\n\t
GameWrapper.prototype.setTeaNum = function (event) {
\r\n\t
injectProps(event.data);
\r\n\t
this._gameView.setTeaNum(event.data);
\r\n\t
};
\r\n\t
GameWrapper.prototype.setPickTeaLevel = function (event) {
\r\n\t
injectProps(event.data);
\r\n\t
this._gameView.setPickTeaLevel(event.data);
\r\n\t
};
\r\n\t
GameWrapper.prototype.handGrasp = function () {
\r\n\t
this._gameView.handGrasp();
\r\n\t
};
\r\n\t
GameWrapper.prototype.clickPerson = function () {
\r\n\t
this._gameView.showVerse();
\r\n\t
};
\r\n\t
GameWrapper.prototype.reset = function (event) {
\r\n\t
injectProps(event.data);
\r\n\t
this._gameView.visible = true;
\r\n\t
this._gameView.reset();
\r\n\t
};
\r\n\t
GameWrapper.prototype.start = function (event) {
\r\n\t
injectProps(event.data);
\r\n\t
this._status = 1;
\r\n\t
this._gameView.start();
\r\n\t
};
\r\n\t
GameWrapper.prototype.pause = function () {
\r\n\t
this._gameView.pause();
\r\n\t
};
\r\n\t
GameWrapper.prototype.resume = function () {
\r\n\t
this._gameView.resume();
\r\n\t
};
\r\n\t
GameWrapper.prototype.revive = function () {
\r\n\t
this._gameView.revive();
\r\n\t
};
\r\n\t
GameWrapper.prototype.clear = function () {
\r\n\t
this._gameView.visible = false
;
\r\n\t
};
\r\n\t
GameWrapper.prototype.onTap = function (event) {
\r\n\t
};
\r\n\t
return GameWrapper;
\r\n\t
}(engine.Container));
\r\n\t
//# sourceMappingURL=GameWrapper.js.map
\n\n\t
function index (props) {
\r\n\t
prepareProps();
\r\n\t
injectProps(props);
\r\n\t
var instance = new GameWrapper();
\r\n\t
return instance;
\r\n\t
}
\r\n\t
//# sourceMappingURL=index.js.map
\n\n\t
return index;
\n\n
})));
\n
"
}
}
src/custom/pick-tea/debug/main.js
View file @
57aa8bf6
...
@@ -25,6 +25,8 @@
...
@@ -25,6 +25,8 @@
inst
.
source
=
'asset://'
+
engine
.
getAssetByName
(
name
).
uuid
;
inst
.
source
=
'asset://'
+
engine
.
getAssetByName
(
name
).
uuid
;
return
inst
;
return
inst
;
}
}
function
showLog
(
abjname
,
obj
)
{
}
//# sourceMappingURL=utils.js.map
//# sourceMappingURL=utils.js.map
var
GameView
=
(
function
(
_super
)
{
var
GameView
=
(
function
(
_super
)
{
...
@@ -44,9 +46,6 @@
...
@@ -44,9 +46,6 @@
}
}
this
.
_hasSetup
=
true
;
this
.
_hasSetup
=
true
;
this
.
pickTeaBg
=
new
engine
.
Container
();
this
.
pickTeaBg
=
new
engine
.
Container
();
var
bgGroud
=
new
engine
.
Image
();
bgGroud
.
source
=
'//yun.duiba.com.cn/aurora/assets/a988c47db8d3131faad175c7c2944773392be643.png'
;
this
.
addChild
(
bgGroud
);
this
.
addChild
(
this
.
pickTeaBg
);
this
.
addChild
(
this
.
pickTeaBg
);
this
.
teaHalfImg
=
new
engine
.
Image
();
this
.
teaHalfImg
=
new
engine
.
Image
();
this
.
paperBasketSvga
=
createSvga
(
"采茶童-纸篮子"
);
this
.
paperBasketSvga
=
createSvga
(
"采茶童-纸篮子"
);
...
@@ -57,14 +56,13 @@
...
@@ -57,14 +56,13 @@
this
.
pickTeaSvga
=
createSvga
(
"采茶叶"
);
this
.
pickTeaSvga
=
createSvga
(
"采茶叶"
);
this
.
teaSkyUpSvga
=
createSvga
(
"茶叶向上飞"
);
this
.
teaSkyUpSvga
=
createSvga
(
"茶叶向上飞"
);
this
.
handGraspSvga
=
createSvga
(
"手抓去"
);
this
.
handGraspSvga
=
createSvga
(
"手抓去"
);
this
.
frontImg
=
new
engine
.
Image
(
getTextureByName
(
'前景'
));
this
.
pickTeaBg
.
addChild
(
this
.
paperBasketSvga
);
this
.
pickTeaBg
.
addChild
(
this
.
paperBasketSvga
);
this
.
pickTeaBg
.
addChild
(
this
.
clothBasketSvga
);
this
.
pickTeaBg
.
addChild
(
this
.
clothBasketSvga
);
this
.
pickTeaBg
.
addChild
(
this
.
bambooBasketSvga
);
this
.
pickTeaBg
.
addChild
(
this
.
bambooBasketSvga
);
this
.
pickTeaBg
.
addChild
(
this
.
woodBasketSvga
);
this
.
pickTeaBg
.
addChild
(
this
.
woodBasketSvga
);
this
.
pickTeaBg
.
addChild
(
this
.
addOneSvga
);
this
.
pickTeaBg
.
addChild
(
this
.
pickTeaSvga
);
this
.
pickTeaBg
.
addChild
(
this
.
pickTeaSvga
);
this
.
pickTeaBg
.
addChild
(
this
.
teaSkyUpSvga
);
this
.
pickTeaBg
.
addChild
(
this
.
teaSkyUpSvga
);
this
.
pickTeaBg
.
addChild
(
this
.
handGraspSvga
);
this
.
basketSvgaGroup
=
[
this
.
paperBasketSvga
,
this
.
clothBasketSvga
,
this
.
bambooBasketSvga
,
this
.
woodBasketSvga
];
this
.
basketSvgaGroup
=
[
this
.
paperBasketSvga
,
this
.
clothBasketSvga
,
this
.
bambooBasketSvga
,
this
.
woodBasketSvga
];
this
.
progressbarBgImg
=
new
engine
.
Image
(
getTextureByName
(
'进度条底框'
));
this
.
progressbarBgImg
=
new
engine
.
Image
(
getTextureByName
(
'进度条底框'
));
this
.
progressbarImg
=
new
engine
.
Image
(
getTextureByName
(
'进度'
));
this
.
progressbarImg
=
new
engine
.
Image
(
getTextureByName
(
'进度'
));
...
@@ -80,33 +78,26 @@
...
@@ -80,33 +78,26 @@
mask
.
y
=
0
;
mask
.
y
=
0
;
mask
.
alpha
=
1
;
mask
.
alpha
=
1
;
this
.
progressbarImg
.
mask
=
mask
;
this
.
progressbarImg
.
mask
=
mask
;
console
.
log
(
this
.
progressbarImg
.
mask
);
showLog
(
this
.
progressbarImg
.
mask
);
this
.
addChild
(
this
.
frontImg
);
this
.
progressbarBgImg
.
addChild
(
this
.
progressbarImg
);
this
.
progressbarBgImg
.
addChild
(
this
.
progressbarImg
);
this
.
progressbarBgImg
.
addChild
(
mask
);
this
.
progressbarBgImg
.
addChild
(
mask
);
console
.
log
(
'遮罩坐标'
);
this
.
progressbarBgImg
.
addChild
(
this
.
addOneSvga
);
console
.
log
(
mask
.
x
,
mask
.
y
);
this
.
progressbarBgImg
.
addChild
(
this
.
handGraspSvga
);
this
.
progressbarBgImg
.
addChild
(
this
.
teaHalfFlagImg
);
this
.
progressbarBgImg
.
addChild
(
this
.
teaHalfFlagImg
);
this
.
progressbarBgImg
.
addChild
(
this
.
teaFullFlagImg
);
this
.
progressbarBgImg
.
addChild
(
this
.
teaFullFlagImg
);
this
.
progressbarBgImg
.
addChild
(
this
.
teaStarImg
);
this
.
progressbarBgImg
.
addChild
(
this
.
teaStarImg
);
this
.
pickTeaCount
=
new
engine
.
Label
();
this
.
pickTeaCount
=
new
engine
.
Label
();
this
.
progressbarBgImg
.
addChild
(
this
.
pickTeaCount
);
this
.
progressbarBgImg
.
addChild
(
this
.
pickTeaCount
);
this
.
addChild
(
this
.
progressbarBgImg
);
this
.
addChild
(
this
.
progressbarBgImg
);
var
myDate
=
new
Date
();
var
nowData
=
myDate
.
getTime
();
this
.
setTeaNum
({
totalNum
:
430
,
nowNum
:
0
,
serverData
:
nowData
});
this
.
initChildrenPos
();
setInterval
(
function
()
{
_this
.
handGrasp
();
},
5000
);
};
GameView
.
prototype
.
reset
=
function
()
{
var
_this
=
this
;
console
.
log
(
'111111111reset1'
);
this
.
initView
();
this
.
initView
();
setTimeout
(
function
()
{
setTimeout
(
function
()
{
return
_this
.
setPickTeaLevel
(
1
);
_this
.
setTeaNum
({
totalNum
:
10
,
nowNum
:
0
,
serverData
:
1585290768011
}
);
},
500
);
},
500
);
};
};
GameView
.
prototype
.
reset
=
function
()
{
this
.
initView
();
};
GameView
.
prototype
.
start
=
function
()
{
GameView
.
prototype
.
start
=
function
()
{
};
};
GameView
.
prototype
.
pause
=
function
()
{
GameView
.
prototype
.
pause
=
function
()
{
...
@@ -125,6 +116,7 @@
...
@@ -125,6 +116,7 @@
this
.
pickTeaSvga
.
visible
=
false
;
this
.
pickTeaSvga
.
visible
=
false
;
this
.
teaSkyUpSvga
.
visible
=
false
;
this
.
teaSkyUpSvga
.
visible
=
false
;
this
.
verseImg
.
visible
=
false
;
this
.
verseImg
.
visible
=
false
;
this
.
frontImg
.
visible
=
props
.
showFrontImg
==
1
;
this
.
initChildrenPos
();
this
.
initChildrenPos
();
};
};
GameView
.
prototype
.
initChildrenPos
=
function
()
{
GameView
.
prototype
.
initChildrenPos
=
function
()
{
...
@@ -132,7 +124,6 @@
...
@@ -132,7 +124,6 @@
this
.
basketSvgaGroup
[
i
].
visible
=
false
;
this
.
basketSvgaGroup
[
i
].
visible
=
false
;
this
.
basketSvgaGroup
[
i
].
x
=
props
.
basketSvgaPos
[
0
];
this
.
basketSvgaGroup
[
i
].
x
=
props
.
basketSvgaPos
[
0
];
this
.
basketSvgaGroup
[
i
].
y
=
props
.
basketSvgaPos
[
1
];
this
.
basketSvgaGroup
[
i
].
y
=
props
.
basketSvgaPos
[
1
];
this
.
basketSvgaGroup
[
i
].
addEventListener
(
engine
.
MouseEvent
.
CLICK
,
this
.
showVerse
,
this
);
}
}
this
.
verseImg
.
x
=
props
.
versePos
[
0
];
this
.
verseImg
.
x
=
props
.
versePos
[
0
];
this
.
verseImg
.
y
=
props
.
versePos
[
1
];
this
.
verseImg
.
y
=
props
.
versePos
[
1
];
...
@@ -154,6 +145,8 @@
...
@@ -154,6 +145,8 @@
this
.
teaHalfFlagImg
.
anchorY
=
this
.
teaHalfFlagImg
.
height
/
2
;
this
.
teaHalfFlagImg
.
anchorY
=
this
.
teaHalfFlagImg
.
height
/
2
;
this
.
teaFullFlagImg
.
x
=
props
.
teaHalfFlagImgPos
[
0
];
this
.
teaFullFlagImg
.
x
=
props
.
teaHalfFlagImgPos
[
0
];
this
.
teaFullFlagImg
.
y
=
props
.
teaHalfFlagImgPos
[
1
];
this
.
teaFullFlagImg
.
y
=
props
.
teaHalfFlagImgPos
[
1
];
this
.
frontImg
.
x
=
props
.
FrontImgPos
[
0
];
this
.
frontImg
.
y
=
props
.
FrontImgPos
[
1
];
this
.
teaFullFlagImg
.
visible
=
false
;
this
.
teaFullFlagImg
.
visible
=
false
;
this
.
teaStarImg
.
x
=
props
.
teaStarImgPos
[
0
];
this
.
teaStarImg
.
x
=
props
.
teaStarImgPos
[
0
];
this
.
teaStarImg
.
y
=
props
.
teaStarImgPos
[
1
];
this
.
teaStarImg
.
y
=
props
.
teaStarImgPos
[
1
];
...
@@ -166,7 +159,7 @@
...
@@ -166,7 +159,7 @@
this
.
pickTeaCount
.
width
=
200
;
this
.
pickTeaCount
.
width
=
200
;
this
.
verseLabel
=
new
engine
.
TextField
();
this
.
verseLabel
=
new
engine
.
TextField
();
this
.
verseLabel
.
size
=
props
.
verseLabel
[
2
];
this
.
verseLabel
.
size
=
props
.
verseLabel
[
2
];
this
.
verseLabel
.
text
=
'
11
'
;
this
.
verseLabel
.
text
=
''
;
this
.
verseLabel
.
fillColor
=
props
.
verseColor
[
0
];
this
.
verseLabel
.
fillColor
=
props
.
verseColor
[
0
];
this
.
verseLabel
.
height
=
props
.
verseLabel
[
1
];
this
.
verseLabel
.
height
=
props
.
verseLabel
[
1
];
this
.
verseLabel
.
width
=
props
.
verseLabel
[
0
];
this
.
verseLabel
.
width
=
props
.
verseLabel
[
0
];
...
@@ -179,61 +172,51 @@
...
@@ -179,61 +172,51 @@
this
.
verseImg
.
addChild
(
this
.
verseLabel
);
this
.
verseImg
.
addChild
(
this
.
verseLabel
);
};
};
GameView
.
prototype
.
showVerse
=
function
()
{
GameView
.
prototype
.
showVerse
=
function
()
{
return
tslib
.
__awaiter
(
this
,
void
0
,
void
0
,
function
()
{
var
random
,
verse
,
y
;
var
_this
=
this
;
var
_this
=
this
;
return
tslib
.
__generator
(
this
,
function
(
_a
)
{
console
.
log
(
'显示诗句'
);
if
(
!
this
.
_touchEnabled
)
{
return
[
2
];
}
this
.
_touchEnabled
=
false
;
this
.
verseImg
.
visible
=
true
;
this
.
verseImg
.
visible
=
true
;
random
=
Math
.
floor
(
Math
.
random
()
*
3
);
var
len
=
props
.
verses
.
length
;
console
.
log
(
'random'
,
random
);
var
random
=
Math
.
floor
(
Math
.
random
()
*
len
);
console
.
log
(
'props.verses'
);
var
verse
=
props
.
verses
[
random
];
console
.
log
(
props
.
verses
);
verse
=
props
.
verses
[
random
];
console
.
log
(
'verse'
,
verse
);
this
.
verseLabel
.
text
=
verse
;
this
.
verseLabel
.
text
=
verse
;
y
=
this
.
verseImg
.
y
;
var
y
=
this
.
verseImg
.
y
;
engine
.
Tween
.
get
(
this
.
verseImg
)
engine
.
Tween
.
get
(
this
.
verseImg
)
.
to
({
alpha
:
0
},
3000
).
call
(
function
()
{
.
to
({
alpha
:
0
},
3000
).
call
(
function
()
{
_this
.
verseImg
.
visible
=
false
;
_this
.
verseImg
.
visible
=
false
;
_this
.
verseImg
.
alpha
=
1
;
_this
.
verseImg
.
alpha
=
1
;
_this
.
_touchEnabled
=
true
;
});
return
[
2
];
});
});
});
};
};
GameView
.
prototype
.
setTeaNum
=
function
(
TeaNums
)
{
GameView
.
prototype
.
setTeaNum
=
function
(
TeaNums
)
{
var
_this
=
this
;
var
_this
=
this
;
if
(
this
.
schedule
)
{
if
(
this
.
schedule
)
{
console
.
log
(
'清理定时器,重新设置同步'
);
clearInterval
(
this
.
schedule
);
clearInterval
(
this
.
schedule
);
}
}
var
totalNum
=
TeaNums
.
totalNum
;
var
totalNum
=
TeaNums
.
totalNum
;
var
nowNum
=
TeaNums
.
nowNum
;
var
nowNum
=
TeaNums
.
nowNum
+
1
;
this
.
pickTeaCount
.
text
=
nowNum
+
'/'
+
totalNum
;
this
.
getTeaPercentage
(
nowNum
,
totalNum
);
var
surplus
=
nowNum
-
totalNum
;
var
surplus
=
nowNum
-
totalNum
;
if
(
surplus
==
0
)
{
console
.
log
(
'达到最大长度'
);
this
.
progressbarImg
.
x
=
this
.
teaFullFlagImg
.
width
/
2
;
this
.
teaHalfFlagImg
.
visible
=
false
;
this
.
teaFullFlagImg
.
visible
=
!
this
.
teaHalfFlagImg
.
visible
;
this
.
addOneSvga
.
visible
=
!
this
.
teaHalfFlagImg
.
visible
;
this
.
addOneSvga
.
stop
();
return
;
}
console
.
log
(
'surplus'
,
surplus
);
console
.
log
(
'surplus'
,
surplus
);
var
width
=
this
.
progressbarImg
.
width
;
var
width
=
this
.
progressbarImg
.
width
;
var
myDate
=
new
Date
();
var
myDate
=
new
Date
();
var
nowData
=
myDate
.
getTime
();
var
nowData
=
myDate
.
getTime
();
var
serverData
=
TeaNums
.
serverData
;
var
serverData
=
TeaNums
.
serverData
;
var
fbdvalue
=
Math
.
abs
((
nowData
-
serverData
/
1000
));
var
fbdvalue
=
Math
.
abs
((
nowData
-
serverData
));
console
.
log
(
'fbdvalue'
,
fbdvalue
);
console
.
log
(
'fbdvalue'
,
fbdvalue
);
var
dataDiff
=
0
;
var
dataDiff
=
0
;
var
x
=
-
width
*
(
1
-
nowNum
/
totalNum
);
var
x
=
-
width
*
(
1
-
nowNum
/
totalNum
);
console
.
log
(
'x'
,
x
);
console
.
log
(
'x'
,
x
);
this
.
progressbarImg
.
x
=
parseFloat
(
x
.
toFixed
(
3
));
console
.
log
(
'parseFloat(x.toFixed(3))'
,
parseFloat
(
x
.
toFixed
(
3
)));
this
.
progressbarImg
.
x
=
parseFloat
(
x
.
toFixed
(
3
))
+
this
.
teaFullFlagImg
.
width
/
2
-
Math
.
abs
(
this
.
teaFullFlagImg
.
x
);
console
.
log
(
'this.progressbarImg.x'
,
this
.
progressbarImg
.
x
);
console
.
log
(
'this.progressbarImg.x'
,
this
.
progressbarImg
.
x
);
var
step
=
(
width
-
(
width
-
Math
.
abs
(
this
.
progressbarImg
.
x
)))
/
surplus
;
var
step
=
(
this
.
teaFullFlagImg
.
width
/
2
-
this
.
progressbarImg
.
x
)
/
surplus
;
console
.
log
(
'进图条每秒比例原始step'
,
step
);
console
.
log
(
'step'
,
step
);
step
=
parseFloat
(
step
.
toFixed
(
3
));
console
.
log
(
'进图条每秒比例step'
,
step
);
this
.
addOneSvga
.
play
(
1
,
true
);
this
.
addOneSvga
.
play
(
1
,
true
);
var
speed
=
props
.
pickTeaSpeed
;
var
speed
=
props
.
pickTeaSpeed
;
var
teaFullRotation
=
engine
.
Tween
.
get
(
this
.
teaHalfFlagImg
,
{
loop
:
true
})
var
teaFullRotation
=
engine
.
Tween
.
get
(
this
.
teaHalfFlagImg
,
{
loop
:
true
})
...
@@ -244,31 +227,32 @@
...
@@ -244,31 +227,32 @@
if
(
nowNum
==
totalNum
)
{
if
(
nowNum
==
totalNum
)
{
console
.
log
(
'达到最大长度'
);
console
.
log
(
'达到最大长度'
);
clearInterval
(
_this
.
schedule
);
clearInterval
(
_this
.
schedule
);
engine
.
Tween
.
paus
eTweens
(
teaFullRotation
);
engine
.
Tween
.
remov
eTweens
(
teaFullRotation
);
_this
.
progressbarImg
.
x
=
0
;
_this
.
progressbarImg
.
x
=
_this
.
teaFullFlagImg
.
width
/
2
;
_this
.
teaHalfFlagImg
.
visible
=
false
;
_this
.
teaHalfFlagImg
.
visible
=
false
;
_this
.
teaFullFlagImg
.
visible
=
!
_this
.
teaHalfFlagImg
.
visible
;
_this
.
teaFullFlagImg
.
visible
=
!
_this
.
teaHalfFlagImg
.
visible
;
_this
.
addOneSvga
.
visible
=
!
_this
.
teaHalfFlagImg
.
visible
;
_this
.
addOneSvga
.
visible
=
!
_this
.
teaHalfFlagImg
.
visible
;
_this
.
addOneSvga
.
stop
();
_this
.
addOneSvga
.
stop
();
}
}
if
(
_this
.
progressbarImg
.
x
<=
-
2
)
{
console
.
log
(
'nowNum'
,
nowNum
,
'totalNum'
,
totalNum
);
_this
.
getTeaPercentage
(
nowNum
,
totalNum
);
if
(
_this
.
progressbarImg
.
x
<
_this
.
teaFullFlagImg
.
width
/
2
+
step
)
{
_this
.
progressbarImg
.
x
-=
step
;
_this
.
progressbarImg
.
x
-=
step
;
}
}
_this
.
getTeaPercentage
(
nowNum
,
totalNum
);
nowNum
++
;
nowNum
++
;
dataDiff
++
;
dataDiff
+=
speed
;
myDate
=
new
Date
();
myDate
=
new
Date
();
nowData
=
myDate
.
getTime
();
nowData
=
myDate
.
getTime
();
console
.
log
(
'nowData'
);
if
(
Math
.
abs
((
nowData
-
serverData
))
-
dataDiff
>
(
fbdvalue
+
3000
))
{
console
.
log
(
nowData
);
console
.
log
(
'校准数据前后数据偏差过大'
);
console
.
log
(
'nowData - serverData) / 1000 - dataDiff'
,
(
nowData
-
serverData
)
/
1000
-
(
fbdvalue
+
dataDiff
));
console
.
log
(
Math
.
abs
((
nowData
-
serverData
))
-
dataDiff
-
(
fbdvalue
+
3000
));
if
(
Math
.
abs
((
nowData
-
serverData
)
/
1000
)
-
dataDiff
>
(
fbdvalue
+
3
))
{
clearInterval
(
_this
.
schedule
);
clearInterval
(
_this
.
schedule
);
engine
.
Tween
.
paus
eTweens
(
teaFullRotation
);
engine
.
Tween
.
remov
eTweens
(
teaFullRotation
);
engine
.
globalEvent
.
dispatchEvent
(
'event-setchange-TeaNum'
);
engine
.
globalEvent
.
dispatchEvent
(
'event-setchange-TeaNum'
);
_this
.
addOneSvga
.
visible
=
false
;
_this
.
addOneSvga
.
stop
();
return
;
return
;
}
}
console
.
log
(
'this.progressbarImg.x'
,
_this
.
progressbarImg
.
x
);
},
speed
);
},
speed
);
};
};
GameView
.
prototype
.
getTeaPercentage
=
function
(
nowNum
,
totalNum
)
{
GameView
.
prototype
.
getTeaPercentage
=
function
(
nowNum
,
totalNum
)
{
...
@@ -283,18 +267,13 @@
...
@@ -283,18 +267,13 @@
}
}
console
.
log
(
'teaPercentage'
,
teaPercentage
);
console
.
log
(
'teaPercentage'
,
teaPercentage
);
if
(
this
.
nowPercentage
!=
teaPercentage
)
{
if
(
this
.
nowPercentage
!=
teaPercentage
)
{
console
.
log
(
'状态改变'
);
this
.
nowPercentage
=
teaPercentage
;
this
.
nowPercentage
=
teaPercentage
;
this
.
updateTeaPercentage
(
teaPercentage
);
this
.
updateTeaPercentage
(
teaPercentage
);
}
}
};
};
GameView
.
prototype
.
updateTeaPercentage
=
function
(
teaPercentage
)
{
GameView
.
prototype
.
updateTeaPercentage
=
function
(
teaPercentage
)
{
if
(
teaPercentage
===
void
0
)
{
teaPercentage
=
0
;
}
if
(
teaPercentage
===
void
0
)
{
teaPercentage
=
0
;
}
console
.
log
(
'需要更换茶叶数量皮肤'
);
console
.
log
(
'延迟500ms'
);
var
pickTeaSVGA
=
this
.
basketSvgaGroup
[
1
];
var
pickTeaSVGA
=
this
.
basketSvgaGroup
[
1
];
console
.
log
(
'pickTeaSVGA'
);
console
.
log
(
pickTeaSVGA
);
pickTeaSVGA
.
removeChildAt
(
10
);
pickTeaSVGA
.
removeChildAt
(
10
);
var
originframes
=
pickTeaSVGA
.
children
[
7
];
var
originframes
=
pickTeaSVGA
.
children
[
7
];
if
(
!
originframes
)
{
if
(
!
originframes
)
{
...
@@ -309,37 +288,34 @@
...
@@ -309,37 +288,34 @@
}
}
this
.
teaHalfImg
.
visible
=
false
;
this
.
teaHalfImg
.
visible
=
false
;
this
.
teaHalfImg
[
'frames'
]
=
teaBucketframes
;
this
.
teaHalfImg
[
'frames'
]
=
teaBucketframes
;
console
.
log
(
'this.teaHalfImg'
);
console
.
log
(
this
.
teaHalfImg
);
pickTeaSVGA
.
addChildAt
(
this
.
teaHalfImg
,
10
);
pickTeaSVGA
.
addChildAt
(
this
.
teaHalfImg
,
10
);
};
};
GameView
.
prototype
.
setPickTeaLevel
=
function
(
level
)
{
GameView
.
prototype
.
setPickTeaLevel
=
function
(
level
)
{
var
_this
=
this
;
var
_this
=
this
;
console
.
log
(
'setPickTeaLevel'
,
level
);
var
pickTeaSVGA
=
this
.
basketSvgaGroup
[
level
];
var
pickTeaSVGA
=
this
.
basketSvgaGroup
[
level
];
pickTeaSVGA
.
visible
=
true
;
pickTeaSVGA
.
visible
=
true
;
setTimeout
(
function
()
{
setTimeout
(
function
()
{
console
.
log
(
'延迟500ms'
);
var
originframes
=
pickTeaSVGA
.
children
[
7
];
var
originframes
=
pickTeaSVGA
.
children
[
7
];
var
teaBucketframes
=
JSON
.
parse
(
JSON
.
stringify
(
originframes
.
frames
));
var
teaBucketframes
=
JSON
.
parse
(
JSON
.
stringify
(
originframes
.
frames
));
if
(
_this
.
teaHalfImg
)
{
if
(
_this
.
teaHalfImg
)
{
_this
.
teaHalfImg
[
'frames'
]
=
teaBucketframes
;
_this
.
teaHalfImg
[
'frames'
]
=
teaBucketframes
;
}
}
console
.
log
(
'this.teaHalfImg'
);
showLog
(
_this
.
teaHalfImg
);
console
.
log
(
_this
.
teaHalfImg
);
pickTeaSVGA
.
addChildAt
(
_this
.
teaHalfImg
,
10
);
pickTeaSVGA
.
addChildAt
(
_this
.
teaHalfImg
,
10
);
pickTeaSVGA
.
gotoAndPlay
(
1
,
true
);
pickTeaSVGA
.
gotoAndPlay
(
1
,
true
);
},
300
);
},
300
);
};
};
GameView
.
prototype
.
handGrasp
=
function
()
{
GameView
.
prototype
.
handGrasp
=
function
()
{
console
.
log
(
'handGrasp'
);
var
that
=
this
;
var
that
=
this
;
setTimeout
(
function
()
{
setTimeout
(
function
()
{
that
.
handGraspSvga
.
play
(
1
,
true
);
engine
.
Tween
.
get
(
that
.
handGraspSvga
)
engine
.
Tween
.
get
(
that
.
handGraspSvga
)
.
to
({
x
:
props
.
handGraspMovePos
[
0
],
y
:
props
.
handGraspMovePos
[
1
]
},
600
).
call
(
function
()
{
.
to
({
x
:
props
.
handGraspMovePos
[
0
],
y
:
props
.
handGraspMovePos
[
1
]
},
400
).
call
(
function
()
{
that
.
handGraspSvga
.
play
(
1
,
true
);
setTimeout
(
function
()
{
that
.
handGraspSvga
.
stop
();
that
.
handGraspSvga
.
x
=
props
.
handGraspSvgaPos
[
0
];
that
.
handGraspSvga
.
x
=
props
.
handGraspSvgaPos
[
0
];
that
.
handGraspSvga
.
y
=
props
.
handGraspSvgaPos
[
1
];
that
.
handGraspSvga
.
y
=
props
.
handGraspSvgaPos
[
1
];
},
600
);
that
.
pickTeaSvga
.
visible
=
true
;
that
.
pickTeaSvga
.
visible
=
true
;
that
.
pickTeaSvga
.
play
(
1
,
false
);
that
.
pickTeaSvga
.
play
(
1
,
false
);
});
});
...
@@ -349,12 +325,12 @@
...
@@ -349,12 +325,12 @@
});
});
that
.
teaSkyUpSvga
.
addEventListener
(
engine
.
Event
.
END_FRAME
,
function
()
{
that
.
teaSkyUpSvga
.
addEventListener
(
engine
.
Event
.
END_FRAME
,
function
()
{
that
.
teaSkyUpSvga
.
visible
=
false
;
that
.
teaSkyUpSvga
.
visible
=
false
;
that
.
updateTeaPercentage
(
0
);
});
});
},
500
);
},
500
);
};
};
return
GameView
;
return
GameView
;
}(
engine
.
Container
));
}(
engine
.
Container
));
//# sourceMappingURL=GameView.js.map
var
GameWrapper
=
(
function
(
_super
)
{
var
GameWrapper
=
(
function
(
_super
)
{
tslib
.
__extends
(
GameWrapper
,
_super
);
tslib
.
__extends
(
GameWrapper
,
_super
);
...
@@ -362,6 +338,7 @@
...
@@ -362,6 +338,7 @@
var
_this
=
_super
.
call
(
this
)
||
this
;
var
_this
=
_super
.
call
(
this
)
||
this
;
engine
.
globalEvent
.
addEventListener
(
'event-pickTeaGame-init'
,
_this
.
reset
,
_this
);
engine
.
globalEvent
.
addEventListener
(
'event-pickTeaGame-init'
,
_this
.
reset
,
_this
);
engine
.
globalEvent
.
addEventListener
(
'event-hand-grasp'
,
_this
.
handGrasp
,
_this
);
engine
.
globalEvent
.
addEventListener
(
'event-hand-grasp'
,
_this
.
handGrasp
,
_this
);
engine
.
globalEvent
.
addEventListener
(
'event-getClick-person'
,
_this
.
clickPerson
,
_this
);
engine
.
globalEvent
.
addEventListener
(
'event-getchange-TeaNum'
,
_this
.
setTeaNum
,
_this
);
engine
.
globalEvent
.
addEventListener
(
'event-getchange-TeaNum'
,
_this
.
setTeaNum
,
_this
);
engine
.
globalEvent
.
addEventListener
(
'event-getBasket-Type'
,
_this
.
setPickTeaLevel
,
_this
);
engine
.
globalEvent
.
addEventListener
(
'event-getBasket-Type'
,
_this
.
setPickTeaLevel
,
_this
);
var
gameView
=
_this
.
_gameView
=
new
GameView
();
var
gameView
=
_this
.
_gameView
=
new
GameView
();
...
@@ -376,6 +353,12 @@
...
@@ -376,6 +353,12 @@
injectProps
(
event
.
data
);
injectProps
(
event
.
data
);
this
.
_gameView
.
setPickTeaLevel
(
event
.
data
);
this
.
_gameView
.
setPickTeaLevel
(
event
.
data
);
};
};
GameWrapper
.
prototype
.
handGrasp
=
function
()
{
this
.
_gameView
.
handGrasp
();
};
GameWrapper
.
prototype
.
clickPerson
=
function
()
{
this
.
_gameView
.
showVerse
();
};
GameWrapper
.
prototype
.
reset
=
function
(
event
)
{
GameWrapper
.
prototype
.
reset
=
function
(
event
)
{
injectProps
(
event
.
data
);
injectProps
(
event
.
data
);
this
.
_gameView
.
visible
=
true
;
this
.
_gameView
.
visible
=
true
;
...
@@ -398,9 +381,6 @@
...
@@ -398,9 +381,6 @@
GameWrapper
.
prototype
.
clear
=
function
()
{
GameWrapper
.
prototype
.
clear
=
function
()
{
this
.
_gameView
.
visible
=
false
;
this
.
_gameView
.
visible
=
false
;
};
};
GameWrapper
.
prototype
.
handGrasp
=
function
()
{
this
.
_gameView
.
handGrasp
();
};
GameWrapper
.
prototype
.
onTap
=
function
(
event
)
{
GameWrapper
.
prototype
.
onTap
=
function
(
event
)
{
};
};
return
GameWrapper
;
return
GameWrapper
;
...
...
src/custom/pick-tea/debug/main.js.map
View file @
57aa8bf6
{"version":3,"file":"index.js","sources":["src/custom/pick-tea/src/props.ts","src/custom/pick-tea/src/game/utils.ts","src/custom/pick-tea/src/game/GameView.ts","src/custom/pick-tea/src/game/GameWrapper.ts","src/custom/pick-tea/src/index.ts"],"sourcesContent":["/**\r\n * Created by rockyl on 2020-01-21.\r\n */\r\n\r\nexport let props: any = {};\r\n\r\nexport function prepareProps() {\r\n\tlet metaProps = getProps();\r\n\r\n\tengine.injectProp(props, metaProps);\r\n}\r\n\r\nexport function injectProps(p) {\r\n\tengine.injectProp(props, p);\r\n}\r\n","/**\r\n * Created by rockyl on 2020-01-21.\r\n */\r\n\r\nexport function getTexture(uuid) {\r\n\treturn engine.Texture.from(getAssetByUUID(uuid).uuid);\r\n}\r\n\r\nexport function getTextureByName(name) {\r\n\treturn getTexture(engine.getAssetByName(name).uuid);\r\n}\r\n\r\nexport function playSound(name) {\r\n\tengine.playSound(engine.getAssetByName(name).uuid, {keep: true});\r\n}\r\nexport function createSvga(name, anchorName?) {\r\n\tlet inst = new svga.Svga();\r\n\tinst.source = 'asset://' + engine.getAssetByName(name).uuid;\r\n\treturn inst;\r\n}","/**\r\n * Created by rockyl on 2018/8/16.\r\n */\r\n\r\nimport { props } from \"../props\";\r\nimport { playSound, createSvga } from \"./utils\";\r\nimport ObjectPool = engine.ObjectPool;\r\nimport { getTextureByName } from \"./utils\";\r\nimport { Tealeaf } from \"./Tealeaf\";\r\n\r\nconst MAXX = -8;\r\nexport default class GameView extends engine.Container {\r\n\r\n\tprivate _hasSetup;\r\n\r\n\t/**采茶叶自定义模块*/\r\n\tprivate teaImgSource: any;\r\n\tprivate tealeaf: Tealeaf;\r\n\tprivate teaHalfImg: engine.Image;\r\n\tprivate nowPercentage: any = 0;\r\n\tprivate progressbarBgImg: engine.Image;\r\n\tprivate progressbarImg: engine.Image;\r\n\tprivate teaFullFlagImg: engine.Image;\r\n\tprivate teaHalfFlagImg: engine.Image;\r\n\tprivate teaStarImg: engine.Image;\r\n\r\n\tprivate verseImg: engine.Image;\r\n\t//采茶背景层\r\n\tprivate pickTeaBg: engine.Container;\r\n\t//采茶进度计时器\r\n\tprivate pickTeaTimer: any\r\n\t//茶叶的数量进度 100/240\r\n\tprivate pickTeaCount: engine.Label;\r\n\t//语句\r\n\tprivate verseLabel: engine.TextField;\r\n\t//篮子集合\r\n\tprivate basketSvgaGroup: any;\r\n\r\n\t//纸篮子svga\r\n\tprivate paperBasketSvga\r\n\t//布篮子svga\r\n\tprivate clothBasketSvga\r\n\t//竹篮子svga\r\n\tprivate bambooBasketSvga\r\n\t//木篮子svga\r\n\tprivate woodBasketSvga\r\n\t//+1\r\n\tprivate addOneSvga\r\n\t//采茶叶\r\n\tprivate pickTeaSvga\r\n\t//茶叶向上飞\r\n\tprivate teaSkyUpSvga\r\n\t//手抓去\r\n\tprivate handGraspSvga\r\n\r\n\r\n\r\n\t/**采茶叶自定义模块*/\r\n\r\n\t//玩家\r\n\tprivate player: engine.Container;\r\n\r\n\t//触摸层\r\n\tprivate rectBg: engine.Rect;\r\n\t//npc层\r\n\t//private NpcBg: engine.Container;\r\n\r\n\t//当前分数\r\n\tprivate score\r\n\t//游戏状态\r\n\tprivate gameIng;\r\n\t//npc出身计时器\r\n\tprivate timer\r\n\t//倒计时计时器\r\n\tprivate countdownTimer: any\r\n\t//倒计时\r\n\tprivate countdown: number\r\n\t//当前速度\r\n\tprivate speed: number\r\n\r\n\tprivate schedule: any\r\n\t// 当前场景上面的物品\r\n\tprivate goodsItems = []\r\n\r\n\r\n\tconstructor() {\r\n\t\tsuper();\r\n\t\tthis.once(engine.Event.ADDED_TO_STAGE, this.setup, this);\r\n\t}\r\n\r\n\r\n\r\n\r\n\tprivate waterSvga\r\n\tprivate boomSvga\r\n\tprivate playerSvga\r\n\tprivate _touchEnabled = true\r\n\tsetup() {\r\n\t\tif (this._hasSetup) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis._hasSetup = true;\r\n\t\tthis.pickTeaBg = new engine.Container();\r\n\r\n\t\tlet bgGroud = new engine.Image()\r\n\t\tbgGroud.source = '//yun.duiba.com.cn/aurora/assets/a988c47db8d3131faad175c7c2944773392be643.png'\r\n\t\tthis.addChild(bgGroud);\r\n\r\n\t\tthis.addChild(this.pickTeaBg);\r\n\t\tthis.teaHalfImg = new engine.Image();\r\n\r\n\t\tthis.paperBasketSvga = createSvga(\"采茶童-纸篮子\");\r\n\t\tthis.clothBasketSvga = createSvga(\"采茶童-布篮子\");\r\n\t\tthis.bambooBasketSvga = createSvga(\"采茶童-竹编篮\");\r\n\t\tthis.woodBasketSvga = createSvga(\"采茶童-木篮子\");\r\n\t\tthis.addOneSvga = createSvga(\"+1\");\r\n\t\tthis.pickTeaSvga = createSvga(\"采茶叶\");\r\n\t\tthis.teaSkyUpSvga = createSvga(\"茶叶向上飞\");\r\n\t\tthis.handGraspSvga = createSvga(\"手抓去\");\r\n\t\tthis.pickTeaBg.addChild(this.paperBasketSvga);\r\n\t\tthis.pickTeaBg.addChild(this.clothBasketSvga);\r\n\t\tthis.pickTeaBg.addChild(this.bambooBasketSvga);\r\n\t\tthis.pickTeaBg.addChild(this.woodBasketSvga);\r\n\t\tthis.pickTeaBg.addChild(this.addOneSvga);\r\n\t\tthis.pickTeaBg.addChild(this.pickTeaSvga);\r\n\t\tthis.pickTeaBg.addChild(this.teaSkyUpSvga);\r\n\t\tthis.pickTeaBg.addChild(this.handGraspSvga);\r\n\t\tthis.basketSvgaGroup = [this.paperBasketSvga, this.clothBasketSvga, this.bambooBasketSvga, this.woodBasketSvga]\r\n\r\n\t\tthis.progressbarBgImg = new engine.Image(getTextureByName('进度条底框'));\r\n\t\tthis.progressbarImg = new engine.Image(getTextureByName('进度'));\r\n\t\tthis.teaHalfFlagImg = new engine.Image(getTextureByName('茶叶进度缺'));\r\n\t\tthis.teaFullFlagImg = new engine.Image(getTextureByName('茶叶进度满'));\r\n\t\tthis.teaStarImg = new engine.Image(getTextureByName('小茶叶'));\r\n\r\n\r\n\t\tthis.verseImg = new engine.Image(getTextureByName('气泡框'));\r\n\t\tthis.pickTeaBg.addChild(this.verseImg);\r\n\r\n\r\n\t\tlet mask = new engine.Rect();\r\n\t\tmask.width = 600;\r\n\t\tmask.height = 50;\r\n\t\tmask.x = 10;\r\n\t\tmask.y = 0;\r\n\t\tmask.alpha = 1;\r\n\r\n\t\t//mask.fillColor = 'black'\r\n\r\n\t\tthis.progressbarImg.mask = mask\r\n\t\tconsole.log(this.progressbarImg.mask)\r\n\r\n\t\tthis.progressbarBgImg.addChild(this.progressbarImg);\r\n\t\tthis.progressbarBgImg.addChild(mask);\r\n\t\tconsole.log('遮罩坐标')\r\n\t\tconsole.log(mask.x, mask.y)\r\n\r\n\t\tthis.progressbarBgImg.addChild(this.teaHalfFlagImg);\r\n\t\tthis.progressbarBgImg.addChild(this.teaFullFlagImg);\r\n\t\tthis.progressbarBgImg.addChild(this.teaStarImg);\r\n\t\tthis.pickTeaCount = new engine.Label();\r\n\t\tthis.progressbarBgImg.addChild(this.pickTeaCount);\r\n\r\n\t\tthis.addChild(this.progressbarBgImg);\r\n\r\n\r\n\t\t// this.initView();\r\n\t\t// this.setPickTeaLevel(1)\r\n\r\n\t\tlet myDate = new Date();\r\n\t\tlet nowData = myDate.getTime();\r\n\t\tthis.setTeaNum({ totalNum: 430, nowNum: 0, serverData: nowData })\r\n\t\tthis.initChildrenPos();\r\n\r\n\t\tsetInterval(() => {\r\n\t\t\tthis.handGrasp();\r\n\t\t\t//this.setTeaNum({ totalNum: 430, nowNum: 120 })\r\n\t\t}, 5000)\r\n\r\n\r\n\t}\r\n\treset() {\r\n\t\tconsole.log('111111111reset1')\r\n\t\tthis.initView()\r\n\t\tsetTimeout(() =>\r\n\t\t\tthis.setPickTeaLevel(1)\r\n\t\t\t, 500)\r\n\r\n\t}\r\n\tstart() {\r\n\r\n\t}\r\n\tpause() {\r\n\t\tthis.gameIng = false;\r\n\t}\r\n\trevive() {\r\n\t\tthis.gameIng = true;\r\n\t}\r\n\r\n\tresume() {\r\n\t\tthis.reset();\r\n\t\tthis.start()\r\n\t}\r\n\r\n\tinitView() {\r\n\t\t// for (let i = 0; i < this.basketSvgaGroup.length; i++) {\r\n\t\t// \tthis.basketSvgaGroup[i].visible = false\r\n\t\t// \tthis.basketSvgaGroup[i].x = props.basketSvgaPos[0];\r\n\t\t// \tthis.basketSvgaGroup[i].y = props.basketSvgaPos[1];;\r\n\t\t// \tthis.basketSvgaGroup[i].addEventListener(engine.MouseEvent.CLICK, this.showVerse, this);\r\n\t\t// }\r\n\t\tthis.pickTeaBg.mouseEnabled = false;\r\n\t\tthis.teaHalfImg.visible = false;\r\n\t\t//this.teaHalfImg.source = '';\r\n\t\tthis.pickTeaSvga.visible = false;\r\n\t\tthis.teaSkyUpSvga.visible = false;\r\n\t\tthis.verseImg.visible = false;\r\n\t\tthis.initChildrenPos()\r\n\t}\r\n\tinitChildrenPos() {\r\n\t\tfor (let i = 0; i < this.basketSvgaGroup.length; i++) {\r\n\t\t\tthis.basketSvgaGroup[i].visible = false\r\n\t\t\tthis.basketSvgaGroup[i].x = props.basketSvgaPos[0];\r\n\t\t\tthis.basketSvgaGroup[i].y = props.basketSvgaPos[1];;\r\n\t\t\tthis.basketSvgaGroup[i].addEventListener(engine.MouseEvent.CLICK, this.showVerse, this);\r\n\t\t}\r\n\t\tthis.verseImg.x = props.versePos[0]\r\n\t\tthis.verseImg.y = props.versePos[1]\r\n\t\tthis.addOneSvga.x = props.addOneSvgaPos[0]\r\n\t\tthis.addOneSvga.y = props.addOneSvgaPos[1];\r\n\t\tthis.pickTeaSvga.x = props.pickTeaSvgaPos[0];\r\n\t\tthis.pickTeaSvga.y = props.pickTeaSvgaPos[1];\r\n\t\tthis.teaSkyUpSvga.x = props.teaSkyUpSvgaPos[0];\r\n\t\tthis.teaSkyUpSvga.y = props.teaSkyUpSvgaPos[1];\r\n\t\tthis.handGraspSvga.x = props.handGraspSvgaPos[0];\r\n\t\tthis.handGraspSvga.y = props.handGraspSvgaPos[1];\r\n\r\n\t\tthis.progressbarBgImg.x = props.progressbarBgImgPos[0]\r\n\r\n\t\tthis.progressbarBgImg.y = props.progressbarBgImgPos[1]\r\n\r\n\t\tthis.progressbarImg.x = props.progressbarImgPos[0]\r\n\t\tthis.progressbarImg.y = props.progressbarImgPos[1]\r\n\t\t//this.progressbarImg.width = 0;\r\n\r\n\t\tthis.teaHalfFlagImg.x = props.teaHalfFlagImgPos[0]\r\n\t\tthis.teaHalfFlagImg.y = props.teaHalfFlagImgPos[1]\r\n\t\tthis.teaHalfFlagImg.anchorX = this.teaHalfFlagImg.width / 2\r\n\t\tthis.teaHalfFlagImg.anchorY = this.teaHalfFlagImg.height / 2\r\n\r\n\t\tthis.teaFullFlagImg.x = props.teaHalfFlagImgPos[0]\r\n\t\tthis.teaFullFlagImg.y = props.teaHalfFlagImgPos[1]\r\n\r\n\r\n\t\tthis.teaFullFlagImg.visible = false;\r\n\r\n\t\tthis.teaStarImg.x = props.teaStarImgPos[0]\r\n\t\tthis.teaStarImg.y = props.teaStarImgPos[1]\r\n\r\n\t\tthis.pickTeaCount.fillColor = 'white';\r\n\t\tthis.pickTeaCount.size = 30;\r\n\t\tthis.pickTeaCount.text = ''\r\n\r\n\t\tthis.pickTeaCount.x = props.pickTeaCountPos[0]\r\n\t\tthis.pickTeaCount.y = props.pickTeaCountPos[1]\r\n\r\n\t\tthis.pickTeaCount.height = 50;\r\n\t\tthis.pickTeaCount.width = 200;\r\n\r\n\t\tthis.verseLabel = new engine.TextField();\r\n\t\tthis.verseLabel.size = props.verseLabel[2];\r\n\t\tthis.verseLabel.text = '11'\r\n\t\tthis.verseLabel.fillColor = props.verseColor[0]\r\n\t\tthis.verseLabel.height = props.verseLabel[1];\r\n\t\tthis.verseLabel.width = props.verseLabel[0];\r\n\t\tthis.verseLabel.strokeColor = props.verseColor[1]\r\n\t\tthis.verseLabel.stroke = 0.5;\r\n\r\n\t\tthis.verseLabel.y = 15;\r\n\t\tthis.verseLabel['textHeight'] = 14;\r\n\t\tthis.verseLabel.textAlign = engine.TEXT_ALIGN.CENTER;\r\n\t\tthis.verseImg.visible = false;\r\n\t\tthis.verseImg.addChild(this.verseLabel);\r\n\r\n\t\t// label.x = (width - label.width) / 2;\r\n\t\t// label.y = guideHole.y + guideHole.height + 50;\r\n\t}\r\n\tasync showVerse() {\r\n\t\tconsole.log('显示诗句')\r\n\t\tif (!this._touchEnabled) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis._touchEnabled = false;\r\n\t\tthis.verseImg.visible = true;\r\n\t\tlet random = Math.floor(Math.random() * 3);\r\n\t\tconsole.log('random', random)\r\n\t\tconsole.log('props.verses')\r\n\r\n\t\tconsole.log(props.verses)\r\n\t\tlet verse = props.verses[random];\r\n\t\tconsole.log('verse', verse)\r\n\t\tthis.verseLabel.text = verse;\r\n\t\tlet y = this.verseImg.y\r\n\t\tengine.Tween.get(this.verseImg)\r\n\t\t\t.to({ alpha: 0 }, 3000).call(() => {\r\n\t\t\t\tthis.verseImg.visible = false;\r\n\t\t\t\tthis.verseImg.alpha = 1\r\n\t\t\t\tthis._touchEnabled = true;\r\n\t\t\t})\r\n\t};\r\n\t/*采茶叶活动*/\r\n\t//总量除以当前 小于3分之1 没有树叶 ,3分之1到3分之2一点点树叶 ,大于3分之2满树叶\r\n\tsetTeaNum(TeaNums) {\r\n\t\tif (this.schedule) {\r\n\t\t\tconsole.log('清理定时器,重新设置同步')\r\n\t\t\tclearInterval(this.schedule);\r\n\t\t}\r\n\t\tlet totalNum = TeaNums.totalNum;\r\n\t\tlet nowNum = TeaNums.nowNum;\r\n\r\n\t\tthis.pickTeaCount.text = nowNum + '/' + totalNum;\r\n\t\tthis.getTeaPercentage(nowNum, totalNum);\r\n\t\tlet surplus = nowNum - totalNum;\r\n\t\tconsole.log('surplus', surplus);\r\n\t\tlet width = this.progressbarImg.width;\r\n\t\tlet myDate = new Date();\r\n\t\tlet nowData = myDate.getTime();\r\n\t\tlet serverData = TeaNums.serverData;\r\n\t\t//前后端本身的差值\r\n\t\tlet fbdvalue = Math.abs((nowData - serverData / 1000))\r\n\t\tconsole.log('fbdvalue', fbdvalue)\r\n\r\n\t\t/**/\r\n\t\t//设置数据校正\r\n\r\n\t\t// let serverData = 0;\r\n\t\tlet dataDiff = 0;\r\n\t\t/**/\r\n\t\t//let rate = (443 - width * (1 - nowNum / totalNum))\r\n\t\t//已经走得\r\n\t\tlet x = -width * (1 - nowNum / totalNum)\r\n\t\tconsole.log('x', x);\r\n\t\tthis.progressbarImg.x = parseFloat(x.toFixed(3));\r\n\t\tconsole.log('this.progressbarImg.x', this.progressbarImg.x)\r\n\t\tlet step = (width - (width - Math.abs(this.progressbarImg.x))) / surplus\r\n\r\n\t\tconsole.log('进图条每秒比例原始step', step)\r\n\t\tstep = parseFloat(step.toFixed(3));\r\n\t\tconsole.log('进图条每秒比例step', step)\r\n\t\tthis.addOneSvga.play(1, true);\r\n\r\n\t\tlet speed = props.pickTeaSpeed;\r\n\r\n\t\tlet teaFullRotation = engine.Tween.get(this.teaHalfFlagImg, { loop: true })\r\n\t\t\t.to({ rotation: 360 }, speed).call(() => {\r\n\t\t\t\tthis.teaHalfFlagImg.rotation = 0;\r\n\t\t\t})\r\n\t\tthis.schedule = setInterval(() => {\r\n\t\t\tif (nowNum == totalNum) {\r\n\t\t\t\tconsole.log('达到最大长度');\r\n\t\t\t\tclearInterval(this.schedule);\r\n\t\t\t\tengine.Tween.pauseTweens(teaFullRotation);\r\n\t\t\t\tthis.progressbarImg.x = 0\r\n\t\t\t\tthis.teaHalfFlagImg.visible = false;\r\n\t\t\t\tthis.teaFullFlagImg.visible = !this.teaHalfFlagImg.visible\r\n\t\t\t\tthis.addOneSvga.visible = !this.teaHalfFlagImg.visible\r\n\t\t\t\tthis.addOneSvga.stop();\r\n\t\t\t}\r\n\t\t\tif (this.progressbarImg.x <= -2) {\r\n\t\t\t\tthis.progressbarImg.x -= step;\r\n\t\t\t}\r\n\t\t\tthis.getTeaPercentage(nowNum, totalNum);\r\n\t\t\tnowNum++;\r\n\t\t\tdataDiff++;\r\n\t\t\tmyDate = new Date();\r\n\t\t\tnowData = myDate.getTime();\r\n\t\t\tconsole.log('nowData')\r\n\t\t\tconsole.log(nowData)\r\n\t\t\tconsole.log('nowData - serverData) / 1000 - dataDiff', (nowData - serverData) / 1000 - (fbdvalue + dataDiff))\r\n\r\n\t\t\tif (Math.abs((nowData - serverData) / 1000) - dataDiff > (fbdvalue + 3)) {\r\n\t\t\t\tclearInterval(this.schedule);\r\n\t\t\t\tengine.Tween.pauseTweens(teaFullRotation);\r\n\t\t\t\tengine.globalEvent.dispatchEvent('event-setchange-TeaNum');\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\tconsole.log('this.progressbarImg.x', this.progressbarImg.x)\r\n\t\t}, speed)\r\n\t}\r\n\tgetTeaPercentage(nowNum, totalNum) {\r\n\t\tthis.pickTeaCount.text = nowNum + '/' + totalNum;\r\n\t\tlet teaPercentage = 2;\r\n\t\tlet portion = totalNum / 3\r\n\t\tif (nowNum < portion) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tif (nowNum < (portion * 2)) {\r\n\t\t\tteaPercentage = 1;\r\n\t\t}\r\n\t\tconsole.log('teaPercentage', teaPercentage)\r\n\t\tif (this.nowPercentage != teaPercentage) {\r\n\t\t\tconsole.log('状态改变')\r\n\t\t\tthis.nowPercentage = teaPercentage;\r\n\t\t\tthis.updateTeaPercentage(teaPercentage);\r\n\t\t}\r\n\t}\r\n\r\n\t//需要更换茶叶数量皮肤\r\n\tupdateTeaPercentage(teaPercentage = 0) {\r\n\t\tconsole.log('需要更换茶叶数量皮肤')\r\n\t\tconsole.log('延迟500ms')\r\n\t\tlet pickTeaSVGA = this.basketSvgaGroup[1];\r\n\t\tconsole.log('pickTeaSVGA')\r\n\t\tconsole.log(pickTeaSVGA)\r\n\t\tpickTeaSVGA.removeChildAt(10);\r\n\t\tlet originframes = pickTeaSVGA.children[7];\r\n\t\tif (!originframes) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\t//按照采茶叶的多少来 设置茶叶是不是满的图片\r\n\t\tlet teaBucketframes = JSON.parse(JSON.stringify(originframes.frames));\r\n\t\t//let teaNumImg = this.teaHalfImg;\r\n\t\tif (teaPercentage == 1) {\r\n\t\t\tthis.teaHalfImg = new engine.Image(getTextureByName('茶叶-少'));\r\n\t\t}\r\n\t\telse if (teaPercentage == 2) {\r\n\t\t\tthis.teaHalfImg = new engine.Image(getTextureByName('茶叶-满'));\r\n\t\t}\r\n\t\tthis.teaHalfImg.visible = false;\r\n\t\tthis.teaHalfImg['frames'] = teaBucketframes;\r\n\r\n\t\tconsole.log('this.teaHalfImg');\r\n\t\tconsole.log(this.teaHalfImg);\r\n\t\tpickTeaSVGA.addChildAt(this.teaHalfImg, 10)\r\n\t}\r\n\r\n\tsetPickTeaLevel(level) {\r\n\t\tconsole.log('setPickTeaLevel', level);\r\n\t\tlet pickTeaSVGA = this.basketSvgaGroup[level];\r\n\t\tpickTeaSVGA.visible = true;\r\n\t\t// console.log('littleTea url')\r\n\t\t// console.log(this.teaHalfImg['_source'])\r\n\t\t//需要svga缓存结束\r\n\t\tsetTimeout(() => {\r\n\t\t\tconsole.log('延迟500ms')\r\n\t\t\tlet originframes = pickTeaSVGA.children[7];\r\n\t\t\t//按照采茶叶的多少来 设置茶叶是不是满的图片\r\n\t\t\tlet teaBucketframes = JSON.parse(JSON.stringify(originframes.frames));\r\n\t\t\t//this.teaHalfImg = //new engine.Image(getTextureByName('茶叶-少'));\r\n\t\t\tif (this.teaHalfImg) {\r\n\t\t\t\t//this.teaHalfImg.source = ''\r\n\t\t\t\tthis.teaHalfImg['frames'] = teaBucketframes;\r\n\t\t\t}\r\n\t\t\tconsole.log('this.teaHalfImg');\r\n\t\t\tconsole.log(this.teaHalfImg);\r\n\t\t\tpickTeaSVGA.addChildAt(this.teaHalfImg, 10)\r\n\t\t\tpickTeaSVGA.gotoAndPlay(1, true);\r\n\t\t}, 300)\r\n\t}\r\n\thandGrasp() {\r\n\t\tconsole.log('handGrasp')\r\n\t\tlet that = this;\r\n\t\tsetTimeout(() => {\r\n\t\t\tthat.handGraspSvga.play(1, true);\r\n\t\t\t// this.pickTeaSvga.play(1, false);\r\n\t\t\t// this.teaSkyUpSvga.play(1, false);\r\n\t\t\t//console.log('手指移动')\r\n\t\t\tengine.Tween.get(that.handGraspSvga)\r\n\t\t\t\t.to({ x: props.handGraspMovePos[0], y: props.handGraspMovePos[1] }, 600).call(() => {\r\n\t\t\t\t\tthat.handGraspSvga.x = props.handGraspSvgaPos[0];\r\n\t\t\t\t\tthat.handGraspSvga.y = props.handGraspSvgaPos[1];\r\n\t\t\t\t\t//console.log('this.pickTeaSvga.play')\r\n\t\t\t\t\t//setTimeout(() => {\r\n\t\t\t\t\tthat.pickTeaSvga.visible = true\r\n\t\t\t\t\tthat.pickTeaSvga.play(1, false);\r\n\t\t\t\t})\r\n\r\n\t\t\tthat.pickTeaSvga.addEventListener(engine.Event.END_FRAME, function () {\r\n\t\t\t\t//console.log('this.teaSkyUpSvga.play')\r\n\t\t\t\tthat.teaSkyUpSvga.visible = true\r\n\t\t\t\tthat.teaSkyUpSvga.play(1, false);\r\n\t\t\t})\r\n\r\n\t\t\tthat.teaSkyUpSvga.addEventListener(engine.Event.END_FRAME, function () {\r\n\t\t\t\tthat.teaSkyUpSvga.visible = false;\r\n\t\t\t})\r\n\r\n\t\t}, 500);\r\n\t}\r\n\t/*采茶叶活动*/\r\n}\r\n","/**\r\n * Created by rockyl on 2020-01-09.\r\n */\r\n\r\nimport GameView from \"./GameView\";\r\nimport { injectProps } from \"../props\";\r\n\r\n\r\nexport class GameWrapper extends engine.Container {\r\n\tprivate _status;\r\n\tprivate _gameView: GameView;\r\n\r\n\r\n\tconstructor() {\r\n\t\tsuper();\r\n\t\t/*\r\n\t\tevent-pickTeaGame-init //游戏初始化\r\n\t\t//event-wait-uplevel //待升级\r\n\t\tevent-add-oneScore //+1\r\n\t\tevent-pick-tea //采茶叶\r\n\t\tevent-tea-skyup //茶叶向上飞\r\n\t\tevent-hand-grasp //手抓去\r\n\t\tevent-change-TeaNum //茶叶数量 改变svga动画\r\n\t\tevent-getBasket-Type //获得篮子类型\r\n\t\tevent-setBasket-Type //设置篮子类型\r\n\t\t*/\r\n\t\t// event-getchange-TeaNum //茶叶数量{初始值totalNum,总量nowNum} 改变svga动画\r\n\t\t// event-getBasket-Type //获得篮子类型\r\n\t\t// event-hand-grasp //手抓去\r\n\r\n\t\t//event-pickTeaGame-init 游戏初始化\r\n\t\tengine.globalEvent.addEventListener('event-pickTeaGame-init', this.reset, this);\r\n\r\n\t\tengine.globalEvent.addEventListener('event-hand-grasp', this.handGrasp, this);\r\n\t\tengine.globalEvent.addEventListener('event-getchange-TeaNum', this.setTeaNum, this);\r\n\t\tengine.globalEvent.addEventListener('event-getBasket-Type', this.setPickTeaLevel, this);\r\n\r\n\r\n\r\n\r\n\t\tlet gameView = this._gameView = new GameView();\r\n\t\tthis.addChild(gameView);\r\n\t}\r\n\r\n\t//设置茶叶数量\r\n\tsetTeaNum(event: engine.Event) {\r\n\t\tinjectProps(event.data);\r\n\t\tthis._gameView.setTeaNum(event.data);\r\n\t}\r\n\r\n\t//设置茶蓝等级\r\n\tsetPickTeaLevel(event: engine.Event) {\r\n\t\tinjectProps(event.data);\r\n\t\tthis._gameView.setPickTeaLevel(event.data);\r\n\t}\r\n\r\n\treset(event: engine.Event) {\r\n\t\tinjectProps(event.data);\r\n\t\tthis._gameView.visible = true;\r\n\t\tthis._gameView.reset();\r\n\t}\r\n\r\n\r\n\tstart(event: engine.Event) {\r\n\t\tinjectProps(event.data);\r\n\t\tthis._status = 1;\r\n\t\tthis._gameView.start();\r\n\t}\r\n\r\n\tpause() {\r\n\t\tthis._gameView.pause();\r\n\t}\r\n\r\n\tresume() {\r\n\t\tthis._gameView.resume();\r\n\t}\r\n\r\n\trevive() {\r\n\t\tthis._gameView.revive();\r\n\t}\r\n\r\n\tclear() {\r\n\t\tthis._gameView.visible = false;\r\n\t}\r\n\r\n\thandGrasp() {\r\n\t\tthis._gameView.handGrasp();\r\n\t}\r\n\r\n\r\n\r\n\r\n\tprivate onTap(event) {\r\n\t\t//\tthis._gameView.tap(event);\r\n\t}\r\n}\r\n","/**\r\n * Created by rockyl on 2019-11-20.\r\n */\r\n\r\nimport {GameWrapper} from \"./game/GameWrapper\";\r\nimport {injectProps, prepareProps} from \"./props\";\r\n\r\nexport default function (props) {\r\n\tprepareProps();\r\n\tinjectProps(props);\r\n\r\n\tlet instance = new GameWrapper();\r\n\treturn instance;\r\n}\r\n"],"names":["__extends"],"mappings":"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"}
{"version":3,"file":"index.js","sources":["src/custom/pick-tea/src/props.ts","src/custom/pick-tea/src/game/utils.ts","src/custom/pick-tea/src/game/GameView.ts","src/custom/pick-tea/src/game/GameWrapper.ts","src/custom/pick-tea/src/index.ts"],"sourcesContent":["/**\r\n * Created by rockyl on 2020-01-21.\r\n */\r\n\r\nexport let props: any = {};\r\n\r\nexport function prepareProps() {\r\n\tlet metaProps = getProps();\r\n\r\n\tengine.injectProp(props, metaProps);\r\n}\r\n\r\nexport function injectProps(p) {\r\n\tengine.injectProp(props, p);\r\n}\r\n","/**\r\n * Created by rockyl on 2020-01-21.\r\n */\r\nconst showlog = false;\r\nexport function getTexture(uuid) {\r\n\treturn engine.Texture.from(getAssetByUUID(uuid).uuid);\r\n}\r\n\r\nexport function getTextureByName(name) {\r\n\treturn getTexture(engine.getAssetByName(name).uuid);\r\n}\r\n\r\nexport function playSound(name) {\r\n\tengine.playSound(engine.getAssetByName(name).uuid, { keep: true });\r\n}\r\nexport function createSvga(name, anchorName?) {\r\n\tlet inst = new svga.Svga();\r\n\tinst.source = 'asset://' + engine.getAssetByName(name).uuid;\r\n\treturn inst;\r\n}\r\nexport function showLog(abjname, obj?) {\r\n\tif (showlog) {\r\n\t\tconsole.log(abjname)\r\n\t\tif (obj)\r\n\t\t\tconsole.log(obj)\r\n\t}\r\n\t// let inst = new svga.Svga();\r\n\t// inst.source = 'asset://' + engine.getAssetByName(name).uuid;\r\n\t// return inst;\r\n}","/**\r\n * Created by rockyl on 2018/8/16.\r\n */\r\n\r\nimport { props } from \"../props\";\r\nimport { playSound, createSvga } from \"./utils\";\r\nimport ObjectPool = engine.ObjectPool;\r\nimport { getTextureByName } from \"./utils\";\r\nimport { showLog } from \"./utils\";\r\nimport { Tealeaf } from \"./Tealeaf\";\r\n\r\n\r\nconst MAXX = -8;\r\nexport default class GameView extends engine.Container {\r\n\r\n\tprivate _hasSetup;\r\n\r\n\t/**采茶叶自定义模块*/\r\n\tprivate teaImgSource: any;\r\n\tprivate tealeaf: Tealeaf;\r\n\tprivate teaHalfImg: engine.Image;\r\n\tprivate nowPercentage: any = 0;\r\n\tprivate progressbarBgImg: engine.Image;\r\n\tprivate progressbarImg: engine.Image;\r\n\tprivate teaFullFlagImg: engine.Image;\r\n\tprivate teaHalfFlagImg: engine.Image;\r\n\tprivate teaStarImg: engine.Image;\r\n\tprivate frontImg: engine.Image;\r\n\tprivate verseImg: engine.Image;\r\n\t//采茶背景层\r\n\tprivate pickTeaBg: engine.Container;\r\n\t//采茶进度计时器\r\n\tprivate pickTeaTimer: any\r\n\t//茶叶的数量进度 100/240\r\n\tprivate pickTeaCount: engine.Label;\r\n\t//语句\r\n\tprivate verseLabel: engine.TextField;\r\n\t//篮子集合\r\n\tprivate basketSvgaGroup: any;\r\n\r\n\t//纸篮子svga\r\n\tprivate paperBasketSvga\r\n\t//布篮子svga\r\n\tprivate clothBasketSvga\r\n\t//竹篮子svga\r\n\tprivate bambooBasketSvga\r\n\t//木篮子svga\r\n\tprivate woodBasketSvga\r\n\t//+1\r\n\tprivate addOneSvga\r\n\t//采茶叶\r\n\tprivate pickTeaSvga\r\n\t//茶叶向上飞\r\n\tprivate teaSkyUpSvga\r\n\t//手抓去\r\n\tprivate handGraspSvga\r\n\t//半缺旋转\r\n\tprivate teaFullRotation\r\n\r\n\r\n\t/**采茶叶自定义模块*/\r\n\r\n\t//玩家\r\n\tprivate player: engine.Container;\r\n\r\n\t//触摸层\r\n\tprivate rectBg: engine.Rect;\r\n\t//npc层\r\n\t//private NpcBg: engine.Container;\r\n\r\n\t//当前分数\r\n\tprivate score\r\n\t//游戏状态\r\n\tprivate gameIng;\r\n\t//npc出身计时器\r\n\tprivate timer\r\n\t//倒计时计时器\r\n\tprivate countdownTimer: any\r\n\t//倒计时\r\n\tprivate countdown: number\r\n\t//当前速度\r\n\tprivate speed: number\r\n\r\n\tprivate schedule: any\r\n\t// 当前场景上面的物品\r\n\tprivate goodsItems = []\r\n\r\n\r\n\tconstructor() {\r\n\t\tsuper();\r\n\t\tthis.once(engine.Event.ADDED_TO_STAGE, this.setup, this);\r\n\t}\r\n\r\n\tprivate waterSvga\r\n\tprivate boomSvga\r\n\tprivate playerSvga\r\n\tprivate _touchEnabled = true\r\n\tsetup() {\r\n\t\tif (this._hasSetup) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis._hasSetup = true;\r\n\t\tthis.pickTeaBg = new engine.Container();\r\n\r\n\t\t// let bgGroud = new engine.Image()\r\n\t\t// bgGroud.source = '//yun.duiba.com.cn/aurora/assets/a988c47db8d3131faad175c7c2944773392be643.png'\r\n\t\t// this.addChild(bgGroud);\r\n\r\n\t\tthis.addChild(this.pickTeaBg);\r\n\t\tthis.teaHalfImg = new engine.Image();\r\n\r\n\t\tthis.paperBasketSvga = createSvga(\"采茶童-纸篮子\");\r\n\t\tthis.clothBasketSvga = createSvga(\"采茶童-布篮子\");\r\n\t\tthis.bambooBasketSvga = createSvga(\"采茶童-竹编篮\");\r\n\t\tthis.woodBasketSvga = createSvga(\"采茶童-木篮子\");\r\n\t\tthis.addOneSvga = createSvga(\"+1\");\r\n\t\tthis.pickTeaSvga = createSvga(\"采茶叶\");\r\n\r\n\t\tthis.teaSkyUpSvga = createSvga(\"茶叶向上飞\");\r\n\t\tthis.handGraspSvga = createSvga(\"手抓去\");\r\n\r\n\t\tthis.frontImg = new engine.Image(getTextureByName('前景'));\r\n\r\n\t\tthis.pickTeaBg.addChild(this.paperBasketSvga);\r\n\t\tthis.pickTeaBg.addChild(this.clothBasketSvga);\r\n\t\tthis.pickTeaBg.addChild(this.bambooBasketSvga);\r\n\t\tthis.pickTeaBg.addChild(this.woodBasketSvga);\r\n\t\t//this.pickTeaBg.addChild(this.addOneSvga);\r\n\t\tthis.pickTeaBg.addChild(this.pickTeaSvga);\r\n\t\tthis.pickTeaBg.addChild(this.teaSkyUpSvga);\r\n\t\t//this.pickTeaBg.addChild(this.handGraspSvga);\r\n\t\tthis.basketSvgaGroup = [this.paperBasketSvga, this.clothBasketSvga, this.bambooBasketSvga, this.woodBasketSvga]\r\n\r\n\t\tthis.progressbarBgImg = new engine.Image(getTextureByName('进度条底框'));\r\n\t\tthis.progressbarImg = new engine.Image(getTextureByName('进度'));\r\n\t\tthis.teaHalfFlagImg = new engine.Image(getTextureByName('茶叶进度缺'));\r\n\t\tthis.teaFullFlagImg = new engine.Image(getTextureByName('茶叶进度满'));\r\n\t\tthis.teaStarImg = new engine.Image(getTextureByName('小茶叶'));\r\n\r\n\r\n\t\tthis.verseImg = new engine.Image(getTextureByName('气泡框'));\r\n\t\tthis.pickTeaBg.addChild(this.verseImg);\r\n\r\n\r\n\t\tlet mask = new engine.Rect();\r\n\t\tmask.width = 600;\r\n\t\tmask.height = 50;\r\n\t\tmask.x = 10;\r\n\t\tmask.y = 0;\r\n\t\tmask.alpha = 1;\r\n\r\n\t\t//mask.fillColor = 'black'\r\n\r\n\t\tthis.progressbarImg.mask = mask\r\n\t\tshowLog(this.progressbarImg.mask)\r\n\r\n\t\tthis.addChild(this.frontImg);\r\n\r\n\t\tthis.progressbarBgImg.addChild(this.progressbarImg);\r\n\r\n\t\tthis.progressbarBgImg.addChild(mask);\r\n\t\tshowLog('遮罩坐标')\r\n\t\tshowLog(mask.x, mask.y)\r\n\t\tthis.progressbarBgImg.addChild(this.addOneSvga);\r\n\t\tthis.progressbarBgImg.addChild(this.handGraspSvga);\r\n\r\n\t\tthis.progressbarBgImg.addChild(this.teaHalfFlagImg);\r\n\t\tthis.progressbarBgImg.addChild(this.teaFullFlagImg);\r\n\t\tthis.progressbarBgImg.addChild(this.teaStarImg);\r\n\t\tthis.pickTeaCount = new engine.Label();\r\n\t\tthis.progressbarBgImg.addChild(this.pickTeaCount);\r\n\r\n\t\tthis.addChild(this.progressbarBgImg);\r\n\t\t// let myDate = new Date();\r\n\t\t// let nowData = myDate.getTime();\r\n\t\t//this.setTeaNum({ totalNum: 430, nowNum: 425, serverData: 1585290768011 })\r\n\t\tthis.initView();\r\n\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis.setTeaNum({ totalNum: 10, nowNum: 0, serverData: 1585290768011 })\r\n\t\t\t//this.setTeaNum({ totalNum: 100, nowNum: 0 })\r\n\t\t}, 500)\r\n\r\n\r\n\t}\r\n\treset() {\r\n\t\tthis.initView()\r\n\t}\r\n\tstart() {\r\n\r\n\t}\r\n\tpause() {\r\n\t\tthis.gameIng = false;\r\n\t}\r\n\trevive() {\r\n\t\tthis.gameIng = true;\r\n\t}\r\n\r\n\tresume() {\r\n\t\tthis.reset();\r\n\t\tthis.start()\r\n\t}\r\n\r\n\tinitView() {\r\n\t\tthis.pickTeaBg.mouseEnabled = false;\r\n\t\tthis.teaHalfImg.visible = false;\r\n\t\t//this.teaHalfImg.source = '';\r\n\t\tthis.pickTeaSvga.visible = false;\r\n\t\tthis.teaSkyUpSvga.visible = false;\r\n\t\tthis.verseImg.visible = false;\r\n\t\tthis.frontImg.visible = props.showFrontImg == 1;\r\n\t\tthis.initChildrenPos()\r\n\t}\r\n\tinitChildrenPos() {\r\n\t\tfor (let i = 0; i < this.basketSvgaGroup.length; i++) {\r\n\t\t\tthis.basketSvgaGroup[i].visible = false\r\n\t\t\tthis.basketSvgaGroup[i].x = props.basketSvgaPos[0];\r\n\t\t\tthis.basketSvgaGroup[i].y = props.basketSvgaPos[1];;\r\n\t\t\t//this.basketSvgaGroup[i].addEventListener(engine.MouseEvent.CLICK, this.showVerse, this);\r\n\t\t}\r\n\t\tthis.verseImg.x = props.versePos[0]\r\n\t\tthis.verseImg.y = props.versePos[1]\r\n\t\tthis.addOneSvga.x = props.addOneSvgaPos[0]\r\n\t\tthis.addOneSvga.y = props.addOneSvgaPos[1];\r\n\t\tthis.pickTeaSvga.x = props.pickTeaSvgaPos[0];\r\n\t\tthis.pickTeaSvga.y = props.pickTeaSvgaPos[1];\r\n\r\n\t\tthis.teaSkyUpSvga.x = props.teaSkyUpSvgaPos[0];\r\n\t\tthis.teaSkyUpSvga.y = props.teaSkyUpSvgaPos[1];\r\n\r\n\t\tthis.handGraspSvga.x = props.handGraspSvgaPos[0];\r\n\t\tthis.handGraspSvga.y = props.handGraspSvgaPos[1];\r\n\r\n\t\tthis.progressbarBgImg.x = props.progressbarBgImgPos[0]\r\n\r\n\t\tthis.progressbarBgImg.y = props.progressbarBgImgPos[1]\r\n\r\n\t\tthis.progressbarImg.x = props.progressbarImgPos[0]\r\n\t\tthis.progressbarImg.y = props.progressbarImgPos[1]\r\n\r\n\t\tthis.teaHalfFlagImg.x = props.teaHalfFlagImgPos[0]\r\n\t\tthis.teaHalfFlagImg.y = props.teaHalfFlagImgPos[1]\r\n\t\tthis.teaHalfFlagImg.anchorX = this.teaHalfFlagImg.width / 2\r\n\t\tthis.teaHalfFlagImg.anchorY = this.teaHalfFlagImg.height / 2\r\n\r\n\t\tthis.teaFullFlagImg.x = props.teaHalfFlagImgPos[0]\r\n\t\tthis.teaFullFlagImg.y = props.teaHalfFlagImgPos[1]\r\n\r\n\t\tthis.frontImg.x = props.FrontImgPos[0]\r\n\t\tthis.frontImg.y = props.FrontImgPos[1]\r\n\r\n\t\tthis.teaFullFlagImg.visible = false;\r\n\r\n\t\tthis.teaStarImg.x = props.teaStarImgPos[0]\r\n\t\tthis.teaStarImg.y = props.teaStarImgPos[1]\r\n\r\n\t\tthis.pickTeaCount.fillColor = 'white';\r\n\t\tthis.pickTeaCount.size = 30;\r\n\t\tthis.pickTeaCount.text = ''\r\n\r\n\t\tthis.pickTeaCount.x = props.pickTeaCountPos[0]\r\n\t\tthis.pickTeaCount.y = props.pickTeaCountPos[1]\r\n\r\n\t\tthis.pickTeaCount.height = 50;\r\n\t\tthis.pickTeaCount.width = 200;\r\n\r\n\t\tthis.verseLabel = new engine.TextField();\r\n\t\tthis.verseLabel.size = props.verseLabel[2];\r\n\t\tthis.verseLabel.text = ''\r\n\t\tthis.verseLabel.fillColor = props.verseColor[0]\r\n\t\tthis.verseLabel.height = props.verseLabel[1];\r\n\t\tthis.verseLabel.width = props.verseLabel[0];\r\n\t\tthis.verseLabel.strokeColor = props.verseColor[1]\r\n\t\tthis.verseLabel.stroke = 0.5;\r\n\r\n\t\tthis.verseLabel.y = 15;\r\n\t\tthis.verseLabel['textHeight'] = 14;\r\n\t\tthis.verseLabel.textAlign = engine.TEXT_ALIGN.CENTER;\r\n\t\tthis.verseImg.visible = false;\r\n\t\tthis.verseImg.addChild(this.verseLabel);\r\n\r\n\t\t// label.x = (width - label.width) / 2;\r\n\t\t// label.y = guideHole.y + guideHole.height + 50;\r\n\t}\r\n\tshowVerse() {\r\n\t\tshowLog('显示诗句')\r\n\t\t// if (!this._touchEnabled) {\r\n\t\t// \treturn;\r\n\t\t// }\r\n\t\t//this._touchEnabled = false;\r\n\t\tthis.verseImg.visible = true;\r\n\t\tlet len = props.verses.length;\r\n\t\tlet random = Math.floor(Math.random() * len);\r\n\t\tshowLog('random', random)\r\n\t\tshowLog('props.verses')\r\n\t\tshowLog(props.verses)\r\n\t\tlet verse = props.verses[random];\r\n\t\tshowLog('verse', verse)\r\n\t\tthis.verseLabel.text = verse;\r\n\t\tlet y = this.verseImg.y\r\n\t\tengine.Tween.get(this.verseImg)\r\n\t\t\t.to({ alpha: 0 }, 3000).call(() => {\r\n\t\t\t\tthis.verseImg.visible = false;\r\n\t\t\t\tthis.verseImg.alpha = 1\r\n\t\t\t})\r\n\t};\r\n\t/*采茶叶活动*/\r\n\t//总量除以当前 小于3分之1 没有树叶 ,3分之1到3分之2一点点树叶 ,大于3分之2满树叶\r\n\tsetTeaNum(TeaNums) {\r\n\t\tif (this.schedule) {\r\n\t\t\tshowLog('清理定时器,重新设置同步')\r\n\t\t\tclearInterval(this.schedule);\r\n\t\t}\r\n\t\tlet totalNum = TeaNums.totalNum;\r\n\t\tlet nowNum = TeaNums.nowNum + 1\r\n\r\n\t\tlet surplus = nowNum - totalNum;\r\n\t\tif (surplus == 0) {\r\n\t\t\tconsole.log('达到最大长度');\r\n\t\t\tthis.progressbarImg.x = this.teaFullFlagImg.width / 2\r\n\t\t\tthis.teaHalfFlagImg.visible = false;\r\n\t\t\tthis.teaFullFlagImg.visible = !this.teaHalfFlagImg.visible\r\n\t\t\tthis.addOneSvga.visible = !this.teaHalfFlagImg.visible\r\n\t\t\tthis.addOneSvga.stop();\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconsole.log('surplus', surplus);\r\n\t\tlet width = this.progressbarImg.width;\r\n\t\tlet myDate = new Date();\r\n\t\tlet nowData = myDate.getTime();\r\n\t\tlet serverData = TeaNums.serverData;\r\n\t\t//前后端本身的差值\r\n\t\tlet fbdvalue = Math.abs((nowData - serverData))\r\n\t\tconsole.log('fbdvalue', fbdvalue)\r\n\t\t/**/\r\n\t\t//设置数据校正\r\n\t\t// let serverData = 0;\r\n\t\tlet dataDiff = 0;\r\n\t\t/**/\r\n\t\t//let rate = (443 - width * (1 - nowNum / totalNum))\r\n\t\t//已经走得\r\n\t\tlet x = -width * (1 - nowNum / totalNum)\r\n\t\tconsole.log('x', x);\r\n\t\tconsole.log('parseFloat(x.toFixed(3))', parseFloat(x.toFixed(3)))\r\n\r\n\t\tthis.progressbarImg.x = parseFloat(x.toFixed(3)) + this.teaFullFlagImg.width / 2 - Math.abs(this.teaFullFlagImg.x)//)//this.teaFullFlagImg.width - Math.abs(this.teaFullFlagImg.x)\r\n\t\tconsole.log('this.progressbarImg.x', this.progressbarImg.x)\r\n\r\n\t\tlet step = (this.teaFullFlagImg.width / 2 - this.progressbarImg.x) / surplus\r\n\r\n\t\tconsole.log('step', step)\r\n\t\t//step = parseFloat(step.toFixed(6));\r\n\t\t//console.log('进图条每秒比例step', step)\r\n\t\tthis.addOneSvga.play(1, true);\r\n\r\n\t\tlet speed = props.pickTeaSpeed;\r\n\t\t//this.progressbarImg.x += step;\r\n\t\tlet teaFullRotation = engine.Tween.get(this.teaHalfFlagImg, { loop: true })\r\n\t\t\t.to({ rotation: 360 }, speed).call(() => {\r\n\t\t\t\tthis.teaHalfFlagImg.rotation = 0;\r\n\t\t\t})\r\n\t\tthis.schedule = setInterval(() => {\r\n\t\t\tif (nowNum == totalNum) {\r\n\t\t\t\tconsole.log('达到最大长度');\r\n\t\t\t\tclearInterval(this.schedule);\r\n\t\t\t\tengine.Tween.removeTweens(teaFullRotation);\r\n\t\t\t\tthis.progressbarImg.x = this.teaFullFlagImg.width / 2\r\n\t\t\t\tthis.teaHalfFlagImg.visible = false;\r\n\t\t\t\tthis.teaFullFlagImg.visible = !this.teaHalfFlagImg.visible\r\n\t\t\t\tthis.addOneSvga.visible = !this.teaHalfFlagImg.visible\r\n\t\t\t\tthis.addOneSvga.stop();\r\n\t\t\t}\r\n\t\t\tconsole.log('nowNum', nowNum, 'totalNum', totalNum)\r\n\t\t\tthis.getTeaPercentage(nowNum, totalNum);\r\n\t\t\tif (this.progressbarImg.x < this.teaFullFlagImg.width / 2 + step) {\r\n\t\t\t\tthis.progressbarImg.x -= step;\r\n\t\t\t}\r\n\t\t\tnowNum++;\r\n\t\t\tdataDiff += speed;\r\n\t\t\tmyDate = new Date();\r\n\t\t\tnowData = myDate.getTime();\r\n\r\n\t\t\tif (Math.abs((nowData - serverData)) - dataDiff > (fbdvalue + 3000)) {\r\n\t\t\t\tconsole.log('校准数据前后数据偏差过大');\r\n\t\t\t\tconsole.log(Math.abs((nowData - serverData)) - dataDiff - (fbdvalue + 3000))\r\n\t\t\t\tclearInterval(this.schedule);\r\n\t\t\t\tengine.Tween.removeTweens(teaFullRotation);\r\n\t\t\t\tengine.globalEvent.dispatchEvent('event-setchange-TeaNum');\r\n\t\t\t\tthis.addOneSvga.visible = false;\r\n\t\t\t\tthis.addOneSvga.stop();\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t}, speed)\r\n\t}\r\n\tgetTeaPercentage(nowNum, totalNum) {\r\n\t\tthis.pickTeaCount.text = nowNum + '/' + totalNum;\r\n\t\tlet teaPercentage = 2;\r\n\t\tlet portion = totalNum / 3\r\n\t\tif (nowNum < portion) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tif (nowNum < (portion * 2)) {\r\n\t\t\tteaPercentage = 1;\r\n\t\t}\r\n\t\tconsole.log('teaPercentage', teaPercentage)\r\n\t\tif (this.nowPercentage != teaPercentage) {\r\n\t\t\tshowLog('状态改变')\r\n\t\t\tthis.nowPercentage = teaPercentage;\r\n\t\t\tthis.updateTeaPercentage(teaPercentage);\r\n\t\t}\r\n\t}\r\n\r\n\t//需要更换茶叶数量皮肤\r\n\tupdateTeaPercentage(teaPercentage = 0) {\r\n\t\tshowLog('需要更换茶叶数量皮肤')\r\n\t\tshowLog('延迟500ms')\r\n\t\tlet pickTeaSVGA = this.basketSvgaGroup[1];\r\n\t\tshowLog('pickTeaSVGA')\r\n\t\tshowLog(pickTeaSVGA)\r\n\t\tpickTeaSVGA.removeChildAt(10);\r\n\t\tlet originframes = pickTeaSVGA.children[7];\r\n\t\tif (!originframes) {\r\n\t\t\treturn;\r\n\t\t}\r\n\t\t//按照采茶叶的多少来 设置茶叶是不是满的图片\r\n\t\tlet teaBucketframes = JSON.parse(JSON.stringify(originframes.frames));\r\n\t\t//let teaNumImg = this.teaHalfImg;\r\n\t\tif (teaPercentage == 1) {\r\n\t\t\tthis.teaHalfImg = new engine.Image(getTextureByName('茶叶-少'));\r\n\t\t}\r\n\t\telse if (teaPercentage == 2) {\r\n\t\t\tthis.teaHalfImg = new engine.Image(getTextureByName('茶叶-满'));\r\n\t\t}\r\n\t\tthis.teaHalfImg.visible = false;\r\n\t\tthis.teaHalfImg['frames'] = teaBucketframes;\r\n\r\n\t\t//showLog('this.teaHalfImg');\r\n\t\t//showLog(this.teaHalfImg);\r\n\t\tpickTeaSVGA.addChildAt(this.teaHalfImg, 10)\r\n\t}\r\n\r\n\tsetPickTeaLevel(level) {\r\n\t\tshowLog('setPickTeaLevel', level);\r\n\t\tlet pickTeaSVGA = this.basketSvgaGroup[level];\r\n\t\tpickTeaSVGA.visible = true;\r\n\t\t//showLog('littleTea url')\r\n\t\t//showLog(this.teaHalfImg['_source'])\r\n\t\t//需要svga缓存结束\r\n\t\tsetTimeout(() => {\r\n\t\t\tshowLog('延迟500ms')\r\n\t\t\tlet originframes = pickTeaSVGA.children[7];\r\n\t\t\t//按照采茶叶的多少来 设置茶叶是不是满的图片\r\n\t\t\tlet teaBucketframes = JSON.parse(JSON.stringify(originframes.frames));\r\n\t\t\t//this.teaHalfImg = //new engine.Image(getTextureByName('茶叶-少'));\r\n\t\t\tif (this.teaHalfImg) {\r\n\t\t\t\t//this.teaHalfImg.source = ''\r\n\t\t\t\tthis.teaHalfImg['frames'] = teaBucketframes;\r\n\t\t\t}\r\n\t\t\tshowLog('this.teaHalfImg');\r\n\t\t\tshowLog(this.teaHalfImg);\r\n\t\t\tpickTeaSVGA.addChildAt(this.teaHalfImg, 10)\r\n\t\t\tpickTeaSVGA.gotoAndPlay(1, true);\r\n\t\t}, 300)\r\n\t}\r\n\thandGrasp() {\r\n\t\tshowLog('handGrasp')\r\n\t\tlet that = this;\r\n\t\tsetTimeout(() => {\r\n\t\t\t//that.handGraspSvga.play(1, true);\r\n\t\t\t// this.pickTeaSvga.play(1, false);\r\n\t\t\t// this.teaSkyUpSvga.play(1, false);\r\n\t\t\tengine.Tween.get(that.handGraspSvga)\r\n\t\t\t\t.to({ x: props.handGraspMovePos[0], y: props.handGraspMovePos[1] }, 400).call(() => {\r\n\t\t\t\t\tshowLog('this.pickTeaSvga.play')\r\n\t\t\t\t\tthat.handGraspSvga.play(1, true);\r\n\t\t\t\t\tsetTimeout(() => {\r\n\t\t\t\t\t\tthat.handGraspSvga.stop()\r\n\t\t\t\t\t\tthat.handGraspSvga.x = props.handGraspSvgaPos[0];\r\n\t\t\t\t\t\tthat.handGraspSvga.y = props.handGraspSvgaPos[1];\r\n\t\t\t\t\t}, 600)\r\n\t\t\t\t\tthat.pickTeaSvga.visible = true\r\n\t\t\t\t\tthat.pickTeaSvga.play(1, false);\r\n\t\t\t\t})\r\n\r\n\t\t\tthat.pickTeaSvga.addEventListener(engine.Event.END_FRAME, function () {\r\n\t\t\t\tshowLog('this.teaSkyUpSvga.play')\r\n\t\t\t\tthat.teaSkyUpSvga.visible = true\r\n\t\t\t\tthat.teaSkyUpSvga.play(1, false);\r\n\t\t\t})\r\n\r\n\t\t\tthat.teaSkyUpSvga.addEventListener(engine.Event.END_FRAME, function () {\r\n\t\t\t\tthat.teaSkyUpSvga.visible = false;\r\n\t\t\t\tthat.updateTeaPercentage(0);\r\n\t\t\t})\r\n\r\n\t\t}, 500);\r\n\t}\r\n\r\n\t/*采茶叶活动*/\r\n}\r\n","/**\r\n * Created by rockyl on 2020-01-09.\r\n */\r\n\r\nimport GameView from \"./GameView\";\r\nimport { injectProps } from \"../props\";\r\n\r\n\r\nexport class GameWrapper extends engine.Container {\r\n\tprivate _status;\r\n\tprivate _gameView: GameView;\r\n\r\n\r\n\tconstructor() {\r\n\t\tsuper();\r\n\t\t/*\r\n\t\tevent-pickTeaGame-init //游戏初始化\r\n\t\t//event-wait-uplevel //待升级\r\n\t\tevent-add-oneScore //+1\r\n\t\tevent-pick-tea //采茶叶\r\n\t\tevent-tea-skyup //茶叶向上飞\r\n\t\tevent-hand-grasp //手抓去\r\n\t\tevent-change-TeaNum //茶叶数量 改变svga动画\r\n\t\tevent-getBasket-Type //获得篮子类型\r\n\t\tevent-setBasket-Type //设置篮子类型\r\n\t\t*/\r\n\t\t// event-getchange-TeaNum //茶叶数量{初始值totalNum,总量nowNum} 改变svga动画\r\n\t\t// event-getBasket-Type //获得篮子类型\r\n\t\t// event-hand-grasp //手抓去\r\n\r\n\t\t//event-pickTeaGame-init 游戏初始化\r\n\t\tengine.globalEvent.addEventListener('event-pickTeaGame-init', this.reset, this);\r\n\r\n\t\tengine.globalEvent.addEventListener('event-hand-grasp', this.handGrasp, this);\r\n\t\tengine.globalEvent.addEventListener('event-getClick-person', this.clickPerson, this);\r\n\t\tengine.globalEvent.addEventListener('event-getchange-TeaNum', this.setTeaNum, this);\r\n\t\tengine.globalEvent.addEventListener('event-getBasket-Type', this.setPickTeaLevel, this);\r\n\r\n\r\n\r\n\t\tlet gameView = this._gameView = new GameView();\r\n\t\tthis.addChild(gameView);\r\n\t}\r\n\r\n\t//设置茶叶数量\r\n\tsetTeaNum(event: engine.Event) {\r\n\t\tinjectProps(event.data);\r\n\t\tthis._gameView.setTeaNum(event.data);\r\n\t}\r\n\r\n\t//设置茶蓝等级\r\n\tsetPickTeaLevel(event: engine.Event) {\r\n\t\tinjectProps(event.data);\r\n\t\tthis._gameView.setPickTeaLevel(event.data);\r\n\t}\r\n\t\r\n\thandGrasp() {\r\n\t\tthis._gameView.handGrasp();\r\n\t}\r\n\t//点击人物\r\n\tclickPerson() {\r\n\t\tthis._gameView.showVerse();\r\n\t}\r\n\treset(event: engine.Event) {\r\n\t\tinjectProps(event.data);\r\n\t\tthis._gameView.visible = true;\r\n\t\tthis._gameView.reset();\r\n\t}\r\n\r\n\r\n\tstart(event: engine.Event) {\r\n\t\tinjectProps(event.data);\r\n\t\tthis._status = 1;\r\n\t\tthis._gameView.start();\r\n\t}\r\n\r\n\tpause() {\r\n\t\tthis._gameView.pause();\r\n\t}\r\n\r\n\tresume() {\r\n\t\tthis._gameView.resume();\r\n\t}\r\n\r\n\trevive() {\r\n\t\tthis._gameView.revive();\r\n\t}\r\n\r\n\tclear() {\r\n\t\tthis._gameView.visible = false;\r\n\t}\r\n\r\n\r\n\r\n\r\n\r\n\tprivate onTap(event) {\r\n\t\t//\tthis._gameView.tap(event);\r\n\t}\r\n}\r\n","/**\r\n * Created by rockyl on 2019-11-20.\r\n */\r\n\r\nimport {GameWrapper} from \"./game/GameWrapper\";\r\nimport {injectProps, prepareProps} from \"./props\";\r\n\r\nexport default function (props) {\r\n\tprepareProps();\r\n\tinjectProps(props);\r\n\r\n\tlet instance = new GameWrapper();\r\n\treturn instance;\r\n}\r\n"],"names":["__extends"],"mappings":"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"}
\ No newline at end of file
\ No newline at end of file
src/custom/pick-tea/meta.json
View file @
57aa8bf6
{
{
"name"
:
"采茶叶"
,
"name"
:
"采茶叶"
,
"desc"
:
"采茶叶模
块
"
,
"desc"
:
"采茶叶模
左上角0,0点
"
,
"props"
:
{
"props"
:
{
"versePos"
:
{
"versePos"
:
{
"alias"
:
"诗句的起始位置"
,
"alias"
:
"诗句的起始位置"
,
...
@@ -10,7 +10,7 @@
...
@@ -10,7 +10,7 @@
"verses"
:
{
"verses"
:
{
"alias"
:
"诗句"
,
"alias"
:
"诗句"
,
"type"
:
"array<string>"
,
"type"
:
"array<string>"
,
"default"
:
"今
朝有酒今朝醉,今宵更有湘江月,找出霏霏满碗花,雨过林霏清石气,秋将山翠入诗心,生怕芳丛鹰嘴芽,老郎封寄谪仙家
"
"default"
:
"今
宵更有湘江月,照出霏霏满碗花,雨过林霏清石气,秋将山翠入诗心
"
},
},
"verseLabel"
:
{
"verseLabel"
:
{
"alias"
:
"提示语框xys"
,
"alias"
:
"提示语框xys"
,
...
@@ -22,6 +22,16 @@
...
@@ -22,6 +22,16 @@
"type"
:
"array<string>"
,
"type"
:
"array<string>"
,
"default"
:
"#33628b,#99b1c5"
"default"
:
"#33628b,#99b1c5"
},
},
"showFrontImg"
:
{
"alias"
:
"茶叶前景图1显示2隐藏"
,
"type"
:
"number"
,
"default"
:
"1"
},
"FrontImgPos"
:
{
"alias"
:
"茶叶前景图位置"
,
"type"
:
"array<number>"
,
"default"
:
"0,584"
},
"pickTeaSpeed"
:
{
"pickTeaSpeed"
:
{
"alias"
:
"采集茶叶的速度ms"
,
"alias"
:
"采集茶叶的速度ms"
,
"type"
:
"number"
,
"type"
:
"number"
,
...
@@ -30,12 +40,12 @@
...
@@ -30,12 +40,12 @@
"basketSvgaPos"
:
{
"basketSvgaPos"
:
{
"alias"
:
"人物的位置"
,
"alias"
:
"人物的位置"
,
"type"
:
"array<number>"
,
"type"
:
"array<number>"
,
"default"
:
"110,4
2
0"
"default"
:
"110,4
1
0"
},
},
"addOneSvgaPos"
:
{
"addOneSvgaPos"
:
{
"alias"
:
"+1SVGA的位置"
,
"alias"
:
"+1SVGA的位置"
,
"type"
:
"array<number>"
,
"type"
:
"array<number>"
,
"default"
:
"
70,72
0"
"default"
:
"
0,-10
0"
},
},
"pickTeaSvgaPos"
:
{
"pickTeaSvgaPos"
:
{
"alias"
:
"采茶叶SVGA的位置"
,
"alias"
:
"采茶叶SVGA的位置"
,
...
@@ -50,12 +60,12 @@
...
@@ -50,12 +60,12 @@
"handGraspSvgaPos"
:
{
"handGraspSvgaPos"
:
{
"alias"
:
"手点击SVGA的位置"
,
"alias"
:
"手点击SVGA的位置"
,
"type"
:
"array<number>"
,
"type"
:
"array<number>"
,
"default"
:
"
543,791
"
"default"
:
"
477,-29
"
},
},
"handGraspMovePos"
:
{
"handGraspMovePos"
:
{
"alias"
:
"手点击移动的位置"
,
"alias"
:
"手点击移动的位置"
,
"type"
:
"array<number>"
,
"type"
:
"array<number>"
,
"default"
:
"
460,700
"
"default"
:
"
372,-145
"
},
},
"progressbarBgImgPos"
:
{
"progressbarBgImgPos"
:
{
"alias"
:
"进度条底图的位置"
,
"alias"
:
"进度条底图的位置"
,
...
@@ -65,7 +75,7 @@
...
@@ -65,7 +75,7 @@
"progressbarImgPos"
:
{
"progressbarImgPos"
:
{
"alias"
:
"进度条的位置"
,
"alias"
:
"进度条的位置"
,
"type"
:
"array<number>"
,
"type"
:
"array<number>"
,
"default"
:
"-
443
,4"
"default"
:
"-
335
,4"
},
},
"teaStarImgPos"
:
{
"teaStarImgPos"
:
{
"alias"
:
"小茶叶的位置"
,
"alias"
:
"小茶叶的位置"
,
...
@@ -84,6 +94,12 @@
...
@@ -84,6 +94,12 @@
}
}
},
},
"assets"
:
[
"assets"
:
[
{
"name"
:
"前景"
,
"url"
:
"//yun.duiba.com.cn/aurora/assets/1da0ea14267ff35f90f49c22deb1b34181571e90.png"
,
"uuid"
:
"9f5db57e-47f9-43e5-af80-adf41299280d"
,
"ext"
:
".png"
},
{
{
"name"
:
"气泡框"
,
"name"
:
"气泡框"
,
"url"
:
"//yun.duiba.com.cn/aurora/assets/585743f25262b6992ac97015e22d91054d506821.png"
,
"url"
:
"//yun.duiba.com.cn/aurora/assets/585743f25262b6992ac97015e22d91054d506821.png"
,
...
@@ -98,7 +114,7 @@
...
@@ -98,7 +114,7 @@
},
},
{
{
"name"
:
"进度"
,
"name"
:
"进度"
,
"url"
:
"//yun.duiba.com.cn/aurora/assets/
047218962662ed238192f211719c109fa107e8e1
.png"
,
"url"
:
"//yun.duiba.com.cn/aurora/assets/
afb6b2655838ea955d250663fc535cc166b466e7
.png"
,
"uuid"
:
"23e7861c-75a9-46bd-93f8-2825d4810d31"
,
"uuid"
:
"23e7861c-75a9-46bd-93f8-2825d4810d31"
,
"ext"
:
".png"
"ext"
:
".png"
},
},
...
@@ -190,22 +206,25 @@
...
@@ -190,22 +206,25 @@
"events"
:
{
"events"
:
{
"in"
:
{
"in"
:
{
"event-getchange-TeaNum"
:
{
"event-getchange-TeaNum"
:
{
"alias"
:
"茶叶数量{初始值
totalNum,总量nowNum
} "
"alias"
:
"茶叶数量{初始值
nowNum,总量totalNum,后端时间serverData
} "
},
},
"event-getBasket-Type"
:
{
"event-getBasket-Type"
:
{
"alias"
:
"获得篮子类型"
"alias"
:
"获得篮子类型
(纸 布 竹 木)0 1 2 3
"
},
},
"event-hand-grasp"
:
{
"event-hand-grasp"
:
{
"alias"
:
"手抓去"
"alias"
:
"手抓去"
},
"event-getClick-person"
:
{
"alias"
:
"点击人物"
}
}
},
},
"out"
:
{
"out"
:
{
"event-setchange-TeaNum"
:
{
"event-setchange-TeaNum"
:
{
"alias"
:
""
,
"alias"
:
"
获取茶叶数量{初始值nowNum,总量totalNum,后端时间serverData}
"
,
"data"
:
{}
"data"
:
{}
},
},
"event-setBasket-Typ"
:
{
"event-setBasket-Typ"
:
{
"alias"
:
""
,
"alias"
:
"
获得篮子类型(纸 布 竹 木)0 1 2 3
"
,
"data"
:
{}
"data"
:
{}
}
}
}
}
...
...
src/custom/pick-tea/src/game/GameView.ts
View file @
57aa8bf6
...
@@ -6,8 +6,10 @@ import { props } from "../props";
...
@@ -6,8 +6,10 @@ import { props } from "../props";
import
{
playSound
,
createSvga
}
from
"./utils"
;
import
{
playSound
,
createSvga
}
from
"./utils"
;
import
ObjectPool
=
engine
.
ObjectPool
;
import
ObjectPool
=
engine
.
ObjectPool
;
import
{
getTextureByName
}
from
"./utils"
;
import
{
getTextureByName
}
from
"./utils"
;
import
{
showLog
}
from
"./utils"
;
import
{
Tealeaf
}
from
"./Tealeaf"
;
import
{
Tealeaf
}
from
"./Tealeaf"
;
const
MAXX
=
-
8
;
const
MAXX
=
-
8
;
export
default
class
GameView
extends
engine
.
Container
{
export
default
class
GameView
extends
engine
.
Container
{
...
@@ -23,7 +25,7 @@ export default class GameView extends engine.Container {
...
@@ -23,7 +25,7 @@ export default class GameView extends engine.Container {
private
teaFullFlagImg
:
engine
.
Image
;
private
teaFullFlagImg
:
engine
.
Image
;
private
teaHalfFlagImg
:
engine
.
Image
;
private
teaHalfFlagImg
:
engine
.
Image
;
private
teaStarImg
:
engine
.
Image
;
private
teaStarImg
:
engine
.
Image
;
private
frontImg
:
engine
.
Image
;
private
verseImg
:
engine
.
Image
;
private
verseImg
:
engine
.
Image
;
//采茶背景层
//采茶背景层
private
pickTeaBg
:
engine
.
Container
;
private
pickTeaBg
:
engine
.
Container
;
...
@@ -52,7 +54,8 @@ export default class GameView extends engine.Container {
...
@@ -52,7 +54,8 @@ export default class GameView extends engine.Container {
private
teaSkyUpSvga
private
teaSkyUpSvga
//手抓去
//手抓去
private
handGraspSvga
private
handGraspSvga
//半缺旋转
private
teaFullRotation
/**采茶叶自定义模块*/
/**采茶叶自定义模块*/
...
@@ -88,9 +91,6 @@ export default class GameView extends engine.Container {
...
@@ -88,9 +91,6 @@ export default class GameView extends engine.Container {
this
.
once
(
engine
.
Event
.
ADDED_TO_STAGE
,
this
.
setup
,
this
);
this
.
once
(
engine
.
Event
.
ADDED_TO_STAGE
,
this
.
setup
,
this
);
}
}
private
waterSvga
private
waterSvga
private
boomSvga
private
boomSvga
private
playerSvga
private
playerSvga
...
@@ -102,9 +102,9 @@ export default class GameView extends engine.Container {
...
@@ -102,9 +102,9 @@ export default class GameView extends engine.Container {
this
.
_hasSetup
=
true
;
this
.
_hasSetup
=
true
;
this
.
pickTeaBg
=
new
engine
.
Container
();
this
.
pickTeaBg
=
new
engine
.
Container
();
let
bgGroud
=
new
engine
.
Image
()
//
let bgGroud = new engine.Image()
bgGroud
.
source
=
'//yun.duiba.com.cn/aurora/assets/a988c47db8d3131faad175c7c2944773392be643.png'
//
bgGroud.source = '//yun.duiba.com.cn/aurora/assets/a988c47db8d3131faad175c7c2944773392be643.png'
this
.
addChild
(
bgGroud
);
//
this.addChild(bgGroud);
this
.
addChild
(
this
.
pickTeaBg
);
this
.
addChild
(
this
.
pickTeaBg
);
this
.
teaHalfImg
=
new
engine
.
Image
();
this
.
teaHalfImg
=
new
engine
.
Image
();
...
@@ -115,16 +115,20 @@ export default class GameView extends engine.Container {
...
@@ -115,16 +115,20 @@ export default class GameView extends engine.Container {
this
.
woodBasketSvga
=
createSvga
(
"采茶童-木篮子"
);
this
.
woodBasketSvga
=
createSvga
(
"采茶童-木篮子"
);
this
.
addOneSvga
=
createSvga
(
"+1"
);
this
.
addOneSvga
=
createSvga
(
"+1"
);
this
.
pickTeaSvga
=
createSvga
(
"采茶叶"
);
this
.
pickTeaSvga
=
createSvga
(
"采茶叶"
);
this
.
teaSkyUpSvga
=
createSvga
(
"茶叶向上飞"
);
this
.
teaSkyUpSvga
=
createSvga
(
"茶叶向上飞"
);
this
.
handGraspSvga
=
createSvga
(
"手抓去"
);
this
.
handGraspSvga
=
createSvga
(
"手抓去"
);
this
.
frontImg
=
new
engine
.
Image
(
getTextureByName
(
'前景'
));
this
.
pickTeaBg
.
addChild
(
this
.
paperBasketSvga
);
this
.
pickTeaBg
.
addChild
(
this
.
paperBasketSvga
);
this
.
pickTeaBg
.
addChild
(
this
.
clothBasketSvga
);
this
.
pickTeaBg
.
addChild
(
this
.
clothBasketSvga
);
this
.
pickTeaBg
.
addChild
(
this
.
bambooBasketSvga
);
this
.
pickTeaBg
.
addChild
(
this
.
bambooBasketSvga
);
this
.
pickTeaBg
.
addChild
(
this
.
woodBasketSvga
);
this
.
pickTeaBg
.
addChild
(
this
.
woodBasketSvga
);
this
.
pickTeaBg
.
addChild
(
this
.
addOneSvga
);
//
this.pickTeaBg.addChild(this.addOneSvga);
this
.
pickTeaBg
.
addChild
(
this
.
pickTeaSvga
);
this
.
pickTeaBg
.
addChild
(
this
.
pickTeaSvga
);
this
.
pickTeaBg
.
addChild
(
this
.
teaSkyUpSvga
);
this
.
pickTeaBg
.
addChild
(
this
.
teaSkyUpSvga
);
this
.
pickTeaBg
.
addChild
(
this
.
handGraspSvga
);
//
this.pickTeaBg.addChild(this.handGraspSvga);
this
.
basketSvgaGroup
=
[
this
.
paperBasketSvga
,
this
.
clothBasketSvga
,
this
.
bambooBasketSvga
,
this
.
woodBasketSvga
]
this
.
basketSvgaGroup
=
[
this
.
paperBasketSvga
,
this
.
clothBasketSvga
,
this
.
bambooBasketSvga
,
this
.
woodBasketSvga
]
this
.
progressbarBgImg
=
new
engine
.
Image
(
getTextureByName
(
'进度条底框'
));
this
.
progressbarBgImg
=
new
engine
.
Image
(
getTextureByName
(
'进度条底框'
));
...
@@ -148,12 +152,17 @@ export default class GameView extends engine.Container {
...
@@ -148,12 +152,17 @@ export default class GameView extends engine.Container {
//mask.fillColor = 'black'
//mask.fillColor = 'black'
this
.
progressbarImg
.
mask
=
mask
this
.
progressbarImg
.
mask
=
mask
console
.
log
(
this
.
progressbarImg
.
mask
)
showLog
(
this
.
progressbarImg
.
mask
)
this
.
addChild
(
this
.
frontImg
);
this
.
progressbarBgImg
.
addChild
(
this
.
progressbarImg
);
this
.
progressbarBgImg
.
addChild
(
this
.
progressbarImg
);
this
.
progressbarBgImg
.
addChild
(
mask
);
this
.
progressbarBgImg
.
addChild
(
mask
);
console
.
log
(
'遮罩坐标'
)
showLog
(
'遮罩坐标'
)
console
.
log
(
mask
.
x
,
mask
.
y
)
showLog
(
mask
.
x
,
mask
.
y
)
this
.
progressbarBgImg
.
addChild
(
this
.
addOneSvga
);
this
.
progressbarBgImg
.
addChild
(
this
.
handGraspSvga
);
this
.
progressbarBgImg
.
addChild
(
this
.
teaHalfFlagImg
);
this
.
progressbarBgImg
.
addChild
(
this
.
teaHalfFlagImg
);
this
.
progressbarBgImg
.
addChild
(
this
.
teaFullFlagImg
);
this
.
progressbarBgImg
.
addChild
(
this
.
teaFullFlagImg
);
...
@@ -162,30 +171,20 @@ export default class GameView extends engine.Container {
...
@@ -162,30 +171,20 @@ export default class GameView extends engine.Container {
this
.
progressbarBgImg
.
addChild
(
this
.
pickTeaCount
);
this
.
progressbarBgImg
.
addChild
(
this
.
pickTeaCount
);
this
.
addChild
(
this
.
progressbarBgImg
);
this
.
addChild
(
this
.
progressbarBgImg
);
// let myDate = new Date();
// let nowData = myDate.getTime();
//this.setTeaNum({ totalNum: 430, nowNum: 425, serverData: 1585290768011 })
this
.
initView
();
setTimeout
(()
=>
{
// this.initView();
this
.
setTeaNum
({
totalNum
:
10
,
nowNum
:
0
,
serverData
:
1585290768011
})
// this.setPickTeaLevel(1)
//this.setTeaNum({ totalNum: 100, nowNum: 0 })
},
500
)
let
myDate
=
new
Date
();
let
nowData
=
myDate
.
getTime
();
this
.
setTeaNum
({
totalNum
:
430
,
nowNum
:
0
,
serverData
:
nowData
})
this
.
initChildrenPos
();
setInterval
(()
=>
{
this
.
handGrasp
();
//this.setTeaNum({ totalNum: 430, nowNum: 120 })
},
5000
)
}
}
reset
()
{
reset
()
{
console
.
log
(
'111111111reset1'
)
this
.
initView
()
this
.
initView
()
setTimeout
(()
=>
this
.
setPickTeaLevel
(
1
)
,
500
)
}
}
start
()
{
start
()
{
...
@@ -203,18 +202,13 @@ export default class GameView extends engine.Container {
...
@@ -203,18 +202,13 @@ export default class GameView extends engine.Container {
}
}
initView
()
{
initView
()
{
// for (let i = 0; i < this.basketSvgaGroup.length; i++) {
// this.basketSvgaGroup[i].visible = false
// this.basketSvgaGroup[i].x = props.basketSvgaPos[0];
// this.basketSvgaGroup[i].y = props.basketSvgaPos[1];;
// this.basketSvgaGroup[i].addEventListener(engine.MouseEvent.CLICK, this.showVerse, this);
// }
this
.
pickTeaBg
.
mouseEnabled
=
false
;
this
.
pickTeaBg
.
mouseEnabled
=
false
;
this
.
teaHalfImg
.
visible
=
false
;
this
.
teaHalfImg
.
visible
=
false
;
//this.teaHalfImg.source = '';
//this.teaHalfImg.source = '';
this
.
pickTeaSvga
.
visible
=
false
;
this
.
pickTeaSvga
.
visible
=
false
;
this
.
teaSkyUpSvga
.
visible
=
false
;
this
.
teaSkyUpSvga
.
visible
=
false
;
this
.
verseImg
.
visible
=
false
;
this
.
verseImg
.
visible
=
false
;
this
.
frontImg
.
visible
=
props
.
showFrontImg
==
1
;
this
.
initChildrenPos
()
this
.
initChildrenPos
()
}
}
initChildrenPos
()
{
initChildrenPos
()
{
...
@@ -222,7 +216,7 @@ export default class GameView extends engine.Container {
...
@@ -222,7 +216,7 @@ export default class GameView extends engine.Container {
this
.
basketSvgaGroup
[
i
].
visible
=
false
this
.
basketSvgaGroup
[
i
].
visible
=
false
this
.
basketSvgaGroup
[
i
].
x
=
props
.
basketSvgaPos
[
0
];
this
.
basketSvgaGroup
[
i
].
x
=
props
.
basketSvgaPos
[
0
];
this
.
basketSvgaGroup
[
i
].
y
=
props
.
basketSvgaPos
[
1
];;
this
.
basketSvgaGroup
[
i
].
y
=
props
.
basketSvgaPos
[
1
];;
this
.
basketSvgaGroup
[
i
].
addEventListener
(
engine
.
MouseEvent
.
CLICK
,
this
.
showVerse
,
this
);
//
this.basketSvgaGroup[i].addEventListener(engine.MouseEvent.CLICK, this.showVerse, this);
}
}
this
.
verseImg
.
x
=
props
.
versePos
[
0
]
this
.
verseImg
.
x
=
props
.
versePos
[
0
]
this
.
verseImg
.
y
=
props
.
versePos
[
1
]
this
.
verseImg
.
y
=
props
.
versePos
[
1
]
...
@@ -230,8 +224,10 @@ export default class GameView extends engine.Container {
...
@@ -230,8 +224,10 @@ export default class GameView extends engine.Container {
this
.
addOneSvga
.
y
=
props
.
addOneSvgaPos
[
1
];
this
.
addOneSvga
.
y
=
props
.
addOneSvgaPos
[
1
];
this
.
pickTeaSvga
.
x
=
props
.
pickTeaSvgaPos
[
0
];
this
.
pickTeaSvga
.
x
=
props
.
pickTeaSvgaPos
[
0
];
this
.
pickTeaSvga
.
y
=
props
.
pickTeaSvgaPos
[
1
];
this
.
pickTeaSvga
.
y
=
props
.
pickTeaSvgaPos
[
1
];
this
.
teaSkyUpSvga
.
x
=
props
.
teaSkyUpSvgaPos
[
0
];
this
.
teaSkyUpSvga
.
x
=
props
.
teaSkyUpSvgaPos
[
0
];
this
.
teaSkyUpSvga
.
y
=
props
.
teaSkyUpSvgaPos
[
1
];
this
.
teaSkyUpSvga
.
y
=
props
.
teaSkyUpSvgaPos
[
1
];
this
.
handGraspSvga
.
x
=
props
.
handGraspSvgaPos
[
0
];
this
.
handGraspSvga
.
x
=
props
.
handGraspSvgaPos
[
0
];
this
.
handGraspSvga
.
y
=
props
.
handGraspSvgaPos
[
1
];
this
.
handGraspSvga
.
y
=
props
.
handGraspSvgaPos
[
1
];
...
@@ -241,7 +237,6 @@ export default class GameView extends engine.Container {
...
@@ -241,7 +237,6 @@ export default class GameView extends engine.Container {
this
.
progressbarImg
.
x
=
props
.
progressbarImgPos
[
0
]
this
.
progressbarImg
.
x
=
props
.
progressbarImgPos
[
0
]
this
.
progressbarImg
.
y
=
props
.
progressbarImgPos
[
1
]
this
.
progressbarImg
.
y
=
props
.
progressbarImgPos
[
1
]
//this.progressbarImg.width = 0;
this
.
teaHalfFlagImg
.
x
=
props
.
teaHalfFlagImgPos
[
0
]
this
.
teaHalfFlagImg
.
x
=
props
.
teaHalfFlagImgPos
[
0
]
this
.
teaHalfFlagImg
.
y
=
props
.
teaHalfFlagImgPos
[
1
]
this
.
teaHalfFlagImg
.
y
=
props
.
teaHalfFlagImgPos
[
1
]
...
@@ -251,6 +246,8 @@ export default class GameView extends engine.Container {
...
@@ -251,6 +246,8 @@ export default class GameView extends engine.Container {
this
.
teaFullFlagImg
.
x
=
props
.
teaHalfFlagImgPos
[
0
]
this
.
teaFullFlagImg
.
x
=
props
.
teaHalfFlagImgPos
[
0
]
this
.
teaFullFlagImg
.
y
=
props
.
teaHalfFlagImgPos
[
1
]
this
.
teaFullFlagImg
.
y
=
props
.
teaHalfFlagImgPos
[
1
]
this
.
frontImg
.
x
=
props
.
FrontImgPos
[
0
]
this
.
frontImg
.
y
=
props
.
FrontImgPos
[
1
]
this
.
teaFullFlagImg
.
visible
=
false
;
this
.
teaFullFlagImg
.
visible
=
false
;
...
@@ -269,7 +266,7 @@ export default class GameView extends engine.Container {
...
@@ -269,7 +266,7 @@ export default class GameView extends engine.Container {
this
.
verseLabel
=
new
engine
.
TextField
();
this
.
verseLabel
=
new
engine
.
TextField
();
this
.
verseLabel
.
size
=
props
.
verseLabel
[
2
];
this
.
verseLabel
.
size
=
props
.
verseLabel
[
2
];
this
.
verseLabel
.
text
=
'
11
'
this
.
verseLabel
.
text
=
''
this
.
verseLabel
.
fillColor
=
props
.
verseColor
[
0
]
this
.
verseLabel
.
fillColor
=
props
.
verseColor
[
0
]
this
.
verseLabel
.
height
=
props
.
verseLabel
[
1
];
this
.
verseLabel
.
height
=
props
.
verseLabel
[
1
];
this
.
verseLabel
.
width
=
props
.
verseLabel
[
0
];
this
.
verseLabel
.
width
=
props
.
verseLabel
[
0
];
...
@@ -285,54 +282,58 @@ export default class GameView extends engine.Container {
...
@@ -285,54 +282,58 @@ export default class GameView extends engine.Container {
// label.x = (width - label.width) / 2;
// label.x = (width - label.width) / 2;
// label.y = guideHole.y + guideHole.height + 50;
// label.y = guideHole.y + guideHole.height + 50;
}
}
async
showVerse
()
{
showVerse
()
{
console
.
l
og
(
'显示诗句'
)
showL
og
(
'显示诗句'
)
if
(
!
this
.
_touchEnabled
)
{
//
if (!this._touchEnabled) {
return
;
//
return;
}
//
}
this
.
_touchEnabled
=
false
;
//
this._touchEnabled = false;
this
.
verseImg
.
visible
=
true
;
this
.
verseImg
.
visible
=
true
;
let
random
=
Math
.
floor
(
Math
.
random
()
*
3
)
;
let
len
=
props
.
verses
.
length
;
console
.
log
(
'random'
,
random
)
let
random
=
Math
.
floor
(
Math
.
random
()
*
len
);
console
.
log
(
'props.verses'
)
showLog
(
'random'
,
random
)
showLog
(
'props.verses'
)
console
.
l
og
(
props
.
verses
)
showL
og
(
props
.
verses
)
let
verse
=
props
.
verses
[
random
];
let
verse
=
props
.
verses
[
random
];
console
.
l
og
(
'verse'
,
verse
)
showL
og
(
'verse'
,
verse
)
this
.
verseLabel
.
text
=
verse
;
this
.
verseLabel
.
text
=
verse
;
let
y
=
this
.
verseImg
.
y
let
y
=
this
.
verseImg
.
y
engine
.
Tween
.
get
(
this
.
verseImg
)
engine
.
Tween
.
get
(
this
.
verseImg
)
.
to
({
alpha
:
0
},
3000
).
call
(()
=>
{
.
to
({
alpha
:
0
},
3000
).
call
(()
=>
{
this
.
verseImg
.
visible
=
false
;
this
.
verseImg
.
visible
=
false
;
this
.
verseImg
.
alpha
=
1
this
.
verseImg
.
alpha
=
1
this
.
_touchEnabled
=
true
;
})
})
};
};
/*采茶叶活动*/
/*采茶叶活动*/
//总量除以当前 小于3分之1 没有树叶 ,3分之1到3分之2一点点树叶 ,大于3分之2满树叶
//总量除以当前 小于3分之1 没有树叶 ,3分之1到3分之2一点点树叶 ,大于3分之2满树叶
setTeaNum
(
TeaNums
)
{
setTeaNum
(
TeaNums
)
{
if
(
this
.
schedule
)
{
if
(
this
.
schedule
)
{
console
.
l
og
(
'清理定时器,重新设置同步'
)
showL
og
(
'清理定时器,重新设置同步'
)
clearInterval
(
this
.
schedule
);
clearInterval
(
this
.
schedule
);
}
}
let
totalNum
=
TeaNums
.
totalNum
;
let
totalNum
=
TeaNums
.
totalNum
;
let
nowNum
=
TeaNums
.
nowNum
;
let
nowNum
=
TeaNums
.
nowNum
+
1
this
.
pickTeaCount
.
text
=
nowNum
+
'/'
+
totalNum
;
this
.
getTeaPercentage
(
nowNum
,
totalNum
);
let
surplus
=
nowNum
-
totalNum
;
let
surplus
=
nowNum
-
totalNum
;
if
(
surplus
==
0
)
{
console
.
log
(
'达到最大长度'
);
this
.
progressbarImg
.
x
=
this
.
teaFullFlagImg
.
width
/
2
this
.
teaHalfFlagImg
.
visible
=
false
;
this
.
teaFullFlagImg
.
visible
=
!
this
.
teaHalfFlagImg
.
visible
this
.
addOneSvga
.
visible
=
!
this
.
teaHalfFlagImg
.
visible
this
.
addOneSvga
.
stop
();
return
;
}
console
.
log
(
'surplus'
,
surplus
);
console
.
log
(
'surplus'
,
surplus
);
let
width
=
this
.
progressbarImg
.
width
;
let
width
=
this
.
progressbarImg
.
width
;
let
myDate
=
new
Date
();
let
myDate
=
new
Date
();
let
nowData
=
myDate
.
getTime
();
let
nowData
=
myDate
.
getTime
();
let
serverData
=
TeaNums
.
serverData
;
let
serverData
=
TeaNums
.
serverData
;
//前后端本身的差值
//前后端本身的差值
let
fbdvalue
=
Math
.
abs
((
nowData
-
serverData
/
1000
))
let
fbdvalue
=
Math
.
abs
((
nowData
-
serverData
))
console
.
log
(
'fbdvalue'
,
fbdvalue
)
console
.
log
(
'fbdvalue'
,
fbdvalue
)
/**/
/**/
//设置数据校正
//设置数据校正
// let serverData = 0;
// let serverData = 0;
let
dataDiff
=
0
;
let
dataDiff
=
0
;
/**/
/**/
...
@@ -340,17 +341,20 @@ export default class GameView extends engine.Container {
...
@@ -340,17 +341,20 @@ export default class GameView extends engine.Container {
//已经走得
//已经走得
let
x
=
-
width
*
(
1
-
nowNum
/
totalNum
)
let
x
=
-
width
*
(
1
-
nowNum
/
totalNum
)
console
.
log
(
'x'
,
x
);
console
.
log
(
'x'
,
x
);
this
.
progressbarImg
.
x
=
parseFloat
(
x
.
toFixed
(
3
));
console
.
log
(
'parseFloat(x.toFixed(3))'
,
parseFloat
(
x
.
toFixed
(
3
)))
this
.
progressbarImg
.
x
=
parseFloat
(
x
.
toFixed
(
3
))
+
this
.
teaFullFlagImg
.
width
/
2
-
Math
.
abs
(
this
.
teaFullFlagImg
.
x
)
//)//this.teaFullFlagImg.width - Math.abs(this.teaFullFlagImg.x)
console
.
log
(
'this.progressbarImg.x'
,
this
.
progressbarImg
.
x
)
console
.
log
(
'this.progressbarImg.x'
,
this
.
progressbarImg
.
x
)
let
step
=
(
width
-
(
width
-
Math
.
abs
(
this
.
progressbarImg
.
x
)))
/
surplus
console
.
log
(
'进图条每秒比例原始step'
,
step
)
let
step
=
(
this
.
teaFullFlagImg
.
width
/
2
-
this
.
progressbarImg
.
x
)
/
surplus
step
=
parseFloat
(
step
.
toFixed
(
3
));
console
.
log
(
'进图条每秒比例step'
,
step
)
console
.
log
(
'step'
,
step
)
//step = parseFloat(step.toFixed(6));
//console.log('进图条每秒比例step', step)
this
.
addOneSvga
.
play
(
1
,
true
);
this
.
addOneSvga
.
play
(
1
,
true
);
let
speed
=
props
.
pickTeaSpeed
;
let
speed
=
props
.
pickTeaSpeed
;
//this.progressbarImg.x += step;
let
teaFullRotation
=
engine
.
Tween
.
get
(
this
.
teaHalfFlagImg
,
{
loop
:
true
})
let
teaFullRotation
=
engine
.
Tween
.
get
(
this
.
teaHalfFlagImg
,
{
loop
:
true
})
.
to
({
rotation
:
360
},
speed
).
call
(()
=>
{
.
to
({
rotation
:
360
},
speed
).
call
(()
=>
{
this
.
teaHalfFlagImg
.
rotation
=
0
;
this
.
teaHalfFlagImg
.
rotation
=
0
;
...
@@ -359,32 +363,33 @@ export default class GameView extends engine.Container {
...
@@ -359,32 +363,33 @@ export default class GameView extends engine.Container {
if
(
nowNum
==
totalNum
)
{
if
(
nowNum
==
totalNum
)
{
console
.
log
(
'达到最大长度'
);
console
.
log
(
'达到最大长度'
);
clearInterval
(
this
.
schedule
);
clearInterval
(
this
.
schedule
);
engine
.
Tween
.
paus
eTweens
(
teaFullRotation
);
engine
.
Tween
.
remov
eTweens
(
teaFullRotation
);
this
.
progressbarImg
.
x
=
0
this
.
progressbarImg
.
x
=
this
.
teaFullFlagImg
.
width
/
2
this
.
teaHalfFlagImg
.
visible
=
false
;
this
.
teaHalfFlagImg
.
visible
=
false
;
this
.
teaFullFlagImg
.
visible
=
!
this
.
teaHalfFlagImg
.
visible
this
.
teaFullFlagImg
.
visible
=
!
this
.
teaHalfFlagImg
.
visible
this
.
addOneSvga
.
visible
=
!
this
.
teaHalfFlagImg
.
visible
this
.
addOneSvga
.
visible
=
!
this
.
teaHalfFlagImg
.
visible
this
.
addOneSvga
.
stop
();
this
.
addOneSvga
.
stop
();
}
}
if
(
this
.
progressbarImg
.
x
<=
-
2
)
{
console
.
log
(
'nowNum'
,
nowNum
,
'totalNum'
,
totalNum
)
this
.
getTeaPercentage
(
nowNum
,
totalNum
);
if
(
this
.
progressbarImg
.
x
<
this
.
teaFullFlagImg
.
width
/
2
+
step
)
{
this
.
progressbarImg
.
x
-=
step
;
this
.
progressbarImg
.
x
-=
step
;
}
}
this
.
getTeaPercentage
(
nowNum
,
totalNum
);
nowNum
++
;
nowNum
++
;
dataDiff
++
;
dataDiff
+=
speed
;
myDate
=
new
Date
();
myDate
=
new
Date
();
nowData
=
myDate
.
getTime
();
nowData
=
myDate
.
getTime
();
console
.
log
(
'nowData'
)
console
.
log
(
nowData
)
console
.
log
(
'nowData - serverData) / 1000 - dataDiff'
,
(
nowData
-
serverData
)
/
1000
-
(
fbdvalue
+
dataDiff
))
if
(
Math
.
abs
((
nowData
-
serverData
)
/
1000
)
-
dataDiff
>
(
fbdvalue
+
3
))
{
if
(
Math
.
abs
((
nowData
-
serverData
))
-
dataDiff
>
(
fbdvalue
+
3000
))
{
console
.
log
(
'校准数据前后数据偏差过大'
);
console
.
log
(
Math
.
abs
((
nowData
-
serverData
))
-
dataDiff
-
(
fbdvalue
+
3000
))
clearInterval
(
this
.
schedule
);
clearInterval
(
this
.
schedule
);
engine
.
Tween
.
paus
eTweens
(
teaFullRotation
);
engine
.
Tween
.
remov
eTweens
(
teaFullRotation
);
engine
.
globalEvent
.
dispatchEvent
(
'event-setchange-TeaNum'
);
engine
.
globalEvent
.
dispatchEvent
(
'event-setchange-TeaNum'
);
this
.
addOneSvga
.
visible
=
false
;
this
.
addOneSvga
.
stop
();
return
;
return
;
}
}
console
.
log
(
'this.progressbarImg.x'
,
this
.
progressbarImg
.
x
)
},
speed
)
},
speed
)
}
}
getTeaPercentage
(
nowNum
,
totalNum
)
{
getTeaPercentage
(
nowNum
,
totalNum
)
{
...
@@ -399,7 +404,7 @@ export default class GameView extends engine.Container {
...
@@ -399,7 +404,7 @@ export default class GameView extends engine.Container {
}
}
console
.
log
(
'teaPercentage'
,
teaPercentage
)
console
.
log
(
'teaPercentage'
,
teaPercentage
)
if
(
this
.
nowPercentage
!=
teaPercentage
)
{
if
(
this
.
nowPercentage
!=
teaPercentage
)
{
console
.
l
og
(
'状态改变'
)
showL
og
(
'状态改变'
)
this
.
nowPercentage
=
teaPercentage
;
this
.
nowPercentage
=
teaPercentage
;
this
.
updateTeaPercentage
(
teaPercentage
);
this
.
updateTeaPercentage
(
teaPercentage
);
}
}
...
@@ -407,11 +412,11 @@ export default class GameView extends engine.Container {
...
@@ -407,11 +412,11 @@ export default class GameView extends engine.Container {
//需要更换茶叶数量皮肤
//需要更换茶叶数量皮肤
updateTeaPercentage
(
teaPercentage
=
0
)
{
updateTeaPercentage
(
teaPercentage
=
0
)
{
console
.
l
og
(
'需要更换茶叶数量皮肤'
)
showL
og
(
'需要更换茶叶数量皮肤'
)
console
.
l
og
(
'延迟500ms'
)
showL
og
(
'延迟500ms'
)
let
pickTeaSVGA
=
this
.
basketSvgaGroup
[
1
];
let
pickTeaSVGA
=
this
.
basketSvgaGroup
[
1
];
console
.
l
og
(
'pickTeaSVGA'
)
showL
og
(
'pickTeaSVGA'
)
console
.
l
og
(
pickTeaSVGA
)
showL
og
(
pickTeaSVGA
)
pickTeaSVGA
.
removeChildAt
(
10
);
pickTeaSVGA
.
removeChildAt
(
10
);
let
originframes
=
pickTeaSVGA
.
children
[
7
];
let
originframes
=
pickTeaSVGA
.
children
[
7
];
if
(
!
originframes
)
{
if
(
!
originframes
)
{
...
@@ -429,20 +434,20 @@ export default class GameView extends engine.Container {
...
@@ -429,20 +434,20 @@ export default class GameView extends engine.Container {
this
.
teaHalfImg
.
visible
=
false
;
this
.
teaHalfImg
.
visible
=
false
;
this
.
teaHalfImg
[
'frames'
]
=
teaBucketframes
;
this
.
teaHalfImg
[
'frames'
]
=
teaBucketframes
;
console
.
l
og
(
'this.teaHalfImg'
);
//showL
og('this.teaHalfImg');
console
.
l
og
(
this
.
teaHalfImg
);
//showL
og(this.teaHalfImg);
pickTeaSVGA
.
addChildAt
(
this
.
teaHalfImg
,
10
)
pickTeaSVGA
.
addChildAt
(
this
.
teaHalfImg
,
10
)
}
}
setPickTeaLevel
(
level
)
{
setPickTeaLevel
(
level
)
{
console
.
l
og
(
'setPickTeaLevel'
,
level
);
showL
og
(
'setPickTeaLevel'
,
level
);
let
pickTeaSVGA
=
this
.
basketSvgaGroup
[
level
];
let
pickTeaSVGA
=
this
.
basketSvgaGroup
[
level
];
pickTeaSVGA
.
visible
=
true
;
pickTeaSVGA
.
visible
=
true
;
//
console.l
og('littleTea url')
//
showL
og('littleTea url')
//
console.l
og(this.teaHalfImg['_source'])
//
showL
og(this.teaHalfImg['_source'])
//需要svga缓存结束
//需要svga缓存结束
setTimeout
(()
=>
{
setTimeout
(()
=>
{
console
.
l
og
(
'延迟500ms'
)
showL
og
(
'延迟500ms'
)
let
originframes
=
pickTeaSVGA
.
children
[
7
];
let
originframes
=
pickTeaSVGA
.
children
[
7
];
//按照采茶叶的多少来 设置茶叶是不是满的图片
//按照采茶叶的多少来 设置茶叶是不是满的图片
let
teaBucketframes
=
JSON
.
parse
(
JSON
.
stringify
(
originframes
.
frames
));
let
teaBucketframes
=
JSON
.
parse
(
JSON
.
stringify
(
originframes
.
frames
));
...
@@ -451,41 +456,45 @@ export default class GameView extends engine.Container {
...
@@ -451,41 +456,45 @@ export default class GameView extends engine.Container {
//this.teaHalfImg.source = ''
//this.teaHalfImg.source = ''
this
.
teaHalfImg
[
'frames'
]
=
teaBucketframes
;
this
.
teaHalfImg
[
'frames'
]
=
teaBucketframes
;
}
}
console
.
l
og
(
'this.teaHalfImg'
);
showL
og
(
'this.teaHalfImg'
);
console
.
l
og
(
this
.
teaHalfImg
);
showL
og
(
this
.
teaHalfImg
);
pickTeaSVGA
.
addChildAt
(
this
.
teaHalfImg
,
10
)
pickTeaSVGA
.
addChildAt
(
this
.
teaHalfImg
,
10
)
pickTeaSVGA
.
gotoAndPlay
(
1
,
true
);
pickTeaSVGA
.
gotoAndPlay
(
1
,
true
);
},
300
)
},
300
)
}
}
handGrasp
()
{
handGrasp
()
{
console
.
l
og
(
'handGrasp'
)
showL
og
(
'handGrasp'
)
let
that
=
this
;
let
that
=
this
;
setTimeout
(()
=>
{
setTimeout
(()
=>
{
that
.
handGraspSvga
.
play
(
1
,
true
);
//
that.handGraspSvga.play(1, true);
// this.pickTeaSvga.play(1, false);
// this.pickTeaSvga.play(1, false);
// this.teaSkyUpSvga.play(1, false);
// this.teaSkyUpSvga.play(1, false);
//console.log('手指移动')
engine
.
Tween
.
get
(
that
.
handGraspSvga
)
engine
.
Tween
.
get
(
that
.
handGraspSvga
)
.
to
({
x
:
props
.
handGraspMovePos
[
0
],
y
:
props
.
handGraspMovePos
[
1
]
},
600
).
call
(()
=>
{
.
to
({
x
:
props
.
handGraspMovePos
[
0
],
y
:
props
.
handGraspMovePos
[
1
]
},
400
).
call
(()
=>
{
showLog
(
'this.pickTeaSvga.play'
)
that
.
handGraspSvga
.
play
(
1
,
true
);
setTimeout
(()
=>
{
that
.
handGraspSvga
.
stop
()
that
.
handGraspSvga
.
x
=
props
.
handGraspSvgaPos
[
0
];
that
.
handGraspSvga
.
x
=
props
.
handGraspSvgaPos
[
0
];
that
.
handGraspSvga
.
y
=
props
.
handGraspSvgaPos
[
1
];
that
.
handGraspSvga
.
y
=
props
.
handGraspSvgaPos
[
1
];
//console.log('this.pickTeaSvga.play')
},
600
)
//setTimeout(() => {
that
.
pickTeaSvga
.
visible
=
true
that
.
pickTeaSvga
.
visible
=
true
that
.
pickTeaSvga
.
play
(
1
,
false
);
that
.
pickTeaSvga
.
play
(
1
,
false
);
})
})
that
.
pickTeaSvga
.
addEventListener
(
engine
.
Event
.
END_FRAME
,
function
()
{
that
.
pickTeaSvga
.
addEventListener
(
engine
.
Event
.
END_FRAME
,
function
()
{
//console.l
og('this.teaSkyUpSvga.play')
showL
og
(
'this.teaSkyUpSvga.play'
)
that
.
teaSkyUpSvga
.
visible
=
true
that
.
teaSkyUpSvga
.
visible
=
true
that
.
teaSkyUpSvga
.
play
(
1
,
false
);
that
.
teaSkyUpSvga
.
play
(
1
,
false
);
})
})
that
.
teaSkyUpSvga
.
addEventListener
(
engine
.
Event
.
END_FRAME
,
function
()
{
that
.
teaSkyUpSvga
.
addEventListener
(
engine
.
Event
.
END_FRAME
,
function
()
{
that
.
teaSkyUpSvga
.
visible
=
false
;
that
.
teaSkyUpSvga
.
visible
=
false
;
that
.
updateTeaPercentage
(
0
);
})
})
},
500
);
},
500
);
}
}
/*采茶叶活动*/
/*采茶叶活动*/
}
}
src/custom/pick-tea/src/game/GameWrapper.ts
View file @
57aa8bf6
...
@@ -32,12 +32,12 @@ export class GameWrapper extends engine.Container {
...
@@ -32,12 +32,12 @@ export class GameWrapper extends engine.Container {
engine
.
globalEvent
.
addEventListener
(
'event-pickTeaGame-init'
,
this
.
reset
,
this
);
engine
.
globalEvent
.
addEventListener
(
'event-pickTeaGame-init'
,
this
.
reset
,
this
);
engine
.
globalEvent
.
addEventListener
(
'event-hand-grasp'
,
this
.
handGrasp
,
this
);
engine
.
globalEvent
.
addEventListener
(
'event-hand-grasp'
,
this
.
handGrasp
,
this
);
engine
.
globalEvent
.
addEventListener
(
'event-getClick-person'
,
this
.
clickPerson
,
this
);
engine
.
globalEvent
.
addEventListener
(
'event-getchange-TeaNum'
,
this
.
setTeaNum
,
this
);
engine
.
globalEvent
.
addEventListener
(
'event-getchange-TeaNum'
,
this
.
setTeaNum
,
this
);
engine
.
globalEvent
.
addEventListener
(
'event-getBasket-Type'
,
this
.
setPickTeaLevel
,
this
);
engine
.
globalEvent
.
addEventListener
(
'event-getBasket-Type'
,
this
.
setPickTeaLevel
,
this
);
let
gameView
=
this
.
_gameView
=
new
GameView
();
let
gameView
=
this
.
_gameView
=
new
GameView
();
this
.
addChild
(
gameView
);
this
.
addChild
(
gameView
);
}
}
...
@@ -54,6 +54,13 @@ export class GameWrapper extends engine.Container {
...
@@ -54,6 +54,13 @@ export class GameWrapper extends engine.Container {
this
.
_gameView
.
setPickTeaLevel
(
event
.
data
);
this
.
_gameView
.
setPickTeaLevel
(
event
.
data
);
}
}
handGrasp
()
{
this
.
_gameView
.
handGrasp
();
}
//点击人物
clickPerson
()
{
this
.
_gameView
.
showVerse
();
}
reset
(
event
:
engine
.
Event
)
{
reset
(
event
:
engine
.
Event
)
{
injectProps
(
event
.
data
);
injectProps
(
event
.
data
);
this
.
_gameView
.
visible
=
true
;
this
.
_gameView
.
visible
=
true
;
...
@@ -83,9 +90,6 @@ export class GameWrapper extends engine.Container {
...
@@ -83,9 +90,6 @@ export class GameWrapper extends engine.Container {
this
.
_gameView
.
visible
=
false
;
this
.
_gameView
.
visible
=
false
;
}
}
handGrasp
()
{
this
.
_gameView
.
handGrasp
();
}
...
...
src/custom/pick-tea/src/game/utils.ts
View file @
57aa8bf6
/**
/**
* Created by rockyl on 2020-01-21.
* Created by rockyl on 2020-01-21.
*/
*/
const
showlog
=
false
;
export
function
getTexture
(
uuid
)
{
export
function
getTexture
(
uuid
)
{
return
engine
.
Texture
.
from
(
getAssetByUUID
(
uuid
).
uuid
);
return
engine
.
Texture
.
from
(
getAssetByUUID
(
uuid
).
uuid
);
}
}
...
@@ -11,10 +11,20 @@ export function getTextureByName(name) {
...
@@ -11,10 +11,20 @@ export function getTextureByName(name) {
}
}
export
function
playSound
(
name
)
{
export
function
playSound
(
name
)
{
engine
.
playSound
(
engine
.
getAssetByName
(
name
).
uuid
,
{
keep
:
true
});
engine
.
playSound
(
engine
.
getAssetByName
(
name
).
uuid
,
{
keep
:
true
});
}
}
export
function
createSvga
(
name
,
anchorName
?)
{
export
function
createSvga
(
name
,
anchorName
?)
{
let
inst
=
new
svga
.
Svga
();
let
inst
=
new
svga
.
Svga
();
inst
.
source
=
'asset://'
+
engine
.
getAssetByName
(
name
).
uuid
;
inst
.
source
=
'asset://'
+
engine
.
getAssetByName
(
name
).
uuid
;
return
inst
;
return
inst
;
}
}
export
function
showLog
(
abjname
,
obj
?)
{
if
(
showlog
)
{
console
.
log
(
abjname
)
if
(
obj
)
console
.
log
(
obj
)
}
// let inst = new svga.Svga();
// inst.source = 'asset://' + engine.getAssetByName(name).uuid;
// return inst;
}
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment