/// <summary> /// Builds the fonts. /// </summary> /// <param name='config'> /// Config. /// </param> public void BuildFonts(LocalizationFontConfig config, string workDir, string toolsDir) { LocalizationCmdProcessor.GetInstance().Initialize(); _fontConfig = config; _workDirectory = workDir; _toolDirectory = toolsDir; _buildstep = 1.0f / (_fontConfig._languages.Length * 4); EditorUtility.DisplayCancelableProgressBar("Fonts maker", "Start to build fonts", 0.0f); for (int i = 0; i < _fontConfig._languages.Length; i++) { bool ret = BuildLanguage(_fontConfig._languages[i]); if (!ret) { break; } } LocalizationCmdProcessor.GetInstance().Clean(); EditorUtility.DisplayCancelableProgressBar("Fonts maker", "fonts building complete!", 1.0f); EditorUtility.ClearProgressBar(); }
public bool CheckLocalizationConfig(LocalizationFontConfig config) { if (config._languages.Length == 0) { EditorUtility.DisplayDialog("Fonts Maker", "There is no language to be made font !", "OK"); Debug.LogWarning("Localization: config._languages.Length == 0"); return(false); } return(true); }
void LoadSettings() { _configPath = EditorPrefs.GetString("Localization._configPath"); if (_configPath != "") { _configAsset = AssetDatabase.LoadMainAssetAtPath(_configPath) as LocalizationFontConfig; } _toolsPath = EditorPrefs.GetString("Localization._toolsPath"); _resourePath = EditorPrefs.GetString("Localization._resourePath"); if (_resourePath == "") { _resourePath = MultiLanguageAssetPostProcessor.MULTILANGUAGE_ASSETS_FOLDER; } _GUI_Plugin = (MultiLanguageAssetPostProcessor.GUI_PLUGIN_TYPE)EditorPrefs.GetInt("Localization._GUI_Plugin"); }
public override void CreateLanguageDataBase(string language_name, List <LanguageTextEntry> text_list) { string assetPath = MultiLanguageAssetPostProcessor.MULTILANGUAGE_COMMON_FOLDER; string file = MultiLanguageAssetPostProcessor.MULTILANGUAGE_CONFIGFILE; assetPath = System.IO.Path.Combine(assetPath, file); _fontsConfig = UnityEditor.AssetDatabase.LoadAssetAtPath(assetPath, typeof(LocalizationFontConfig)) as LocalizationFontConfig; string path = System.IO.Path.Combine(_outputDirectory, GUISystem); if (!Directory.Exists(path)) { Directory.CreateDirectory(path); } path = System.IO.Path.Combine(path, language_name + ".txt"); System.IO.TextWriter tw = new StreamWriter(path); for (int i = 0; i < text_list.Count; i++) { string text = text_list[i].text; text = ReplacePatternMatch(text); string line = text_list[i].key + " = " + text; tw.WriteLine(line); } tw.Close(); Debug.Log(language_name + " Successful!"); }