diff --git a/game-server/app/services/playerCeService.ts b/game-server/app/services/playerCeService.ts index a2a2c02fa..f36606b31 100644 --- a/game-server/app/services/playerCeService.ts +++ b/game-server/app/services/playerCeService.ts @@ -20,6 +20,7 @@ import { sendMessageToUserWithSuc } from './pushService'; import { SkinType } from '../db/Skin'; import { LadderMatchModel } from '../db/LadderMatch'; import { ArtifactModelType } from '../db/Artifact'; +import { GVGVestigeRankModel } from '../db/GVGVestigeRank'; interface Param { isInitRole?: boolean, @@ -430,6 +431,7 @@ export async function calculateCes(type: HERO_SYSTEM_TYPE, roleId: string, serve heroes.push(hero); await PvpDefenseModel.updateCe(roleId, hid, ce); // 更新pvp防守阵战力 await LadderMatchModel.updateCe(roleId, hid, ce); + await GVGVestigeRankModel.updateCe(roleId, hid, ce); pushHeros.push({ hid, ce, incHeroCe: inc }); } else { let hero = await HeroModel.updateHeroInfo(roleId, hid, heroUpdate); @@ -441,6 +443,7 @@ export async function calculateCes(type: HERO_SYSTEM_TYPE, roleId: string, serve let hero = await HeroModel.updateHeroInfo(roleId, hid, { ce }); await PvpDefenseModel.updateCe(roleId, hid, ce); // 更新pvp防守阵战力 await LadderMatchModel.updateCe(roleId, hid, ce); + await GVGVestigeRankModel.updateCe(roleId, hid, ce); pushHeros.push({ hid, ce: hero.ce, incHeroCe: inc }); } } diff --git a/shared/db/GVGVestigeRank.ts b/shared/db/GVGVestigeRank.ts index a0f8a3e45..794df398d 100644 --- a/shared/db/GVGVestigeRank.ts +++ b/shared/db/GVGVestigeRank.ts @@ -101,7 +101,7 @@ export default class GVGVestigeRank extends BaseModel { public static async updateCe(roleId: string, hid: number, ce: number) { let today = getZeroPoint(); - await GVGVestigeRankModel.updateMany({ day: today, hasDefense: true, roleId, 'lineup.hid': hid }, { $set: { 'lineup.$.ce': ce } }); + await GVGVestigeRankModel.updateMany({ day: today, hasDefense: true, roleId, 'lineup.actorId': hid }, { $set: { 'lineup.$.ce': ce } }); } public static async changeRank(isSuccess: boolean, vestigeId: number, attackInfo: { roleId: string }, defenseInfo: { isRobot: boolean, roleId: string, oldRank: number }): Promise<{ isChange: boolean, atkData?: GVGVestigeRankType, defData?: GVGVestigeRankType, endTime: number }> { diff --git a/shared/db/GVGVestigeRec.ts b/shared/db/GVGVestigeRec.ts index 102eaa3d3..6b177309d 100644 --- a/shared/db/GVGVestigeRec.ts +++ b/shared/db/GVGVestigeRec.ts @@ -96,6 +96,8 @@ export default class GVGVestigeRec extends BaseModel { if(atkNewRank != undefined && defNewRank != undefined) { update['attackInfo.newRank'] = atkNewRank; update['defenseInfo.newRank'] = defNewRank; + update['attackInfo.oldRank'] = isSuccess? defNewRank: atkNewRank; + update['defenseInfo.oldRank'] = isSuccess? atkNewRank: defNewRank; } const result: GVGVestigeRecType = await GVGVestigeRecModel.findOneAndUpdate({ battleCode }, { $set: update }, { new: true }).lean();