summaryrefslogtreecommitdiff
path: root/servers/physics_3d/godot_area_3d.h
diff options
context:
space:
mode:
Diffstat (limited to 'servers/physics_3d/godot_area_3d.h')
-rw-r--r--servers/physics_3d/godot_area_3d.h15
1 files changed, 6 insertions, 9 deletions
diff --git a/servers/physics_3d/godot_area_3d.h b/servers/physics_3d/godot_area_3d.h
index e8caa9221b..b02fa1d5b9 100644
--- a/servers/physics_3d/godot_area_3d.h
+++ b/servers/physics_3d/godot_area_3d.h
@@ -57,11 +57,8 @@ class GodotArea3D : public GodotCollisionObject3D {
int priority = 0;
bool monitorable = false;
- ObjectID monitor_callback_id;
- StringName monitor_callback_method;
-
- ObjectID area_monitor_callback_id;
- StringName area_monitor_callback_method;
+ Callable monitor_callback;
+ Callable area_monitor_callback;
SelfList<GodotArea3D> monitor_query_list;
SelfList<GodotArea3D> moved_list;
@@ -106,11 +103,11 @@ class GodotArea3D : public GodotCollisionObject3D {
void _queue_monitor_update();
public:
- void set_monitor_callback(ObjectID p_id, const StringName &p_method);
- _FORCE_INLINE_ bool has_monitor_callback() const { return monitor_callback_id.is_valid(); }
+ void set_monitor_callback(const Callable &p_callback);
+ _FORCE_INLINE_ bool has_monitor_callback() const { return !monitor_callback.is_null(); }
- void set_area_monitor_callback(ObjectID p_id, const StringName &p_method);
- _FORCE_INLINE_ bool has_area_monitor_callback() const { return area_monitor_callback_id.is_valid(); }
+ void set_area_monitor_callback(const Callable &p_callback);
+ _FORCE_INLINE_ bool has_area_monitor_callback() const { return !area_monitor_callback.is_null(); }
_FORCE_INLINE_ void add_body_to_query(GodotBody3D *p_body, uint32_t p_body_shape, uint32_t p_area_shape);
_FORCE_INLINE_ void remove_body_from_query(GodotBody3D *p_body, uint32_t p_body_shape, uint32_t p_area_shape);