home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / genie-commodore-file-library / C64Games / SCORE-5 (.txt) < prev    next >
Encoding:
Commodore BASIC  |  2019-04-13  |  7.3 KB  |  250 lines

  1. 0 REM    Q-LINK   DISK # 85
  2. 1 REM ***        SCORE FIVE        ***
  3. 2 REM *** A NUMERIC STRATEGY GAME  ***
  4. 3 REM ***     BY ALAN MIDNIGHT     ***
  5. 5 CLR:S=54272:FORL=STOS+24:POKEL,0:NEXT
  6. 6 POKES+5,9:POKES+6,9*16:POKES+1,5:POKES+24,15
  7. 10 POKE53280,12:POKE53281,15:A=0:L=0:RT=0
  8. 11 PRINT"[147]            55555555555555"
  9. 12 PRINT"            5            5"
  10. 13 PRINT"            5 [158][211]CORE [198]IVE 5"
  11. 14 PRINT"            5            5"
  12. 15 PRINT"            55555555555555"
  13. 16 PRINT"[151]   [201]NSTRUCTIONS   [217]/[206]     "
  14. 17 GETA$:IFA$="Y"THENGOSUB3000:GOTO20
  15. 18 IFA$<>"N"THEN17
  16. 20 PRINT"[145]   [151]1[146] OR 2[146] PLAYERS?     "
  17. 22 GETA$:NP=VAL(A$):IFNP<1ORNP>2THEN22
  18. 25 PRINT"   [151][203][146][158]EYBOARD OR [151][202][146][158]OYSTICK PORT 2
  19. 27 [161]A$:[139]A$[178]"J"[167][141]600:[137]30
  20. 28 [139]A$[179][177]"K"[167]27
  21. 29 [153]"    (null)SE CURSOR KEYS TO MOVE.                <(null)(null)ATNLENVAL> TO SET.
  22. 30 FORD=1TO23:NEXT
  23. 31 IFNP=1THENGOSUB700
  24. 35 PRINT"[147][142][151]     [175][175][175][175][175][175][175][175][175][175][175][175][175][175][175][175][175][175]"
  25. 37 FORI=1TO6
  26. 40 PRINT"    [170][207][183][208][207][183][208][207][183][208][207][183][208][207][183][208][207][183][208][180]"
  27. 45 PRINT"    [170][180][160][170][180][160][170][180][160][170][180][160][170][180][160][170][180][160][170][180]"
  28. 50 PRINT"    [170][204][175][186][204][175][186][204][175][186][204][175][186][204][175][186][204][175][186][180]"
  29. 60 NEXT
  30. 70 PRINT"     [183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183]"
  31. 80 FORI=1TO6:FORJ=1TO6
  32. 90 A=A+1:IFA=10THENA=1
  33. 100 BD(I,J)=A
  34. 110 NEXT:NEXT
  35. 120 FORI=1TO6:FORJ=1TO6
  36. 130 I1=INT(6*RND(0))+1:J1=INT(6*RND(0))+1
  37. 140 T=BD(I,J):BD(I,J)=BD(I1,J1):BD(I1,J1)=T
  38. 150 NEXT:NEXT
  39. 160 PRINT"[151]";:FORI=1TO6:PRINT"":FORJ=1TO6
  40. 165 BD$=RIGHT$(STR$(BD(J,I)),1)
  41. 170 PRINTTAB(J*3+3);BD$;
  42. 180 NEXT:NEXT
  43. 190 PRINT""TAB(25)"[151]PLAYER ";
  44. 195 IFNP=1THENPRINT" -":PRINTTAB(25)"[153]COMPUTER-":GOTO210
  45. 200 PRINT"1-":PRINTTAB(25)"PLAYER 2-"
  46. 210 PRINTTAB(25)"[158]RUNNING"
  47. 220 PRINTTAB(27)"TOTAL -[151]"
  48. 230 PL=PL+1:IFPL=3THENPL=1
  49. 232 FORI=1TO10:GETA$:NEXT:IF(NP<>1)OR(PL<>2)THENGOSUB1600
  50. 233 PRINT"                      "
  51. 235 IF(PL=2)AND(NP=1)THEN1000
  52. 240 IFNP=2THENPRINT"[151]          PLAYER"PL:GOTO250
  53. 245 PRINT"[152]          YOUR PLAY"
  54. 250 IFL=0THENL=1:GOTO500
  55. 260 AA=0:FORX3=X-1TOX+1:FORY3=Y-1TOY+1
  56. 270 IFX3<1ORX3>6ORY3<1ORY3>6THENAA=AA+1:GOTO300
  57. 290 IFBD(X3,Y3)=0THENAA=AA+1
  58. 300 NEXT:NEXT
  59. 305 IFAA<9THEN320
  60. 310 PRINT"";:FORYY=1TONY:PRINT"";
  61. 315 NEXT:PRINTTAB(NX*3+3)" ":GOTO500
  62. 320 GOSUB2000
  63. 340 IFBD(NX,NY)=0THENGOSUB1500:PRINT" ":GOTO320
  64. 345 PRINT"";:FORYY=1TOY:PRINT"";
  65. 346 NEXT:PRINTTAB(X*3+3)" "
  66. 350 X=NX:Y=NY
  67. 360 RT=RT+BD(X,Y)
  68. 365 PRINT""TAB(35);RT
  69. 370 BD(X,Y)=0
  70. 380 IFRT/5<>INT(RT/5)THEN430
  71. 390 SC(PL)=SC(PL)+RT:GOSUB1700
  72. 400 ONPLGOTO410,420
  73. 410 PRINT""TAB(35);SC(1):GOTO430
  74. 420 PRINT""TAB(35);SC(2)
  75. 430 PRINT"";:FORYY=1TOY:PRINT"";
  76. 440 NEXT:PRINTTAB(X*3+3)"[209][151]"
  77. 445 IFRT>169THEN550
  78. 450 GOTO230
  79. 500 GOSUB2100
  80. 510 IFBD(NX,NY)=0THENGOSUB1500:GOTO1000
  81. 515 PRINT"";:FORYY=1TONY:PRINT"";
  82. 516 NEXT:PRINTTAB(NX*3+3)"[209][151]"
  83. 520 GOTO345
  84. 550 FORZZ=1TO2000:NEXT:PRINT"[147]"
  85. 555 PL=1:IFSC(1)<SC(2)THENPL=2
  86. 560 IFNP=1THEN570
  87. 565 PRINTTAB(8)"PLAYER"PL"IS THE WINNER!"
  88. 567 PRINT""TAB(12)"PLAYER 1 -"SC(1):PRINTTAB(12)"PLAYER 2 -"SC(2):GOTO580
  89. 570 ONPLGOTO571,572
  90. 571 PRINTTAB(9)"YOU ARE THE WINNER!!!":GOTO575
  91. 572 PRINTTAB(9)"I HAVE WON THIS TIME!"
  92. 575 PRINT""TAB(12)"PLAYER   -"SC(1):PRINTTAB(12)"COMPUTER -"SC(2)
  93. 580 PRINT""TAB(11)"PLAY AGAIN? (Y[146]/N[146])"
  94. 585 GETA$:IFA$="N"THEN800
  95. 590 IFA$="Y"THENRUN
  96. 595 GOTO585
  97. 600 JK=1:IFNP=1THENRETURN
  98. 605 PRINT"   1[146] OR 2[146] JOYSTICKS?"
  99. 610 GETA$:IFA$="2"THENRETURN
  100. 620 IFA$<>"1"THEN610
  101. 630 JK=2:RETURN
  102. 700 PL=0:PRINT"    [215]ILL YOU PLAY FIRST  [217]/[206]
  103. 710 [161]A$:[139]A$[178]"Y"[167][142]
  104. 720 [139]A$[179][177]"N"[167]710
  105. 730 PL[178]1:[142]
  106. 800 [139]NP[178]1[167][128]
  107. 810 [153]"        ARE YOU SURE? I'LL TAKE"
  108. 820 [153]"           ON THE WINNER..."
  109. 885 [161]A$:[139]A$[178]"N"[167][128]
  110. 890 [139]A$[178]"Y"[167][138]
  111. 895 [137]885
  112. 1000 [143] **** COMPUTER TURN ****
  113. 1005 [139]L[178]0[167]L[178]1:[137]1040
  114. 1010 NX[178]0:NY[178]0:AA[178]0:NX(1)[178]0:[129]X3[178]X[171]1[164]X[170]1:[129]Y3[178]Y[171]1[164]Y[170]1
  115. 1015 [139]X3[179]1[176]X3[177]6[176]Y3[179]1[176]Y3[177]6[167]AA[178]AA[170]1:[137]1020
  116. 1017 [139]BD(X3,Y3)[178]0[167]AA[178]AA[170]1
  117. 1020 [130]:[130]
  118. 1030 [139]AA[179][177]9[167]1060
  119. 1040 [129]I[178]1[164]6:[129]J[178]1[164]6:[139]BD(I,J)[178]0[167]1050
  120. 1045 [139](RT[170]BD(I,J))[173]5[178][181]((RT[170]BD(I,J))[173]5)[167]NX[178]I:NY[178]J:I[178]6:J[178]6
  121. 1050 [130]:[130]:[139]NX[179][177]0[167]340
  122. 1055 [129]I[178]1[164]6:[129]J[178]1[164]6:[139]BD(I,J)[179][177]0[167]NX[178]I:NY[178]J:I[178]6:J[178]6
  123. 1057 [130]:[130]:[137]340
  124. 1060 AA[178]0:[129]X3[178]X[171]1[164]X[170]1:[129]Y3[178]Y[171]1[164]Y[170]1:[139](X3[178]X)[175](Y3[178]Y)[167][130]
  125. 1061 [139]X3[179]1[176]X3[177]6[176]Y3[179]1[176]Y3[177]6[167]1070
  126. 1062 [139]BD(X3,Y3)[178]0[167]1070
  127. 1065 [139](RT[170]BD(X3,Y3))[173]5[178][181]((RT[170]BD(X3,Y3))[173]5)[167]AA[178]AA[170]1:NX(AA)[178]X3:NY(AA)[178]Y3
  128. 1070 [130]:[130]:[139]NX(1)[178]0[167]1080
  129. 1075 AA[178][181](AA[172][187](0))[170]1:NX[178]NX(AA):NY[178]NY(AA):[137]340
  130. 1080 AA[178]0:NX(1)[178]0:[129]X3[178]X[171]1[164]X[170]1:[129]Y3[178]Y[171]1[164]Y[170]1:[139](X3[178]X)[175](Y3[178]Y)[167][130]
  131. 1081 [139]X3[179]1[176]X3[177]6[176]Y3[179]1[176]Y3[177]6[167]1110
  132. 1082 [139]BD(X3,Y3)[178]0[167]1110
  133. 1083 AA[178]AA[170]1:NX(AA)[178]X3:NY(AA)[178]Y3
  134. 1085 AB[178]0:[129]X4[178]X3[171]1[164]X3[170]1:[129]Y4[178]Y3[171]1[164]Y3[170]1:[139](X4[178]X3)[175](Y4[178]Y3)[167][130]
  135. 1086 [139](X4[178]X)[175](Y4[178]Y)[167]1100
  136. 1087 [139]X4[179]1[176]X4[177]6[176]Y4[179]1[176]Y4[177]6[167]1100
  137. 1088 [139]BD(X4,Y4)[178]0[167]1100
  138. 1090 AB[178]1:[139](RT[170]BD(X3,Y3)[170]BD(X4,Y4))[173]5[179][177][181]((RT[170]BD(X3,Y3)[170]BD(X4,Y4))[173]5)[167]1100
  139. 1095 NX(AA)[178]0:NY(AA)[178]0:AA[178]AA[171]1:X4[178]X3[170]1:Y4[178]Y3[170]1
  140. 1100 [130]:[130]
  141. 1105 [139]AB[178]0[167]NX(AA)[178]0:NY(AA)[178]0:AA[178]AA[171]1
  142. 1110 [130]:[130]:[139]NX(1)[178]0[167]1120
  143. 1115 AA[178][181](AA[172][187](0))[170]1:NX[178]NX(AA):NY[178]NY(AA):[137]340
  144. 1120 AA[178]0:NX(1)[178]0:[129]X3[178]X[171]1[164]X[170]1:[129]Y3[178]Y[171]1[164]Y[170]1:[139](X3[178]X)[175](Y3[178]Y)[167][130]
  145. 1121 [139]X3[179]1[176]X3[177]6[176]Y3[179]1[176]Y3[177]6[167]1130
  146. 1122 [139]BD(X3,Y3)[178]0[167]1130
  147. 1125 AA[178]AA[170]1:NX(AA)[178]X3:NY(AA)[178]Y3
  148. 1130 [130]:[130]:AA[178][181](AA[172][187](0))[170]1:NX[178]NX(AA):NY[178]NY(AA):[137]340
  149. 1500 S[178]54272:     [151]S[170]4,33
  150. 1510 [129]ZZ[178]1[164]200:[130]:[151]S[170]4,32
  151. 1520 [142]
  152. 1600 [151] S[170]1,130:[139] PL[178]2 [167] [151] S[170]1,50
  153. 1601 [151] S[170]4,21
  154. 1602 [129] ZZ[178]1 [164] 200:[130]:[151] S[170]4,20
  155. 1603 [151]S[170]1,5:[142]
  156. 1700 [129]I[178]70[164]100[169]10:[151] S[170]1,I
  157. 1701 [151] S[170]4,21
  158. 1702 [129] ZZ[178]1 [164] 50:[130]:[151] S[170]4,20:[130]
  159. 1703 [151]S[170]1,5:[142]
  160. 2000 NY[178]Y:NX[178]X
  161. 2020 [153]"";:[129]YY[178]1[164]NY:[153]"";:[130]:[153][163]NX[172]3[170]3);
  162. 2025 [139](X[178]NX)[175](Y[178]NY)[167][153]"(null)POKE":[137]2040
  163. 2030 [139]BD(NX,NY)[178]0[167][153]" ":[137]2040
  164. 2035 [153][201]([196](BD(NX,NY)),1)
  165. 2040 [141]2500
  166. 2041 [139]NX[179]1[167][141]1500:NX[178]1:[137]2040
  167. 2042 [139]NY[179]1[167][141]1500:NY[178]1:[137]2040
  168. 2043 [139]NY[177]6[167][141]1500:NY[178]6:[137]2040
  169. 2044 [139]NX[177]6[167][141]1500:NX[178]6:[137]2040
  170. 2045 [139]NX[179]X[171]1[167][141]1500:NX[178]X[171]1:[137]2040
  171. 2046 [139]NX[177]X[170]1[167][141]1500:NX[178]X[170]1:[137]2040
  172. 2047 [139]NY[179]Y[171]1[167][141]1500:NY[178]Y[171]1:[137]2040
  173. 2048 [139]NY[177]Y[170]1[167][141]1500:NY[178]Y[170]1:[137]2040
  174. 2050 [153]"";:[129]YY[178]1[164]NY:[153]"";
  175. 2052 [130]:[153][163]NX[172]3[170]3)"(null)CMDPOKE";
  176. 2055 [139]FR[178]16[167]2025
  177. 2060 [153]"(null)CMDPOKE";:[142]
  178. 2100 [153]"      CHOOSE ANY SPACE":X[178]4:Y[178]4:NX[178]4:NY[178]4
  179. 2110 [153]"";:[129]YY[178]1[164]NY:[153]"";
  180. 2115 [130]:[153][163]NX[172]3[170]3)"(null)CMDPOKE";
  181. 2120 [141]2500
  182. 2130 [139]NX[179]1[167]NX[178]1:[141]1500
  183. 2131 [139]NX[177]6[167]NX[178]6:[141]1500
  184. 2132 [139]NY[179]1[167]NY[178]1:[141]1500
  185. 2133 [139]NY[177]6[167]NY[178]6:[141]1500
  186. 2135 [139]FR[179][177]16[167]2150
  187. 2140 [139]BD(X,Y)[178]0[167][153]" ":[137]2147
  188. 2145 [153][201]([196](BD(X,Y)),1)
  189. 2147 X[178]NX:Y[178]NY:[137]2110
  190. 2150 [139]BD(NX,NY)[178]0[167][141]1500:[153]" ":[137]2110
  191. 2155 [153]"                         ":[142]
  192. 2500 [139](JK[178]0)[176]((JK[178]2)[175](PL[178]2))[167][141]2600:[137]2510
  193. 2505 JV[178][194](56320[171](PL[178]2)):FR[178]JV[175]16:JV[178]15[171](JV[175]15)
  194. 2510 [139](JV[175]1)[178]1[167]NY[178]NY[171]1
  195. 2515 [139](JV[175]2)[178]2[167]NY[178]NY[170]1
  196. 2520 [139](JV[175]4)[178]4[167]NX[178]NX[171]1
  197. 2525 [139](JV[175]8)[178]8[167]NX[178]NX[170]1
  198. 2530 JV[178]0:[139](JK[178]0)[176]((JK[178]2)[175](PL[178]2))[167][142]
  199. 2535 [129]ZZ[178]1[164]50:[130]:[142]
  200. 2547 X[178]NX:Y[178]NY:[137]2510
  201. 2550 [139]BD(NX,NY)[178]0[167][141]1500:[153]" ":[137]2510
  202. 2555 [153]"                         ":[142]
  203. 2600 [161]A$:FR[178]16:JV[178]0:[139]A$[178]" "[167]FR[178]0
  204. 2610 [139]A$[178]""[167]JV[178]8
  205. 2615 [139]A$[178]"CMD"[167]JV[178]4
  206. 2620 [139]A$[178]""[167]JV[178]2
  207. 2625 [139]A$[178]"ON"[167]JV[178]1
  208. 2630 [139]A$[178][199](13)[167]FR[178]0
  209. 2650 [142]
  210. 3000 [153]"LOADPOKE   (null)LEN(null)(null)VALCLOSEASCRIGHT$(null)VAL IS PLAYED IN A 6 BY 6"
  211. 3010 [153]" GRID, EACH SQUARE WORTH POINTS. (null)OU"
  212. 3020 [153]" AND YOUR OPPONENT MOVE A MARKER ON"
  213. 3030 [153]" THE BOARD, FROM ITS CURRENT SQUARE"
  214. 3040 [153]" TO AN ADJACENT SQUARE. (DIAGONAL"
  215. 3050 [153]" MOVES ARE ALLOWED). (null)HE POINTS IN THE"
  216. 3060 [153]" SQUARE MOVED TO ARE ADDED TO THE"
  217. 3070 [153]" RUNNING TOTAL. RIGHT$F YOU CAN CAUSE THE"
  218. 3080 [153]" TOTAL TO BECOME A MULTIPLE OF FIVE"
  219. 3090 [153]" BY YOUR MOVE, YOU SCORE POINTS EQUAL"
  220. 3100 [153]" TO THE RUNNING TOTAL. (null)OUR OPPONENT,"
  221. 3110 [153]" HOWEVER, IS DOING THE SAME THING,"
  222. 3120 [153]" AND IS USING THE SAME MARKER AND"
  223. 3130 [153]" RUNNING TOTAL! (null)O MAKE THINGS EVEN"
  224. 3140 [153]" HARDER, ONCE YOU'VE SCORED THE POINTS"
  225. 3150 [153]" ON A SQUARE, YOU CANNOT RETURN TO IT."
  226. 3155 [153]"            (null)RESS <(null)(null)ATNLENVAL>
  227. 3156 GETA$:IFA$=""THEN3156
  228. 3160 PRINT"[147]   [217]OU MAY USE A JOYSTICK TO SELECT"
  229. 3170 PRINT" YOUR MOVES. [211]IMPLY PRESS THE FIRE"
  230. 3180 PRINT" BUTTON WHEN THE MARKER IS WHERE YOU"
  231. 3190 PRINT" WANT IT. [217]OU CAN ALSO USE THE CURSOR"
  232. 3200 PRINT" KEYS TO MOVE, AND THE RETURN KEY OR"
  233. 3210 PRINT" SPACE BAR FOR THE FIRE BUTTON."
  234. 3211 PRINT" [206][207][212][197]: [201]F ONLY ONE JOYSTICK IS USED
  235. 3212 [153]" THEN ONE PLAYER MUST USE THE KEYBOARD.
  236. 3220 PRINT"   [212]HE COMPUTER WON'T LET YOU MAKE AN"
  237. 3230 PRINT" ILLEGAL MOVE. [201]F YOU HAVE NO MOVE,"
  238. 3240 PRINT" (THE ADJACENT SQUARES ARE ALL TAKEN)"
  239. 3250 PRINT" YOU ARE ALLOWED TO MOVE ANYWHERE ON"
  240. 3251 PRINT" THE BOARD. [212]HIS CAN WIN YOU THE GAME,"
  241. 3260 PRINT" OR LOSE IT, IF YOU LET YOUR OPPONENT"
  242. 3270 PRINT" HAVE AN ANYWHERE MOVE. [212]HE GAME ENDS"
  243. 3280 PRINT" WHEN YOU HAVE SCORED ALL BUT TEN (OR"
  244. 3290 PRINT" LESS) OF THE POINTS ON THE BOARD. THIS"
  245. 3300 PRINT" ALWAYS LEAVES ONE OR TWO SQUARES AT"
  246. 3310 PRINT" THE END OF THE GAME."
  247. 3315 PRINT"            [208]RESS <[211][208][193][195][197]>
  248. 3316 [161]A$:[139]A$[178]""[167]3316
  249. 3320 [153]"LOAD":[142]
  250.