我有object1(纹理),它在我的手指下移动我想要的。 但我不知道如何设置object2(纹理)的条件以产生推动效果。 Object1的大小:128x64,Object2:128x128。 到目前为止,我在x轴上运行良好。在y轴没有效果。
if(gameObject1.overlaps(gameObject2)){
if(gameObject1.x<gameObject2.x&&gameObject1.y<gameObject2.y+128&&gameObject1.y>gameObject2.y-64){
gameObject2.x+=16;
}else
if(gameObject1.x>gameObject2.x&&gameObject1.y<gameObject2.y+128&&gameObject1.y>gameObject2.y-64){
gameObject2.x-=16;
}
if(gameObject1.y<gameObject2.y&&gameObject1.x>=gameObject2.x&&gameObject1.x+128<=gameObject2.x){
gameObject2.y+=16;
}else
if(gameObject1.y>gameObject2.y&&gameObject1.x>=gameObject2.x&&gameObject1.x+128<=gameObject2.x){
gameObject2.y-=16;}
在y轴的陈述中,我删除了一些x条件:
if(gameObject1.y<gameObject2.y)
{ gameObject2.y+=16; }
else
if(gameObject1.y>gameObject2.y)
{ gameObject2.y-=16;}
现在正在向下斜向上移动,但在x&amp; y轴上不是街道
答案 0 :(得分:0)
在y轴效果的陈述中,你必须符合相同的条件:
gameObject1.x>=gameObject2.x
gameObject1.x+128<=gameObject2.x
如果你的某个条件是假的,那么你的y位置永远不会有任何影响,所以也许检查一下。我没有尝试理解你的逻辑,也许问题在你的逻辑条件下。