//シナリオデータとして解析 public void Init(AdvSettingDataManager dataManager, AdvMacroManager macroManger) { isInit = false; List <AdvCommand> commandList = new List <AdvCommand>(); foreach (StringGridRow row in DataGrid.Rows) { if (row.RowIndex < DataGrid.DataTopRow) { continue; //データの行じゃない } if (row.IsEmptyOrCommantOut) { continue; //データがない } List <AdvCommand> macroCommnadList; AdvCommand.StartCheckEntity(dataManager.DefaultParam.GetParameter); bool isMacro = macroManger.TryParseMacro(row, dataManager, out macroCommnadList); AdvCommand.EndCheckEntity(); if (isMacro) { //マクロの場合 commandList.AddRange(macroCommnadList); } else { //通常コマンド AdvCommand command = AdvCommandParser.CreateCommand(row, dataManager); if (null != command) { commandList.Add(command); } } } //選択肢終了などの特別なコマンドを自動解析して追加 AddExtraCommand(commandList, dataManager); //シナリオラベルデータを作成 MakeScanerioLabelData(commandList); isInit = true; }