Merge branch 'dev' of http://git.legu.cc/qixin/HJ_Server into dev
This commit is contained in:
commit
75cadfe391
@ -1,42 +1,89 @@
|
||||
import {ApiCall} from "tsrpc";
|
||||
import {ReqReceive, ResReceive} from "../../../shared/protocols/event/pobinglibao/PtlReceive";
|
||||
import {HuoDongFun} from "../../../public/huodongfun";
|
||||
import {PlayerFun} from "../../../public/player";
|
||||
import {HongDianChange} from "../../hongdian/fun";
|
||||
import {PayFun} from "../../../public/pay";
|
||||
import {PublicShared} from "../../../shared/public/public";
|
||||
import { ApiCall } from "tsrpc";
|
||||
import { ReqReceive, ResReceive } from "../../../shared/protocols/event/pobinglibao/PtlReceive";
|
||||
import { HuoDongFun } from "../../../public/huodongfun";
|
||||
import { PlayerFun } from "../../../public/player";
|
||||
import { HongDianChange } from "../../hongdian/fun";
|
||||
import { PayFun } from "../../../public/pay";
|
||||
import { PublicShared } from "../../../shared/public/public";
|
||||
|
||||
export default async function (call: ApiCall<ReqReceive, ResReceive>) {
|
||||
|
||||
// 查询活动是否是可领取状态
|
||||
let _hd = (await HuoDongFun.gethdList(call, 10))[0]
|
||||
let gift = _hd?.data?.gift?.find(i => i.id == call.req.id)
|
||||
if (!gift || !call.req.recId) return call.errorCode(-1)
|
||||
|
||||
// 查询购买状态
|
||||
let payLog = await PayFun.getPayLog(call.uid, gift.payId)
|
||||
payLog = payLog?.filter(i => i.time >= _hd.stime && i.time <= _hd.etime) || []
|
||||
if (!payLog || !payLog.length) return call.errorCode(-2)
|
||||
let prize = [];
|
||||
let update = {};
|
||||
// 判断活动是否是最后一天
|
||||
if (PublicShared.chkSameDate(G.time, _hd.etime)) {
|
||||
let data = await G.mongodb.cEvent(`pobinglibao${_hd.hdid}`).findOne(
|
||||
{ uid: call.uid, type: `pobinglibao${_hd.hdid}` }
|
||||
);
|
||||
|
||||
/**
|
||||
* 取奖励列表,判断是否有可领取奖励
|
||||
* 购买日起,每种礼包每天可领一次礼包,每种类型独立
|
||||
* 活动结束前的最后一天,可领取所有奖励
|
||||
*/
|
||||
let data = await G.mongodb.cEvent(`pobinglibao${_hd.hdid}`).findOne({uid: call.uid, type: `pobinglibao${_hd.hdid}`})
|
||||
let rec = data?.record?.[call.req.id]?.length
|
||||
let _payDiff = PublicShared.getDiff(payLog[0].time)
|
||||
_payDiff = _payDiff > 3 ? 3 : _payDiff
|
||||
let _endDiff = PublicShared.getDiff(_hd.etime)
|
||||
if ((rec >= _payDiff && _endDiff < 1) || data?.record?.[gift.id] == call.req.recId) return call.errorCode(-3)
|
||||
for (let gift of _hd.data.gift) {
|
||||
// 查询购买状态
|
||||
let push = [];
|
||||
let payLog = await PayFun.getPayLog(call.uid, gift.payId)
|
||||
payLog = payLog?.filter(i => i.time >= _hd.stime && i.time <= _hd.etime) || []
|
||||
if (!payLog || !payLog.length) continue;
|
||||
|
||||
await PlayerFun.sendPrize(call, gift[call.req.recId]);
|
||||
for (let key of ["prize", "recPrize1", "recPrize2"]) {
|
||||
if (!data || !data?.record[gift.id] || !data.record[gift.id].includes(key)) {
|
||||
push.push(key);
|
||||
prize.push(...gift[key]);
|
||||
}
|
||||
}
|
||||
|
||||
if (push.length > 0) {
|
||||
if (update["$push"]) {
|
||||
update["$push"]["record." + gift.id] = { $each: push }
|
||||
} else {
|
||||
update["$push"] = { ["record." + gift.id]: { $each: push } }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
await G.mongodb.cEvent(`pobinglibao${_hd.hdid}`).updateOne({uid: call.uid, type: `pobinglibao${_hd.hdid}`}, {
|
||||
$push: {[`record.${gift.id}`]: call.req.recId},
|
||||
}, {upsert: true})
|
||||
if (!prize.length) {
|
||||
return call.errorCode(-3)
|
||||
}
|
||||
} else {
|
||||
let gift = _hd?.data?.gift?.find(i => i.id == call.req.id);
|
||||
if (!gift || !call.req.recId) return call.errorCode(-1);
|
||||
|
||||
call.succ({prize: gift[call.req.recId]})
|
||||
// 查询购买状态
|
||||
let payLog = await PayFun.getPayLog(call.uid, gift.payId)
|
||||
payLog = payLog?.filter(i => i.time >= _hd.stime && i.time <= _hd.etime) || []
|
||||
|
||||
if (!payLog || !payLog.length) return call.errorCode(-2);
|
||||
|
||||
/**
|
||||
* 取奖励列表,判断是否有可领取奖励
|
||||
* 购买日起,每种礼包每天可领一次礼包,每种类型独立
|
||||
* 活动结束前的最后一天,可领取所有奖励
|
||||
*/
|
||||
let data = await G.mongodb.cEvent(`pobinglibao${_hd.hdid}`).findOne(
|
||||
{ uid: call.uid, type: `pobinglibao${_hd.hdid}` }
|
||||
)
|
||||
|
||||
let rec = data?.record?.[call.req.id]?.length
|
||||
|
||||
let _payDiff = PublicShared.getDiff(payLog[0].time)
|
||||
_payDiff = _payDiff > 3 ? 3 : _payDiff
|
||||
|
||||
if (rec >= _payDiff || data?.record?.[gift.id] == call.req.recId) return call.errorCode(-3)
|
||||
|
||||
prize.concat(gift[call.req.recId]);
|
||||
update = {
|
||||
$push: { [`record.${gift.id}`]: call.req.recId },
|
||||
}
|
||||
}
|
||||
|
||||
await PlayerFun.sendPrize(call, prize);
|
||||
|
||||
await G.mongodb.cEvent(`pobinglibao${_hd.hdid}`).updateOne(
|
||||
{ uid: call.uid, type: `pobinglibao${_hd.hdid}` }, update, { upsert: true }
|
||||
);
|
||||
|
||||
call.succ({ prize: prize });
|
||||
|
||||
HongDianChange.sendChangeKey(call.uid, ['huodonghd']);
|
||||
}
|
||||
|
@ -656,6 +656,14 @@ export class HuoDongHongDianFun {
|
||||
if (_mydata?.rec.includes(index)) continue; // 已领取
|
||||
if (element.gudKey && call.conn.gud[element.gudKey] < element.total) continue; // 未达成
|
||||
if (!element.gudKey && (_mydata?.rec?.length || 0) < _con.length - 1) continue; // 大奖资格不够
|
||||
|
||||
if (element.gudKey == "zhizunyueka") {
|
||||
let logs = await PayFun.getPayLog(call.uid, "zhizunyueka");
|
||||
if (logs.length <= 0 || logs.slice(-1)[0].eTime < G.time) {
|
||||
continue
|
||||
}
|
||||
}
|
||||
|
||||
_res.show = true;
|
||||
break;
|
||||
}
|
||||
|
679
src/fix_patch/patch_2024.1.4.ts
Normal file
679
src/fix_patch/patch_2024.1.4.ts
Normal file
@ -0,0 +1,679 @@
|
||||
import {patchInit} from "../patch";
|
||||
// import {addGameLog, connGameLogDB} from "../gameLog";
|
||||
import {MongoClient} from "mongodb";
|
||||
|
||||
class Path {
|
||||
|
||||
async fun1(a: any) {
|
||||
|
||||
hdlist.map(i => {
|
||||
// @ts-ignore
|
||||
G.mongodb.collection('hdinfo').updateOne({hdid: i.hdid}, {$set: i}, {upsert: true})
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
|
||||
async run() {
|
||||
await this.fun1(1);
|
||||
}
|
||||
}
|
||||
|
||||
async function main() {
|
||||
await patchInit()
|
||||
let patch = new Path();
|
||||
await patch.run();
|
||||
console.log("逻辑执行完成,等待退出");
|
||||
setTimeout(function () {
|
||||
console.log('结束程序');
|
||||
process.exit();
|
||||
}, 3000);
|
||||
}
|
||||
|
||||
main();
|
||||
|
||||
|
||||
let hdlist = [
|
||||
{
|
||||
"hdid": 102, // 唯一活动id 人才计划
|
||||
"htype": 1, // 后端唯一识别标识(1:养成目标)
|
||||
"stype": 101, // 前端唯一识别标识(看前端需要是否修改)
|
||||
"ttype": 0, // 0 按照开服时间计算,1 玩家注册时间计算 4 屏蔽此活动
|
||||
"stime": 28, // 活动开始天数
|
||||
"rtime": 35, // 活动显示结束天数
|
||||
"etime": 35, // 活动实际结束
|
||||
"name": "intr_ychd_title_3",
|
||||
"icon": "dfry_rcjh",
|
||||
"showtime": "仅供参考,会复写正确值",
|
||||
"data": {
|
||||
//轮数抽卡 mfmid 168318
|
||||
//活动文本描述 0-每日登录 1-每日任务 2-活动任务 3-一次性任务 4-活动商店
|
||||
intr2: 'intr_yczm_tips_3',
|
||||
intr4: 'intr_yczm_tips_4',
|
||||
//活动名称
|
||||
name: 'intr_ychd_title_3',
|
||||
//活动icon
|
||||
icon: 'icon_ydlb',
|
||||
//页签名称 0-每日登录 1-每日任务 2-活动任务 3-一次性任务 4-活动商店
|
||||
tab2: 'intr_ychd_tab_name_4',
|
||||
tab4: 'intr_ychd_tab_name_5',
|
||||
//界面跳转 0-每日登录 1-每日任务 2-活动任务 3-一次性任务 4-活动商店
|
||||
'2': '9',
|
||||
//礼包
|
||||
gift: [
|
||||
{
|
||||
index: 0,
|
||||
need: [{'a': 'attr', t: 'rmbmoney', 'n': 0}],
|
||||
free: true,
|
||||
payId: '',
|
||||
buyNum: 1,
|
||||
prize: [{'a': 'item', 't': '4', 'n': 5}]
|
||||
},
|
||||
{
|
||||
index: 1,
|
||||
need: [],
|
||||
free: false,
|
||||
payId: 'ycmb_2_1',
|
||||
buyNum: 1,
|
||||
prize: [{'a': 'attr', 't': 'rmbmoney', 'n': 300}, {
|
||||
'a': 'attr',
|
||||
't': 'rmbmoney',
|
||||
'n': 300
|
||||
}, {'a': 'item', 't': '4', 'n': 5}, {'a': 'item', 't': '4', 'n': 5}]
|
||||
},
|
||||
{
|
||||
index: 2,
|
||||
need: [],
|
||||
free: false,
|
||||
payId: 'ycmb_2_2',
|
||||
buyNum: 1,
|
||||
prize: [{'a': 'attr', 't': 'rmbmoney', 'n': 680}, {
|
||||
'a': 'attr',
|
||||
't': 'rmbmoney',
|
||||
'n': 680
|
||||
}, {'a': 'item', 't': '4', 'n': 10}, {'a': 'item', 't': '4', 'n': 10}]
|
||||
},
|
||||
{
|
||||
index: 3,
|
||||
need: [],
|
||||
free: false,
|
||||
payId: 'ycmb_2_3',
|
||||
buyNum: 1,
|
||||
prize: [{'a': 'attr', 't': 'rmbmoney', 'n': 1280}, {
|
||||
'a': 'attr',
|
||||
't': 'rmbmoney',
|
||||
'n': 1280
|
||||
}, {'a': 'item', 't': '4', 'n': 25}, {'a': 'item', 't': '4', 'n': 25}]
|
||||
},
|
||||
{
|
||||
index: 4,
|
||||
need: [],
|
||||
free: false,
|
||||
payId: 'ycmb_2_4',
|
||||
buyNum: 3,
|
||||
prize: [{'a': 'attr', 't': 'rmbmoney', 'n': 3280}, {
|
||||
'a': 'attr',
|
||||
't': 'rmbmoney',
|
||||
'n': 3280
|
||||
}, {'a': 'item', 't': '4', 'n': 50}, {'a': 'item', 't': '4', 'n': 50}]
|
||||
},
|
||||
{
|
||||
index: 4,
|
||||
need: [],
|
||||
free: false,
|
||||
payId: 'ycmb_2_5',
|
||||
buyNum: 10,
|
||||
prize: [{'a': 'attr', 't': 'rmbmoney', 'n': 6480}, {
|
||||
'a': 'attr',
|
||||
't': 'rmbmoney',
|
||||
'n': 6480
|
||||
}, {'a': 'item', 't': '4', 'n': 100}, {'a': 'item', 't': '4', 'n': 100}]
|
||||
}
|
||||
],
|
||||
//任务相关 type 1 每日任务(每天刷新) 2 活动任务(轮数) 3 每日登录 4-一次性任务 任务hdid一定要唯一
|
||||
maxlun: [[2], 5],
|
||||
tasklist: {
|
||||
'2': {
|
||||
'2001': {
|
||||
'prize': [{'a': 'item', 't': '4', 'n': 5}, {'a': 'item', 't': '626', 'n': 10}],
|
||||
'tujing': '',
|
||||
'title': 'intr_yczm_day_des_2',
|
||||
'type': 2,
|
||||
'pval': 50,
|
||||
'cond': [],
|
||||
'stype': 118
|
||||
},
|
||||
'2002': {
|
||||
'prize': [{'a': 'item', 't': '4', 'n': 5}, {'a': 'item', 't': '626', 'n': 10}],
|
||||
'tujing': '',
|
||||
'title': 'intr_yczm_day_des_2',
|
||||
'type': 2,
|
||||
'pval': 100,
|
||||
'cond': [],
|
||||
'stype': 118
|
||||
},
|
||||
'2003': {
|
||||
'prize': [{'a': 'item', 't': '4', 'n': 10}, {'a': 'item', 't': '600', 'n': 20}],
|
||||
'tujing': '',
|
||||
'title': 'intr_yczm_day_des_2',
|
||||
'type': 2,
|
||||
'pval': 200,
|
||||
'cond': [],
|
||||
'stype': 118
|
||||
},
|
||||
'2004': {
|
||||
'prize': [{'a': 'item', 't': '4', 'n': 10}, {'a': 'item', 't': '600', 'n': 20}],
|
||||
'tujing': '',
|
||||
'title': 'intr_yczm_day_des_2',
|
||||
'type': 2,
|
||||
'pval': 250,
|
||||
'cond': [],
|
||||
'stype': 118
|
||||
},
|
||||
'2005': {
|
||||
'prize': [{'a': 'item', 't': '4', 'n': 10}, {'a': 'item', 't': '600', 'n': 20}],
|
||||
'tujing': '',
|
||||
'title': 'intr_yczm_day_des_2',
|
||||
'type': 2,
|
||||
'pval': 300,
|
||||
'cond': [],
|
||||
'stype': 118
|
||||
},
|
||||
'2006': {
|
||||
'prize': [{'a': 'item', 't': '4', 'n': 10}, {'a': 'item', 't': '619', 'n': 1}],
|
||||
'tujing': '',
|
||||
'title': 'intr_yczm_day_des_2',
|
||||
'type': 2,
|
||||
'pval': 400,
|
||||
'cond': [],
|
||||
'stype': 118
|
||||
},
|
||||
'2007': {
|
||||
'prize': [{'a': 'item', 't': '4', 'n': 10}, {'a': 'item', 't': '619', 'n': 1}],
|
||||
'tujing': '',
|
||||
'title': 'intr_yczm_day_des_2',
|
||||
'type': 2,
|
||||
'pval': 500,
|
||||
'cond': [],
|
||||
'stype': 118
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"hdid": 103, // 唯一活动id 人才计划
|
||||
"htype": 1, // 后端唯一识别标识(1:养成目标)
|
||||
"stype": 101, // 前端唯一识别标识(看前端需要是否修改)
|
||||
"ttype": 0, // 0 按照开服时间计算,1 玩家注册时间计算 4 屏蔽此活动
|
||||
"stime": 42, // 活动开始天数
|
||||
"rtime": 49, // 活动显示结束天数
|
||||
"etime": 49, // 活动实际结束
|
||||
"name": "intr_ychd_title_3",
|
||||
"icon": "dfry_rcjh",
|
||||
"showtime": "仅供参考,会复写正确值",
|
||||
"data": {
|
||||
//轮数抽卡 mfmid 168318
|
||||
//活动文本描述 0-每日登录 1-每日任务 2-活动任务 3-一次性任务 4-活动商店
|
||||
intr2: 'intr_yczm_tips_3',
|
||||
intr4: 'intr_yczm_tips_4',
|
||||
//活动名称
|
||||
name: 'intr_ychd_title_3',
|
||||
//活动icon
|
||||
icon: 'icon_ydlb',
|
||||
//页签名称 0-每日登录 1-每日任务 2-活动任务 3-一次性任务 4-活动商店
|
||||
tab2: 'intr_ychd_tab_name_4',
|
||||
tab4: 'intr_ychd_tab_name_5',
|
||||
//界面跳转 0-每日登录 1-每日任务 2-活动任务 3-一次性任务 4-活动商店
|
||||
'2': '9',
|
||||
//礼包
|
||||
gift: [
|
||||
{
|
||||
index: 0,
|
||||
need: [{'a': 'attr', t: 'rmbmoney', 'n': 0}],
|
||||
free: true,
|
||||
payId: '',
|
||||
buyNum: 1,
|
||||
prize: [{'a': 'item', 't': '4', 'n': 5}]
|
||||
},
|
||||
{
|
||||
index: 1,
|
||||
need: [],
|
||||
free: false,
|
||||
payId: 'ycmb_2_1',
|
||||
buyNum: 1,
|
||||
prize: [{'a': 'attr', 't': 'rmbmoney', 'n': 300}, {
|
||||
'a': 'attr',
|
||||
't': 'rmbmoney',
|
||||
'n': 300
|
||||
}, {'a': 'item', 't': '4', 'n': 5}, {'a': 'item', 't': '4', 'n': 5}]
|
||||
},
|
||||
{
|
||||
index: 2,
|
||||
need: [],
|
||||
free: false,
|
||||
payId: 'ycmb_2_2',
|
||||
buyNum: 1,
|
||||
prize: [{'a': 'attr', 't': 'rmbmoney', 'n': 680}, {
|
||||
'a': 'attr',
|
||||
't': 'rmbmoney',
|
||||
'n': 680
|
||||
}, {'a': 'item', 't': '4', 'n': 10}, {'a': 'item', 't': '4', 'n': 10}]
|
||||
},
|
||||
{
|
||||
index: 3,
|
||||
need: [],
|
||||
free: false,
|
||||
payId: 'ycmb_2_3',
|
||||
buyNum: 1,
|
||||
prize: [{'a': 'attr', 't': 'rmbmoney', 'n': 1280}, {
|
||||
'a': 'attr',
|
||||
't': 'rmbmoney',
|
||||
'n': 1280
|
||||
}, {'a': 'item', 't': '4', 'n': 25}, {'a': 'item', 't': '4', 'n': 25}]
|
||||
},
|
||||
{
|
||||
index: 4,
|
||||
need: [],
|
||||
free: false,
|
||||
payId: 'ycmb_2_4',
|
||||
buyNum: 3,
|
||||
prize: [{'a': 'attr', 't': 'rmbmoney', 'n': 3280}, {
|
||||
'a': 'attr',
|
||||
't': 'rmbmoney',
|
||||
'n': 3280
|
||||
}, {'a': 'item', 't': '4', 'n': 50}, {'a': 'item', 't': '4', 'n': 50}]
|
||||
},
|
||||
{
|
||||
index: 4,
|
||||
need: [],
|
||||
free: false,
|
||||
payId: 'ycmb_2_5',
|
||||
buyNum: 10,
|
||||
prize: [{'a': 'attr', 't': 'rmbmoney', 'n': 6480}, {
|
||||
'a': 'attr',
|
||||
't': 'rmbmoney',
|
||||
'n': 6480
|
||||
}, {'a': 'item', 't': '4', 'n': 100}, {'a': 'item', 't': '4', 'n': 100}]
|
||||
}
|
||||
],
|
||||
//任务相关 type 1 每日任务(每天刷新) 2 活动任务(轮数) 3 每日登录 4-一次性任务 任务hdid一定要唯一
|
||||
maxlun: [[2], 5],
|
||||
tasklist: {
|
||||
'2': {
|
||||
'2001': {
|
||||
'prize': [{'a': 'item', 't': '4', 'n': 5}, {'a': 'item', 't': '626', 'n': 10}],
|
||||
'tujing': '',
|
||||
'title': 'intr_yczm_day_des_2',
|
||||
'type': 2,
|
||||
'pval': 50,
|
||||
'cond': [],
|
||||
'stype': 118
|
||||
},
|
||||
'2002': {
|
||||
'prize': [{'a': 'item', 't': '4', 'n': 5}, {'a': 'item', 't': '626', 'n': 10}],
|
||||
'tujing': '',
|
||||
'title': 'intr_yczm_day_des_2',
|
||||
'type': 2,
|
||||
'pval': 100,
|
||||
'cond': [],
|
||||
'stype': 118
|
||||
},
|
||||
'2003': {
|
||||
'prize': [{'a': 'item', 't': '4', 'n': 10}, {'a': 'item', 't': '600', 'n': 20}],
|
||||
'tujing': '',
|
||||
'title': 'intr_yczm_day_des_2',
|
||||
'type': 2,
|
||||
'pval': 200,
|
||||
'cond': [],
|
||||
'stype': 118
|
||||
},
|
||||
'2004': {
|
||||
'prize': [{'a': 'item', 't': '4', 'n': 10}, {'a': 'item', 't': '600', 'n': 20}],
|
||||
'tujing': '',
|
||||
'title': 'intr_yczm_day_des_2',
|
||||
'type': 2,
|
||||
'pval': 250,
|
||||
'cond': [],
|
||||
'stype': 118
|
||||
},
|
||||
'2005': {
|
||||
'prize': [{'a': 'item', 't': '4', 'n': 10}, {'a': 'item', 't': '600', 'n': 20}],
|
||||
'tujing': '',
|
||||
'title': 'intr_yczm_day_des_2',
|
||||
'type': 2,
|
||||
'pval': 300,
|
||||
'cond': [],
|
||||
'stype': 118
|
||||
},
|
||||
'2006': {
|
||||
'prize': [{'a': 'item', 't': '4', 'n': 10}, {'a': 'item', 't': '619', 'n': 1}],
|
||||
'tujing': '',
|
||||
'title': 'intr_yczm_day_des_2',
|
||||
'type': 2,
|
||||
'pval': 400,
|
||||
'cond': [],
|
||||
'stype': 118
|
||||
},
|
||||
'2007': {
|
||||
'prize': [{'a': 'item', 't': '4', 'n': 10}, {'a': 'item', 't': '619', 'n': 1}],
|
||||
'tujing': '',
|
||||
'title': 'intr_yczm_day_des_2',
|
||||
'type': 2,
|
||||
'pval': 500,
|
||||
'cond': [],
|
||||
'stype': 118
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"hdid": 2002, // 唯一活动id 掉落兑换活动
|
||||
"htype": 2, // 后端唯一识别标识
|
||||
"stype": 200, // 前端唯一识别标识(看前端需要是否修改)
|
||||
"ttype": 1, // 0 按照开服时间计算,1 玩家注册时间计算 4 屏蔽此活动
|
||||
"stime": 35, // 活动开始天数
|
||||
"rtime": 42, // 活动显示结束天数
|
||||
"etime": 42, // 活动实际结束
|
||||
"name": "diaoluoduihuan",
|
||||
"icon": "icon_ywtx",
|
||||
"showtime": "仅供参考,会复写正确值",
|
||||
"data": {
|
||||
//对应mfm 14701
|
||||
diaoluo: [
|
||||
//掉落的物品
|
||||
{
|
||||
a: 'item',
|
||||
t: '50',
|
||||
n: 4,
|
||||
p: 10,
|
||||
s: 3600
|
||||
}
|
||||
|
||||
],
|
||||
tiaozhuan: 3,
|
||||
event: {
|
||||
itemId: '50',
|
||||
duihuan: [
|
||||
{need: [{a: 'item', t: '50', n: 6000}], prize: [{a: 'item', t: '610', n: 1}], num: 2},
|
||||
{
|
||||
need: [{a: 'item', t: '50', n: 3500}],
|
||||
prize: [{a: 'item', t: '600', n: 80}, {a: 'item', t: '12', n: 20000}],
|
||||
num: 4
|
||||
},
|
||||
{
|
||||
need: [{a: 'item', t: '50', n: 1200}],
|
||||
prize: [{a: 'item', t: '600', n: 20}, {a: 'item', t: '609', n: 1}, {a: 'item', t: '4', n: 20}],
|
||||
num: 1
|
||||
},
|
||||
{
|
||||
need: [{a: 'item', t: '50', n: 1500}],
|
||||
prize: [{a: 'item', t: '611', n: 1}, {a: 'item', t: '624', n: 50}],
|
||||
num: 1
|
||||
},
|
||||
{need: [{a: 'item', t: '50', n: 350}], prize: [{a: 'item', t: '607', n: 20}], num: 1},
|
||||
{need: [{a: 'item', t: '50', n: 350}], prize: [{a: 'item', t: '600', n: 5}], num: 1},
|
||||
{need: [{a: 'item', t: '50', n: 100}], prize: [{a: 'item', t: '4', n: 1}], num: 99},
|
||||
{need: [{a: 'item', t: '50', n: 10}], prize: [{a: 'item', t: '12', n: 25}], num: 99},
|
||||
{need: [{a: 'item', t: '50', n: 2}], prize: [{a: 'item', t: '2', n: 10}], num: 99},
|
||||
],
|
||||
shop: [
|
||||
{
|
||||
need: [{a: 'attr', t: 'rmbmoney', n: 0}],
|
||||
prize: [{a: 'attr', t: 'rmbmoney', n: 500}],
|
||||
num: 1,
|
||||
free: true
|
||||
},
|
||||
{
|
||||
need: [{a: 'attr', t: 'rmbmoney', n: 800}],
|
||||
prize: [{a: 'item', t: '4', n: 5}, {a: 'item', t: '2', n: 1000}],
|
||||
num: 1,
|
||||
free: false
|
||||
},
|
||||
{
|
||||
need: [{a: 'attr', t: 'rmbmoney', n: 2250}],
|
||||
prize: [{a: 'item', t: '4', n: 10}, {a: 'item', t: '12', n: 2000}],
|
||||
num: 1,
|
||||
free: false
|
||||
},
|
||||
{
|
||||
need: [{a: 'attr', t: 'rmbmoney', n: 3000}],
|
||||
prize: [{a: 'item', t: '12', n: 6000}],
|
||||
num: 1,
|
||||
free: false
|
||||
},
|
||||
{
|
||||
need: [{a: 'attr', t: 'rmbmoney', n: 3000}],
|
||||
prize: [{a: 'item', t: '2', n: 12000}],
|
||||
num: 3,
|
||||
free: false
|
||||
},
|
||||
{
|
||||
need: [{a: 'attr', t: 'rmbmoney', n: 3000}],
|
||||
prize: [{a: 'item', t: '9', n: 6000}],
|
||||
num: 3,
|
||||
free: false
|
||||
},
|
||||
{
|
||||
need: [{a: 'attr', t: 'rmbmoney', n: 3000}],
|
||||
prize: [{a: 'item', t: '10', n: 300}],
|
||||
num: 3,
|
||||
free: false
|
||||
},
|
||||
{
|
||||
need: [{a: 'attr', t: 'rmbmoney', n: 3000}],
|
||||
prize: [{a: 'item', t: '612', n: 20}],
|
||||
num: 3,
|
||||
free: false
|
||||
},
|
||||
{
|
||||
need: [{a: 'attr', t: 'rmbmoney', n: 20000}],
|
||||
prize: [{a: 'item', t: '607', n: 40}, {a: 'item', t: '600', n: 40}],
|
||||
num: 4,
|
||||
free: false
|
||||
},
|
||||
{
|
||||
need: [{a: 'attr', t: 'rmbmoney', n: 3000}],
|
||||
prize: [{a: 'item', t: '624', n: 20}],
|
||||
num: 3,
|
||||
free: false
|
||||
},
|
||||
{
|
||||
need: [{a: 'attr', t: 'rmbmoney', n: 3000}],
|
||||
prize: [{a: 'item', t: '629', n: 20}],
|
||||
num: 3,
|
||||
free: false
|
||||
},
|
||||
],
|
||||
gift: [
|
||||
{
|
||||
payId: '',
|
||||
num: 1,
|
||||
prize: [{a: 'item', t: '50', n: 20}, {a: 'attr', t: 'rmbmoney', n: 200}],
|
||||
free: true
|
||||
},
|
||||
{
|
||||
payId: 'duihuan_1_1',
|
||||
prize: [{a: 'item', t: '50', n: 50}, {a: 'attr', t: 'rmbmoney', n: 600}],
|
||||
free: false
|
||||
},
|
||||
{
|
||||
payId: 'duihuan_1_2',
|
||||
prize: [{a: 'item', t: '50', n: 100}, {a: 'attr', t: 'rmbmoney', n: 1360}],
|
||||
free: false
|
||||
},
|
||||
{
|
||||
payId: 'duihuan_1_3',
|
||||
prize: [{a: 'item', t: '50', n: 200}, {a: 'attr', t: 'rmbmoney', n: 2560}],
|
||||
free: false
|
||||
},
|
||||
{
|
||||
payId: 'duihuan_1_4',
|
||||
prize: [{a: 'item', t: '50', n: 600}, {a: 'attr', t: 'rmbmoney', n: 6560}],
|
||||
free: false
|
||||
},
|
||||
{
|
||||
payId: 'duihuan_1_5',
|
||||
prize: [{a: 'item', t: '50', n: 1200}, {a: 'attr', t: 'rmbmoney', n: 12960}],
|
||||
free: false
|
||||
},
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"hdid": 2003, // 唯一活动id 掉落兑换活动
|
||||
"htype": 2, // 后端唯一识别标识
|
||||
"stype": 200, // 前端唯一识别标识(看前端需要是否修改)
|
||||
"ttype": 1, // 0 按照开服时间计算,1 玩家注册时间计算 4 屏蔽此活动
|
||||
"stime": 49, // 活动开始天数
|
||||
"rtime": 56, // 活动显示结束天数
|
||||
"etime": 56, // 活动实际结束
|
||||
"name": "diaoluoduihuan",
|
||||
"icon": "icon_ywtx",
|
||||
"showtime": "仅供参考,会复写正确值",
|
||||
"data": {
|
||||
//对应mfm 14701
|
||||
diaoluo: [
|
||||
//掉落的物品
|
||||
{
|
||||
a: 'item',
|
||||
t: '50',
|
||||
n: 4,
|
||||
p: 10,
|
||||
s: 3600
|
||||
}
|
||||
|
||||
],
|
||||
tiaozhuan: 3,
|
||||
event: {
|
||||
itemId: '50',
|
||||
duihuan: [
|
||||
{need: [{a: 'item', t: '50', n: 6000}], prize: [{a: 'item', t: '610', n: 1}], num: 2},
|
||||
{
|
||||
need: [{a: 'item', t: '50', n: 3500}],
|
||||
prize: [{a: 'item', t: '600', n: 80}, {a: 'item', t: '12', n: 20000}],
|
||||
num: 4
|
||||
},
|
||||
{
|
||||
need: [{a: 'item', t: '50', n: 1200}],
|
||||
prize: [{a: 'item', t: '600', n: 20}, {a: 'item', t: '609', n: 1}, {a: 'item', t: '4', n: 20}],
|
||||
num: 1
|
||||
},
|
||||
{
|
||||
need: [{a: 'item', t: '50', n: 1500}],
|
||||
prize: [{a: 'item', t: '611', n: 1}, {a: 'item', t: '624', n: 50}],
|
||||
num: 1
|
||||
},
|
||||
{need: [{a: 'item', t: '50', n: 350}], prize: [{a: 'item', t: '607', n: 20}], num: 1},
|
||||
{need: [{a: 'item', t: '50', n: 350}], prize: [{a: 'item', t: '600', n: 5}], num: 1},
|
||||
{need: [{a: 'item', t: '50', n: 100}], prize: [{a: 'item', t: '4', n: 1}], num: 99},
|
||||
{need: [{a: 'item', t: '50', n: 10}], prize: [{a: 'item', t: '12', n: 25}], num: 99},
|
||||
{need: [{a: 'item', t: '50', n: 2}], prize: [{a: 'item', t: '2', n: 10}], num: 99},
|
||||
],
|
||||
shop: [
|
||||
{
|
||||
need: [{a: 'attr', t: 'rmbmoney', n: 0}],
|
||||
prize: [{a: 'attr', t: 'rmbmoney', n: 500}],
|
||||
num: 1,
|
||||
free: true
|
||||
},
|
||||
{
|
||||
need: [{a: 'attr', t: 'rmbmoney', n: 800}],
|
||||
prize: [{a: 'item', t: '4', n: 5}, {a: 'item', t: '2', n: 1000}],
|
||||
num: 1,
|
||||
free: false
|
||||
},
|
||||
{
|
||||
need: [{a: 'attr', t: 'rmbmoney', n: 2250}],
|
||||
prize: [{a: 'item', t: '4', n: 10}, {a: 'item', t: '12', n: 2000}],
|
||||
num: 1,
|
||||
free: false
|
||||
},
|
||||
{
|
||||
need: [{a: 'attr', t: 'rmbmoney', n: 3000}],
|
||||
prize: [{a: 'item', t: '12', n: 6000}],
|
||||
num: 1,
|
||||
free: false
|
||||
},
|
||||
{
|
||||
need: [{a: 'attr', t: 'rmbmoney', n: 3000}],
|
||||
prize: [{a: 'item', t: '2', n: 12000}],
|
||||
num: 3,
|
||||
free: false
|
||||
},
|
||||
{
|
||||
need: [{a: 'attr', t: 'rmbmoney', n: 3000}],
|
||||
prize: [{a: 'item', t: '9', n: 6000}],
|
||||
num: 3,
|
||||
free: false
|
||||
},
|
||||
{
|
||||
need: [{a: 'attr', t: 'rmbmoney', n: 3000}],
|
||||
prize: [{a: 'item', t: '10', n: 300}],
|
||||
num: 3,
|
||||
free: false
|
||||
},
|
||||
{
|
||||
need: [{a: 'attr', t: 'rmbmoney', n: 3000}],
|
||||
prize: [{a: 'item', t: '612', n: 20}],
|
||||
num: 3,
|
||||
free: false
|
||||
},
|
||||
{
|
||||
need: [{a: 'attr', t: 'rmbmoney', n: 20000}],
|
||||
prize: [{a: 'item', t: '607', n: 40}, {a: 'item', t: '600', n: 40}],
|
||||
num: 4,
|
||||
free: false
|
||||
},
|
||||
{
|
||||
need: [{a: 'attr', t: 'rmbmoney', n: 3000}],
|
||||
prize: [{a: 'item', t: '624', n: 20}],
|
||||
num: 3,
|
||||
free: false
|
||||
},
|
||||
{
|
||||
need: [{a: 'attr', t: 'rmbmoney', n: 3000}],
|
||||
prize: [{a: 'item', t: '629', n: 20}],
|
||||
num: 3,
|
||||
free: false
|
||||
},
|
||||
],
|
||||
gift: [
|
||||
{
|
||||
payId: '',
|
||||
num: 1,
|
||||
prize: [{a: 'item', t: '50', n: 20}, {a: 'attr', t: 'rmbmoney', n: 200}],
|
||||
free: true
|
||||
},
|
||||
{
|
||||
payId: 'duihuan_1_1',
|
||||
prize: [{a: 'item', t: '50', n: 50}, {a: 'attr', t: 'rmbmoney', n: 600}],
|
||||
free: false
|
||||
},
|
||||
{
|
||||
payId: 'duihuan_1_2',
|
||||
prize: [{a: 'item', t: '50', n: 100}, {a: 'attr', t: 'rmbmoney', n: 1360}],
|
||||
free: false
|
||||
},
|
||||
{
|
||||
payId: 'duihuan_1_3',
|
||||
prize: [{a: 'item', t: '50', n: 200}, {a: 'attr', t: 'rmbmoney', n: 2560}],
|
||||
free: false
|
||||
},
|
||||
{
|
||||
payId: 'duihuan_1_4',
|
||||
prize: [{a: 'item', t: '50', n: 600}, {a: 'attr', t: 'rmbmoney', n: 6560}],
|
||||
free: false
|
||||
},
|
||||
{
|
||||
payId: 'duihuan_1_5',
|
||||
prize: [{a: 'item', t: '50', n: 1200}, {a: 'attr', t: 'rmbmoney', n: 12960}],
|
||||
free: false
|
||||
},
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
]
|
@ -19,6 +19,7 @@ import {checkResetBuyLog} from "./api_s2c/event/zhoumolibao/ApiOpen";
|
||||
import {Christmasfun} from "./api_s2c/event/christmas/fun";
|
||||
import {PushGiftFun} from "./public/pushgift";
|
||||
import {LeiChongLiBaoBuyGift} from "./api_s2c/event/leichonglibao/ApiReceive";
|
||||
import { HongDianChange } from './api_s2c/hongdian/fun';
|
||||
|
||||
export type gEventType = {
|
||||
/**玩家断开连接 */
|
||||
@ -203,6 +204,7 @@ export function addListener() {
|
||||
);
|
||||
await PushGiftFun.buy(player.uid, payId) // 推送礼包
|
||||
await LeiChongLiBaoBuyGift(call, payId) // 累充礼包
|
||||
HongDianChange.sendChangeKey(call.uid, ['huodonghd']);
|
||||
});
|
||||
|
||||
G.on("FIRST_LOGIN_EVERY_DAY", (gud, lastTime, curTime) => {
|
||||
|
Loading…
Reference in New Issue
Block a user