diff --git a/ManualBot b/ManualBot new file mode 100644 index 0000000..d266beb --- /dev/null +++ b/ManualBot @@ -0,0 +1,42 @@ +package bot; + +import java.util.Scanner; + +public class ManualBot extends Bot { + + public ManualBot(String[] args) { + super(args); // Aufruf des Konstruktors der Oberklasse Bot + } + + @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) { + ManualBot manualBot = new ManualBot(args); + manualBot.run(); + } +}