diff --git a/editor/plugins/collision_shape_2d_editor_plugin.cpp b/editor/plugins/collision_shape_2d_editor_plugin.cpp index 15c40a5cb3f..22ce3e2d6ec 100644 --- a/editor/plugins/collision_shape_2d_editor_plugin.cpp +++ b/editor/plugins/collision_shape_2d_editor_plugin.cpp @@ -441,7 +441,7 @@ void CollisionShape2DEditor::forward_canvas_draw_over_viewport(Control *p_overla switch (shape_type) { case CAPSULE_SHAPE: { - Ref shape = node->get_shape(); + Ref shape = current_shape; handles.resize(2); float radius = shape->get_radius(); @@ -456,7 +456,7 @@ void CollisionShape2DEditor::forward_canvas_draw_over_viewport(Control *p_overla } break; case CIRCLE_SHAPE: { - Ref shape = node->get_shape(); + Ref shape = current_shape; handles.resize(1); handles.write[0] = Point2(shape->get_radius(), 0); @@ -472,7 +472,7 @@ void CollisionShape2DEditor::forward_canvas_draw_over_viewport(Control *p_overla } break; case WORLD_BOUNDARY_SHAPE: { - Ref shape = node->get_shape(); + Ref shape = current_shape; handles.resize(2); handles.write[0] = shape->get_normal() * shape->get_distance(); @@ -484,7 +484,7 @@ void CollisionShape2DEditor::forward_canvas_draw_over_viewport(Control *p_overla } break; case SEPARATION_RAY_SHAPE: { - Ref shape = node->get_shape(); + Ref shape = current_shape; handles.resize(1); handles.write[0] = Point2(0, shape->get_length()); @@ -494,7 +494,7 @@ void CollisionShape2DEditor::forward_canvas_draw_over_viewport(Control *p_overla } break; case RECTANGLE_SHAPE: { - Ref shape = node->get_shape(); + Ref shape = current_shape; handles.resize(8); Vector2 ext = shape->get_size() / 2; @@ -506,7 +506,7 @@ void CollisionShape2DEditor::forward_canvas_draw_over_viewport(Control *p_overla } break; case SEGMENT_SHAPE: { - Ref shape = node->get_shape(); + Ref shape = current_shape; handles.resize(2); handles.write[0] = shape->get_a();