Hallo liebe Community,
sollte dieses Thema falsch platziert sein, bitte verschieben oder gegebenenfalls löschen.
Im Rahmen eines Schulprojektes entwerfe ich und mein Team ein Text-Adventure mittels Java. (hier: mexikanischer Staatsbürger versucht, die Grenze zu den Staaten zu passieren.).
Leider habe ich ein entscheidendes Problem bei meinem Checkpoint. Die Idee ist simpel. Es entstehen Verzweigungen. Je nach dem, was der User eingibt, kommt er an verschiedene Stellen. Das Management der Stellen geschieht via Checkpoint.
Wird ein bestimmter Text eingegeben, so kommt er dementsprechend einen Checkpoint weiter. Leider habe ich den Anschein, dass mein Checkpoint nicht gespeichert wird..
Auch mehrere Antwortmöglichkeiten sind laut dem Programm (bei Strings) undefiniert (||).
Diese habe ich provisorisch auskommentiert.
Meinen Code findet ihr hier.
import java.util.Scanner;
public class play {
private String antwort;
public void setAntwort (String pAntwort) {
this.antwort = pAntwort;
}
private static int Checkpoint = 0;
public void setCheckpoint (int pCheckpoint) {
this.Checkpoint = pCheckpoint;
}
public static void main(String[]args){
System.out.print("2018, xyORT. Du bist mexikanischer Staatsbürger. Deine Familie hat bereits erfolgreich die Grenze zu den Vereinigten Staaten passiert. \nDu denkst darüber nach, ihnen zu folgen. Wenn du bleibst, musst du dich der mexikanischen Mafia stellen, doch eine Flucht birgt viele Gefahren. \nFür welche Möglichkeit entscheidest du dich? Bleiben oder Flüchten?");
Scanner s = new Scanner(System.in);
while (Checkpoint < 10 ) {
String pAntwort = s.next();
if (pAntwort.equals("Bleiben" /*|| "bleiben" || "hier bleiben" || "Hier bleiben"*/)) {
System.out.println("Haha! Netter Versuch! Nix Da!");
}
else if (pAntwort. equals("Flüchten" /*|| "flüchten" || "Flüchte" || "flüchte" || "Flucht"*/ )) {
System.out.print("Super! Flüchtest du alleine oder in einer Gruppe?");
Checkpoint += 1;
if (pAntwort.equals("alleine" /*|| "Alleine" || "Allein" || "allein" */) & Checkpoint == 1){
System.out.print("Wenn du alleine flüchtest, hast du zwei Möglichkeiten:\n Entweder gehst du den Weg durch die Wüste oder den Weg über die Grenzkontrolle. ");
Checkpoint += 1;
}
else if (pAntwort.equals("Gruppe" /*|| "In einer Gruppe" || "gruppe" */)) {
System.out.print("\n Du hast dich einer Gruppe angeschlossen. Ihr überlegt ob ihr euch in einem LKW über die Grenze fahren lasst, oder ob ihr zu Fuß gehen wollt.");
Checkpoint += 1;
}
}
}
}
}
Ich hoffe, die Formatierung ist nicht allzu grauenhaft.
Habt ihr eine Idee zur Lösung meines Problems?
Beste Grüße,
Simon
sollte dieses Thema falsch platziert sein, bitte verschieben oder gegebenenfalls löschen.
Im Rahmen eines Schulprojektes entwerfe ich und mein Team ein Text-Adventure mittels Java. (hier: mexikanischer Staatsbürger versucht, die Grenze zu den Staaten zu passieren.).
Leider habe ich ein entscheidendes Problem bei meinem Checkpoint. Die Idee ist simpel. Es entstehen Verzweigungen. Je nach dem, was der User eingibt, kommt er an verschiedene Stellen. Das Management der Stellen geschieht via Checkpoint.
Wird ein bestimmter Text eingegeben, so kommt er dementsprechend einen Checkpoint weiter. Leider habe ich den Anschein, dass mein Checkpoint nicht gespeichert wird..
Auch mehrere Antwortmöglichkeiten sind laut dem Programm (bei Strings) undefiniert (||).
Diese habe ich provisorisch auskommentiert.
Meinen Code findet ihr hier.
import java.util.Scanner;
public class play {
private String antwort;
public void setAntwort (String pAntwort) {
this.antwort = pAntwort;
}
private static int Checkpoint = 0;
public void setCheckpoint (int pCheckpoint) {
this.Checkpoint = pCheckpoint;
}
public static void main(String[]args){
System.out.print("2018, xyORT. Du bist mexikanischer Staatsbürger. Deine Familie hat bereits erfolgreich die Grenze zu den Vereinigten Staaten passiert. \nDu denkst darüber nach, ihnen zu folgen. Wenn du bleibst, musst du dich der mexikanischen Mafia stellen, doch eine Flucht birgt viele Gefahren. \nFür welche Möglichkeit entscheidest du dich? Bleiben oder Flüchten?");
Scanner s = new Scanner(System.in);
while (Checkpoint < 10 ) {
String pAntwort = s.next();
if (pAntwort.equals("Bleiben" /*|| "bleiben" || "hier bleiben" || "Hier bleiben"*/)) {
System.out.println("Haha! Netter Versuch! Nix Da!");
}
else if (pAntwort. equals("Flüchten" /*|| "flüchten" || "Flüchte" || "flüchte" || "Flucht"*/ )) {
System.out.print("Super! Flüchtest du alleine oder in einer Gruppe?");
Checkpoint += 1;
if (pAntwort.equals("alleine" /*|| "Alleine" || "Allein" || "allein" */) & Checkpoint == 1){
System.out.print("Wenn du alleine flüchtest, hast du zwei Möglichkeiten:\n Entweder gehst du den Weg durch die Wüste oder den Weg über die Grenzkontrolle. ");
Checkpoint += 1;
}
else if (pAntwort.equals("Gruppe" /*|| "In einer Gruppe" || "gruppe" */)) {
System.out.print("\n Du hast dich einer Gruppe angeschlossen. Ihr überlegt ob ihr euch in einem LKW über die Grenze fahren lasst, oder ob ihr zu Fuß gehen wollt.");
Checkpoint += 1;
}
}
}
}
}
Ich hoffe, die Formatierung ist nicht allzu grauenhaft.
Habt ihr eine Idee zur Lösung meines Problems?
Beste Grüße,
Simon