' ' © JM. :: Hecho en Ronda ' ' ' Procedente de... es.geocities.com/jm00092 ' '______________________________________________________________________ ' RECORRER FACHADA EDIFICIO DECLARE SUB pared (h!, v!, f!, c!) RANDOMIZE TIMER DIM m(0 TO 5000) DIM s(0 TO 16256) 'DEFINE LOS COLORES CONST ladrillo = 29 CONST cemento = 28 CONST molduras = 91 CONST cristales = 102 CONST ventanas = 8 CONST suelos = 40 CONST barandas = 106 'DIBUJA LAS PIEZAS PARA COPIARLAS Y LUEGO IRLAS PEGANDO SCREEN 13 pared 20, 20, 12, 4 GET (20, 20)-STEP(31, 35), m LOCATE 2, 9: PRINT "INICIO: Un momento, por favor" LOCATE 23, 9: PRINT "© JM. :: Hecho en Ronda" FOR n = 20 TO 200 STEP 40 PUT (n, 80), m, PSET NEXT LINE (27, 85)-STEP(16, 20), molduras, BF DRAW "ru2lu16ru3l3dl12ul3d3rd16ld3r3ur12dr3" LINE (29, 87)-STEP(12, 16), ventanas, BF LINE (30, 88)-STEP(4, 14), cristales, BF LINE (36, 88)-STEP(4, 14), cristales, BF LINE (65, 85)-STEP(20, 20), molduras, BF DRAW "ru2lu16ru3l3dl16ul3d3rd16ld3r3ur16dr3" LINE (67, 87)-STEP(16, 16), ventanas, BF LINE (68, 88)-STEP(6, 14), cristales, BF LINE (76, 88)-STEP(6, 14), cristales, BF LINE (107, 85)-STEP(16, 30), molduras, BF DRAW "ru2lu26ru3l3dl12ul3d3r" LINE (109, 87)-STEP(12, 26), ventanas, BF LINE (110, 88)-STEP(4, 13), cristales, BF LINE (116, 88)-STEP(4, 13), cristales, BF LINE (110, 104)-STEP(4, 7), cristales, BF LINE (116, 104)-STEP(4, 7), cristales, BF LINE (103, 114)-STEP(24, 1), molduras, BF LINE (102, 113)-STEP(26, 0), suelos FOR h = 102 TO 127 STEP 2 LINE (h, 100)-STEP(2, 11), barandas, B NEXT PSET (103, 112), 0 PSET (127, 112), 0 LINE (145, 85)-STEP(20, 20), molduras, BF DRAW "ru2lu16ru3l3dl16ul3d3rd16ld3r3ur16dr3" LINE (147, 87)-STEP(16, 16), ventanas, BF LINE (148, 88)-STEP(3, 14), cristales, BF LINE (153, 88)-STEP(4, 14), cristales, BF LINE (159, 88)-STEP(3, 14), cristales, BF p = 0 FOR v = 80 TO 115 GET (20, v)-STEP(31, 0), m(p) GET (60, v)-STEP(31, 0), m(p + 20) GET (100, v)-STEP(31, 0), m(p + 40) GET (140, v)-STEP(31, 0), m(p + 60) GET (180, v)-STEP(31, 0), m(p + 80) p = p + 100 NEXT p = 0 FOR v = 120 TO 155 PUT (20, v), m(p) PUT (60, v), m(p + 20) PUT (100, v), m(p + 40) PUT (140, v), m(p + 60) PUT (180, v), m(p + 80) p = p + 100 NEXT n = 3600 pisos = 0 'EMPIEZA EL MOVIMIENTO VERTICAL DO n = n - 100 IF n < 0 THEN n = 3500 a = INT(RND * 8) * 20 B = INT(RND * 8) * 20 c = INT(RND * 8) * 20 d = INT(RND * 8) * 20 e = INT(RND * 8) * 20 f = INT(RND * 7) * 20 g = INT(RND * 8) * 20 hh = INT(RND * 8) * 20 i = INT(RND * 8) * 20 j = INT(RND * 8) * 20 IF a > 80 THEN a = 40 IF B > 80 THEN B = 40 IF c > 80 THEN c = 40 IF d > 80 THEN d = 40 IF e > 80 THEN e = 40 IF f > 80 THEN f = 40 IF g > 80 THEN g = 40 IF hh > 80 THEN hh = 40 IF i > 80 THEN i = 40 IF j > 80 THEN j = 40 pisos = pisos + 1 END IF PUT (0, 0), m(n + a), PSET PUT (32, 0), m(n + B), PSET PUT (64, 0), m(n + c), PSET PUT (96, 0), m(n + d), PSET PUT (128, 0), m(n + e), PSET PUT (160, 0), m(n + f), PSET PUT (192, 0), m(n + g), PSET PUT (224, 0), m(n + hh), PSET PUT (256, 0), m(n + i), PSET PUT (288, 0), m(n + j), PSET PSET (319, 0), 0 GET (0, 0)-(319, 198), s PUT (0, 1), s, PSET LOOP WHILE INKEY$ = "" LOCATE 2, 1: PRINT pisos ' ' © JM. :: Hecho en Ronda ' ' ' Procedente de... es.geocities.com/jm00092 ' '______________________________________________________________________ ' PARED 256 COLORES SUB pared (h, v, f, c) l = 4 FOR vv = v + (f * 3) - 3 TO v STEP -3 IF l = 4 THEN l = 0 ELSE l = 4 IF l = 4 THEN LINE (h - 1, vv - 1)-STEP(4, 3), cemento, B LINE (h, vv)-STEP(2, 1), ladrillo, BF END IF FOR hh = h TO h + (c * 8) - 1 STEP 8 LINE (hh + l - 1, vv - 1)-STEP(8, 3), cemento, B LINE (hh + l, vv)-STEP(6, 1), ladrillo, B NEXT IF l = 0 THEN LINE (hh + l - 1, vv - 1)-STEP(4, 3), cemento, B LINE (hh + l, vv)-STEP(2, 1), ladrillo, B END IF NEXT END SUB