home *** CD-ROM | disk | FTP | other *** search
/ Run Magazine ReRun 1991 January & February / rerun-1991-01-02.d64 / vanquish! (.txt) < prev   
Commodore BASIC  |  2022-09-20  |  6KB  |  174 lines

  1. 0 rem  vanquish!  by kurt ehland  1990
  2. 5 poke53280,0:poke53281,0:v=53248:pokev+21,0:pokev+23,6:pokev+29,6:pokev+16,20
  3. 6 fort=0to24:poke54272+t,0:next:pokev+1048,15:pokev+1029,5:pokev+1025,2
  4. 8 pokev+1028,131:pokev+1030,100
  5. 9 print"[147]"spc(12)"v a n q u i s h !":fort=0to300:r=int(40+3*rnd(1))
  6. 10 pokev+22,r:next:pokev+22,40:pokev+1025,0
  7. 15 input"[147]do you want obstacles";a$
  8. 20 ifa$="y"ora$="yes"thenvq=1
  9. 30 pokev+21,31:pokev+3086,peek(v+3086)and254:poke1,peek(1)and251
  10. 50 fork=12288to12799:pokek,peek(k+40960):nextk
  11. 60 poke1,peek(1)or4:pokev+3086,peek(v+3086)or1:pokev+24,(peek(v+24)and240)or12
  12. 90 fort=1to11:reada$:g=12288+(asc(a$)-64)*8:fork=gtog+7:readg:pokek,g:nextk,t
  13. 120 data"k",9,15,14,15,6,3,3,3
  14. 130 data"q",,176,224,192,96,,240,192
  15. 140 data"_",131,131,199,239,127,63,27,29
  16. 150 data"\",240,192,192,192,128,128,128,224
  17. 160 data"^",255,,255,,255,,255,0
  18. 170 data"z",16,19,30,60,38,254,142,12
  19. 180 data"x",,192,,,,124,96,96
  20. 190 data"v",248,60,63,31,31,120,24,120
  21. 200 data"m",120,24,248,252,252,60,12,60
  22. 210 data"@",255,129,129,129,129,129,255,0
  23. 211 data"j",255,255,255,255,255,255,255,255
  24. 215 h=0:print"[147]"
  25. 220 fort=7to31:poke1024+h+t,30:next:h=h+120:ifh=1080thenh=0:goto240
  26. 230 goto220
  27. 240 fort=7to31step3:poke1024+h+t,30:next:h=h+40:ifh=1000thenh=0:bc=55296:goto260
  28. 250 goto240
  29. 260 fort=7to31:pokebc+h+t,11:next:h=h+40:ifh=1000then280
  30. 270 goto260
  31. 280 fort=1to7:reada:pokebc+a,1:next:data7,31,487,499,511,967,991
  32. 290 fort=1to18:reada:pokebc+a,15:next
  33. 300 data8,30,47,71,447,459,471,488,498,500,510,539,551,527,927,951,968,990
  34. 310 fort=1to36:reada:pokebc+a,12:next
  35. 320 data9,10,28,29,87,127,111,151,407,367,419,379,431,391,489,490,496,497,501
  36. 330 data502,508,509,567,607,579,619,591,631,887,847,969,970,911,871,988,989
  37. 740 gosub5900
  38. 750 pokev+2,25:pokev+3,135:pokev+4,55:pokev+5,135
  39. 760 pokev+6,50:pokev+7,140:pokev+8,30:pokev+9,140
  40. 770 print"":print"kqkqkqkqkqkqkqkq"
  41. 780 print"_\_\_\_\_\_\_\_\":print""
  42. 790 print"":print"zxzxzxzxzxzxzxzx"
  43. 800 print"vmvmvmvmvmvmvmvm":print"":poke55723,11
  44. 810 ifvq=1thengosub4200
  45. 850 gosub900:gosub920:goto950
  46. 900 p=56321:pj=1031:rn=int(201+6*rnd(1)):poke2043,rn:b=((peek(p)and16)=0)
  47. 905 ifbthenprint"       ";:return
  48. 910 print"player1":goto900
  49. 920 sc=rn:rn(2)=int(201+6*rnd(1)):poke2044,rn(2):b=((peek(p-1)and16)=0)
  50. 930 ifbthensc(2)=rn(2):print""spc(32)"       ";:return
  51. 940 print""spc(32)"player2";:goto920
  52. 950 ifsc=sc(2)thenfort=1to1500:next:goto850
  53. 960 ifsc>sc(2)thengosub4090:gosub900:nm=rn-200:p=56321:pg=0:ph=0:gosub4000
  54. 970 ifsc<sc(2)thengosub4100:gosub920:nm=rn(2)-200:p=56320:pg=0:ph=0:gosub4000
  55. 980 kl=0
  56. 1000 hm=((peek(p)and4)=0)-((peek(p)and8)=0):b=((peek(p)and16)=0):poke54273,0
  57. 1010 vm=((peek(p)and1)=0)-((peek(p)and2)=0)
  58. 1015 ifhb=1thencv=2:goto1070
  59. 1016 ifhb=2thencv=6:goto1070
  60. 1020 ifhm=1thencf=30:gosub4000:pg=pg+3:ifpg=24thenpg=21
  61. 1021 ifhm=1then1055
  62. 1030 ifhm=-1thencf=30:gosub4000:pg=pg-3:ifpg=-3thenpg=0
  63. 1031 ifhm=-1then1055
  64. 1040 ifvm=-1thencf=30:gosub4000:ph=ph-120:ifph=-120thenph=0
  65. 1041 ifvm=-1then1055
  66. 1050 ifvm=1thencf=30:gosub4000:ph=ph+120:ifph=960thenph=840
  67. 1055 ifbthenifpeek(pj+pg+ph+pf(t)+41)=11andpy=1thenhb=1
  68. 1056 ifbthenifpeek(pj+pg+ph+pf(t)+41)=26andpy=2thenhb=2
  69. 1060 cf=0:gosub4000:goto1000
  70. 1070 ifhm=1thengosub4015:pg=pg+3:gosub5000:ifpg=24thenpg=21:jg=jg-1:gosub5100
  71. 1071 ifhm=1then1105
  72. 1080 ifhm=-1thengosub4015:pg=pg-3:gosub5000:ifpg=-3thenpg=0:jg=jg-1:gosub5100
  73. 1081 ifhm=-1then1105
  74. 1090 ifvm=-1thengosub4015:ph=ph-120:gosub5000:ifph=-120thenph=0:jg=jg-1
  75. 1091 ifvm=-1then1105
  76. 1100 ifvm=1thengosub4015:ph=ph+120:gosub5000:ifph=960thenph=840:jg=jg-1
  77. 1105 ifhy=1thenhy=0:gosub4020:gosub5120:goto4060
  78. 1106 ifhy=2thenhy=0:gosub4020:gosub5140:goto4060
  79. 1107 ifkl=5thengosub4020:goto4060
  80. 1110 gosub4020:ifjg=nmthen4060
  81. 1120 goto1000
  82. 4000 pf(1)=0:pf(2)=3:pf(3)=123:pf(4)=120:
  83. 4010 fort=1to4:pokepj+pg+ph+pf(t),cf:next:return
  84. 4015 pf(1)=41:pf(2)=42:pf(3)=81:pf(4)=82:yf(1)=10:yf(2)=10:yf(3)=10:yf(4)=10
  85. 4016 jg=jg+1:we(jg)=(pj+pg+ph):goto4030
  86. 4020 pf(1)=41:pf(2)=42:pf(3)=81:pf(4)=82:yf(1)=11:yf(2)=17:yf(3)=31:yf(4)=28
  87. 4021 ifhb=1thencv=2:yf(1)=11:yf(2)=17:yf(3)=31:yf(4)=28
  88. 4022 ifhb=2thencv=6:yf(1)=26:yf(2)=24:yf(3)=22:yf(4)=13
  89. 4023 ifkl=5thencv=0:yf(1)=32:yf(2)=32:yf(3)=32:yf(4)=32:ifpy=1thengosub5120
  90. 4024 ifkl=5andpy=2thengosub5140
  91. 4030 fort=1to4:pokepj+pg+ph+pf(t),yf(t):pokebc+pg+ph+pf(t)+7,cv:next
  92. 4050 return
  93. 4060 pf(1)=0:pf(2)=3:pf(3)=123:pf(4)=120:fort=1to4:pokewe(1)+pf(t),30:next
  94. 4065 pf(1)=41:pf(2)=42:pf(3)=81:pf(4)=82
  95. 4070 fort=1tojg:fory=1to4:pokewe(t)+pf(y),32:nexty:nextt
  96. 4075 poke54273,0:ifxd=8thenprint""spc(16)"red wins!":goto4078
  97. 4076 ifxs=8thenprint""spc(15)"blue wins!":goto4078
  98. 4077 goto4080
  99. 4078 fort=1to5000:next:poke53265,peek(53265)and223:poke53272,peek(53272)and247
  100. 4079 run
  101. 4080 ifhb=1thensc=0:sc(2)=1:jg=0:hb=0:b=0:py=0:goto970
  102. 4085 ifhb=2thensc=1:sc(2)=0:jg=0:hb=0:b=0:py=0:goto960
  103. 4090 fort=1to1500:next:py=1:return
  104. 4100 fort=1to1500:next:py=2:return
  105. 4200 rb=int(5+4*rnd(1)):fort=1torb
  106. 4210 rx=int(0+8*rnd(1)):ry=int(0+4*rnd(1))
  107. 4220 poke1312+(rx*3)+(ry*120),10:poke1313+(rx*3)+(ry*120),10
  108. 4230 poke1352+(rx*3)+(ry*120),10:poke1353+(rx*3)+(ry*120),10:next:return
  109. 5000 ifpeek(pj+ph+pg+41)=32thenreturn
  110. 5001 ifpeek(pj+ph+pg+41)=11andjg=nmandpy=2thenhy=1:return
  111. 5002 ifpeek(pj+ph+pg+41)=26andjg=nmandpy=1thenhy=2:return
  112. 5012 gosub5100:ifhm=1thenpg=pg-3:jg=jg-1:return
  113. 5013 ifhm=-1thenpg=pg+3:jg=jg-1:return
  114. 5023 ifvm=-1thenph=ph+120:jg=jg-1:return
  115. 5033 ifvm=1thenph=ph-120:jg=jg-1:return
  116. 5040 return
  117. 5100 pokev+1029,5:pokev+1025,4
  118. 5110 pokev+1028,81:pokev+1030,100:kl=kl+1:return
  119. 5120 xs=xs+1:pokev+1029,5:pokev+1028,21:pokev+1030,100:pokev+1025,8:gosub5200
  120. 5130 pokev+1025,7:gosub5200:pokev+1025,8:gosub5200:pokev+1025,0:return
  121. 5140 xd=xd+1:pokev+1029,5:pokev+1028,21:pokev+1030,100:pokev+1025,6:gosub5200
  122. 5150 pokev+1025,7:gosub5200:pokev+1025,8:gosub5200:pokev+1025,0:return
  123. 5200 fort=1to500:next:return
  124. 5900 s(1)=14:s(2)=15:s(3)=205:s(4)=205
  125. 5910 sr(1)=895:sr(2)=958:sr(3)=12864:sr(4)=12927
  126. 5920 st(1)=6:st(2)=1:st(3)=1:st(4)=1
  127. 5930 fork=1to4:forn=0to62:poke2040+k,s(k):reada:pokesr(k)+n,a:nextn
  128. 5940 pokev+40+k,st(k):nextk
  129. 5950 s(1)=12989:s(2)=13052:s(3)=13115:s(4)=13178
  130. 5960 fork=1to4:forn=0to62:reada:pokes(k)+n,a:nextn,k
  131. 5965 fork=0to6:poke13240+k,0:next:return
  132. 6008 data 199,9,,,15,176,,14,224
  133. 6009 data ,15,192,,6,96,,3
  134. 6010 data ,,3,240,,3,192,0
  135. 6011 data 131,240,,131,192,,199,192
  136. 6012 data ,239,192,,127,128,,63
  137. 6014 data 128,,27,128,,29,224,,,,,,,,,,,,,,,,,11
  138. 6016 data 16,,,19,192,,30,0
  139. 6017 data ,60,,,38,,,254
  140. 6018 data 248,,142,192,,12,192,0
  141. 6019 data 248,240,,60,48,,63,240
  142. 6020 data ,31,248,,31,248,,120
  143. 6021 data 120,,24,24,,120,120,0
  144. 6022 data ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,3
  145. 6026 data 255,,7,255,128,7,255,128
  146. 6027 data 7,255,128,7,207,128,7,207
  147. 6028 data 128,7,255,128,7,255,128,7
  148. 6029 data 255,128,3,255,,,,0
  149. 6030 data ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,3
  150. 6034 data 255,,7,255,128,7,255,128
  151. 6035 data 7,255,128,6,121,128,6,121
  152. 6036 data 128,7,255,128,7,255,128,7
  153. 6037 data 255,128,3,255,,,,0
  154. 6038 data ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,3
  155. 6042 data 255,,6,127,128,6,127,128
  156. 6043 data 7,255,128,7,207,128,7,207
  157. 6044 data 128,7,255,128,7,249,128,7
  158. 6045 data 249,128,3,255,,,,0
  159. 6046 data ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,3
  160. 6050 data 255,,6,121,128,6,121,128
  161. 6051 data 7,255,128,7,255,128,7,255
  162. 6052 data 128,7,255,128,6,121,128,6
  163. 6053 data 121,128,3,255,,,,0
  164. 6054 data ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,3
  165. 6058 data 255,,6,121,128,6,121,128
  166. 6059 data 7,255,128,7,207,128,7,207
  167. 6060 data 128,7,255,128,6,121,128,6
  168. 6061 data 121,128,3,255,,,,0
  169. 6062 data ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,3
  170. 6066 data 255,,6,121,128,6,121,128
  171. 6067 data 7,255,128,6,121,128,6,121
  172. 6068 data 128,7,255,128,6,121,128,6
  173. 6069 data 121,128,3,255,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
  174.