„ManualBot.java“ ändern

This commit is contained in:
Isabella Nawratil 2024-02-04 21:13:44 +00:00
parent 78d151d0d1
commit 76006c007b

View File

@ -1,41 +1,44 @@
package bot;
import java.util.Scanner;
public class ManualBot extends Bot {
private final Scanner scan; // Fügen Sie den Scanner als Instanzvariable hinzu
public ManualBot(String[] args) {
public ManualBot(String[] args, Scanner scanner) {
super(args);
this.scan = scanner; // Initialisieren Sie den Scanner für die Standardeingabe
}
@Override
protected char nextMove(View view) throws Exception {
Scanner scanner = new Scanner(System.in);
protected char nextMove(View view) {
// Ihre bestehende Implementierung der nextMove-Methode bleibt unverändert
// ...
// 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);
char move = scan.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
return move;
case 'q': //Verbindung beenden
System.out.println("Verbindung wird beendet.");
return 'q'; // Rückgabe von 'q' als Zeichen
return 'q';
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
// Falls der Befehl nicht gültig war, wird dann der next Befehl abgefragt
return nextMove(view);
}
public static void main(String[] args) {
ManualBot manualBot = new ManualBot(args);
Scanner scanner = new Scanner(System.in);
ManualBot manualBot = new ManualBot(args, scanner);
manualBot.run();
scanner.close(); // Schließen des Scanners
}
}