ソース
https://github.com/inari2019/osero
正直かなり醜いコードだと思ってます。
実際に作ったもの
http://pocketmikan.ml:3000/
※予期なくリンクが変わったり、封鎖している可能性があります。
環境
バックエンド:Node.js(Express.js)
ソケット通信:socket.io
フロントエンド:javascript
描画:HTML5 Canvas
構成
コードの解説
大体のことはgithubのコードに書いてるので割愛
実行の流れとしては
プレイヤーから駒を置く場所を受け取る(index,js)
↓
駒を置けるか確認したのち駒を置く(modules/gameclass.jsのput関数)
↓
置いた後の盤面データなどをプレイヤーに送信(index.js)
リバーシのアルゴリズム
https://techacademy.jp/magazine/22767
まんまこれですすみませんでした
終わりに
自分でもわかるぐらいひどいコードです。改善の余地しかありませんが、テストがあるので改善出来てません。