home *** CD-ROM | disk | FTP | other *** search
/ Compute! Gazette 1984 November / 1984-11.d64 / supertank (.txt) < prev    next >
Commodore BASIC  |  2022-09-20  |  7KB  |  173 lines

  1. 10 print"[147]":restore:v=53248:pokev+32,0:pokev+33,1:pokev+17,peek(v+17)and247
  2. 15 printtab(53)"w*e*l*c*o*m*e!":printtab(59)"to"
  3. 17 printtab(55)"supertank!":print
  4. 20 forq=1to4:printtab(14)"[152][170]":next
  5. 22 printtab(14)"[170][169]        [223]":printtab(14)"[169] [209] [209]  [209][209][209] [223][146][162][162][185][185][185][185][185][185][185][185][162][162][162]"
  6. 24 printtab(13)"[169]  [209] [209]   [205]   [146][184][184][183][183][183][183][183][183][183][183][184][184][184]"
  7. 26 printtab(13)"   [209][209][209]  [209][209][209]  [146]"
  8. 28 print"   [169]                              [223][146]"
  9. 30 print"  [169]                                [223][146]"
  10. 32 print"[166][166][152]                                  [146][166][166][166]"
  11. 34 print"[166][166][166][152][205] [215][169] [223][146][215][169] [223][146][215][169] [223][146][215][169] [223][146][215][169] [223][146][215][169] [223][146][215][169] [223][146][215][206][166][166][166][166]"
  12. 36 print"[166][166][166][166][152][205]  [209] [146]  [209] [146]  [209] [146]  [209] [146]  [209] [146]  [209] [146]  [209] [146][206][166][166][166][166][166]"
  13. 38 print"[166][166][166][166][166][152][205][223] [146][169][215][223] [146][169][215][223] [146][169][215][223] [146][169][215][223] [146][169][215][223] [146][169][215][223] [146][169][166][166][166][166][166][166]"
  14. 40 print"[166][166][166][166][166][166][152][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][183][166][166][166][166][166][166][166]"
  15. 42 forq=1to2:print"[166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166]":next
  16. 43 gosub800
  17. 48 s=54272:forl=stos+24:pokel,0:next
  18. 50 print"[147]":pokev+32,1:pokev+33,0:printtab(120)
  19. 52 gosub1000
  20. 60 print"[147]":printtab(90)"tank specifications"
  21. 62 printtab(49)" strong [146]   [158] medium [146]   weak [146]"
  22. 64 printtab(40)"1.tiger[146]    armor     [158]fire     speed"
  23. 66 printtab(40)"[158]2.t-34[146]     speed     [158]armor    fire"
  24. 68 printtab(40)"3.sherman[146]  fire      [158]speed    armor":printtab(120)
  25. 70 print:input"   which tank do you choose";ta
  26. 72 ifta<1orta>3then80
  27. 78 print"             get ready !":forq=1to500step.5:next:goto85
  28. 80 print"          you can't do that!    ":gosub1300:goto70
  29. 85 v=53248:gosub1100
  30. 90 print"[147]":pokev+32,0:pokev+33,1
  31. 92 printtab(7)"[152][169][223][146]    [169][223][146]       [169][223][146]    [169][223][146]    [144]score"
  32. 94 print"  [152][169][223][146]  [169]  [146]   [169]  [223][146]     [169]  [223][146]  [169]  [223][146]  [144]";sc
  33. 96 print" [152][169]  [223][169]   [223][146]      [223][146]  [169]     [146] [169]    [223][146]  [144]armor"
  34. 98 print"[152][169]         [223][169]     [223][169]      [169]      [223][146][144]";ar
  35. 100 forq=1to17:print"[166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166]":next
  36. 110 print"[152][171][195][195][195][195][195][195][195][195][195][179][169]             [223][171][195][195][195][195][195][195][195][195][195][179]"
  37. 112 print"[152][171][195][195][195][195][195][195][195][195][195][179]                 [171][195][195][195][195][195][195][195][195][195][179]"
  38. 114 gosub420
  39. 120 cb=1:ti$="000000"
  40. 150 pokev+21,15:poke2040,13:pokev+39,0:pokev,170:pokev+1,150:y=170:x=150:sh=0
  41. 151 poke2042,193:pokev+41,11:rf=0:ut=110:pokev+42,0:poke2043,195
  42. 152 poke2041,14:pokev+40,0:pokev+2,x1:pokev+3,y1
  43. 180 s=notpeek(56321)and15:u=sand1:d=sand2:l=sand4:r=sand8:y1=0:x1=0
  44. 182 pokev+23,0:pokev+29,0
  45. 185 ifuthenx=x-m1:ifx<110thenx=x+m1
  46. 187 ifdthenx=x+m1:ifx>180thenx=x-m1
  47. 189 ifrtheny=y+m1:ify>245theny=y-m1
  48. 191 ifltheny=y-m1:ify<90theny=y+m1
  49. 200 pokev,y:pokev+1,x
  50. 210 j=notpeek(56321)and16:ifj=16thengosub245
  51. 230 bo=bo+.5:gosub310:goto180
  52. 245 sh=sh+1:x1=x:mr=y:hh=y/2:gosub400
  53. 247 fordd=ddtohhstep5:pokev+2,dd:pokev+3,x1:gosub330:next
  54. 250 poke2041,15:fordd=ddtomrstep5:pokev+2,dd:pokev+3,x1:gosub330:next
  55. 251 if(peek(v+30)and4)>0thenif(peek(v+30)and4)>0thengosub253
  56. 252 x1=0:dd=0:y1=0:pokev+2,x1:pokev+3,mr:poke2041,14:return
  57. 253 poke2041,192:pokev+23,2:pokev+29,2
  58. 254 pokev+3,x1-10:pokev+2,dd-12:gosub410:gosub495
  59. 258 forre=1to500:next:pokev+23,0:pokev+29,0
  60. 260 x1=0:dd=0:y1=0:pokev+2,x1:pokev+3,mr:poke2041,14:return
  61. 310 rf=rf+5:ifrf>215then350
  62. 315 pokev+4,rf:pokev+5,ut:return
  63. 330 rf=rf+1.8:ifrf>215thenrf=0
  64. 333 ifrf=0then340
  65. 335 pokev+4,rf:pokev+5,ut:return
  66. 340 rf=0:ut=110:rs=int(rnd(0)*60):ut=ut+rs:goto330
  67. 350 f1=rf:f2=ut:poke2042,194:pokev+6,f1:pokev+7,f2:gosub400
  68. 355 forq=f2to150step.4:pokev+7,q:next:pokev+29,8:pokev+23,8:pokev+6,f1-12
  69. 360 f2=150:forq=f2to230step.6:pokev+7,q:next:gosub410
  70. 390 pokev+6,0:pokev+7,0:pokev+4,0:pokev+5,0:rf=0:pokev+23,0:pokev+29,0
  71. 391 poke2042,193:goto499
  72. 400 s=54272:forl=stos+24:pokel,0:next:pokes+5,9:pokes+6,16:pokes+24,15
  73. 405 pokes+4,129:pokes+1,34:pokes,75:return
  74. 410 s=54272:forl=stos+24:pokel,0:next:pokes+5,11:pokes+6,16:pokes+24,15
  75. 415 pokes+4,129:pokes+1,54:pokes,111:return
  76. 420 s=54272:forl=stos+24:pokel,0:next:pokes+5,11:pokes+6,56:pokes+24,15
  77. 425 pokes+4,129:pokes+1,51:pokes,97:return
  78. 495 sc=sc+10:cb=0:rn=int(rnd(0)*15):cb=cb+rn:goto500
  79. 499 ar=ar-1
  80. 500 v=53248:print"":pokev+32,0:pokev+33,cb
  81. 501 rf=0:ut=110:rs=int(rnd(0)*60):ut=ut+rs:rf=rf+1.5:
  82. 502 printtab(7)"[152][169][223][146]    [169][223][146]       [169][223][146]    [169][223][146]    [144]score"
  83. 504 print"  [152][169][223][146]  [169]  [146]   [169]  [223][146]     [169]  [223][146]  [169]  [223][146]  [144]";sc
  84. 506 print" [152][169]  [223][169]   [223][146]      [223][146]  [169]     [146] [169]    [223][146]  [144]armor"
  85. 508 print"[152][169]         [223][169]     [223][169]      [169]      [223][146][144]";ar
  86. 509 ifar=0then549
  87. 510 return
  88. 549 ll=18:bl=12:bb=15
  89. 550 print"":pokev+32,0:pokev+33,1
  90. 558 forq=5to7:printtab(q)"[144][205]"spc(10)"[205]":next
  91. 560 printtab(7)"[144][206]"spc(11)"[205]"spc(4)"[206][205]"
  92. 561 printtab(6)"[206]"spc(13)"[205]"spc(2)"[206]"spc(2)"[205]"
  93. 562 printtab(5)"[144][206]"spc(15)"[144][205][206]"spc(4)"[205]"
  94. 563 printtab(5)"[205]"spc(21)"[206]"spc(3)"[206][205]"
  95. 564 printtab(6)"[205]"spc(6)"[206][205]"spc(11)"[206]"spc(3)"[206]"spc(2)"[205]"
  96. 565 printtab(7)"[205]"spc(4)"[206]"spc(2)"[205]"spc(10)"[205]"spc(2)"[206]"spc(4)"[205]"
  97. 566 printtab(8)"[205]"spc(2)"[206]"spc(4)"[205]"spc(10)"[205][206]"spc(6)"[205]"
  98. 567 printtab(9)"[205][206]"spc(6)"[205]"spc(17)"[206]"
  99. 568 printtab(18)"[205]"spc(15)"[206]":forlb=1to6:printtab(ll)"[206]"spc(14)"[206]":ll=ll-1:next
  100. 570 forq=1to5:printtab(bl)"[206]"spc(bb)"[205]":bl=bl-1:bb=bb+2:next
  101. 580 restore:pokev+23,0:pokev+29,0:pokev+21,0:gosub420:forq=1to500step.1:next
  102. 585 s=54272:forl=stos+24:pokel,0:next:gosub1200
  103. 588 v=53248: bo=bo/10:xx=int(bo):sc=sc+xx:ifsc>hsthenhs=sc
  104. 589 print"[147]":pokev+32,0:pokev+33,1:poke53281,1
  105. 590 printtab(85)"[149]b*o*n*u*s ";xx;spc(3)"shots fired";sh:printtab(45)"your";
  106. 591 print" score";sc;spc(3)"high score ";hs:printtab(49)"your rank is [144]";b$
  107. 592 printtab(43)"[149]your total surviving time ";ti$
  108. 593 printtab(86)"want to play again? (y/n)"
  109. 595 getc$:ifc$=""then595
  110. 596 sc=0:b$="":ifc$="y"then599
  111. 597 ifc$="n"thensys64738
  112. 598 c$="":goto595
  113. 599 sh=0:sc=0:bo=0:xx=0:pokev+32,1:pokev+33,0:goto60
  114. 800 s=54272:forl=stos+24:pokel,0:next:pokes+5,9:pokes+6,0:pokes+24,15
  115. 801 readhf,lf,dr:ifhf=-1thenreturn
  116. 804 pokes+1,hf:pokes,lf:pokes+4,33:fort=1todr:next:pokes+4,32:goto801
  117. 810 data18,209,1024,15,210,512,18,209,512,16,195,1024,14,24,512,11,48,512
  118. 811 data18,209,200,16,195,200,15,210,200,14,24,200,15,210,512,22,96,512
  119. 812 data16,195,1024,11,48,1024,15,210,512,14,24,200,12,143,200,11,48,200
  120. 813 data10,143,200,11,48,200,12,143,200,11,48,512,16,195,512,14,239,512
  121. 814 data11,48,512,15,210,200,15,210,200,14,24,200,12,143,200,11,48,200
  122. 815 data10,143,200,11,48,200,12,143,200,11,48,512,16,195,1024,22,96,512
  123. 816 data18,209,1024,15,210,512,18,209,512,16,195,1024,14,24,512,1