//ページ情報の初期化 internal void InitPages() { if (CommnadList.Count <= 0) { return; } this.pageDataList.Clear(); { AdvScenarioPageData page = new AdvScenarioPageData(this, this.PageDataList.Count); pageDataList.Add(page); for (int i = 0; i < CommnadList.Count; ++i) { AdvCommand command = CommnadList[i]; page.AddCommand(command); //ページデータの作成(ページ末端判定にも使うのでここで行う) command.MakePageData(page); //ページが最後かチェック if (command.IsTypePageEnd() && i + 1 < CommnadList.Count) { page = new AdvScenarioPageData(this, this.PageDataList.Count); pageDataList.Add(page); } } } foreach (AdvScenarioPageData page in pageDataList) { page.Init(); } }
//コマンドの追加 public void AddCommand(AdvCommand command) { cuurentPageData.AddCommand(command); if (command.IsTypePageEnd()) { cuurentPageData = new AdvScenarioPageData(); pageDataList.Add(cuurentPageData); } }