diff --git a/src/api_s2c/event/pobinglibao/ApiReceive.ts b/src/api_s2c/event/pobinglibao/ApiReceive.ts index c97f0da..65ddd8c 100644 --- a/src/api_s2c/event/pobinglibao/ApiReceive.ts +++ b/src/api_s2c/event/pobinglibao/ApiReceive.ts @@ -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) { // 查询活动是否是可领取状态 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']); } diff --git a/src/api_s2c/hongdian/fun.ts b/src/api_s2c/hongdian/fun.ts index 393fce9..99973d6 100644 --- a/src/api_s2c/hongdian/fun.ts +++ b/src/api_s2c/hongdian/fun.ts @@ -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; } diff --git a/src/fix_patch/patch_2024.1.4.ts b/src/fix_patch/patch_2024.1.4.ts new file mode 100644 index 0000000..95af447 --- /dev/null +++ b/src/fix_patch/patch_2024.1.4.ts @@ -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 + }, + ] + } + } + }, +] \ No newline at end of file diff --git a/src/globalListener.ts b/src/globalListener.ts index 8496680..68bc8c8 100644 --- a/src/globalListener.ts +++ b/src/globalListener.ts @@ -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) => {