プログラミング講座(41) 駒の動き

どうぶつしょうぎの駒の動きを作ってみました。プログラムID FVD421-0 で「発行」しました。今回、駒を動かすのに使った操作は、
 oPiece = Shapes.AddImage(uPiece[iPiece])
 Shapes.HideShape(oPiece)
 Shapes.Move(oPiece, Board_iX0 + isX + (iFromX – 1) * Board_idX , Board_iY0 + isY + (iFromY – 1) * Board_idY)
 Shapes.ShowShape(oPiece)
 Shapes.Animate(oPiece, Human_iMX – 40, Human_iMY – 40, 50)
 Shapes.Remove(oPiece)
です。ShapesオブジェクトのAddImage操作で駒のイメージを登録し、MoveやAnimateで移動しています。Shapesオブジェクトなら他にも回転(Rotate)、拡大(Zoom)、不透明度の設定(SetOpacity)などができるので、もっと凝った動きもできそうです。
Doubutsushogi03
【図38 ぞうの駒を移動中】
プログラムは、まだ途中です。ざっと動かしてみて、以下のような状況です。
 (現象1) 一度持ち上げた駒を元に戻せない。
 (現象2) 持ち上げた駒が盤面に残っている。
 (現象3) 持ち駒を動かせない。
 (現象4) 棋譜の10手目以降の数字がはみ出す。
 (現象5) 勝敗の判定ができない。
 (現象6) 棋譜を保存できない。
 (現象7) 棋譜を再生できない。
さあ、次はどこから手をつけましょうか?
(つづく)

コメントを残す