diff options
Diffstat (limited to 'backend/Enemy.cpp')
-rw-r--r-- | backend/Enemy.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/backend/Enemy.cpp b/backend/Enemy.cpp index 9eadf01..c4bfff2 100644 --- a/backend/Enemy.cpp +++ b/backend/Enemy.cpp @@ -18,11 +18,25 @@ int Enemy::get_damage_min() const { return this->damage_min; } void Enemy::set_damage_max(int damage_max) { this->damage_max = damage_max; } int Enemy::get_damage_max() const { return this->damage_max; } +void Enemy::set_health(unsigned health_points) { this->health_points = health_points; } unsigned Enemy::get_health() const { return this->health_points; } void Enemy::take_damage(unsigned int dmg) { dmg = min(dmg, this->health_points); this->health_points -= dmg; } +bool Enemy::is_dead() const { + return this->health_points == 0; +} + +void Enemy::add_hidden_object(Object * object) { + this->hidden_objects.push_back(object); +} +void Enemy::remove_hidden_object(Object * object) { + this->hidden_objects.remove(object); +} +ListRange<Object *> Enemy::get_hidden_objects() { + return this->hidden_objects.range(); +} const String & Enemy::get_displayname() const { static String displayname; |