refactor: Add BitMask256 utility for 256-bit bitmask operations (#2300)

### Summary

- Create BitMask256 struct with scalar operations (benchmarks showed AVX2 vectorization provides no benefit for this size)
- Refactor Map.cs to use BitMask256 for full Z range support (-128 to 127)
- Remove SectorSpawnCache struct, use BitMask256 directly in manager
- Update tests to use BitMask256 directly
- Remove unused test assertions for old 64-bit behavior
This commit is contained in:
Kamron Batman 2025-12-29 12:54:49 -08:00 • committed by GitHub
parent d3b43f6f0e
commit 598223703f
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
7 changed files with 482 additions and 261 deletions

View file

@ -23,8 +23,6 @@ public class CanSpawnMobileTileDataTests
Skip.If(!ServerFixture.TileDataLoaded, "TileData not loaded - client files required");
}
#region Multi-Based Tests
[SkippableFact]
public void CanSpawnMobile_FindsSurfaceOnMulti()
{
@ -241,10 +239,6 @@ public class CanSpawnMobileTileDataTests
}
}
#endregion
#region Real Map Data Tests
[SkippableFact]
public void CanSpawnMobile_MalasBuilding_FindsGroundFloor()
{
@ -290,10 +284,6 @@ public class CanSpawnMobileTileDataTests
Assert.True(spawnZ <= -40, $"Expected lowest floor around -50, got {spawnZ}");
}
#endregion
#region Helper Methods and Classes
private TestMulti CreateFloorMulti(Map map, Point3D location, int floorZ)
{
var multi = new TestMulti(CreateFloorComponents(floorZ));
@ -367,6 +357,4 @@ public class CanSpawnMobileTileDataTests
public override MultiComponentList Components => _components;
}
#endregion
}