summaryrefslogtreecommitdiff
path: root/scene
diff options
context:
space:
mode:
authorAndrii Doroshenko (Xrayez) <xrayez@gmail.com>2021-11-12 21:30:35 +0200
committerAndrii Doroshenko (Xrayez) <xrayez@gmail.com>2021-11-12 21:30:35 +0200
commit6a673509106bfe7e9c7978d392d8cde3c1b65dc8 (patch)
tree94a92c809e5d5e16af1f4989050a720eb0479cd3 /scene
parentf979d5977ac77bdc47c1d7865a221a46991e30ab (diff)
Remove `get_closest_*` methods from `ShapeCast2D`
The physics API cannot provide needed functionality to ensure the correct behavior, which might lead to confusion (see `rest_info()`). However `get_closest_collision_safe/unsafe_fraction()` methods are not removed, because they return correct result from `cast_motion()`.
Diffstat (limited to 'scene')
-rw-r--r--scene/2d/shape_cast_2d.cpp24
-rw-r--r--scene/2d/shape_cast_2d.h4
2 files changed, 0 insertions, 28 deletions
diff --git a/scene/2d/shape_cast_2d.cpp b/scene/2d/shape_cast_2d.cpp
index 84a32d1fd3..50b44eb4ef 100644
--- a/scene/2d/shape_cast_2d.cpp
+++ b/scene/2d/shape_cast_2d.cpp
@@ -130,26 +130,6 @@ real_t ShapeCast2D::get_closest_collision_unsafe_fraction() const {
return collision_unsafe_fraction;
}
-Object *ShapeCast2D::get_closest_collider() const {
- ERR_FAIL_COND_V_MSG(result.is_empty(), nullptr, "Shape cast has not collided with anything yet.");
- return ObjectDB::get_instance(result[0].collider_id);
-}
-
-int ShapeCast2D::get_closest_collider_shape() const {
- ERR_FAIL_COND_V_MSG(result.is_empty(), -1, "Shape cast has not collided with anything yet.");
- return result[0].shape;
-}
-
-Vector2 ShapeCast2D::get_closest_collision_point() const {
- ERR_FAIL_COND_V_MSG(result.is_empty(), Vector2(), "Shape cast has not collided with anything yet.");
- return result[0].point;
-}
-
-Vector2 ShapeCast2D::get_closest_collision_normal() const {
- ERR_FAIL_COND_V_MSG(result.is_empty(), Vector2(), "Shape cast has not collided with anything yet.");
- return result[0].normal;
-}
-
void ShapeCast2D::set_enabled(bool p_enabled) {
enabled = p_enabled;
update();
@@ -437,10 +417,6 @@ void ShapeCast2D::_bind_methods() {
ClassDB::bind_method(D_METHOD("get_collision_point", "index"), &ShapeCast2D::get_collision_point);
ClassDB::bind_method(D_METHOD("get_collision_normal", "index"), &ShapeCast2D::get_collision_normal);
- ClassDB::bind_method(D_METHOD("get_closest_collider"), &ShapeCast2D::get_closest_collider);
- ClassDB::bind_method(D_METHOD("get_closest_collider_shape"), &ShapeCast2D::get_closest_collider_shape);
- ClassDB::bind_method(D_METHOD("get_closest_collision_point"), &ShapeCast2D::get_closest_collision_point);
- ClassDB::bind_method(D_METHOD("get_closest_collision_normal"), &ShapeCast2D::get_closest_collision_normal);
ClassDB::bind_method(D_METHOD("get_closest_collision_safe_fraction"), &ShapeCast2D::get_closest_collision_safe_fraction);
ClassDB::bind_method(D_METHOD("get_closest_collision_unsafe_fraction"), &ShapeCast2D::get_closest_collision_unsafe_fraction);
diff --git a/scene/2d/shape_cast_2d.h b/scene/2d/shape_cast_2d.h
index 0e19e9ad3d..fca6b46155 100644
--- a/scene/2d/shape_cast_2d.h
+++ b/scene/2d/shape_cast_2d.h
@@ -105,10 +105,6 @@ public:
Vector2 get_collision_point(int p_idx) const;
Vector2 get_collision_normal(int p_idx) const;
- Object *get_closest_collider() const;
- int get_closest_collider_shape() const;
- Vector2 get_closest_collision_point() const;
- Vector2 get_closest_collision_normal() const;
real_t get_closest_collision_safe_fraction() const;
real_t get_closest_collision_unsafe_fraction() const;