Actionscript 3 跟踪动画球

Actionscript 3 跟踪动画球,actionscript-3,Actionscript 3,在这个项目中,我试图追踪一个球。如果球的颜色是灰色的,我希望它周围有一个正方形。我的问题是,只有一个球被跟踪。我想追踪所有的灰球 如果有人能帮我,我会非常感激的 下面是代码(Ball和Box是从外部类调用的): 包{ 导入flash.display.Sprite; 导入flash.events.Event; 导入flash.geom.Point; [SWF(帧率='31')] 公共类Main扩展了Sprite { 私有变量球:数组; 私有变量方向:数组=[新点(-1,-1),新点(0,-1),新

在这个项目中,我试图追踪一个球。如果球的颜色是灰色的,我希望它周围有一个正方形。我的问题是,只有一个球被跟踪。我想追踪所有的灰球

如果有人能帮我,我会非常感激的

下面是代码(Ball和Box是从外部类调用的):

包{
导入flash.display.Sprite;
导入flash.events.Event;
导入flash.geom.Point;
[SWF(帧率='31')]
公共类Main扩展了Sprite
{
私有变量球:数组;
私有变量方向:数组=[新点(-1,-1),新点(0,-1),新点(1,-1),
新点(-1,0),新点(1,0),
新点(-1,1)、新点(0,1)、新点(1,1)
];
私有变量ballNum:Number=10;
私人var球:球;
私人var Ball 2:Ball;
专用var箱:箱;
私有变量ay:数字=5;
私有变量重力:数字=6;
私人var反弹:数字=-0.9;
公共功能Main()
{
init();
}
私有函数init():void
{
balls=新数组();
对于(变量i:Number=0;i
您需要在for循环中检查颜色,以检查所有球:

for (var i: int = 0; i < balls.length; i++) {
    balls[i].x += balls[i].direction.x;
    balls[i].y += balls[i].direction.y;

    if (balls[i].color == 0xcccccc) {
        box.x = balls[i].x - box.width / 2;
        box.y = balls[i].y - box.height / 2;
    }
}
for(变量i:int=0;i
您需要在for循环中检查颜色,以检查所有球:

for (var i: int = 0; i < balls.length; i++) {
    balls[i].x += balls[i].direction.x;
    balls[i].y += balls[i].direction.y;

    if (balls[i].color == 0xcccccc) {
        box.x = balls[i].x - box.width / 2;
        box.y = balls[i].y - box.height / 2;
    }
}
for(变量i:int=0;i
在一个帧间函数结束后,您只有一个框,一个框只能有一个x和y

试着这样做:

for (var i: int = 0; i < balls.length; i++) {
    balls[i].x += balls[i].direction.x;
    balls[i].y += balls[i].direction.y;

    if (balls[i].color == 0xcccccc) {
        box[i].x = balls[i].x - box[i].width / 2;
        box[i].y = balls[i].y - box[i].height / 2;
        //OR balls[i].box.visible=true;
    }
}
for(变量i:int=0;i
在一个帧间函数结束后,您只有一个框,一个框只能有一个x和y

试着这样做:

for (var i: int = 0; i < balls.length; i++) {
    balls[i].x += balls[i].direction.x;
    balls[i].y += balls[i].direction.y;

    if (balls[i].color == 0xcccccc) {
        box[i].x = balls[i].x - box[i].width / 2;
        box[i].y = balls[i].y - box[i].height / 2;
        //OR balls[i].box.visible=true;
    }
}
for(变量i:int=0;i
如何更改颜色?目前颜色仅设置为灰色。如何更改颜色?目前颜色仅设置为灰色。我仍然有一个问题,您能否帮助我使用其他代码来帮助它工作?@Scope,请参阅此fla:@Scope,如果您认为此答案适合您,您可以通过单击答案左侧的勾号来接受它。@Pan感谢您的回复,但它仍然只跟踪其中一个球。我仍然有问题,您不能帮我使用其他代码来帮助它工作吗?@Scope,请参阅此fla:@Scope,如果您认为此答案适合您,您可以通过单击答案左侧的勾号来接受它。@Pan感谢您的回答,但它仍然只跟踪其中一个球