Core/Spells: Prevent duplicating trait configs for Generic type
Port From (https://github.com/TrinityCore/TrinityCore/commit/31da896eb2ea9a18dae7c2fa45c188ebadfc9e3e)
This commit is contained in:
@@ -5832,7 +5832,14 @@ namespace Game.Spells
|
||||
return;
|
||||
|
||||
newConfig.TraitSystemID = CliDB.TraitTreeStorage.LookupByKey(effectInfo.MiscValue).TraitSystemID;
|
||||
target.CreateTraitConfig(newConfig);
|
||||
int existingConfigForSystem = target.m_activePlayerData.TraitConfigs.FindIndexIf(config =>
|
||||
{
|
||||
return config.Type == (int)TraitConfigType.Generic
|
||||
&& config.TraitSystemID == newConfig.TraitSystemID;
|
||||
});
|
||||
|
||||
if (existingConfigForSystem < 0)
|
||||
target.CreateTraitConfig(newConfig);
|
||||
}
|
||||
|
||||
[SpellEffectHandler(SpellEffectName.ChangeActiveCombatTraitConfig)]
|
||||
|
||||
Reference in New Issue
Block a user