示例#1
0
 public void Move(Vector2f direction)
 {
     if (direction != new Vector2f(0, 0))
     {
         float distance = MathHelper.DistanceToPoint(direction, dependent.GetCenter());
         if (distance > 2)
         {
             Vector2f directionTemp = new Vector2f(speed * (direction.X - dependent.GetCenter().X) / distance,
                                                   speed * (direction.Y - dependent.GetCenter().Y) / distance);
             Vector2f newPos = shape.Position;
             newPos        += directionTemp;
             shape.Position = newPos;
         }
     }
 }