void ParticleUpdate() { switch (collisionObject.Shape) { case CollisionShapes.Rectangle: { Rectangle rect = (Rectangle)collisionObject.Bounds; rect.X = (int)particlePhysics.Position.X - rect.Width / 2; rect.Y = (int)particlePhysics.Position.Y - rect.Height / 2; collisionObject.SetBounds(rect); } break; case CollisionShapes.Circle: { BoundingCircle circle = (BoundingCircle)collisionObject.Bounds; Vector2 center = new Vector2(particlePhysics.Position.X, particlePhysics.Position.Y); circle.Center = center; collisionObject.SetBounds(circle); } break; } }