ok I have a game that at a certain point starts to omit particles, I give them motion through an event listener called moveParticles, however whenever I try to remove them from the display list, my program crashes,
ActionScript Code:
[LEFT][COLOR=#808080]*//EMITS PARTICLES*[/COLOR]
[COLOR=#0000FF]public[/COLOR] [COLOR=#000000]**function**[/COLOR] addParticles[COLOR=#000000]([/COLOR]x,y[COLOR=#000000])[/COLOR][COLOR=#000000]{[/COLOR]
[COLOR=#000000]**var**[/COLOR] particle:[COLOR=#0000FF]MovieClip[/COLOR];
[COLOR=#0000FF]for[/COLOR][COLOR=#000000]([/COLOR][COLOR=#000000]**var**[/COLOR] i:[COLOR=#0000FF]int[/COLOR] = [COLOR=#000080]0[/COLOR]; i < [COLOR=#000080]200[/COLOR]; i++[COLOR=#000000])[/COLOR][COLOR=#000000]{[/COLOR]
particle = [COLOR=#000000]**new**[/COLOR] [COLOR=#0000FF]MovieClip[/COLOR][COLOR=#000000]([/COLOR][COLOR=#000000])[/COLOR];
randomParticleX = [COLOR=#0000FF]Math[/COLOR].[COLOR=#0000FF]random[/COLOR][COLOR=#000000]([/COLOR][COLOR=#000000])[/COLOR] * [COLOR=#000080]60[/COLOR] - [COLOR=#000080]30[/COLOR];
randomParticleY = [COLOR=#0000FF]Math[/COLOR].[COLOR=#0000FF]random[/COLOR][COLOR=#000000]([/COLOR][COLOR=#000000])[/COLOR] * [COLOR=#000080]60[/COLOR] - [COLOR=#000080]30[/COLOR];
particle.[COLOR=#000080]movementX[/COLOR] = randomParticleX;
particle.[COLOR=#000080]movementY[/COLOR] = randomParticleY;
particle.[COLOR=#000080]x[/COLOR] = x;
particle.[COLOR=#000080]y[/COLOR] = y;
particle.[COLOR=#000080]graphics[/COLOR].[COLOR=#0000FF]lineStyle[/COLOR][COLOR=#000000]([/COLOR][COLOR=#000080]1[/COLOR][COLOR=#000000])[/COLOR];
particle.[COLOR=#000080]graphics[/COLOR].[COLOR=#0000FF]beginFill[/COLOR][COLOR=#000000]([/COLOR]0xFFFFFF[COLOR=#000000])[/COLOR];
particle.[COLOR=#000080]graphics[/COLOR].[COLOR=#000080]drawCircle[/COLOR][COLOR=#000000]([/COLOR][COLOR=#000080]0[/COLOR],[COLOR=#000080]0[/COLOR],[COLOR=#000080]2[/COLOR][COLOR=#000000])[/COLOR];
particle.[COLOR=#000080]graphics[/COLOR].[COLOR=#0000FF]endFill[/COLOR][COLOR=#000000]([/COLOR][COLOR=#000000])[/COLOR];
particle.[COLOR=#000080]addEventListener[/COLOR][COLOR=#000000]([/COLOR]Event.[COLOR=#000080]ENTER_FRAME[/COLOR],moveParticles[COLOR=#000000])[/COLOR];
particles.[COLOR=#0000FF]push[/COLOR][COLOR=#000000]([/COLOR]particle[COLOR=#000000])[/COLOR];
addChild[COLOR=#000000]([/COLOR]particle[COLOR=#000000])[/COLOR];
[COLOR=#000000]}[/COLOR]
[COLOR=#000000]}[/COLOR]
[COLOR=#0000FF]public[/COLOR] [COLOR=#000000]**function**[/COLOR] moveParticles[COLOR=#000000]([/COLOR]evt:Event[COLOR=#000000])[/COLOR][COLOR=#000000]{[/COLOR]
[COLOR=#000000]**var**[/COLOR] thisParticle = [COLOR=#000000]([/COLOR]evt.[COLOR=#0000FF]target[/COLOR] as [COLOR=#0000FF]MovieClip[/COLOR][COLOR=#000000])[/COLOR];
thisParticle.[COLOR=#000080]x[/COLOR] += thisParticle.[COLOR=#000080]movementX[/COLOR];
thisParticle.[COLOR=#000080]y[/COLOR] += thisParticle.[COLOR=#000080]movementY[/COLOR];
[COLOR=#0000FF]if[/COLOR][COLOR=#000000]([/COLOR]evt.[COLOR=#0000FF]target[/COLOR].[COLOR=#000080]x[/COLOR] >= [COLOR=#000080]1000[/COLOR] || evt.[COLOR=#0000FF]target[/COLOR].[COLOR=#000080]x[/COLOR] <= [COLOR=#000080]0[/COLOR] || evt.[COLOR=#0000FF]target[/COLOR].[COLOR=#000080]y[/COLOR] >= [COLOR=#000080]900[/COLOR] || evt.[COLOR=#0000FF]target[/COLOR].[COLOR=#000080]y[/COLOR] <=[COLOR=#000080]0[/COLOR][COLOR=#000000])[/COLOR][COLOR=#000000]{[/COLOR]
removeChild[COLOR=#000000]([/COLOR]thisParticle[COLOR=#000000])[/COLOR];
[COLOR=#000000]}[/COLOR]
[COLOR=#000000]}[/COLOR]
[/LEFT]