ひろひろの生活日記(LIFE Of HIROHIRO)

パソコン講習とソフト開発をしています。自作小説も掲載しています。ネット情報発信基地(上野博隆)Hirotaka Ueno

「フリー配置」詳細2

2021年11月12日 10時20分19秒 | ゲーム開発(Game development)

(1)駒のフリー配置2

(1:移動スタート処理
1)盤上か駒台かを判断する。
・駒が存在しない
・プレイヤー(駒の先手後手を判断)
・プレイヤーとターンの判断はしない。
・スターの駒の位置をセーブする。(startx,starty)
・駒のある場所を白にする。(drawpiece(startx,starty,id,player,2);)
 駒の位置、駒の種類、駒の向、色。

1-1)駒台の駒の場合。
・if(isinside(startx,starty,ofsx,ofsy,9,9)==false)
・位置盤上フラグをOFF:0
1-1-1)移動できる位置を示す。
1-1-1-1)歩の場合
・2歩のチェック(位置駒が歩の場合)
※位置駒:移動前の位置の駒
1-1-1-2)以外
・空いている位置には移動できる。
※margin = [ 0,0,0,0,0,2,1,1 ];
 移動できない位置を表す。
※成るなら制限なし(強制成るフラグON)

1-2)盤上の場合
・位置盤上フラグをON:1
・駒を打つ場合と同じ。
※位置盤上フラッグの初期値は-1。


(2:移動エンド処理
2-1)エンド位置の判定(エンド位置フラグ)
・1:盤上
・2:駒台(空いてる位置かチェック)
・3:相手の駒台(空いてる位置かチェック)
2-2)強制成るフラッグ
・強制的に成らす。
・以外、成らない。


(3:成る処理
・同じ位置
・右クリック
・成らす。
                if(confirm("成りますか?")){
                   //なる前にスタートをセーブ
                   nariflag = 1;
                   board[starty][startx].id |= 8;                //成る
                }

 

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする