As3.0 MVC - 如何将模型类传递给动画MovieClips?

时间:2013-09-05 15:22:30

标签: actionscript-3 flash model-view-controller flash-cs5 flash-cs5.5

我知道我知道。动作3. OOP。切勿使用时间轴代码。但实际上有时可以使用时间轴代码。作为一名中级程序员学习了mvc和opp的原则和智慧,我发誓永远不再使用时间轴代码。实际上,我根本不在fla文件的主时间轴中使用它。

然而,在最近与游戏中的一些硬核Flash动画师合作后,我想争辩说如果使用得当,动画动画片段的时间轴中的编码是可以接受的。一个显而易见的事是stop();命令。我实际上用它很多。我从不使用gotoAndStop()只是因为在脑海里想着“去玩”让我感到头晕目眩。无论如何,放置在帧中的不太常见的东西是gotoAndPlay(“anim_begin”)来制作循环。 似乎as3的摇摇晃晃的“addFrameScript”方法至少在我的经验中变得不可靠,所以我总是在这一行中添加一个框架以触发代码中的内容:

dispatchEvent(new Event("THING_THAT_HAPPENED", true));

无论如何,现在我正在做一个游戏,其中玩家的脚,基本上是一个嵌套的movieclip,需要在每个帧中检查它是否与代码中的Model.as类中保存的一组球相撞对于该项目。

我有没有办法将我的模型类中的数据“注入”到movieclip的框架中,以便我可以在此时间轴中使用此数组? 或者,如果你能想到一个更好的方法,那也是值得赞赏的。 谢谢, 吉姆

1 个答案:

答案 0 :(得分:0)

我不确定是否将数据发送到这样的帧脚本,但通常我不会让玩家对象处理自己的碰撞检查。发生碰撞时可能发生多种事情(玩家改变动画状态,但球轨迹可能也会改变,得分更新等)。

因此,让控制器进行碰撞测试通常会更好。它可以引用球阵列和脚MovieClip。

这有帮助吗?