aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Server/Packets
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2025-03-19 00:03:38 +0100
committerShauren <shauren.trinity@gmail.com>2025-03-19 00:03:38 +0100
commitfa75f635669df6f0aab4abef074f9e8da4b5bf06 (patch)
tree64aacb5246beaa5a6b21143b0dd462a6694c5b3c /src/server/game/Server/Packets
parente0d3781989c3e9339bfc14981a57683d3010f4e0 (diff)
Core/Auras: Implemented SPELL_AURA_MOD_CHARGE_RECOVERY_RATE, SPELL_AURA_MOD_CHARGE_RECOVERY_RATE_BY_TYPE_MASK and SPELL_AURA_MOD_CHARGE_RECOVERY_BY_TYPE_MASK
Diffstat (limited to 'src/server/game/Server/Packets')
-rw-r--r--src/server/game/Server/Packets/SpellPackets.cpp11
-rw-r--r--src/server/game/Server/Packets/SpellPackets.h13
2 files changed, 24 insertions, 0 deletions
diff --git a/src/server/game/Server/Packets/SpellPackets.cpp b/src/server/game/Server/Packets/SpellPackets.cpp
index 23391e57175..e7bb499d85b 100644
--- a/src/server/game/Server/Packets/SpellPackets.cpp
+++ b/src/server/game/Server/Packets/SpellPackets.cpp
@@ -704,6 +704,17 @@ WorldPacket const* SetSpellCharges::Write()
return &_worldPacket;
}
+WorldPacket const* UpdateChargeCategoryCooldown::Write()
+{
+ _worldPacket << int32(Category);
+ _worldPacket << float(ModChange);
+ _worldPacket << float(ModRate);
+ _worldPacket << Bits<1>(Snapshot);
+ _worldPacket.FlushBits();
+
+ return &_worldPacket;
+}
+
ByteBuffer& operator<<(ByteBuffer& data, SpellChargeEntry const& chargeEntry)
{
data << uint32(chargeEntry.Category);
diff --git a/src/server/game/Server/Packets/SpellPackets.h b/src/server/game/Server/Packets/SpellPackets.h
index 63798895ebb..5893496f13d 100644
--- a/src/server/game/Server/Packets/SpellPackets.h
+++ b/src/server/game/Server/Packets/SpellPackets.h
@@ -658,6 +658,19 @@ namespace WorldPackets
float ChargeModRate = 1.0f;
};
+ class UpdateChargeCategoryCooldown final : public ServerPacket
+ {
+ public:
+ UpdateChargeCategoryCooldown() : ServerPacket(SMSG_UPDATE_CHARGE_CATEGORY_COOLDOWN, 4 + 4 + 4 + 1) { }
+
+ WorldPacket const* Write() override;
+
+ int32 Category = 0;
+ float ModChange = 1.0f;
+ float ModRate = 1.0f;
+ bool Snapshot = false;
+ };
+
struct SpellChargeEntry
{
uint32 Category = 0;