42 lines
1.1 KiB
Java
42 lines
1.1 KiB
Java
package Uebung_04_Version_02;
|
|
|
|
import java.util.Scanner;
|
|
|
|
/**
|
|
* Represents the TIC TAC TOE game.
|
|
*/
|
|
public class Game {
|
|
private Board board;
|
|
private Player player1;
|
|
private Player player2;
|
|
|
|
/***
|
|
* Initializes the game with a human player and computer player.
|
|
*/
|
|
public Game() {
|
|
board = new Board();
|
|
Scanner scanner = new Scanner(System.in);
|
|
player1 = new HumanPlayer('O', scanner);
|
|
player2 = new ComputerPlayer('X');
|
|
}
|
|
|
|
/**
|
|
* Starts and controls the game.
|
|
*/
|
|
public void play() {
|
|
Player currentPlayer = player1;
|
|
while (!board.isFull() && !board.checkWin()) {
|
|
board.printBoard();
|
|
currentPlayer.makeMove(board);
|
|
if (board.checkWin()) {
|
|
board.printBoard();
|
|
System.out.println("Spieler " + currentPlayer.getMark() + " gewinnt!");
|
|
return;
|
|
}
|
|
currentPlayer = (currentPlayer == player1) ? player2 : player1;
|
|
}
|
|
board.printBoard();
|
|
System.out.println("Unentschieden!");
|
|
}
|
|
}
|