Dateien hochladen nach „“
This commit is contained in:
parent
b67921efcc
commit
fd64af0bba
@ -3,48 +3,40 @@ package bot;
|
|||||||
import java.util.Scanner;
|
import java.util.Scanner;
|
||||||
|
|
||||||
public class ManualBot extends Bot {
|
public class ManualBot extends Bot {
|
||||||
|
|
||||||
private Scanner scanner;
|
|
||||||
|
|
||||||
public ManualBot(String[] args) {
|
public ManualBot(String[] args) {
|
||||||
super(args);
|
super(args); // Aufruf des Konstruktors der Oberklasse Bot
|
||||||
this.scanner = new Scanner(System.in);
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected char nextMove(View view) throws Exception {
|
||||||
|
Scanner scanner = new Scanner(System.in);
|
||||||
|
|
||||||
|
// Benutzer zur Eingabe eines Befehls auffordern
|
||||||
|
System.out.println("Bitte geben Sie einen Befehl ein (w, s, a, d, q): ");
|
||||||
|
char move = scanner.nextLine().charAt(0);
|
||||||
|
|
||||||
|
// Verarbeiten Sie den eingegebenen Befehl gemäß der Umsetzungstabelle
|
||||||
|
switch (move) {
|
||||||
|
case 'w': // vorwärts bewegen
|
||||||
|
case 's': // rückwärts bewegen
|
||||||
|
case 'a': // nach links drehen
|
||||||
|
case 'd': // nach rechts drehen
|
||||||
|
return move; // Rückgabe des verarbeiteten Befehls an die run-Methode
|
||||||
|
case 'q': // Verbindung beenden
|
||||||
|
System.out.println("Verbindung wird beendet.");
|
||||||
|
System.exit(0); // Das Programm beenden, um die Verbindung zu schließen
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
System.out.println("Falsche Taste. Bitte geben Sie w, s, a, d oder q ein.");
|
||||||
|
}
|
||||||
|
|
||||||
|
// Falls der Befehl nicht gültig war, rekursiv nächsten Befehl abfragen
|
||||||
|
return nextMove(view);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
ManualBot manualBot = new ManualBot(args);
|
ManualBot manualBot = new ManualBot(args);
|
||||||
manualBot.run();
|
manualBot.run();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
protected char nextMove(View view) throws Exception {
|
|
||||||
Scanner scanner = new Scanner(System.in);
|
|
||||||
char move;
|
|
||||||
|
|
||||||
do {
|
|
||||||
System.out.println("Bitte geben Sie einen Steuerbefehl ein (w, s, a, d, q): ");
|
|
||||||
move = scanner.nextLine().toLowerCase().charAt(0);
|
|
||||||
} while (!isValidMove(move));
|
|
||||||
|
|
||||||
return move;
|
|
||||||
}
|
|
||||||
|
|
||||||
private boolean isValidMove(char move) {
|
|
||||||
switch (move) {
|
|
||||||
case 'w':
|
|
||||||
case 's':
|
|
||||||
case 'a':
|
|
||||||
case 'd':
|
|
||||||
case 'q':
|
|
||||||
return true;
|
|
||||||
default:
|
|
||||||
System.out.println("Falsche Taste. Bitte geben Sie w, s, a, d oder q ein.");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void run() {
|
|
||||||
startCommunication();
|
|
||||||
// hier muss die Logik für die Verbindung implementiert werden
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user