From 6a295f7fe46479d2a378775b99efbc06c92026ad Mon Sep 17 00:00:00 2001 From: hondacrx Date: Wed, 22 Dec 2021 20:13:01 -0500 Subject: [PATCH] Core/SAI: add cooldownMin (event_param2) and cooldownMax (event_param3) to SMART_EVENT_ACCEPTED_QUEST and SMART_EVENT_REWARD_QUEST. Port From (https://github.com/TrinityCore/TrinityCore/commit/7745e3f94389cf22cf9be04b411e94936306a6f6) --- Source/Game/AI/SmartScripts/SmartAIManager.cs | 5 +++++ Source/Game/AI/SmartScripts/SmartScript.cs | 1 + 2 files changed, 6 insertions(+) diff --git a/Source/Game/AI/SmartScripts/SmartAIManager.cs b/Source/Game/AI/SmartScripts/SmartAIManager.cs index 546b2ccc6..1124488da 100644 --- a/Source/Game/AI/SmartScripts/SmartAIManager.cs +++ b/Source/Game/AI/SmartScripts/SmartAIManager.cs @@ -689,6 +689,9 @@ namespace Game.AI case SmartEvents.RewardQuest: if (e.Event.quest.questId != 0 && !IsQuestValid(e, e.Event.quest.questId)) return false; + + if (!IsMinMaxValid(e, e.Event.quest.cooldownMin, e.Event.quest.cooldownMax)) + return false; break; case SmartEvents.ReceiveEmote: { @@ -2097,6 +2100,8 @@ namespace Game.AI public struct Quest { public uint questId; + public uint cooldownMin; + public uint cooldownMax; } public struct QuestObjective { diff --git a/Source/Game/AI/SmartScripts/SmartScript.cs b/Source/Game/AI/SmartScripts/SmartScript.cs index 7d2a146f0..d44802023 100644 --- a/Source/Game/AI/SmartScripts/SmartScript.cs +++ b/Source/Game/AI/SmartScripts/SmartScript.cs @@ -3478,6 +3478,7 @@ namespace Game.AI { if (e.Event.quest.questId != 0 && var0 != e.Event.quest.questId) return; + RecalcTimer(e, e.Event.quest.cooldownMin, e.Event.quest.cooldownMax); ProcessAction(e, unit, var0); break; }