#include "std_lib_inc.h" #include "Player.h" #include "PositionVector.h" // #include "Maze.h" // Muss nicht inkludiert werden, da es schon in Player.h inkludiert wird using game::Player; using game::PositionVector; using game::Maze; // Ein Programm, welches dir erlaubt ein Labyrinth zu erkunden mit 'w', 'a', 's', und 'd'. const vector player_start_position = {4, 0}; int main() { const Maze maze = Maze(); // Erstelle einen Spieler mit der gegebenen start position Player player = Player(player_start_position[1], player_start_position[0]); // Erstelle eine Variable für den Input char input; // Durchlaufe die Hauptschleife des Spiels while (true) { // Zeige dem Spieler das Spielfeld maze.render(player.get_pos()); // Kontrolliere, ob der Spieler schon das Ziel erreicht hat if (maze.is_player_at_goal(player.get_pos())) { // Ziel erreicht! Herzlichen Glückwunsch! cout << "Ziel erreicht! Herzlichen Glueckwunsch!\n"; break; } // Lese Eingabe des Spielers cin >> input; // Erstelle einen Vector mit einer Bewegung von 0 und 0 PositionVector movement_vector = PositionVector(0,0); // Kontrolliere, was der Spieler machen möchte. Speichere die erforderte Bewegung im Bewegungsvektor. // Schreibe nachrichten in die Konsole, // wenn nach Hilfe gefragt wird oder eine unbekannte Eingabe eingegeben wurde switch (input) { case 'w': movement_vector.update(0, -1); break; case 'a': movement_vector.update(-1, 0); break; case 's': movement_vector.update(0, 1); break; case 'd': movement_vector.update(1, 0); break; case 'h': // Schreibe hilfsreiche Tipps in die Konsole cout << "Gebe 'w', 'a', 's', oder 'd' ein zum bewegen. Gebe 'h' ein um diesen Text anzuzeigen.\n"; break; default: // Die gewollte Aktion kenne ich nicht. Schreibe eine Fehlernachricht in die Konsole cout << "Diese Eingabe kenne ich nicht. Gib 'h' ein, um eine Hilfe zu erhalten.\n"; break; } // Kontrolliere gewollte Bewegung und setze sie um. player.move(maze, movement_vector); } // Beende das Programm return 0; }