Hi,
arbeite zurzeit an einem 4 Gewinnt Spiel in Java, allerdings ist jetzt ein Problem aufgetreten bei dem irgendwie der Code nach einem bestimmten Abschnitt ignoriert wird.
Hier mal der Code:
Hab die Stelle markiert ab der der Code ignoriert wird. Setz ich den kleinen Teil
allerdings VOR das "Runterrutschen", dann klappt es. Leider gibts dann einen Logikfehler, deswegen muss der Code eben UNTER das "Runterrutschen".
Der kleine Teil ist übrigens nicht das einzige was ignoriert wird, sondern alles was danach kommt und noch zur "public void actionPerformed"-Klasse gehört.
arbeite zurzeit an einem 4 Gewinnt Spiel in Java, allerdings ist jetzt ein Problem aufgetreten bei dem irgendwie der Code nach einem bestimmten Abschnitt ignoriert wird.
Hier mal der Code:
Java:
public void actionPerformed(ActionEvent eingabe) {
zaehler++;
JButton gewählterButton = (JButton)eingabe.getSource();
if(zaehler %2== 1)
{gewählterButton.setBackground(Color.RED);}
else
{gewählterButton.setBackground(Color.YELLOW);}
//Runterrutschen
for(int i=0;i<(BREITE*HOEHE)-1;i++)
{
//RED = 1
if (button[i].getBackground()==Color.red && button[i+BREITE].getBackground()==Color.blue)
{
button[i].setBackground(Color.blue);
button[i+BREITE].setBackground(Color.red);
button[i].setEnabled(true);
CheckArray[i] = 0;
button[i+BREITE].setEnabled(false);
CheckArray[i+BREITE] = 1;
}
else if (button[i].getBackground()==Color.red)
{CheckArray[i] = 1;}
//YELLOW = 2
if (button[i].getBackground()==Color.yellow && button[i+BREITE].getBackground()==Color.blue)
{
button[i].setBackground(Color.blue);
button[i+BREITE].setBackground(Color.yellow);
button[i].setEnabled(true);
CheckArray[i] = 0;
button[i+BREITE].setEnabled(false);
CheckArray[i+BREITE] = 2;
}
else if (button[i].getBackground()==Color.yellow)
{CheckArray[i] = 2;}
}
//Ab hier wird ignoriert
for (int i=1;i<(HOEHE*BREITE);i++)
{
System.out.print(CheckArray[i] + ", ");
}
Hab die Stelle markiert ab der der Code ignoriert wird. Setz ich den kleinen Teil
Java:
for (int i=1;i<(HOEHE*BREITE);i++)
{
System.out.print(CheckArray[i] + ", ");
}
Der kleine Teil ist übrigens nicht das einzige was ignoriert wird, sondern alles was danach kommt und noch zur "public void actionPerformed"-Klasse gehört.
Zuletzt bearbeitet: