我需要阻止在Action Script中彼此碰撞的兩個矩形。代碼我只能在二維情況下工作(只有X對X碰撞或Y對Y)。當我測試它是否在X軸和Y上發生碰撞時,它們會相互干擾。AS3二維矩形碰撞阻塞
功能collisionTest(OBJ1,OBJ2) {
var b1 = getBound(obj1);
var b2 = getBound(obj2);
if(((b1.x < b2.x + b2.width) && (b1.x + b1.width > b2.x)) && ((b1.y + b1.height > b2.y) && (b1.y < b2.y + b2.height)))
{
if(b1.x + b1.width > b2.x + b2.width)
obj1.x = b2.x + b2.width;
else if(b1.x < b2.x)
obj1.x = b2.x - obj1.width;
else if(b1.y < b2.y)
obj1.y = b2.y - obj1.height;
else if(b1.y + b1.height > b2.y + b2.height)
obj1.y = b2.y + b2.height;
}
}
如果有任何其他方式來測試碰撞並阻止它,那麼請告訴我,但我已經搜查在谷歌和stackoverflow,並沒有發現任何有用的阻止衝突,但我已經找到了很多關於他們的測試。