コード例 #1
0
        /// <summary>
        /// 言語DBの初期化とDB化。
        /// </summary>
        /// <param name="systemDb">データベース接続情報</param>
        /// <param name="langPath">言語情報フォルダーのパス</param>
        /// <param name="productLine">製品区分</param>
        /// <param name="languageType">言語区分</param>
        /// <param name="fileList">FileList</param>
        public void ConvertLanguage(MieSystemDB systemDb, string langPath, MieProduct.NProductLine productLine, MieProduct.NLanguageType languageType, MieFileList fileList)
        {
            if (!Directory.Exists(langPath))
            {
                var msg = $"Directory not found({langPath}).";
                if (productLine == MieProduct.NProductLine.Vanilla)
                {
                    logger.Error(msg);
                    throw new DirectoryNotFoundException(msg);
                }
                else
                {
                    logger.Warn(msg);
                    Console.WriteLine(msg);

                    return;
                }
            }

            //// 話者情報の読み込みとFileListの作成。
            var langInfo = MieStringTableDao.LoadFromFolder(langPath, productLine, languageType, fileList);

            if (this.LanguageInfo == null)
            {
                this.LanguageInfo = langInfo;
            }
            else
            {
                foreach (var langFile in langInfo.Items.Values)
                {
                    this.LanguageInfo.AddFile(langFile, true);
                }
            }
        }
コード例 #2
0
        public void LoadFromFile(string path)
        {
            string fileID       = string.Empty;
            var    languageFile = MieStringTableDao.LoadFromXml(
                path, MieProduct.NProductLine.ALL, out fileID);

            this.languageInfo.AddFile(languageFile, false);
        }
コード例 #3
0
        public void SaveToFolder(
            string japaneseFolderPath,
            MieTransSheetInfo transSheetInfo,
            bool useChatter,
            bool useConversation,
            bool useGame,
            bool useQuests,
            bool useMT,
            bool useReferenceID)
        {
            foreach (var langFile in this.languageInfo.Items.Values)
            {
                var fileListEntry = this.fileList.GetFileEntry(langFile.FileCode);

                bool go = false;
                if (fileListEntry.LanguageType == MieProduct.NLanguageType.Chatter && useChatter)
                {
                    go = true;
                }
                else if (fileListEntry.LanguageType == MieProduct.NLanguageType.Conversations && useConversation)
                {
                    go = true;
                }
                else if (fileListEntry.LanguageType == MieProduct.NLanguageType.Game && useGame)
                {
                    go = true;
                }
                else if (fileListEntry.LanguageType == MieProduct.NLanguageType.Quests && useQuests)
                {
                    go = true;
                }

                if (go)
                {
                    var fileID = this.fileList.GetFileID(langFile.FileCode);

                    string jpPath = string.Empty;
                    if (useReferenceID)
                    {
                        jpPath = Path.Combine(japaneseFolderPath, @"exported\localized\jpr\text");
                    }
                    else
                    {
                        jpPath = Path.Combine(japaneseFolderPath, @"exported\localized\jp\text");
                    }

                    var transSheetFile = transSheetInfo.GetFile(fileID);
                    MieStringTableDao.CreateXml(
                        fileID, langFile, jpPath, transSheetFile, useMT, useReferenceID);
                }
            }
        }
コード例 #4
0
 public void LoadFromFolder(
     string folderPath,
     MieProduct.NProductLine productLine,
     MieProduct.NLanguageType languageType,
     MieFileList fileList)
 {
     this.languageInfo = MieStringTableDao.LoadFromFolder(
         folderPath,
         productLine,
         languageType,
         fileList);
     Console.WriteLine(this.languageInfo.FileCount);
 }