1 //vomitado por Eriiiiiic dominio público-púbico
7 //declaraciones pendejas globales
12 //tamaño imbecil del laberinto a dibujar idiota
16 //puto laberinto y sus caminos
17 int maze
[renglones
][columnas
][4];
19 //inicialización de movimientos de mierda a dibujar
24 //puto arreglo para dibujar un inutil laberinto con pinche ASCII
25 int mazeDraw
[mazeRow
][mazeCol
];
27 //puta posicion actual (x,y)
36 for (i
= 0; i
< renglones
; i
++){
37 for (j
= 0; j
< columnas
; j
++){
38 for (k
= 0; k
< 4; k
++){
44 //reglon (en x de la chingada)
49 //columna (en y de la chingada)
55 for (i
= 0; i
< mazeRow
; i
++){
56 for (j
= 0; j
< mazeCol
; j
++){
64 void mazeFuck(int posX
, int posY
){
65 //inicializa bandera de cagada validez
69 maze
[posX
][posY
][0] = 5;
71 //mientras hayan movimeintos de mierda válidos
76 //chequeo de casillas válidas imbecil
78 for (i
= 0; i
< 4; i
++){
79 //verifica que este adentro del maldito arreglo
80 if ( (posX
+ row
[i
] >= 0) && (posY
+ column
[i
] >= 0) &&
81 (posX
+ row
[i
] < renglones
) &&
82 (posY
+ column
[i
] < columnas
) ){
83 //verifica que no este recorrida la puta posición
84 if ( maze
[posX
+ row
[i
]][posY
+ column
[i
]][0] == -1 ){
85 //guarda movimientos de mierda válidos
91 // no me caso de poner comentarios de la verga
92 //si hay movimientos de mierda válidos
94 //elige un valor de mierda válido al chile (random)
95 movPos
= valido
[rand() % cuenta
];
96 maze
[posX
][posY
][x
++] = movPos
;
99 mazeFuck(posX
+ row
[movPos
], posY
+ column
[movPos
]);
102 //si no hay, bla bla dice: "FLAG! no mames, eres falso, salte del puto while
111 //la recorro a la puta
113 for (i
= 0; i
< mazeRow
; i
++){
114 for (j
= 0; j
< mazeCol
; j
++){
115 printf("%d", mazeDraw
[i
][j
]);
124 //genera el laberinto y sus caminos de la chingada
126 //se inicializa con algun caracter cagada
128 for (i
= 0; i
< mazeRow
; i
++){
129 for (j
= 0; j
< mazeCol
; j
++){
134 //harcodea entrada y salida, que pendejo y webon
136 mazeDraw
[mazeRow
- 2][mazeCol
- 1] = 1;
138 //recorre al arreglo lameculos para dibujar el putillo recorrido
140 for (x
= 0; x
< renglones
; x
++){
141 for (y
= 0; y
< columnas
; y
++){
142 for(z
= 0; z
< 4; z
++){
143 //si el putin valor es -1 no tumba pared
144 if(maze
[x
][y
][z
] != -1){
145 //guarda el mierda de valor del movimiento
146 int tempr
= row
[ maze
[x
][y
][z
] ];
147 int tempc
= column
[ maze
[x
][y
][z
] ];
150 //pinta caminillo hijo de puta en posicion actual, +1 y +2 en respecputamente
151 mazeDraw
[posR
][posC
] = 1;
152 mazeDraw
[ posR
+ tempr
][ posC
+ tempc
] = 1;
153 mazeDraw
[ posR
+ 2*tempr
][ posC
+ 2*tempc
] = 1;
159 //imprime el laberinto pinche cabron