protected override void Update(GameTime gameTime) { MouseState mouState = Mouse.GetState(); mouseLocation = new Vector2(mouState.X, mouState.Y); if (mouState.LeftButton == ButtonState.Pressed) { float dist = Vector2.Subtract(mouseLocation, a.location).Length(); if (dist < a.radius) { a.selected = true; mouseWasPressed = true; a.location = mouseLocation; } } if (mouState.LeftButton == ButtonState.Released && mouseWasPressed == true) { a.selected = false; mouseWasPressed = false; } Vector2 force = a.attract(m); m.applyForce(force); m.update(); base.Update(gameTime); }