aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Server/Packets
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2021-04-18 00:12:46 +0200
committerShauren <shauren.trinity@gmail.com>2021-04-18 00:12:46 +0200
commit854a55daabf5dc264a961ec86ca0cd8ee39140c5 (patch)
tree4a826c2faed036623e144a4811d69cfa342bd66f /src/server/game/Server/Packets
parent530631e0a73c0bcd540f063cef975ecd827307b2 (diff)
Core/PacketIO: Implemented SMSG_SPELL_ABSORB_LOG
Diffstat (limited to 'src/server/game/Server/Packets')
-rw-r--r--src/server/game/Server/Packets/CombatLogPackets.cpp17
-rw-r--r--src/server/game/Server/Packets/CombatLogPackets.h17
2 files changed, 34 insertions, 0 deletions
diff --git a/src/server/game/Server/Packets/CombatLogPackets.cpp b/src/server/game/Server/Packets/CombatLogPackets.cpp
index 390fb70170e..e6a81be2bc1 100644
--- a/src/server/game/Server/Packets/CombatLogPackets.cpp
+++ b/src/server/game/Server/Packets/CombatLogPackets.cpp
@@ -395,3 +395,20 @@ WorldPacket const* WorldPackets::CombatLog::SpellDispellLog::Write()
return &_worldPacket;
}
+
+WorldPacket const* WorldPackets::CombatLog::SpellAbsorbLog::Write()
+{
+ *this << Attacker;
+ *this << Victim;
+ *this << int32(AbsorbedSpellID);
+ *this << int32(AbsorbSpellID);
+ *this << Caster;
+ *this << int32(Absorbed);
+ *this << int32(OriginalDamage);
+ WriteBit(Unk);
+ WriteLogDataBit();
+ FlushBits();
+ WriteLogData();
+
+ return &_worldPacket;
+}
diff --git a/src/server/game/Server/Packets/CombatLogPackets.h b/src/server/game/Server/Packets/CombatLogPackets.h
index 0d06623746f..bef250fa4d0 100644
--- a/src/server/game/Server/Packets/CombatLogPackets.h
+++ b/src/server/game/Server/Packets/CombatLogPackets.h
@@ -324,6 +324,23 @@ namespace WorldPackets
float Unk = 0.0f;
Spells::ContentTuningParams ContentTuning;
};
+
+ class SpellAbsorbLog final : public CombatLogServerPacket
+ {
+ public:
+ SpellAbsorbLog() : CombatLogServerPacket(SMSG_SPELL_ABSORB_LOG, 100) { }
+
+ WorldPacket const* Write() override;
+
+ ObjectGuid Attacker;
+ ObjectGuid Victim;
+ ObjectGuid Caster;
+ int32 AbsorbedSpellID = 0;
+ int32 AbsorbSpellID = 0;
+ int32 Absorbed = 0;
+ int32 OriginalDamage = 0;
+ bool Unk = false;
+ };
}
}