Wincenty
PCGHX-HWbot-Member (m/w)
Hallo,
ich muss das TicTacToe Spiel was wir vom Prof bekamen, mit einer Schleife ausstatten.
Ich habe bereits das Soweit gemacht das das Programm mit Abbrechen sich schließt und mit OK sollte das Programm eine neue Partie machen, nur weiß ich nicht so recht wo ich die Schleife einbauen muss
Falls sowas bei euch kommen sollte:
Die Dialoge sind aus Luxemburgisch, wenn es euch Probleme machen sollte kann ich es gern übersetzen.
ich muss das TicTacToe Spiel was wir vom Prof bekamen, mit einer Schleife ausstatten.
Ich habe bereits das Soweit gemacht das das Programm mit Abbrechen sich schließt und mit OK sollte das Programm eine neue Partie machen, nur weiß ich nicht so recht wo ich die Schleife einbauen muss
Code:
import java.awt.event.*;
import javax.swing.*;
import java.awt.Color;
import java.awt.Font;
import java.awt.GridLayout;
public class TicTacToe implements ActionListener {
final int SEITE=3;
private JFrame fenster = new JFrame("Tic-Tac-Toe");
JButton[] button = new JButton[SEITE*SEITE];
private String buchstabe = "";
private int zaehler = 0;
private boolean gewonn = false;
JButton j = new JButton("Nei Speel");
JButton n = new JButton("Offhaalen");
public TicTacToe(){
//Fenster kreeieren
fenster.setSize(350,350);
fenster.setLayout(new GridLayout(SEITE,SEITE));
fenster.setVisible(true);
fenster.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Font font = new Font("Courier New",Font.BOLD,80);
for(int i=0;i<SEITE*SEITE;i++){
button[i] = new JButton("");
fenster.add(button[i]);
if (i%2==0) {button[i].setBackground(Color.green);}
else {button[i].setBackground(Color.red);}
button[i].setFont(font);
button[i].addActionListener(this);
}
}
public void actionPerformed(ActionEvent eingabe) {
zaehler++;
if(zaehler %2==1) {buchstabe = "X";}
else {buchstabe = "O";}
JButton gewielteButton = (JButton)eingabe.getSource();
gewielteButton.setText(buchstabe);
gewielteButton.setEnabled(false);
for(int i=0;i<SEITE;i++) {
if(button[SEITE*i].getText() == buchstabe && button[SEITE*i+1].getText() == buchstabe && button[SEITE*i+2].getText() == buchstabe) gewonn = true;
if(button[i].getText() == buchstabe && button[i+SEITE].getText() == buchstabe && button[i+SEITE+SEITE].getText() == buchstabe) gewonn = true;
}
if(button[0].getText() == buchstabe && button[4].getText() == buchstabe && button[8].getText() == buchstabe) gewonn = true;
if(button[6].getText() == buchstabe && button[4].getText() == buchstabe && button[2].getText() == buchstabe) gewonn = true;
if(gewonn == true){
int endeingabe = JOptionPane.showConfirmDialog(null,"Gewonn!" + "\nWolld er noch eng keier spellen?","Nei Spiel", JOptionPane.OK_CANCEL_OPTION);
if (endeingabe != 0) {System.exit(0);}
} else if(zaehler == SEITE*SEITE && gewonn == false){
int endeingabe = JOptionPane.showConfirmDialog(null,"Onentscheed!" + "\nWolld er noch eng keier spellen?","Nei Spiel", JOptionPane.OK_CANCEL_OPTION);
if (endeingabe != 0) {System.exit(0);}
}
}
public static void main(String[] args){
new TicTacToe();
}
}
Falls sowas bei euch kommen sollte:

Die Dialoge sind aus Luxemburgisch, wenn es euch Probleme machen sollte kann ich es gern übersetzen.
