Example #1
0
 public static int[] GetIntegerArray(this KeyValuePairs kvp, string key, int[] _default)
 {
     if (kvp.ContainsKey(key))
     {
         var value = kvp.GetString(key);
         if (value.Length > 0)
         {
             var strArray = kvp.GetString(key).Split(',');
             var intArray = new int[strArray.Length];
             for (int i = 0; i < strArray.Length; ++i)
             {
                 if (!int.TryParse(strArray[i], out intArray[i]))
                 {
                     return(_default);
                 }
             }
             return(intArray);
         }
         else
         {
             return(new int[0]);
         }
     }
     return(_default);
 }
Example #2
0
 public static Guid GetGUID(this KeyValuePairs kvp, string key, Guid _default)
 {
     if (kvp.ContainsKey(key))
     {
         Guid result;
         if (Guid.TryParse(kvp.GetString(key), out result))
         {
             return(result);
         }
     }
     return(_default);
 }
Example #3
0
        public static Vector3 GetColour(this KeyValuePairs kvp, string key, Vector3 _default)
        {
            int colourHex;

            if (kvp.ContainsKey(key) &&
                int.TryParse(kvp.GetString(key).Replace("#", ""), NumberStyles.HexNumber, CultureInfo.InvariantCulture, out colourHex))
            {
                float r = (float)((colourHex & 0xff0000) >> 16) / 255.0f;
                float g = (float)((colourHex & 0x00ff00) >> 8) / 255.0f;
                float b = (float)(colourHex & 0x0000ff) / 255.0f;
                return(new Vector3(r, g, b));
            }
            else
            {
                return(_default);
            }
        }
Example #4
0
 public static Vector3 GetVector(this KeyValuePairs kvp, string key, Vector3 _default)
 {
     if (kvp.ContainsKey(key))
     {
         string[] str = kvp.GetString(key).Split(',');
         if (str.Length >= 3)
         {
             float x, y, z;
             if (float.TryParse(str[0].Trim(), NumberStyles.Float, CultureInfo.InvariantCulture, out x) &&
                 float.TryParse(str[1].Trim(), NumberStyles.Float, CultureInfo.InvariantCulture, out y) &&
                 float.TryParse(str[2].Trim(), NumberStyles.Float, CultureInfo.InvariantCulture, out z))
             {
                 return(new Vector3(x, y, z));
             }
         }
     }
     return(_default);
 }
Example #5
0
 public static string[] GetStringArray(this KeyValuePairs kvp, string key, string[] _default)
 {
     if (kvp.ContainsKey(key))
     {
         var value = kvp.GetString(key);
         if (value.Length > 0)
         {
             var array = kvp.GetString(key).Split(',');
             for (int i = 0; i < array.Length; ++i)
             {
                 array[i] = array[i].Trim();
             }
             return(array);
         }
         else
         {
             return(new string[0]);
         }
     }
     return(_default);
 }