如何处理flash/flex中遮挡(重叠)显示对象上的鼠标事件



我的问题与之前关于重叠精灵/电影剪辑的问题有点类似。但我的要求与他们略有不同。

我想处理舞台上所有精灵的鼠标事件,包括那些隐藏在后面(或重叠或遮挡)的精灵,主要条件是我想处理被遮挡的精灵(隐藏在其他精灵后面)。例如,假设我在舞台上有sprite1和sprite2,我想在每次点击精灵时开始拖动,并在再次点击后停止拖动。

这很容易做到,但问题和我的主要要求是,如果我拖动sprite1并将其放在sprite2的顶部,那么sprite2就会隐藏在sprite1的后面,我无法在不移动sprite1的情况下拖动sprite2。如果你在facebook上玩zynga的游戏帝国和阿莱,seperatly处理,这是它是如何工作的,游戏,鼠标事件触发背后的雪碧重叠的精灵,如果你有两个精灵重叠一个雪碧比鼠标触发事件最后的精灵,而不是一个不管前面是否有只有一个雪碧重叠或两个或三个,这发生在不规则形状的精灵(不仅仅是矩形)

如果有人能告诉我zynga是如何实现这一点的,或者帮助我找到实现这一点的方法,那将是很大的帮助

谢谢

一种可能是游戏没有听取来自每个独立精灵的点击事件。

在编程游戏时,你通常会执行一个网格系统。如果是这种情况,程序员就拥有了所有精灵在网格中的位置记录。然后,程序员可以监听整个网格渲染器上的点击,并根据网格记录引用鼠标位置来计算所选对象。

相关内容

  • 没有找到相关文章

最新更新