Web開発など

Java, JS, CSS, HTML, Unity, C# のことなどを書いてます。フリーソフトや二次創作の公開もしています。

Unity UI:三目並べの開発

Unity UI を使って、2D の三目並べ(Tic tac toe)を制作してみました。

f:id:mamorums:20200314173140p:plain

ソース

github.com

仕様

  • 人 vs CPU
  • CPU は空マスをランダム選択
  • 先手X、後手O の選択可能

勝敗判定

XO を3つ揃えたほうが勝ちです。

実装としては、下のようにマスのインデックスを振って、

f:id:mamorums:20200314173226p:plain

横3列、縦3列、斜め2列のいずれかが揃っているかチェックする感じです。

  • 横:(0, 1, 2), (3, 4, 5), (6, 7, 8)
  • 縦:(0, 3, 6), (1, 4, 7), (2, 5, 8)
  • 斜:(0, 4, 8), (2, 4, 6)

引き分け

3つ揃わずに9マス全て埋まったら引き分けです。

先手後手が互いに最善手を取ると、引き分けになるみたいでした。

課題・改善点

  • CPUがランダム選択なので弱い。
  • 人 vs 人を実装してない。
  • 等々。

参考文献

learn.unity.com

ja.wikipedia.org