寻宝:roleStatus.heroes格式修改

This commit is contained in:
luying
2021-08-13 20:16:12 +08:00
parent 96042737d3
commit 899fc4aef6
4 changed files with 55 additions and 13 deletions
@@ -11,7 +11,7 @@ import Role, { RoleModel } from '../../../db/Role';
import { STATUS } from '../../../consts/statusCode';
import { Application, BackendSession } from 'pinus';
import { resResult, getRandSingleEelm } from '../../../pubUtils/util';
import { RoleStatus, ComBattleTeamModel, ComBattleTeamType, BossHp } from '../../../db/ComBattleTeam';
import { RoleStatus, ComBattleTeamModel, ComBattleTeamType, BossHp, ComRoleStatusHero } from '../../../db/ComBattleTeam';
import { ItemModel, ItemType } from '../../../db/Item';
import { addItems, handleCost } from '../../../services/rewardService';
import { checkRoleInQueue, rmRoleFromQueue, setTeamSearchReq } from '../../../services/redisService';
@@ -26,6 +26,7 @@ import { getZeroPointD, getTimeFunD } from '../../../pubUtils/timeUtil';
import { FriendParams } from '../../../domain/roleField/friend';
import { checkTask, checkTaskWithGoods } from '../../../services/taskService';
import { gameData, getWarByBlueprtId } from '../../../pubUtils/data';
import { HeroModel } from '../../../db/Hero';
export default function(app: Application) {
return new ComBattleHandler(app);
@@ -263,10 +264,15 @@ export class ComBattleHandler {
*/
async teammateReady(msg: {teamCode: string, heroes: number[]}, session: BackendSession) {
let roleId = session.get('roleId');
let { teamCode, heroes } = msg;
let { teamCode, heroes: hids } = msg;
let teamStatus = this.teamMap.get(teamCode);
if (!teamStatus || !teamStatus.roleIds || teamStatus.roleIds.indexOf(roleId) === -1) return resResult(STATUS.COM_BATTLE_TEAM_INVALID);
const heroDBs = await HeroModel.findByHidRange(hids, roleId);
const heroes = heroDBs.map(hero => {
return new ComRoleStatusHero(hero);
});
let team = await ComBattleTeamModel.updateHeroes(teamCode, roleId, heroes);
if (!team) return resResult(STATUS.COM_BATTLE_UPDATE_HEROES_ERR);
@@ -291,11 +297,16 @@ export class ComBattleHandler {
*/
async setupHeroes(msg: {teamCode: string, heroes: number[], battleCode: string}, session: BackendSession) {
let roleId = session.get('roleId');
let { teamCode, heroes, battleCode = 'default' } = msg;
if (!heroes || heroes.length === 0) return resResult(STATUS.COM_BATTLE_HEROES_ERR);
let { teamCode, heroes: hids, battleCode = 'default' } = msg;
if (!hids || hids.length === 0) return resResult(STATUS.COM_BATTLE_HEROES_ERR);
let teamStatus = this.teamMap.get(teamCode);
if (!teamStatus || !teamStatus.roleIds || teamStatus.roleIds.indexOf(roleId) === -1) return resResult(STATUS.COM_BATTLE_TEAM_INVALID);
const heroDBs = await HeroModel.findByHidRange(hids, roleId);
const heroes = heroDBs.map(hero => {
return new ComRoleStatusHero(hero);
});
let team = await ComBattleTeamModel.setupBattleInfo(teamCode, roleId, heroes, battleCode);
if (!team) return resResult(STATUS.COM_BATTLE_UPDATE_HEROES_ERR);