private Dictionary <uint, byte> GetAssetParamsAsVisualParams() { Dictionary <uint, byte> VisualParams = new Dictionary <uint, byte>(); float maxVal = 0; float minVal = 0; uint packetIdx = 0; float range = 0; float percentage = 0; byte packetVal = 0; foreach (KeyValuePair <uint, float> kvp in AgentAppearanceParams) { packetIdx = AppearanceManager.GetAgentSetAppearanceIndex(kvp.Key) - 1; //TODO/FIXME: this should be zero indexed, not 1 based. maxVal = BodyShapeParams.GetValueMax(kvp.Key); minVal = BodyShapeParams.GetValueMin(kvp.Key); range = maxVal - minVal; percentage = (kvp.Value - minVal) / range; packetVal = (byte)(percentage * (byte)255); VisualParams[packetIdx] = packetVal; } return(VisualParams); }
/// <summary> /// Default constructor /// </summary> public SecondLife() { // These are order-dependant Network = new NetworkManager(this); Settings = new Settings(this); Parcels = new ParcelManager(this); Self = new MainAvatar(this); Avatars = new AvatarManager(this); Friends = new FriendManager(this); Grid = new GridManager(this); Objects = new ObjectManager(this); Groups = new GroupManager(this); Assets = new libsecondlife.AssetSystem.AssetManager(this); Appearance = new libsecondlife.AssetSystem.AppearanceManager(this); Images = new ImageManager(this); Inventory = new InventoryManager(this); Directory = new DirectoryManager(this); Terrain = new TerrainManager(this); Throttle = new AgentThrottle(this); }