/// <summary> /// 次のターンの処理を行う /// </summary> /// <returns>まだ続く場合 true, それ以外の場合 false</returns> private bool NextTurn() { // 次の処理を行う var hasNext = _game.NextTurn(); // 終了の場合 if (!hasNext) { // ステータスを停止に変更 Status = EFormStatus.STOPPED; } // Infoテキストを更新する UpdateInfoText(); // 結果を返す return(hasNext); }
/// <summary> /// スタートボタン押下 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void toolStripButtonStart_Click(object sender, EventArgs e) { // 設定フォームを生成 var formConfig = new FormConfig(_botMetaList); // ダイアログ表示して OK 以外の場合 if (formConfig.ShowDialog() != DialogResult.OK) { // 何もしない return; } // プレイヤー情報を取得 var players = formConfig.PlayerList; // マップ var map = _mapSet.First().Value; // セルイメージの初期化 InitCellImages(players); // キャンバスの初期化 InitCanvas(); // ロジックを生成 _game = new Game(); // ロジックを初期化 _game.Init(_botMetaList, players, map); _game.StartGame(100000); // 再描画 DrawToBackScreen(); Redraw(); // 時間計測リセット _stopwatch.Reset(); // 時間計測スタート(ステータス変更より前) _stopwatch.Start(); // ステータスをプレイ中に変更 Status = EFormStatus.PLAYING; }