Commit 64c0275d authored by 邱旭's avatar 邱旭

1

parent 38469926
...@@ -60,7 +60,7 @@ ...@@ -60,7 +60,7 @@
<script src="libs/fileSave.js"></script> <script src="libs/fileSave.js"></script>
<img id="pic" style="width:100%;position: absolute;z-index: 999;display: none;"/> <img id="pic" style="width:100%;position: absolute;z-index: 999;display: none;"/>
<script> <script>
window['hbRainTime'] = 30; window['hbRainTime'] = 10;
window['plugs'] = [1, 2, 3] window['plugs'] = [1, 2, 3]
// localStorage.clear(); // localStorage.clear();
window['isInvitePage'] = 0; window['isInvitePage'] = 0;
......
...@@ -6,10 +6,10 @@ ...@@ -6,10 +6,10 @@
<e:Image y="0" source="hbGame_num_bg_png" horizontalCenter="0"/> <e:Image y="0" source="hbGame_num_bg_png" horizontalCenter="0"/>
<e:BitmapLabel id="scoreLabel" y="33" text="0" horizontalCenter="0" font="hbGameScoreFont_fnt"/> <e:BitmapLabel id="scoreLabel" y="33" text="0" horizontalCenter="0" font="hbGameScoreFont_fnt"/>
</e:Group> </e:Group>
<e:Group y="45" horizontalCenter="0" height="154"> <e:Group id="cutTimerGroup" y="45" horizontalCenter="0" height="154">
<e:Image id="timeBtn" y="0" horizontalCenter="0" x="10" source="hbGame_CutTime_btn_png"/> <e:Image id="timeBtn" y="0" horizontalCenter="0" x="10" source="hbGame_CutTime_btn_png"/>
<e:Image y="25" horizontalCenter="0" source="hbGame_CutTime_bg_png"/> <e:Image y="25" horizontalCenter="0" source="hbGame_CutTime_bg_png"/>
<e:Image y="32" source="hbGame_CutTime_progress_png" horizontalCenter="-0.5"/> <e:Image id="cutCircle" y="32" source="hbGame_CutTime_progress_png" horizontalCenter="-0.5"/>
<e:BitmapLabel id="cutTimeLabel" y="67" text="60" font="hbGameCutTimeFont_fnt" horizontalCenter="0.5"/> <e:BitmapLabel id="cutTimeLabel" y="67" text="60" font="hbGameCutTimeFont_fnt" horizontalCenter="0.5"/>
</e:Group> </e:Group>
<e:Group id="readyGroup" y="310.5" horizontalCenter="0" width="560" height="710" anchorOffsetY="0"> <e:Group id="readyGroup" y="310.5" horizontalCenter="0" width="560" height="710" anchorOffsetY="0">
...@@ -17,6 +17,6 @@ ...@@ -17,6 +17,6 @@
<e:Label text="点击所有动物均可累积双份红包" y="520" fontFamily="FZY3JW" horizontalCenter="0"/> <e:Label text="点击所有动物均可累积双份红包" y="520" fontFamily="FZY3JW" horizontalCenter="0"/>
<e:Image y="566" source="hbGame_lion_touch_png" horizontalCenter="-37.5"/> <e:Image y="566" source="hbGame_lion_touch_png" horizontalCenter="-37.5"/>
<e:Image y="597" source="hbGame_+2_png" horizontalCenter="82"/> <e:Image y="597" source="hbGame_+2_png" horizontalCenter="82"/>
<e:Image id="readyCutTime" y="95" horizontalCenter="0" x="10" source="hbGame_1_png"/> <e:Image id="readyCutTime" y="121" horizontalCenter="0" x="10" source="hbGame_1_png"/>
</e:Group> </e:Group>
</e:Skin> </e:Skin>
\ No newline at end of file
...@@ -8,6 +8,8 @@ import { NetName } from "../../../libs/tw/enum/NetName"; ...@@ -8,6 +8,8 @@ import { NetName } from "../../../libs/tw/enum/NetName";
import PanelCtrl from "../../../libs/new_wx/ctrls/panelCtrl"; import PanelCtrl from "../../../libs/new_wx/ctrls/panelCtrl";
import SceneCtrl from "../../../libs/new_wx/ctrls/sceneCtrl"; import SceneCtrl from "../../../libs/new_wx/ctrls/sceneCtrl";
import Utils from "../../Utils"; import Utils from "../../Utils";
import Shape = egret.Shape;
import nrABIVersion = egret_native.nrABIVersion;
/** /**
* 红包雨主游戏 * 红包雨主游戏
...@@ -16,7 +18,9 @@ export default class HbGame extends Panel { ...@@ -16,7 +18,9 @@ export default class HbGame extends Panel {
public rainGroup: eui.Group; public rainGroup: eui.Group;
public scoreGroup: eui.Group; public scoreGroup: eui.Group;
public scoreLabel: eui.BitmapLabel; public scoreLabel: eui.BitmapLabel;
public cutTimerGroup: eui.Group;
public timeBtn: eui.Image; public timeBtn: eui.Image;
public cutCircle: eui.Image;
public cutTimeLabel: eui.BitmapLabel; public cutTimeLabel: eui.BitmapLabel;
public readyGroup: eui.Group; public readyGroup: eui.Group;
public tipLabel: eui.Label; public tipLabel: eui.Label;
...@@ -26,10 +30,13 @@ export default class HbGame extends Panel { ...@@ -26,10 +30,13 @@ export default class HbGame extends Panel {
private cutTime: egret.Timer = null; private cutTime: egret.Timer = null;
private time: number = window['hbRainTime']; private time: number = window['hbRainTime'];
private totalTime: number = window['hbRainTime'];
private score = 0; private score = 0;
private scoreLabelStr = 0; private scoreLabelStr = 0;
private cutShape: egret.Shape;
constructor(data) { constructor(data) {
super(); super();
this.data = data; this.data = data;
...@@ -45,7 +52,14 @@ export default class HbGame extends Panel { ...@@ -45,7 +52,14 @@ export default class HbGame extends Panel {
this.rainGroup.height = this.width / window.innerWidth * window.innerHeight; this.rainGroup.height = this.width / window.innerWidth * window.innerHeight;
this.tipLabel.textFlow = (new HtmlTextParser).parser(`抢到<b>${this.data.needScore}</b>个红包才有奖励哦~`); this.tipLabel.textFlow = (new HtmlTextParser).parser(`抢到<b>${this.data.needScore}</b>个红包才有奖励哦~`);
this.cutTimeLabel.text = `${this.time}` this.cutTimeLabel.text = `${this.time}`;
this.cutShape = new egret.Shape();
this.cutShape.graphics.beginFill(0xff0000);
this.cutShape.graphics.drawArc(63, 90, 60, -Math.PI / 180 * 90, Math.PI / 180 * 270, true);
this.cutShape.graphics.endFill();
this.cutTimerGroup.addChild(this.cutShape);
this.cutCircle.mask = this.cutShape;
} }
// 加分 // 加分
...@@ -134,6 +148,46 @@ export default class HbGame extends Panel { ...@@ -134,6 +148,46 @@ export default class HbGame extends Panel {
this.cutTime = new egret.Timer(1000, 0); this.cutTime = new egret.Timer(1000, 0);
this.cutTime.addEventListener(egret.TimerEvent.TIMER, this.timeCallFun, this); this.cutTime.addEventListener(egret.TimerEvent.TIMER, this.timeCallFun, this);
this.cutTime.start(); this.cutTime.start();
this.getSectorProgress();
}
private getSectorProgress(): egret.Shape {
let shape = this.cutShape;
let angle: number = 360;
let cTime: number = 0;
let totalTime: number = this.totalTime;
let lastT = new Date().getTime();
let dt = 0;
egret.startTick(function(timeStamp: number): boolean {
dt = (new Date().getTime() - lastT) / 1000;
cTime += dt;
if(cTime > totalTime){
cTime = 0;
}
angle = 360 * cTime / totalTime;
changeGraphics(angle);
angle = angle % 360;
lastT = new Date().getTime();
return true;
}, this);
return shape;
function changeGraphics(angle) {
angle -= 90;
shape.graphics.clear();
shape.graphics.beginFill(0xff0000);
shape.graphics.moveTo(63, 90);
shape.graphics.lineTo(100, 50);
shape.graphics.drawArc(63, 90, 60, -Math.PI / 180 * 90, angle * Math.PI / 180, true);
shape.graphics.lineTo(63, 90);
shape.graphics.endFill();
}
} }
private timeCallFun() { private timeCallFun() {
...@@ -141,6 +195,12 @@ export default class HbGame extends Panel { ...@@ -141,6 +195,12 @@ export default class HbGame extends Panel {
if(this.time <= 0) { if(this.time <= 0) {
this.gameOver(); this.gameOver();
} }
if(this.time == 3) {
let _y = this.cutTimerGroup.y;
egret.Tween.get(this.cutTimerGroup, {loop: true}).to({y: _y + 10}, 100).call(() => {
egret.Tween.get(this.cutTimerGroup).to({y: _y}, 100);
})
}
} }
private readyTimeEffect() { private readyTimeEffect() {
......
...@@ -2,7 +2,6 @@ import { GDispatcher } from "../../../libs/tc/util/GDispatcher"; ...@@ -2,7 +2,6 @@ import { GDispatcher } from "../../../libs/tc/util/GDispatcher";
import RainData from "./RainData"; import RainData from "./RainData";
import { loadSvga } from "../../loadSvga"; import { loadSvga } from "../../loadSvga";
import getResPath from "../../../libs/new_tc/getResPath"; import getResPath from "../../../libs/new_tc/getResPath";
import PanelCtrl from "../../../libs/new_wx/ctrls/panelCtrl";
export default class RainObj { export default class RainObj {
private data = null; private data = null;
...@@ -50,14 +49,15 @@ export default class RainObj { ...@@ -50,14 +49,15 @@ export default class RainObj {
let _scaleY = this.module.scaleY; let _scaleY = this.module.scaleY;
egret.Tween.get(this.module).to({scaleX: _scaleX + 0.2, scaleY: _scaleY + 0.2}, 100).call(() => { egret.Tween.get(this.module).to({scaleX: _scaleX + 0.2, scaleY: _scaleY + 0.2}, 100).call(() => {
this.module.source = `hbGame_${this.data.key}_touch_png`; this.module.source = `hbGame_${this.data.key}_touch_png`;
egret.Tween.get(this.module).to({scaleX: _scaleX, scaleY: _scaleY}, 100).call(()=>{ egret.Tween.get(this.module).to({scaleX: _scaleX, scaleY: _scaleY}, 100).call(() => {
if(this.data.key == 'hongbao'){ if(this.data.key == 'hongbao') {
loadSvga(getResPath() + 'resource/assets/svgas/hbRainHb.svga', this.rainGroup).then(async (mv: any) => { loadSvga(getResPath() + 'resource/assets/svgas/hbRainHb.svga', this.rainGroup).then(async (mv: any) => {
mv.addEventListener(egret.Event.COMPLETE, () => { mv.addEventListener(egret.Event.COMPLETE, () => {
this.rainGroup.removeChild(mv); this.rainGroup.removeChild(mv);
}, this); }, this);
mv.x = this.module.x - 180 * this.module.scaleX; mv.x = this.module.x - 180 * this.module.scaleX;
mv.y = this.module.y - 250 * this.module.scaleY; mv.y = this.module.y - 250 * this.module.scaleY;
mv.touchEnable = false;
mv.scaleX = this.module.scaleX; mv.scaleX = this.module.scaleX;
mv.scaleY = this.module.scaleY; mv.scaleY = this.module.scaleY;
this.rainGroup.addChild(mv); this.rainGroup.addChild(mv);
...@@ -70,6 +70,7 @@ export default class RainObj { ...@@ -70,6 +70,7 @@ export default class RainObj {
// 添加分数特效 // 添加分数特效
private addScoreEffect() { private addScoreEffect() {
let timeout = (this.data.key == 'hongbao') ? 500 : 300;
setTimeout(() => { setTimeout(() => {
let score = new eui.Image(`hbGame_+${RainData.data[this.data.key].score}_png`); let score = new eui.Image(`hbGame_+${RainData.data[this.data.key].score}_png`);
let _x = score.x = this.module.x - 20; let _x = score.x = this.module.x - 20;
...@@ -82,7 +83,7 @@ export default class RainObj { ...@@ -82,7 +83,7 @@ export default class RainObj {
score.visible = false score.visible = false
}); });
}); });
}, 500); }, timeout);
} }
private destroy() { private destroy() {
......
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