Skip to content

Commit

Permalink
Fixed minor issue with regions not being pannable in all cases
Browse files Browse the repository at this point in the history
  • Loading branch information
ben_singer committed Nov 15, 2024
1 parent a7a9f78 commit 7ad2b96
Show file tree
Hide file tree
Showing 2 changed files with 32 additions and 2 deletions.
32 changes: 31 additions & 1 deletion NetAF.Tests/Logic/Modes/RegionMapMode_Tests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ public void GivenPositionOutOfBounds_WhenPanToPosition_ThenReturnFalse()
}

[TestMethod]
public void GivenPositionInBounds_WhenPanToPosition_ThenReturnTrue()
public void GivenPositionInBoundsAndVisited_WhenPanToPosition_ThenReturnTrue()
{
RegionMaker regionMaker = new(string.Empty, string.Empty);
Room room = new(string.Empty, string.Empty);
Expand All @@ -49,5 +49,35 @@ public void GivenPositionInBounds_WhenPanToPosition_ThenReturnTrue()

Assert.IsTrue(result);
}

[TestMethod]
public void GivenPositionInBoundsButNotVisited_WhenPanToPosition_ThenReturnFalse()
{
RegionMaker regionMaker = new(string.Empty, string.Empty);
Room room = new(string.Empty, string.Empty);
Room room2 = new(string.Empty, string.Empty);
regionMaker[0, 0, 0] = room;
regionMaker[1, 0, 0] = room2;

var result = RegionMapMode.CanPanToPosition(regionMaker.Make(), new Point3D(1, 0, 0));

Assert.IsFalse(result);
}

[TestMethod]
public void GivenPositionInBoundsButNotVisitedButRegionIsVisibleWithoutDiscovery_WhenPanToPosition_ThenReturnTrue()
{
RegionMaker regionMaker = new(string.Empty, string.Empty);
Room room = new(string.Empty, string.Empty);
Room room2 = new(string.Empty, string.Empty);
regionMaker[0, 0, 0] = room;
regionMaker[1, 0, 0] = room2;
var region = regionMaker.Make();
region.VisibleWithoutDiscovery = true;

var result = RegionMapMode.CanPanToPosition(region, new Point3D(1, 0, 0));

Assert.IsTrue(result);
}
}
}
2 changes: 1 addition & 1 deletion NetAF/Logic/Modes/RegionMapMode.cs
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ public static bool CanPanToPosition(Region region, Point3D position)
{
var matrix = region.ToMatrix();
var room = matrix[position.X, position.Y, position.Z];
return room != null && room.HasBeenVisited;
return room != null && (room.HasBeenVisited || region.VisibleWithoutDiscovery);
}

#endregion
Expand Down

0 comments on commit 7ad2b96

Please sign in to comment.