anchor.diff:    end;
     _Detector.Radius := LinkDistance;
     if Assigned(ActionMenu) then ActionMenu.Position := Position;
  -  _Detector.Update;
     for j := 0 to _Detector.Detected.Count - 1 do
     begin
       Entity := _Detector.Detected[j];
  
positive.code:         if b.Links[i].SideA.Base <> b then bo := b.Links[i].SideA.Base
          else bo := b.Links[i].SideB.Base;
          d := b._PathSearchDist + (b.Position - bo.Position).Len;
          if (bo._PathSearchID < _SearchID) then
          begin
            bo._PathSearchDist := d;
            bo._PathSearchID := _SearchID;
  
negative.code:       _PathSearchList.Sort(@PathSearchCmp);
      end;
    end;
    if Assigned(found) then
    begin
      i := 0;
      b := found;
      while b <> Self do
      begin
        Inc(i);
        b := b._PathSearchSrc;
      end;
      SetLength(Result, i);
      b := found;
      while b <> Self do
      begin
        Dec(i);
        Result[i] := b;
        b := b._PathSearchSrc;
      end;
    end;
  end;
  
  class function TGameAsteroid.MakeObject(const NewTransform: TG2Transform2;
  