mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-26 20:02:25 +01:00
Core/Quest: Fix repeatable quest mark (#23338)
(cherry picked from commit 2cb4517303)
This commit is contained in:
@@ -245,7 +245,7 @@ void PlayerMenu::SendGossipMenu(uint32 titleTextId, ObjectGuid objectGUID)
|
||||
text.QuestType = item.QuestIcon;
|
||||
text.QuestFlags[0] = quest->GetFlags();
|
||||
text.QuestFlags[1] = quest->GetFlagsEx();
|
||||
text.Repeatable = quest->IsRepeatable();
|
||||
text.Repeatable = quest->IsRepeatable() && !quest->IsDailyOrWeekly() && !quest->IsMonthly();
|
||||
|
||||
text.QuestTitle = quest->GetLogTitle();
|
||||
LocaleConstant localeConstant = _session->GetSessionDbLocaleIndex();
|
||||
@@ -375,7 +375,7 @@ void PlayerMenu::SendQuestGiverQuestListMessage(Object* questgiver)
|
||||
text.QuestType = questMenuItem.QuestIcon;
|
||||
text.QuestFlags[0] = quest->GetFlags();
|
||||
text.QuestFlags[1] = quest->GetFlagsEx();
|
||||
text.Repeatable = quest->IsRepeatable();
|
||||
text.Repeatable = quest->IsRepeatable() && !quest->IsDailyOrWeekly() && !quest->IsMonthly();
|
||||
|
||||
text.QuestTitle = quest->GetLogTitle();
|
||||
LocaleConstant localeConstant = _session->GetSessionDbLocaleIndex();
|
||||
|
||||
@@ -14963,7 +14963,9 @@ void Player::PrepareQuestMenu(ObjectGuid guid)
|
||||
if (!CanTakeQuest(quest, false))
|
||||
continue;
|
||||
|
||||
if (quest->IsAutoComplete())
|
||||
if (quest->IsAutoComplete() && (!quest->IsRepeatable() || quest->IsDaily() || quest->IsWeekly() || quest->IsMonthly()))
|
||||
qm.AddMenuItem(quest_id, 0);
|
||||
else if (quest->IsAutoComplete())
|
||||
qm.AddMenuItem(quest_id, 4);
|
||||
else if (GetQuestStatus(quest_id) == QUEST_STATUS_NONE)
|
||||
qm.AddMenuItem(quest_id, 2);
|
||||
@@ -16610,7 +16612,7 @@ QuestGiverStatus Player::GetQuestDialogStatus(Object* questgiver)
|
||||
break;
|
||||
}
|
||||
|
||||
if (quest->IsAutoComplete() && CanTakeQuest(quest, false) && quest->IsRepeatable() && !quest->IsDailyOrWeekly())
|
||||
if (quest->IsAutoComplete() && CanTakeQuest(quest, false) && quest->IsRepeatable() && !quest->IsDailyOrWeekly() && !quest->IsMonthly())
|
||||
{
|
||||
if (GetLevel() <= (GetQuestLevel(quest) + sWorld->getIntConfig(CONFIG_QUEST_LOW_LEVEL_HIDE_DIFF)))
|
||||
result |= QuestGiverStatus::RepeatableTurnin;
|
||||
|
||||
Reference in New Issue
Block a user