Chess/src/Chess.java

44 lines
1.4 KiB
Java
Raw Normal View History

2023-03-07 14:59:15 +01:00
import javax.swing.JFrame;
2023-03-09 09:54:01 +01:00
import java.awt.*;
2023-03-07 14:59:15 +01:00
2023-03-20 17:58:27 +01:00
/**
* Main program layout
*/
2023-03-21 13:59:45 +01:00
public class Chess {
2023-03-07 14:59:15 +01:00
public static void main(String[] args) {
2023-03-09 09:54:01 +01:00
2023-03-07 14:59:15 +01:00
JFrame okno = new JFrame();
okno.setTitle("Filip Znachor, A22B0042P");
2023-03-09 09:54:01 +01:00
okno.setSize(800, 600);
okno.setMinimumSize(new Dimension(800, 600));
2023-03-07 14:59:15 +01:00
2023-03-13 18:08:40 +01:00
Chessboard chessboard = new Chessboard();
PieceColor[] colors = new PieceColor[]{PieceColor.BLACK, PieceColor.WHITE};
for (int i = 0; i < colors.length; i++) {
int first = i == 0 ? 7 : 0;
int second = i == 0 ? 6 : 1;
new Rook(chessboard, 0, first, colors[i]);
new Knight(chessboard, 1, first, colors[i]);
new Rook(chessboard, 7, first, colors[i]);
new Knight(chessboard, 6, first, colors[i]);
new Queen(chessboard, 4, first, colors[i]);
new Bishop(chessboard, 5, first, colors[i]);
new Bishop(chessboard, 2, first, colors[i]);
new King(chessboard, 3, first, colors[i]);
for (int j = 0; j < 8; j++) {
new Pawn(chessboard, j, second, colors[i]);
}
}
okno.add(chessboard); //prida komponentu
2023-03-07 14:59:15 +01:00
okno.pack(); //udela resize okna dle komponent
okno.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
okno.setLocationRelativeTo(null); //vycentrovat na obrazovce
okno.setVisible(true);
2023-03-09 09:54:01 +01:00
2023-03-07 14:59:15 +01:00
}
}