0
我在XNA做了一個乒乓球比賽,我遇到了球碰撞的問題。 槳的側面正常工作,但頂部和底部是actring奇怪。我嘗試了很多東西,但仍然無法正常工作。 這是我當前的代碼:XNA Pong碰撞
protected override void Update(GameTime gameTime)
{
//Intersection
if (bPos.Intersects(p1Pos))
{
//top
//bottom
//middle
if (bPos.X <= p1Pos.X + p1Pos.Width)
bSpd.X = -bSpd.X;
}
if (bPos.Intersects(p2Pos))
{
//top
//bottom
//middle
if (bPos.X + bPos.Width >= p2Pos.X)
bSpd.X = -bSpd.X;
}
bPos.X = bPos.X + (int)bSpd.X;
bPos.Y = bPos.Y + (int)bSpd.Y;
if (bPos.Intersects(p1Pos))
{
//top
//bottom
//middle
if (bPos.X <= p1Pos.X + p1Pos.Width)
bSpd.X = -bSpd.X;
}
if (bPos.Intersects(p2Pos))
{
//top
//bottom
//middle
if (bPos.X + bPos.Width >= p2Pos.X)
bSpd.X = -bSpd.X;
}
base.Update(gameTime);
}
請將您的問題縮小到幾行... –
現在代碼少了,所以更容易閱讀 – victorheld