✨ feat(校验): 添加战场伤害统计伤害
This commit is contained in:
@@ -13,7 +13,7 @@ import { HeroModel } from '../../../db/Hero';
|
||||
import { LADDER } from '../../../pubUtils/dicParam';
|
||||
import { handleCost } from '../../../services/role/rewardService';
|
||||
import { DEBUG_MAGIC_WORD, ITEM_CHANGE_REASON, LADDER_OPP_STATUS, LADDER_STATUS, REDIS_KEY, WAR_TYPE } from '../../../consts';
|
||||
import { checkBattleHeroesByHid } from '../../../services/normalBattleService';
|
||||
import { checkBattleHeroesByHid, getBattleRecordParam } from '../../../services/normalBattleService';
|
||||
import { ServerlistModel } from '../../../db/Serverlist';
|
||||
import { saveLadderDefCeByData } from '../../../services/redisService';
|
||||
import { pushLadderTopChangeMsg } from '../../../services/sysChatService';
|
||||
@@ -21,6 +21,7 @@ import { checkTaskInLadderEnd, checkTaskInLadderStart, checkTaskInLadderSweep }
|
||||
import { BattleRecordModel } from '../../../db/BattleRecord';
|
||||
import { isHeroHidden } from '../../../services/dataService';
|
||||
import { getRemoteRplFilePath, getRemoteRplPrefix } from '../../../pubUtils/battleUtils';
|
||||
import { pvpEndParamInter } from '../../../pubUtils/interface';
|
||||
|
||||
export default function (app: Application) {
|
||||
new HandlerService(app, {});
|
||||
@@ -184,12 +185,12 @@ export class LadderHandler {
|
||||
}
|
||||
|
||||
// 7. 挑战结算
|
||||
async battleEnd(msg: { battleCode: string, isSuccess: boolean }, session: BackendSession) {
|
||||
async battleEnd(msg: { battleCode: string, isSuccess: boolean, damageRecords: pvpEndParamInter[], round: number }, session: BackendSession) {
|
||||
let roleId = session.get('roleId');
|
||||
let roleName = session.get('roleName');
|
||||
let serverId = session.get('serverId');
|
||||
let sid = session.get('sid');
|
||||
let { battleCode, isSuccess } = msg;
|
||||
let { battleCode, isSuccess, damageRecords, round } = msg;
|
||||
|
||||
let rec = await LadderMatchRecModel.findByBattleCode(battleCode);
|
||||
if(!rec || rec.roleId1 != roleId) return resResult(STATUS.LADDER_REC_NOT_FOUND);
|
||||
@@ -218,7 +219,7 @@ export class LadderHandler {
|
||||
let oppPlayers = await getLadderEnemies(atkLadderMatch);
|
||||
result.setOppPlayers(oppPlayers);
|
||||
}
|
||||
await BattleRecordModel.updateBattleRecordByCode(battleCode, { $set: { status: isSuccess? 1: 2 } });
|
||||
await BattleRecordModel.updateBattleRecordByCode(battleCode, { $set: { status: isSuccess? 1: 2, ...getBattleRecordParam(damageRecords, round) } });
|
||||
if(defLadderMatch) {
|
||||
await LadderMatchModel.unlock(defLadderMatch.serverId, defLadderMatch.roleId);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user