Hallo zusammen,
ich brauch mal wieder eure Hilfe bzw. Verbesserungsvorschläge.
Das folgende Programm soll das Spiel Mensch ärgere dich nicht in vereinfachter Form durchführen.
Dies funktioniert auch perfekt. Allerdings ist das Programm noch nicht gerade perfekt.
So wird z.B. wenn Spieler 1 sich bereits ein Feld größer als 44 (oder auf dem Feld 44) befindet immer noch für Spieler 2 gewürfelt und gezogen, was ich schon versucht habe mit einer while schleife zu verhindern, was leider nicht funktionierte.
Außerdem wollte ich das Programm noch um folgende Funktionen erweitern:
Leider habe ich momentan keine Ahnung wie ich den "Fehler" beheben und die Erweiterungen umsetzen soll bzw. meine bisherigen Versuche haben nicht funktioniert.
Ich hoffe ihr könnt mir helfen.
Solltet ihr noch weitere Verbesserungsvorschläge haben könnt ihr diese hier selbstverständlich auch einbringen.
mfg
ich brauch mal wieder eure Hilfe bzw. Verbesserungsvorschläge.
Das folgende Programm soll das Spiel Mensch ärgere dich nicht in vereinfachter Form durchführen.
Dies funktioniert auch perfekt. Allerdings ist das Programm noch nicht gerade perfekt.
So wird z.B. wenn Spieler 1 sich bereits ein Feld größer als 44 (oder auf dem Feld 44) befindet immer noch für Spieler 2 gewürfelt und gezogen, was ich schon versucht habe mit einer while schleife zu verhindern, was leider nicht funktionierte.
Java:
/**
*
*/
/**
* @author Faighter
*
*/
import java.util.*;
public class maedn {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int spieler1 = 0,spieler2 = 0,wuerfel= 0,wuerfel1 = 0,feld1,feld2;
Random zufall;
zufall = new Random();
System.out.println("Willkommen");
System.out.println("Dieses Spiel startet automatisch !");
while(spieler1 < 44 && spieler2 <44){
wuerfel= 1+zufall.nextInt(6);
System.out.println("Spieler 1 hat eine " +wuerfel+ " gewürfelt");
feld1 = spieler1;
spieler1=spieler1+wuerfel;
System.out.println("Spieler 1 war auf Feld "+feld1+ " und befindet sich nun auf Feld: "+spieler1);
if (spieler1 == spieler2){
spieler2 = 0;
}
//while(spieler1 < 44){
wuerfel1 = 1+zufall.nextInt(6);
System.out.println("Spieler 2 hat eine " +wuerfel1+ " gewürfelt");
feld2 = spieler2;
spieler2=spieler2+wuerfel1;
System.out.println("Spieler 2 war auf Feld "+feld2+ " und befindet sich nun auf Feld: "+spieler2);
if(spieler2 == spieler1){
spieler1 = 0;
}
//}
if(spieler1 >= 44){
System.out.print("Spieler 1 hat gewonnen");
}else if(spieler2 >= 44){
System.out.print("Spieler 2 hat gewonnen");
}
}
}
}
Außerdem wollte ich das Programm noch um folgende Funktionen erweitern:
- Das Programm soll nur nachdem betätigen der Taste S starten (mit String)
- Das Spiel soll nur beendet werden wenn genau das Feld 44 erreicht wird, alles was drüber geht soll ignoriert werden.
Leider habe ich momentan keine Ahnung wie ich den "Fehler" beheben und die Erweiterungen umsetzen soll bzw. meine bisherigen Versuche haben nicht funktioniert.
Ich hoffe ihr könnt mir helfen.
Solltet ihr noch weitere Verbesserungsvorschläge haben könnt ihr diese hier selbstverständlich auch einbringen.
mfg