1067:将类型Class的值隐式强制转换为不相关的类型flash.display:DisplayObject

时间:2012-04-05 16:48:54

标签: actionscript-3

例如,我有三个名为'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​​绘制了所谓的'Helicopter'^;

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

但是,我最初在Helicopter.fla文件中绘制了“Helicopter”符号(我现在删除了),现在我使用API​​绘制了“Helicopter”,我收到了这个错误;

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

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

1 个答案:

答案 0 :(得分:5)

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

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