First question : You're welcome

Second question : You can do it the same as I wrote above :
Code:
action assign_projectiles
{
.....
while (my != NULL)
{
moveMe();
checkCollision();
wait(1);
}
// or write all the above functions inside this action
}
With single action assign to different objects, each object
has their own movement and collision detection.
Third question : Sometimes, for example, you may refer to this
object within other actions, then you may need it.