epr24pr3_ojanssen2/main.cpp

49 lines
1.2 KiB
C++

#include "std_lib_inc.h"
#include "Maze.h"
#include "PositionVector.h"
#include "MazeParser.h"
#include "Game.h"
#include "Exceptions/ExitGame.h"
#include "Exceptions/MalformedMaze.h"
#include "Exceptions/MovementNotPossible.h"
#include "Exceptions/UnkownAction.h"
using game::Player;
using game::PositionVector;
using game::Maze;
using game::MazeParser;
using game::Game;
using game_exceptions::MalformedMaze;
using game_exceptions::UnkownAction;
using game_exceptions::MovementNotPossible;
using game_exceptions::ExitGame;
// Ein Programm, welches dir erlaubt ein Labyrinth zu erkunden mit 'w', 'a', 's', und 'd'.
int main()
{
try
{
// Lass den Nutzer ein Maze eingeben
Maze maze = MazeParser::request_maze_from_user();
// Erstelle eine Variable, in der wir den Spielstate speichern
Game game = Game(maze);
// Starte das Spiel
game.run_game();
}
catch (MalformedMaze& err)
{
// Das Labyrinth einlesen hat nicht geklappt. Gebe Fehlermeldung aus und beende das Programm.
cout << "Fehler beim Einlesen des Labyrinths.\n";
} catch (ExitGame& _)
{
cout << "Schoenen Tag noch!" << "\n";
}
// Beende das Programm
return 0;
}