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.

37 lines
677 B
C++

#ifndef FAIRY_H
#define FAIRY_H
#include "entity.h"
#include "resourceholder.h"
#include <SFML/Graphics/Sprite.hpp>
class Enemy : public Entity
{
public:
enum class Type
{
Player,
Weakling,
Shotguner
};
explicit Enemy(Type type, const TextureHolder& texture_holder);
virtual ~Enemy() override;
Type type() const;
Category::Type category() const override;
private:
Type enemy_type;
sf::Sprite enemy_sprite;
virtual void drawCurrent(sf::RenderTarget& target, sf::RenderStates states) const override;
};
using EnemySPtr = std::shared_ptr<Enemy>;
using EnemyUPtr = std::unique_ptr<Enemy>;
#endif // FAIRY_H