10. リバーシの作成
更新日:
ここまでの内容を利用してリバーシを作成します。
このコードを実行するとリバーシが実行できます。オフラインでの人同士の対戦です。
解説
6行目で宣言したboardという配列で盤面の状態を保持しています。状態は全角スペース、黒丸、白丸の3つです。
16行目で宣言したscanという変数はキーボードでの入力を受け取るための変数です。詳しい使い方の説明は今回はしません。
26行目のwhile文によって、両方がパスをするまで繰り返しそれぞれのターンを実行しています。
119行目のplaceメソッド、165行目のreverseStoneメソッドは引数のenableによって実際に石を置くかどうかを切り替えています。
enableがfalseのときには、ひっくり返さないので、そこに石を置くことができるか調べるメソッドとして機能します。