Hey.
Ich bin dabei ein Glücksrad-Spiel zu programmieren und habe unter anderem eine Spieler-Klasse mit gettern und settern für Kontostand, etc.
Nun muss ich in meiner Spielablauf-Klasse ständig if-Abfragen machen, um herauszufinden, wer gerade an der Reihe ist.
Gäbe es eine Möglichkeit, das so zu gestalten wie in einer normalen Spielerwechsel-Methode, indem ich irgendwie
ne variable aktuellerSpieler nehme und ihr dann das aktuelle Spieler-Objekt (s1, s2 oder s3) zuweise?
Diese variable müsste dann ja auch die Methoden der Spieler-instanz kennen...
Kennt jemand einen praktischeren Weg als den, den ich eingschlagen habe? Help pls
Beispiel der nervigen Abfragen, wer dran ist:
Meine Spielerwechsel-Methode:
Ich bin dabei ein Glücksrad-Spiel zu programmieren und habe unter anderem eine Spieler-Klasse mit gettern und settern für Kontostand, etc.
Nun muss ich in meiner Spielablauf-Klasse ständig if-Abfragen machen, um herauszufinden, wer gerade an der Reihe ist.
Gäbe es eine Möglichkeit, das so zu gestalten wie in einer normalen Spielerwechsel-Methode, indem ich irgendwie
ne variable aktuellerSpieler nehme und ihr dann das aktuelle Spieler-Objekt (s1, s2 oder s3) zuweise?
Diese variable müsste dann ja auch die Methoden der Spieler-instanz kennen...
Kennt jemand einen praktischeren Weg als den, den ich eingschlagen habe? Help pls
Beispiel der nervigen Abfragen, wer dran ist:
Code:
retVal = vokale.indexOf(letter);
if (retVal > 0)
{
if (s1.istDran())
{
if (s1.getRundenKontostand() >= 300)
s1.setRundenKontostand(s1.getRundenKontostand()-300);
else
JOptionPane.showMessageDialog(this, "Sie haben nicht genug Geld, um einen Vokal zu kaufen!", "Armer Schlucker", JOptionPane.INFORMATION_MESSAGE);
naechster();
}
else if (s2.istDran())
{
if (s2.getRundenKontostand() >= 300)
s2.setRundenKontostand(s2.getRundenKontostand()-300);
else
JOptionPane.showMessageDialog(this, "Sie haben nicht genug Geld, um einen Vokal zu kaufen!", "Armer Schlucker", JOptionPane.INFORMATION_MESSAGE);
naechster();
}
else if (s3.istDran())
{
if (s3.getRundenKontostand() >= 300)
s3.setRundenKontostand(s3.getRundenKontostand()-300);
else
JOptionPane.showMessageDialog(this, "Sie haben nicht genug Geld, um einen Vokal zu kaufen!", "Armer Schlucker", JOptionPane.INFORMATION_MESSAGE);
naechster();
Meine Spielerwechsel-Methode:
Code:
public void naechster()
{
if (s1.istDran() == true)
{
s1.setIstDran(false);
s2.setIstDran(true);
dran.setText("Aktueller Spieler: 2");
}
else if (s2.istDran() == true)
{
s2.setIstDran(false);
s3.setIstDran(true);
dran.setText("Aktueller Spieler: 3");
}
else if (s3.istDran() == true)
{
s3.setIstDran(false);
s1.setIstDran(true);
dran.setText("Aktueller Spieler: 1");
}