2017-07-16 73 views
0

我想知道如何防止两个正方形(绘制在Graphics2D中)相交。其中一个正方形可以用WASD控制,另一个正方形是静止的。当我从任何一侧(顶部,底部,左侧,右侧)将可控制的方形“推”到静止的方形上时,我希望静止的方形起到障碍物的作用。防止Graphics2D中的矩形冲突?

if ((userYC > (squareList.get(i).y - 50) && userYC < (squareList.get(i).y + 50) && userXC > (squareList.get(i).x - 50) && userXC < (squareList.get(i).x + 50))) { 
     brush.drawString("INTRUDING", 10, 125); 
} 

正方形由其左上角的X和Y坐标以及宽度和高度定义。我将宽度和高度设置为50.在上面的代码中,我可以检测到正方形相交的时间。但是,我不知道我该如何去阻止它们发生碰撞。

+0

只需在移动前检查碰撞情况,如果碰撞,不要让玩家移动。 – Carcigenicate

+0

如果玩家从上方击中静止的广场,我仍然希望能够将它“左右滑动”。不会让玩家失败呢? – micahfisher

+0

你想让玩家在碰撞的时候推动其他块吗? – Carcigenicate

回答

0

没关系,Carcigenicate帮我弄明白了。当我处理击键时,我最终预测了碰撞,如果他们指出了某种碰撞,我就撤回了这个过程。