Compare commits

...

4 Commits

Author SHA1 Message Date
yushunrui
192ee578dc 圣诞功能还原版本 2023-12-18 11:23:13 +08:00
dy
23f56c3964 Merge remote-tracking branch 'origin/dev-tequan' into dev 2023-12-18 10:26:31 +08:00
xcy
404bb9a7e5 fix:
修改伙伴招募的奖励领取条件
2023-12-15 21:11:31 +08:00
xcy
7e775e90e1 fix:
修改情报特权
2023-12-15 20:06:20 +08:00
8 changed files with 136 additions and 41 deletions

View File

@ -1,7 +1,39 @@
import { ApiCall } from "tsrpc";
import { ReqSelect, ResSelect } from "../../../shared/protocols/event/christmas/PtlSelect";
import {Christmasfun} from "./fun";
import {HongDianChange} from "../../hongdian/fun";
export default async function (call: ApiCall<ReqSelect, ResSelect>) {
// TODO
call.error('API Not Implemented');
let initCon = await Christmasfun.getCon(call)
let index = call.req.index;
let pid = call.req.pid;
let lbid = call.req.lbid;
let _con = initCon[call.req.hdid].data.libao[lbid];
if (!_con) {
// 礼包id 不存在
return call.error('', { code: -1, message: globalThis.lng.yangchengmubiao_2 })
}
if (index >= _con.dlz.length){
// 礼包id 不存在
return call.error('', { code: -2, message: globalThis.lng.yangchengmubiao_2 })
}
if (index >= _con.dlz.length){
// 礼包id 不存在
return call.error('', { code: -3, message: globalThis.lng.yangchengmubiao_2 })
}
if (!_con.dlz[index][pid]){
// 礼包id 不存在
return call.error('', { code: -4, message: globalThis.lng.yangchengmubiao_2 })
}
let _mydata = await Christmasfun.getMyData(call, call.req.hdid)
let lb_select = _mydata.select[lbid] || {}
lb_select[index.toString()] = pid
_mydata.select[lbid] = lb_select
let _setData = {}
_setData["select"] = _mydata.select
await Christmasfun.setMyData(call.uid, call.req.hdid, { $set: _setData })
let changedata = { mydata: _mydata}
// 推送红点
HongDianChange.sendChangeKey(call.uid, ['huodonghd']);
call.succ(changedata);
}

View File

@ -1,7 +1,37 @@
import { ApiCall } from "tsrpc";
import { ReqTaskRec, ResTaskRec } from "../../../shared/protocols/event/christmas/PtlTaskRec";
import {Christmasfun} from "./fun";
import {HongDianChange} from "../../hongdian/fun";
import {PlayerFun} from "../../../public/player";
export default async function (call: ApiCall<ReqTaskRec, ResTaskRec>) {
// TODO
call.error('API Not Implemented');
let initCon = await Christmasfun.getCon(call)
let taskid = call.req.taskid;
let _con = initCon[call.req.hdid].data.task[taskid];
if (!_con) {
// 任务id 不存在
return call.error('', { code: -1, message: globalThis.lng.yangchengmubiao_2 })
}
let _mydata = await Christmasfun.getMyData(call, call.req.hdid)
if (_mydata.taskval[taskid] < _con.pval) {
// 任务未完成
return call.error('', { code: -2, message: globalThis.lng.yangchengmubiao_3 })
}
if (_mydata.taskfinish.includes(taskid)) {
// 任务已领取
return call.error('', { code: -3, message: globalThis.lng.yangchengmubiao_4 })
}
_mydata.taskfinish.push(taskid)
let _setData = {}
_setData["taskfinish"] = _mydata.taskfinish
await Christmasfun.setMyData(call.uid, call.req.hdid, { $set: _setData })
let _prize = _con.prize
await PlayerFun.sendPrize(call, _prize);
let changedata = { mydata: _mydata, prize: _prize}
// 推送红点
HongDianChange.sendChangeKey(call.uid, ['huodonghd']);
call.succ(changedata);
}

View File

@ -2,6 +2,7 @@ import { ApiCall } from "tsrpc";
import {PlayerFun} from '../../../public/player';
import {ReqRec, ResRec} from "../../../shared/protocols/event/huobanzhaomu/PtlRec";
import {HongDianChange} from "../../hongdian/fun";
import {PayFun} from "../../../public/pay";
export default async function (call: ApiCall<ReqRec, ResRec>) {
let conf = G.gc.huobanzhaomu[call.req.index];
@ -10,7 +11,17 @@ export default async function (call: ApiCall<ReqRec, ResRec>) {
let db = await G.mongodb.cEvent('huobanzhaomu').findOne({uid: call.uid, type: 'huobanzhaomu'});
if (db?.rec.includes(call.req.index)) return call.error('', {code: -3});
if (!conf.gudKey && (db?.rec?.length || 0) < G.gc.huobanzhaomu.length - 1) return call.error('', { code: -4 });
if (conf.gudKey == "chaozhiyueka") {
let logs = await PayFun.getPayLog(call.uid, "chaozhiyueka");
if (!logs || logs.slice(-1)[0].eTime < G.time) {
return call.error('', {code: -4});
}
} else {
if (!conf.gudKey && (db?.rec?.length || 0) < G.gc.huobanzhaomu.length - 1) {
return call.error('', {code: -4});
}
}
await PlayerFun.sendPrize(call, conf.prize);

View File

@ -20,7 +20,7 @@ export default async function (call: ApiCall<ReqBuyLv, ResBuyLv>) {
let change: ResBuyLv['change'] = {};
change.lv = data.lv + lv;
change.exp = data.exp + 1000
change.exp = data.exp + 1000;
G.mongodb.cEvent('zhanling').updateOne(
{ uid: call.uid, type: 'zhanling' },

View File

@ -4,10 +4,12 @@ import { XstaskFun } from '../../public/xstask';
import {ReqAllGet, ResAllGet} from "../../shared/protocols/xstask/PtlAllGet";
import {HongDianChange} from "../hongdian/fun";
import {PublicShared} from "../../shared/public/public";
import {TeQuanFun} from "../../public/tequan";
export default async function (call: ApiCall<ReqAllGet, ResAllGet>) {
const taskList = JSON.parse(JSON.stringify(await XstaskFun.getAllTask(call.uid)));
let taskInfo = await XstaskFun.getInfo(call.uid);
let tequan = await TeQuanFun.getXsTaskNum(call);
let prizeArr: atn[] = []
for (let task of taskList) {
const taskConf = G.gc.xstask[task?.taskId];
@ -38,6 +40,14 @@ export default async function (call: ApiCall<ReqAllGet, ResAllGet>) {
XstaskFun.changeInfo(call.uid, change);
await PlayerFun.sendPrize(call, taskConf.prize);
HongDianChange.sendChangeKey(call.uid, ['xstaskhd', 'huodonghd']);
if (!tequan) {
prizeArr.push(...taskConf.prize)
} else {
for (let i = 0; i < 3; i++) {
prizeArr.push(...taskConf.prize)
}
}
prizeArr.push(...taskConf.prize)
}
call.succ({

View File

@ -4,6 +4,7 @@ import { XstaskFun } from '../../public/xstask';
import {ReqGet, ResGet} from "../../shared/protocols/xstask/PtlGet";
import {HongDianChange} from "../hongdian/fun";
import {PublicShared} from '../../shared/public/public';
import {TeQuanFun} from "../../public/tequan";
export default async function (call: ApiCall<ReqGet, ResGet>) {
@ -35,12 +36,20 @@ export default async function (call: ApiCall<ReqGet, ResGet>) {
XstaskFun.finishTask(call.uid, call.req._id)
}
// XstaskFun.delTask(call.uid, call.req._id);
let send_prize = [];
XstaskFun.changeInfo(call.uid, change);
await PlayerFun.sendPrize(call, taskConf.prize);
if (!await TeQuanFun.getXsTaskNum(call)) {
send_prize = taskConf.prize;
} else {
for (let i = 0; i < 3; i++) {
send_prize = send_prize.concat(taskConf.prize)
}
}
await PlayerFun.sendPrize(call, send_prize);
HongDianChange.sendChangeKey(call.uid, ['xstaskhd', 'huodonghd']);
call.succ({
taskList: await XstaskFun.getAllTask(call.uid),
prize: taskConf.prize
prize: send_prize
});
}

View File

@ -36,7 +36,7 @@ export default async function (call: ApiCall<ReqOpen, ResOpen>) {
XstaskFun.delTasks(call.uid, delTask.map(task => task._id));
}
needAddTask += await TeQuanFun.getXsTaskNum(call);
// needAddTask += await TeQuanFun.getXsTaskNum(call);
needAddTask && await XstaskFun.addTasks(call.uid, XstaskFun.randomTasks(taskInfo?.lv || changeInfo.lv, needAddTask));
let { _id, uid, type, ...info } = taskInfo || changeInfo as typeof taskInfo;

View File

@ -1,5 +1,6 @@
import {ApiCall} from "tsrpc"
import {YangChengMuBiaofun} from "../api_s2c/event/yangchengmubiao/fun"
import {Christmasfun} from "../api_s2c/event/christmas/fun"
// import { YangChengMuBiaofun } from "../api_s2c/event/yangchengmubiao/fun"
import {Wjjl} from "../module/collection_wjjl"
import {PublicShared} from "../shared/public/public"
@ -73,6 +74,8 @@ export module manager {
TaskFun.setTaskVal(call, this.stype, val, this.chkCall, chkval, this.isinc, this.alchangeVal, arg)
// 养成目标任务计数
YangChengMuBiaofun.setTaskVal(call, this.stype, val, this.chkCall, chkval, this.isinc, this.alchangeVal, arg)
// 圣诞活动任务计数
Christmasfun.setTaskVal(call, this.stype, val, this.chkCall, chkval, this.isinc, this.alchangeVal, arg)
}
// 任务数值, 和检测值,看情况需要上层复写