12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
-
- using System;
- using System.Collections.Generic;
- using UnityEngine;
- [CreateAssetMenu(fileName = "localLanguage", menuName = "ScriptableObjects/LocalLanguage", order = 1)]
- public class MultiLanguageConfig : ScriptableObject
- {
- public List<LanguageData> languageInfos = new List<LanguageData>();
- private Dictionary<string, LanguageData> _languageDataDic;//
- public Dictionary<string, LanguageData> languageDataDic
- {
- get
- {
- if (_languageDataDic == null || _languageDataDic.Count <= 0)
- {
- InitLanguageDataDic();
- }
- return _languageDataDic;
- }
- }
- private void InitLanguageDataDic()
- {
- _languageDataDic = new Dictionary<string, LanguageData>();
- for (int i = 0; i < languageInfos.Count; i++)
- {
- _languageDataDic.Add(languageInfos[i].name, languageInfos[i]);
- }
- }
- public string GetDataByName(string name, LanguageType languageType)
- {
- if (languageDataDic.ContainsKey(name))
- {
- if (languageDataDic[name].content.Count > (int)languageType)
- {
- return languageDataDic[name].content[(int)languageType].content;
- }
- }
- return null;
- }
- }
|