From 9949c1bb2fd92c7d0ccf1de0a943d3ae229acbe0 Mon Sep 17 00:00:00 2001 From: zhangxk Date: Mon, 4 Sep 2023 20:08:07 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9E=20fix(icon):=20=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=E9=98=B2=E5=AE=88=E6=96=B9=E5=A4=B1=E8=B4=A5=E4=B8=94=E6=8E=92?= =?UTF-8?q?=E5=90=8D=E4=B8=8D=E5=8F=98=E4=B8=8D=E6=8E=A8=E9=80=81=E6=8F=90?= =?UTF-8?q?=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- game-server/app/servers/battle/handler/ladderHandler.ts | 2 +- game-server/app/servers/guild/handler/gvgFightHandler.ts | 2 +- shared/db/GVGVestigeRec.ts | 2 +- shared/db/LadderMatchRec.ts | 4 ++-- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/game-server/app/servers/battle/handler/ladderHandler.ts b/game-server/app/servers/battle/handler/ladderHandler.ts index f1e5f0f5f..7f1c0f31e 100644 --- a/game-server/app/servers/battle/handler/ladderHandler.ts +++ b/game-server/app/servers/battle/handler/ladderHandler.ts @@ -235,7 +235,7 @@ export class LadderHandler { await checkTaskInLadderEnd(serverId, roleId, sid, isSuccess, historyRank, atkLadderMatch.rank); - if (isSuccess && (!rec.defenseInfo?.isRobot)) await pushLadderIconShow(rec.roleId2, true); + if (isSuccess && (!rec.defenseInfo?.isRobot) && rec.defenseInfo.oldRank < rec.defenseInfo.newRank) await pushLadderIconShow(rec.roleId2, true); return resResult(STATUS.SUCCESS, {...pick(result, ['rank', 'historyRank', 'challengeCnt','status', 'time', 'oppPlayers']), battleGoods, breakGoods}); } diff --git a/game-server/app/servers/guild/handler/gvgFightHandler.ts b/game-server/app/servers/guild/handler/gvgFightHandler.ts index 714100025..a2c8d10c1 100644 --- a/game-server/app/servers/guild/handler/gvgFightHandler.ts +++ b/game-server/app/servers/guild/handler/gvgFightHandler.ts @@ -378,7 +378,7 @@ export class GVGProduceHandler { await saveScoreToRank(rec); addVestigeBattleEndRec(rec); - if (isSuccess && (!rec.defenseInfo?.isRobot)) await pushGvgFightIconShow(rec.defenseRoleId, battleCode); + if (isSuccess && (!rec.defenseInfo?.isRobot) && rec.defenseInfo.oldRank < rec.defenseInfo.newRank) await pushGvgFightIconShow(rec.defenseRoleId, battleCode); return resResult(STATUS.SUCCESS, { vestigeId: rec.vestigeId, diff --git a/shared/db/GVGVestigeRec.ts b/shared/db/GVGVestigeRec.ts index 0c37bcf0c..ddc998020 100644 --- a/shared/db/GVGVestigeRec.ts +++ b/shared/db/GVGVestigeRec.ts @@ -138,7 +138,7 @@ export default class GVGVestigeRec extends BaseModel { const recs: GVGVestigeRecType[] = await GVGVestigeRecModel.aggregate(pipeline); if (recs.length > 0) { for(const obj of recs){ - if(obj.defenseRoleId == roleId && (!obj.defenseInfo.isSuccess)) result.push(obj); + if(obj.defenseRoleId == roleId && (!obj.defenseInfo.isSuccess) && obj.defenseInfo.newRank > obj.defenseInfo.oldRank ) result.push(obj); } } diff --git a/shared/db/LadderMatchRec.ts b/shared/db/LadderMatchRec.ts index ab07f5421..9e6910f4a 100644 --- a/shared/db/LadderMatchRec.ts +++ b/shared/db/LadderMatchRec.ts @@ -137,11 +137,11 @@ export default class LadderMatchRec extends BaseModel { { $match: { endTime: { $gt: quitTime }, $or: [{ roleId1: roleId }, { roleId2: roleId }], status: LADDER_STATUS.COMPLETE } }, { $sort: { endTime: -1 } }, // { $limit: 1 }, - { $project: { _id: 0, roleId2: 1, "defenseInfo.isSuccess": 1 } } + { $project: { _id: 0, roleId2: 1, "defenseInfo.isSuccess": 1, "defenseInfo.oldRank": 1, "defenseInfo.newRank": 1} } ]; const recs: LadderMatchRecType[] = await LadderMatchRecModel.aggregate(pipeline); for (let obj of recs) { - if (obj.roleId2 === roleId && (!obj.defenseInfo.isSuccess)) return true; + if (obj.roleId2 === roleId && (!obj.defenseInfo.isSuccess) && obj.defenseInfo.newRank > obj.defenseInfo.oldRank) return true; } return false; }