public CoverData GetData(int x, int y) { CoverChunk chunk = GetChunkAt(x, y); if (chunk == null) { return(default); // no data to return
public void SetOrientation(int x, int y, int orientation) { ValidateExists(x, y); CoverChunk chunk = GetChunkAt(x, y); chunk.SetOrientation(GetPositionInChunk(x, y), orientation); // if our new count is 0, remove the chunk if (chunk.CoverCount == 0) { Point chunkPos = GetChunkFor(x, y); _chunks[chunkPos.X, chunkPos.Y] = null; } }