Example #1
0
        public IEnumerator GetRequest(string url, ResponseFormat format, Action <Response> callback)
        {
            if (Settings.GameId == 0 || Settings.PrivateKey == null)
            {
                callback(new Response("Bad Credentials"));
                yield break;
            }

            float timeout = Time.time + Settings.Timeout;

            using (var request = UnityVersionAbstraction.GetRequest(url, format)) {
                request.SendWebRequest();
                while (!request.isDone)
                {
                    if (Time.time > timeout)
                    {
                        request.Abort();
                        callback(new Response("Timeout for " + url));
                        yield break;
                    }
                    yield return(new WaitForEndOfFrame());
                }
                callback(new Response(request, format));
            }
        }
Example #2
0
        /// <summary>
        /// Make MD5 Hash.
        /// </summary>
        /// <returns>The MD5 Hash.</returns>
        /// <param name="input">Input.</param>
        private static string Md5(string input)
        {
            var bytes      = Encoding.UTF8.GetBytes(input);
            var hashBytes  = UnityVersionAbstraction.ComputeHash(bytes);
            var hashString = new StringBuilder();

            foreach (byte b in hashBytes)
            {
                hashString.Append(b.ToString("x2").ToLower());
            }
            return(hashString.ToString().PadLeft(32, '0'));
        }