const filtered = [] for (let i = 0; i < projected.length; ++i) { const entities = Array.from(ecs.system('UpdateSpatialHash').within( projected[i].x * layer.tileSize.x, projected[i].y * layer.tileSize.y, layer.tileSize.x, layer.tileSize.y, )); let hasPlant = false; for (let j = 0; j < entities.length; ++j) { if (entities[j].Plant) { hasPlant = true } } if (!hasPlant) { const tile = layer.tile(projected[i]) if ([7].includes(tile)) { filtered.push(projected[i]) } } } return filtered