public float GetValue(string animationName, KAS_ValueType type)
        {
            try
            {
                switch (type)
                {
                case KAS_ValueType.RotW:
                    return(RotationW [animationName]);

                case KAS_ValueType.RotX:
                    return(RotationX [animationName]);

                case KAS_ValueType.RotY:
                    return(RotationY [animationName]);

                case KAS_ValueType.RotZ:
                    return(RotationZ [animationName]);

                case KAS_ValueType.PosX:
                    return(PositionX [animationName]);

                case KAS_ValueType.PosY:
                    return(PositionY [animationName]);

                case KAS_ValueType.PosZ:
                    return(PositionZ [animationName]);

                default:
                    return(0f);
                }
            }
            catch (KeyNotFoundException e)
            {
                //ignore colliders
                if (animationName.ToLower().Contains("collider"))
                {
                    return(0f);
                }

                Debug.LogError("key not found: " + animationName);
                Debug.LogException(e);
            }
            return(0f);
        }
        public void SetValue(float value, string animationName, KAS_ValueType type)
        {
            switch (type)
            {
            case KAS_ValueType.RotW:
                RotationW [animationName] = value;
                break;

            case KAS_ValueType.RotX:
                RotationX [animationName] = value;
                break;

            case KAS_ValueType.RotY:
                RotationY [animationName] = value;
                break;

            case KAS_ValueType.RotZ:
                RotationZ [animationName] = value;
                break;

            case KAS_ValueType.PosX:
                PositionX [animationName] = value;
                break;

            case KAS_ValueType.PosY:
                PositionY [animationName] = value;
                break;

            case KAS_ValueType.PosZ:
                PositionZ [animationName] = value;
                break;

            default:
                break;
            }
        }
 public void SetValue(float value, string animationName, KAS_ValueType type)
 {
     switch (type)
     {
     case KAS_ValueType.RotW:
         RotationW [animationName] = value;
         break;
     case KAS_ValueType.RotX:
         RotationX [animationName] = value;
         break;
     case KAS_ValueType.RotY:
         RotationY [animationName] = value;
         break;
     case KAS_ValueType.RotZ:
         RotationZ [animationName] = value;
         break;
     case KAS_ValueType.PosX:
         PositionX [animationName] = value;
         break;
     case KAS_ValueType.PosY:
         PositionY [animationName] = value;
         break;
     case KAS_ValueType.PosZ:
         PositionZ [animationName] = value;
         break;
     default:
         break;
     }
 }
        public float GetValue(string animationName, KAS_ValueType type)
        {
            try
            {
                switch (type)
                {
                case KAS_ValueType.RotW:
                    return RotationW [animationName];
                case KAS_ValueType.RotX:
                    return RotationX [animationName];
                case KAS_ValueType.RotY:
                    return RotationY [animationName];
                case KAS_ValueType.RotZ:
                    return RotationZ [animationName];
                case KAS_ValueType.PosX:
                    return PositionX [animationName];
                case KAS_ValueType.PosY:
                    return PositionY [animationName];
                case KAS_ValueType.PosZ:
                    return PositionZ [animationName];
                default:
                    return 0f;
                }
            }
            catch(KeyNotFoundException e)
            {
                //ignore colliders
                if (animationName.ToLower ().Contains ("collider"))
                    return 0f;

                Debug.LogError ("key not found: " + animationName);
                Debug.LogException (e);
            }
            return 0f;
        }