Я работаю над этим заданием, где мне нужно создать версию «Игры жизни».У меня возникают проблемы с правильной настройкой 2D-массива, чтобы я мог отслеживать, являются ли клетки «живыми» или «мертвыми».Кажется, я врезался в стену, и мне нужен кто-то, чтобы просто направить меня в правильном направлении.
var grid;
function setup () {
createCanvas(400, 400);
grid = new Grid(20);
}
function draw () {
background(245);
grid.draw();
}
class Grid {
constructor (cellSize) {
this.cellSize = cellSize;
this.numberOfColumns = height/this.cellSize;
this.numberOfRows = width/this.cellSize;
this.cells = new Array(this.numberOfColumns);
this.rows = new Array(this.numberOfRows);
this.twoDArray = new Array(this.cells);
for (var i = 0; i < this.cells; i++) {
this.twoDArray[i] = new Array(this.rows);
}
// for (var column = 0; column < this.numberOfColumns; column ++) {
// for (var row = 0; row < this.numberOfRows; row++) {
// this.cells[column][row] = new Cell(column, row, cellSize);
//}
// }
print(this.cells);
}
draw() {
for (var column = 0; column < this.numberOfColumns; column ++) {
for (var row = 0; row < this.numberOfRows; row++) {
fill(240);
noStroke();
rect(column * this.cellSize + 1, row * this.cellSize + 1, this.cellSize - 1, this.cellSize - 1);
}
}
}
}
class Cell {
contructor (column, row, cellSize) {
this.column = column;
this.row = row;
this.cellSize = cellSize;
isAlive = false;
}
}
Всякий раз, когда я пытаюсь раскомментировать код, который я прокомментировал выше, консоль говорит: TypeError: Невозможно установить свойство '0' неопределенным.Я уверен, что упускаю что-то очевидное, но я не могу понять, что это такое.Буду очень признателен за любую помощь, которую вы могли бы оказать.