#ifndef DAMAGE_AREA_HPP
#define DAMAGE_AREA_HPP

#include "godot_cpp/classes/animation_player.hpp"
#include <godot_cpp/classes/area3d.hpp>
#include <godot_cpp/templates/vector.hpp>

namespace godot {
class DamageArea : public Area3D {
    GDCLASS(DamageArea, Area3D);
    static void _bind_methods();
public:
    virtual void _enter_tree() override;
    virtual void _process(double delta_time) override;
protected:
    void body_entered(Node3D *node);
    void set_target_classes(Array array);
    Array get_target_classes() const;
private:
    Vector<StringName> target_classes{};
    AnimationPlayer *anim{nullptr};
};
}

#endif // !DAMAGE_AREA_HPP
