秘境:首通信息

This commit is contained in:
luying
2021-09-07 17:31:21 +08:00
parent dd607934f7
commit 8c93cd1eba
10 changed files with 143 additions and 10 deletions
@@ -6,6 +6,8 @@ import { handleCost } from '../../../services/rewardService';
import { getGoldObject } from '../../../pubUtils/itemUtils';
import { getDungeonData, getDungeonBuyCountCost } from '../../../services/dungeonService';
import * as dicParam from '../../../pubUtils/dicParam';
import { DungeonFirstModel } from '../../../db/DungeonFirst';
import { DungeonResultParam } from '../../../domain/battleField/dungeon';
export default function(app: Application) {
return new DungeonBattleHandler(app);
@@ -64,4 +66,15 @@ export class DungeonBattleHandler {
buyCount: dicParam.DUNGEON_CONST.DUNGEON_CONST_BUY - dungeonBuyCnt - count
});
}
// 购买每日次数
async getFirstInfo(msg: { movePoint: number }, session: BackendSession) {
const { movePoint } = msg;
const serverId: number = session.get('serverId');
const firstInfos = await DungeonFirstModel.findByMovePoint(serverId, movePoint);
let result: DungeonResultParam[] = firstInfos.map(firstInfo => {
return new DungeonResultParam(firstInfo);
});
return resResult(STATUS.SUCCESS, { infos: result });
}
}
@@ -13,7 +13,7 @@ import { resResult } from '../../../pubUtils/util';
import { RoleModel } from '../../../db/Role';
import { RScriptRecordModel } from '../../../db/RScriptRecord';
import { updateWarStar, checkBattleHeroes, roleLevelup, getBattleList } from '../../../services/normalBattleService';
import { checkDungeonNum, checkDungeonAndIncrease } from '../../../services/dungeonService';
import { checkDungeonNum, checkDungeonAndIncrease, saveDungeonFirst } from '../../../services/dungeonService';
import { switchOnFunc } from '../../../services/funcSwitchService';
import { gameData } from '../../../pubUtils/data';
import { pushMysteryFirstMsg, pushTowerMsg, pushVestigeFirstMsg } from '../../../services/chatService';
@@ -58,7 +58,7 @@ export class NormalBattleHandler {
if (preBattle == -1) return resResult(STATUS.BATTLE_NEED_PREVIOUS_GK);
}
let { isOK, heroes } = await checkBattleHeroes(roleId, seqIds);
let { isOK, heroes, lineup } = await checkBattleHeroes(roleId, seqIds);
if (!isOK) return resResult(STATUS.BATTLE_HERO_NOT_FOUND);
const battleCode = genCode(8); // 关卡唯一值
@@ -98,7 +98,7 @@ export class NormalBattleHandler {
status: 0,
warName: warInfo.gk_name,
warType: warInfo.warType,
record: { heroes, seqIds }
record: { heroes, seqIds, lineup }
}
}, true);
@@ -192,8 +192,7 @@ export class NormalBattleHandler {
let checkResult = await checkDungeonAndIncrease(roleId, 1, false);
let role = await RoleModel.saveDungeonHero(roleId, battleId, heroes, isSuccess);
if (role) {
let r = new Rank(REDIS_KEY.DUNGEON_RANK, { serverId });
await r.setRankWithRoleInfo(roleId, role.dungeonWarId, role.dungeonUpdatedAt, role);
await saveDungeonFirst(role, battleId, BattleRecord);
}
if (checkResult.status == -1) {