예제 #1
0
        /// <inheritdoc />
        public async void LoadLocalizationFile(string url)
        {
            //check if file is actual json file
            if (!url.EndsWith(".json"))
            {
                return;
            }

            WWW target = new WWW(url);

            while (!target.isDone)
            {
                await Task.Delay(1000);
            }

            string[]         parts = url.Split(new [] { "." }, StringSplitOptions.None);
            LocalizationData data  = ScriptableObject.CreateInstance <LocalizationData>();
            CultureInfo      info  = CultureInfo.GetCultureInfoByIetfLanguageTag(parts[parts.Length - 2]);

            data.languageIETF       = info.IetfLanguageTag;
            data.languageDescriptor = info.ThreeLetterISOLanguageName;
            data.FromJSON(target.text);

            AddLocalizationData(data);
        }
예제 #2
0
        void ImportLocalizationJSON()
        {
            string           file = EditorUtility.OpenFilePanelWithFilters("Import Localization from JSON...", Application.dataPath, new [] { "JSON localization file", "json" });
            LocalizationData data = (LocalizationData)target;

            string url = "file://" + file;

            //check if file is actual json file
            if (!url.EndsWith(".json"))
            {
                return;
            }

            WWW targetFile = new WWW(url);

            while (!targetFile.isDone)
            {
            }

            string[]    parts = url.Split(new[] { ".", "/" }, StringSplitOptions.None);
            CultureInfo info  = CultureInfo.GetCultureInfoByIetfLanguageTag(parts[parts.Length - 2]);

            data.languageIETF       = info.IetfLanguageTag;
            data.languageDescriptor = info.ThreeLetterISOLanguageName;
            data.FromJSON(targetFile.text);
        }