diff --git a/game-server/app/servers/battle/handler/rougeHandler.ts b/game-server/app/servers/battle/handler/rougeHandler.ts index 15910438c..f26d89b79 100644 --- a/game-server/app/servers/battle/handler/rougeHandler.ts +++ b/game-server/app/servers/battle/handler/rougeHandler.ts @@ -485,6 +485,9 @@ export class RougeHandler { const layerReward = getLayerRewardOneData(dbRecord.type, dbRecord.grade, layer, newNodeType); incCoin = Math.floor((layerReward.coin || 0) * (1 + coinRatio / 100) + coinAdd); await RougelikeRecordModel.updateByGameCode(gameCode, { $inc: { coin: incCoin, coinTotal: incCoin } }); + + //battleEnd 主动将hasPass置为true + await RougelikeLayerModel.updateByGameCode(gameCode, layer, { $set: { hasPass: true } }); } // let coinReward = rewards.find(cur => cur.rewardType == 0); @@ -634,9 +637,10 @@ export class RougeHandler { groupStatus = ROUGE_LIKE_CHOOSE_REWARD.CHOOSE; - await RougelikeLayerModel.updateByGameCode(gameCode, layer, { $set: { hasPass: true } }) - - if (nodeType != ROUGE_LIKE_NODE_TYPE.CHALLENGE) { + if (nodeType == ROUGE_LIKE_NODE_TYPE.CHALLENGE) { + // 挑战关领奖更新 + await RougelikeLayerModel.updateByGameCode(gameCode, layer, { $set: { hasPass: true } }) + } else { // 更新进度 await updateChalleng(dbRecord, roleId, sid, gameCode, layer, []); // 更新挑战进度 }