Commit 5927b3de authored by wjf's avatar wjf

l

parent a317d322
...@@ -29,7 +29,7 @@ ...@@ -29,7 +29,7 @@
<body> <body>
<div style="margin: auto;width: 100%;height: 100%;" class="egret-player" data-entry-class="Main" data-orientation="auto" <div style="margin: auto;width: 100%;height: 100%;" class="egret-player" data-entry-class="Main" data-orientation="auto"
data-scale-mode="showAll" data-frame-rate="60" data-content-width="750" data-content-height="1624" data-scale-mode="showAll" data-frame-rate="60" data-content-width="750" data-content-height="1624"
data-multi-fingered="2" data-show-fps="true" data-show-log="false" data-show-fps-style="x:0,y:0,size:12,textColor:0xffffff,bgAlpha:0.9"> data-multi-fingered="2" data-show-fps="false" data-show-log="false" data-show-fps-style="x:0,y:0,size:12,textColor:0xffffff,bgAlpha:0.9">
</div> </div>
<script src="libs/decomp.min.js"></script> <script src="libs/decomp.min.js"></script>
...@@ -43,6 +43,9 @@ ...@@ -43,6 +43,9 @@
<script src="libs/security.js"></script> <script src="libs/security.js"></script>
<script src="libs/downloadApp.js"></script> <script src="libs/downloadApp.js"></script>
<!-- <script src='https://cdnjs.cloudflare.com/ajax/libs/mathjs/5.4.0/math.js'></script> --> <!-- <script src='https://cdnjs.cloudflare.com/ajax/libs/mathjs/5.4.0/math.js'></script> -->
<!-- 加密的两个js -->
<script crossorigin="anonymous" src="//yun.duiba.com.cn/db_games/libs/aes.js"></script>
<script crossorigin="anonymous" src="//yun.duiba.com.cn/db_games/libs/pad-zeropadding.js"></script>
<script> <script>
// localStorage.clear(); // localStorage.clear();
// localStorage.setItem('currentLv','Gift2'); // localStorage.setItem('currentLv','Gift2');
......
...@@ -23,15 +23,16 @@ import BoomNoPrizePanel from "../../src/panels/BoomNoPrizePanel"; ...@@ -23,15 +23,16 @@ import BoomNoPrizePanel from "../../src/panels/BoomNoPrizePanel";
import CashPrizePanel from "../../src/panels/CashPrizePanel"; import CashPrizePanel from "../../src/panels/CashPrizePanel";
import CashNoPrizePanel from "../../src/panels/CashNoPrizePanel"; import CashNoPrizePanel from "../../src/panels/CashNoPrizePanel";
import CashBigPrizePanel from "../../src/panels/CashBigPrize"; import CashBigPrizePanel from "../../src/panels/CashBigPrize";
import { ajaxElement } from "../../src/hdTool";
export default class MainBase extends eui.UILayer { export default class MainBase extends eui.UILayer {
constructor() { constructor() {
super(); super();
check_webp_feature(); check_webp_feature();
Loading.instace.loadImage(); Loading.instace.loadImage();
DataManager.ins.gameCfgData = window['CFG']; // DataManager.ins.gameCfgData = window['CFG'];
DataManager.ins.gameCfgData.gameInfo.gameId = window["gameId"]; // DataManager.ins.gameCfgData.gameInfo.gameId = window["gameId"];
this.getData(); // this.getData();
} }
protected registerModules() { protected registerModules() {
...@@ -58,9 +59,9 @@ export default class MainBase extends eui.UILayer { ...@@ -58,9 +59,9 @@ export default class MainBase extends eui.UILayer {
panels.forEach(item => PanelCtrl.instance.registerPanel(item[0], item[1])); panels.forEach(item => PanelCtrl.instance.registerPanel(item[0], item[1]));
scenes.forEach(item => SceneCtrl.instance.registerScene(item[0], item[1])); scenes.forEach(item => SceneCtrl.instance.registerScene(item[0], item[1]));
NetManager.ins.onNotSuccess = (msg) => { // NetManager.ins.onNotSuccess = (msg) => {
showAlertPanel(msg) // showAlertPanel(msg)
} // }
} }
protected get startSceneConfig() { protected get startSceneConfig() {
...@@ -154,6 +155,7 @@ export default class MainBase extends eui.UILayer { ...@@ -154,6 +155,7 @@ export default class MainBase extends eui.UILayer {
// } // }
private async runGame() { private async runGame() {
await ajaxElement();
await this.loadResource() await this.loadResource()
if (!window['development']) if (!window['development'])
RES.getResAsync(`alert_json`); RES.getResAsync(`alert_json`);
......
...@@ -21,7 +21,7 @@ export default class Loading extends egret.Sprite { ...@@ -21,7 +21,7 @@ export default class Loading extends egret.Sprite {
_bg: egret.Bitmap; _bg: egret.Bitmap;
_progress: egret.Bitmap; _progress: egret.Bitmap;
loadImage() { loadImage() {
this.getBitmap(Loading.bg, (bitmap: egret.Bitmap) => { this.getBitmap(Loading.bg, (bitmap: egret.Bitmap) => {
const t = Date.now() - window['__startTime__']; const t = Date.now() - window['__startTime__'];
console.log(`首屏loading显示时间:${t}ms`); console.log(`首屏loading显示时间:${t}ms`);
...@@ -38,6 +38,13 @@ export default class Loading extends egret.Sprite { ...@@ -38,6 +38,13 @@ export default class Loading extends egret.Sprite {
this._progress.anchorOffsetX = this._progress.anchorOffsetY = 28; this._progress.anchorOffsetX = this._progress.anchorOffsetY = 28;
this.addChild(this._progress); this.addChild(this._progress);
}) })
//加个透明的,阻止事件
var bg: egret.Shape = new egret.Shape();
bg.graphics.beginFill(0x000000, 0);
bg.graphics.drawRect(0, 0, 750, 1624);
bg.graphics.endFill();
bg.touchEnabled = true;
this.addChildAt(bg, 0);
} }
static get instace(): Loading { static get instace(): Loading {
......
...@@ -2,24 +2,27 @@ import { DataManager } from "../../tw/manager/DataManager"; ...@@ -2,24 +2,27 @@ import { DataManager } from "../../tw/manager/DataManager";
import { NetManager } from "../../tw/manager/NetManager"; import { NetManager } from "../../tw/manager/NetManager";
import { HtmlTextParser } from "../HtmlTextParser"; import { HtmlTextParser } from "../HtmlTextParser";
import Panel from "./Panel"; import Panel from "./Panel";
import { globalData } from "../../../src/hdTool";
export default class RulePanel extends Panel { export default class RulePanel extends Panel {
public labContent: eui.Label; public labContent: eui.Label;
public scroller: eui.Scroller; public scroller: eui.Scroller;
start() { start() {
if (!DataManager.ins.getRuleData) // if (!DataManager.ins.getRuleData)
NetManager.ins.getRule(() => { // NetManager.ins.getRule(() => {
this.addRule(); // this.addRule();
}); // });
else // else
this.addRule(); this.addRule();
} }
group: eui.Group; group: eui.Group;
private addRule() { private addRule() {
const text = DataManager.ins.getRuleData.ruleText; // const text = DataManager.ins.getRuleData.ruleText;
this.labContent.textFlow = (new HtmlTextParser).parser(DataManager.ins.getRuleData.ruleText); // this.labContent.textFlow = (new HtmlTextParser).parser(DataManager.ins.getRuleData.ruleText);
this.labContent.textFlow = (new HtmlTextParser).parser(globalData.rule || "");
// console.log(this.labContent)
} }
get skinKey() { return 'Rule' } get skinKey() { return 'Rule' }
} }
\ No newline at end of file
{ {
"type": "activity", "type": "activity",
"name": "game" "name": "qiaoqiaoban1207"
} }
\ No newline at end of file
...@@ -24,8 +24,8 @@ class TuiaAutoUpload { ...@@ -24,8 +24,8 @@ class TuiaAutoUpload {
var _this = this; var _this = this;
this.client = new OSS({ this.client = new OSS({
region: 'oss-cn-hangzhou', region: 'oss-cn-hangzhou',
accessKeyId: 'LTAIdGi1IOap7fkF', accessKeyId: 'LTAI4Fw25WcfcGv7FvcHoiHK',
accessKeySecret: 'SKrOOp6EVtDGEV47yn0t2h97gyNioQ', accessKeySecret: 'NZk1NtT9J5HFaAolNbtQdzTzLLvLYm',
bucket: _this.type === 'prod' ? 'duiba' : 'daily-duiba' bucket: _this.type === 'prod' ? 'duiba' : 'daily-duiba'
}); });
this.bar = new ProgressBar(chalk.yellow(` 文件上传中 [:bar] :current/${this.files().length} :percent :elapseds`), { this.bar = new ProgressBar(chalk.yellow(` 文件上传中 [:bar] :current/${this.files().length} :percent :elapseds`), {
......
{"options":{"layoutMath":"2","sizeMode":"2n","useExtension":1,"layoutGap":1,"extend":0},"projectName":"alert","version":5,"files":["../assets/alert/alertbg.png"]} {"options":{"layoutMath":"2","sizeMode":"2n","useExtension":1,"layoutGap":1,"extend":0},"projectName":"alert","version":5,"files":["..\\assets\\alert\\alertbg.png"]}
\ No newline at end of file \ No newline at end of file
{"options":{"layoutMath":"2","sizeMode":"2n","useExtension":1,"layoutGap":1,"extend":0},"projectName":"boomnoprize","version":5,"files":["../assets/boomnoprize/boomnoprizebg.png"]} {"options":{"layoutMath":"2","sizeMode":"2n","useExtension":1,"layoutGap":1,"extend":0},"projectName":"boomnoprize","version":5,"files":["..\\assets\\boomnoprize\\boomnoprizebg.png"]}
\ No newline at end of file \ No newline at end of file
{"options":{"layoutMath":"2","sizeMode":"2n","useExtension":1,"layoutGap":1,"extend":0},"projectName":"boomprize","version":5,"files":["../assets/boomprize/getbtn.png","../assets/boomprize/boomprizebg.png"]} {"options":{"layoutMath":"2","sizeMode":"2n","useExtension":1,"layoutGap":1,"extend":0},"projectName":"boomprize","version":5,"files":["..\\assets\\boomprize\\getbtn.png","..\\assets\\boomprize\\boomprizebg.png"]}
\ No newline at end of file \ No newline at end of file
{"options":{"layoutMath":"2","sizeMode":"2n","useExtension":1,"layoutGap":1,"extend":0},"projectName":"cashbigprize","version":5,"files":["../assets/cashbigprize/cashbigprizebg.png","../assets/cashbigprize/getbtn2.png"]} {"options":{"layoutMath":"2","sizeMode":"2n","useExtension":1,"layoutGap":1,"extend":0},"projectName":"cashbigprize","version":5,"files":["..\\assets\\cashbigprize\\cashbigprizebg.png","..\\assets\\cashbigprize\\getbtn2.png"]}
\ No newline at end of file \ No newline at end of file
{"options":{"layoutMath":"2","sizeMode":"2n","useExtension":1,"layoutGap":1,"extend":0},"projectName":"cashnoprize","version":5,"files":["../assets/cashnoprize/cashnoprizebg.png"]} {"options":{"layoutMath":"2","sizeMode":"2n","useExtension":1,"layoutGap":1,"extend":0},"projectName":"cashnoprize","version":5,"files":["..\\assets\\cashnoprize\\cashnoprizebg.png"]}
\ No newline at end of file \ No newline at end of file
{"options":{"layoutMath":"2","sizeMode":"2n","useExtension":1,"layoutGap":1,"extend":0},"projectName":"cashprize","version":5,"files":["../assets/cashprize/getbtn3.png","../assets/cashprize/cashprizebg.png"]} {"options":{"layoutMath":"2","sizeMode":"2n","useExtension":1,"layoutGap":1,"extend":0},"projectName":"cashprize","version":5,"files":["..\\assets\\cashprize\\getbtn3.png","..\\assets\\cashprize\\cashprizebg.png"]}
\ No newline at end of file \ No newline at end of file
{"options":{"layoutMath":"2","sizeMode":"2n","useExtension":1,"layoutGap":1,"extend":0},"projectName":"preload","version":5,"files":["..\\assets\\startScene\\title.png"]}
\ No newline at end of file
{"options":{"layoutMath":"2","sizeMode":"2n","useExtension":1,"layoutGap":1,"extend":0},"projectName":"rule","version":5,"files":["../assets/rule/X.png","../assets/rule/ruleBg.png"]} {"options":{"layoutMath":"2","sizeMode":"2n","useExtension":1,"layoutGap":1,"extend":0},"projectName":"rule","version":5,"files":["..\\assets\\rule\\X.png","..\\assets\\rule\\ruleBg.png"]}
\ No newline at end of file \ No newline at end of file
{"options":{"layoutMath":"2","sizeMode":"2n","useExtension":1,"layoutGap":1,"extend":0},"projectName":"start","version":5,"files":["../assets/startScene/toast.png","../assets/startScene/toast_success.png","../assets/startScene/toast_failed.png","../assets/startScene/startbtnGray.png","../assets/startScene/startbtn.png","../assets/startScene/ruleBtn.png","../assets/startScene/recordbtn.png","../assets/startScene/rankBtn.png","../assets/startScene/optionBtn.png","../assets/startScene/getit.png","../assets/startScene/closeBtn.png","../assets/startScene/btnRight1.png","../assets/startScene/btnRight.png","../assets/startScene/btnLeft1.png","../assets/startScene/btnLeft.png","../assets/startScene/boomalert.png","../assets/startScene/bg3.png","../assets/startScene/arrow.png","../assets/startScene/转盘前景.png","../assets/startScene/小丑+转盘.png","../assets/startScene/显示器纹路.png","../assets/startScene/碗前盖.png","../assets/startScene/碗后盖.png","../assets/startScene/甜筒-已获得.png","../assets/startScene/甜筒-未获得.png","../assets/startScene/甜甜圈-已获得.png","../assets/startScene/甜甜圈-未获得.png","../assets/startScene/糖果-已获得.png","../assets/startScene/糖果-未获得.png","../assets/startScene/前景.png","../assets/startScene/目标.png","../assets/startScene/礼盒-已获得.png","../assets/startScene/礼盒-未获得.png","../assets/startScene/垃圾桶前盖.png","../assets/startScene/垃圾桶后盖.png","../assets/startScene/垃圾桶.png","../assets/startScene/进度条-已显示.png","../assets/startScene/进度条-未显示.png","../assets/startScene/金蛋-已获得.png","../assets/startScene/金蛋-未获得.png","../assets/startScene/奖品.png","../assets/startScene/红包gray.png","../assets/startScene/红包.png","../assets/startScene/灯2.png","../assets/startScene/灯1.png"]} {"options":{"layoutMath":"2","sizeMode":"2n","useExtension":1,"layoutGap":1,"extend":0},"projectName":"start","version":5,"files":["..\\assets\\startScene\\toast.png","..\\assets\\startScene\\toast_success.png","..\\assets\\startScene\\toast_failed.png","..\\assets\\startScene\\startbtnGray.png","..\\assets\\startScene\\startbtn.png","..\\assets\\startScene\\ruleBtn.png","..\\assets\\startScene\\recordbtn.png","..\\assets\\startScene\\rankBtn.png","..\\assets\\startScene\\optionBtn.png","..\\assets\\startScene\\getit.png","..\\assets\\startScene\\closeBtn.png","..\\assets\\startScene\\btnRight1.png","..\\assets\\startScene\\btnRight.png","..\\assets\\startScene\\btnLeft1.png","..\\assets\\startScene\\btnLeft.png","..\\assets\\startScene\\boomalert.png","..\\assets\\startScene\\bg3.png","..\\assets\\startScene\\arrow.png","..\\assets\\startScene\\转盘前景.png","..\\assets\\startScene\\小丑+转盘.png","..\\assets\\startScene\\显示器纹路.png","..\\assets\\startScene\\碗前盖.png","..\\assets\\startScene\\碗后盖.png","..\\assets\\startScene\\甜筒-已获得.png","..\\assets\\startScene\\甜筒-未获得.png","..\\assets\\startScene\\甜甜圈-已获得.png","..\\assets\\startScene\\甜甜圈-未获得.png","..\\assets\\startScene\\糖果-已获得.png","..\\assets\\startScene\\糖果-未获得.png","..\\assets\\startScene\\前景.png","..\\assets\\startScene\\目标.png","..\\assets\\startScene\\礼盒-已获得.png","..\\assets\\startScene\\礼盒-未获得.png","..\\assets\\startScene\\垃圾桶前盖.png","..\\assets\\startScene\\垃圾桶后盖.png","..\\assets\\startScene\\垃圾桶.png","..\\assets\\startScene\\进度条-已显示.png","..\\assets\\startScene\\进度条-未显示.png","..\\assets\\startScene\\金蛋-已获得.png","..\\assets\\startScene\\金蛋-未获得.png","..\\assets\\startScene\\奖品.png","..\\assets\\startScene\\红包gray.png","..\\assets\\startScene\\红包.png","..\\assets\\startScene\\灯2.png","..\\assets\\startScene\\灯1.png","..\\assets\\startScene\\title.png"]}
\ No newline at end of file \ No newline at end of file
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
"name": "rule" "name": "rule"
}, },
{ {
"keys": "toast_png,toast_success_png,toast_failed_png,startscenebg_jpg,startbtnGray_png,startbtn_png,ruleBtn_png,recordbtn_png,rankBtn_png,optionBtn_png,getit_png,closeBtn_png,btnRight1_png,btnRight_png,btnLeft1_png,btnLeft_png,boomalert_png,bg3_png,arrow_png,转盘前景_png,小丑+转盘_png,显示器纹路_png,碗前盖_png,碗后盖_png,甜筒-已获得_png,甜筒-未获得_png,甜甜圈-已获得_png,甜甜圈-未获得_png,糖果-已获得_png,糖果-未获得_png,前景_png,目标_png,礼盒-已获得_png,礼盒-未获得_png,垃圾桶前盖_png,垃圾桶后盖_png,垃圾桶_png,进度条-已显示_png,进度条-未显示_png,金蛋-已获得_png,金蛋-未获得_png,奖品_png,红包gray_png,红包_png,灯2_png,灯1_png", "keys": "toast_png,toast_success_png,toast_failed_png,startscenebg_jpg,startbtnGray_png,startbtn_png,ruleBtn_png,recordbtn_png,rankBtn_png,optionBtn_png,getit_png,closeBtn_png,btnRight1_png,btnRight_png,btnLeft1_png,btnLeft_png,boomalert_png,bg3_png,arrow_png,转盘前景_png,小丑+转盘_png,显示器纹路_png,碗前盖_png,碗后盖_png,甜筒-已获得_png,甜筒-未获得_png,甜甜圈-已获得_png,甜甜圈-未获得_png,糖果-已获得_png,糖果-未获得_png,前景_png,目标_png,礼盒-已获得_png,礼盒-未获得_png,垃圾桶前盖_png,垃圾桶后盖_png,垃圾桶_png,进度条-已显示_png,进度条-未显示_png,金蛋-已获得_png,金蛋-未获得_png,奖品_png,红包gray_png,红包_png,灯2_png,灯1_png,title_png",
"name": "start" "name": "start"
}, },
{ {
...@@ -31,6 +31,10 @@ ...@@ -31,6 +31,10 @@
{ {
"keys": "alertbg_png", "keys": "alertbg_png",
"name": "alert" "name": "alert"
},
{
"keys": "title_png",
"name": "preload"
} }
], ],
"resources": [ "resources": [
...@@ -412,6 +416,11 @@ ...@@ -412,6 +416,11 @@
"url": "assets/extra/candy_icon.png", "url": "assets/extra/candy_icon.png",
"type": "image", "type": "image",
"name": "candy_icon_png" "name": "candy_icon_png"
},
{
"url": "assets/startScene/title.png",
"type": "image",
"name": "title_png"
} }
] ]
} }
\ No newline at end of file
...@@ -15,6 +15,7 @@ ...@@ -15,6 +15,7 @@
<e:Image id="leftbasket" source="垃圾桶后盖_png" x="69.5" y="1214.5" anchorOffsetX="64"/> <e:Image id="leftbasket" source="垃圾桶后盖_png" x="69.5" y="1214.5" anchorOffsetX="64"/>
<e:Image id="arrow" source="arrow_png" y="1041" anchorOffsetX="275" anchorOffsetY="279" rotation="0" x="373"/> <e:Image id="arrow" source="arrow_png" y="1041" anchorOffsetX="275" anchorOffsetY="279" rotation="0" x="373"/>
<e:Image id="pipeline" source="bg3_png" y="0" x="0"/> <e:Image id="pipeline" source="bg3_png" y="0" x="0"/>
<e:Image id="title" y="0" x="0" source="title_png"/>
<e:Image id="fg" source="前景_png" x="0" y="1220"/> <e:Image id="fg" source="前景_png" x="0" y="1220"/>
<e:Image id="rightbasket1" source="碗前盖_png" x="645.5" y="1237.5" anchorOffsetX="93.5"/> <e:Image id="rightbasket1" source="碗前盖_png" x="645.5" y="1237.5" anchorOffsetX="93.5"/>
<e:Image id="leftbasket1" source="垃圾桶前盖_png" x="48" y="1217" anchorOffsetX="87.5"/> <e:Image id="leftbasket1" source="垃圾桶前盖_png" x="48" y="1217" anchorOffsetX="87.5"/>
......
export const globalData: {
"element"?: {
"isCreditsTypeOpen": boolean,
"myCreditsLong": number,
"freeLimit": number,
"success": false,
"myCredits": string,
"needCredits": string,
"freeEmpty": true,
"needCreditsLong": number,
"status": number
},
rule?: string,
orderId?: string,
submitToken?: string,
lottery?: {
}
} = {
}
export function ajaxElement(): Promise<{ success: boolean, data?: any }> {
return new Promise((r) => {
window['$'].ajax({
url: "/hdtool/recon/ajaxElement", //请求地址
type: "GET",//"POST", //请求方式
cache: false,
data: {
duibaId: window['CFG'].hdToolId,
activityId: window['CFG'].actId,
}, //请求参数
dataType: "json", // 返回值类型的设定,暂时只有json
async: true, //是否异步
// headers: headers,
success: function (res) {
if (!res.success) {
showToast(res.desc || "网络异常,请稍后再试")
} else {
globalData.element = res.data.element;
globalData.rule = res.data.rule;
}
r(res)
},
error: function (status) {
showToast("网络异常,请稍后再试")
r({ success: false })
},
})
})
}
//开始游戏,接口可能有变
export function doJoin(): Promise<{ success: boolean, data?: any }> {
return new Promise(async (r) => {
//获取token
var token = await getTokenHdtoll();
if (!token) {//如果没有token
showToast("token获取失败")
r({ success: false })
return
}
window['$'].ajax({
url: "/hdtool/recon/doJoin",
type: "GET",//"POST", //请求方式
cache: false,
data: {
token,
activityId: window['CFG'].actId,
activityType: "hdtool",
consumerId: window['CFG'].consumerId
}, //请求参数
dataType: "json", // 返回值类型的设定,暂时只有json
async: true, //是否异步
// headers: headers,
success: function (res) {
if (!res.success) {
showToast(res.desc || "网络异常,请稍后再试")
} else {
globalData.orderId = res.data
}
r(res)
},
error: function (status) {
showToast("网络异常,请稍后再试")
r({ success: false })
},
})
})
}
//轮询
export function getNgameStartStatus(orderId = globalData.orderId): Promise<any> {
let count = 0;
return new Promise((resolve) => {
(async function ask(r) {
const data = await getN(orderId);
if (data.code == "0000000000") {
//@ts-ignore
globalData.submitToken = data.data.submitToken
r(data);
} else {
//超过10次的话,提示下
if (++count >= 10) {
showToast("获取开始游戏信息失败\n请稍后重试")
r({ success: false })
return
}
setTimeout(() => { ask(r) }, 500)
}
})(resolve)
})
}
function getN(orderId): Promise<{ success: boolean, data?: any, code?: string }> {
return new Promise((r) => {
window['$'].ajax({
url: "/hdtool/recon/ngame/getNgameStartStatus",
type: "GET",//"POST", //请求方式
cache: false,
data: {
orderId,
}, //请求参数
dataType: "json", // 返回值类型的设定,暂时只有json
async: true, //是否异步
// headers: headers,
success: function (res) {
r(res)
},
error: function (status) {
r({ success: false })
},
})
})
}
/**
*
* @param orderId doJoin里的数据
* @param score 分数可能传1
* @param submitToken 开始状态轮询数据里的
*/
export function submit(
orderId: string = globalData.orderId,
score: number = 1,
submitToken: string = globalData.submitToken
): Promise<{ success: boolean, data?: any }> {
let gameData = "[]";
let sign = window['duiba_md5'](orderId + '' + score + '' + gameData + '' + submitToken);
// let sgin = duiba_md5(orderId + '' + score + '' + gameData + '' + submitToken);
let dynamicData = JSON.stringify(`{t2:${new Date().getTime()}}`);
const param: any = {
orderId,
score,
gameData,
sign,//新的加密接口用这个
dynamicData
};
return new Promise((r) => {
window["$"].ajax({
url: "/hdtool/refactor/ngame/submit",
type: "POST", //请求方式
cache: false,
data: null, //请求参数
dataType: "json", // 返回值类型的设定,暂时只有json
async: true, //是否异步
headers: { "Hdtool-Content": encrypt(param) },
success: function (res) {
if (!res.success) showToast(res.desc || "网络异常,请稍后再试")
r(res)
},
error: function (status) {
showToast("网络异常,正在重试中")
r({ success: false })
},
})
})
}
//获取奖品信息,这里面的data.element用于更新ajaxElement,要轮询
export function getOrderStatus(orderId = globalData.orderId): Promise<{ success: boolean, data?: any }> {
let count = 0;
return new Promise((resolve) => {
(async function ask(r) {
const data = await getO(orderId);
if (data.code == "0000000000") {
globalData.element = data.data.element;
globalData.lottery = data.data.lottery;
r(data);
} else {
//超过10次的话,提示下
if (++count >= 10) {
showToast("获取开始游戏信息失败\n请稍后重试")
r({ success: false })
return
}
setTimeout(() => { ask(r) }, 500)
}
})(resolve)
})
}
function getO(orderId): Promise<{ success: boolean, data?: any, code?: string }> {
return new Promise((r) => {
window["$"].ajax({
url: "/hdtool/recon/getOrderStatus", //请求地址
type: "GET",//"POST", //请求方式
cache: false,
data: {
orderId
}, //请求参数
dataType: "json", // 返回值类型的设定,暂时只有json
async: true, //是否异步
// headers: headers,
success: function (res) {
r(res)
},
error: function (status) {
r({ success: false })
},
})
})
}
function getTokenHdtoll(): Promise<string> {
return new Promise((r) => {
if (window.location.port == "8080") {
r("111")
} else {
if (!window['getDuibaToken']) {
r(null);
} else {
window['getDuibaToken']((tokenObj) => {
r(tokenObj.token);
}, (key, messageObj) => {
r(null);
});
}
}
})
}
//加密
function encrypt(data) {
//排序键值
// let keysSorted = Object.keys(data).sort(function (a, b) { return data[b] - data[a] })
// var str = ""; //aaa=a&bbb=b&cc=c;
// for (let i = 0; i < keysSorted.length; i++) {
// if (str) str += "&";
// str += keysSorted[i] + "=" + data[keysSorted[i]];
// }
// JSON.stringify(data)
var kk = (+window['CFG'].consumerId).toString(32)
kk = kk.substring(0, 16);
//补0;
var len = kk.length;
while (len < 16) {
kk = kk + "0";
len++;
}
var ii = (+window['CFG'].consumerId).toString(16)
ii = ii.substring(0, 16);
//补0;
var len = ii.length;
while (len < 16) {
ii = ii + "0";
len++;
}
var CryptoJS = window["CryptoJS"];
var key = CryptoJS.enc.Utf8.parse(kk);
var iv = CryptoJS.enc.Utf8.parse(ii);
return CryptoJS.AES.encrypt(/*str*/JSON.stringify(data), key, {
iv: iv,
mode: CryptoJS.mode.CBC,
padding: CryptoJS.pad.ZeroPadding
}).toString();
}
export function showToast(msg) {
var m = document.createElement('div');
m.innerHTML = msg;
m.style.cssText = "width:60%; min-width:150px; background:#000; opacity:0.5; height:40px; color:#fff; line-height:40px; text-align:center; border-radius:5px; position:fixed; top:40%; left:20%; z-index:999999; font-weight:bold;";
document.body.appendChild(m);
setTimeout(function () {
var d = 0.5;
m.style.webkitTransition = '-webkit-transform ' + d + 's ease-in, opacity ' + d + 's ease-in';
m.style.opacity = '0';
setTimeout(function () { document.body.removeChild(m) }, d * 1000);
}, 1000);
}
// window.location.href = getRecordUrl('00');
//到时处理,封装到Hdtool
export function getRecordUrl(type, ids?) {
let recordUrl;
let oaId;
oaId = window["CFG"].oaId;
recordUrl = window["CFG"].recordUrl;
if (!ids) {
ids = [oaId];
}
let i = 0;
const len = ids.length;
for (i; i < len; i++) {
if (window.location.href.indexOf("?") == -1) {
recordUrl += '?origins=' + ids[i] + type;
} else {
recordUrl += '&origins=' + ids[i] + type;
}
}
return recordUrl;
}
\ No newline at end of file
...@@ -3,16 +3,27 @@ import Panel from "../../libs/new_wx/components/Panel"; ...@@ -3,16 +3,27 @@ import Panel from "../../libs/new_wx/components/Panel";
import { LotteryType } from "../../libs/tw/enum/LotteryType"; import { LotteryType } from "../../libs/tw/enum/LotteryType";
import { DataManager } from "../../libs/tw/manager/DataManager"; import { DataManager } from "../../libs/tw/manager/DataManager";
import { NetManager } from "../../libs/tw/manager/NetManager"; import { NetManager } from "../../libs/tw/manager/NetManager";
import { globalData } from "../hdTool";
export default class BoomPrizePanel extends Panel { export default class BoomPrizePanel extends Panel {
start(data) { start(data) {
const lottery = DataManager.ins.getPlugOrderStatusData.lottery; const lottery = globalData.lottery//DataManager.ins.getPlugOrderStatusData.lottery;
this.data = lottery; this.data = lottery;
this.data.imgurl = this.data.img = this.data.imgUrl;
this.img.width = this.picBigWidth; this.img.width = this.picBigWidth;
this.img.height = this.picBigWidth / this.bigPicRatio; this.img.height = this.picBigWidth / this.bigPicRatio;
showPlugLog(lottery); // showPlugLog(lottery);
//@ts-ignore
var type = lottery.type;
if (type == LotteryType.COUPON || type == LotteryType.LUCKY) {
this.img.width = this.picBigWidth;
this.img.height = this.picBigWidth / this.bigPicRatio;
} else {
this.img.width = this.picBigWidth / this.bigPicRatio;
this.img.height = this.picBigWidth / this.bigPicRatio;
}
} }
initEvents() { initEvents() {
...@@ -22,19 +33,19 @@ export default class BoomPrizePanel extends Panel { ...@@ -22,19 +33,19 @@ export default class BoomPrizePanel extends Panel {
} }
onUse() { onUse() {
const lottery = DataManager.ins.getPlugOrderStatusData.lottery; const lottery: any = globalData.lottery;
if (lottery.type == LotteryType.COUPON || lottery.type == LotteryType.LUCKY) { if (lottery.type == LotteryType.COUPON || lottery.type == LotteryType.LUCKY) {
window["downloadAppConfig"] = window["downloadAppConfig"] =
{ {
openUrl: lottery.openUrl, openUrl: lottery.openUrl,
iosDownloadUrl: lottery.iosDownloadUrl, iosDownloadUrl: lottery.iosDownloadUrl,
androidDownloadUrl: lottery.androidDownloadUrl, androidDownloadUrl: lottery.androidDownloadUrl,
confirm: lottery.confirm ? lottery.confirm : false confirm: lottery.confirm ? lottery.confirm : false
}; };
window["downloadApp"](); window["downloadApp"]();
if (lottery.type == "lucky") { // if (lottery.type == "lucky") {
NetManager.ins.spmclick(DataManager.ins.gameGetSubmitResultData.exposure); // NetManager.ins.spmclick(DataManager.ins.gameGetSubmitResultData.exposure);
} // }
} }
else { else {
window.location.href = lottery.link; window.location.href = lottery.link;
......
...@@ -14,6 +14,8 @@ import { playToastSuccess } from "./playMovieClip"; ...@@ -14,6 +14,8 @@ import { playToastSuccess } from "./playMovieClip";
import doStart from "../../libs/new_tw/ctrls/doStart"; import doStart from "../../libs/new_tw/ctrls/doStart";
import wait from "../../libs/new_tc/wait"; import wait from "../../libs/new_tc/wait";
import { NetManager } from "../../libs/tw/manager/NetManager"; import { NetManager } from "../../libs/tw/manager/NetManager";
import { globalData, showToast, doJoin, getNgameStartStatus, getRecordUrl } from "../hdTool";
import Loading from "../../libs/new_wx/components/Loading";
export default class StartScene extends StartSceneBase { export default class StartScene extends StartSceneBase {
_engine: Matter.Engine; _engine: Matter.Engine;
...@@ -53,6 +55,19 @@ export default class StartScene extends StartSceneBase { ...@@ -53,6 +55,19 @@ export default class StartScene extends StartSceneBase {
super.start(); super.start();
resetData(); resetData();
initLevel(this); initLevel(this);
//标题适配
if (this.stage.stageHeight < 1170) {
this["title"].y = 1170 - this.stage.stageHeight
}
//加个我的奖品按钮
let recordBtn = this.addChild(new eui.Image("//yun.duiba.com.cn/db_games/activity/qiaoqiaoban1207/recordBtn.png"))
recordBtn.x = 20, recordBtn.y = 15;
recordBtn.addEventListener(egret.TouchEvent.TOUCH_TAP, () => {
recordBtn.touchEnabled = false;
setTimeout(() => { recordBtn.touchEnabled = true; }, 1000)
window.location.href = getRecordUrl('00');
}, this)
// console.log(recordBtn)
// wait(5000).then(()=>PanelCtrl.instance.addMask()); // wait(5000).then(()=>PanelCtrl.instance.addMask());
egret.lifecycle.onPause = () => { egret.lifecycle.onPause = () => {
console.log("app 进入后台"); console.log("app 进入后台");
...@@ -190,8 +205,28 @@ export default class StartScene extends StartSceneBase { ...@@ -190,8 +205,28 @@ export default class StartScene extends StartSceneBase {
this['guide'].addChild(createMask()) this['guide'].addChild(createMask())
this['startBtnBg'].addChild(createMask()) this['startBtnBg'].addChild(createMask())
this.updateGetInfoView(); // this.updateGetInfoView();
this.updateExemptionTxt(); // this.updateExemptionTxt();
if (!globalData.element) return;
this.startBtn.visible = this['startBtnBg'].visible = this.countTxt.visible = true;
this.updateCountTxt();
}
updateCountTxt() {
const { freeLimit, status, needCredits, myCredits } = globalData.element;
if (freeLimit >= 1) {
this.countTxt.text = "免费游戏次数:" + freeLimit
} else if (status == 4) {
this.countTxt.text = "今日无剩余次数"
} else if (status == 3) {
this.countTxt.text = "无剩余次数"
}
else {
if (status == 1) {
this.countTxt.text = (window["CFG"].unitName || "积分") + "不足";
} else {
this.countTxt.text = "每局消耗" + needCredits + (window["CFG"].unitName || "积分");
}
}
} }
async onPanelRemoved(e: egret.Event) { async onPanelRemoved(e: egret.Event) {
...@@ -203,12 +238,12 @@ export default class StartScene extends StartSceneBase { ...@@ -203,12 +238,12 @@ export default class StartScene extends StartSceneBase {
} else if (panel.type == ModuleTypes.CashBigPrize || panel.type == ModuleTypes.CashNoPrizePanel || panel.type == ModuleTypes.CashPrizePanel) { } else if (panel.type == ModuleTypes.CashBigPrize || panel.type == ModuleTypes.CashNoPrizePanel || panel.type == ModuleTypes.CashPrizePanel) {
resetLevel(); resetLevel();
this['startBtnBg'].visible = this['startBtn'].visible = this['countTxt'].visible = true; this['startBtnBg'].visible = this['startBtn'].visible = this['countTxt'].visible = true;
this.updateStartBtnStatus(); // this.updateStartBtnStatus();
this.updateCountTxt(); this.updateCountTxt();
} }
else if (panel.type == ModuleTypes.ALERT_PANEL) { else if (panel.type == ModuleTypes.ALERT_PANEL) {
this['startBtnBg'].visible = this['startBtn'].visible = this['countTxt'].visible = true; this['startBtnBg'].visible = this['startBtn'].visible = this['countTxt'].visible = true;
this.updateStartBtnStatus(); // this.updateStartBtnStatus();
this.updateCountTxt(); this.updateCountTxt();
} }
} }
...@@ -235,15 +270,60 @@ export default class StartScene extends StartSceneBase { ...@@ -235,15 +270,60 @@ export default class StartScene extends StartSceneBase {
} }
onTap_startBtn(e?: egret.Event) { onTap_startBtn(e?: egret.Event) {
doStart((success) => { // doStart((success) => {
if (!success) return; // if (!success) return;
wait(1000).then(() => NetManager.ins.getInfo()) // wait(1000).then(() => NetManager.ins.getInfo())
this['startBtnBg'].visible = false; // this['startBtnBg'].visible = false;
this['startBtn'].visible = false; // this['startBtn'].visible = false;
this['countTxt'].visible = false; // this['countTxt'].visible = false;
createItems(this); // createItems(this);
}); // });
if (window["CFG"].isNotLoginUser) {
showToast("您未登录,正在尝试登录中")
// console.log('调用登录方法');
if (window['requirelogin']) {
window['requirelogin']();
} else if (window['requireLogin']) {
window['requireLogin']();
} else {
}
}
//没有次数
else if (globalData.element) {
//判断次数
const { freeLimit, status } = globalData.element;
if (freeLimit >= 1) {
this.doJoin();
} else if (status == 4 || status == 3) {
showToast("参与次数已达上限")
} else {
if (status == 1) {
showToast((window["CFG"].unitName || "积分") + "不足")
} else {
this.doJoin()
}
}
} else {
showToast("网络异常,请稍后再试")
}
}
async doJoin() {
console.log(123213)
Loading.instace.show()
const doJoinData = await doJoin()
Loading.instace.hide();
if (doJoinData.success) { //轮询
Loading.instace.show();
const startData = await getNgameStartStatus(doJoinData.data)
Loading.instace.hide();
if (startData.success) {//轮询成功
this['startBtnBg'].visible = false;
this['startBtn'].visible = false;
this['countTxt'].visible = false;
createItems(this);
}
}
} }
destroy() { destroy() {
......
...@@ -5,14 +5,15 @@ import Loading from "../../libs/new_wx/components/Loading"; ...@@ -5,14 +5,15 @@ import Loading from "../../libs/new_wx/components/Loading";
import PanelCtrl from "../../libs/new_wx/ctrls/panelCtrl"; import PanelCtrl from "../../libs/new_wx/ctrls/panelCtrl";
import { ModuleTypes } from "../../libs/new_wx/types/sceneTypes"; import { ModuleTypes } from "../../libs/new_wx/types/sceneTypes";
import { award } from "./collisionConfig"; import { award } from "./collisionConfig";
import { stopCreateItems } from "./createItems"; import createItems, { stopCreateItems } from "./createItems";
import LabelType from "./LabelType"; import LabelType from "./LabelType";
import { addItem, clearLevel, isAllLevelPass, isLevelPass, nextLevel } from "./level"; import { addItem, clearLevel, isAllLevelPass, isLevelPass, nextLevel, updateLevelView } from "./level";
import { playBoom, playBoomAlert, playSuccess, playToast, playToastSuccess } from "./playMovieClip"; import { playBoom, playBoomAlert, playSuccess, playToast, playToastSuccess } from "./playMovieClip";
import StartScene from "./StartScene"; import StartScene from "./StartScene";
import vibrate from "./vibrate"; import vibrate from "./vibrate";
import { DataManager } from "../../libs/tw/manager/DataManager"; import { DataManager } from "../../libs/tw/manager/DataManager";
import { LotteryType } from "../../libs/tw/enum/LotteryType"; import { LotteryType } from "../../libs/tw/enum/LotteryType";
import { submit, getOrderStatus, ajaxElement } from "../hdTool";
const removeAward = (_this: StartScene) => { const removeAward = (_this: StartScene) => {
const bodies = Matter.Composite.allBodies(_this._engine.world); const bodies = Matter.Composite.allBodies(_this._engine.world);
...@@ -40,9 +41,12 @@ const check = (_this: StartScene) => { ...@@ -40,9 +41,12 @@ const check = (_this: StartScene) => {
// _this._egretRender._root.graphics.drawRect(center2 - paddingX2, ypos2, paddingX2 * 2, h2); // _this._egretRender._root.graphics.drawRect(center2 - paddingX2, ypos2, paddingX2 * 2, h2);
// _this._egretRender._root.graphics.endFill(); // _this._egretRender._root.graphics.endFill();
let isSubmit = false;
const bodies = Matter.Composite.allBodies(_this._engine.world); const bodies = Matter.Composite.allBodies(_this._engine.world);
const isAward = (i: Matter.Body) => { return i.collisionFilter.group == award } const isAward = (i: Matter.Body) => { return i.collisionFilter.group == award }
bodies.forEach(async (i) => { bodies.forEach(async (i) => {
if (isSubmit) return;
if (!isAward(i)) return; if (!isAward(i)) return;
if (i['timer']) { if (i['timer']) {
const t0 = Date.now() - i['timer']; const t0 = Date.now() - i['timer'];
...@@ -90,16 +94,19 @@ const check = (_this: StartScene) => { ...@@ -90,16 +94,19 @@ const check = (_this: StartScene) => {
playBoom(_this['group']); playBoom(_this['group']);
removeAward(_this); removeAward(_this);
stopCreateItems(); stopCreateItems();
await wait(700); await updateLevelView(false);
Loading.instace.show(); await playToastSuccess(_this, 0);
plugDoJoin((success) => { createItems(_this);
Loading.instace.hide(); // await wait(700);
if (success) // Loading.instace.show();
if (plugIsWinning()) // plugDoJoin((success) => {
PanelCtrl.instance.show(ModuleTypes.BoomPrizePanel); // Loading.instace.hide();
else // if (success)
PanelCtrl.instance.show(ModuleTypes.BoomNoPrizePanel); // if (plugIsWinning())
}, window['pluginID']); // PanelCtrl.instance.show(ModuleTypes.BoomPrizePanel);
// else
// PanelCtrl.instance.show(ModuleTypes.BoomNoPrizePanel);
// }, window['pluginID']);
} }
} }
else { else {
...@@ -112,19 +119,52 @@ const check = (_this: StartScene) => { ...@@ -112,19 +119,52 @@ const check = (_this: StartScene) => {
stopCreateItems(); stopCreateItems();
removeAward(_this); removeAward(_this);
// Loading.instace.show();
// plugDoJoin((success) => {
// Loading.instace.hide();
// if (success)
// if (plugIsWinning()) {
// if (DataManager.ins.getPlugOrderStatusData.lottery.type == LotteryType.ALIPAY)
// PanelCtrl.instance.show(ModuleTypes.CashBigPrize);
// else
// PanelCtrl.instance.show(ModuleTypes.CashPrizePanel);
// }
// else
// PanelCtrl.instance.show(ModuleTypes.CashNoPrizePanel);
// }, window['pluginBigPrizeID']);
Loading.instace.show(); Loading.instace.show();
plugDoJoin((success) => { isSubmit = true;
Loading.instace.hide(); submit().then((res) => {
if (success) if (res.success) {
if (plugIsWinning()) { //轮询了
if (DataManager.ins.getPlugOrderStatusData.lottery.type == LotteryType.ALIPAY) getOrderStatus().then((rr) => {
PanelCtrl.instance.show(ModuleTypes.CashBigPrize); if (rr.success) {
else Loading.instace.hide();
PanelCtrl.instance.show(ModuleTypes.CashPrizePanel); var lottery = rr.data.lottery
} //中奖弹框
else if (!lottery || lottery.type == "thanks") {
PanelCtrl.instance.show(ModuleTypes.CashNoPrizePanel);
} else {
if (lottery.type == LotteryType.ALIPAY)
PanelCtrl.instance.show(ModuleTypes.CashBigPrize);
else
PanelCtrl.instance.show(ModuleTypes.CashPrizePanel);
}
} else {
//重新获取数据
ajaxElement().then((r) => {
Loading.instace.hide();
PanelCtrl.instance.show(ModuleTypes.CashNoPrizePanel);
})
}
})
} else {//失败
ajaxElement().then((r) => {
Loading.instace.hide();
PanelCtrl.instance.show(ModuleTypes.CashNoPrizePanel); PanelCtrl.instance.show(ModuleTypes.CashNoPrizePanel);
}, window['pluginBigPrizeID']); })
}
})
} else { } else {
playToastSuccess(_this) playToastSuccess(_this)
......
...@@ -35,6 +35,7 @@ const ontick = () => { ...@@ -35,6 +35,7 @@ const ontick = () => {
frameInterval = 60; frameInterval = 60;
dir = null; dir = null;
} }
// if(i==0)i = Math.floor(Math.random() * types.length);
// i=4; // i=4;
const type = types[i]; const type = types[i];
let body; let body;
......
...@@ -104,7 +104,24 @@ const config = { ...@@ -104,7 +104,24 @@ const config = {
}, },
'/summer/getOrderStatus':{ '/summer/getOrderStatus':{
data: './json/getSummerOrderStatus.json' data: './json/getSummerOrderStatus.json'
} },
'/hdtool/refactor/ngame/submit': {
data: './json/ngameSubmit.json'
},
'/hdtool/recon/ajaxElement': {
data: './json/ajaxElement.json'
},
'/hdtool/recon/getOrderStatus': {
data: './json/getOrderStatus.json'
},
'/hdtool/recon/doJoin': {
data: './json/doJoin.json'
},
'/hdtool/recon/ngame/getNgameStartStatus': {
data: './json/getNgameStartStatus.json'
},
} }
for (let item in config) { for (let item in config) {
......
{ {
"success": true, "code": "0000000000",
//闯关信息 "data": {
"throughCurrent": "1", "creditsConf": {
"throughMode": 3, "creditsUp": 100,
"throughNum": 1, "creditsType": "virtual",
"throughCurrentStep": 8, "creditsDown": 50,
"jsTest": "//yun.duiba.com.cn/h5/showCouponPrize/4.0.0/index_201710191434.js", "prize": [
//弹层js {
"cssTest": "//yun.duiba.com.cn/h5/showCouponPrize/4.0.0/index_201710191440.css", "img": "adsfsadf",
//弹层css "credits": 20,
"rule": "欢迎加入夺宝大作战", "id": 4,
"type": "hdtool", "title": "0.3"
"options": [ },
{ {
"hidden": false, "img": "sadfasdf",
"id": 212949, "credits": 150,
"logo": "//yun.duiba.com.cn/upload/uP99F1462438316972.png", "id": 3,
"name": "谢谢参与", "title": "1.5倍"
"prizeType": "thanks" },
{
"img": "sadfasdf",
"credits": 100,
"id": 2,
"title": "1倍"
},
{
"img": "sadfasdf",
"credits": 50,
"id": 1,
"title": "0.5倍"
}
]
},
"floating": {
"jsTest": "//yun1.duiba.com.cn/h5/showCouponPrize/4.0.0/index_201710191434.js",
"cssTest": "//yun1.duiba.com.cn/h5/showCouponPrize/4.0.0/index_201710191440.css"
}, },
{ "options": [
"hidden": false, {
"id": 212951, "itemId": 47861,
"logo": "//yun.duiba.com.cn/upload/uP99F1462438316972.png", "hidden": false,
"name": "谢谢参与", "prizeType": "thanks",
"prizeType": "thanks" "name": "谢谢参与",
"description": "",
"logo": "//yun1.duiba.com.cn/upload/uP99F1462438316972.png",
"id": 15581
},
{
"itemId": 47862,
"hidden": false,
"prizeType": "lucky",
"name": "幸运福袋",
"description": "",
"logo": "//yun1.duiba.com.cn/webapp/img/luckynewn.png",
"id": 15582
},
{
"itemId": 47863,
"scoreArea": "",
"hidden": false,
"prizeType": "alipay",
"name": "支付宝1",
"description": "",
"logo": "//yun1.duiba.com.cn/developer/img/activityTool/slotMachine/alipay.png",
"id": 15585
},
{
"itemId": 47864,
"scoreArea": "",
"hidden": false,
"prizeType": "alipay",
"name": "支付宝1",
"description": "",
"logo": "//yun1.duiba.com.cn/developer/img/activityTool/slotMachine/alipay.png",
"id": 15585
}
],
"rule": "adsfasdfasd啊实打实爱的额求稳怕哦i求稳怕请问赔钱片尾曲哦物品i区乌日千万人i去我日哦确认iqo【iadsfasdfasd啊实打实爱的额求稳怕哦i求稳怕请问赔钱片尾曲哦物品i区乌日千万人i去我日哦确认iqo【iadsfasdfasd啊实打实爱的额求稳怕哦i求稳怕请问赔钱片尾曲哦物品i区乌日千万人i去我日哦确认iqo【i",
"type": "hdtool",
"element": {
"isCreditsTypeOpen": false,
"myCreditsLong": 999999632167,
"freeLimit": 5,
"success": false,
"myCredits": "999999632167",
"needCredits": "100",
"freeEmpty": true,
"needCreditsLong": 9,
"status": 7
},
"coinPusherConf": {
"exchangeRate": 60,
"creditsGear": "25,60,75,80"
} }
], },
"element": { "success": true,
"isCreditsTypeOpen": false, "desc": "OK",
"freeLimit": 104, "timestamp": 1548832971636
"myCredits": "858102", }
"needCredits": "2", \ No newline at end of file
"status": 5
}
}
{ {
"needCredits": 0, "success":true,
"status": 1, "code":"0000000000",
"orderId": "544328581298130001", "desc":"OK",
"success": false, "timestamp":1548915321930,
"message": "我靠又报错了" "data":123456
} }
\ No newline at end of file
{
"success":true,
"code":"0000000000",
"desc":"OK",
"timestamp":1550570639368,
"data":{
"orderId":"883006813674240289",
"submitToken":"d895deb9118f4b938d0b70a3dd2ace19",
"credits":"999999491765",
"unitName":"金币",
"consumerCredits":999999491765
}
}
\ No newline at end of file
{
"success":true,
"code":"0000000000",
"desc":"OK",
"timestamp":1548923950498,
"data":{
"element":{
"success":false,
"isCreditsTypeOpen":false,
"needCredits":"100",
"myCredits":"1123",
"myCreditsLong":1123,
"needCreditsLong":9,
"freeLimit":2,
"status":6,
"freeEmpty":true
},
"lottery":{
"id":null,
"type":"111",
"imgUrl":"//yun.duiba.com.cn/images/201607/73htz55ih9.jpg",
"link":null,
"title":"重复券测试grape",
"itemId":null,
"appItemId":null,
"bonus":null,
"bonusMin":null,
"bonusMax":null,
"needAccount":null,
"appLucky":null,
"tip":null,
"useBtnText":null,
"validate":null,
"couponCode":null,
"couponKey":null,
"stInfoDpmImg":null,
"stInfoDpmClose":null,
"stInfoDpmGoUse":null,
"showUse":null,
"openUrl":null,
"iosDownloadUrl":null,
"androidDownloadUrl":null,
"isDownloadUrl":null,
"confirm":null,
"phaseNumber":null,
"happyCode":null,
"appHidden":true,
"zybangJson":null
},
"exposure":11111,
"creditsInfo":{
"activityId":82567,
"prizeId":4,
"orderNum":null,
"developerBizId":"3029576",
"score":null,
"recordStatus":1,
"errorMsg":null
},
"againTag":null
}
}
\ No newline at end of file
{
"success":true,
"code":"0000000000",
"desc":"OK",
"timestamp":1550646190489,
"data":{
"score":100,
"maxScore":100
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment