diff --git a/README.md b/README.md new file mode 100644 index 0000000..7f9b769 --- /dev/null +++ b/README.md @@ -0,0 +1,38 @@ +# TicTacToe +拡張○×ゲーム プラグイン版 + +## TTTConsole プロジェクト +- ゲーム進行フレームワーク +- C#実装 +- プラットフォームを 'x64' とすること.'Any' はNG +### ConsolePlay.cs +- コンソールで入出力するUI実装 +### Program.cs +- Main関数(プログラム開始点) +### Plugin.cs +- 思考プラグインDLLを扱うクラス +- プラグイン名,人間操作有無を読み込む +- 思考関数ポインタを取得する +### TicTacToe.cs +- 拡張○×ゲームの進行管理 + +## プラグインプロジェクト TPIHUman, TPIRandom +- 思考プラグイン +- C++実装 +- プラットフォームを 'x64' とすること. +- ビルド後イベントに,コピーコマンドを記述 +### 共通ヘッダーファイル TTTPlugin.h +- GetName, IsHuman, MyTurn 関数の定義 +### 実装ファイル Human.cpp, Random.cpp +- 関数の実装 +- void GetName(char* buf, size_t bufsize) + - 引数の文字列バッファ buf にプラグイン名を代入する +- bool IsHuman() + - プラグインが人間操作かどうかを返す +- int MyTurn(int* board) + - 思考関数 + - 引数 board : 盤の状態(値 1~3は自分駒,-1~-3は相手駒,次置くと1が消える) + - 戻り値 : 置く場所 (0-8) + +### 開発環境 +- Visual C# 2019