我刚开始将游戏移植到slick2d,我希望我的实体互相碰撞
我知道shapeA.intersects(shapeB)
检查两个形状是否相交但是我希望它们碰撞,这样它们就不会相互重叠了。
如果形状只是矩形,我会很容易,但事实并非如此
那么有没有办法以高效的方式执行此操作?
答案 0 :(得分:0)
希望我的问题是对的。
要做到这一点,你需要对你的游戏实施碰撞。实现此目的的一种方法是假设您的形状例如 x 协调其当前位置的头部。
这意味着你必须检查两个形状在移动时是否相互交叉,如果它们在下一个移动时相交,则不允许移动头部,否则它们显然会交叉或碰撞。您可以完全根据自己的需要调整这种方法,例如,您可以让它们发生碰撞,然后将它们重新设置,这样它们就不会相互卡在一起。
有很多关于这个主题和不同方法的教程,你应该检查一下。