From 2c338281aa35dfe02c75371cde40cee6fc4e225a Mon Sep 17 00:00:00 2001 From: luying Date: Tue, 17 Aug 2021 19:35:44 +0800 Subject: [PATCH] =?UTF-8?q?=E9=95=87=E5=BF=B5=E5=A1=94=EF=BC=9A=E6=8E=92?= =?UTF-8?q?=E8=A1=8C=E6=A6=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../app/servers/role/handler/friendHandler.ts | 2 +- .../app/servers/role/handler/rankHandler.ts | 2 +- game-server/app/services/battleService.ts | 15 ++++++--------- game-server/app/services/comBattleService.ts | 3 ++- game-server/app/services/rankService.ts | 4 +++- shared/domain/activityField/growthField.ts | 2 +- shared/domain/activityField/sevenDaysField.ts | 2 +- web-server/typings/app/service/index.d.ts | 4 ++-- 8 files changed, 17 insertions(+), 17 deletions(-) diff --git a/game-server/app/servers/role/handler/friendHandler.ts b/game-server/app/servers/role/handler/friendHandler.ts index 5a094ba44..786694ca5 100644 --- a/game-server/app/servers/role/handler/friendHandler.ts +++ b/game-server/app/servers/role/handler/friendHandler.ts @@ -648,7 +648,7 @@ export class FriendHandler { let rank = await r.getMyRank({ roleId: oppoRoleId });//去redis中获取排名 result = new PlayerDetail({ ...role, defCe: topLineupCe, heroes }); - result.setWarStar(role.warStar, rank, towerLv); + result.setWarStar(role.warStar, rank, towerLv - 1); return resResult(STATUS.SUCCESS, result); } diff --git a/game-server/app/servers/role/handler/rankHandler.ts b/game-server/app/servers/role/handler/rankHandler.ts index b67633792..d0b292afa 100644 --- a/game-server/app/servers/role/handler/rankHandler.ts +++ b/game-server/app/servers/role/handler/rankHandler.ts @@ -57,7 +57,7 @@ export class RoleHandler { } else if (type == RANK_TYPE.SUM_CE) { myRank = await r.generMyRankWithRole(roleId, role.ce, role.updatedAt.getTime(), role); } else if (type == RANK_TYPE.TOWER) { - myRank = await r.generMyRankWithRole(roleId, role.towerLv, role.towerUpTime?.getTime() || 0, role); + myRank = await r.generMyRankWithRole(roleId, role.towerLv - 1, role.towerUpTime?.getTime() || 0, role); } else if (type == RANK_TYPE.DUNGEON) { myRank = await r.generMyRankWithRole(roleId, role.dungeonWarId, role.dungeonUpdatedAt, role); } else if (type == RANK_TYPE.MAIN) { diff --git a/game-server/app/services/battleService.ts b/game-server/app/services/battleService.ts index fb8566a8c..8d7c22956 100644 --- a/game-server/app/services/battleService.ts +++ b/game-server/app/services/battleService.ts @@ -26,11 +26,8 @@ import { DicTowerTask } from '../pubUtils/dictionary/DicTowerTask'; export async function getTowerStatus(role: RoleType) { let { towerLv, roleId, serverId } = role; if (!towerLv) { - towerLv = 1; let role = await RoleModel.towerLvUp(roleId); - // 更新redis - let r = new Rank(REDIS_KEY.TOWER_RANK, { serverId }); - await r.setRankWithRoleInfo(roleId, towerLv, role.towerUpTime.getTime(), role); + towerLv = role.towerLv; } let towerRec = await TowerRecordModel.getRecordByLv(roleId, towerLv); if (!towerRec) { @@ -197,21 +194,21 @@ export async function towerBattleEnd(sid: string, funcs: number[], roleId: strin let role = await RoleModel.towerLvUp(roleId); // 更新redis let r = new Rank(REDIS_KEY.TOWER_RANK, { serverId }); - await r.setRankWithRoleInfo(roleId, towerLv + 1, role.towerUpTime.getTime(), role); + await r.setRankWithRoleInfo(roleId, role.towerLv - 1, role.towerUpTime.getTime(), role); - const nextTowerInfo = gameData.tower.get(towerLv + 1); + const nextTowerInfo = gameData.tower.get(role.towerLv); if (nextTowerInfo) { const { warArray } = nextTowerInfo; const sts = warArray.map(id => { return { warId: id, status: false }; }); - await TowerRecordModel.createRecord({ roleId, lv: towerLv + 1, warStatus: sts }); + await TowerRecordModel.createRecord({ roleId, lv: role.towerLv, warStatus: sts }); } - const { reward } = gameData.tower.get(towerLv); + const { reward } = gameData.tower.get(role.towerLv - 1); if (reward) towerReward = reward; - if (towerLv + 1 == HANG_UP_CONSTS.ENABLE_LV) { + if (role.towerLv == HANG_UP_CONSTS.ENABLE_LV) { await startHangUp(roleId, roleName); pinus.app.get('channelService').pushMessageByUids('hangUpEnable', resResult(STATUS.SUCCESS, { enable: true }), [{ uid: roleId, sid }]); } diff --git a/game-server/app/services/comBattleService.ts b/game-server/app/services/comBattleService.ts index 9e4002d07..06ce662a1 100644 --- a/game-server/app/services/comBattleService.ts +++ b/game-server/app/services/comBattleService.ts @@ -59,7 +59,8 @@ export function getRandComBtlRobots(topLineupCe: number, ceLimit: number, lv: nu } else { robotCe = getRandValue(topLineupCe || 0, COM_BTL_CONST.ROBOT_CE_RATIO, 0); } - const robotLv = getRandValue(lv, COM_BTL_CONST.ROBOT_CE_RATIO, 0); + let robotLv = getRandValue(lv, COM_BTL_CONST.ROBOT_CE_RATIO, 0); + if(robotLv > gameData.maxPlayerLv.max) robotLv = gameData.maxPlayerLv.max; // const imgHid = robot[Math.floor(Math.random() * robot.length)]; const { robotRoleId, robotRoleName } = robotInfos[idx]; let robotStatus = new RoleStatus(robotRoleId, robotRoleName, false, false, EXTERIOR.EXTERIOR_FACE, EXTERIOR.EXTERIOR_FACECASE, EXTERIOR.EXTERIOR_APPEARANCE, robotCe, robotLv, robot, true); diff --git a/game-server/app/services/rankService.ts b/game-server/app/services/rankService.ts index c083965ae..30e9a9af2 100644 --- a/game-server/app/services/rankService.ts +++ b/game-server/app/services/rankService.ts @@ -781,7 +781,9 @@ export async function setRankRedisFromDb(type: string, args?: { serverId?: numbe r.setIsInit(true); for (let role of ranks) { // console.log(roleId); - await r.setRankWithRoleInfo(role.roleId, role.towerLv, role.towerUpTime ? role.towerUpTime.getTime() : 0, role); + if(role.towerLv > 1) { + await r.setRankWithRoleInfo(role.roleId, role.towerLv, role.towerUpTime ? role.towerUpTime.getTime() : 0, role); + } } } else if (type == REDIS_KEY.GUILD_ACTIVE_RANK) { let serverId = args.serverId; diff --git a/shared/domain/activityField/growthField.ts b/shared/domain/activityField/growthField.ts index 85830c3b4..2700de81b 100644 --- a/shared/domain/activityField/growthField.ts +++ b/shared/domain/activityField/growthField.ts @@ -131,7 +131,7 @@ export class GrowthData extends ActivityBase { let heroes = userHeroes.filter(hero => { return hero.lv >= lv }) obj.totalCount = heroes.length; } else if (obj.taskType === TASK_TYPE.BATTLE_TOWER_LV) { - obj.totalCount = towerLv; + obj.totalCount = towerLv - 1; } } } diff --git a/shared/domain/activityField/sevenDaysField.ts b/shared/domain/activityField/sevenDaysField.ts index 5469beaea..6a9bb96b9 100644 --- a/shared/domain/activityField/sevenDaysField.ts +++ b/shared/domain/activityField/sevenDaysField.ts @@ -281,7 +281,7 @@ export class SevenDaysGrowthData { let heroes = userHeroes.filter(hero => { return hero.lv >= lv }) obj.totalCount = heroes.length; } else if (obj.taskType === TASK_TYPE.BATTLE_TOWER_LV) { - obj.totalCount = towerLv; + obj.totalCount = towerLv - 1; } } } diff --git a/web-server/typings/app/service/index.d.ts b/web-server/typings/app/service/index.d.ts index 9c24e07a2..62b9aa4a8 100644 --- a/web-server/typings/app/service/index.d.ts +++ b/web-server/typings/app/service/index.d.ts @@ -10,8 +10,8 @@ import ExportAuth from '../../../app/service/Auth'; import ExportGame from '../../../app/service/Game'; import ExportTest from '../../../app/service/Test'; import ExportTurboCore from '../../../app/service/TurboCore'; -import ExportUtils from '../../../app/service/Utils'; import ExportUpdate from '../../../app/service/Update'; +import ExportUtils from '../../../app/service/Utils'; declare module 'egg' { interface IService { @@ -19,7 +19,7 @@ declare module 'egg' { game: AutoInstanceType; test: AutoInstanceType; turboCore: AutoInstanceType; - utils: AutoInstanceType; update: AutoInstanceType; + utils: AutoInstanceType; } }