バグ、不具合報告等はGitHubにてissueを開いてください
・バグ修正
・バグ修正
・moveモードを使用した際turnがカウントされない問題を修正
・勝者がでた場合はカウントを進めないように変更
・PEP8に準拠(E501を除く)
・READMEのミスを修正
・READMEのミスを修正
・gobb.winnerにwin_lineを追加
・READMEを一部編集
・READMEのミスを修正
・move操作によってかぶされていたゴブレットが姿を現し、それによって列が完成し、移動先でももう一人のプレイヤーの列が完成した場合、後者のプレイヤーの勝利になる可能性があった問題を修正
例:
before(
赤大 無し 赤中
青大 青中 赤大
無し 無し 無し
)
after(
赤大 赤大 赤中
青大 青中 青中
無し 無し 無し
)
この場合、本来は青の勝利だが、赤の勝利という判定になってしまう
・READMEのミスを修正
上記で修正したとか言っといてできてなかったのでちゃんと修正
move後に列が完成しても判断されなかった不具合を修正
pip install -U gobbletgobblers.py
from gobbletgobblers import GobbletGobblers
gobb = GobbletGobblers(FirstPlayer, SecondPlayer, EmptyBoardText)FirstPlayer - 先攻のプレイヤー
SecondPlayer - 後攻のプレイヤー
EmptyBoardText - 何も置かれていない場所に表示するテキスト
先攻、後攻プレイヤーの情報が格納
player - Create Gameの手順で設定されたプレイヤー情報
gobbs - プレイヤーの所持している(新たに盤面に設置可能な)ゴブレット
color - プレイヤーの色(Red / Blue)
scolor - プレイヤーの色の略版(r / b) 基本的に内部でのみ使用
modes - プレイヤーが選択できるモード(初期: ['p'])
Create Gameの手順で設定された文字列
現在進行しているターン数
現在のプレイヤー
player - Create Gameの手順で設定されたプレイヤー情報
gobbs - プレイヤーの所持している(新たに盤面に設置可能な)ゴブレット
color - プレイヤーの色(Red / Blue)
scolor - プレイヤーの色の略版(r / b) 基本的に内部でのみ使用
modes - プレイヤーが選択できるモード(初期: ['p'])
勝者が出たかどうか
勝者
player - Create Gameの手順で設定されたプレイヤー情報
gobbs - プレイヤーの所持している(新たに盤面に設置可能な)ゴブレット
color - プレイヤーの色(Red / Blue)
scolor - プレイヤーの色の略版(r / b) 基本的に内部でのみ使用
modes - プレイヤーが選択できるモード(初期: ['p'])
wine_line - 勝利ライン
盤面情報
gobb.board
├─a1
│ ├─ t
│ ├─ b
│ ├─ m
│ └─ s
├─a2
│ ├─ t
│ ├─ b
│ ├─ m
│ └─ s
├─a3
│ ├─ t
│ ├─ b
│ ├─ m
│ └─ s
.
.
.
a1, a2, a3... - 盤面の座標
+----+----+----+
| a1 | a2 | a3 |
+----+----+----+
| b1 | b2 | b3 |
+----+----+----+
| c1 | c2 | c3 |
+----+----+----+
t - top その座標におけるもっとも大きいゴブレット
b - big 一番大きいゴブレット
m - meddle 普通サイズのゴブレット
s - small 一番小さいゴブレット
putモード時に設置可能な場所を返す
choices_put = gobb.choices_put()指定の座標に指定のサイズのゴブレットを配置
gobb.put(place, size)place - 配置する座標
size - 配置するゴブレットのサイズ
moveモード時に動かすことのできるゴブレットの座標を返す
choices_move_from = gobb.choices_move_from()moveモード時に指定のゴブレットを移動させられる座標を返す
choices_move_to = gobb.choices_move_to(from)from - 移動前のゴブレットの座標
ゴブレットを移動させる
gobb.move(from, to)from - 移動前のゴブレットの座標
to - 移動後のゴブレットの座標