#ifndef GOAL_MARKER_HPP
#define GOAL_MARKER_HPP

#include "goap/goal.hpp"
#include "godot_cpp/classes/static_body3d.hpp"
#include <godot_cpp/classes/node3d.hpp>

namespace gd = godot;

class GoalMarker : public gd::StaticBody3D {
    GDCLASS(GoalMarker, gd::StaticBody3D);
    static void _bind_methods();
public:
    void destroy_on_forgotten();
    void set_goal(gd::Ref<goap::Goal> goal);
    gd::Ref<goap::Goal> get_goal() const;
private:
    gd::Ref<goap::Goal> goal{};
};

#endif // !GOAL_MARKER_HPP
