You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

31 lines
679 B
C++

#ifndef ENTITY_H
#define ENTITY_H
using coordinate = unsigned long;
/// Interface representing entity which can be placed on the map
class Entity
{
protected:
coordinate entity_row, entity_col;
public:
Entity(coordinate _row = 0, coordinate _col = 0);
virtual ~Entity() = 0;
/// Get current Entity position
void position(coordinate &row, coordinate &col) const noexcept;
/// Set Entity position explicitly
void setPosition(coordinate row, coordinate col);
/// Get current x of the Entity position
coordinate row() const noexcept;
/// Get current y of the Entity position
coordinate col() const noexcept;
};
#endif // ENTITY_H