オーラス麻雀ゲーム開発日記構想から現在までの開発記録を、公開順にまとめています。

開発日記一覧
オーラスの条件戦だけを繰り返し遊べる麻雀ゲームの開発記録です。TypeScript・Reactを使い、点数管理や順位計算から少しずつ制作しています。
前回までの進捗
前回は、手牌から牌を選んで捨て、河へ表示できるようにした。
今回は、自分以外のプレイヤーをCPUとして動かし、自分の手番まで自動で対局を進められるようにする。
CPUもツモして打牌する
これまでは、自分が牌を捨てると次の席へ手番が移るところまでだった。
ただ、その先を人間が操作するわけにはいかないので、CPUの手番では自動でツモと打牌を行うようにした。
流れとしては、
CPUの手番
↓
牌山から1枚ツモる
↓
ツモ牌をそのまま捨てる
↓
次の席へ進む
というシンプルなもの。
まだCPUが手牌を考えて切るわけではなく、まずは対局を進行させることを優先している。
自分の手番まで自動で進める
CPUを1人だけ動かして終わりではなく、自分の席になるまで連続して処理するようにした。
例えば自分が南家なら、
北家
↓
東家
↓
南家
と進み、南家がツモした状態で止まる。
そこからは自分で捨てる牌を選べる。
自分が親ならそのまま操作する
南4局では北家が親なので、自分が北家なら最初から自分の手番になる。
この場合はCPU処理を挟まず、そのまま第一ツモから打牌できるようにした。
逆に、自分の席を変えた場合は、その席までCPUの手番を進めてから操作を始める。
自分が打った後もCPUが動く
自分が1枚捨てると、そこからまたCPUの手番を自動で進める。
そのため、
自分が打牌
↓
CPUがツモ・打牌
↓
CPUがツモ・打牌
↓
CPUがツモ・打牌
↓
自分がツモ
という流れを繰り返せるようになった。
これで、少なくともツモと打牌だけなら1局をかなり先まで進められる。
今回できたこと
今回の進捗は以下のとおり。
- CPUが牌山からツモできるようにした
- CPUが自動で打牌するようにした
- CPUの河へ捨て牌を追加するようにした
- 自分の手番まで自動で進めるようにした
- 自分の席に応じて開始位置を調整した
- 自分の打牌後もCPU処理を続けるようにした
まだCPUの打牌は単純だが、対局を止めずに進めるための基本的な流れができた。


次回は、牌山がなくなったときに局を終了し、流局として扱えるようにする。
難易度もあり、ロジックというかライブラリの使い方という部分もあり、
「記事でこういう風に実装してます」という書き方ができなくて、記事がすごく淡泊に感じる…。
牛一。
コメント