home *** CD-ROM | disk | FTP | other *** search
/ ftp.barnyard.co.uk / 2015.02.ftp.barnyard.co.uk.tar / ftp.barnyard.co.uk / cpm / walnut-creek-CDROM / MBUG / MBUG067.ARC / HANGMAN3.BAS < prev    next >
BASIC Source File  |  1979-12-31  |  6KB  |  187 lines

  1. 100 PRINT:PRINT:PRINT:PRINT "HELLO.  WHAT IS YOUR NAME";:INPUT N$
  2. 110 PRINT "HI ";N$;".  THIS IS THE GAME KNOWN AS HANGMAN. DO YOU KNOW"  
  3. 120 PRINT "HOW TO PLAY ";:INPUT Y$   
  4. 130 IF Y$="YES" THEN 210  
  5. 140 IF Y$ ="NO" THEN160   
  6. 150 PRINT "JUST A YES OR NO WILL DO JUST FINE HERE. ";:INPUT Y$:GOTO130  
  7. 160 PRINT "I THINK OF A WORD, AND YOU GUESS THE LETTERS IN THE WORD."
  8. 170 PRINT "YOU HAVE 10 GUESSES. IF YOU GUESS THE CORRECT WORD, YOU"  
  9. 180 PRINT "WIN.  IF NOT, YOU HANG.  CORRECT LETTER GUESSES WILL NOT AFFE
  10. 190 PRINT "YOUR COUNTER.  YOU MAY SURRENDER AT ANY TIME BY TYPING IN AN"
  11. 200 PRINT "ASTERISK (*). WE ARE NOW READY TO BEGIN." 
  12. 210 PRINT "THIS IS THE ADVANCED VOCABULARY GAME":PRINT   
  13. 220 DIM V(20)   
  14. 230 DIM B(20)   
  15. 240 DIMC$(20),G$(20),B$(40) 
  16. 250 DIM F(10),O$(10),Q$(20) 
  17. 260 DIM A(20),H(1),T(20)
  18. 270 DIM W$(20)  
  19. 280 PRINT "LET'S PLAY HANGMAN."
  20. 290 GOSUB 1490  
  21. 300 PRINT L$
  22. 310 W7$="IES"   
  23. 320 L7$="S."
  24. 330 H(0)=1  
  25. 340 RESTORE 
  26. 350 FOR I=1 TO 10: READ F(I):NEXT   
  27. 360 FOR I=1 TO 10: READ O$(I):NEXT  
  28. 370 READ N9 
  29. 380 LET N=0 
  30. 390 Q=0
  31. 400 N2 = 0  
  32. 410 FOR J = 1 TO 20 
  33. 420 Q$(J) = " " 
  34. 430 NEXT J  
  35. 440 I=INT(N9*RND(1)+1)  
  36. 450 FOR J=1 TO I
  37. 460 READ A$ 
  38. 470 NEXT J 
  39. 480 A=LEN(A$)  
  40. 490 FOR I=1 TO A:T(I)=ASC(MID$(A$,I,1)):NEXT
  41. 500 A5=155-T(A)
  42. 510 FOR I=1 TO A-1 
  43. 520 T(A-I+1)=155-T(A-I)
  44. 530 NEXT   
  45. 540 T(1)=A5
  46. 550 FOR I=1 TO A   
  47. 560 W$(I)=CHR$(T(I)):G$(I)=W$(I)   
  48. 570 NEXT   
  49. 580 FOR J=1 TO 20  
  50. 590 C$(J)="-"  
  51. 600 NEXT J 
  52. 610 X=10   
  53. 620 N=1
  54. 630 N1=0   
  55. 640 REM DON"T PRINT GUESSES
  56. 650 IF Q=1 THEN 710   
  57. 660 PRINT "THE WORD IS ";  
  58. 670 FOR J=1 TO A   
  59. 680 PRINT C$(J);" ";   
  60. 690 NEXT J 
  61. 700 PRINT L$   
  62. 710 Q=0
  63. 720 PRINT "GUESS"; 
  64. 730 INPUT G1$  
  65. 740 IF G1$="*" THEN 1300   
  66. 750 IF G1$=A$ THEN 1280
  67. 760 FOR K=1 TO A   
  68. 770 IF G1$=G$(K) THEN 930 
  69. 780 NEXT K 
  70. 790 FOR L=1 TO N   
  71. 800 IF G1$><B$(L) THEN 830
  72. 810 PRINT "NO...YOU TRIED THIS BEFORE."
  73. 820 GOTO 850 
  74. 830 NEXT L 
  75. 840 PRINT "NO" 
  76. 850 X = X - 1  
  77. 860 N2 = N2 + 1
  78. 870 Q=1
  79. 880 Q$(F(N2))=O$(N2)   
  80. 890 IF X=0 THEN 1240   
  81. 900 GOSUB 1480 
  82. 910 GOSUB 1040 
  83. 920 GOTO 1010 
  84. 930 PRINT "HEY, THAT""S RIGHT!!!!!"
  85. 940 FOR L=K TO A   
  86. 950 IF G$(L)><G1$ THEN 990
  87. 960 C$(L)=G1$  
  88. 970 G$(L)="=,$*):" 
  89. 980 N1=N1+1
  90. 990 NEXT L 
  91. 1000 GOSUB 1040 
  92. 1010 IF N1=A THEN 1280  
  93. 1020 IF X=0 THEN 1240   
  94. 1030 GOTO 640 
  95. 1040 V=LEN(G1$) 
  96. 1050 IF V<1 THEN 1180   
  97. 1060 N = N + 1  
  98. 1070 LET B(N)=ASC(G1$)
  99. 1080 B$(N)=G1$  
  100. 1090 FOR I=1 TO N-1 
  101. 1100 IF B(N-I+1)>=B(N-I) THEN 1170  
  102. 1110 G1$=B$(N-I)
  103. 1120 B$(N-I)=B$(N-I+1)  
  104. 1130 B$(N-I+1)=G1$  
  105. 1140 A5=B(N-I)  
  106. 1150 B(N-I)=B(N-I+1)
  107. 1160 B(N-I+1)=A5
  108. 1170 NEXT I 
  109. 1180 PRINT "YOU HAVE USED ";
  110. 1190 FOR L=1 TO N   
  111. 1200 PRINT B$(L);   
  112. 1210 NEXT L 
  113. 1220 PRINT ". ";
  114. 1230 RETURN 
  115. 1240 PRINT "YOU HAVE BEEN HUNG!"
  116. 1250 L8=L8+1
  117. 1260 GOSUB 1480 
  118. 1270 GOTO 1300 
  119. 1280 PRINT "YOU WIN"
  120. 1290 W8=W8+1
  121. 1300 PRINT "THE WORD WAS "; 
  122. 1310 FOR J=1 TO A   
  123. 1320 PRINT W$(J);   
  124. 1330 NEXT J 
  125. 1340 REM
  126. 1350 PRINT:PRINT "DO YOU WANT TO TRY ANOTHER WORD ";N$;"."
  127. 1360 INPUT T$   
  128. 1370 IF T$="YES" THEN 340   
  129. 1380 PRINT L$   
  130. 1390 IF W8<>1 THEN 1410 
  131. 1400 W7$="Y"
  132. 1410 IF L8<>1 THEN 1430 
  133. 1420 L7$="."
  134. 1430 PRINT "WELL ";N$;" YOU RETIRE WITH A RECORD OF";W8;"VICTOR";W7$;" AND";
  135. 1440 PRINT L8;"DEFEAT";L7$  
  136. 1450 IF W8>0 THEN 1460  
  137. 1460 PRINT "THANKS FOR PLAYING THE ADVANCED LEVEL OF HANGMAN." 
  138. 1470 END
  139. 1480 IF X>0 THEN 1610   
  140. 1490 PRINT "-----"  
  141. 1500 PRINT "I   I"  
  142. 1510 FOR I = 1 TO 4 
  143. 1520 PRINT "I ";
  144. 1530 FOR J = 1 TO 5 
  145. 1540 PRINT Q$(5*(I-1)+J);   
  146. 1550 NEXT J 
  147. 1560 PRINT L$   
  148. 1570 NEXT I 
  149. 1580 PRINT "I"  
  150. 1590 PRINT "--------"   
  151. 1600 RETURN 
  152. 1610 PRINT "YOU HAVE ";X;" MORE GUESSES."   
  153. 1620 RETURN 
  154. 1630 DATA 3,8,14,12,7,9,16,20,1,5   
  155. 1640 DATA "0","I","\","/","-","-","-","-","\","/"   
  156. 1650 DATA 181   
  157. 1660 DATA ITBOVZ,WQVXGREVZ,TVMWZZ,OXSVNBZ,MGRJFVZ,JFVLFHZ:  
  158. 1670 DATA HBOFNZ,VOUIBY,ORGAPIRVTY,LFITVLRHRVY,FHSBY,BXOVX: 
  159. 1680 DATA ORJFVX,LMEVITVX,LABX,RMLHZFIW,BMZNRXW,OVXGILVMXVKSZOLTIZNV:  
  160. 1690 DATA JFZORAZGRLMV,OZHPU,OZELIU,IRHPBU,FZIGAJ,ZOEZMRXT: 
  161. 1700 DATA ZDPT,RANLT,LDMT,ZMWPVIXSRVUS,VCZTLMS,RWVLFHS: 
  162. 1710 DATA BKMLGRXS,TFZMZR,MXLTMRGLR,MWRERWFZOR,VDVOQ,FWTVQ: 
  163. 1720 DATA SZPRP,ZABO,RXLIRXVO,RJFRWZGVO,LEVOBO,ZTZARMVN:
  164. 1730 DATA ZWIRTZON,VOZMXSLOBN,ZERTZYRORGBM,BNKSM,YQVXGL:
  165. 1740 DATA KGRXL,LTM,BHGVIL,ZQZNZHK,ZIZWLCK,SLHISLIVHXVMXVK: 
  166. 1750 DATA BTNBK,ILCBK,IRXPOBK,FZPVJ,SZKHLWBI,RTRWI,SBNVI:   
  167. 1760 DATA ZEZTVH,XSVIALH,XIFGRMRAVH,ZCD,VITVZMGH,SZMGBH:
  168. 1770 DATA SZDOH,SIREVOH,XZOKH,LUZH,DZBH,SZDG,SBILRWG:   
  169. 1780 DATA BKVG,MRUBF,MRXBXOVF,ZMGZTVE,ZMJFRHSE,ZPVD,RTDZND: 
  170. 1790 DATA ZDMB,ZMBA,RMXA,VMLMC,BMXSO,BOLKSLMVC,SRXSD:   
  171. 1800 DATA AZIX,ZNYQ,ZAAQ,FRAJ,OBU,VKGD,IRHPY,XIVZ:  
  172. 1810 DATA ZMPY,LYX,IVDW,MRTNZV,IZEBT,ZIPS,IPR,ZIPO: 
  173. 1820 DATA ROPN,ZHGBM,IZMTVL,RMPH,IZDOG,MXOVF,ZHGE,ZMWD: 
  174. 1830 DATA ZDOB,RXVMGRLFHO,VDWO,MLNZGLKLVRZL,VWRXZGVW,VGRXVMGI:  
  175. 1840 DATA ZMLHVXLMWM,RXLUZIZWK,ZXLMRXO,IRNRGREVK,GZIIBH:
  176. 1850 DATA IBLTVMRXX,NMRKLGVMGL,MLNZOBZ,RHGVIMX,RORZX,NMRHXRVMGL:
  177. 1860 DATA FWRXILFHO,ZMGLX,BOVNC,SOVTNK,RGFRGZIBK,VCGFIVG:   
  178. 1870 DATA SVGLIRXI,IRMTD,GVILWZXGBOK,VNLIISLRWS,ZIOVJFRMS:  
  179. 1880 DATA VNLKSRORZXS,VMLKSLYRXC,OZMTVU,ROORYFHGVIU,RIXLMA: 
  180. 1890 DATA BNFITBA,FZHZIJ,FZIPJ,BVO,HZIG,SLMVNVK,LDVOE:  
  181. 1900 DATA VIVMWRKRGBH,NV,LMRXR,KLTVVZ,ZMGRXOVX,VVIBO,OZNZO: 
  182. 1910 DATA VIIZXLGGZG,ZMTZILLP,LGZGVI,IZXGG,IIVZIHZ,RYVOO:   
  183. 1920 DATA LMWLMVX,VMVIRXT,LGZR,FHRMVHHY,RIZUUVT,BIISN:  
  184. 1930 DATA MGRGSVHRHZ,ZGHFKX,LIZXOVX,ZXFFNE,ZKVM,ZMTNZMS:
  185. 1940 DATA ZHVIO,LOLTIZNS,SROLHLKSBK,NYIBLMRXV,LNKGILOOVIX:  
  186. SN:  
  187. 1