Напиши так, возможно ситуация прояснится:

Код AS3:
craft.as
package {
import flash.display.Sprite;
import myclass.myglobal;
public class craft extends Sprite {
public function craft(){
trace("arr: " + myglobal.allCraftProperties);
trace("arr.length: " + myglobal.allCraftProperties.length);
trace("arr[1]: " + myglobal.allCraftProperties[1]);
trace(myglobal.allCraftProperties[1].craftType);
}
}
}
Если myglobal.allCraftProperties равен null или undefined - массив еще не инициализирован. Если myglobal.allCraftProperties.length равен нулю, то в массиве еще нет элементов.
Следовательно экземляр класса craft создается раньше, чем выполняется вот это:

Код AS3:
import myglobal;
import craftProperties;
myglobal.initArrays();
for (var i=0; i < 10 i++) {
var crfpropEnemy:craftProperties=new craftProperties();
crfpropEnemy.craftID=i;
crfpropEnemy.craftType=1;
crfpropEnemy.craftColor=0xFFFFFF;
myglobal.addCraftProp(crfpropEnemy);
}