名将擂台:修改时间精度和debug接口

This commit is contained in:
luying
2022-07-20 17:02:33 +08:00
parent 083201462e
commit cf03a7d4bd
6 changed files with 68 additions and 35 deletions

View File

@@ -119,6 +119,7 @@ export class LadderHandler {
let rec = await LadderMatchRecModel.giveup(battleCode);
if(rec) {
pinus.app.rpc.systimer.systimerRemote.cancelLadderCountDown.broadcast(rec.battleCode);
if(rec.defenseInfo && !rec.defenseInfo.isRobot) await LadderMatchModel.unlock(rec.serverId, rec.defenseInfo.roleId);
}
return resResult(STATUS.SUCCESS, { status: 0, time: 0 });
@@ -168,7 +169,7 @@ export class LadderHandler {
pinus.app.rpc.systimer.systimerRemote.setLadderCountDown.broadcast(rec.battleCode, rec.battleTime, LADDER_STATUS.BATTLE);
return resResult(STATUS.SUCCESS, {
time: rec.battleTime + LADDER.LADDER_BATTLE_COUNTDOWN,
time: Math.floor(rec.battleTime/1000) + LADDER.LADDER_BATTLE_COUNTDOWN,
battleCode: rec.battleCode
})
}
@@ -194,18 +195,18 @@ export class LadderHandler {
let result = new LadderDataReturn();
// 交换双方排名, transaction
let { isChange, atkLadderMatch, defLadderMatch } = await LadderMatchModel.changeRank(isSuccess, rec.attackInfo, rec.defenseInfo);
let { isChange, atkLadderMatch, defLadderMatch, endTime } = await LadderMatchModel.changeRank(isSuccess, rec.attackInfo, rec.defenseInfo);
if(isChange) {
let oppPlayers = await battleEndWhenChange(atkLadderMatch, true);
await battleEndWhenChange(defLadderMatch, true);
result.setOppPlayers(oppPlayers);
rec = await LadderMatchRecModel.battleEnd(battleCode, isSuccess, atkLadderMatch.rank, defLadderMatch? defLadderMatch.rank: rec.attackInfo.oldRank);
rec = await LadderMatchRecModel.battleEnd(battleCode, isSuccess, endTime, atkLadderMatch.rank, defLadderMatch? defLadderMatch.rank: rec.attackInfo.oldRank);
if(atkLadderMatch.rank == 1) {
pushLadderTopChangeMsg(roleId, roleName, serverId);
}
} else {
rec = await LadderMatchRecModel.battleEnd(battleCode, isSuccess);
rec = await LadderMatchRecModel.battleEnd(battleCode, isSuccess, endTime);
let oppPlayers = await getLadderEnemies(atkLadderMatch);
result.setOppPlayers(oppPlayers);
}
@@ -372,13 +373,28 @@ export class LadderHandler {
}
let roleId = session.get('roleId');
let ladderData = await LadderMatchModel.findByRoleId(roleId);
if(!ladderData) return resResult(STATUS.LADDER_NOT_OPEN);
if(!ladderData || !ladderData.defense) return resResult(STATUS.LADDER_NOT_OPEN);
ladderData = await LadderMatchModel.updateByRoleId(roleId, { rank, historyRank: (ladderData.historyRank > rank || ladderData.historyRank == 0)? rank: ladderData.historyRank });
await battleEndWhenChange(ladderData, false);
let defenseInfo: { isRobot: boolean, roleId: string, oldRank: number };
let hisLadderData = await LadderMatchModel.findByRank(rank);
if(hisLadderData) {
defenseInfo = { isRobot: false, roleId: hisLadderData.roleId, oldRank: hisLadderData.rank };
} else {
defenseInfo = { isRobot: true, roleId: `robot${rank}`, oldRank: rank };
}
await LadderMatchModel.updateByRoleId(roleId, { refDaily: new Date(Date.now() - 86400000) });
let result = new LadderDataReturn();
// 交换双方排名, transaction
let { isChange, atkLadderMatch, defLadderMatch } = await LadderMatchModel.changeRank(true, { roleId }, defenseInfo);
if(isChange) {
let oppPlayers = await battleEndWhenChange(atkLadderMatch, true);
await battleEndWhenChange(defLadderMatch, true);
result.setOppPlayers(oppPlayers);
}
ladderData = await LadderMatchModel.updateByRoleId(roleId, { historyRank: rank });
return resResult(STATUS.SUCCESS);
}