Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/komoto388/reversi
「Reversi : リバーシ」 はシンプルなリバーシのボードゲームです。
https://github.com/komoto388/reversi
cui gui java javafx reversi reversi-game
Last synced: about 1 month ago
JSON representation
「Reversi : リバーシ」 はシンプルなリバーシのボードゲームです。
- Host: GitHub
- URL: https://github.com/komoto388/reversi
- Owner: komoto388
- License: mit
- Created: 2023-10-28T00:50:17.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2023-11-11T13:28:07.000Z (about 1 year ago)
- Last Synced: 2023-11-12T07:27:49.305Z (about 1 year ago)
- Topics: cui, gui, java, javafx, reversi, reversi-game
- Language: Java
- Homepage:
- Size: 319 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ![icon](https://github.com/komoto388/reversi/assets/146818126/5fd5aafb-2417-4c24-9b9e-0b33c548781b) Reversi : リバーシ
**「Reversi : リバーシ」** はシンプルなリバーシです。
# 動作イメージ
# 特徴
* CUI と GUI の両方で動作します
* 人間 vs 人間、人間 vs COM、COM vs COM の対戦が可能です
* 棋譜を表示できます
* 対戦中の石の数の推移を、結果画面でグラフィカルに確認できます# 要件
「Windows 11 22H2」での動作することを確認しています。(他のOSでの動作は未検証です)
本プログラムのプログラミング言語は Java を使用しています。
また、GUIフレームワークは JavaFX を使用しています。* JDK 21
* Java FX 21# 全体の状態遷移図
以下のように状態遷移します。
```mermaid
stateDiagram-v2
[*] --> PlayerSelect
PlayerSelect --> Reversi: Enter player setting
State Reversi {
state if_skip <>
state if_manual <>
state if_judege <>
[*] --> PLAY
PLAY --> if_skip
if_skip --> SKIP:Skip
SKIP --> JUDGE
if_skip --> if_manual:No Skip
if_manual --> PLAY_MANUAL:Manual
if_manual --> PLAY_COM:COM
PLAY_MANUAL --> JUDGE:put
PLAY_MANUAL --> SKIP:skip
PLAY_COM --> JUDGE:put
PLAY_COM --> SKIP:skip
JUDGE --> if_judege
if_judege --> PLAY:Not Finish
if_judege --> FINISH:Finish
FINISH --> [*]
}
Reversi --> Result
state Result {
DetailResult
Record
Graph
}
Result --> [*]
```スキップ処理は原則、システム側で自動的に石を置く場所がないか探索し、場所がない場合のみ SKIP 状態になります。
ただし、プレイヤー側が正しく算出できなかった場合のために、プレイヤーから SKIP に遷移することもあります。# 開発者情報
* komoto
# License
* [MIT license](https://en.wikipedia.org/wiki/MIT_License)