This is a tic tac toe human VS human game
i want to convert it to Human VS Computer game
the whole code won't fit in here so i included the player to player part
Java programming language
import javafx.event.ActionEvent; |
import javafx.event.EventHandler; |
import javafx.geometry.Insets; |
import javafx.scene.Scene; |
import javafx.scene.control.Button; |
import javafx.scene.layout.GridPane; |
import javafx.stage.Stage; |
private boolean alternateTurn = false; |
private Button[] buttons = new Button[9]; |
public GameBoard(Stage stage) { |
createOrganizeAndAssignActionToButtons(buttons); |
GridPane gridPane = new GridPane(); |
gridPane.setPadding(new Insets(20)); |
for (int i = 0; i < 3; i++) { |
for (int j = 0; j < 3; j++) { |
gridPane.add(buttons[counter], i, j); |
scene = new Scene(gridPane, 230, 230); |
stage.setResizable(false); |
private void createOrganizeAndAssignActionToButtons(Button[] buttons) { |
for (int i = 0; i < 9; i++) { |
Button button = new Button(); |
button.setPrefHeight(80); |
public Button[] getButtons() { |
private void changeTurn(Button button) { |
button.setOnAction(new EventHandler() { |
public void handle(ActionEvent arg0) { |
String winnerString = ""; |
if (button.getText().isEmpty()) { |
winnerString = button.getText(); |
if(buttons[0].getText().equals(winnerString) && buttons[1].getText().equals(winnerString) && buttons[2].getText().equals(winnerString) || |
buttons[3].getText().equals(winnerString) && buttons[4].getText().equals(winnerString) && buttons[5].getText().equals(winnerString) || |
buttons[6].getText().equals(winnerString) && buttons[7].getText().equals(winnerString) && buttons[8].getText().equals(winnerString) || |
buttons[0].getText().equals(winnerString) && buttons[3].getText().equals(winnerString) && buttons[6].getText().equals(winnerString) || |
buttons[1].getText().equals(winnerString) && buttons[4].getText().equals(winnerString) && buttons[7].getText().equals(winnerString) || |
buttons[2].getText().equals(winnerString) && buttons[5].getText().equals(winnerString) && buttons[8].getText().equals(winnerString) || |
buttons[0].getText().equals(winnerString) && buttons[4].getText().equals(winnerString) && buttons[8].getText().equals(winnerString) || |
buttons[2].getText().equals(winnerString) && buttons[4].getText().equals(winnerString) && buttons[6].getText().equals(winnerString)) { |
PopUp popup = new PopUp(stage); |
popup.setMessage(winnerString + " wins"); |
} else if (counter >= 9){ |
PopUp popup = new PopUp(stage); |
popup.setMessage("Draw... "); |
}
}