home *** CD-ROM | disk | FTP | other *** search
/ Game Killer / Game_Killer.bin / 058.SHOWTELL.BAS < prev    next >
BASIC Source File  |  1979-12-31  |  6KB  |  144 lines

  1. 100 REM
  2. 110 REM Show and Tell Memory Game
  3. 120 REM by Randy Hawkins, for ONE THOUSAND Magazine
  4. 130 REM
  5. 132 COMMON RH: IF RH = 0 THEN SYSTEM
  6. 134 CLEAR: KEY (17) ON: KEY 17, CHR$(0) + CHR$(1)
  7. 136 ON KEY (17) GOSUB 1500
  8. 140 SCREEN 0: WIDTH 40: KEY OFF: COLOR 14,1,1: CLS
  9. 150 REM
  10. 160 REM Count Number of Q & A Sets (Store in NS)
  11. 170 REM
  12. 180 ON ERROR GOTO 200: NS = 0
  13. 190 READ A$: NS = NS + 1: GOTO 190
  14. 200 RESUME 210
  15. 210 NS = NS / 19: ON ERROR GOTO 0: DIM Q$(8), A$(8), N(8)
  16. 220 RANDOMIZE TIMER: DEF FNR(X) = INT(RND(1) * X) + 1
  17. 230 REM
  18. 240 REM Present Title Page
  19. 250 REM
  20. 260 LOCATE 4,13,0: PRINT "Show and Tell"
  21. 270 LOCATE 6,8: PRINT "A Game by Randy Hawkins": PRINT
  22. 280 PRINT "You will be shown the answers to nine"
  23. 290 PRINT "questions for a few seconds.  Try to"
  24. 300 PRINT "memorize each answer and its position"
  25. 310 PRINT "on the screen.  As each question is"
  26. 320 PRINT "presented, enter the number of the"
  27. 330 PRINT "correct answer.  Good luck!": PRINT
  28. 340 PRINT "Press <any key> to begin the game..."
  29. 350 DEF SEG=0: POKE 1050, PEEK(1052): WHILE INKEY$="": WEND
  30. 360 REM
  31. 370 REM Pick a Q & A Set and Scramble the Order
  32. 380 REM
  33. 390 CLS: RESTORE: FOR A = 1 TO FNR(NS): READ T$: FOR B = 0 TO 8
  34. 400 READ Q$(B), A$(B): NEXT B,A: FOR A = 1 TO 25: B = FNR(9) - 1
  35. 410 C = FNR(9) - 1: SWAP Q$(B),Q$(C): SWAP A$(B),A$(C): NEXT A
  36. 420 REM
  37. 430 REM Present Game Screen and Begin
  38. 440 REM
  39. 450 PRINT STRING$(40,205): LOCATE 2,1: PRINT "Show and Tell"
  40. 460 LOCATE 2,25: PRINT "by Randy Hawkins": LOCATE 3,1: PRINT STRING$(40,205)
  41. 470 COLOR 4,0: LOCATE 4,2: PRINT STRING$(38,32);: FOR A = 0 TO 8
  42. 480 LOCATE A+5,2: PRINT A+1; "..."; CHR$(32); A$(A);TAB(40): NEXT A
  43. 490 LOCATE 14,2: PRINT STRING$(38,32): COLOR 14,1: PRINT STRING$(40,205);
  44. 500 REM
  45. 510 REM Display Answers (for PAUSE seconds) then Clear
  46. 520 REM
  47. 530 PAUSE = 5: X = TIMER: WHILE X + PAUSE > TIMER: WEND
  48. 540 COLOR 4,0: FOR A = 0 TO 8: LOCATE A+5,8: PRINT STRING$(31,32);
  49. 550 NEXT A: COLOR 14,1: LOCATE 20,2: PRINT STRING$(38,205);
  50. 560 R = 0: T = 0: LOCATE 24,2: PRINT STRING$(38,205);
  51. 570 FOR A = 0 TO 8: N(A) = A: NEXT A: FOR A = 1 TO 25
  52. 580 B = FNR(9) - 1: C = FNR(9) - 1: SWAP N(B),N(C): NEXT A: A = 0
  53. 590 REM
  54. 600 REM Display a Question and Wait for Answer
  55. 610 REM
  56. 620 A = A + 1 + 9 * (A = 8): IF N(A) < 0 THEN 620
  57. 630 COLOR 14,1: LOCATE 17,21 - LEN(T$) / 2: PRINT T$
  58. 640 LOCATE 18,21 - (LEN(Q$(N(A)))+1) / 2: PRINT Q$(N(A)); "?"
  59. 650 LOCATE 22,4: PRINT "Press the <NUMBER> of your answer";
  60. 660 DEF SEG=0: POKE 1050, PEEK(1052): H$ = ""
  61. 670 H$ = INKEY$: IF H$ = CHR$(27) THEN 900
  62. 680 IF H$ < "1" OR H$ > "9" THEN 670
  63. 690 LOCATE 22,1: PRINT STRING$(40,32): B = VAL(H$) - 1
  64. 700 LOCATE B+5,2: COLOR 4,0: PRINT B + 1; "..."; CHR$(32);
  65. 710 PRINT A$(B);: COLOR 14,1: T = T + 1: IF B = N(A) THEN 840
  66. 720 REM
  67. 730 REM Answer Did Not Match
  68. 740 REM
  69. 750 H$ = "Sorry! That's wrong!": FOR C = 1 TO 10: LOCATE 22,21-C
  70. 760 PRINT LEFT$(H$,C); RIGHT$(H$,C);: SOUND 500 - C*20, 1
  71. 770 SOUND 500 - C*20 - 30, 1: NEXT C: X = TIMER
  72. 780 WHILE X + PAUSE > TIMER: WEND: LOCATE B+5,8: COLOR 4,0
  73. 790 PRINT STRING$(28,32);: COLOR 14,1: LOCATE 17,1: PRINT STRING$(80,32)
  74. 800 LOCATE 22,1: PRINT STRING$(40,32): GOTO 620
  75. 810 REM
  76. 820 REM Right Answer, Increment Counter R
  77. 830 REM
  78. 840 H$ = STRING$(15,32) + "You got it!": FOR C = 1 TO 26: LOCATE 22,1
  79. 850 PRINT RIGHT$(H$,C): SOUND 100 + C*50, 1: NEXT C: R = R + 1
  80. 860 N(A) = -1: X = TIMER: IF R < 9 THEN 780
  81. 870 REM
  82. 880 REM All Done ... Display Score
  83. 890 REM
  84. 900 WHILE X + PAUSE > TIMER: WEND: LOCATE 17,1: PRINT STRING$(80,32)
  85. 910 LOCATE 22,1: PRINT STRING$(40,32): LOCATE 17,10
  86. 920 PRINT R; "questions answered": LOCATE 18,13: PRINT "in only";
  87. 930 PRINT T; "tries!": LOCATE 22,11: PRINT "Play again (Y or N)?"
  88. 940 H$ = INKEY$: IF H$="Y" OR H$="y" THEN CLS: GOTO 134
  89. 950 IF H$ = "N" OR H$ = "n" THEN 1500 ELSE 940
  90. 960 REM
  91. 970 REM Data Set #1
  92. 980 REM
  93. 990 DATA "Where do you"
  94. 1000 DATA "go to sleep", "in your bed"
  95. 1010 DATA "put your TV antenna", "on the roof"
  96. 1020 DATA "go to see a ball game", "in the Astrodome"
  97. 1030 DATA "keep your car", "in the garage"
  98. 1040 DATA "grow vegetables", "in the garden"
  99. 1050 DATA "go to meet Dracula", "in Transylvania"
  100. 1060 DATA "land an Apollo spaceship", "on the moon"
  101. 1070 DATA "hang a picture", "on the wall"
  102. 1080 DATA "bake a cake", "in the oven"
  103. 1090 REM
  104. 1100 REM Data Set #2
  105. 1110 REM
  106. 1120 DATA "When do you"
  107. 1130 DATA "go to sleep", "every night"
  108. 1140 DATA "eat a meal", "three times a day"
  109. 1150 DATA "pay income tax", "before April 15"
  110. 1160 DATA "celebrate Christmas", "December 25"
  111. 1170 DATA "go to the beach", "in the summertime"
  112. 1180 DATA "answer the phone", "when the phone rings"
  113. 1190 DATA "change the oil in your car", "every 6000 miles"
  114. 1200 DATA "go to the doctor", "when you are sick"
  115. 1210 DATA "have a leap year", "once every four years"
  116. 1220 REM
  117. 1230 REM Data Set #3
  118. 1240 REM
  119. 1250 DATA "What do you"
  120. 1260 DATA "eat with spaghetti", "meatballs"
  121. 1270 DATA "get mixing dirt and water", "mud"
  122. 1280 DATA "wear on your head", "straw hat"
  123. 1290 DATA "keep in your wallet", "money"
  124. 1300 DATA "use to write a letter", "pencil"
  125. 1310 DATA "use to play computer games", "Tandy 1000"
  126. 1320 DATA "use as fish bait", "worms"
  127. 1330 DATA "use to blow your nose", "tissue"
  128. 1340 DATA "find on a used car lot", "old cars"
  129. 1350 REM
  130. 1360 REM Data Set #4
  131. 1370 REM
  132. 1380 DATA "Who is"
  133. 1390 DATA "the president", "George Bush"
  134. 1400 DATA "the Tonight Show host", "Johnny Carson"
  135. 1410 DATA "Disneyland's Mascot", "Mickey Mouse"
  136. 1420 DATA "the world's strongest man", "Superman"
  137. 1430 DATA "the meanest man in Dallas", "J. R. Ewing"
  138. 1440 DATA "the discoverer of America", "Christopher Columbus"
  139. 1450 DATA "the heavyweight boxing champ", "Mike Tyson"
  140. 1460 DATA "married to Prince Charles", "Princess Diana"
  141. 1470 DATA "the king of Rock of Roll", "Elvis Presley"
  142. 1500 SCREEN 0: WIDTH 80: CLS: LOCATE 12,30
  143. 1510 PRINT "One Moment Please...": RUN "menu"
  144.