Ich habe folgendes Problem:
Bei folgender Methode
wird mir in der Zeile
beim Compilen der Fehler "cannot find symbol" ohne jeglichen Zusatz ausgegeben. Ich habe alle Bezeichnungen überprüft, alles passt, auch wenn getSSpieler1() ein wenig komisch erscheinen mag.
Da ich überhaupt nicht mehr weiß, wo der Fehler liegen könnte, poste ich den entscheidenden Code aller entscheidenden Klassen. Vllt hatte von euch ja mal jemand ein ähnliches Problem.
Klasse GUI (oberes ist Methode der Klasse GUI):
Klasse Spiel
Klasse Spieler
Klasse RohstoffPanel
Wie gesagt, Fehlermeldung war obenbeschriebene (cannot find symbol). Hat jemand eine Vermutung? Wenn mehr Code benötigt wird, kann ich das noch posten, das ist aber meiner Meinung der Code, wo der Fehler liegen müsste.
MfG Mister Fabulous
Bei folgender Methode
Code:
spieler1.getRohstoffPanel().getNahrung().getUpgradebutton().addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e) {
getSSpieler1().upgradeWirtschaftNahrung();
}
});
wird mir in der Zeile
Code:
getSSpieler1().upgradeWirtschaftNahrung();
beim Compilen der Fehler "cannot find symbol" ohne jeglichen Zusatz ausgegeben. Ich habe alle Bezeichnungen überprüft, alles passt, auch wenn getSSpieler1() ein wenig komisch erscheinen mag.
Da ich überhaupt nicht mehr weiß, wo der Fehler liegen könnte, poste ich den entscheidenden Code aller entscheidenden Klassen. Vllt hatte von euch ja mal jemand ein ähnliches Problem.
Klasse GUI (oberes ist Methode der Klasse GUI):
Code:
import javax.swing.*;
import java.awt.*;
import java.awt.image.*;
import java.awt.event.*;
public class GUI extends JFrame
{
//Datenfelder
private SpielerPanel spieler1;
private SpielerPanel spieler2;
//Konstruktor
public GUI()
{
super("AoJ");
setLocation(0,300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
getContentPane().setLayout(new BorderLayout());
spieler1 = new SpielerPanel();
spieler2 = new SpielerPanel();
setzeALRohstoffPanels();
setzeALEinheitenPanels();
getContentPane().add(spieler1.getSpielerPanel(), BorderLayout.NORTH);
getContentPane().add(spieler2.getSpielerPanel(), BorderLayout.SOUTH);
pack();
setVisible(true);
}
Klasse Spiel
Code:
import javax.swing.*;
import java.awt.*;
import java.awt.image.*;
import java.awt.event.*;
public class Spiel extends JFrame
{
//Datenfelder
private GUI gui;
private Spieler spieler1;
private Spieler spieler2;
private Kampf kampf;
//Konstruktor
public Spiel()
{
gui = new GUI();
spieler1 = new Spieler("Abraham Lincoln");
spieler2 = new Spieler("Richard Nixon");
while(spieler1.getSpieler_hp() > 600 || spieler2.getSpieler_hp() > 600)
{
if (gui.getSpieler1().getHauptleiste().getOKbutton().isVisible() == false && gui.getSpieler1().getHauptleiste().getOKbutton().isVisible() == false)
{
spieler1.sammleEinnahmen();
spieler2.sammleEinnahmen();
gui.getSpieler1().getHauptleiste().getOKbutton().setVisible(true);
gui.getSpieler2().getHauptleiste().getOKbutton().setVisible(true);
}
}
}
//get-Methoden
public Spieler getSSpieler1()
{
return this.spieler1;
}
public Spieler getSSpieler2()
{
return this.spieler2;
}
Klasse Spieler
Code:
public void upgradeWirtschaftNahrung()
{
stufe_nahrung_Upgrade++;
wachstum_nahrung = wachstum_nahrung * 1.2;
gold = gold - kosten_nahrung_Upgrade;
}
Klasse RohstoffPanel
Code:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class RohstoffPanel
{
//Datenfelder
private JPanel rohstoffpanel;
private RohstoffzeilePanel nahrung;
private RohstoffzeilePanel gold;
//Konstruktor
public RohstoffPanel()
{
nahrung = new RohstoffzeilePanel("nahrung");
gold = new RohstoffzeilePanel("gold");
rohstoffpanel = new JPanel(new GridLayout(2,3));
rohstoffpanel.add(nahrung.getRohstoffanzeige());
rohstoffpanel.add(nahrung.getUpgradebutton());
rohstoffpanel.add(nahrung.getUpgradekosten());
rohstoffpanel.add(gold.getRohstoffanzeige());
rohstoffpanel.add(gold.getUpgradebutton());
rohstoffpanel.add(gold.getUpgradekosten());
}
public JPanel getRohstoffpanel()
{
return this.rohstoffpanel;
}
public RohstoffzeilePanel getNahrung()
{
return this.nahrung;
}
public RohstoffzeilePanel getGold()
{
return this.gold;
}
}
Wie gesagt, Fehlermeldung war obenbeschriebene (cannot find symbol). Hat jemand eine Vermutung? Wenn mehr Code benötigt wird, kann ich das noch posten, das ist aber meiner Meinung der Code, wo der Fehler liegen müsste.
MfG Mister Fabulous