anchor.diff:    // New Unit
     if (NewToHouse = nil) and (NewToUnit <> nil) then
     begin
  -    fToUnit := NewToUnit.GetUnitPointer;
  +    ToUnit := NewToUnit.GetUnitPointer; //Use Setter here to clean up fPointBelowToHouse
       fDeliverKind := dkToUnit;
       Result := True;
       if fPhase > 4 then
  
positive.code:   // New House
    if (NewToHouse <> nil) and (NewToUnit = nil) then
    begin
      fToHouse := NewToHouse.GetHousePointer;
      if fToHouse.IsComplete then
        fDeliverKind := dkToHouse
      else
  
negative.code: begin
    fFrom := aFromHouse;
    fPointBelowFromHouse := aFromHouse.PointBelowEntrance; //save that point separately, in case fFrom will be destroyed
  end;
  
  
  procedure TKMTaskDeliver.SetToUnit(aToUnit: TKMUnit);
  begin
    fToUnit := aToUnit;
    fPointBelowToHouse := KMPOINT_INVALID_TILE; //clean fPointBelowToHouse since we are going to Unit now
  end;
  
  
  