예제 #1
0
        public static Asset GetByAssetId(string url = "")
        {
            if (url == null || url.Length == 0)
            {
                url = "rbxassetid://9854798";
            }

            long legacyId = LegacyAssets.Check(url);

            if (legacyId > 0)
            {
                return(Get(legacyId));
            }
            else
            {
                string sAssetId = "";
                int    endIndex = -1;

                for (int i = url.Length - 1; i >= 0; i--)
                {
                    char c = url[i];

                    if (char.IsNumber(c))
                    {
                        endIndex = i;
                        break;
                    }
                }

                for (int i = endIndex; i >= 0; i--)
                {
                    char c = url[i];

                    if (!char.IsNumber(c))
                    {
                        break;
                    }

                    sAssetId += c;
                }

                char[] charArray = sAssetId.ToCharArray();
                Array.Reverse(charArray);

                long assetId = long.Parse(new string(charArray));
                return(Get(assetId));
            }
        }
예제 #2
0
        public static Asset GetByAssetId(string address = "")
        {
            if (address == null || address.Length == 0)
            {
                address = "rbxassetid://9854798";
            }

            long legacyId = LegacyAssets.Check(address);

            if (legacyId > 0)
            {
                return(Get(legacyId));
            }

            var    match    = Regex.Match(address.Trim(), @"\d+$");
            string sAssetId = match.Value;

            if (!long.TryParse(sAssetId, out long assetId))
            {
                System.Diagnostics.Debugger.Break();
            }

            return(Get(assetId));
        }