Core/Conditions: Added conditions for automatic learning spells with SkillLineAbility::AcquireMethod = 4

Port From (https://github.com/TrinityCore/TrinityCore/commit/7eaa695581589e8cb9a277f9c13ad0e3daf669a7)
This commit is contained in:
Hondacrx
2025-08-11 19:42:29 -04:00
parent 5096795793
commit ceb78e5914
8 changed files with 126 additions and 39 deletions
+4 -2
View File
@@ -1664,8 +1664,10 @@ namespace Game.Entities
case SkillLineAbilityAcquireMethod.AutomaticCharLevel:
break;
case SkillLineAbilityAcquireMethod.LearnedOrAutomaticCharLevel:
if (!ability.HasFlag(SkillLineAbilityFlags.CanFallbackToLearnedOnSkillLearn) ||
!spellInfo.MeetsFutureSpellPlayerCondition(this))
// Treat as AutomaticCharLevel when conditions are met, otherwise treat it as Learned (trainer or quest)
if (spellInfo.ShowFutureSpellPlayerConditionID != 0 && !ConditionManager.IsPlayerMeetingCondition(this, spellInfo.ShowFutureSpellPlayerConditionID))
continue;
if (!Global.ConditionMgr.IsObjectMeetingNotGroupedConditions(ConditionSourceType.SkillLineAbility, ability.Id, this))
continue;
break;
default: