Stage 8 ゲームを進行する
8-1 ゲームの初期設定をする
ゲームを始める前に仕上げておかなければならないものをチャッチャと仕上げちゃいましょう。ファイルは新しくなって playmode.py です。
いろいろインポートしたら、まず local_logger を設定します。
import sys
from config import *
import board
import IO
local_logger = setLogger(__name__)
これに関しては今まで何回もやってるからいいですよね。
~~~~~~~~~~~~~~~
ここからは playmode 関数の中に入っていきます。まずは引数の検討です。
def playmode(turnmode=True, logger=None):
turnmode は 3-2 で作った print メソッドの引数に入れるものです。ロガーはやっぱりいつも通りのロガーで、いつも通りに最初に設定します。
### LOGGER SETTING
logger = logger or local_logger
直後の record とかは Stage 10 で扱いますので、まだ触らないでくださいね。
### INITIALIZATION
# files preparing
record = open(MAINRECADDRESS, 'w')
record.close()
record = open(SUBRECADDRESS, 'w')
record.close()
触らないでくださいね。だから
触らないでくださいね。
分かったからそんな突っかかるなって
ちゃんとやりますから。
~~~~~~~~~~~~~~~
ここで手をつけるのは main_board という Board のインスタンスの宣言です。
# initializing the board
main_board = board.Board()
main_board.print(turnmode=turnmode)
この時点でコンストラクタが実行され、board や player などの各種パラメーターが初期化されます。
次いで盤面を表示します。
# initializing the board
main_board = board.Board()
main_board.print(turnmode=turnmode)
後々出てきますけれども、このコードでは基本的に手番(ターン)が終了してから盤面を写し出しますので、これを入れておかないと、最初何もないところからいきなり「さあて、ゲームの始まりですよ。あなたどの駒動かします?」ってなります。
いや、まずは盤面見せろよ
ってなりますから書き忘れないでくださいね。
ここから先は while でループさせます。基本的に決着が着くまでずっと白 → 黒 → 白 → ... と続きますから、for よりも while ループが適切でしょう。