#ifndef DAMAGE_BOX_H #define DAMAGE_BOX_H #include "core/templates/hash_set.h" #include "scene/3d/physics/area_3d.h" class HealthStatus; class DamageBox : public Area3D { GDCLASS(DamageBox, Area3D); static void _bind_methods(); void attack_motion_begin(); void attack_motion_end(); void on_body_entered(Node3D *body); protected: void _notification(int what); public: void set_damage(int amount); int get_damage() const; private: int damage{ 1 }; HashSet already_hit{}; }; #endif // !DAMAGE_BOX_H