home *** CD-ROM | disk | FTP | other *** search
/ Compute! Gazette 1985 January / 1985-01.d64 / trap'em_64 (.txt) < prev    next >
Commodore BASIC  |  2022-09-20  |  4KB  |  127 lines

  1. 100 clr:gosub670:gosub 520:gosub540:gosub260:gosub460
  2. 110 s1=0:s2=0:gosub410:ifflthen100
  3. 120 print"[147]":c=54272
  4. 130 r=r+1:ifs1>=100or(s2>=100andnp=2)or(r=11andnp=1)then560
  5. 140 fora=1104to1143:pokea,160:pokea+c,0:pokea+880,160:pokea+880+c,0:next
  6. 150 fora=1144to1944step40:pokea,160:pokea+c,0:pokea+39,160:pokea+39+c,0:next
  7. 160 ifb$="y"thengosub490
  8. 170 ifnp=2thenprint"       red"s1"[146]             blue"s2
  9. 180 ifnp=1thenprint""tab(8)"score"s2;spc(8)"round"r
  10. 190 poke251,194:poke252,5:poke253,214:poke254,5:poke837,7:poke838,11
  11. 200 ti$="000000":sys49152:sc=int(ti/60):ifnp=1thensc=sc*lv
  12. 210 onpeek(834)goto220,230
  13. 220 sp=peek(870)+256*peek(871):gosub245:s2=s2+sc:goto120
  14. 230 sp=peek(872)+256*peek(873):gosub245:s1=s1+sc:goto120
  15. 245 fora=1to6:pokesp,peek(sp)-2*(peek(sp)and128)+128:forb=1to400:next
  16. 250 next:return
  17. 260 rem option routine
  18. 270 poke53281,1:print"[147]"tab(15)"trap 'em":poke198,0
  19. 280 print""tab(13)"1[146] one player":print""tab(13)"2[146] two player"
  20. 290 printspc(13)"3[146] quit"
  21. 300 geta$:ifa$<"1"ora$>"3"then300
  22. 310 ifa$="3"thenprint"[147]":end
  23. 320 np=val(a$):poke836,np:print"[144]"tab(14)"j[146]oystick or"
  24. 330 print""tab(8)"k[146]eyboard and joystick 2"
  25. 340 geta$:ifa$="j"thenreturn
  26. 350 ifa$<>"k"then340
  27. 360 print"[147]       which key to go up?":wait198,1:a(1)=peek(197):poke198,0
  28. 370 print"       which key to go down?":wait198,1:a(2)=peek(197):poke198,0
  29. 380 print"       which key to go left?":wait198,1:a(3)=peek(197):poke198,0
  30. 390 print"       which key to go right?":wait198,1:a(4)=peek(197):poke198,0
  31. 400 fora=1to4:poke829+a,a(a):next:return
  32. 410 print"[147]"spc(11)"enter speed (0-9)"
  33. 420 printspc(7)"or (c) to change options"
  34. 430 geta$:if(a$<"0"ora$>"9")anda$<>"c"then430
  35. 440 ifa$="c"thenfl=1
  36. 450 lv=val(a$):p=60-lv*6:poke839,p:poke840,p:lv=lv+1:return
  37. 460 print"[147]"spc(8)"do you want barriers?"
  38. 470 getb$:ifb$<>"y"andb$<>"n"then470
  39. 480 return
  40. 490 fora=1to30
  41. 500 q=rnd(1)*870+1104:ifpeek(q)<>32or(q>1463andq<1503)then500
  42. 510 pokeq,160:pokeq+c,0:next:return
  43. 520 rem initialize
  44. 530 fora=54272to54296:pokea,0:next:return
  45. 540 poke54287,255:poke54290,129:poke54273,7:poke54296,15:poke54277,21
  46. 550 poke54278,240:return
  47. 560 gosub520:ifnp=2then600
  48. 570 print"[147]"spc(15)"score:"s2
  49. 580 ifs2>hithenhi=s2
  50. 590 printspc(16)"high:"hi:goto640
  51. 600 w=-(s1>=100)-2*(s2>=100):print"[147]"spc(13)"player"w"wins!"
  52. 610 print"    player1:"s1:printspc(25)"[145]player2:"s2
  53. 620 wi(w)=wi(w)+1:print"    wins   :"wi(1):printspc(25)"[145]wins   :"wi(2)
  54. 630 t1=t1+s1:t2=t2+s2:print"    total  :"t1:printspc(25)"[145]total  :"t2
  55. 640 printspc(15)"hit any key":poke198,0
  56. 650 geta$:ifa$=""then650
  57. 660 onnpgoto100,110
  58. 670 i=49152:ifpeek(i)=32thenreturn
  59. 680 print"[147]"spc(13)"please wait"
  60. 690 read a:if a=256 then return
  61. 700 poke i,a:i=i+1:goto 690
  62. 710 data 32,22,192,32,229,192
  63. 720 data 173,66,3,240,1,96
  64. 730 data 32,72,193,165,197,208
  65. 740 data 237,76,15,192,169,33
  66. 750 data 141,4,212,162,3,181
  67. 760 data 251,157,102,3,202,16
  68. 770 data 248,160,100,173,0,220
  69. 780 data 41,15,201,15,208,3
  70. 790 data 173,70,3,141,61,3
  71. 800 data 141,70,3,173,1,220
  72. 810 data 141,60,3,165,197,205
  73. 820 data 62,3,208,4,162,254
  74. 830 data 208,33,205,63,3,208
  75. 840 data 4,162,253,208,24,205
  76. 850 data 64,3,208,4,162,251
  77. 860 data 208,15,205,65,3,208
  78. 870 data 4,162,247,208,6,173
  79. 880 data 60,3,76,111,192,138
  80. 890 data 45,60,3,41,15,201
  81. 900 data 15,208,3,173,69,3
  82. 910 data 141,60,3,141,69,3
  83. 920 data 136,208,166,169,32,141
  84. 930 data 4,212,206,71,3,208
  85. 940 data 154,173,72,3,141,71
  86. 950 data 3,160,0,162,0,185
  87. 960 data 60,3,74,176,8,169
  88. 970 data 40,32,199,192,76,190
  89. 980 data 192,74,176,8,169,40
  90. 990 data 32,217,192,76,190,192
  91. 1000 data 74,176,8,169,1,32
  92. 1010 data 199,192,76,190,192,169
  93. 1020 data 1,32,217,192,232,232
  94. 1030 data 200,204,68,3,208,207
  95. 1040 data 96,141,67,3,181,251
  96. 1050 data 56,237,67,3,149,251
  97. 1060 data 181,252,233,0,149,252
  98. 1070 data 96,24,117,251,149,251
  99. 1080 data 181,252,105,0,149,252
  100. 1090 data 96,160,0,173,68,3
  101. 1100 data 201,1,240,35,165,251
  102. 1110 data 197,253,208,29,165,252
  103. 1120 data 197,254,208,23,173,27
  104. 1130 data 212,16,9,169,1,141
  105. 1140 data 66,3,32,83,193,96
  106. 1150 data 169,2,141,66,3,32
  107. 1160 data 105,193,96,160,0,140
  108. 1170 data 66,3,173,27,212,16
  109. 1180 data 7,32,41,193,32,53
  110. 1190 data 193,96,32,53,193,32
  111. 1200 data 41,193,96,177,251,201
  112. 1210 data 32,240,5,169,1,141
  113. 1220 data 66,3,96,173,68,3
  114. 1230 data 201,1,240,11,177,253
  115. 1240 data 201,32,240,5,169,2
  116. 1250 data 141,66,3,96,32,105
  117. 1260 data 193,173,68,3,201,2
  118. 1270 data 240,1,96,169,219,145
  119. 1280 data 253,165,253,24,105,0
  120. 1290 data 133,106,165,254,105,212
  121. 1300 data 133,107,169,6,145,106
  122. 1310 data 96,160,0,169,214,145
  123. 1320 data 251,165,251,24,105,0
  124. 1330 data 133,106,165,252,105,212
  125. 1340 data 133,107,169,2,145,106
  126. 1350 data 96,256
  127.