pvp:修复保存防守阵容战力少掉的bug
This commit is contained in:
@@ -368,7 +368,7 @@ export class PvpHandler {
|
||||
}
|
||||
}
|
||||
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 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));
|
||||
});
|
||||
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 });
|
||||
// 返回
|
||||
|
||||
@@ -626,10 +626,10 @@ export async function savePvpSeasonResult(pvpDefense: PvpDefenseType, seasonNum:
|
||||
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 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);
|
||||
if(!n) {
|
||||
let lineup = lineupCe.find(cur => cur.hid == actorId);
|
||||
|
||||
Reference in New Issue
Block a user