衝突判定はちょっと苦労しました。

衝突可能性のあるもの同士だけ判定するために、3,4回並べ替えとか配列の生成を繰り返してから、判定したりとか。

まだ簡単に説明できないので、いずれまた。