/// <summary> /// Process incoming avatar properties (profile data) /// </summary> /// <param name="packet"></param> /// <param name="sim"></param> private void AvatarPropertiesHandler(Packet packet, Simulator sim) { if (OnAvatarProperties != null) { AvatarPropertiesReplyPacket reply = (AvatarPropertiesReplyPacket)packet; Avatar.Properties properties = new Avatar.Properties(); properties.ProfileImage = reply.PropertiesData.ImageID; properties.FirstLifeImage = reply.PropertiesData.FLImageID; properties.Partner = reply.PropertiesData.PartnerID; properties.AboutText = Helpers.FieldToString(reply.PropertiesData.AboutText); properties.FirstLifeText = Helpers.FieldToString(reply.PropertiesData.FLAboutText); properties.BornOn = Helpers.FieldToString(reply.PropertiesData.BornOn); properties.CharterMember = Helpers.FieldToString(reply.PropertiesData.CharterMember); properties.AllowPublish = reply.PropertiesData.AllowPublish; properties.MaturePublish = reply.PropertiesData.MaturePublish; properties.Identified = reply.PropertiesData.Identified; properties.Transacted = reply.PropertiesData.Transacted; properties.ProfileURL = Helpers.FieldToString(reply.PropertiesData.ProfileURL); OnAvatarProperties(reply.AgentData.AvatarID, properties); } }
void Avatars_OnAvatarProperties(LLUUID avatarID, Avatar.Properties properties) { lock (ReceivedProfileEvent) { Properties = properties; ReceivedProperties = true; if (ReceivedInterests && ReceivedProperties) ReceivedProfileEvent.Set(); } }