Просмотр исходного кода

Allow center Town touch the blocked area, it's no longer a problem with correct pathfinder.

Tomasz Zieliński 2 лет назад
Родитель
Сommit
d5b799278e
1 измененных файлов с 7 добавлено и 4 удалено
  1. 7 4
      lib/rmg/modificators/TownPlacer.cpp

+ 7 - 4
lib/rmg/modificators/TownPlacer.cpp

@@ -163,11 +163,14 @@ void TownPlacer::cleanupBoundaries(const rmg::Object & rmgObject)
 	Zone::Lock lock(zone.areaMutex);
 	for(const auto & t : rmgObject.getArea().getBorderOutside())
 	{
-		if(map.isOnMap(t))
+		if (t.y > rmgObject.getVisitablePosition().y) //Line below the town
 		{
-			map.setOccupied(t, ETileType::FREE);
-			zone.areaPossible().erase(t);
-			zone.freePaths().add(t);
+			if (map.isOnMap(t))
+			{
+				map.setOccupied(t, ETileType::FREE);
+				zone.areaPossible().erase(t);
+				zone.freePaths().add(t);
+			}
 		}
 	}
 }