2025-01-18 01:21:58 +01:00
|
|
|
#include "../Util/PositionVector.h"
|
|
|
|
|
2025-01-18 19:10:38 +01:00
|
|
|
|
2025-01-18 01:21:58 +01:00
|
|
|
#ifndef ENTITY_H
|
|
|
|
#define ENTITY_H
|
|
|
|
|
|
|
|
namespace game
|
|
|
|
{
|
|
|
|
class Maze;
|
|
|
|
class Entity {
|
|
|
|
private:
|
|
|
|
PositionVector pos;
|
|
|
|
char display_character;
|
2025-01-18 19:10:38 +01:00
|
|
|
bool move_left;
|
|
|
|
|
|
|
|
void handle_bowie(Maze& maze);
|
|
|
|
void handle_connelly(Maze& maze, const PositionVector& player_position);
|
2025-01-18 01:21:58 +01:00
|
|
|
public:
|
|
|
|
Entity(PositionVector starting_position, char display_character);
|
2025-01-18 19:10:38 +01:00
|
|
|
void tick(Maze& maze, const PositionVector& player_position);
|
2025-01-18 01:21:58 +01:00
|
|
|
bool is_at_position(const PositionVector& position) const;
|
2025-01-18 19:10:38 +01:00
|
|
|
char get_display_character();
|
2025-01-18 01:21:58 +01:00
|
|
|
};
|
|
|
|
} // game
|
|
|
|
|
|
|
|
#endif //ENTITY_H
|