🐞 fix(副将): 巅峰演武保存挑战阵容添加副将
This commit is contained in:
@@ -373,7 +373,7 @@ export class PvpHandler {
|
|||||||
return resResult(STATUS.SUCCESS, pick(result, pickParam));
|
return resResult(STATUS.SUCCESS, pick(result, pickParam));
|
||||||
}
|
}
|
||||||
|
|
||||||
async saveAttack(msg: { heroes: { actorId: number, order: number }[] }, session: BackendSession) {
|
async saveAttack(msg: { heroes: { actorId: number, order: number, subHid: number }[] }, session: BackendSession) {
|
||||||
let { heroes } = msg;
|
let { heroes } = msg;
|
||||||
let roleId = session.get('roleId');
|
let roleId = session.get('roleId');
|
||||||
let serverId = session.get('serverId');
|
let serverId = session.get('serverId');
|
||||||
@@ -395,12 +395,15 @@ export class PvpHandler {
|
|||||||
let refChallengeObj = await refChallengeCnt(pvpDefense.challengeCnt, pvpDefense.challengeRefTime, seasonEndTime, roleId, session.get('vipStartTime'));
|
let refChallengeObj = await refChallengeCnt(pvpDefense.challengeCnt, pvpDefense.challengeRefTime, seasonEndTime, roleId, session.get('vipStartTime'));
|
||||||
// 更新挑战阵容
|
// 更新挑战阵容
|
||||||
let scores: number[] = [];
|
let scores: number[] = [];
|
||||||
for(let { actorId } of heroes) {
|
for(let { actorId, subHid } of heroes) {
|
||||||
if(isHeroHidden(actorId)) return resResult(STATUS.HERO_IS_HIDDEN);
|
if(isHeroHidden(actorId)) return resResult(STATUS.HERO_IS_HIDDEN);
|
||||||
let heroScore = pvpDefense.heroScores.find(cur => cur.hid == actorId);
|
let heroScore = pvpDefense.heroScores.find(cur => cur.hid == actorId);
|
||||||
if(heroScore) {
|
if(heroScore) {
|
||||||
scores.push(heroScore.score);
|
scores.push(heroScore.score);
|
||||||
}
|
}
|
||||||
|
let dicHero = gameData.hero.get(actorId);
|
||||||
|
if(subHid && (!dicHero || dicHero.urType != 1)) return resResult(STATUS.HERO_CAN_NOT_SET_SUB);
|
||||||
|
if(subHid && heroes.findIndex(hero => hero.actorId == subHid) != -1) return resResult(STATUS.HERO_SUB_DUPLICATE);
|
||||||
}
|
}
|
||||||
let attack = new Attack(heroes, scores);
|
let attack = new Attack(heroes, scores);
|
||||||
let lineupCe = await generPvpLineupCe(roleId, pvpDefense.lineupCe, attack.heroes, pvpDefense.defense?.heroes??[], []);
|
let lineupCe = await generPvpLineupCe(roleId, pvpDefense.lineupCe, attack.heroes, pvpDefense.defense?.heroes??[], []);
|
||||||
|
|||||||
@@ -73,6 +73,8 @@ export class AttackHero {
|
|||||||
actorId: number; // 武将id
|
actorId: number; // 武将id
|
||||||
@prop({ required: true })
|
@prop({ required: true })
|
||||||
order: number;
|
order: number;
|
||||||
|
@prop({ required: false })
|
||||||
|
subHid: number;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 挑战阵容
|
// 挑战阵容
|
||||||
|
|||||||
Reference in New Issue
Block a user