2012-04-24 16 views
0

我试图做一个游戏,苹果下跌,但我不能为每个创建的影片剪辑设置间隔。当我用下面的代码创建它时,苹果的移动在另一个创建时停止。下降的影片剪辑的SetInterval

function FallAnApple() 
{ 
    _apple = "apple_" + _counter; 
    attachMovie("apple", _apple, _counter); 
    eval(_apple)._x = RandomX(); 
    eval(_apple)._y = -16; 

    setInterval(function(){eval(_apple)._y += 2;}, 100); 

    _counter += 1; 
} 

当我把苹果影片剪辑内的间隔,我无法访问this._y的区间内,但我可以创建电影本身内访问此值。

回答

1

只需在创建苹果时保存一个数组,然后在间隔激发时更改数组中每个苹果的坐标。

+0

确保在完成后调用clearInterval。只有一个,你不太可能造成内存泄漏,但更好的安全比对不起! – 2012-04-25 12:44:29

1

第一行覆盖_apple变量的内容。所以之后,两个时间间隔都在最新的苹果上运行。