public LanguageModule LoadModule(string moduleName) { string fileName = moduleName + currentLanguageKey; if (languageModuleDict.TryGetValue(fileName, out LanguageModule module)) { return(module); } TextAsset file = null; #if UNITY_EDITOR if (!Application.isPlaying) { file = UnityEditor.AssetDatabase.LoadAssetAtPath <TextAsset>("Assets/Resources/" + data.ResourcesPathSetting.LocalizationConfig + fileName + ".txt"); } else #endif { file = utility.LoadResources.LoadAsset <TextAsset>(data.ResourcesPathSetting.LocalizationConfig + fileName); } if (file == null) { return(null); } module = new LanguageModule(file.bytes); if (module.IsEmpty) { return(null); } languageModuleDict.Add(fileName, module); return(module); }
public string GetLocalizedString(string key, string moduleName) { LanguageModule module = LoadModule(moduleName); if (module == null) { return(string.Format("#{0}_{1}", key, moduleName)); } return(module.GetString(key)); }