RoboterFabrik/Roboter/tpe/ui/UI.java

142 lines
3.6 KiB
Java

package tpe.ui;
import java.util.Scanner;
import tpe.exceptions.roboter.RobotFactory;
public class UI {
Scanner sc = new Scanner(System.in);
//hier fehlt noch die Verknüpfung zum Factorysystem
private void menu() {
System.out.println("Willkommen bei der " + "Name der Roboterfabrik" + "!");
mainloop:
while (true) {
System.out.println();
System.out.println("--------");
System.out.println("Hauptmenü");
System.out.println("1 -> Alle Roboter anzeigen");
System.out.println("2 -> Einen neuen Roboter erstellen");
System.out.println("3 -> Einen Roboter wählen und mit diesem arbeiten");
System.out.println("4 -> Beenden");
System.out.println();
System.out.print("> ");
int input = Integer.parseInt(sc.nextLine());
System.out.println();
switch(input) {
case 1: showRobots(); break;
case 2: buildRobot(); break;
case 3: choseRobot(); break;
case 4: break mainloop;
}
System.out.println();
}
}
private void showRobots() {
System.out.println("Folgende Roboter wurden bereits erstellt: ");
// Seriennummer, Typ und Name aller Roboter soll aufgelistet werden
}
private void buildRobot() {
System.out.println("Sie haben sich dazu entschieden einen Roboter zu bauen. "
+ "Wenn Sie einen Roboter vom Typ R2D2 bauen möchten, dann drücken Sie die (1). "
+ "Wenn Sie einen Roboter vom TYp C3PO bauen möchten, dann drücken Sie die (2).");
System.out.print("> ");
int robotType = Integer.parseInt(sc.nextLine()); //robotType als Variable für Typ
System.out.println();
//Namensgabe
System.out.println("Welchen Namen möchten Sie dem Roboter geben?");
System.out.print("> ");
String name = sc.nextLine(); //name als Variable für Name
System.out.println();
int serialnumber = 0; // Methode aufrufen, welcher name und Typ übergeben wird und seriennummer zurückerhält.)
System.out.println("Sie haben einen Roboter vom Typ " + robotType + " mit dem Namen " + name + " mit der Seriennummer " + serialnumber + " erstellt.");
}
private void choseRobot() {
System.out.println("Geben Sie die Seriennummer des Roboters ein, mit dem Sie arbeiten möchten.");
System.out.print("> ");
int id = Integer.parseInt(sc.nextLine());
System.out.println();
loop:
while (true) {
System.out.println("Was möchten Sie mit Ihrem Roboter tun?");
System.out.println("1 -> Zustand des Roboters");
System.out.println("2 -> AN oder Aus schalten");
System.out.println("3 -> Roboter spricht");
System.out.println("4 -> Letzte Fehlermeldung auslesen"); // Haben bzw. brauchen wir solch eine Funktion
System.out.println("5 -> Daten des Roboters abrufen");
System.out.println("6 -> Zurück ins Hauptmenü");
System.out.print("> ");
int input = Integer.parseInt(sc.nextLine());
switch (input) {
case 1: robotStatus(id); break;
case 2: onoffbutton(id); break;
case 3: robotSpeak(id); break;
case 4: lastError(id); break;
case 5: robotData(id); break;
case 6: break loop;
}
}
}
private void robotStatus(int id) {
boolean status = RobotFactory.powerStatus(id);
if (status == true)
System.out.println("Der Roboter ist angeschaltet.");
else
System.out.println("Der Roboter ist ausgeschaltet.");
}
private void onoffbutton(int id) {
boolean status = RobotFactory.triggerPower(id);
if (status == true)
System.out.println("Der Roboter wurde eingeschaltet.");
else
System.out.println("Der Roboter wurde ausgeschaltet.");
}
private void robotSpeak(int id) {
}
private void lastError(int id) {
}
private void robotData(int id) {
}
}