import javafx.fxml.FXML; import javafx.scene.control.Button; import javafx.event.ActionEvent; import javafx.scene.layout.GridPane; import logic.*; public class SceneController { private Board board; private Actor player; private Actor enemy; boolean playerTurn = true; public void initData(Board board, Actor player, Actor enemy) { this.board = board; this.player = player; this.enemy = enemy; } public void playerTurn(){ this.playerTurn = true; } public void aiTurn(){ this.playerTurn = false; } @FXML private GridPane gridPane; @FXML private Button button1, button2, button3, button4, button5, button6, button7, button8, button9; // Diese Funktion wird beim Button-Click aufgerufen @FXML private void handleButtonClick(ActionEvent event) { Button pressedButton = (Button) event.getSource(); // Das gedrückte Button-Objekt wird extrahiert String buttonText = pressedButton.getText(); // Der Text des gedrückten Buttons wird extrahiert // Zugriff auf die Koordinaten des Buttons: int row = GridPane.getRowIndex(pressedButton); // Zeilen-Koordinate int col = GridPane.getColumnIndex(pressedButton); // Spalten-Koordinate if(buttonText.equals(" ") && playerTurn) { // Setze X pressedButton.setText("X"); player.makeMove(board, col, row); } } }