morry2341

vierInEinerReihe

May 29th, 2023
2,374
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.73 KB | Source Code | 0 0
  1.  public void playGame(){
  2.         while(winningPlayer == 0){
  3.         placePiece();
  4.             decideWinner();
  5.         }
  6. }
  7.  
  8. private void decideWinner(){
  9.         boolean didIWin = true;
  10.         for(int i = 0; i < 6; i++) {
  11.             for (int j = 0; j < 7; j++) {
  12.                 String player = board[i][j]; //ist ok wenn alles auf 0 ist und ich so anfange??
  13.                 if (player == board[i + 1][j] &&
  14.                         board[i + 1][j] == board[i + 2][j] &&
  15.                         board[i + 2][j] == board[i + 1][j] &&
  16.                         board[i + 1][j] == player) {
  17.                     System.out.println("res: " + didIWin);
  18.                     System.out.println("horizontale");
  19.                     break;
  20.                 }
  21.             }
  22.             break;
  23.         }
  24.  
  25.         for(int i = 0; i < 3; i++) {
  26.             for (int j = 0; j < 4; j++) {
  27.                 String player = board[i][j];
  28.                 //upleft-rightdown-diagonal
  29.                 if (player == board[i + 3][j + 3] &&
  30.                         board[i + 3][j + 3] == board[i + 2][j + 2] &&
  31.                         board[i + 2][j + 2] == board[i + 1][j + 1] &&
  32.                         board[i + 1][j + 1] == player) {
  33.                     System.out.println("res: " + didIWin);
  34.                     System.out.println("lookdown");
  35.                     break;
  36.                 }
  37.             }
  38.             break;
  39.         }
  40.  
  41.         for(int i = 3; i < 6; i++) {
  42.             for (int j = 6; j <= 0; j--) {
  43.                 String player = board[i][j];
  44.                 //upleft-rightdown-diagonal
  45.                 if (player == board[i + 3][j - 3] &&
  46.                         board[i + 3][j - 3] == board[i + 2][j - 2] &&
  47.                         board[i + 2][j - 2] == board[i + 1][j - 1] &&
  48.                         board[i + 1][j - 1] == player) {
  49.                     System.out.println("res: " + didIWin);
  50.                     System.out.println("lookup");
  51.                     break;
  52.                 }
  53.  
  54.             }
  55.             break;
  56.         }        //horizontal
  57.  
  58.         for(int i = 0; i <= 6; i++){
  59.             for(int j = 0; i < 4; j++){
  60.                 String player = board[i][j];
  61.  
  62.                 //vertikal
  63.                  if(player == board[i][j+1]&&
  64.                         board[i][j+1] == board[i][j+2] &&
  65.                         board[i][j+2] == board[i][j+3] &&
  66.                         board[i][j+3] == player){
  67.                     System.out.println("res: " + didIWin);
  68.                     System.out.println("vertikale");
  69.                     break;
  70.                 }
  71.  
  72.                 break;
  73.             }
  74.             break;
  75.         }
  76.  
  77.  
  78.     }
  79.  
  80.  private void placePiece(){ // i will develop another TicTacToe with this logic
  81.  
  82.       switch(playerTurn){
  83.           case 1:
  84.             System.out.println("Player " + playerTurn + " please select which col to place your piece (1-7)");
  85.             String input = new java.util.Scanner(System.in).nextLine();
  86.             int colChoice = Integer.parseInt(input) - 1;
  87.               String pieceToPlace = "X";
  88.               board[getNextAvailableSlot(colChoice)][colChoice] = pieceToPlace;
  89.               displayBoard();
  90.               swapPlayerTurn();
  91.               break;
  92.           case 2:
  93.               System.out.println("Player " + playerTurn + " places the piece");
  94.               Random rdm = new Random();
  95.               colChoice = rdm.nextInt(6)+1;
  96.               pieceToPlace = "O";
  97.               board[getNextAvailableSlot(colChoice)][colChoice] = pieceToPlace;
  98.               displayBoard();
  99.               swapPlayerTurn();
  100.               break;
  101.           default:
  102.               System.out.println("no valid turn");
  103.               break;
  104.              
  105.       }
  106.  
  107.  
  108.     }
Advertisement
Add Comment
Please, Sign In to add comment