Просмотр исходного кода

Fix missed contacts

Correct contact pos by maximum scaling in order to maximize chance to
intersect with brick.
DricomDragon 3 лет назад
Родитель
Сommit
c22ec44f7e
1 измененных файлов с 2 добавлено и 2 удалено
  1. 2 2
      godot/scripts/Ball.gd

+ 2 - 2
godot/scripts/Ball.gd

@@ -9,7 +9,7 @@ signal kace_contact
 
 const brick_layer = 2
 const interrupt_speed = 700
-const contact_corrector = 3.0
+const cell_size = Vector2(20, 10)
 
 
 func interrupt_ball():
@@ -27,7 +27,7 @@ func _integrate_forces(state :  Physics2DDirectBodyState):
 	for i in range(state.get_contact_count()):
 		var contact_pos = state.get_contact_local_position(i)
 		var contact_normal = state.get_contact_local_normal(i)
-		var correct_pos = contact_pos - contact_normal * contact_corrector
+		var correct_pos = contact_pos - contact_normal * cell_size
 		emit_signal("kace_contact", correct_pos)