1

例如,我有三个名为“Helicopter.as、Game.as、Blue.as”的 .as 文件,还有一个名为 Helicopter.fla 的 .fla 文件(这些文件都假设链接在一起,以使直升机游戏)。在 Game.as 文件中,我有以下内容;

if (blue1.hitTestObject(Helicopter))

                {
                    trace("YOU HIT THE BLOCK!");

                    Helicopter.x = 76;
                    Helicopter.y = 217;
                }

我使用此代码在名为 Helicopter.as 的不同文件中使用 API 绘制了所谓的“直升机”^;

        graphics.beginFill(0x00FF00);
        graphics.drawCircle(0, 60, 35);
        graphics.endFill();

但是,我最初在 Helicopter.fla 文件中绘制了“直升机”符号(我现在已将其删除),现在我使用 API 绘制了“直升机”,我得到了这个错误;

 ''1067: Implicit coercion of a value of type Class to an unrelated type flash.display:DisplayObject.''

Flash 无法识别原始的 Helicopter 符号(在 Helicopter.fla 文件中,因为我删除了它)。但我希望系统检测使用 API 绘制的“圆”(在 Helicopter.as 文件中)。而且我不知道如何将 API 绘制的圆圈命名为“直升机”,因此出现错误。那么如何将 API 圈命名为“直升机”,以便 Game.as 文件识别它。如果您不知道我在说什么,请不要担心,因为我也不知道。谢谢你。如果你愿意,我可以粘贴到目前为止我所做的所有代码。

4

1 回答 1

5

Helicopter是一个类而不是一个变量,因此你不能分配Helicopter.x. 您需要创建一个变量var heli:Helicopter = new Helicopter();并使用heli.x

也可能是您没有遵循编程标准,Helicopter实际上是一个变量而不是一个类,尽管错误似乎表明并非如此。

于 2012-04-05T16:55:32.973 回答