I think my English vocabulary is not enough to explain it, but I'll make efforts.
#1: When an impact is applied, rotate circle 1 around circle 2 with velocity vectors until the line connecting center of circle 1 with circle 2 overlaps X axis.
#2: Swap X components of velocity vectors of 2 circles.
#3: Restore #1 to original status.
0そうだね 未プレイ