我有一个问题,我有潜在的解决方案。但我想确认是否有一种简单易行的方法来解决我的问题。
应用类型:
等距游戏
问题陈述:
我在我的 Flash 应用程序中加载图像并附加了鼠标事件。
我加载的图像是道具图像,如车辆、树木、建筑物等,它们都是透明的。
示例:红球资产(请忽略我用于描述问题的黄色背景)
如果我点击实际的图像区域(红色),那么一切都很完美
当我单击空白图像部分(或透明区域,我以黄色显示)时,我不想触发 mouseevent
我知道一种方法是在 Flash 中创建蒙版。我不想这样做,除非那是最后的选择,因为我加载图像资产而不是 Flash 资产,并且我不想为所有资产创建新的蒙版资产
我将采用另一种方法,即使用 Bitmap 的 getPixel 方法。这里讨论。
但是这种方法还有另一个问题。
当我单击资产的空白部分时,我可能能够忽略单击事件,但如果在同一位置的图像后面有其他资产,那么我需要处理被遮挡图像的单击事件。
好吧,考虑到这个问题的解决方案将我带到了getObjectsUnderPoint,在那里我可以扫描被遮挡的资产