象棋プログラムは難しい・・・。

f:id:mz1500:20181221211523p:plain

f:id:mz1500:20181221211538p:plain

①一手だけ駒を進める。

②利きを生成する。

③一手戻す。

④それに応じた利きを生成して元に戻す。

で、できるかと思っていたがどうにもならないバグが発生。

これを防ぐためには砲の駒をA,Bと別の駒と認識させ、虚の利き(砲の駒が相手の駒を取る以外の移動可能なマス)を示す配列を二つ用意しなければいけない。

 

Webアプリにある象棋ソフトはJavaScriptを使っているそうだが、上記の問題をどうクリアしているのか?

 

疲れたので、また明日。

 

追記

竹俣紅、将棋連盟を退会したそうだ。将棋舐めてないか?