TombsOfHarc/src/Actor.hpp

27 lines
815 B
C++

class Actor : public Persistent {
static const int MAX_NAME_LENGTH = 30;
public :
int x, y; // position on map
int ch; // ascii code
TCODColor col; // color
char name [ MAX_NAME_LENGTH ]; // the actor's name
bool blocks; // can we walk on this actor?
bool fovOnly; // only display when in fov
Attacker *attacker; // something that deals damage
Destructible *destructible; // something that can be damaged
Ai *ai; // something self-updating
Pickable *pickable; // Something that can be picked and used
Container *container; // Something that can contain other actors
Actor(int x, int y, int ch, const char *name, const TCODColor &col);
~Actor();
void update();
void render() const;
float getDistance(int cx, int cy) const;
void load(TCODZip &zip);
void save(TCODZip &zip);
};