I am guessing that you are not familiar with the code you are using and that you are borrowing it from somewhere without understanding what it does. There are a number of issues with your code.
If you look at your code you are declaring orbiter1 and orbiter2 variables at the beginning of the class.
private var orbiter1:Orbiter1;
private var orbiter2:Orbiter2;
But later on in the spawnOrbiters function when you are creating the instances you declare new variables using the same name.
for(var i:int=0; i <= this.orbiter1Num-1; i++) {
var orbiter1:Orbiter1;
for(var i:int=0; i <= this.orbiter2Num-1; i++) {
var orbiter2:Orbiter2;
By declaring them in the function they are limited in scope to within that function. They are not the same orbiters that were first declared. Your animate function is targeting the two that were first declared (but remain non-existent/null), not the numbers of them that were created in the spawn function.
The code that you have commented out in the Main function is the one that would be creating the orbiters that were first declared and that get targeted by your animate function.
Even if you were not declaring new instances in the spawn function, if you use the spawn function you are creating more orbiters than your code is designed to monitor. You would only be checking for hits for the last of each type of orbiter created, that last one assigned as orbiter1 and the last one assigned as orbiter2. If you want to have more than the two getting checked, you need to place your orbiters in an array as you spawn them and then loop thru that array in your animate function to check all of them.