From 5f8ac62f7e5da929979253fcc60fc6bd53d1e903 Mon Sep 17 00:00:00 2001 From: luying Date: Tue, 14 Jun 2022 14:59:32 +0800 Subject: [PATCH] =?UTF-8?q?=E6=88=98=E5=8A=9B=EF=BC=9A=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=E9=87=8D=E7=94=9F=E7=9A=84=E6=97=B6=E5=80=99=E7=99=BE=E5=AE=B6?= =?UTF-8?q?=E5=AD=A6=E5=AE=AB=E6=B2=A1=E6=9C=89=E6=9B=B4=E6=96=B0=E7=9A=84?= =?UTF-8?q?bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- game-server/app/servers/role/handler/heroHandler.ts | 4 +++- game-server/app/services/playerCeService.ts | 2 ++ game-server/app/services/role/calCe.ts | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/game-server/app/servers/role/handler/heroHandler.ts b/game-server/app/servers/role/handler/heroHandler.ts index b3408c3af..06de5173e 100644 --- a/game-server/app/servers/role/handler/heroHandler.ts +++ b/game-server/app/servers/role/handler/heroHandler.ts @@ -21,6 +21,7 @@ import { createHero, createHeroes } from '../../../services/role/createHero'; import { CheckMeterial } from '../../../services/role/checkMaterial'; import { HeroParam } from '../../../domain/roleField/hero'; import { calculateCeWithHero } from '../../../services/playerCeService'; +import { SchoolModel } from '../../../db/School'; export default function (app: Application) { new HandlerService(app, {}); @@ -651,7 +652,8 @@ export class HeroHandler { } } - let { curHero } = await calculateCeWithHero(HERO_SYSTEM_TYPE.REBIRTH, roleId, serverId, sid, hid, initInfo, { }); + let school = await SchoolModel.findByHid(roleId, hid); + let { curHero } = await calculateCeWithHero(HERO_SYSTEM_TYPE.REBIRTH, roleId, serverId, sid, hid, initInfo, { schoolId: school?.schoolId }); let goods = await addItems(roleId, roleName, sid, consumes, ITEM_CHANGE_REASON.REBIRTH); const heroResult = new HeroParam(curHero); diff --git a/game-server/app/services/playerCeService.ts b/game-server/app/services/playerCeService.ts index 06cb19428..9203e7299 100644 --- a/game-server/app/services/playerCeService.ts +++ b/game-server/app/services/playerCeService.ts @@ -266,6 +266,7 @@ export async function calculateCes(type: HERO_SYSTEM_TYPE, roleId: string, serve } case HERO_SYSTEM_TYPE.REBIRTH: // 29. 重生 { + let { schoolId } = param; for(let [hid, { skinId, lv, quality, star, starStage, colorStar, colorStarStage, job, jobStage, skins, scrollStar, scrollQuality, scrollColorStar }] of heroUpdates) { calCe.setHeroBase(hid, skinId); calCe.setHeroLv(hid, lv); @@ -274,6 +275,7 @@ export async function calculateCes(type: HERO_SYSTEM_TYPE, roleId: string, serve calCe.clearEquip(hid); calCe.setTalent(hid, skins); calCe.setScroll(hid, scrollStar, scrollQuality, scrollColorStar); + if(schoolId) calCe.setSchool(true, hid, schoolId, star, colorStar, quality); } break; } diff --git a/game-server/app/services/role/calCe.ts b/game-server/app/services/role/calCe.ts index c29fa170d..bc9dd11a6 100644 --- a/game-server/app/services/role/calCe.ts +++ b/game-server/app/services/role/calCe.ts @@ -241,7 +241,7 @@ export class CalCe { } } for(let { lv, seid } of dicHeroTalent.level) { - if(level >= lv) { + if(level == lv) { if(!seids.has(id)) seids.set(id, []); seids.get(id).push(seid, 0); }