#pragma once

#include "game/entities/enemy.hpp"

class PathEnemy : public Enemy {
   public:
    explicit PathEnemy(const Data& data);
    ~PathEnemy() override = default;

    void update(float delta_time) override;
#ifdef _DEBUG
    void resetToInitialPosition(const Data& data) override;
#endif

   private:
    void checkPath();  // Comprueba si ha llegado al limite del recorrido para darse media vuelta

    int x1_{0};  // Limite izquierdo de la ruta en el eje X
    int x2_{0};  // Limite derecho de la ruta en el eje X
    int y1_{0};  // Limite superior de la ruta en el eje Y
    int y2_{0};  // Limite inferior de la ruta en el eje Y
};
