2012-10-15 46 views
1

我目前工作的一个启动游戏闪光灯:如何显示出影片剪辑阶段界在ActionScript 3

  1. 英雄抛出在空中,然后进行长距离棍子,打击各种的物体。
  2. 而棒使得其飞行,英雄的狗后运行,击中各种实物等...

我的问题:我想,你跟着棍子在屏幕水平分割屏幕的上半部分,然后沿着屏幕下方的狗跟踪。

现在我已经实施了棒动作。从技术上来说,一旦坐标位于舞台中心,摇杆只能移动到舞台中央,其它所有物体都会根据摇杆的x和y速度移动。

现在我的问题是:我该如何管理狗的显示?我希望我能找到一些创建一种视口的类,允许我显示远离舞台边界的对象,但到目前为止我没有找到我需要的东西。

我能想到的唯一解决方案是创建每个动画片段的两个实例,无论何时添加到我的舞台,并添加副本作为另一个动画片段的孩子,在转换后的x和y坐标),但我会做任何事情两次(例如:如果棒破坏了某些东西,它的副本也必须销毁)。

有关如何在不折磨我的球员处理器(并危及我自己的理智)的情况下做到这一点的任何想法?

回答

0

您的问题的一种可能的解决方案是blitting,它是从DisplayObject中绘制像素,类似于您看到的here

另一个(它可能会长期为您服务并且不需要与第一个相互排斥),就是让使数据驱动整个事物。您只需构建两个不同的视图,即可以获取相同的数据或不同的数据子集,然后根据自己的规则表示数据。

当一个对象从数据中消失时,其表示同时从两个视图中消失。从技术上讲,你可能还在做两次这样的工作,但是如果你对编写类的方式很敏感,这并不一定意味着额外的代码。

最后,您可能要考虑使用scrollRect

相关问题