--- src/blackbox.c 2009-01-04 09:44:13 +0000 +++ src/blackbox.c 2009-01-04 09:32:26 +0000 @@ -409,26 +409,26 @@ { case 0: if (y==0) {end=1;} else - if (map[x-1][y-1]==1) {dir=1;} else - if (map[x][y-1]==1) {dir=3;} + if (x!=0 && map[x-1][y-1]==1) {dir=1;} else + if (x!=11 && map[x][y-1]==1) {dir=3;} else {y--;} break; case 1: if (x==12) {end=1;} else - if (map[x][y]==1) {dir=0;} else - if (map[x][y-1]==1) {dir=2;} + if (y!=9 && map[x][y]==1) {dir=0;} else + if (y!=0 && map[x][y-1]==1) {dir=2;} else {x++;} break; case 2: if (y==9) {end=1;} else - if (map[x][y]==1) {dir=3;} else - if (map[x-1][y]==1) {dir=1;} + if (x!=11 && map[x][y]==1) {dir=3;} else + if (x!=0 && map[x-1][y]==1) {dir=1;} else {y++;} break; case 3: if (x==0) {end=1;} else - if (map[x-1][y]==1) {dir=0;} else - if (map[x-1][y-1]==1) {dir=2;} + if (y!=9 && map[x-1][y]==1) {dir=0;} else + if (y!=0 && map[x-1][y-1]==1) {dir=2;} else {x--;} break; }