Fix another collision shape editor crash
(cherry picked from commit 01c32dffaf
)
This commit is contained in:
parent
fdf66b3472
commit
c8d64e8580
@ -436,7 +436,7 @@ void CollisionShape2DEditor::forward_canvas_draw_over_viewport(Control *p_overla
|
|||||||
|
|
||||||
switch (shape_type) {
|
switch (shape_type) {
|
||||||
case CAPSULE_SHAPE: {
|
case CAPSULE_SHAPE: {
|
||||||
Ref<CapsuleShape2D> shape = node->get_shape();
|
Ref<CapsuleShape2D> shape = current_shape;
|
||||||
|
|
||||||
handles.resize(2);
|
handles.resize(2);
|
||||||
float radius = shape->get_radius();
|
float radius = shape->get_radius();
|
||||||
@ -451,7 +451,7 @@ void CollisionShape2DEditor::forward_canvas_draw_over_viewport(Control *p_overla
|
|||||||
} break;
|
} break;
|
||||||
|
|
||||||
case CIRCLE_SHAPE: {
|
case CIRCLE_SHAPE: {
|
||||||
Ref<CircleShape2D> shape = node->get_shape();
|
Ref<CircleShape2D> shape = current_shape;
|
||||||
|
|
||||||
handles.resize(1);
|
handles.resize(1);
|
||||||
handles.write[0] = Point2(shape->get_radius(), 0);
|
handles.write[0] = Point2(shape->get_radius(), 0);
|
||||||
@ -467,7 +467,7 @@ void CollisionShape2DEditor::forward_canvas_draw_over_viewport(Control *p_overla
|
|||||||
} break;
|
} break;
|
||||||
|
|
||||||
case WORLD_BOUNDARY_SHAPE: {
|
case WORLD_BOUNDARY_SHAPE: {
|
||||||
Ref<WorldBoundaryShape2D> shape = node->get_shape();
|
Ref<WorldBoundaryShape2D> shape = current_shape;
|
||||||
|
|
||||||
handles.resize(2);
|
handles.resize(2);
|
||||||
handles.write[0] = shape->get_normal() * shape->get_distance();
|
handles.write[0] = shape->get_normal() * shape->get_distance();
|
||||||
@ -479,7 +479,7 @@ void CollisionShape2DEditor::forward_canvas_draw_over_viewport(Control *p_overla
|
|||||||
} break;
|
} break;
|
||||||
|
|
||||||
case SEPARATION_RAY_SHAPE: {
|
case SEPARATION_RAY_SHAPE: {
|
||||||
Ref<SeparationRayShape2D> shape = node->get_shape();
|
Ref<SeparationRayShape2D> shape = current_shape;
|
||||||
|
|
||||||
handles.resize(1);
|
handles.resize(1);
|
||||||
handles.write[0] = Point2(0, shape->get_length());
|
handles.write[0] = Point2(0, shape->get_length());
|
||||||
@ -489,7 +489,7 @@ void CollisionShape2DEditor::forward_canvas_draw_over_viewport(Control *p_overla
|
|||||||
} break;
|
} break;
|
||||||
|
|
||||||
case RECTANGLE_SHAPE: {
|
case RECTANGLE_SHAPE: {
|
||||||
Ref<RectangleShape2D> shape = node->get_shape();
|
Ref<RectangleShape2D> shape = current_shape;
|
||||||
|
|
||||||
handles.resize(8);
|
handles.resize(8);
|
||||||
Vector2 ext = shape->get_size() / 2;
|
Vector2 ext = shape->get_size() / 2;
|
||||||
@ -501,7 +501,7 @@ void CollisionShape2DEditor::forward_canvas_draw_over_viewport(Control *p_overla
|
|||||||
} break;
|
} break;
|
||||||
|
|
||||||
case SEGMENT_SHAPE: {
|
case SEGMENT_SHAPE: {
|
||||||
Ref<SegmentShape2D> shape = node->get_shape();
|
Ref<SegmentShape2D> shape = current_shape;
|
||||||
|
|
||||||
handles.resize(2);
|
handles.resize(2);
|
||||||
handles.write[0] = shape->get_a();
|
handles.write[0] = shape->get_a();
|
||||||
|
Loading…
Reference in New Issue
Block a user