任务:强化装备至多少级
This commit is contained in:
@@ -253,7 +253,7 @@ export class ExpeditionBattleHandler {
|
|||||||
await RoleModel.updateRoleInfo(roleId, { warStar: newWarStars });
|
await RoleModel.updateRoleInfo(roleId, { warStar: newWarStars });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
await checkTaskInBattleEnd(serverId, roleId, sid, battleId, dbHeroes, star);
|
await checkTaskInBattleEnd(serverId, roleId, sid, battleId, dbHeroes, star, isSuccess);
|
||||||
|
|
||||||
return resResult(STATUS.SUCCESS, {
|
return resResult(STATUS.SUCCESS, {
|
||||||
expeditionCode, expeditionId,
|
expeditionCode, expeditionId,
|
||||||
|
|||||||
@@ -380,6 +380,10 @@ async function updateRank(roleId: string, serverId: number, topLineupCe: number,
|
|||||||
if(guild) {
|
if(guild) {
|
||||||
await updateUserInfo(REDIS_KEY.GUILD_INFO, guild.code, [{ field: 'guildCe', value: guild.guildCe }]);
|
await updateUserInfo(REDIS_KEY.GUILD_INFO, guild.code, [{ field: 'guildCe', value: guild.guildCe }]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 武将数量
|
||||||
|
let r6 = new Rank(REDIS_KEY.HERO_NUM_RANK, { serverId });
|
||||||
|
await r6.setRankWithRoleInfo(roleId, role.heroNum, role.heroNumUpdatedAt, role);
|
||||||
}
|
}
|
||||||
|
|
||||||
export async function getSumCe(roleId: string, num: number) {
|
export async function getSumCe(roleId: string, num: number) {
|
||||||
|
|||||||
@@ -11,9 +11,10 @@ import { transPiece } from "./util";
|
|||||||
import { addItems, unlockFigure, } from "./rewardService";
|
import { addItems, unlockFigure, } from "./rewardService";
|
||||||
import { CounterModel } from "../../db/Counter";
|
import { CounterModel } from "../../db/Counter";
|
||||||
import { calculateCes } from "../playerCeService";
|
import { calculateCes } from "../playerCeService";
|
||||||
import { RoleUpdate } from "../../db/Role";
|
import { RoleModel, RoleType, RoleUpdate } from "../../db/Role";
|
||||||
import { sendMessageToUser, sendMessageToUserWithSuc } from "../pushService";
|
import { sendMessageToUser, sendMessageToUserWithSuc } from "../pushService";
|
||||||
import { checkTaskInCreateHero } from "../task/taskService";
|
import { checkTaskInCreateHero } from "../task/taskService";
|
||||||
|
import { Rank } from "../rankService";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 创建多个武将
|
* 创建多个武将
|
||||||
@@ -87,7 +88,6 @@ export async function createHero(roleId: string, roleName: string, sid: string,
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function getSkinPushMsg(resultHeroes: HeroType[], skins: SkinUpdate[]) {
|
function getSkinPushMsg(resultHeroes: HeroType[], skins: SkinUpdate[]) {
|
||||||
let skinPushMessages: {heros: {skins: HeroSkin[], hid: number}[], skins: {id: number, hid: number, inc: number, reason: number }[]} = { heros: [], skins:[] }; // 皮肤推送信息
|
let skinPushMessages: {heros: {skins: HeroSkin[], hid: number}[], skins: {id: number, hid: number, inc: number, reason: number }[]} = { heros: [], skins:[] }; // 皮肤推送信息
|
||||||
for(let { hid, skins } of resultHeroes) {
|
for(let { hid, skins } of resultHeroes) {
|
||||||
|
|||||||
@@ -144,7 +144,12 @@ export function addConsumeToHero(oldConsume: Reward[] = [], consumes: ItemInter[
|
|||||||
if(!oldConsume) oldConsume = [];
|
if(!oldConsume) oldConsume = [];
|
||||||
let consumeMap = new Map<number, number>();
|
let consumeMap = new Map<number, number>();
|
||||||
for(let { id, count = 1 } of consumes) {
|
for(let { id, count = 1 } of consumes) {
|
||||||
consumeMap.set(id, count);
|
if(!consumeMap.has(id)) {
|
||||||
|
consumeMap.set(id, count);
|
||||||
|
} else {
|
||||||
|
consumeMap.set(id, consumeMap.get(id) + count);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
let newConsume: Reward[] = [];
|
let newConsume: Reward[] = [];
|
||||||
for(let {id, count} of oldConsume) {
|
for(let {id, count} of oldConsume) {
|
||||||
|
|||||||
@@ -951,10 +951,9 @@ export class CheckSingleTask {
|
|||||||
let addCount = 0;
|
let addCount = 0;
|
||||||
for(let eplaceId of ePlaceIds) {
|
for(let eplaceId of ePlaceIds) {
|
||||||
let { oldEquip, newEquip } = getEquipById(oldEplace, newEplace, eplaceId);
|
let { oldEquip, newEquip } = getEquipById(oldEplace, newEplace, eplaceId);
|
||||||
if(oldEquip.lv < param[1] && newEquip.lv >= param[1]) {
|
console.log('##### oldEquip', oldEquip.lv, newEquip.lv, dicTaskParam[1])
|
||||||
|
if(oldEquip.lv < dicTaskParam[1] && newEquip.lv >= dicTaskParam[1]) {
|
||||||
addCount += 1;
|
addCount += 1;
|
||||||
} else if (oldEquip.lv >= param[1] && newEquip.lv < param[1]) {
|
|
||||||
addCount -= 1;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(addCount != 0) {
|
if(addCount != 0) {
|
||||||
@@ -981,9 +980,9 @@ export class CheckSingleTask {
|
|||||||
let oldStoneCnt = oldEquip.stones.filter(cur => cur.stone != 0).length;
|
let oldStoneCnt = oldEquip.stones.filter(cur => cur.stone != 0).length;
|
||||||
let newStoneCnt = newEquip.stones.filter(cur => cur.stone != 0).length;
|
let newStoneCnt = newEquip.stones.filter(cur => cur.stone != 0).length;
|
||||||
|
|
||||||
if(oldStoneCnt < param[1] && newStoneCnt >= param[1]) {
|
if(oldStoneCnt < dicTaskParam[1] && newStoneCnt >= dicTaskParam[1]) {
|
||||||
result = { inc: 1 };
|
result = { inc: 1 };
|
||||||
} else if (oldStoneCnt >= param[1] && newStoneCnt < param[1]) {
|
} else if (oldStoneCnt >= dicTaskParam[1] && newStoneCnt < dicTaskParam[1]) {
|
||||||
result = { inc: -1 };
|
result = { inc: -1 };
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -993,7 +992,7 @@ export class CheckSingleTask {
|
|||||||
let { oldEquip, newEquip } = param;
|
let { oldEquip, newEquip } = param;
|
||||||
let oldStar = oldEquip?.star||0;
|
let oldStar = oldEquip?.star||0;
|
||||||
let star = newEquip?.star||0
|
let star = newEquip?.star||0
|
||||||
if(oldStar < param[1] && star >= param[1]) {
|
if(oldStar < dicTaskParam[1] && star >= dicTaskParam[1]) {
|
||||||
result = { inc: 1 };
|
result = { inc: 1 };
|
||||||
};
|
};
|
||||||
break;
|
break;
|
||||||
@@ -1042,7 +1041,7 @@ export class CheckSingleTask {
|
|||||||
if(oldStar >= star) oldCount++;
|
if(oldStar >= star) oldCount++;
|
||||||
if(newStar >= star) count++;
|
if(newStar >= star) count++;
|
||||||
}
|
}
|
||||||
if(oldCount < param[1] && count >= param[1]) {
|
if(oldCount < dicTaskParam[1] && count >= dicTaskParam[1]) {
|
||||||
result = { inc: 1 };
|
result = { inc: 1 };
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -1066,7 +1065,7 @@ export class CheckSingleTask {
|
|||||||
let { oldEquip, newEquip } = param;
|
let { oldEquip, newEquip } = param;
|
||||||
let oldQuality = oldEquip?.quality||0;
|
let oldQuality = oldEquip?.quality||0;
|
||||||
let quality = newEquip?.quality||0;
|
let quality = newEquip?.quality||0;
|
||||||
if(oldQuality < param[1] && quality >= param[1]) {
|
if(oldQuality < dicTaskParam[1] && quality >= dicTaskParam[1]) {
|
||||||
result = { inc: 1 };
|
result = { inc: 1 };
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -1132,11 +1131,11 @@ export class CheckSingleTask {
|
|||||||
let dicStone = gameData.stone.get(cur.stone);
|
let dicStone = gameData.stone.get(cur.stone);
|
||||||
return dicStone?dicStone.lv: 0;
|
return dicStone?dicStone.lv: 0;
|
||||||
});
|
});
|
||||||
let oldCount = oldStoneLvs.filter(lv => lv >= param[2]).length;
|
let oldCount = oldStoneLvs.filter(lv => lv >= dicTaskParam[2]).length;
|
||||||
let newCount = newStoneLvs.filter(lv => lv >= param[2]).length;
|
let newCount = newStoneLvs.filter(lv => lv >= dicTaskParam[2]).length;
|
||||||
if(oldCount < param[1] && newCount >= param[1]) {
|
if(oldCount < dicTaskParam[1] && newCount >= dicTaskParam[1]) {
|
||||||
result = { inc: 1 };
|
result = { inc: 1 };
|
||||||
} else if (oldCount >= param[1] && newCount < param[1]) {
|
} else if (oldCount >= dicTaskParam[1] && newCount < dicTaskParam[1]) {
|
||||||
result = { inc: -1 }
|
result = { inc: -1 }
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@@ -1156,9 +1155,9 @@ export class CheckSingleTask {
|
|||||||
return isRandSeUnLock(newJewel.id, se.id, newEquip.stones);
|
return isRandSeUnLock(newJewel.id, se.id, newEquip.stones);
|
||||||
}).length;
|
}).length;
|
||||||
|
|
||||||
if(oldUnlockSeCnt < param[1] && newUnlockSeCnt >= param[1]) {
|
if(oldUnlockSeCnt < dicTaskParam[1] && newUnlockSeCnt >= dicTaskParam[1]) {
|
||||||
result = { inc: -1 };
|
result = { inc: -1 };
|
||||||
} else if (oldUnlockSeCnt >= param[1] && newUnlockSeCnt < param[1]) {
|
} else if (oldUnlockSeCnt >= dicTaskParam[1] && newUnlockSeCnt < dicTaskParam[1]) {
|
||||||
result = { inc: 1 };
|
result = { inc: 1 };
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|||||||
Reference in New Issue
Block a user