fix: correct checks for quest replay

Closes #2797
This commit is contained in:
AMelonInsideLemon 2025-09-20 08:08:56 +02:00
parent 64a1c8b276
commit 2336c3018a

View File

@ -159,7 +159,7 @@ export const completeQuest = async (inventory: TInventoryDatabaseDocument, quest
for (let i = 0; i < chainStageTotal; i++) {
const stage = existingQuestKey.Progress[i];
if (stage.c < run) {
if (stage.c <= run) {
stage.c = run;
await giveKeyChainStageTriggered(inventory, { KeyChain: questKey, ChainStage: i });
await giveKeyChainMissionReward(inventory, { KeyChain: questKey, ChainStage: i });
@ -302,7 +302,7 @@ export const giveKeyChainItem = async (
): Promise<IInventoryChanges> => {
let inventoryChanges: IInventoryChanges = {};
if (!isRerun) {
if (isRerun) {
inventoryChanges = await addKeyChainItems(inventory, keyChainInfo);
if (isEmptyObject(inventoryChanges)) {
@ -331,7 +331,7 @@ export const giveKeyChainMessage = async (
): Promise<void> => {
const keyChainMessage = getKeyChainMessage(keyChainInfo);
if (!isRerun) {
if (isRerun) {
keyChainMessage.att = [];
keyChainMessage.countedAtt = [];
}