在游戏100%加载后可以看到Flash /纯AS3预加载器

时间:2014-03-17 04:23:28

标签: actionscript-3 flash

首先,我想告诉我,我知道有数百个类似的问题,但其中大多数都是为舞台开发而制作的项目/游戏"。

我使用纯as3方法开发游戏。我没有使用* 主时间轴,我的项目只有1帧 *。

在我的主要类的构造函数中,我只在舞台上添加预加载器。

但是只有在游戏完全加载时才能看到我的预加载器。

我的问题很简单:"为什么?" "我该如何解决这个问题?"

- 当我尝试"取消选中"在第1帧导出as3,flash给出错误。(因为我的一些类是在主类上导入的。)

- 即使我创建第二帧并将游戏的每个内容都放在预加载器之外,问题仍然没有解决。

非常感谢你花时间阅读并帮助我。

-Ozan

1 个答案:

答案 0 :(得分:2)

要制作预加载器,您需要两个SWF或至少两个帧。即使FlashDevelop也能够使用两个帧,因此指令[frame factoryClass="ClassName"]public class Main之前的主AS文件中使用。这是Flash播放器的核心限制,也就是说,它首先加载第一帧,然后才能显示该帧。既然你说你只有一个框架,那么你的游戏必须100%(1/1帧)才能看到一个东西。

还有更多 - 如果你通过类名在第1帧引用某个类,那么所有依赖项的类都嵌入在同一个框架中(第一个),所以你再次搞砸了。要绕过这一点,从this instruction执行stepos 10到14以将类的帧设置为2(在执行指令时将2替换为10),清除除预加载器之外的所有类的“在第一帧中导出”,并将游戏主类的实例添加到关键帧2.然后在预加载器代码中执行适当的清理并执行gotoAndStop(2)