gridpathingtest/sauce/chunk.go
2024-02-02 15:59:24 -08:00

32 lines
492 B
Go

package sauce
type Chunk struct {
X int
Y int
Cells [][]Cell
}
func NewChunk(width, height int) *Chunk {
c := &Chunk{}
c.Cells = make([][]Cell, width)
for i := range c.Cells {
c.Cells[i] = make([]Cell, height)
}
return c
}
func (c *Chunk) Width() int {
return len(c.Cells)
}
func (c *Chunk) Height() int {
return len(c.Cells[0])
}
func (c *Chunk) At(x, y int) *Cell {
if x < 0 || y < 0 || x >= c.Width() || y >= c.Height() {
return nil
}
return &c.Cells[x][y]
}