From 28610f7b88fbb928d90590b67638fe9f11046565 Mon Sep 17 00:00:00 2001 From: liangtongchuan Date: Fri, 19 Feb 2021 10:55:01 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AF=BB=E5=AE=9D=EF=BC=9A=E6=8A=BD=E8=B1=A1?= =?UTF-8?q?=E8=97=8F=E5=AE=9D=E5=9B=BE=20id=20=E5=90=88=E6=B3=95=E6=80=A7?= =?UTF-8?q?=E6=A3=80=E6=9F=A5=E6=9D=A1=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../app/servers/battle/handler/comBattleHandler.ts | 4 ++-- game-server/app/services/comBattleService.ts | 9 ++++++++- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/game-server/app/servers/battle/handler/comBattleHandler.ts b/game-server/app/servers/battle/handler/comBattleHandler.ts index a4f7e682a..842685271 100644 --- a/game-server/app/servers/battle/handler/comBattleHandler.ts +++ b/game-server/app/servers/battle/handler/comBattleHandler.ts @@ -17,7 +17,7 @@ import { ItemModel } from '../../../db/Item'; import { handleFixedReward, addItems, handleCost } from '../../../services/rewardService'; import { checkRoleInQueue, getTeamSearchByQuality, rmRoleFromQueue, setTeamSearchReq } from '../../../services/redisService'; import { transBossHpArr } from '../../../services/battleService'; -import { getRandBlueprtId, getRandComBtlRobots, clearComBtlTimer, getAssistTimesByQuality, getFrd, updateRobotHurtByTime, comBtlLvInvalid, clearRobotHurtTimer, setDismissTimer, dismissTeam, incEquipPrintDrop, randEquipPrintId, handleComBtlProgress, getComBattleFriendAdd, getValidTeammateRoleSt, teammateInBlackList } from '../../../services/comBattleService'; +import { getRandBlueprtId, getRandComBtlRobots, clearComBtlTimer, getAssistTimesByQuality, getFrd, updateRobotHurtByTime, comBtlLvInvalid, clearRobotHurtTimer, setDismissTimer, dismissTeam, incEquipPrintDrop, randEquipPrintId, handleComBtlProgress, getComBattleFriendAdd, getValidTeammateRoleSt, teammateInBlackList, blueprtIdValid } from '../../../services/comBattleService'; import { setAp } from '../../../services/actionPointService'; import { roleLevelup } from '../../../services/normalBattleService'; @@ -100,7 +100,7 @@ export class ComBattleHandler { console.log('createTeam msg: ', msg); // 检查藏宝图Id是否合法 let goodData = getGoodById(blueprtId); - if (!goodData || goodData.itid !== IT_TYPE.BLUEPRT || COM_BTL_QUALITY.indexOf(goodData.quality) === -1) return resResult(STATUS.COM_BATTLE_BLUEPRT_INVALID); + if (!blueprtIdValid(blueprtId)) return resResult(STATUS.COM_BATTLE_BLUEPRT_INVALID); // 检查藏宝图是否足够 let { lv, headHid = 19, topFiveCe = 100, sHid = 19 } = await RoleModel.findByRoleId(roleId); diff --git a/game-server/app/services/comBattleService.ts b/game-server/app/services/comBattleService.ts index e6c533972..d851baf99 100644 --- a/game-server/app/services/comBattleService.ts +++ b/game-server/app/services/comBattleService.ts @@ -1,3 +1,5 @@ +import { IT_TYPE } from './../consts/consts'; +import { COM_BTL_QUALITY } from './../consts/constModules/itemConst'; import { FriendRelationModel } from './../db/FriendRelation'; import { RoleModel, RoleType } from './../db/Role'; import { EquipPrintDropType, EquipPrintDropModel } from './../db/EquipPrintDrop'; @@ -5,7 +7,7 @@ import { FriendPointModel } from './../db/FriendPoint'; import { STATUS } from './../consts/statusCode'; import { COM_TEAM_STATUS, CURRENCY_BY_TYPE, CURRENCY_TYPE, FRIEND_DROP_TYPE, COM_BTL_CONST, FRIEND_DROP_MAX } from './../consts'; import { RoleStatus, ComBattleTeamModel } from './../db/ComBattleTeam'; -import { getBluePrtByQuality, getComBtlSetByQuality, getRewardByBlueprtId, getWarById, getWarIdByBlueprtId, comBtlRangeInfo } from "../pubUtils/gamedata"; +import { getBluePrtByQuality, getComBtlSetByQuality, getRewardByBlueprtId, getWarById, getWarIdByBlueprtId, comBtlRangeInfo, getGoodById } from "../pubUtils/gamedata"; import { getRandEelm, getRandValue, resResult, ratioReward, getRandValueByMinMax, getRandomWithWeight, decodeStr, getRobotInfo, reduceCe } from "../pubUtils/util"; import { getRandRobot } from "./battleService"; import { difference, omit } from 'underscore'; @@ -506,4 +508,9 @@ export async function teammateInBlackList(roleId: string, roleIds: Array if (isBlack === true) return true; } return false; +} + +export function blueprtIdValid(id: number) { + const goodData = getGoodById(id); + return goodData && goodData.itid === IT_TYPE.BLUEPRT && COM_BTL_QUALITY.indexOf(goodData.quality) !== -1; } \ No newline at end of file