pvp:修复保存防守阵容战力少掉的bug

This commit is contained in:
luying
2022-05-09 19:58:21 +08:00
parent c83f4737e6
commit 19fbf31ea3
2 changed files with 4 additions and 4 deletions
@@ -368,7 +368,7 @@ export class PvpHandler {
} }
} }
let attack = new Attack(heroes, scores); let attack = new Attack(heroes, scores);
let lineupCe = await generPvpLineupCe(roleId, pvpDefense.lineupCe, attack.heroes, []); let lineupCe = await generPvpLineupCe(roleId, pvpDefense.lineupCe, attack.heroes, pvpDefense.defense.heroes, []);
// 刷对手 // 刷对手
let role = <RoleType>pvpDefense.role; let role = <RoleType>pvpDefense.role;
let oppPlayers = await refreshEnemies(role, seasonNum, pvpDefense.score, attack?.score||0, attack?.pLv||1); let oppPlayers = await refreshEnemies(role, seasonNum, pvpDefense.score, attack?.score||0, attack?.pLv||1);
@@ -424,7 +424,7 @@ export class PvpHandler {
return new DefenseHero(cur, heroIdMap.get(cur.actorId)); return new DefenseHero(cur, heroIdMap.get(cur.actorId));
}); });
let defense = new Defense(defenseHeroes, scores, warId, buff); let defense = new Defense(defenseHeroes, scores, warId, buff);
let lineupCe = await generPvpLineupCe(roleId, pvpDefense.lineupCe, defense.heroes, dbHeroes); let lineupCe = await generPvpLineupCe(roleId, pvpDefense.lineupCe, pvpDefense.attack.heroes, defense.heroes, dbHeroes);
pvpDefense = await PvpDefenseModel.updateInfoAndInclude(roleId, { ...refChallengeObj, defense, lineupCe }); pvpDefense = await PvpDefenseModel.updateInfoAndInclude(roleId, { ...refChallengeObj, defense, lineupCe });
// 返回 // 返回
+2 -2
View File
@@ -626,10 +626,10 @@ export async function savePvpSeasonResult(pvpDefense: PvpDefenseType, seasonNum:
return pvpSeasonResult; return pvpSeasonResult;
} }
export async function generPvpLineupCe(roleId: string, lineupCe: LineupCe[], newHeroes: AttackHero[]|DefenseHero[], dbHeroes: HeroType[]) { export async function generPvpLineupCe(roleId: string, lineupCe: LineupCe[], attackHero: AttackHero[], defenseHero: DefenseHero[], dbHeroes: HeroType[]) {
let newHids: number[] = []; // 本次新增武将 let newHids: number[] = []; // 本次新增武将
let newLineupCe: { hid: number, ce: number }[] = []; // 新生成的lineupCe字段 let newLineupCe: { hid: number, ce: number }[] = []; // 新生成的lineupCe字段
for(let { actorId } of newHeroes) { for(let { actorId } of [...attackHero, ...defenseHero]) {
let n = newLineupCe.find(cur => cur.hid == actorId); let n = newLineupCe.find(cur => cur.hid == actorId);
if(!n) { if(!n) {
let lineup = lineupCe.find(cur => cur.hid == actorId); let lineup = lineupCe.find(cur => cur.hid == actorId);