void CreatureTextMgr::SendSound(Creature* source, uint32 sound, ChatMsg msgType, WorldObject const* whisperTarget, CreatureTextRange range, Team team, bool gmOnly) { if (!sound || !source) return; ObjectGuid guid = source->GetGUID(); WorldPacket data(SMSG_PLAY_SOUND, 4 + 9); data.WriteBit(guid[2]); data.WriteBit(guid[3]); data.WriteBit(guid[7]); data.WriteBit(guid[6]); data.WriteBit(guid[0]); data.WriteBit(guid[5]); data.WriteBit(guid[4]); data.WriteBit(guid[1]); data << uint32(sound); data.WriteByteSeq(guid[3]); data.WriteByteSeq(guid[2]); data.WriteByteSeq(guid[4]); data.WriteByteSeq(guid[7]); data.WriteByteSeq(guid[5]); data.WriteByteSeq(guid[0]); data.WriteByteSeq(guid[6]); data.WriteByteSeq(guid[1]); SendNonChatPacket(source, &data, msgType, whisperTarget, range, team, gmOnly); }
void CreatureTextMgr::SendSound(Creature* source, uint32 sound, ChatMsg msgType, WorldObject const* whisperTarget /*= nullptr*/, CreatureTextRange range /*= TEXT_RANGE_NORMAL*/, Team team /*= TEAM_OTHER*/, bool gmOnly /*= false*/) { if (!sound || !source) return; SendNonChatPacket(source, WorldPackets::Misc::PlaySound(source->GetGUID(), sound).Write(), msgType, whisperTarget, range, team, gmOnly); }
void CreatureTextMgr::SendSound(Creature* source, uint32 sound, ChatMsg msgType, uint64 whisperGuid, TextRange range, Team team, bool gmOnly) { if (!sound || !source) return; WorldPacket data(SMSG_PLAY_SOUND, 4); data << uint32(sound); SendNonChatPacket(source, &data, msgType, whisperGuid, range, team, gmOnly); }
void CreatureTextMgr::SendSound(Creature* source, uint32 sound, ChatMsg msgType, WorldObject const* whisperTarget, CreatureTextRange range, Team team, bool gmOnly) { if (!sound || !source) return; WorldPacket data(SMSG_PLAY_SOUND, 4); data << uint32(sound); data << uint64(source->GetGUID()); SendNonChatPacket(source, &data, msgType, whisperTarget, range, team, gmOnly); }