Arrays 在屏幕上随机生成图像,如何使其在一定数量后循环

Arrays 在屏幕上随机生成图像,如何使其在一定数量后循环,arrays,random,timer,addchild,Arrays,Random,Timer,Addchild,因此,我正在创建一个项目,在背景中,我希望星星随机出现并从屏幕上消失 我有随机出现的星星,但它们只是停留在屏幕上,最终用星星填满整个屏幕。我想它开始删除1颗星,并添加另一个当屏幕上有100颗星。甚至在开始时屏幕上有100颗星,计时器每次只删除并添加1颗星 所以我在随机时间在舞台上随机添加mystar,只需要删除1个,同时添加mystar,这样就不会完全覆盖我的尖叫 var myTimer:Timer = new Timer(2,0 ); var randNum = Math.round( 500

因此,我正在创建一个项目,在背景中,我希望星星随机出现并从屏幕上消失

我有随机出现的星星,但它们只是停留在屏幕上,最终用星星填满整个屏幕。我想它开始删除1颗星,并添加另一个当屏幕上有100颗星。甚至在开始时屏幕上有100颗星,计时器每次只删除并添加1颗星

所以我在随机时间在舞台上随机添加mystar,只需要删除1个,同时添加mystar,这样就不会完全覆盖我的尖叫

var myTimer:Timer = new Timer(2,0 );
var randNum = Math.round( 500 + Math.random() * 4000 );
myTimer.addEventListener(TimerEvent.TIMER, fasttimerListener);

function fasttimerListener (e:TimerEvent):void{

var timerObj:Timer = e.target as Timer;
randNum = Math.round( Math.random() * 100 );
timerObj.delay = randNum;

var mystar:smallstar = new smallstar();
mystar.x = Math.random() * stage.stageWidth;
mystar.y = Math.random() * stage.stageHeight;
addChild(mystar);

}

myTimer.start();
请帮忙,我想我可能需要使用数组?但在as3方面不太好。
提前感谢。

这是我在尝试解决您的问题后产生的代码,是的,我使用了数组:

var myTimer:Timer = new Timer(2,0 );
var randNum = Math.round( 500 + Math.random() * 4000 );

var starsCount:int = 100; //stars number in stage  

var st:int=0; //star inde number in Array


//---------------------------------------------------------------
//creating an Array of 100 mc stars
//---------------------------------------------------------------
var starsArray:Array=[];  //Array of movieclips smallstar

//using for loop to create 100 stars and put them in Array
for(var star:int=0; star<starsCount; star++){ 
    var mystar:smallstar = new smallstar();

    //puts mc smallstar on Array
    starsArray.push(mystar);
}


myTimer.addEventListener(TimerEvent.TIMER, fasttimerListener);

function fasttimerListener (e:TimerEvent):void{

var timerObj:Timer = e.target as Timer;
randNum = Math.round( Math.random() * 100 );
timerObj.delay = randNum;

starsArray[st].x = Math.random() * stage.stageWidth;
starsArray[st].y = Math.random() * stage.stageHeight;
addChild(starsArray[st]);
st++; //changing star index on array

//doesnt let st to be bigger than Array length
if (st>=starsArray.length) st = 0; 
}

myTimer.start();
var myTimer:Timer=新定时器(2,0);
var randNum=Math.round(500+Math.random()*4000);
var starsCount:int=100//舞台上的明星数量
var-st:int=0//数组中的星索引数
//---------------------------------------------------------------
//创建一个由100颗mc星组成的阵列
//---------------------------------------------------------------
var starsArray:Array=[]//电影明星阵容
//使用for循环创建100颗星并将它们放入阵列中
对于(var-star:int=0;star=starsArray.length)st=0;
}
myTimer.start();

希望能有所帮助。

要移除星星,你必须知道它的位置以及之前的位置。