Browse Source

Add free tiles around unguarded objects.

DjWarmonger 11 years ago
parent
commit
d3134a1290
1 changed files with 8 additions and 2 deletions
  1. 8 2
      lib/rmg/CRmgTemplateZone.cpp

+ 8 - 2
lib/rmg/CRmgTemplateZone.cpp

@@ -1208,8 +1208,14 @@ bool CRmgTemplateZone::guardObject(CMapGenerator* gen, CGObjectInstance* object,
 
 		gen->setOccupied (guardTile, ETileType::USED);
 	}
-	else
-		gen->setOccupied (guardTile, ETileType::FREE);
+	else //make sure no other stuff spawns next to unguarded object
+	{
+		for (auto tile : tiles)
+		{
+			if (!gen->isBlocked(tile))
+				gen->setOccupied (tile, ETileType::FREE);
+		}
+	}
 
 	return true;
 }