forked from University/epr24pr42-ojanssen2
fix: fixed Information Mode, fixed Bowie, fixed docs
This commit is contained in:
parent
c856139997
commit
b49868a8ef
3 changed files with 16 additions and 7 deletions
|
@ -35,7 +35,15 @@ namespace game {
|
||||||
if (maze.is_pos_free(target_position, false))
|
if (maze.is_pos_free(target_position, false))
|
||||||
this->pos = target_position;
|
this->pos = target_position;
|
||||||
else
|
else
|
||||||
|
{
|
||||||
this->move_left = !this->move_left;
|
this->move_left = !this->move_left;
|
||||||
|
if (this->move_left)
|
||||||
|
target_position.change_x(-1);
|
||||||
|
else
|
||||||
|
target_position.change_x(1);
|
||||||
|
if (maze.is_pos_free(target_position, false))
|
||||||
|
this->pos = target_position;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
bool Entity::connelly_move_up(const Maze& maze) {
|
bool Entity::connelly_move_up(const Maze& maze) {
|
||||||
|
|
|
@ -40,7 +40,7 @@ namespace game
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void Maze::render(const Player& player, const vector<Entity> entities, const bool& infomode_enabled)
|
void Maze::render(const Player& player, const vector<Entity>& entities, const bool& infomode_enabled)
|
||||||
{
|
{
|
||||||
for (int y = 0; y < field.size(); ++y)
|
for (int y = 0; y < field.size(); ++y)
|
||||||
{
|
{
|
||||||
|
@ -62,8 +62,8 @@ namespace game
|
||||||
}
|
}
|
||||||
if (y == 0 && infomode_enabled)
|
if (y == 0 && infomode_enabled)
|
||||||
{
|
{
|
||||||
int steps = this->calculate_steps_until_win(player.get_pos(), 5);
|
const int steps = this->calculate_steps_until_win(player.get_pos(), 5);
|
||||||
if (steps > 999)
|
if (steps < 999)
|
||||||
cout << steps << " Schritte bis zum Ziel";
|
cout << steps << " Schritte bis zum Ziel";
|
||||||
}
|
}
|
||||||
cout << "\n";
|
cout << "\n";
|
||||||
|
@ -92,7 +92,7 @@ namespace game
|
||||||
return {x_diff, y_diff};
|
return {x_diff, y_diff};
|
||||||
}
|
}
|
||||||
|
|
||||||
int Maze::calculate_steps_until_win(const Vector2d& position, const int& steps) {
|
int Maze::calculate_steps_until_win(Vector2d position, const int& steps) {
|
||||||
if (!this->is_pos_free(position, false))
|
if (!this->is_pos_free(position, false))
|
||||||
return 999;
|
return 999;
|
||||||
if (this->get_field(position) == 'Z')
|
if (this->get_field(position) == 'Z')
|
||||||
|
|
|
@ -43,8 +43,9 @@ namespace game
|
||||||
|
|
||||||
/// Zeige das Spielfeld in der Konsole an
|
/// Zeige das Spielfeld in der Konsole an
|
||||||
/// @param player Der Spieler
|
/// @param player Der Spieler
|
||||||
|
/// @param entities Die Entities auf dem Spielfeld
|
||||||
/// @param infomode_enabled Ob der Infomode aktiv ist
|
/// @param infomode_enabled Ob der Infomode aktiv ist
|
||||||
void render(const Player& player, vector<Entity> entities, const bool& infomode_enabled);
|
void render(const Player& player, const vector<Entity>& entities, const bool& infomode_enabled);
|
||||||
|
|
||||||
/// Kriege den Wert einer Position
|
/// Kriege den Wert einer Position
|
||||||
/// @param pos Die gewollte Position
|
/// @param pos Die gewollte Position
|
||||||
|
@ -69,7 +70,7 @@ namespace game
|
||||||
/// @param position Die Startposition
|
/// @param position Die Startposition
|
||||||
/// @param steps Wie viele Schritte maximal gegangen werden sollten
|
/// @param steps Wie viele Schritte maximal gegangen werden sollten
|
||||||
/// @returns Wie viele Schritte benötigt werden
|
/// @returns Wie viele Schritte benötigt werden
|
||||||
int calculate_steps_until_win(const Vector2d& position, const int& steps);
|
int calculate_steps_until_win(Vector2d position, const int& steps);
|
||||||
|
|
||||||
/// Kriege alle eingelesenen Entities
|
/// Kriege alle eingelesenen Entities
|
||||||
vector<Entity> get_entities();
|
vector<Entity> get_entities();
|
||||||
|
|
Loading…
Add table
Reference in a new issue