i have built a space game. i am using numbers for the menu screen. when the user presses 1 i want 10 instances of a movieclip called blackhole to be added to the stage and when the user presses 2 i want 5 instances of the same movieclip to be added to the stage. This works as an easy and normal setting. However when the user presses 1 or 2 i get this error -
Error: Error #1023: Stack overflow occurred.
at spaceGameMobileMenuWorkingPublished_fla::MainTimeline/position()
at spaceGameMobileMenuWorkingPublished_fla::MainTimeline/position()
at spaceGameMobileMenuWorkingPublished_fla::MainTimeline/position() etc…
Here is my code -
stage.addEventListener(KeyboardEvent.KEY_DOWN, chooseStart);//adds an eventlistener to the stage to listen for a keyDown event
function chooseStart(evt:KeyboardEvent):void
{
if(evt.keyCode == 49)//listens for the 1 key
{
openingSoundSC.stop();//plays the openingSound
moon.visible = true;//shows the moon movieclip on the stage
for(i = 0; i < 10; i++)//executes the for loop for 10 times
{
blackHole.x = Math.random() * stage.stageWidth;
blackHole.y = Math.random() * stage.stageHeight;
position(blackHole);
blackHoles.push(blackHole);//stops blackholes overlapping
blackHoles.push(moon);//stops blackholes and moon overlapping
blackHoles.push(gameTimer_tb);//stops blackholes and gameTimer overlapping
blackHoles.push(lives_tb);//stops blackholes and lives_tb overlapping
blackHoles.push(spaceship_mc);//stops blackholes and spaceship_mc overlapping
addChild(blackHole);//add the blackhole to the stage
}
gravity = 1;//sets the gravity to 1
timer.start();//starts the timer
addChild(spaceship);//adds the spaceship to the stage
spaceship.x = 30;
spaceship.y = 20;//positions spaceship
removeChild(startButton);//removes startButton from stage
removeChild(easy);//removes easy button from stage
removeChild(hard);//removes hard button from stage
removeChild(exit);//removes exit button from stage
removeChild(splashScreen);//removes splashScreen from stage
removeChild(instructionsText);//removes//instructions text from stage
stage.removeEventListener(KeyboardEvent.KEY_DOWN, chooseStart);//removes the start event listener
}
else if(evt.keyCode == 50)//listens for the 2 key
{
moon.visible = true;
for(i = 0; i < 5; i++)//executes the for loop for 5 times
{
blackHole.x = Math.random() * stage.stageWidth;
blackHole.y = Math.random() * stage.stageHeight;
position(blackHole);
blackHoles.push(blackHole);
blackHoles.push(moon);
blackHoles.push(gameTimer_tb);
blackHoles.push(lives_tb);
blackHoles.push(spaceship_mc);
addChild(blackHole);
}
gravity = 1;
timer.start();
addChild(spaceship);
spaceship.x = 30;
spaceship.y = 20;
removeChild(instructionsText);
removeChild(startButton);
removeChild(easy);
removeChild(hard);
removeChild(exit);
removeChild(splashScreen);
stage.removeEventListener(KeyboardEvent.KEY_DOWN, chooseStart);
}
}
Can anyone help?