private void AvatarAppearanceHandler(Packet packet, Simulator sim)
{
if (OnAvatarAppearance != null)
{
AvatarAppearancePacket appearance = (AvatarAppearancePacket)packet;
sim.ObjectsAvatars.ForEach(delegate(Avatar av)
{
if (av.ID == appearance.Sender.ID)
{
List<byte> visualParams = new List<byte>();
foreach (AvatarAppearancePacket.VisualParamBlock block in appearance.VisualParam)
{
visualParams.Add(block.ParamValue);
}
Primitive.TextureEntry textureEntry = new Primitive.TextureEntry(appearance.ObjectData.TextureEntry, 0,
appearance.ObjectData.TextureEntry.Length);
Primitive.TextureEntryFace defaultTexture = textureEntry.DefaultTexture;
Primitive.TextureEntryFace[] faceTextures = textureEntry.FaceTextures;
try { OnAvatarAppearance(appearance.Sender.ID, appearance.Sender.IsTrial, defaultTexture, faceTextures, visualParams); }
catch (Exception e) { Logger.Log(e.Message, Helpers.LogLevel.Error, Client, e); }
}
});
}
}