コード例 #1
0
 /// <summary>
 /// クエストノードファイルのマージ
 /// </summary>
 /// <param name="questsNodeFile">会話ノードファイル</param>
 public void MargeFile(MieQuestsNodeFile questsNodeFile)
 {
     //// クエストノードの追加
     foreach (var newNode in questsNodeFile.FlatNodes.Values)
     {
         this.AddFlatNodeEntry(newNode);
     }
 }
コード例 #2
0
 public MieQuestsNodeFile GetNodeFile(long fileCode)
 {
     if (this.Files.ContainsKey(fileCode))
     {
         var result = this.Files[fileCode];
         return(result);
     }
     else
     {
         var nodeFile = new MieQuestsNodeFile(fileCode);
         this.Files.Add(nodeFile.FileCode, nodeFile);
         return(nodeFile);
     }
 }
コード例 #3
0
        /// <summary>
        /// クエストファイルを追加する。
        /// すでにクエストファイルが存在する場合は、エントリーをマージする。
        /// </summary>
        /// <param name="questsFile">クエストファイル</param>
        public void AddFile(MieQuestsNodeFile questsFile)
        {
            if (questsFile == null)
            {
                var msg = $"MieQuestsNodeFile is null.";
                logger.Fatal(msg);
                throw new Exception(msg);
            }

            if (this.Files.ContainsKey(questsFile.FileCode))
            {
                //// すでにクエストファイルが存在する場合は、エントリーをマージする。
                var file = this.Files[questsFile.FileCode];
                file.MargeFile(questsFile);
            }
            else
            {
                this.Files.Add(questsFile.FileCode, questsFile);
            }
        }