#ifndef PlayEnemy_hpp
#define PlayEnemy_hpp

#include "Tank.hpp"

namespace Play {
  class Enemy : public TankEnemy {
    Object* nest = nullptr;
    Object& setAction(const EnemyAction action) override;
    Object& simulate(
      const EnemyAction action,
      const Object::Time dt
    ) override;
    Object& onCollision(Object* object) override;
    const Matrix* getActivationMatrix() override;
  public:
    static std::vector<Object*> nests;
    using TankEnemy::TankEnemy;
  };
  struct CyanEnemy : Enemy {
    CyanEnemy();
  };
  struct WhiteEnemy : Enemy {
    WhiteEnemy();
  };
}

#endif
