Esempio n. 1
0
        // Renders from a "https://steamcommunity.com/id/Marc3842h/" form.
        public static SteamID FromCustomUrl(string customUrl, SWAHandle handle = null)
        {
            var url = customUrl.StartsWith("http://") ?
                      customUrl.Replace("http://", "") :
                      customUrl.StartsWith("https://") ?
                      customUrl.Replace("https://", "")
                    : customUrl;

            url = url.Replace("steamcommunity.com", "");

            url = url.Replace("/id/", "");

            url = url.Replace("/", "");

            if (handle == null)
            {
                return(Titan.Instance.WebHandle.RequestSteamUserInfo(url, out var steamID64)
                    ? FromSteamID64(steamID64)
                    : null);
            }
            else
            {
                return(handle.RequestSteamUserInfo(url, out var steamID64)
                    ? FromSteamID64(steamID64)
                    : null);
            }
        }
Esempio n. 2
0
        // Renders from a "http://steamcommunity.com/profiles/76561198224231904" form.
        public static SteamID FromNativeUrl(string nativeUrl, SWAHandle handle = null)
        {
            var url = nativeUrl.StartsWith("http://") ?
                      nativeUrl.Replace("http://", "") :
                      nativeUrl.StartsWith("https://") ?
                      nativeUrl.Replace("https://", "")
                    : nativeUrl;

            url = url.Replace("steamcommunity.com", "");

            url = url.Replace("/profiles/", "");

            url = url.Replace("/", "");

            return(ulong.TryParse(url, out var steamID) ? FromSteamID64(steamID) : FromCustomUrl(nativeUrl, handle));
        }
Esempio n. 3
0
        public static SteamID Parse(string s, SWAHandle handle = null)
        {
            switch (s.ElementAt(0))
            {
            case '[':
                return(FromSteamID3(s));

            case 'S':
                return(FromSteamID(s));

            case 'h':
                if (s.Contains("id"))
                {
                    return(FromCustomUrl(s, handle));
                }

                return(FromNativeUrl(s, handle));

            default:
                return(ulong.TryParse(s, out var id) ? FromSteamID64(id) : FromCustomUrl(s, handle));
            }
        }