[Java] 将棋アルゴリズムを作る。~ゲームが終了した場合~

Java

今回は王手のプログラムができたので、投稿しようと思います。

まずは実行結果から見てください。

実行結果

左うえに先手後手の表示がありますが、まだ実装途中ですので

気にしないでください。

次回は先手後手のプログラムを投稿できればいいなと思います。

//ゲームが終了した時のメッセージのプログラム

void EndMessageDialog(String str){
    JOptionPane.showMessageDialog(this,str,"ゲーム終了",JOptionPane.INFORMATION_MESSAGE);
    System.exit(0);
}
//とったコマが玉だった場合

if(board.koma[gp2.y][gp2.x].getObverse()==Koma.gyoku){
    board.setKoma(gp2.x,gp2.y,board.koma[gp.y][gp.x].getObverse());
    board.setKoma(gp.x,gp.y,Koma.none);
    board.setTeban(gp2.x,gp2.y,Teban.you);
    board.setTeban(gp.x,gp.y,Teban.none);
    repaint();
    EndMessageDialog("あなたの勝ちです");
}

//とったコマが王だった場合

else if(board.koma[gp2.y][gp2.x].getObverse()==Koma.king){
    board.setKoma(gp2.x,gp2.y,board.koma[gp.y][gp.x].getObverse());
    board.setKoma(gp.x,gp.y,Koma.none);
    board.setTeban(gp2.x,gp2.y,Teban.enemy);
    board.setTeban(gp.x,gp.y,Teban.none);
    repaint();
    EndMessageDialog("対戦相手の勝ちです");
}
    

コメント

タイトルとURLをコピーしました