所以我正在开发一款游戏,如果你碰到一个盒子的一侧,你就会被推向那个方向。 *例如:假设我按下了左侧侧面,我应该将推进到左侧。
我可以这样做的一种方法是将盒子分成4个实例,其中每个实例位于左侧,右侧,顶部和顶部。底边。 有没有办法嵌入实例的实例/访问部分等等。
或如果有更好的方法可以告诉我怎么做?
答案 0 :(得分:2)
我想你问题的答案是肯定的;您想要做的是拥有一个容器MovieClip,其中包含4个内部MovieClip,它们将成为您的目标。
我会选择以下设置;即使用三角形。
------------
|\ top /|
| \ / |
| \ / |
| \ / r|
|left\/ i|
| /\ g|
| / \ h|
| / \ t|
| / \ |
|/ bottom \|
------------
如果你是按照坐标来做的,就像亚当哈特提到的那样,把它当作一个9切片网格处理。如果您想象中心框超大,那将为您提供最大的命中区域。
-----------------
| | | |
| | T | |
-----------------
| | | |
| L | | R |
| | | |
-----------------
| | B | |
| | | |
-----------------
答案 1 :(得分:1)
您可以在触摸时测试盒子内部触摸的x和y位置。像这样的伪代码:
function onTouchDown(){
if(touchX < halfBoxWidth)
{
// We touched the left side, so go left.
}
else
{
// We touched the right side, so go right.
}
}