Figuren sind auf dem Schachbrett zu sehen

devGameUi
Marius Gündel 2025-06-11 13:18:32 +02:00
parent 5bc6d9c7d8
commit d470b84703
14 changed files with 42 additions and 3 deletions

View File

@ -1,6 +1,9 @@
package de.mannheim.th.chess.domain; package de.mannheim.th.chess.domain;
import com.github.bhlangonijr.chesslib.Board; import com.github.bhlangonijr.chesslib.Board;
import com.github.bhlangonijr.chesslib.Square;
import java.util.ArrayList;
import de.mannheim.th.chess.utl.Clock; import de.mannheim.th.chess.utl.Clock;
@ -9,12 +12,24 @@ import de.mannheim.th.chess.utl.Clock;
*/ */
public class Game{ public class Game{
private Board bord = new Board(); private Board board;
private Clock clockPlayer1 = new Clock(); private Clock clock;
private Clock clockPlayer2 = new Clock(); private ArrayList<String> moves;
public Game() { public Game() {
board = new Board();
clock = new Clock();
} }
public void doMove(Square sq1, Square sq2) {
}
public String toFEN() {
return board.getFen();
}
} }

View File

@ -3,11 +3,15 @@ package de.mannheim.th.chess.ui;
import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.Logger;
import com.github.bhlangonijr.chesslib.Board;
import de.mannheim.th.chess.App; import de.mannheim.th.chess.App;
import de.mannheim.th.chess.domain.Game;
import java.awt.EventQueue; import java.awt.EventQueue;
import java.awt.Font; import java.awt.Font;
import javax.swing.ImageIcon;
import javax.swing.JButton; import javax.swing.JButton;
import javax.swing.JFrame; import javax.swing.JFrame;
import javax.swing.JPanel; import javax.swing.JPanel;
@ -25,6 +29,7 @@ public class SpielFrame extends JFrame {
private JPanel contentPane; private JPanel contentPane;
private ArrayList<JButton> buttons = new ArrayList<>(); private ArrayList<JButton> buttons = new ArrayList<>();
private JPanel panelLinks, panelRechts; private JPanel panelLinks, panelRechts;
private Game game;
/** /**
* Launch the application. * Launch the application.
@ -93,7 +98,26 @@ public class SpielFrame extends JFrame {
b.setBorderPainted(false); b.setBorderPainted(false);
panelLinks.add(b); panelLinks.add(b);
buttons.add(b);
} }
game = new Game();
ladeBrett();
} }
public void ladeBrett() {
System.out.println(game.toFEN());
char[] fen = game.toFEN().replaceAll("/", "").split(" ")[0].toCharArray();
int i = 0;
for (int j = 0; j < fen.length; j++) {
if (Character.isDigit(fen[j])) {
i += Character.getNumericValue(fen[j]);
continue;
}
buttons.get(i).setIcon(new ImageIcon("src/main/resources/" + (int) fen[j] + ".png"));
i++;
}
}
} }

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 797 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 725 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 933 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB