anchor.diff:  //  Ter: Word;
   //  TerInfo: TKMGenTerrainInfo;
   begin
  -  Result := TileHasParameter(Loc.X, Loc.Y, fTileset.TileIsWalkable);
  +  Result := TileHasParameter(Loc.X, Loc.Y, fTileset.TileIsWalkable, True);
   //  Result := fTileset.TileIsWalkable(Land[Loc.Y, Loc.X].BaseLayer.Terrain);
   //  for L := 0 to Land[Loc.Y, Loc.X].LayersCnt - 1 do
   //  begin
  
positive.code: //  Ter: Word;
  //  TerInfo: TKMGenTerrainInfo;
  begin
    Result := TileHasParameter(Loc.X, Loc.Y, fTileset.TileIsRoadable, False);
  //  Result := fTileset.TileIsRoadable(Land[Loc.Y, Loc.X].BaseLayer.Terrain);
  //  for L := 0 to Land[Loc.Y, Loc.X].LayersCnt - 1 do
  //  begin
  
negative.code: end;
  
  
  function TKMTerrain.TileHasParameter(X,Y: Word; aCheckTileFunc: TBooleanWordFunc; aAllow2CornerTiles: Boolean = False): Boolean;
  const
    PROHIBIT_TERKINDS: array[0..1] of TKMTerrainKind = (tkLava, tkAbyss);
  var
  