Hallo,
Ich habe ein Problem: Ich möchte meine Arrays im Class-Teil deklarieren, weil, wenn ich sie im public-Teil deklarieren, kann ich im Action-Listener-Teil nicht darauf zugreifen. Ich hoffe, ihr versteht mein Problem, wenn ihr den Code mit dem dazugehörigen Fehler seht.
Viele Grüße
Tandrael
Ich habe ein Problem: Ich möchte meine Arrays im Class-Teil deklarieren, weil, wenn ich sie im public-Teil deklarieren, kann ich im Action-Listener-Teil nicht darauf zugreifen. Ich hoffe, ihr versteht mein Problem, wenn ihr den Code mit dem dazugehörigen Fehler seht.
Viele Grüße
Tandrael
Java:
import java.awt.*;
import java.awt.event.*;
import java.math.*;
import java.io.*;
//Import der Pakete
class WaffenundWerkzeuge11 extends Frame implements ActionListener
{
int s1Waffen = 20;
int s1Werkzeuge = 20;
int s1Bevoelkerung = 30;
int s1Waffenplus = 5;
int s1Werkzeugeplus = 5;
int s1Bevoelkerungsplus = 5;
int s1Mauer = 30;
//Spieler1
int s2Waffen = 20;
int s2Werkzeuge = 20;
int s2Bevoelkerung = 30;
int s2Waffenplus = 5;
int s2Werkzeugeplus = 5;
int s2Bevoelkerungsplus = 5;
int s2Mauer = 30;
//Spieler2
Button k1play = new Button ("Spielen");
Button k2play = new Button ("Spielen");
Button k3play = new Button ("Spielen");
Button k4play = new Button ("Spielen");
Button k5play = new Button ("Spielen");
Button endturn = new Button ("Zug beenden");
//Buttons
Label Gewinner = new Label("");
Label Spieler = new Label("Spieler 1");
Label s1MauerLabel = new Label(String.valueOf(s1Mauer));
Label s1WaffenLabel = new Label(String.valueOf(s1Waffen));
Label s1WerkzeugeLabel = new Label(String.valueOf(s1Werkzeuge));
Label s1BevoelkerungLabel = new Label(String.valueOf(s1Bevoelkerung));
Label s1WaffenplusLabel = new Label(String.valueOf(s1Waffenplus));
Label s1WerkzeugeplusLabel = new Label(String.valueOf(s1Werkzeugeplus));
Label s2MauerLabel = new Label(String.valueOf(s2Mauer));
Label s2WaffenLabel = new Label(String.valueOf(s2Waffen));
Label s2WerkzeugeLabel = new Label(String.valueOf(s2Werkzeuge));
Label s2BevoelkerungLabel = new Label(String.valueOf(s2Bevoelkerung));
Label s2WaffenplusLabel = new Label(String.valueOf(s2Waffenplus));
Label s2WerkzeugeplusLabel = new Label(String.valueOf(s2Werkzeugeplus));
//Labels
int arrayposition = 0;
int Laufvariable = 1;
//Laufvariable
double Zufallszahl;
//Zufallszahl zur Kartenbestimmung
//Deklaration
public WaffenundWerkzeuge11()
{
addWindowListener(new WindowAdapter ()
{
public void windowClosing (final WindowEvent e)
{
System.exit(0);
}
}
);
//WindowListener
int Angriff[] = new int [15];
Angriff[0] = 1;
Angriff[1] = 10;
Angriff[2] = 5;
Angriff[3] = 20;
Angriff[4] = 10;
int Verteidigung[] = new int [15];
Verteidigung[5] = 1;
Verteidigung[6] = 15;
Verteidigung[7] = 7;
Verteidigung[8] = 4;
Verteidigung[9] = 20;
int Bevoelkerung[] = new int [15];
Bevoelkerung[0] = 1;
Bevoelkerung[2] = 10;
Bevoelkerung[3] = 10;
Bevoelkerung[4] = 5;
Bevoelkerung[5] = 1;
Bevoelkerung[11] = 10;
Bevoelkerung[12] = 1;
Bevoelkerung[13] = 1;
int Waffen[] = new int [15];
Waffen[0] = 1;
Waffen[1] = 5;
Waffen[3] = 10;
Waffen[4] = 5;
Waffen[9] = 5;
Waffen[14] = 10;
int Werkzeuge[] = new int [15];
Werkzeuge[1] = 5;
Werkzeuge[5] = 1;
Werkzeuge[6] = 15;
Werkzeuge[7] = 7;
Werkzeuge[8] = 4;
Werkzeuge[9] = 10;
Werkzeuge[0] = 10;
Werkzeuge[0] = 5;
Werkzeuge[0] = 10;
Werkzeuge[0] = 10;
int Waffenplus[] = new int [15];
Waffenplus[11] = 1;
Waffenplus[12] = 2;
int Werkzeugeplus[] = new int [15];
Werkzeugeplus[11] = 1;
Werkzeugeplus[13] = 2;
int Bevoelkerungplus[] = new int [15];
Bevoelkerungplus[10] = 20;
Bevoelkerungplus[14] = 20;
setLayout(null);
//Layout
add(s1MauerLabel);
s1MauerLabel.setBounds(200,175,20,20);
add(s1WaffenLabel);
s1WaffenLabel.setBounds(20,50,20,20);
add(s1WerkzeugeLabel);
s1WerkzeugeLabel.setBounds(20,100,20,20);
add(s1BevoelkerungLabel);
s1BevoelkerungLabel.setBounds(20,150,20,20);
add(s1WaffenplusLabel);
s1WaffenplusLabel.setBounds(40,50,20,20);
add(s1WerkzeugeplusLabel);
s1WerkzeugeplusLabel.setBounds(40,100,20,20);
add(s2MauerLabel);
s2MauerLabel.setBounds(580,175,20,20);
add(s2WaffenLabel);
s2WaffenLabel.setBounds(750,50,20,20);
add(s2WerkzeugeLabel);
s2WerkzeugeLabel.setBounds(750,100,20,20);
add(s2BevoelkerungLabel);
s2BevoelkerungLabel.setBounds(750,150,20,20);
add(s2WaffenplusLabel);
s2WaffenplusLabel.setBounds(770,50,20,20);
add(s2WerkzeugeplusLabel);
s2WerkzeugeplusLabel.setBounds(770,100,20,20);
add(Gewinner);
Gewinner.setBounds(300,120,200,20);
add(Spieler);
Spieler.setBounds(300,80,200,20);
//Label einfügen
add(k1play);
k1play.setBounds(0,310,160,20);
k1play.setBackground(new Color(140,110,0));
add(k2play);
k2play.setBounds(160,310,160,20);
k2play.setBackground(new Color(140,110,0));
add(k3play);
k3play.setBounds(320,310,160,20);
k3play.setBackground(new Color(140,110,0));
add(k4play);
k4play.setBounds(480,310,160,20);
k4play.setBackground(new Color(140,110,0));
add(k5play);
k5play.setBounds(640,310,160,20);
k5play.setBackground(new Color(140,110,0));
add(endturn);
endturn.setBounds(300,100,200,20);
endturn.setBackground(new Color(140,110,0));
//Buttons einfügen
int s1karten[] = new int[5];
for(int i = 0;i<s1karten.length;i++)
{
Zufallszahl = Math.random();
Math.round(Zufallszahl*62);
if(Zufallszahl<=6)
{
s1karten[i] = 1;
}
if(Zufallszahl>=7&&Zufallszahl<=9)
{
s1karten[i] = 2;
}
if(Zufallszahl>=10&&Zufallszahl<=18)
{
s1karten[i] = 3;
}
if(Zufallszahl>=19&&Zufallszahl<=21)
{
s1karten[i] = 4;
}
if(Zufallszahl>=22&&Zufallszahl<=26)
{
s1karten[i] = 5;
}
if(Zufallszahl>=27&&Zufallszahl<=36)
{
s1karten[i] = 6;
}
if(Zufallszahl>=27&&Zufallszahl<=38)
{
s1karten[i] = 7;
}
if(Zufallszahl>=39&&Zufallszahl<=44)
{
s1karten[i] = 8;
}
if(Zufallszahl>=45&&Zufallszahl<=50)
{
s1karten[i] = 9;
}
if(Zufallszahl==51)
{
s1karten[i] = 10;
}
if(Zufallszahl>=52&&Zufallszahl<=54)
{
s1karten[i] = 11;
}
if(Zufallszahl==55)
{
s1karten[i] = 12;
}
if(Zufallszahl>=56&&Zufallszahl<=58)
{
s1karten[i] = 13;
}
if(Zufallszahl>=59&&Zufallszahl<=61)
{
s1karten[i] = 14;
}
if(Zufallszahl==62)
{
s1karten[i] = 15;
}
}
//Anfangskarten Spieler1
int s2karten[] = new int[5];
for(int i = 0;i<s2karten.length;i++)
{
Zufallszahl = Math.random();
Math.round(Zufallszahl*62);
if(Zufallszahl<=6)
{
s2karten[i] = 1;
}
if(Zufallszahl>=7&&Zufallszahl<=9)
{
s2karten[i] = 2;
}
if(Zufallszahl>=10&&Zufallszahl<=18)
{
s2karten[i] = 3;
}
if(Zufallszahl>=19&&Zufallszahl<=21)
{
s2karten[i] = 4;
}
if(Zufallszahl>=22&&Zufallszahl<=26)
{
s2karten[i] = 5;
}
if(Zufallszahl>=27&&Zufallszahl<=36)
{
s2karten[i] = 6;
}
if(Zufallszahl>=27&&Zufallszahl<=38)
{
s2karten[i] = 7;
}
if(Zufallszahl>=39&&Zufallszahl<=44)
{
s2karten[i] = 8;
}
if(Zufallszahl>=45&&Zufallszahl<=50)
{
s2karten[i] = 9;
}
if(Zufallszahl==51)
{
s2karten[i] = 10;
}
if(Zufallszahl>=52&&Zufallszahl<=54)
{
s2karten[i] = 11;
}
if(Zufallszahl==55)
{
s2karten[i] = 12;
}
if(Zufallszahl>=56&&Zufallszahl<=58)
{
s2karten[i] = 13;
}
if(Zufallszahl>=59&&Zufallszahl<=61)
{
s2karten[i] = 14;
}
if(Zufallszahl==62)
{
s2karten[i] = 15;
}
}
//Anfangskarten Spieler2
k1play.addActionListener(this);
k2play.addActionListener(this);
k3play.addActionListener(this);
k4play.addActionListener(this);
k5play.addActionListener(this);
endturn.addActionListener(this);
//ActionListener
}
//Klassenblock
public void actionPerformed(ActionEvent x)
{
Gewinner.setText(Integer.toString(Angriff[0]));
if(s1Mauer<=0)
{
Gewinner.setText("Spieler 2 gewinnt!");
}
if(s2Mauer<=0)
{
Gewinner.setText("Spieler 1 gewinnt");
}
}
//ActionListenerblock
public static void main (String args[])
{
WaffenundWerkzeuge11 w = new WaffenundWerkzeuge11();
w.setVisible(true);
w.setSize(800,600);
w.setTitle("WaffenundWerkzeuge");
}
//Mainblock
}
//Programmende
Code:
G:\Schule\Info - Java\WaffenundWerkzeuge11.java:343: cannot find symbol
symbol : variable Angriff
location: class WaffenundWerkzeuge11
Gewinner.setText(Integer.toString(Angriff[0]));
^
1 error
Prozess beendet mit Exit-Code 1