Я заметил, что при дублировании мувиклипа, я его добавляю в массив, то есть myArr.push(par).
Если через ENTER_FRAME дублируется много мувиклипов, то начинаются почти сразу же жесткие лаги.
То есть после добавления мувиклипа через addChild(par), ниже я прописываю myArr.push(par)
Хотя утечки памяти не наблюдается.
Вот простой пример моей механики:

Код AS3:
import flash.display.MovieClip;
var myArr:Array = [];
abc.startDrag(true);
var mymc:MovieClip = new MovieClip();
addChild(mymc);
init();
function init()
{
for (var i=0; i<25; i++)
{
var par:Particle = new Particle();
par.x = Math.random() * stage.stageWidth;
par.y = Math.random() * stage.stageHeight;
mymc.addChildAt(par,0);
myArr.push(par);
}
this.addEventListener(Event.ENTER_FRAME, hitTes);
}
function hitTes(e:Event):void
{
for (var j=0; j<myArr.length; j++)
{
if (abc.hitTestObject(myArr[j]))
{
if (myArr[j].parent)
{
myArr[j].parent.removeChild(myArr[j]);
}
}
}
}
Добавлено через 16 минут
С памятью все нормально, а вот ЦП начинает кушать ого-го
Пример кода:

Код AS3:
function startFire(evt: Event): void {
bullet = new Bullet();
mymc.addChildAt(bullet,0);
myArr.push(bullet); // Добавляем пули в массив - ЗАПИСЬ В МАССИВ СИЛЬНО ЗАГРУЖАЕТ ЦП
bullet.rotation = soldier.rotation + Math.random() * 20;
bullet.x = soldier.x + Math.cos(bullet.rotation * Math.PI / 180) * 25;
bullet.y = soldier.y + Math.sin(bullet.rotation * Math.PI / 180) * 25;
bullet.addEventListener(Event.ENTER_FRAME, bulletFire, false, 0, true);
}
}