Пример #1
0
        public void LoadI18n(bool localized = true)
        {
            if (m_I18nFileLocalized == null)
            {
                Debug.LogError("LoadI18n failed. Please assign i18n files to BlockResSettings.asset.");
                return;
            }

            if (localized)
            {
                LoadFiles();
            }
            else
            {
                var i18nSelected = m_I18nFiles.FindAll(file => file.Selected);
                if (i18nSelected.Count == 0)
                {
                    Debug.LogWarning("Please select an i18n file in BlockResSettings.asset. Default select \'en\'.");
                    i18nSelected.Add(m_I18nFiles.Find(file => file.IndexName == "en"));
                }
                else if (i18nSelected.Count > 1)
                {
                    Debug.LogWarning("You have selected more than one i18n files in BlockResSettings.asset. The first one will be used.");
                }

                var       resParam  = i18nSelected[0];
                TextAsset textAsset = null;
                switch (m_LoadType)
                {
                case BlockResLoadType.Assetbundle:
                    if (mABSyncLoad != null)
                    {
                        textAsset = mABSyncLoad(resParam.ResName) as TextAsset;
                    }
                    break;

                case BlockResLoadType.Resources:
                    textAsset = Resources.Load <TextAsset>(resParam.ResName);
                    break;

                case BlockResLoadType.Serialized:
                    textAsset = resParam.TextFile;
                    break;
                }

                if (textAsset != null)
                {
                    I18n.AddI18nFile(textAsset.text);
                    if (m_LoadType == BlockResLoadType.Assetbundle && mABUnload != null)
                    {
                        mABUnload(resParam.ResName);
                    }
                }

                Debug.Log("Select I18n: " + resParam.IndexName);
            }
        }
Пример #2
0
        public void LoadI18n(string language)
        {
            if (m_I18nFiles == null || m_I18nFiles.Count == 0)
            {
                Debug.LogError("LoadI18n failed. Please assign i18n files to BlockResSettings.asset.");
                return;
            }

            foreach (BlockTextResParam resParam in m_I18nFiles)
            {
                if (language.Equals(resParam.IndexName))
                {
                    TextAsset textAsset = null;
                    switch (m_LoadType)
                    {
                    case BlockResLoadType.Assetbundle:
                        if (mABSyncLoad != null)
                        {
                            textAsset = mABSyncLoad(resParam.ResName) as TextAsset;
                        }
                        break;

                    case BlockResLoadType.Resources:
                        textAsset = Resources.Load <TextAsset>(resParam.ResName);
                        break;

                    case BlockResLoadType.Serialized:
                        textAsset = resParam.TextFile;
                        break;
                    }
                    if (textAsset != null)
                    {
                        I18n.AddI18nFile(textAsset.text);
                        if (m_LoadType == BlockResLoadType.Assetbundle && mABUnload != null)
                        {
                            mABUnload(resParam.ResName);
                        }
                    }
                }
            }
        }
Пример #3
0
        public void LoadFiles()
        {
            var loadingOp = m_I18nFileLocalized.LocalizedTextFile.LoadAssetAsync();

            if (!loadingOp.IsDone)
            {
                ;
            }

            TextAsset textAsset = loadingOp.Result;

            if (textAsset != null)
            {
                I18n.AddI18nFile(textAsset.text);
                if (mABUnload != null)
                {
                    mABUnload(m_I18nFileLocalized.ResName);
                }
            }

            Debug.Log("Select I18n: " + m_I18nFileLocalized.IndexName);
        }