aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/Server
diff options
context:
space:
mode:
authorForesterDev <11771800+ForesterDev@users.noreply.github.com>2019-08-23 21:28:21 +0400
committerGiacomo Pozzoni <giacomopoz@gmail.com>2019-08-23 19:28:21 +0200
commit07e2264964ef728050e55e5ec5217c4fb4fe1af2 (patch)
treebe1d795264d98b97dc8613927fa396590f9d89a3 /src/server/game/Server
parent448facc5e794bde5068533825ebfd55435effb57 (diff)
Core/PacketIO: updated SMSG_PLAY_SOUND, SMSG_PLAY_MUSIC and SMSG_PLAY_OBJECT_SOUND (#23636)
* Core/PacketIO: SMSG_PLAY_SOUND (cherry picked from commit 82a33c7fa868d5ace7f855dba26b5f41c12bab6e) # Conflicts: # src/server/game/Battlefield/Battlefield.cpp # src/server/game/Battlegrounds/Battleground.cpp # src/server/game/Battlegrounds/BattlegroundMgr.cpp # src/server/game/Battlegrounds/BattlegroundMgr.h # src/server/game/Entities/Object/Object.cpp # src/server/game/Server/Packets/MiscPackets.cpp # src/server/game/Server/Protocol/Opcodes.cpp # src/server/game/Texts/CreatureTextMgr.cpp # src/server/game/Texts/CreatureTextMgr.h # src/server/scripts/Commands/cs_misc.cpp * Update for 3.3.5 * Core/PacketIO: updated and enabled SMSG_PLAY_MUSIC (cherry picked from commit c6718dc120cae4217bb673b9a0ad1e83b4780f60) # Conflicts: # src/server/game/Maps/Map.cpp # src/server/game/Server/Packets/MiscPackets.cpp # src/server/game/Server/Protocol/Opcodes.cpp # src/server/game/Server/Protocol/Opcodes.h # src/server/game/Spells/SpellEffects.cpp * Core/Packets: added SMSG_PLAY_OBJECT_SOUND packet class (cherry picked from commit 1272e9eea684d1f155709baee44a301ff938ade5) # Conflicts: # src/server/game/Server/Packets/MiscPackets.cpp # src/server/game/Server/Packets/MiscPackets.h # src/server/game/Server/Protocol/Opcodes.cpp * fic build * change variable names * fix build error field will be initialized after
Diffstat (limited to 'src/server/game/Server')
-rw-r--r--src/server/game/Server/Packets/MiscPackets.cpp22
-rw-r--r--src/server/game/Server/Packets/MiscPackets.h37
2 files changed, 59 insertions, 0 deletions
diff --git a/src/server/game/Server/Packets/MiscPackets.cpp b/src/server/game/Server/Packets/MiscPackets.cpp
index 40ac6b89524..cf4967c6aac 100644
--- a/src/server/game/Server/Packets/MiscPackets.cpp
+++ b/src/server/game/Server/Packets/MiscPackets.cpp
@@ -31,6 +31,28 @@ WorldPacket const* WorldPackets::Misc::Weather::Write()
return &_worldPacket;
}
+WorldPacket const* WorldPackets::Misc::PlayMusic::Write()
+{
+ _worldPacket << SoundKitID;
+
+ return &_worldPacket;
+}
+
+WorldPacket const* WorldPackets::Misc::PlayObjectSound::Write()
+{
+ _worldPacket << SoundKitID;
+ _worldPacket << SourceObjectGUID;
+
+ return &_worldPacket;
+}
+
+WorldPacket const* WorldPackets::Misc::PlaySound::Write()
+{
+ _worldPacket << SoundKitID;
+
+ return &_worldPacket;
+}
+
WorldPacket const* WorldPackets::Misc::OverrideLight::Write()
{
_worldPacket << int32(AreaLightID);
diff --git a/src/server/game/Server/Packets/MiscPackets.h b/src/server/game/Server/Packets/MiscPackets.h
index 62d5fba3c04..e9d5500d622 100644
--- a/src/server/game/Server/Packets/MiscPackets.h
+++ b/src/server/game/Server/Packets/MiscPackets.h
@@ -19,6 +19,7 @@
#define MiscPackets_h__
#include "Packet.h"
+#include "ObjectGuid.h"
#include "Weather.h"
enum WeatherState : uint32;
@@ -40,6 +41,42 @@ namespace WorldPackets
WeatherState WeatherID = WeatherState(0);
};
+ class TC_GAME_API PlayMusic final : public ServerPacket
+ {
+ public:
+ PlayMusic() : ServerPacket(SMSG_PLAY_MUSIC, 4) { }
+ PlayMusic(uint32 soundKitID) : ServerPacket(SMSG_PLAY_MUSIC, 4), SoundKitID(soundKitID) { }
+
+ WorldPacket const* Write() override;
+
+ uint32 SoundKitID = 0;
+ };
+
+ class TC_GAME_API PlayObjectSound final : public ServerPacket
+ {
+ public:
+ PlayObjectSound() : ServerPacket(SMSG_PLAY_OBJECT_SOUND, 4 + 8) { }
+ PlayObjectSound(ObjectGuid const& sourceObjectGUID, uint32 soundKitID)
+ : ServerPacket(SMSG_PLAY_OBJECT_SOUND, 4 + 8), SourceObjectGUID(sourceObjectGUID), SoundKitID(soundKitID) { }
+
+ WorldPacket const* Write() override;
+
+ ObjectGuid SourceObjectGUID;
+ uint32 SoundKitID = 0;
+
+ };
+
+ class TC_GAME_API PlaySound final : public ServerPacket
+ {
+ public:
+ PlaySound() : ServerPacket(SMSG_PLAY_SOUND, 4) { }
+ PlaySound(uint32 soundKitID) : ServerPacket(SMSG_PLAY_SOUND, 4), SoundKitID(soundKitID) { }
+
+ WorldPacket const* Write() override;
+
+ uint32 SoundKitID = 0;
+ };
+
class OverrideLight final : public ServerPacket
{
public: