pvp:修复保存防守阵容战力少掉的bug
This commit is contained in:
@@ -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 });
|
||||||
// 返回
|
// 返回
|
||||||
|
|||||||
@@ -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);
|
||||||
|
|||||||
Reference in New Issue
Block a user