mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-28 04:42:10 +01:00
Core/Packets: added SMSG_PLAY_SPEAKERBOT_SOUND packet class
This commit is contained in:
@@ -2978,23 +2978,20 @@ bool WorldObject::IsInPhase(WorldObject const* obj) const
|
||||
return Trinity::Containers::Intersects(_phases.begin(), _phases.end(), obj->GetPhases().begin(), obj->GetPhases().end());
|
||||
}
|
||||
|
||||
void WorldObject::PlayDistanceSound(uint32 sound_id, Player* target /*= NULL*/)
|
||||
void WorldObject::PlayDistanceSound(uint32 soundId, Player* target /*= nullptr*/)
|
||||
{
|
||||
WorldPacket data(SMSG_PLAY_SPEAKERBOT_SOUND, 4 + 8);
|
||||
data << uint32(sound_id);
|
||||
data << GetGUID();
|
||||
if (target)
|
||||
target->SendDirectMessage(&data);
|
||||
target->SendDirectMessage(WorldPackets::Misc::PlaySpeakerbotSound(GetGUID(), soundId).Write());
|
||||
else
|
||||
SendMessageToSet(&data, true);
|
||||
SendMessageToSet(WorldPackets::Misc::PlaySpeakerbotSound(GetGUID(), soundId).Write(), true);
|
||||
}
|
||||
|
||||
void WorldObject::PlayDirectSound(uint32 sound_id, Player* target /*= NULL*/)
|
||||
void WorldObject::PlayDirectSound(uint32 soundId, Player* target /*= nullptr*/)
|
||||
{
|
||||
if (target)
|
||||
target->SendDirectMessage(WorldPackets::Misc::PlaySound(GetGUID(), sound_id).Write());
|
||||
target->SendDirectMessage(WorldPackets::Misc::PlaySound(GetGUID(), soundId).Write());
|
||||
else
|
||||
SendMessageToSet(WorldPackets::Misc::PlaySound(GetGUID(), sound_id).Write(), true);
|
||||
SendMessageToSet(WorldPackets::Misc::PlaySound(GetGUID(), soundId).Write(), true);
|
||||
}
|
||||
|
||||
void WorldObject::DestroyForNearbyPlayers()
|
||||
|
||||
@@ -610,8 +610,8 @@ class TC_GAME_API WorldObject : public Object, public WorldLocation
|
||||
|
||||
virtual uint8 getLevelForTarget(WorldObject const* /*target*/) const { return 1; }
|
||||
|
||||
void PlayDistanceSound(uint32 sound_id, Player* target = NULL);
|
||||
void PlayDirectSound(uint32 sound_id, Player* target = NULL);
|
||||
void PlayDistanceSound(uint32 soundId, Player* target = nullptr);
|
||||
void PlayDirectSound(uint32 soundId, Player* target = nullptr);
|
||||
|
||||
virtual void SaveRespawnTime() { }
|
||||
void AddObjectToRemoveList();
|
||||
|
||||
@@ -442,6 +442,14 @@ WorldPacket const* WorldPackets::Misc::PlaySound::Write()
|
||||
return &_worldPacket;
|
||||
}
|
||||
|
||||
WorldPacket const* WorldPackets::Misc::PlaySpeakerbotSound::Write()
|
||||
{
|
||||
_worldPacket << SourceObjectGUID;
|
||||
_worldPacket << int32(SoundKitID);
|
||||
|
||||
return &_worldPacket;
|
||||
}
|
||||
|
||||
void WorldPackets::Misc::FarSight::Read()
|
||||
{
|
||||
Enable = _worldPacket.ReadBit();
|
||||
|
||||
@@ -611,6 +611,19 @@ namespace WorldPackets
|
||||
int32 SoundKitID = 0;
|
||||
};
|
||||
|
||||
class TC_GAME_API PlaySpeakerbotSound final : public ServerPacket
|
||||
{
|
||||
public:
|
||||
PlaySpeakerbotSound() : ServerPacket(SMSG_PLAY_SPEAKERBOT_SOUND, 20) { }
|
||||
PlaySpeakerbotSound(ObjectGuid const& sourceObjectGUID, int32 soundKitID)
|
||||
: ServerPacket(SMSG_PLAY_SPEAKERBOT_SOUND, 20), SourceObjectGUID(sourceObjectGUID), SoundKitID(soundKitID) { }
|
||||
|
||||
WorldPacket const* Write() override;
|
||||
|
||||
ObjectGuid SourceObjectGUID;
|
||||
int32 SoundKitID = 0;
|
||||
};
|
||||
|
||||
class CompleteCinematic final : public ClientPacket
|
||||
{
|
||||
public:
|
||||
|
||||
@@ -1505,7 +1505,7 @@ void OpcodeTable::Initialize()
|
||||
DEFINE_SERVER_OPCODE_HANDLER(SMSG_PLAY_ORPHAN_SPELL_VISUAL, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
|
||||
DEFINE_SERVER_OPCODE_HANDLER(SMSG_PLAY_SCENE, STATUS_NEVER, CONNECTION_TYPE_REALM);
|
||||
DEFINE_SERVER_OPCODE_HANDLER(SMSG_PLAY_SOUND, STATUS_NEVER, CONNECTION_TYPE_REALM);
|
||||
DEFINE_SERVER_OPCODE_HANDLER(SMSG_PLAY_SPEAKERBOT_SOUND, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
|
||||
DEFINE_SERVER_OPCODE_HANDLER(SMSG_PLAY_SPEAKERBOT_SOUND, STATUS_NEVER, CONNECTION_TYPE_REALM);
|
||||
DEFINE_SERVER_OPCODE_HANDLER(SMSG_PLAY_SPELL_VISUAL, STATUS_NEVER, CONNECTION_TYPE_REALM);
|
||||
DEFINE_SERVER_OPCODE_HANDLER(SMSG_PLAY_SPELL_VISUAL_KIT, STATUS_NEVER, CONNECTION_TYPE_REALM);
|
||||
DEFINE_SERVER_OPCODE_HANDLER(SMSG_PLAY_TIME_WARNING, STATUS_UNHANDLED, CONNECTION_TYPE_REALM);
|
||||
|
||||
Reference in New Issue
Block a user