Core/Auras: Fixed crash happening when a periodic aura tick triggers SPELL_AURA_SPLIT_DAMAGE_PCT
Port From (https://github.com/TrinityCore/TrinityCore/commit/3a50bc50a2a3898013404eb2319508521002984f)
This commit is contained in:
@@ -2149,7 +2149,7 @@ namespace Game.Entities
|
||||
{
|
||||
SpellNonMeleeDamageLog packet = new();
|
||||
packet.Me = log.target.GetGUID();
|
||||
packet.CasterGUID = log.attacker.GetGUID();
|
||||
packet.CasterGUID = log.attacker?.GetGUID() ?? ObjectGuid.Empty;
|
||||
packet.CastID = log.castId;
|
||||
packet.SpellID = (int)(log.Spell != null ? log.Spell.Id : 0);
|
||||
packet.Visual = log.SpellVisual;
|
||||
|
||||
@@ -1292,12 +1292,12 @@ namespace Game.Networking.Packets
|
||||
|
||||
public bool GenerateDataForUnits(Unit attacker, Unit target)
|
||||
{
|
||||
Player playerAttacker = attacker.ToPlayer();
|
||||
Creature creatureAttacker = attacker.ToCreature();
|
||||
Player playerAttacker = attacker?.ToPlayer();
|
||||
Creature creatureAttacker = attacker?.ToCreature();
|
||||
if (playerAttacker != null)
|
||||
{
|
||||
Player playerTarget = target.ToPlayer();
|
||||
Creature creatureTarget = target.ToCreature();
|
||||
Player playerTarget = target?.ToPlayer();
|
||||
Creature creatureTarget = target?.ToCreature();
|
||||
if (playerTarget != null)
|
||||
return GenerateDataPlayerToPlayer(playerAttacker, playerTarget);
|
||||
else if (creatureTarget != null)
|
||||
@@ -1308,8 +1308,8 @@ namespace Game.Networking.Packets
|
||||
}
|
||||
else if (creatureAttacker != null)
|
||||
{
|
||||
Player playerTarget = target.ToPlayer();
|
||||
Creature creatureTarget = target.ToCreature();
|
||||
Player playerTarget = target?.ToPlayer();
|
||||
Creature creatureTarget = target?.ToCreature();
|
||||
if (playerTarget != null)
|
||||
{
|
||||
if (creatureAttacker.HasScalableLevels())
|
||||
|
||||
Reference in New Issue
Block a user