Browse Source

Merge pull request #48800 from madmiraal/fix-48788

Check if input marked handled before processing additional CollisionObjects
Rémi Verschelde 1 year ago
parent
commit
28b1678215
1 changed files with 3 additions and 0 deletions
  1. 3 0
      scene/main/viewport.cpp

+ 3 - 0
scene/main/viewport.cpp

@@ -819,6 +819,9 @@ void Viewport::_process_picking() {
 					sorter.sort(res, rc);
 					sorter.sort(res, rc);
 				}
 				}
 				for (int i = 0; i < rc; i++) {
 				for (int i = 0; i < rc; i++) {
+					if (is_input_handled()) {
+						break;
+					}
 					if (res[i].collider_id.is_valid() && res[i].collider) {
 					if (res[i].collider_id.is_valid() && res[i].collider) {
 						CollisionObject2D *co = Object::cast_to<CollisionObject2D>(res[i].collider);
 						CollisionObject2D *co = Object::cast_to<CollisionObject2D>(res[i].collider);
 						if (co && co->can_process()) {
 						if (co && co->can_process()) {