【发布时间】:2013-08-10 00:01:16
【问题描述】:
我正在使用 FlashDevelop 在 as3 中制作游戏。
我有一个按钮类,当玩家与它发生碰撞时会被点击。没问题。点击检测正在工作,点击正在工作,这不是问题。我的按钮类的这个特定扩展在其上方有一个标签(特别是TextField),其中包含一个短字符串。
问题是当我将标签添加为孩子时,它会更改按钮的hitArea。 TextField 有一个更大的hitArea,我认为它覆盖了按钮本身的hitArea。
我正在寻找的解决方案(任何,不一定全部):
告诉
hitTestObject忽略按钮子级的hitArea的方法一种标签,这不会成为问题
一种重新覆盖按钮*的
hitArea的方法。
我已经编程了大约两年,所以我可以很好地理解建议,但我只自学了不到一个月的 as3。
*我知道在某些 Flash IDE 中,更改hitArea 非常容易,因为通常有一个简单的窗口可以进行更改。 FlashDevelop 更注重代码,这意味着所有MovieClip() 和Frame 恶作剧都已被抽象掉。我看到通过代码更改hitArea 的唯一方法是将其分配给Sprite,但这对我来说没有意义,尤其是在这种情况下,因为按钮在其底部延伸Sprite
提前谢谢大家。
我拼凑的一张快速截图。谢天谢地,我可以 TextField.border = true; 并显示确切的 hitArea
【问题讨论】:
标签: actionscript-3