Core/Auras: Update visible aura immediately during spell cast instead of waiting for next update tick

Port From (https://github.com/TrinityCore/TrinityCore/commit/62dc916184d5d32b26a2d331d84d3cae481040fb)
This commit is contained in:
hondacrx
2024-03-14 10:56:01 -04:00
parent 5a2ef185c4
commit 8f573ee28d
2 changed files with 7 additions and 0 deletions
+1
View File
@@ -4487,5 +4487,6 @@ namespace Game.Entities
public SortedSet<AuraApplication> GetVisibleAuras() { return m_visibleAuras; }
public bool HasVisibleAura(AuraApplication aurApp) { return m_visibleAuras.Contains(aurApp); }
public void SetVisibleAuraUpdate(AuraApplication aurApp) { m_visibleAurasToUpdate.Add(aurApp); }
public void RemoveVisibleAuraUpdate(AuraApplication aurApp) { m_visibleAurasToUpdate.Remove(aurApp); }
}
}
+6
View File
@@ -8852,6 +8852,12 @@ namespace Game.Spells
if (effMask != 0)
_spellHitTarget._ApplyAura(aurApp, effMask);
if (aurApp.IsNeedClientUpdate() && aurApp.GetRemoveMode() == AuraRemoveMode.None)
{
aurApp.ClientUpdate(false);
_spellHitTarget.RemoveVisibleAuraUpdate(aurApp);
}
}
}