Core/Quests: Fixed optional quest objectives incorrectly changing quest state when they change completion state

Port From (https://github.com/TrinityCore/TrinityCore/commit/4362a8c3f6aff1a8403ab9c1dee3fd23a82db339)
This commit is contained in:
hondacrx
2024-01-30 09:21:07 -05:00
parent da1ae51736
commit 29a34bbf5d
+6 -3
View File
@@ -2564,9 +2564,12 @@ namespace Game.Entities
updateZoneAuras = true;
}
if (objectiveIsNowComplete && CanCompleteQuest(questId, objective.Id))
CompleteQuest(questId);
else if (objectiveStatusData.QuestStatusPair.Status.Status == QuestStatus.Complete)
if (objectiveIsNowComplete)
{
if (CanCompleteQuest(questId, objective.Id))
CompleteQuest(questId);
}
else if (!(objective.Flags.HasAnyFlag(QuestObjectiveFlags.Optional) && objectiveStatusData.QuestStatusPair.Status.Status == QuestStatus.Complete)
IncompleteQuest(questId);
}
}