活动:修复任务

This commit is contained in:
qiaoxin
2021-06-09 15:22:08 +08:00
parent 064e9148b4
commit 9209378b9d
5 changed files with 14 additions and 79 deletions

View File

@@ -68,6 +68,8 @@ export class GachaHandler {
let userHeroes = await HeroModel.findByRole(roleId);
let items: RewardInter[] = [], heroInfo: CreateHeroParam[] = [], resultList: GachaResult[] = [];
let activityData = [];//活动需要统计抽中的英雄、碎片品质
for (let i = 0; i < count; i++) {
// 按照一般概率抽出
let { dic: { id: base } } = getRandEelmWithWeight(dicGacha.percent);
@@ -79,6 +81,7 @@ export class GachaHandler {
result.setSetPickHero(pickHero);
let hasHero = userHeroes.find(cur => cur.hid == result.hid);
if (hasHero) { // 已有转换为碎片
activityData.push({ hid: hasHero.hid, quality: hasHero.quality });
let { pieceId, count } = transPiece(result.hid);
result.transferToPiece(pieceId, count);
items.push({ id: pieceId, count });
@@ -121,7 +124,10 @@ export class GachaHandler {
await checkTask(roleId, sid, funcs, TASK_TYPE.GASHA, count, true, {});
//活动统计
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.GASHA, count)
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.GACHA_QUALITY_COUNT, count, { heroes })
for (let hero of heroes) {
activityData.push({ hid: hero.hid, quality: hero.quality });
}
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.GACHA_QUALITY_COUNT, count, { heroes: activityData })
let resultRefFreeTime = 0;
if (dicGacha.free.count > 0) {