From e3fd07e606098dd9cdf0b7ed806340d8466b5572 Mon Sep 17 00:00:00 2001 From: Nao Pross Date: Sun, 11 Feb 2018 22:55:22 +0100 Subject: Reimplement in C++ with SFML (mostly) --- src/main/headers/Actor.hpp | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 src/main/headers/Actor.hpp (limited to 'src/main/headers/Actor.hpp') diff --git a/src/main/headers/Actor.hpp b/src/main/headers/Actor.hpp new file mode 100644 index 0000000..7cc3be5 --- /dev/null +++ b/src/main/headers/Actor.hpp @@ -0,0 +1,40 @@ +#ifndef ACTOR_HPP +#define ACTOR_HPP + +#include + +class Actor +{ +public: + const enum Type + { + PLAYER, ENEMY + } type; + + const unsigned maxHp; + const std::string name; + + Actor() = delete; + Actor(std::string _name, unsigned _maxHp, Type _type); + virtual ~Actor(); + + void damage(int amt); + void heal(int amt); + + // TODO shouldnt be done by the map ? + // bool move(int x, y); + + /* accessors */ + bool alive() { return _alive; } + unsigned hp() { return _hp; } + + int x() { return _x; } + int y() { return _y; } + +private: + bool _alive; + unsigned _hp; + int _x, _y; +}; + +#endif -- cgit v1.2.1