From 2f6841b12581914ce9fba43c992247f0090de2cf Mon Sep 17 00:00:00 2001 From: Filip Maj Date: Mon, 12 Oct 2015 10:45:35 -0400 Subject: [PATCH] Fixed emote not working when no target was set. --- .../packets/send/Actor/ActorDoEmotePacket.cs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/FFXIVClassic Map Server/packets/send/Actor/ActorDoEmotePacket.cs b/FFXIVClassic Map Server/packets/send/Actor/ActorDoEmotePacket.cs index bc0b63f5..8c1cadd7 100644 --- a/FFXIVClassic Map Server/packets/send/Actor/ActorDoEmotePacket.cs +++ b/FFXIVClassic Map Server/packets/send/Actor/ActorDoEmotePacket.cs @@ -17,12 +17,15 @@ namespace FFXIVClassic_Map_Server.packets.send.actor { byte[] data = new byte[PACKET_SIZE - 0x20]; + if (targetActorID == 0xC0000000) + targetActorID = playerActorID; + using (MemoryStream mem = new MemoryStream(data)) { using (BinaryWriter binWriter = new BinaryWriter(mem)) { uint realAnimID = 0x5000000 | ((emoteID - 100) << 12); - uint realDescID = 20000 + ((emoteID - 1) * 10) + (targetActorID == playerActorID || targetActorID == 0xC0000000 ? (uint)2 : (uint)1); + uint realDescID = 20000 + ((emoteID - 1) * 10) + (targetActorID == playerActorID ? (uint)2 : (uint)1); binWriter.Write((UInt32)realAnimID); binWriter.Write((UInt32)targetActorID); binWriter.Write((UInt32)realDescID);