as the engine only calculates 1 thing at a time, but so fast it seems they're done all at once, actually only 1 ball is colliding with the other, but the second one isn't as the first has been removed.
personally i don't use events and would just do
action ball_move()
{
while (!key_ctrl) wait (1); // wait until the player presses the [ctrl] key
while (me){
c_move(my, vector(50 * time_step, 0, 0), nullvector, GLIDE);
if(you){
ent_remove(you);
ent_remove(me);
}
wait (1);
}
}
hope this helps