So, das Spielfeld wird nun durch die Benutzer-Angabe aufgebaut.
Das Spielfeld kann maximal 10 x 10 felder haben muss aber nicht quadratisch sein.
Bis hier hin sieht alles gut aus.:toll:
ABER NUN KOMME ICH NICHT WEITER:
in diesem Spiel werden anstatt Schiffe folgende dotcom-Adressen versenkt:
"amazon", "moodle", "uni-due", "google","youtube", "studivz", "facebook"
Diese dotComs sollen sich nun beim Aufbau des Spielfeldes zufällig per Random-Methode verteilen,
Sie sollten sich entweder vertikal, horizontal oder diagonal anordnen.
Wie bekomme ich diese Dotcoms nun in mein Spielfeld?
Ich habe einen zweidimensionalen Array [][] für das Spielfeld genommen und
wollte nun noch einen für die DotComs nehmen. Doch ich habe da echt ne blockade, wie muss ich das in mein Schleifen-konstrukt einbauen.
Die andere Frage ist die, wie ich mir die Random-Methode zu nutzen mache um die Dotcoms dann tatsächlich zufällig setzen zu lassen.
Hier mein code! Soweit sieht es gut aus:
Hier die Ausgabe
Das Spielfeld kann maximal 10 x 10 felder haben muss aber nicht quadratisch sein.
Bis hier hin sieht alles gut aus.:toll:
ABER NUN KOMME ICH NICHT WEITER:
in diesem Spiel werden anstatt Schiffe folgende dotcom-Adressen versenkt:
"amazon", "moodle", "uni-due", "google","youtube", "studivz", "facebook"
Diese dotComs sollen sich nun beim Aufbau des Spielfeldes zufällig per Random-Methode verteilen,
Sie sollten sich entweder vertikal, horizontal oder diagonal anordnen.
Wie bekomme ich diese Dotcoms nun in mein Spielfeld?
Ich habe einen zweidimensionalen Array [][] für das Spielfeld genommen und
wollte nun noch einen für die DotComs nehmen. Doch ich habe da echt ne blockade, wie muss ich das in mein Schleifen-konstrukt einbauen.
Die andere Frage ist die, wie ich mir die Random-Methode zu nutzen mache um die Dotcoms dann tatsächlich zufällig setzen zu lassen.
Hier mein code! Soweit sieht es gut aus:
Code:
import java.util.Random;
import java.util.Scanner;
public class DotComVersenken {
static String [][] dotComs = new String [][]{{"amazon"}, {"moodle"}, {"uni-due"}, {"google"}, {"youtube"}, {"studivz"}, {"facebook"}};
static int xKoordinate;
static int yKoordinate;
public static void spielEinrichten(){
Scanner sc = new Scanner(System.in);
System.out.println("Bitte geben Sie die Zeilenanzahl des Spielfeldes an. - Maximale Zeilenanzahl: 10");
xKoordinate = sc.nextInt();
while (xKoordinate > 10){
System.out.println("OOOOOHPS - Die Eingabe war falsch!");
System.out.println("Bitte geben Sie jeweils eine Zahl zwischen 1 und 10 ein.");
System.out.println("Das Spielfeld soll maximal 10x10 Felder enthalten.");
System.out.println("Bitte Probieren Sie es gleich nochmal.");
System.out.println("Bitte geben Sie die Zeilenanzahl des Spielfeldes an. - Maximale Zeilenanzahl: 10");
xKoordinate = sc.nextInt();
}
System.out.println("Bitte geben Sie die Spaltenanzahl des Spielfeldes an. - Maximale Spaltennanzahl: 10");
yKoordinate = sc.nextInt(); //
while (yKoordinate > 10){
System.out.println("OOOOOHPS - Die Eingabe war wiedermal falsch!");
System.out.println ("Bitte geben Sie jeweils eine Zahl zwischen 1 und 10 ein.");
System.out.println("Das Spielfeld soll maximal 10x10 Felder enthalten.");
System.out.println("Probieren Sie vorher auf die Tasten zu schauen");
System.out.println("Bitte geben Sie die Spaltenanzahl des Spielfeldes an. - Maximale Spaltennanzahl: 10");
yKoordinate = sc.nextInt();
}
char [][] fieldUser = new char [xKoordinate][yKoordinate];
System.out.print(" ");
for (xKoordinate = 0; xKoordinate< fieldUser.length; xKoordinate++ ){
System.out.printf(" %2d ", xKoordinate+1);
}
System.out.println();
for (int yKoordinate = 0; yKoordinate < fieldUser[0].length; yKoordinate++){
System.out.print(" +");
for(int xKoordinate = 0; xKoordinate < fieldUser.length; xKoordinate++){
System.out.print("---+");
}
System.out.println();
System.out.printf("%2d|", yKoordinate+1);
for(int xKoordinate = 0; xKoordinate < fieldUser.length; xKoordinate++) {
fieldUser [xKoordinate][yKoordinate] = '@';
System.out.print(" " + fieldUser[xKoordinate][yKoordinate]+ " |");
}//
System.out.println();
}//
}//
private int randomInt(int max){
Random rand = new Random();
return rand.nextInt(max);
}
public static void main ( String [] args){
spielEinrichten();
}
}
Hier die Ausgabe