anchor.diff:  begin
     LoadStream.ReadAssert('CityPlanner');
     LoadStream.Read(fOwner);
  +  LoadStream.Read(fConstructedHouses);
     LoadStream.Read(fDefenceTowersPlanned);
     fForestsNearby.LoadFromStream(LoadStream);
   
  
positive.code:       begin
          // Snap to no-build areas (1 tile from house)
          if not (tpBuild in gTerrain.Land[aToY,aToX].Passability) then
            Inc(Result, 0)
          else if (AvoidBuilding > AVOID_BUILDING_FOREST_MINIMUM) then // Forest or coal etc.
            Inc(Result, 4)
          else
            Inc(Result, 2);
        end;
      end;
  end;
  
negative.code:         Placed := ((House <> nil) AND not House.IsDestroyed) OR gHands[fOwner].BuildList.HousePlanList.ExistPlan(Loc, HT);
          if Placed then // House was placed
          begin
            fConstructedHouses := fConstructedHouses + Byte((House = nil) OR not House.IsComplete);
            if (HT = ht_Woodcutters) AND (House <> nil) AND (House.IsComplete) then
              CheckWoodcutter(fPlannedHouses[HT].Plans[I], CheckChopOnly);
          end
  