请教一下随机数的问题,问题比较复杂
新手请教,我想做一个随机出现虫子从屏幕右边移动到左边,途中点击相应的虫子,虫子就消失.
function czinit(){
miceClimbOut();
}
function randRange(min:Number, max:Number):Number {
var randomNum:Number = Math.floor(Math.random() * (max - min + 1)) + min;
return randomNum;
}
function playHammer(mc){ //虫子消失
czxiaoshi_mc._x = mc._x-10;
czxiaoshi_mc._y = mc._y-12;
czxiaoshi_mc.gotoAndPlay(1);
}
function miceClimbOut(){
var randNum:Number = random(4);
trace("randNum"+randNum);
var mc = attachMovie("chongzi" + randNum, "mc" + i, i);
trace(mc);
defineMiceClimbOut(mc);
mc.onPress = function(){
playHammer(mc);
this.removeMovieClip();
}
}
setInterval(miceClimbOut,5000);
function defineMiceClimbOut(mc){ //虫子从右向左移动
mc._y = randRange(20,220);
mc._x = 480;
//trace("mc"+mc);
//trace("mc._y"+mc._y);
mc.onEnterFrame = function(){
if(this._x> -48){
this._x -= 4;
}else{
delete this.onEnterFrame;
}
}
}
czinit();
上面这段程序是随机出现一个虫子从右向左移动,点下虫子消失,但是还有问题(setInterval(miceClimbOut,5000);会自动刷新)。
如何能做到随即从出现几只虫子,然后点下相应的虫子虫子消失,别的虫子继续移动.
[解决办法]
setInterval是每隔5秒就执行函数,无限循环下去.
下面的代码就可以吧: 其实不太懂AS2..
var cID = setInterval(miceClimbOut,5000);
if(虫子数目>10)
{
clearInterval(cID);
}