できることから

いつまでたっても作り出せないなんて事態になるのがいやなので、慣れ親しんだExcel VBAで製作開始。聞くところによるとVisual Basicと互換性があるっていうじゃないですか。「Visual Basic for Applications」の略なんだし当然か。究極的な目標はW-ZERO3で動くゲームを作ることなので、いずれはちゃんとした言語を選ばなくてはならないけれどどういう風に作ればいいのか感覚をつかんでおきたいのでとりあえず。
 
SHOGIファイターTAKUMI途中経過
というわけで作り始めた。上のリンクをクリックすると画像が見れます。どうやったら画像として保存できるんだろう。なんとかできました。
なにはともあれ最初の目標は"二人用将棋"を作ること。COMの思考まで考えていたら先に進まない。何はともあれ将棋ができるプラットフォームがなきゃね。今日の作業内容は以下の通り。
 

  1. セルに11×11のマス目(将棋は9×9だけど端っこに余白があった方が良いので)を作り、それを盤にする。
  2. そこに文字を書いて、それが駒。歩はfu、飛車はhiとか。
  3. コントローラーで動かしたい駒を選び、OKボタンを押して決定する。選択中のマスは青く表示される。
  4. 駒の種類を読み取ってその駒が動ける範囲を全部赤く表示→味方の駒があるところは白く塗りなおし、敵の駒があるところは黄色に塗る。
  5. 黄色か赤のマスを選んでもう一度OKボタンを押すことで駒を移動させることができる。
  6. 移動はコピペ。移動後に元のセルの内容を消して、盤面を白で塗りなおす。

全部フォームで作るべきなんだろうけど面倒くさいのでパスw 駒をドラッグ&ドロップすることができないので、ユーザーフォームでコントローラーを作り、上下の矢印をクリックして動かすようにした。
後手の駒は太字(bold)で表示して区別した。
If Cells(Rowpos,Colpos).Font = Bold then Exit Do
みたいな感じ。また、マス目に色を塗ることで駒の移動範囲や、相手の駒を取ったときの判断を簡単に出来たと思う。これはCOMが形勢判断をするときに使えないかなと考えている。
 
明日は後手番の動きと、取った駒を打ち込むところを作ろうと思っている。一日でわりと形になったので、結構速く作れんじゃないかなんて妄想してみたり。あの最強将棋ソフトbonanzaBonanza - The Computer Shogi Program)だって一年ぐらいで作られたんだし、なんてねw