Почему неправильно генерируется лабиринт делаю по алгоритму.
Вот код:
document.getElementById("canvas");
var ctx = canvas.getContext("2d");
map = [[0,1,0,1,0,1,0],
[1,1,1,1,1,1,1],
[0,1,0,1,0,1,0],
[1,1,1,1,1,1,1],
[0,1,0,1,0,1,0],
[1,1,1,1,1,1,1],
[0,1,0,1,0,1,0],];
x = 0;
y = 0;
for(i = 0;i < 7;i++){
for(j = 0;j < 7;j++){
if(y > 0){
var random = Math.floor(Math.random()*(3-1)+1);
}else{
var random = Math.floor(Math.random()*(2-1)+1);
}
if(random == 1){
x+=1
map[y][x] = 0;
x+=1;
}else{
map[y-1][x] = 0;
x+=2;
}
}
y+=1
x=0;
}
x = 0;
y = 0;
function draw(){
ctx.clearRect(0,0,224,224);
x = 0;
y = 0;
for(i = 0;i < 7;i++){
for(j = 0;j < 7;j++){
if(map[i][j] == 1){
ctx.fillRect(x,y,32,32);
}
x+=32;
}
y+=32;
x=0;
}
}
setInterval(draw,500);