From 55189b9395be2c77dacdaf43dc02f612b738dd2b Mon Sep 17 00:00:00 2001 From: hondacrx Date: Sun, 26 Dec 2021 19:59:39 -0500 Subject: [PATCH] Core/Quest: Fix repeatable quest mark Port From (https://github.com/TrinityCore/TrinityCore/commit/c5173aca15fcabba9ffce6393cf17868dc30750f) --- Source/Game/Entities/Creature/Gossip.cs | 4 ++-- Source/Game/Entities/Player/Player.Quest.cs | 6 ++++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/Source/Game/Entities/Creature/Gossip.cs b/Source/Game/Entities/Creature/Gossip.cs index 59c45f6df..dcbc4a392 100644 --- a/Source/Game/Entities/Creature/Gossip.cs +++ b/Source/Game/Entities/Creature/Gossip.cs @@ -280,7 +280,7 @@ namespace Game.Misc text.QuestType = item.QuestIcon; text.QuestFlags = (uint)quest.Flags; text.QuestFlagsEx = (uint)quest.FlagsEx; - text.Repeatable = quest.IsRepeatable(); + text.Repeatable = quest.IsRepeatable() && !quest.IsDailyOrWeekly() && !quest.IsMonthly(); text.QuestTitle = quest.LogTitle; Locale locale = _session.GetSessionDbLocaleIndex(); @@ -372,7 +372,7 @@ namespace Game.Misc text.QuestType = questMenuItem.QuestIcon; text.QuestFlags = (uint)quest.Flags; text.QuestFlagsEx = (uint)quest.FlagsEx; - text.Repeatable = quest.IsRepeatable(); + text.Repeatable = quest.IsRepeatable() && !quest.IsDailyOrWeekly() && !quest.IsMonthly(); text.QuestTitle = quest.LogTitle; if (localeConstant != Locale.enUS) diff --git a/Source/Game/Entities/Player/Player.Quest.cs b/Source/Game/Entities/Player/Player.Quest.cs index 2588ac6d7..89e1203cf 100644 --- a/Source/Game/Entities/Player/Player.Quest.cs +++ b/Source/Game/Entities/Player/Player.Quest.cs @@ -307,7 +307,9 @@ namespace Game.Entities 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) == QuestStatus.None) qm.AddMenuItem(quest_id, 2); @@ -1955,7 +1957,7 @@ namespace Game.Entities 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) + WorldConfig.GetIntValue(WorldCfg.QuestLowLevelHideDiff))) result |= QuestGiverStatus.RepeatableTurnin;