new algorithm draft for diag moves; committed missing files

This commit is contained in:
2022-02-03 00:56:31 +01:00
parent 429ce51805
commit 1b4fe0634d
8 changed files with 296 additions and 20 deletions
+4 -2
View File
@@ -45,10 +45,12 @@ void AAdventurePlayerController::LeftClick()
if (bInPlacementMode) { PlaceObject(PlaceObjClass, HoveredHex); }
}
TArray<AHexTile*> AAdventurePlayerController::Vision()
TArray<AHexTile*> AAdventurePlayerController::Vision(int32 Radius)
{
TArray<AHexTile*> Results;
TSet<AHexTile*> Visible = MapRef->BreadthFirstSearch(CurrentHex, 4);
TSet<AHexTile*> Visible;
if (CurrentHex->bDiagMove) { Radius = FMath::FloorToInt(float(Radius) * (2.f / 3.f)); }
Visible = MapRef->BreadthFirstSearch(CurrentHex, Radius);
for (auto& Hex : Visible) {
if (ExploredHexes.Contains(Hex)) { continue; }
Results.Add(Hex);