ActionScript 3.0更改方向

时间:2011-12-18 06:28:16

标签: actionscript-3

好吧,让我说清楚。我只是出于兴趣。这不是作业。我这样做是因为我有兴趣编写ActionScript。我看到一个人网站做了一些惊人的事情,所以我试图复制,我想这样做:

哦顺便说一下,你需要制作一个符号,需要为ActionScript导出,类名是“ball”。按钮的即时名称是:bButton。所以这是我到目前为止写的脚本。

var boundaryRight:Number = stage.stageWidth;
var boundaryLeft:Number = 0;
var balls:Array;
var reverseRight:Number = 0;
var reverseLeft:Number = stage.stageWidth;

init();

function init(){
    balls = new Array();
    for(var i:Number = 0; i<10; i++){
        var myBall:ball = new ball();
        myBall.x=(Math.random()*boundaryRight);
        myBall.y=50+i*40;
        addChild(myBall);
        balls.push(myBall);
    }
}

addEventListener(Event.ENTER_FRAME,moveBall);

function moveBall(e:Event){
    for(var i:Number = 0;i<10;i++){
        var myBall:ball = balls[i];
        myBall.x-=20;
        if(myBall.x<boundaryLeft){
            myBall.x=boundaryRight;
        }
    }
}

正如你所看到的那样,代码使多个球向左移动并一遍又一遍地循环。所以这就是我想要做的。我想制作一个按钮,当我点击按钮时,它会像点击一样改变方向,它会改变方向。我再次点击它,它会再次离开。我该如何编写代码?

1 个答案:

答案 0 :(得分:2)

使用两个全局变量方向和速度。

var direction:Number = 1; var speed:Number = 20;

而不是给myBall.x- = 20;

提供 myBall.x + =(方向*速度);

在按钮的点击处理功能

提供方向* = -1;

你也可以像这样改变速度。