好的,所以我在电影剪辑中有一堆简单的形状......
然而,我的“水平”各自都在他们自己的影片剪辑中......
有时在关卡中我必须动态实例化这些随机影片剪辑并创建多个实例,所以生病了就像
//this up top
var hexagonOne:hexagonOne;
//then this when i need a new one, i need to do it like this so i can make multiple instances...
hexagonOne = new hexagonOne();
这很棒......但是......
现在在我的“二级”电影剪辑中的另一个影片剪辑
我确实采用了同样精确的代码,这在第一级工作......但现在它不适用于其他影片剪辑......
每当我尝试hexagonOne = new hexagonOne();
或尝试实例化的其他形状影片剪辑时,我都会收到此错误。
Symbol 'lvl1-2', Layer 'Layer 2', Frame 1, Line 99 1180: Call to a possibly undefined method hexagonOne.
我不明白,因为它在其他影片剪辑中工作得很好,就像这个......这没有任何意义。
编辑: 想通了,我的结局是愚蠢的错字。
答案 0 :(得分:1)
如果您的库中有一个名为“hexagonOne”的AS Linkage的符号,这是有道理的:
var hexagonOne:hexagonOne;
hexagonOne = new hexagonOne();
从时间轴,您定义一个局部变量hexagonOne
并使用类型hexagonOne
实例化该实例。
如果您没有在不同的范围内定义变量var hexagonOne
,那么它是未知的。
对于初学者来说,将符号的命名约定定义为HexagonOne
可能会有所帮助,然后骆驼就像你的变量一样。
var hexagonOne:HexagonOne;
hexagonOne = new HexagonOne();
如果每个级别的MovieClip需要添加一个hexagonOne
对象,则每个对象都应定义var hexagonOne:hexagonOne
并使用new关键字对其进行实例化。
如果这没有用,或许你应该更多地引用你试图用你的libary / class / code实现的具体内容来完成的事情。