AS3 如何使这些对象无限循环?

AS3 How do I make these objects loop endlessly?

这是我到目前为止的代码,我正在尝试创建一个自上而下的汽车游戏,这是我目前拥有的代码,我目前正在尝试让汽车循环,但我正在努力寻找一种方法要做到这一点,请尝试帮助我解决代码问题,或者如果可以请为我指明正确的方向,并在此先感谢您

进口flashx.textLayout.utils.CharacterUtil;

var result:Number = Math.random() * 100
var randomX:Number = Math.random() * stage.stageWidth
var background = new Background;
var char = new Char();
var car1 = new Car1();
var car2 = new Car2();
var car3 = new Car3();
var car4 = new Car4();


car1.x = Math.random()* stage.stageWidth;
car2.x = Math.random()* stage.stageWidth;
car3.x = Math.random()* stage.stageWidth;
car4.x = Math.random()* stage.stageWidth;
background.x = 200;
char.x = 700/2;

car1.y = -0;
car2.y = -150;
car3.y = -300;
car4.y = -450;
background.y = 200;
char.y = 450;

addChild(background);
addChild(char);
addChild(car1);
addChild(car2);
addChild(car3);
addChild(car4);

char.gotoAndStop("car");

addEventListener(Event.ENTER_FRAME, fl_EnterFrameHandler);

function fl_EnterFrameHandler(event:Event):void
{
    car1.y +=12;
    car2.y +=12;
    car3.y +=12;
    car4.y +=12;
}


stage.addEventListener(KeyboardEvent.KEY_DOWN, fl_PressKeyToMove);

function fl_PressKeyToMove(event:KeyboardEvent):void
{
switch (event.keyCode)
{
case Keyboard.RIGHT:
{
char.x += 15;
if (char.hitTestObject(barrier1))
{
char.x -=15 ;
}
break;
}
case Keyboard.LEFT:
{
char.x -= 15;
if (char.hitTestObject(barrier2))
{
char.x +=15 ;
}
break;
}
}
}
stage.addEventListener(Event.ENTER_FRAME, detectCollision);
function detectCollision(event:Event)  {

       if(char.hitTestObject(car1))
       {
       char.gotoAndStop("boom");
       }
       if(char.hitTestObject(car2))
       {
       char.gotoAndStop("boom");
       }
       if(char.hitTestObject(car3))
       {
       char.gotoAndStop("boom");
       }
       if(char.hitTestObject(car4))
       {
       char.gotoAndStop("boom");
       }

}

如果你想让汽车像@onekidney 猜测的那样重新定位到屏幕顶部,你可以使用 % 运算符轻松地做到这一点:

function fl_EnterFrameHandler(event:Event):void
{
    car1.y = (car1.y + 12) % stage.stageHeight;
    car2.y = (car2.y + 12) % stage.stageHeight;
    car3.y = (car3.y + 12) % stage.stageHeight;
    car4.y = (car4.y + 12) % stage.stageHeight;
}

您可以在 documentation

中阅读有关模运算符的更多信息