Commit 7ee77b47 authored by 13732208043's avatar 13732208043

最新代码

parent 140f0a58
......@@ -27,6 +27,11 @@
"type": "number",
"default": "1"
},
"handGraspBgImgPos": {
"alias": "茶叶收取底图位置",
"type": "array<number>",
"default": "459,-41"
},
"FrontImgPos": {
"alias": "茶叶前景图位置",
"type": "array<number>",
......@@ -60,12 +65,12 @@
"handGraspSvgaPos": {
"alias": "手点击SVGA的位置",
"type": "array<number>",
"default": "477,-29"
"default": "10,12"
},
"handGraspMovePos": {
"alias": "手点击移动的位置",
"type": "array<number>",
"default": "372,-145"
"default": "-85,-65"
},
"progressbarBgImgPos": {
"alias": "进度条底图的位置",
......@@ -94,6 +99,12 @@
}
},
"assets": [
{
"name": "茶叶收取底图",
"url": "//yun.duiba.com.cn/aurora/assets/8d85ca90a60ff9f2c0923c760539586ebcc75ffc.png",
"uuid": "0b0c3f22-f625-4944-b46b-250c9c9e3da2",
"ext": ".png"
},
{
"name": "前景",
"url": "//yun.duiba.com.cn/aurora/assets/1da0ea14267ff35f90f49c22deb1b34181571e90.png",
......@@ -201,6 +212,18 @@
"url": "//yun.duiba.com.cn/aurora/assets/6b774da91be08d1c9f773d88ace4927c3c5de583.svga",
"uuid": "f1e7a7cf-95c7-4c91-a30b-935e31ea0084",
"ext": ".svga"
},
{
"name": "采茶叶",
"url": "//yun.duiba.com.cn/aurora/assets/989fd73d25c68d8b1ddf174232bb329159b170f1.mp3",
"uuid": "ca5c194f-1ddb-4ad3-8bc9-9170ab890e92",
"ext": ".mp3"
},
{
"name": "茶叶飞起",
"url": "//yun.duiba.com.cn/aurora/assets/74f2de0b645bd6b8a4f87e2e0cc44c7e36efa9c6.mp3",
"uuid": "fb513ed3-a0ab-4791-8845-a2f23e95032e",
"ext": ".mp3"
}
],
"events": {
......@@ -230,5 +253,5 @@
}
},
"id": "pick-tea",
"code": "(function (global, factory) {\n\ttypeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('tslib')) :\n\ttypeof 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\tvar props = {};\r\n\tfunction prepareProps() {\r\n\t var metaProps = getProps();\r\n\t engine.injectProp(props, metaProps);\r\n\t}\r\n\tfunction injectProps(p) {\r\n\t engine.injectProp(props, p);\r\n\t}\r\n\t//# sourceMappingURL=props.js.map\n\n\tfunction getTexture(uuid) {\r\n\t return engine.Texture.from(getAssetByUUID(uuid).uuid);\r\n\t}\r\n\tfunction getTextureByName(name) {\r\n\t return getTexture(engine.getAssetByName(name).uuid);\r\n\t}\r\n\tfunction 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\tfunction showLog(abjname, obj) {\r\n\t}\r\n\t//# sourceMappingURL=utils.js.map\n\n\tvar 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 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 };\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;\r\n\t this.getTeaPercentage(nowNum, totalNum);\r\n\t var surplus = nowNum - totalNum;\r\n\t if (surplus == 0) {\r\n\t this.gotoMaxLength();\r\n\t return;\r\n\t }\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 var dataDiff = 0;\r\n\t var x = -width * (1 - (nowNum / totalNum));\r\n\t showLog('原先的X:', this.progressbarImg.x);\r\n\t this.progressbarImg.x = parseFloat(x.toFixed(5)) + this.teaFullFlagImg.width - Math.abs(this.teaFullFlagImg.x);\r\n\t showLog('减去长款的x', this.progressbarImg.x);\r\n\t showLog('this.teaFullFlagImg.width', this.teaFullFlagImg.width);\r\n\t if (this.progressbarImg.x > (this.teaFullFlagImg.width / 2)) {\r\n\t var minus = this.teaFullFlagImg.width - Math.abs(this.teaFullFlagImg.x) - this.progressbarImg.x;\r\n\t this.progressbarImg.x = this.progressbarImg.x - this.teaFullFlagImg.width / 2 + Math.abs(this.teaFullFlagImg.x);\r\n\t showLog('负段x重组', this.progressbarImg.x);\r\n\t }\r\n\t showLog('补宽的X', this.progressbarImg.x);\r\n\t showLog('this.progressbarImg.x', this.progressbarImg.x);\r\n\t var step = (this.teaFullFlagImg.width / 2 - this.progressbarImg.x) / surplus;\r\n\t var speed = props.pickTeaSpeed;\r\n\t if (!this.teaFullRotation) {\r\n\t this.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 }\r\n\t engine.Tween.resumeTweens(this.teaFullRotation);\r\n\t this.schedule = setInterval(function () {\r\n\t nowNum++;\r\n\t _this.addOneSvga.play(1, true);\r\n\t if (nowNum == totalNum) {\r\n\t _this.gotoMaxLength();\r\n\t engine.Tween.pauseTweens(_this.teaFullRotation);\r\n\t }\r\n\t if (_this.progressbarImg.x < _this.teaFullFlagImg.width / 2) {\r\n\t _this.progressbarImg.x -= step;\r\n\t }\r\n\t _this.getTeaPercentage(nowNum, totalNum);\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 showLog(_this.schedule);\r\n\t clearInterval(_this.schedule);\r\n\t engine.Tween.pauseTweens(_this.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 if (nowNum > totalNum) {\r\n\t return;\r\n\t }\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 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.gotoMaxLength = function () {\r\n\t if (this.schedule) {\r\n\t clearInterval(this.schedule);\r\n\t }\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 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));\r\n\t//# sourceMappingURL=GameView.js.map\n\n\tvar 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\tfunction 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\treturn index;\n\n})));\n"
"code": "(function (global, factory) {\n\ttypeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('tslib')) :\n\ttypeof 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\tvar props = {};\r\n\tfunction prepareProps() {\r\n\t var metaProps = getProps();\r\n\t engine.injectProp(props, metaProps);\r\n\t}\r\n\tfunction injectProps(p) {\r\n\t engine.injectProp(props, p);\r\n\t}\n\n\tfunction getTexture(uuid) {\r\n\t return engine.Texture.from(getAssetByUUID(uuid).uuid);\r\n\t}\r\n\tfunction getTextureByName(name) {\r\n\t return getTexture(engine.getAssetByName(name).uuid);\r\n\t}\r\n\tfunction playSound(name) {\r\n\t engine.playSound(engine.getAssetByName(name).uuid, { keep: true });\r\n\t}\r\n\tfunction 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\tfunction showLog(abjname, obj) {\r\n\t}\n\n\tvar 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 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.basketLevel = null;\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.handGraspBgImg = 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.handGraspBgImg);\r\n\t this.handGraspBgImg.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 };\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 var pickTeaSVGA = this.basketSvgaGroup[0];\r\n\t this.allFrames = pickTeaSVGA.children.length;\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.handGraspBgImg.x = props.handGraspBgImgPos[0];\r\n\t this.handGraspBgImg.y = props.handGraspBgImgPos[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;\r\n\t this.getTeaPercentage(nowNum, totalNum);\r\n\t var surplus = nowNum - totalNum;\r\n\t if (surplus == 0) {\r\n\t this.gotoMaxLength();\r\n\t return;\r\n\t }\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 var dataDiff = 0;\r\n\t var x = -width * (1 - (nowNum / totalNum));\r\n\t showLog('原先的X:', this.progressbarImg.x);\r\n\t this.progressbarImg.x = parseFloat(x.toFixed(5)) + this.teaFullFlagImg.width - Math.abs(this.teaFullFlagImg.x);\r\n\t showLog('减去长款的x', this.progressbarImg.x);\r\n\t showLog('this.teaFullFlagImg.width', this.teaFullFlagImg.width);\r\n\t if (this.progressbarImg.x > (this.teaFullFlagImg.width / 2)) {\r\n\t var minus = this.teaFullFlagImg.width - Math.abs(this.teaFullFlagImg.x) - this.progressbarImg.x;\r\n\t this.progressbarImg.x = this.progressbarImg.x - this.teaFullFlagImg.width / 2 + Math.abs(this.teaFullFlagImg.x);\r\n\t showLog('负段x重组', this.progressbarImg.x);\r\n\t }\r\n\t showLog('补宽的X', this.progressbarImg.x);\r\n\t showLog('this.progressbarImg.x', this.progressbarImg.x);\r\n\t var step = (this.teaFullFlagImg.width / 2 - this.progressbarImg.x) / surplus;\r\n\t var speed = props.pickTeaSpeed;\r\n\t if (!this.teaFullRotation) {\r\n\t this.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 }\r\n\t this.teaHalfFlagImg.visible = true;\r\n\t this.teaFullFlagImg.visible = !this.teaHalfFlagImg.visible;\r\n\t this.addOneSvga.visible = this.teaHalfFlagImg.visible;\r\n\t engine.Tween.resumeTweens(this.teaFullRotation);\r\n\t this.schedule = setInterval(function () {\r\n\t nowNum++;\r\n\t _this.addOneSvga.play(1, true);\r\n\t if (nowNum == totalNum) {\r\n\t _this.gotoMaxLength();\r\n\t _this.getTeaPercentage(nowNum, totalNum);\r\n\t engine.Tween.pauseTweens(_this.teaFullRotation);\r\n\t return;\r\n\t }\r\n\t if (_this.progressbarImg.x < _this.teaFullFlagImg.width / 2) {\r\n\t _this.progressbarImg.x -= step;\r\n\t }\r\n\t _this.getTeaPercentage(nowNum, totalNum);\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 showLog(_this.schedule);\r\n\t clearInterval(_this.schedule);\r\n\t engine.Tween.pauseTweens(_this.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 if (nowNum > totalNum) {\r\n\t return;\r\n\t }\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 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.gotoMaxLength = function () {\r\n\t if (this.schedule) {\r\n\t clearInterval(this.schedule);\r\n\t }\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 GameView.prototype.updateTeaPercentage = function (teaPercentage) {\r\n\t if (teaPercentage === void 0) { teaPercentage = 0; }\r\n\t if (!this.basketLevel)\r\n\t this.basketLevel = 0;\r\n\t var pickTeaSVGA = this.basketSvgaGroup[this.basketLevel];\r\n\t var templength = pickTeaSVGA.children.length;\r\n\t if (this.allFrames < templength)\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 this.basketLevel = level;\r\n\t var pickTeaSVGA = this.basketSvgaGroup[level];\r\n\t pickTeaSVGA.visible = true;\r\n\t console.log('总共有多少', pickTeaSVGA.children.length);\r\n\t setTimeout(function () {\r\n\t var originframes = pickTeaSVGA.children[7];\r\n\t _this.teaHalfImg.visible = true;\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 this.updateTeaPercentage(0);\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 playSound('采茶叶');\r\n\t that.teaHalfImg.source = '';\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 playSound('茶叶飞起');\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 console.log('茶叶初始化');\r\n\t });\r\n\t }, 500);\r\n\t };\r\n\t return GameView;\r\n\t}(engine.Container));\n\n\tvar 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));\n\n\tfunction 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}\n\n\treturn index;\n\n})));\n"
}
......@@ -12,7 +12,6 @@
function injectProps(p) {
engine.injectProp(props, p);
}
//# sourceMappingURL=props.js.map
function getTexture(uuid) {
return engine.Texture.from(getAssetByUUID(uuid).uuid);
......@@ -20,6 +19,9 @@
function getTextureByName(name) {
return getTexture(engine.getAssetByName(name).uuid);
}
function playSound(name) {
engine.playSound(engine.getAssetByName(name).uuid, { keep: true });
}
function createSvga(name, anchorName) {
var inst = new svga.Svga();
inst.source = 'asset://' + engine.getAssetByName(name).uuid;
......@@ -27,7 +29,6 @@
}
function showLog(abjname, obj) {
}
//# sourceMappingURL=utils.js.map
var GameView = (function (_super) {
tslib.__extends(GameView, _super);
......@@ -45,6 +46,7 @@
}
this._hasSetup = true;
this.pickTeaBg = new engine.Container();
this.basketLevel = null;
this.addChild(this.pickTeaBg);
this.teaHalfImg = new engine.Image();
this.paperBasketSvga = createSvga("采茶童-纸篮子");
......@@ -68,6 +70,7 @@
this.teaHalfFlagImg = new engine.Image(getTextureByName('茶叶进度缺'));
this.teaFullFlagImg = new engine.Image(getTextureByName('茶叶进度满'));
this.teaStarImg = new engine.Image(getTextureByName('小茶叶'));
this.handGraspBgImg = new engine.Image(getTextureByName('茶叶收取底图'));
this.verseImg = new engine.Image(getTextureByName('气泡框'));
this.pickTeaBg.addChild(this.verseImg);
var mask = new engine.Rect();
......@@ -82,7 +85,8 @@
this.progressbarBgImg.addChild(this.progressbarImg);
this.progressbarBgImg.addChild(mask);
this.progressbarBgImg.addChild(this.addOneSvga);
this.progressbarBgImg.addChild(this.handGraspSvga);
this.progressbarBgImg.addChild(this.handGraspBgImg);
this.handGraspBgImg.addChild(this.handGraspSvga);
this.progressbarBgImg.addChild(this.teaHalfFlagImg);
this.progressbarBgImg.addChild(this.teaFullFlagImg);
this.progressbarBgImg.addChild(this.teaStarImg);
......@@ -121,6 +125,8 @@
this.basketSvgaGroup[i].x = props.basketSvgaPos[0];
this.basketSvgaGroup[i].y = props.basketSvgaPos[1];
}
var pickTeaSVGA = this.basketSvgaGroup[0];
this.allFrames = pickTeaSVGA.children.length;
this.verseImg.x = props.versePos[0];
this.verseImg.y = props.versePos[1];
this.addOneSvga.x = props.addOneSvgaPos[0];
......@@ -131,6 +137,8 @@
this.teaSkyUpSvga.y = props.teaSkyUpSvgaPos[1];
this.handGraspSvga.x = props.handGraspSvgaPos[0];
this.handGraspSvga.y = props.handGraspSvgaPos[1];
this.handGraspBgImg.x = props.handGraspBgImgPos[0];
this.handGraspBgImg.y = props.handGraspBgImgPos[1];
this.progressbarBgImg.x = props.progressbarBgImgPos[0];
this.progressbarBgImg.y = props.progressbarBgImgPos[1];
this.progressbarImg.x = props.progressbarImgPos[0];
......@@ -220,13 +228,18 @@
_this.teaHalfFlagImg.rotation = 0;
});
}
this.teaHalfFlagImg.visible = true;
this.teaFullFlagImg.visible = !this.teaHalfFlagImg.visible;
this.addOneSvga.visible = this.teaHalfFlagImg.visible;
engine.Tween.resumeTweens(this.teaFullRotation);
this.schedule = setInterval(function () {
nowNum++;
_this.addOneSvga.play(1, true);
if (nowNum == totalNum) {
_this.gotoMaxLength();
_this.getTeaPercentage(nowNum, totalNum);
engine.Tween.pauseTweens(_this.teaFullRotation);
return;
}
if (_this.progressbarImg.x < _this.teaFullFlagImg.width / 2) {
_this.progressbarImg.x -= step;
......@@ -276,8 +289,12 @@
};
GameView.prototype.updateTeaPercentage = function (teaPercentage) {
if (teaPercentage === void 0) { teaPercentage = 0; }
var pickTeaSVGA = this.basketSvgaGroup[1];
pickTeaSVGA.removeChildAt(10);
if (!this.basketLevel)
this.basketLevel = 0;
var pickTeaSVGA = this.basketSvgaGroup[this.basketLevel];
var templength = pickTeaSVGA.children.length;
if (this.allFrames < templength)
pickTeaSVGA.removeChildAt(10);
var originframes = pickTeaSVGA.children[7];
if (!originframes) {
return;
......@@ -295,10 +312,13 @@
};
GameView.prototype.setPickTeaLevel = function (level) {
var _this = this;
this.basketLevel = level;
var pickTeaSVGA = this.basketSvgaGroup[level];
pickTeaSVGA.visible = true;
console.log('总共有多少', pickTeaSVGA.children.length);
setTimeout(function () {
var originframes = pickTeaSVGA.children[7];
_this.teaHalfImg.visible = true;
var teaBucketframes = JSON.parse(JSON.stringify(originframes.frames));
if (_this.teaHalfImg) {
_this.teaHalfImg['frames'] = teaBucketframes;
......@@ -310,6 +330,7 @@
};
GameView.prototype.handGrasp = function () {
var that = this;
this.updateTeaPercentage(0);
setTimeout(function () {
engine.Tween.get(that.handGraspSvga)
.to({ x: props.handGraspMovePos[0], y: props.handGraspMovePos[1] }, 400).call(function () {
......@@ -320,21 +341,23 @@
that.handGraspSvga.y = props.handGraspSvgaPos[1];
}, 600);
that.pickTeaSvga.visible = true;
playSound('采茶叶');
that.teaHalfImg.source = '';
that.pickTeaSvga.play(1, false);
});
that.pickTeaSvga.addEventListener(engine.Event.END_FRAME, function () {
that.teaSkyUpSvga.visible = true;
playSound('茶叶飞起');
that.teaSkyUpSvga.play(1, false);
});
that.teaSkyUpSvga.addEventListener(engine.Event.END_FRAME, function () {
that.teaSkyUpSvga.visible = false;
that.updateTeaPercentage(0);
console.log('茶叶初始化');
});
}, 500);
};
return GameView;
}(engine.Container));
//# sourceMappingURL=GameView.js.map
var GameWrapper = (function (_super) {
tslib.__extends(GameWrapper, _super);
......@@ -389,7 +412,6 @@
};
return GameWrapper;
}(engine.Container));
//# sourceMappingURL=GameWrapper.js.map
function index (props) {
prepareProps();
......@@ -397,7 +419,6 @@
var instance = new GameWrapper();
return instance;
}
//# sourceMappingURL=index.js.map
return index;
......
{"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\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\t// setTimeout(() => {\r\n\t\t// \tthis.setTeaNum({ totalNum: 100, 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\r\n\t\tshowLog('nowNum:', nowNum)\r\n\t\tthis.getTeaPercentage(nowNum, totalNum);\r\n\t\tlet surplus = nowNum - totalNum;\r\n\t\tif (surplus == 0) {\r\n\t\t\tthis.gotoMaxLength();\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tshowLog('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\tshowLog('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\r\n\t\tshowLog('原先的X:', this.progressbarImg.x)\r\n\t\tshowLog('比例后的X', x);\r\n\t\t//showLog('parseFloat(x.toFixed(3))', parseFloat(x.toFixed(5)))\r\n\r\n\t\tthis.progressbarImg.x = parseFloat(x.toFixed(5)) + this.teaFullFlagImg.width - Math.abs(this.teaFullFlagImg.x)\r\n\t\tshowLog('减去长款的x', this.progressbarImg.x)\r\n\t\tshowLog('this.teaFullFlagImg.width', this.teaFullFlagImg.width)\r\n\r\n\t\tif (this.progressbarImg.x > (this.teaFullFlagImg.width / 2)) {\r\n\t\t\tlet minus = this.teaFullFlagImg.width - Math.abs(this.teaFullFlagImg.x) - this.progressbarImg.x\r\n\t\t\tshowLog('minus', minus)\r\n\t\t\tthis.progressbarImg.x = this.progressbarImg.x - this.teaFullFlagImg.width / 2 + Math.abs(this.teaFullFlagImg.x)\r\n\t\t\tshowLog('负段x重组', this.progressbarImg.x)\r\n\t\t}\r\n\r\n\t\tshowLog('补宽的X', this.progressbarImg.x);\r\n\t\tshowLog('this.progressbarImg.x', this.progressbarImg.x)\r\n\t\tlet step = (this.teaFullFlagImg.width / 2 - this.progressbarImg.x) / surplus\r\n\t\tshowLog('step', step)\r\n\t\t//step = parseFloat(step.toFixed(6));\r\n\t\t//showLog('进图条每秒比例step', step)\r\n\t\tlet speed = props.pickTeaSpeed;\r\n\t\tif (!this.teaFullRotation) {\r\n\t\t\tthis.teaFullRotation = engine.Tween.get(this.teaHalfFlagImg, { loop: true })\r\n\t\t\t\t.to({ rotation: 360 }, speed).call(() => {\r\n\t\t\t\t\tthis.teaHalfFlagImg.rotation = 0;\r\n\t\t\t\t})\r\n\t\t}\r\n\t\tengine.Tween.resumeTweens(this.teaFullRotation);\r\n\t\tthis.schedule = setInterval(() => {\r\n\t\t\t//showLog('nowNum', nowNum, 'totalNum', totalNum)\r\n\t\t\tnowNum++;\r\n\t\t\tthis.addOneSvga.play(1, true);\r\n\t\t\tif (nowNum == totalNum) {\r\n\t\t\t\tthis.gotoMaxLength();\r\n\t\t\t\tengine.Tween.pauseTweens(this.teaFullRotation);\r\n\t\t\t}\r\n\t\t\tif (this.progressbarImg.x < this.teaFullFlagImg.width / 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\tdataDiff += speed;\r\n\t\t\tmyDate = new Date();\r\n\t\t\tnowData = myDate.getTime();\r\n\t\t\tif (Math.abs((nowData - serverData)) - dataDiff > (fbdvalue + 3000)) {\r\n\t\t\t\tshowLog('校准数据前后数据偏差过大');\r\n\t\t\t\tshowLog(Math.abs((nowData - serverData)) - dataDiff - (fbdvalue + 3000))\r\n\t\t\t\tshowLog(this.schedule)\r\n\t\t\t\tclearInterval(this.schedule);\r\n\t\t\t\tengine.Tween.pauseTweens(this.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\tif (nowNum > totalNum) {\r\n\t\t\treturn;\r\n\t\t}\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\tshowLog('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\t//进度条达到最大长度\r\n\tgotoMaxLength() {\r\n\t\tshowLog('达到最大长度');\r\n\t\tif (this.schedule) {\r\n\t\t\tclearInterval(this.schedule);\r\n\t\t}\r\n\t\tthis.progressbarImg.x = this.teaFullFlagImg.width / 2\r\n\t\tthis.teaHalfFlagImg.visible = false;\r\n\t\tthis.teaFullFlagImg.visible = !this.teaHalfFlagImg.visible\r\n\t\tthis.addOneSvga.visible = this.teaHalfFlagImg.visible\r\n\t\tthis.addOneSvga.stop();\r\n\t}\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
{"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\t//console.log('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\tprivate handGraspBgImg: 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\tprivate basketLevel: any;\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\tprivate allFrames;\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\t\tthis.basketLevel = null;\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\t\tthis.handGraspBgImg = new engine.Image(getTextureByName('茶叶收取底图'));\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\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\r\n\t\tthis.progressbarBgImg.addChild(this.handGraspBgImg);\r\n\r\n\t\tthis.handGraspBgImg.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\tthis.initView();\r\n\r\n\t\t// setTimeout(() => {\r\n\t\t// \tthis.setPickTeaLevel(1)\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\t\t// setTimeout(() => {\r\n\t\t// \tthis.handGrasp();\r\n\r\n\t\t// \tthis.setTeaNum({ totalNum: 10, nowNum: 0, serverData: 1585290768011 })\r\n\r\n\t\t// }, 12000)\r\n\t\t//playSound('采茶叶');\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\tlet pickTeaSVGA = this.basketSvgaGroup[0];\r\n\r\n\t\t//console.log('总共有多少',pickTeaSVGA.children.length)\r\n\t\tthis.allFrames = pickTeaSVGA.children.length;\r\n\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.handGraspBgImg.x = props.handGraspBgImgPos[0];\r\n\t\tthis.handGraspBgImg.y = props.handGraspBgImgPos[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\r\n\t\tshowLog('nowNum:', nowNum)\r\n\t\tthis.getTeaPercentage(nowNum, totalNum);\r\n\t\tlet surplus = nowNum - totalNum;\r\n\t\tif (surplus == 0) {\r\n\t\t\tthis.gotoMaxLength();\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tshowLog('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\tshowLog('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\r\n\t\tshowLog('原先的X:', this.progressbarImg.x)\r\n\t\tshowLog('比例后的X', x);\r\n\t\t//showLog('parseFloat(x.toFixed(3))', parseFloat(x.toFixed(5)))\r\n\r\n\t\tthis.progressbarImg.x = parseFloat(x.toFixed(5)) + this.teaFullFlagImg.width - Math.abs(this.teaFullFlagImg.x)\r\n\t\tshowLog('减去长款的x', this.progressbarImg.x)\r\n\t\tshowLog('this.teaFullFlagImg.width', this.teaFullFlagImg.width)\r\n\r\n\t\tif (this.progressbarImg.x > (this.teaFullFlagImg.width / 2)) {\r\n\t\t\tlet minus = this.teaFullFlagImg.width - Math.abs(this.teaFullFlagImg.x) - this.progressbarImg.x\r\n\t\t\tshowLog('minus', minus)\r\n\t\t\tthis.progressbarImg.x = this.progressbarImg.x - this.teaFullFlagImg.width / 2 + Math.abs(this.teaFullFlagImg.x)\r\n\t\t\tshowLog('负段x重组', this.progressbarImg.x)\r\n\t\t}\r\n\r\n\t\tshowLog('补宽的X', this.progressbarImg.x);\r\n\t\tshowLog('this.progressbarImg.x', this.progressbarImg.x)\r\n\t\tlet step = (this.teaFullFlagImg.width / 2 - this.progressbarImg.x) / surplus\r\n\t\tshowLog('step', step)\r\n\t\t//step = parseFloat(step.toFixed(6));\r\n\t\t//showLog('进图条每秒比例step', step)\r\n\t\tlet speed = props.pickTeaSpeed;\r\n\t\tif (!this.teaFullRotation) {\r\n\t\t\tthis.teaFullRotation = engine.Tween.get(this.teaHalfFlagImg, { loop: true })\r\n\t\t\t\t.to({ rotation: 360 }, speed).call(() => {\r\n\t\t\t\t\tthis.teaHalfFlagImg.rotation = 0;\r\n\t\t\t\t})\r\n\t\t}\r\n\t\tthis.teaHalfFlagImg.visible = true;\r\n\t\tthis.teaFullFlagImg.visible = !this.teaHalfFlagImg.visible\r\n\t\tthis.addOneSvga.visible = this.teaHalfFlagImg.visible\r\n\r\n\t\tengine.Tween.resumeTweens(this.teaFullRotation);\r\n\t\tthis.schedule = setInterval(() => {\r\n\t\t\t//showLog('nowNum', nowNum, 'totalNum', totalNum)\r\n\t\t\tnowNum++;\r\n\t\t\tthis.addOneSvga.play(1, true);\r\n\t\t\tif (nowNum == totalNum) {\r\n\t\t\t\tthis.gotoMaxLength();\r\n\t\t\t\tthis.getTeaPercentage(nowNum, totalNum);\r\n\t\t\t\tengine.Tween.pauseTweens(this.teaFullRotation);\r\n\t\t\t\t//this.setTeaNum({ totalNum: 100, nowNum: 0, serverData: 1585290768011 });\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t\tif (this.progressbarImg.x < this.teaFullFlagImg.width / 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\tdataDiff += speed;\r\n\t\t\tmyDate = new Date();\r\n\t\t\tnowData = myDate.getTime();\r\n\t\t\tif (Math.abs((nowData - serverData)) - dataDiff > (fbdvalue + 3000)) {\r\n\t\t\t\tshowLog('校准数据前后数据偏差过大');\r\n\t\t\t\tshowLog(Math.abs((nowData - serverData)) - dataDiff - (fbdvalue + 3000))\r\n\t\t\t\tshowLog(this.schedule)\r\n\t\t\t\tclearInterval(this.schedule);\r\n\t\t\t\tengine.Tween.pauseTweens(this.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\tif (nowNum > totalNum) {\r\n\t\t\treturn;\r\n\t\t}\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\tshowLog('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\t//进度条达到最大长度\r\n\tgotoMaxLength() {\r\n\t\tshowLog('达到最大长度');\r\n\t\tif (this.schedule) {\r\n\t\t\tclearInterval(this.schedule);\r\n\t\t}\r\n\t\tthis.progressbarImg.x = this.teaFullFlagImg.width / 2\r\n\t\tthis.teaHalfFlagImg.visible = false;\r\n\t\tthis.teaFullFlagImg.visible = !this.teaHalfFlagImg.visible\r\n\t\tthis.addOneSvga.visible = this.teaHalfFlagImg.visible\r\n\t\tthis.addOneSvga.stop();\r\n\t}\r\n\t//需要更换茶叶数量皮肤\r\n\tupdateTeaPercentage(teaPercentage = 0) {\r\n\t\t// console.log('需要更换茶叶数量皮肤')\r\n\t\t// console.log('this.basketLevel', this.basketLevel)\r\n\t\tif (!this.basketLevel)\r\n\t\t\tthis.basketLevel = 0;\r\n\t\tlet pickTeaSVGA = this.basketSvgaGroup[this.basketLevel];\r\n\t\tlet templength = pickTeaSVGA.children.length;\r\n\t\t//console.log('templength',templength)\r\n\t\tif (this.allFrames < templength)\r\n\t\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\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\tthis.basketLevel = level;\r\n\t\tlet pickTeaSVGA = this.basketSvgaGroup[level];\r\n\t\tpickTeaSVGA.visible = true;\r\n\t\tconsole.log('总共有多少', pickTeaSVGA.children.length)\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\r\n\t\t\t//按照采茶叶的多少来 设置茶叶是不是满的图片\r\n\t\t\tthis.teaHalfImg.visible = true;\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\tthis.updateTeaPercentage(0);\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\tplaySound('采茶叶');\r\n\t\t\t\t\tthat.teaHalfImg.source = ''\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\tplaySound('茶叶飞起');\r\n\t\t\t\tthat.teaSkyUpSvga.play(1, false);\r\n\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\t//that.updateTeaPercentage(0)\r\n\t\t\t\tconsole.log('茶叶初始化')\r\n\t\t\t})\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
......@@ -22,11 +22,17 @@
"type": "array<string>",
"default": "#33628b,#99b1c5"
},
"showFrontImg": {
"alias": "茶叶前景图1显示2隐藏",
"type": "number",
"default": "1"
},
"handGraspBgImgPos": {
"alias": "茶叶收取底图位置",
"type": "array<number>",
"default": "459,-41"
},
"FrontImgPos": {
"alias": "茶叶前景图位置",
"type": "array<number>",
......@@ -60,12 +66,12 @@
"handGraspSvgaPos": {
"alias": "手点击SVGA的位置",
"type": "array<number>",
"default": "477,-29"
"default": "10,12"
},
"handGraspMovePos": {
"alias": "手点击移动的位置",
"type": "array<number>",
"default": "372,-145"
"default": "-85,-65"
},
"progressbarBgImgPos": {
"alias": "进度条底图的位置",
......@@ -94,6 +100,13 @@
}
},
"assets": [
{
"name": "茶叶收取底图",
"url": "//yun.duiba.com.cn/aurora/assets/8d85ca90a60ff9f2c0923c760539586ebcc75ffc.png",
"uuid": "0b0c3f22-f625-4944-b46b-250c9c9e3da2",
"ext": ".png"
},
{
"name": "前景",
"url": "//yun.duiba.com.cn/aurora/assets/1da0ea14267ff35f90f49c22deb1b34181571e90.png",
......@@ -201,6 +214,18 @@
"url": "//yun.duiba.com.cn/aurora/assets/6b774da91be08d1c9f773d88ace4927c3c5de583.svga",
"uuid": "f1e7a7cf-95c7-4c91-a30b-935e31ea0084",
"ext": ".svga"
},
{
"name": "采茶叶",
"url": "//yun.duiba.com.cn/aurora/assets/989fd73d25c68d8b1ddf174232bb329159b170f1.mp3",
"uuid": "ca5c194f-1ddb-4ad3-8bc9-9170ab890e92",
"ext": ".mp3"
},
{
"name": "茶叶飞起",
"url": "//yun.duiba.com.cn/aurora/assets/74f2de0b645bd6b8a4f87e2e0cc44c7e36efa9c6.mp3",
"uuid": "fb513ed3-a0ab-4791-8845-a2f23e95032e",
"ext": ".mp3"
}
],
"events": {
......
......@@ -27,6 +27,7 @@ export default class GameView extends engine.Container {
private teaStarImg: engine.Image;
private frontImg: engine.Image;
private verseImg: engine.Image;
private handGraspBgImg: engine.Image;
//采茶背景层
private pickTeaBg: engine.Container;
//采茶进度计时器
......@@ -38,6 +39,7 @@ export default class GameView extends engine.Container {
//篮子集合
private basketSvgaGroup: any;
private basketLevel: any;
//纸篮子svga
private paperBasketSvga
//布篮子svga
......@@ -57,7 +59,7 @@ export default class GameView extends engine.Container {
//半缺旋转
private teaFullRotation
private allFrames;
/**采茶叶自定义模块*/
//玩家
......@@ -101,7 +103,7 @@ export default class GameView extends engine.Container {
}
this._hasSetup = true;
this.pickTeaBg = new engine.Container();
this.basketLevel = null;
// let bgGroud = new engine.Image()
// bgGroud.source = '//yun.duiba.com.cn/aurora/assets/a988c47db8d3131faad175c7c2944773392be643.png'
// this.addChild(bgGroud);
......@@ -137,7 +139,7 @@ export default class GameView extends engine.Container {
this.teaFullFlagImg = new engine.Image(getTextureByName('茶叶进度满'));
this.teaStarImg = new engine.Image(getTextureByName('小茶叶'));
this.handGraspBgImg = new engine.Image(getTextureByName('茶叶收取底图'));
this.verseImg = new engine.Image(getTextureByName('气泡框'));
this.pickTeaBg.addChild(this.verseImg);
......@@ -160,7 +162,10 @@ export default class GameView extends engine.Container {
showLog('遮罩坐标')
showLog(mask.x, mask.y)
this.progressbarBgImg.addChild(this.addOneSvga);
this.progressbarBgImg.addChild(this.handGraspSvga);
this.progressbarBgImg.addChild(this.handGraspBgImg);
this.handGraspBgImg.addChild(this.handGraspSvga);
this.progressbarBgImg.addChild(this.teaHalfFlagImg);
this.progressbarBgImg.addChild(this.teaFullFlagImg);
......@@ -169,16 +174,20 @@ export default class GameView extends engine.Container {
this.progressbarBgImg.addChild(this.pickTeaCount);
this.addChild(this.progressbarBgImg);
// let myDate = new Date();
// let nowData = myDate.getTime();
//this.setTeaNum({ totalNum: 430, nowNum: 425, serverData: 1585290768011 })
this.initView();
// setTimeout(() => {
// this.setTeaNum({ totalNum: 100, nowNum: 0, serverData: 1585290768011 })
// this.setPickTeaLevel(1)
// this.setTeaNum({ totalNum: 10, nowNum: 0, serverData: 1585290768011 })
// //this.setTeaNum({ totalNum: 100, nowNum: 0 })
// }, 500)
// setTimeout(() => {
// this.handGrasp();
// this.setTeaNum({ totalNum: 10, nowNum: 0, serverData: 1585290768011 })
// }, 12000)
//playSound('采茶叶');
}
reset() {
......@@ -216,6 +225,11 @@ export default class GameView extends engine.Container {
this.basketSvgaGroup[i].y = props.basketSvgaPos[1];;
//this.basketSvgaGroup[i].addEventListener(engine.MouseEvent.CLICK, this.showVerse, this);
}
let pickTeaSVGA = this.basketSvgaGroup[0];
//console.log('总共有多少',pickTeaSVGA.children.length)
this.allFrames = pickTeaSVGA.children.length;
this.verseImg.x = props.versePos[0]
this.verseImg.y = props.versePos[1]
this.addOneSvga.x = props.addOneSvgaPos[0]
......@@ -229,6 +243,9 @@ export default class GameView extends engine.Container {
this.handGraspSvga.x = props.handGraspSvgaPos[0];
this.handGraspSvga.y = props.handGraspSvgaPos[1];
this.handGraspBgImg.x = props.handGraspBgImgPos[0];
this.handGraspBgImg.y = props.handGraspBgImgPos[1];
this.progressbarBgImg.x = props.progressbarBgImgPos[0]
this.progressbarBgImg.y = props.progressbarBgImgPos[1]
......@@ -363,6 +380,10 @@ export default class GameView extends engine.Container {
this.teaHalfFlagImg.rotation = 0;
})
}
this.teaHalfFlagImg.visible = true;
this.teaFullFlagImg.visible = !this.teaHalfFlagImg.visible
this.addOneSvga.visible = this.teaHalfFlagImg.visible
engine.Tween.resumeTweens(this.teaFullRotation);
this.schedule = setInterval(() => {
//showLog('nowNum', nowNum, 'totalNum', totalNum)
......@@ -370,7 +391,10 @@ export default class GameView extends engine.Container {
this.addOneSvga.play(1, true);
if (nowNum == totalNum) {
this.gotoMaxLength();
this.getTeaPercentage(nowNum, totalNum);
engine.Tween.pauseTweens(this.teaFullRotation);
//this.setTeaNum({ totalNum: 100, nowNum: 0, serverData: 1585290768011 });
return;
}
if (this.progressbarImg.x < this.teaFullFlagImg.width / 2) {
this.progressbarImg.x -= step;
......@@ -426,12 +450,15 @@ export default class GameView extends engine.Container {
}
//需要更换茶叶数量皮肤
updateTeaPercentage(teaPercentage = 0) {
showLog('需要更换茶叶数量皮肤')
showLog('延迟500ms')
let pickTeaSVGA = this.basketSvgaGroup[1];
showLog('pickTeaSVGA')
showLog(pickTeaSVGA)
pickTeaSVGA.removeChildAt(10);
// console.log('需要更换茶叶数量皮肤')
// console.log('this.basketLevel', this.basketLevel)
if (!this.basketLevel)
this.basketLevel = 0;
let pickTeaSVGA = this.basketSvgaGroup[this.basketLevel];
let templength = pickTeaSVGA.children.length;
//console.log('templength',templength)
if (this.allFrames < templength)
pickTeaSVGA.removeChildAt(10);
let originframes = pickTeaSVGA.children[7];
if (!originframes) {
return;
......@@ -439,6 +466,7 @@ export default class GameView extends engine.Container {
//按照采茶叶的多少来 设置茶叶是不是满的图片
let teaBucketframes = JSON.parse(JSON.stringify(originframes.frames));
//let teaNumImg = this.teaHalfImg;
if (teaPercentage == 1) {
this.teaHalfImg = new engine.Image(getTextureByName('茶叶-少'));
}
......@@ -455,15 +483,19 @@ export default class GameView extends engine.Container {
setPickTeaLevel(level) {
showLog('setPickTeaLevel', level);
this.basketLevel = level;
let pickTeaSVGA = this.basketSvgaGroup[level];
pickTeaSVGA.visible = true;
console.log('总共有多少', pickTeaSVGA.children.length)
//showLog('littleTea url')
//showLog(this.teaHalfImg['_source'])
//需要svga缓存结束
setTimeout(() => {
showLog('延迟500ms')
let originframes = pickTeaSVGA.children[7];
//按照采茶叶的多少来 设置茶叶是不是满的图片
this.teaHalfImg.visible = true;
let teaBucketframes = JSON.parse(JSON.stringify(originframes.frames));
//this.teaHalfImg = //new engine.Image(getTextureByName('茶叶-少'));
if (this.teaHalfImg) {
......@@ -479,6 +511,7 @@ export default class GameView extends engine.Container {
handGrasp() {
showLog('handGrasp')
let that = this;
this.updateTeaPercentage(0);
setTimeout(() => {
//that.handGraspSvga.play(1, true);
// this.pickTeaSvga.play(1, false);
......@@ -493,20 +526,24 @@ export default class GameView extends engine.Container {
that.handGraspSvga.y = props.handGraspSvgaPos[1];
}, 600)
that.pickTeaSvga.visible = true
playSound('采茶叶');
that.teaHalfImg.source = ''
that.pickTeaSvga.play(1, false);
})
that.pickTeaSvga.addEventListener(engine.Event.END_FRAME, function () {
showLog('this.teaSkyUpSvga.play')
that.teaSkyUpSvga.visible = true
playSound('茶叶飞起');
that.teaSkyUpSvga.play(1, false);
})
that.teaSkyUpSvga.addEventListener(engine.Event.END_FRAME, function () {
that.teaSkyUpSvga.visible = false;
that.updateTeaPercentage(0);
//that.updateTeaPercentage(0)
console.log('茶叶初始化')
})
}, 500);
}
......
......@@ -11,6 +11,7 @@ export function getTextureByName(name) {
}
export function playSound(name) {
//console.log('playSound', name)
engine.playSound(engine.getAssetByName(name).uuid, { keep: true });
}
export function createSvga(name, anchorName?) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment