0 'CITY.BA Ted Eselgroth 1 'CLUB 100 Library - 415/939-1246 BBS, 937-5039 NEWSLETTER, 932-8856 VOICE 2 ' Hardly elegant programming... 3 ' but it was part of 4 ' the learning process. 5 ' (If I had to do it again, 6 ' it would be different... 7 ' but it's still fun to watch!) 8 ' It'll go forever - or 'til a BREAK. 9 CLS:PRINT@42,"Build a City!":PRINT@ 162,"Press any Key":PRINT@ 242,"To Begin the Construction Process..." 10 A$=INKEY$:R=RND(1):IF A$="" THEN 10 11 A=0:B=52:D=63:'Horizon 12 CLS 13 LINE (A,B)-(A,D),1:A=A+1:'Woods 14 PRINT@41,"Woods:":N=RND(1)*2:IF N=<1.4 THEN N=-N 15 B=B+N:IF B<0 THEN B=1 16 IF B>62 THEN B=60 17 IF A>239 THEN 18 ELSE 13 18 'Hills 19 PRINT@41,"Hills:":A=0:B=40:C=36+RND(1)*10 20 D=17+RND(1)*20:IF D>60 THEN 20 21 LINE (A,B)-(C,D),1:IF C=239 THEN 26 22 A=C:B=D:C=A+2+RND(1)*40:IF C=>239 THEN C=239 23 D=B+(RND(1)-.4)*20:IF D=<0 THEN 23 24 IF D>60 THEN 23 25 FOR N=1 TO 100:NEXT:GOTO 21 26 'Buildings 27 PRINT@41," ":H=44 28 A=4+(RND(1)*224) 29 C=A+4+(RND(1)*32):IF C>235 THEN 29 30 B=H+RND(1)*56:IF B>56 THEN 30 31 H=H-2:IF H<4 THEN H=4 32 D=63:S=S-10:LINE (A,B)-(C,D),1,B:S=RND(1)*16383 33 SOUND S,1:S=S-1600:IF S<0 THEN 35 ELSE 33 34 'Shadow 35 LINE (A+1,B-1)-(C,B-1),1:N=RND(1):IF N<.6 THEN 40 36 IF B<20 THEN 40 37 FOR M=1 TO 10:LINE (A+1+M,B-1-M)-(C+1-M,B-1-M),1:IF A+1+M=>C-1-M THEN 40 38 IF A+M>C-M THEN 40 39 NEXT M 40 LINE (C+1,B-1)-(C+1,D):LINE (C+2,B)-(C+2,D),1:'Fill-in 41 LINE (C-1,D-1)-(A+1,B+1),0,BF:'Windows 42 E=RND(1)*(C-A)+A+2:IF E>C-2 THEN 42 43 F=RND(1)*(D-B)+B+2:IF F>61 THEN 28 44 LINE (E,F)-(E,F+1),1:SOUND E*10,1:J=4+(RND(1)*224):K=RND(1)*5:LINE (J,54+K)-(J,63):PSET (J-1,(54+K+1)):PSET (J-2,(54+K+2)) 45 PSET (J-1,(54+K+3)):LINE (J+1,(54+K+1))-(J+1,(54+K+3)):PSET (J+2,(54+K+2)):GOTO 42