aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2025-09-07 00:03:48 +0200
committerShauren <shauren.trinity@gmail.com>2025-09-07 00:03:48 +0200
commitb60e5b2a7d6871653f7b93ef90553c6d650bece0 (patch)
tree073fa8e6c2798d503db8b25aaee0fb202c8f0e1c
parenta3ce9c7ec701e05a207c4dafd86c2c8f943c4ead (diff)
Core/Conditions: Allow ConditionTypeOrReference to be 0 for conditions that have ScriptName set
-rw-r--r--src/server/game/Conditions/ConditionMgr.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/server/game/Conditions/ConditionMgr.cpp b/src/server/game/Conditions/ConditionMgr.cpp
index 213d8c02418..3838f6a63a9 100644
--- a/src/server/game/Conditions/ConditionMgr.cpp
+++ b/src/server/game/Conditions/ConditionMgr.cpp
@@ -961,7 +961,7 @@ std::string Condition::ToString(bool ext /*= false*/) const
return std::move(ss).str();
}
-ConditionMgr::ConditionMgr() { }
+ConditionMgr::ConditionMgr() = default;
ConditionMgr::~ConditionMgr()
{
@@ -2139,6 +2139,15 @@ bool ConditionMgr::isConditionTypeValid(Condition* cond) const
{
switch (cond->ConditionType)
{
+ case CONDITION_NONE:
+ {
+ if (!cond->ScriptId)
+ {
+ TC_LOG_ERROR("sql.sql", "{} must have a `ScriptName` in `condition` table, ignoring.", cond->ToString(true));
+ return false;
+ }
+ break;
+ }
case CONDITION_AURA:
{
SpellInfo const* spellInfo = sSpellMgr->GetSpellInfo(cond->ConditionValue1, DIFFICULTY_NONE);