English (by Google Translate)
リバーシ(オセロ)のライブラリ。
C#製。.Net Core 3.1
Unityでも使用可能。
利用可能なクラス、関数は Documents をご覧ください。
Visual Studio 2019 Version 16.75
.Net Core 3.1
Unity 2019.4.10f1
Release ページからDLLとUnityPackageをダウンロード出来ます。
もしくはソースコードをご利用下さい。
UnityPackageを用意しています。ImportAssetしてご利用下さい。
サンプルシーンも含まれています。
DLLを参照に追加してご利用下さい。
.Net Core 3 を対象としています。
その他の環境の場合はソースコードをご利用下さい。
MIT
(個人利用、商用利用問わずご自由にお使い頂けますが、必ず著作権表示を行ってください)
リバーシのゲーム管理を行うメインのクラス。
Method | Description |
---|---|
Reversi() | コンストラクタ。指定のマス数でゲームを初期化する |
Flip() | 指定座標に石を置く |
Pass() | 現在の手番をパスする |
GetGameState() | 現在のゲームステートを取得する |
CheckEnd() | ゲーム終了かどうかを取得する |
GetCell() | 指定座標のマスを取得する |
CountCell() | 指定タイプのマス数を取得する |
CountFlip() | 指定タイプの石を置ける場所を取得する |
CountFlipCell | 指定座標に置いた場合にめくれる場所を取得する |
FindFlipCell | 指定座標に置いた場合にめくれる数を取得する |
CanFlip | 指定座標に指定タイプの石が置けるかどうかを取得する |
CanPlay() | 指定タイプの石を置く場所があるかどうかを取得する |
Reset() | ゲーム情報をリセットする |
AIを作成する場合のベースクラス。継承して利用する。
Method | Description |
---|---|
StartGame() | ゲームの初期データを渡す |
abstract Calc() | 継承先でAIが置く場所を返すように実装して下さい |
ReversiAIBaseを使ったシンプルなAIのサンプル。
Method | Description |
---|---|
override Calc() | 一番多くめくれる場所を置く場所とする |
ゲームステート
Type | Description |
---|---|
BrackTurn | 黒の手番 |
WhiteTurn | 白の手番 |
BrackWin | 黒の勝ちでゲーム終了 |
WhiteWin | 白の勝ちでゲーム終了 |
Draw | 引き分けでゲーム終了 |
マスのタイプ
Type | Description |
---|---|
None | 何も置かれていない |
White | 白の石が置かれている |
Black | 黒の石が置かれている |