-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
状態遷移図 #27
Merged
Merged
状態遷移図 #27
Changes from all commits
Commits
Show all changes
9 commits
Select commit
Hold shift + click to select a range
6946419
状態遷移図*2
azubiwa a3ffe54
先手と後手わけて石打つところ入れた
azubiwa 66d348c
引き分けの追加
azubiwa 12931a3
Update docs/01.Frontend/01.UserExperience/README.md
azubiwa f4fee6e
サブルーチン
azubiwa 178f8b7
space
azubiwa 2ccfc83
conflict
azubiwa 564f84c
File name
azubiwa b522ac6
補足事項
azubiwa File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,67 @@ | ||
# 01.Screen State Transition | ||
|
||
# ゲームプレイ画面 | ||
|
||
```mermaid | ||
graph TD; | ||
subgraph 手番のルーチン | ||
TEBAN["手番の処理"] | ||
AITEBAN["相手番(ゲーム続行)"] | ||
MY_WIN["勝利"] | ||
MY_LOSE["敗北"] | ||
MY_DRAW["引き分け"] | ||
TEBAN --> stone["石を打つ"] | ||
stone --> stone_cnt{"石の個数の確認"} | ||
stone_cnt --> |Ok| obs{"観測を行う"} | ||
obs --> |Yes| check{"勝敗判定を行う"} | ||
check --> |Unresolved| obs_cnt{"観測回数の確認"} | ||
obs_cnt --> |Ok| AITEBAN | ||
obs --> |No| AITEBAN | ||
obs_cnt --> |両者ともに観測回数消費済み| MY_DRAW | ||
stone_cnt --> |盤面が埋まった| MY_DRAW | ||
check --> |自色が5連| MY_WIN | ||
check --> |自色が4連以下 ∧ 相手色が5連| MY_LOSE | ||
end | ||
subgraph ゲームの流れ | ||
A("訪れる") --> B["ゲーム開始ボタンを押す"] | ||
B --> C["先手と後手を決める"] | ||
C --> SENTE | ||
SENTE["先手番"] | ||
GOTE["後手番"] | ||
SENTE --> sente_process{"先手番の処理"} | ||
sente_process --> |ゲーム続行| GOTE | ||
GOTE --> gote_process{"後手番の処理"} | ||
gote_process --> |ゲーム続行| SENTE | ||
DRAW["引き分け"] | ||
FIN["結果の表示"] | ||
END("ゲーム終了") | ||
sente_process & gote_process --> |観測回数消費済み or 盤面が埋まった| DRAW | ||
gote_process & sente_process --> |勝敗確定| Win_or_Lose["勝敗決定"] | ||
DRAW & Win_or_Lose --> FIN | ||
FIN --> END | ||
end | ||
``` | ||
|
||
## ゲーム仕様についての補足 | ||
### 観測時の勝敗条件について | ||
このゲームでは1回の観測で、両者同時に勝利条件を満たすことがある。 | ||
その場合、この仕様では観測者が有利になるように、観測者勝利としている。 | ||
本家量子五目並べ(QuizKnock)でも、両者が同時に勝利条件を満たした時は観測者勝利となっている。 | ||
### 観測回数を消費した時 | ||
観測回数を消費したときは引き分け扱いにしている。 | ||
引き分けにならないようにする実装としては、両者が観測回数を全て消費した時に両者に観測を配布することが考えられる。 | ||
### 盤面が埋まった時 | ||
現状盤面サイズは決まっていないが、最終的に石を打ち尽くして盤面が埋まる可能性がある。 | ||
このとき、この仕様では引き分け扱いとしている。 | ||
本家五目並べ(連珠)でも引き分けとなっている。 | ||
将来的には観測が余っている場合の実装として | ||
・1度だけ観測を行い、決着がつかなかった場合は引き分けにする | ||
・残っている観測を次手番の人の分から消費する | ||
・残りの観測回数に関係なく次手番の人から交互に観測を行う | ||
・(元々先手が不利になると思うので)観測者を先手と考えて決着がつくまで観測を行う | ||
などが考えられる。可能性は低いが、複数回観測を行っても決着がつかなかった時の実装まで考える必要がある。 | ||
### ルールについて | ||
・先手後手の有利不利 | ||
本家五目並べでは、先手(黒)に禁じ手が存在する。量子五目並べでも最初に使用できる石を制限するなどの実装が考えられる。 | ||
### その他 | ||
ユーザー毎に勝敗数などを記録するのであれば、引き分けの有無で記録の基準が変わるので、勝敗に関して実装を変える際は慎重な検討が必要になる。 |
This file was deleted.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
これ、めちゃめちゃいい補足だと思います!!!!!
裏どりはめんどくさいけど、とっても大事!!!!