public override IPacket GetEnterFieldPacket() { var packet = new UnstructuredOutgoingPacket(PacketSendOperations.UserEnterField); packet.WriteInt(ID); packet.WriteByte(Character.Level); packet.WriteString(Character.Name); packet.WriteString(Guild?.Name ?? ""); packet.WriteShort(Guild?.MarkBg ?? 0); packet.WriteByte(Guild?.MarkBgColor ?? 0); packet.WriteShort(Guild?.Mark ?? 0); packet.WriteByte(Guild?.MarkColor ?? 0); packet.WriteSecondaryStatsToRemote(SecondaryStats); packet.WriteShort(Character.Job); packet.WriteCharacterLook(Character); packet.WriteInt(0); packet.WriteInt(0); packet.WriteInt(0); packet.WriteInt(0); packet.WriteInt(0); packet.WriteInt(0); packet.WritePoint2D(Position); packet.WriteByte((byte)Action); packet.WriteShort((short)(Foothold?.ID ?? 0)); packet.WriteByte(0); packet.WriteBool(false); packet.WriteBool(false); packet.WriteBool(false); packet.WriteBool(false); packet.WriteInt(0); packet.WriteInt(0); packet.WriteInt(0); packet.WriteByte(0); packet.WriteBool(false); packet.WriteBool(false); packet.WriteBool(false); packet.WriteBool(false); packet.WriteByte(0); packet.WriteByte(0); packet.WriteInt(0); return(packet); }