Skip to content
Snippets Groups Projects
Commit 931383ab authored by Alrik Appelfeldt's avatar Alrik Appelfeldt
Browse files

Delete ghost.h

parent 9c2a69c7
No related branches found
No related tags found
No related merge requests found
#ifndef GHOST_H
#define GHOST_H
#include "given.h"
#include "string"
using namespace std;
class Ghost
{
public:
Ghost(Point const& start_position, std::string const& color);
virtual ~Ghost() = default;
virtual Point get_scatter_point(const Point& pacmanPosition) const = 0;
virtual Point get_chase_point(const Point& pacmanPosition, const Point& pacmanDirection) = 0;
virtual void set_position(const Point& new_position);
virtual Point get_position();
virtual std::string get_color() const = 0;
// virtual Point get_target_position() const = 0;
virtual void set_blinky_position(const Point& new_position)
{
blinkyPosition.x = new_position.x;
blinkyPosition.y = new_position.y;
}
virtual void set_pinky_position(const Point& new_position)
{
pinkyPosition.x = new_position.x;
pinkyPosition.y = new_position.y;
}
protected:
Point position;
std::string colorName;
Point blinkyPosition;
Point pinkyPosition;
};
class Clyde
{
public:
Clyde(std::string const &color, Point const &start_pos);
void set_pos(const Point &new_pos);
Point get_scatter(const Point &pos_pacman);
Point get_chase(const Point &pos_pacman, const Point &dir_pacman);
Point get_pos();
std::string get_color()const;
};
class Pinky
{
public:
Pinky(std::string const &color, Point const &start_pos);
void set_pos(const Point &new_pos);
Point get_scatter(const Point &pos_pacman);
Point get_chase(const Point &pos_pacman, const Point &dir_pacman);
Point get_pos();
std::string get_color()const;
};
class Blinky
{
public:
bool angry();
bool anger_activated(bool state);
Blinky(std::string const &color, Point const &start_pos);
void set_pos(const Point &new_pos);
Point get_scatter(const Point &pos_pacman);
Point get_chase(const Point &pos_pacman, const Point &dir_pacman);
Point get_pos();
std::string get_color()const;
};
#endif
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment