;======================= PARA IZQ DER DER DER FIN IZQ PARA TANTEAR DER MIENTRAS [PARED?] [IZQ] FIN PARA PRINCIPAL CREA.LABERINTO POSICION.INICIAL MIENTRAS [ADENTRO?] [ TANTEAR PASO ] FIN ;======================= para crea.laberinto ocultatortuga crea.paredes subelapiz ponpos [110 90] ponpixel [255 255 255] derumba.paredes visita.posicion [-110 -90] [-90 -90] subelapiz ponpos [110 90] ponpixel [255 255 0] fin para crea.paredes borrapantalla haz "a secuencianumerica -100 100 11 haz "b1 ejecuta [(entremezcla "lista ? [-100 100])] (lista :a) haz "b2 mezcla [ejecuta [lista ?2 ?1] ?] :b1 haz "c frase :b1 :b2 mientras [no vacio? :c] [ subelapiz ponpos elemento 1 :c bl ponpos elemento 2 :c haz "c mp mp :c ] poncolorrelleno [255 255 0] subelapiz ponpos [-110 -110] rellena fin para derumba.paredes :pos [ :pp mezcla [(mezcla "suma :pos ?)] baraja [[-20 0][0 -20][20 0][0 20]] ] si vacio? :pp [alto] si posicion.valida? primero :pp [derumba.paredes visita.posicion :pos primero :pp] (derumba.paredes :pos mp :pp) fin para posicion.valida? :pos dev y (no posicion.visitada? :pos) (posicion.disponible? :pos) fin para posicion.visitada? :pos subelapiz ponpos :pos dev [255 0 0] = pixel fin para posicion.disponible? :pos subelapiz ponpos :pos dev [255 255 255] = pixel fin para visita.posicion :pos :np subelapiz ponpos :np ponpixel [255 0 0] sisino (primero :pos) = (primero :np) [ pony ((ultimo :pos) + ultimo :np) / 2 ponx (primero :pos) - 10 inversolapiz ponx (primero :pos) + 10 ] [ ponx ((primero :pos) + primero :np) / 2 pony (ultimo :pos) - 10 inversolapiz pony (ultimo :pos) + 10 ] dev :np fin para baraja :l si vacio? :l [dev []] local "e haz "e SacaAlAzar :l dev pp :e baraja quita :e :l fin ;======================= para posicion.inicial subelapiz ponpos [-90 -90] ponrumbo 0 muestratortuga fin para adentro? dev no pixel = [255 255 0] fin para der ; espera 20 giraderecha 90 fin haz "REDEFINIDO? "verdadero borra "paso haz "REDEFINIDO? "falso para paso si no pared? [ espera 5 avanza 20 ] fin para pared? subelapiz av 10 haz "x [0 0 0] = pixel re 10 dev :x fin