Tahminimce döngüyü kutuların çakışmamaları koşuluna bağlı olarak çalıştırıyorsun, Çakışma olduğunda döngü bitiyor ve animasyon tamamlanıyor.
Onun yerine, pencerenin kapanmasına bağlamalısın. Pencere kapanmadığı sürece, sürekli çalışmalı veya sen istediğinde durmalı.
Son olarakta karelerin çarpışmasındaki yön değişimlerini basitçe 2 kare çizerek çakışma yönüne göre artış miktarlarını nasıl değiştireceğini belirleyecek mantığı bulman gerek.
Ama yanılmıyorsam, karelerin merkezlerinin arasındaki mesafenin x ve y bileşenlerini bulman (mutlakları olarak alınmalı), daha sonra bu bileşenlerden büyük olanına göre artış miktarının işaretini değiştirmen gerekiyor.