home *** CD-ROM | disk | FTP | other *** search
/ Commodore Disc 15 / Commodore_Disc_15_19xx_-_de.d64 / imperium (.txt) < prev    next >
Commodore BASIC  |  2022-10-26  |  6KB  |  217 lines

  1. 1 rem***********************
  2. 2 rem*  imperium romanum   *
  3. 3 rem*   geschrieben von   *
  4. 4 rem*   ralf trabhardt    *
  5. 5 rem* philippsbergstr. 45 *
  6. 6 rem*  6200   wiesbaden   *
  7. 7 rem***********************
  8. 10 poke646,14:ifa=0thena=1:load"romanum",8,1
  9. 15 sys49152
  10. 17 dima(21),b(21),l(21),m(21),n(21)
  11. 20 fb=53280:gosub8000
  12. 25 ja=395:z=0:zt=0
  13. 27 q$="----------------"
  14. 28 c$="                "
  15. 29 v=53248:s=54272
  16. 30 pokes+5,9:pokes+15,30:pokes+24,15
  17. 32 o2=0:o1=14:gosub5000
  18. 40 fori=1to20:reada(i):l(i)=70:m(i)=100:nexti
  19. 45 fori=1to15:readb(i):nexti
  20. 50 fori=1to5:readk(i):nexti
  21. 100 rem*erstellen der karte*
  22. 106 sys50178
  23. 109 pokev+21,127:ql=0:goto250
  24. 111 print"[144]"
  25. 112 printtab(103)q$
  26. 113 ifz=0thenp$=p1$:ka=l(i)
  27. 114 ifz=1thenp$=p2$:ka=m(i)
  28. 115 printtab(23)p$
  29. 116 printtab(23)q$
  30. 117 printtab(23)"zeit:"ja+zt"n.chr"
  31. 118 printtab(23)q$:ifql=0thenql=1:print"":return
  32. 119 printtab(23)"dies ist die"
  33. 120 ifz=0thenprinttab(22)i". legion roms"
  34. 121 ifz=1thenprinttab(22)i".german.horde"
  35. 122 printtab(23)"kampfkraft:"ka
  36. 123 return
  37. 124 printtab(23)q$:fory=1to20:ifl(y)>0thenlg=lg+1:s4=s4+l(y)
  38. 125 nexty:iflg<1then2000
  39. 126 s1=int((100/70)*(s4/lg)):s4=0:printtab(23)p1$:printtab(23)"legionen :"lg
  40. 127 printtab(23)"staerke  :"s1"%":lg=0
  41. 128 printtab(23)q$:fory=1to15:ifm(y)>0thenho=ho+1:s3=s3+m(y)
  42. 129 nexty:ifho<1then2500
  43. 130 s2=int(s3/ho):s3=0:printtab(23)p2$:printtab(23)"horden   :"ho
  44. 131 printtab(23)"staerke  :"s2"%":ho=0
  45. 132 printtab(23)q$
  46. 133 printtab(23)"eroberte staedte"
  47. 134 ifk(3)=5thenprinttab(23)"roma"
  48. 135 ifk(4)=5thenprinttab(23)"byzantium"
  49. 136 ifk(2)=5thenprinttab(23)"saguntum"
  50. 137 ifk(5)=5thenprinttab(23)"carthago"
  51. 138 ifk(1)=5thenprinttab(23)"lutetia"
  52. 200 fori=1to20:ifl(i)>0thenpokea(i),216
  53. 201 ifm(i)>0thenpokeb(i),214
  54. 205 nexti
  55. 210 fory=1to5:ifk(y)>5thenpokek(y),213
  56. 212 nexty
  57. 215 return
  58. 220 poke214,7:sys58460:fory=1to3
  59. 230 printtab(23)c$:nexty
  60. 240 return
  61. 250 gosub111
  62. 260 gosub124
  63. 322 rem*bewegung des fadenkreuzes*
  64. 328 x1=152:y1=152
  65. 333 ifz=0thenjo=56320
  66. 334 ifz=1thenjo=56321
  67. 335 pokev+14,x1:pokev+15,y1:pokev+21,255
  68. 337 gosub3005
  69. 338 ifu=5then350
  70. 339 ifu=4theny1=y1+4
  71. 340 ifu=1thenx1=x1-4
  72. 341 ifu=3thenx1=x1+4
  73. 342 ifu=2theny1=y1-4
  74. 344 ify1<70theny1=68
  75. 345 ify1>234theny1=236
  76. 346 ifx1<18thenx1=16
  77. 347 ifx1>182thenx1=184
  78. 348 ifpeek(197)=4then800
  79. 349 goto335
  80. 350 rem*feuertaste*
  81. 351 x2=x1/8-2:y2=y1/8-4.5
  82. 352 gs=984+x2+(y2*40)
  83. 354 fori=1to20:ifz=0andl(i)>0anda(i)=gsthen360
  84. 355 ifz=1andm(i)>0andb(i)=gsthen360
  85. 356 nexti
  86. 358 goto335
  87. 360 gosub220
  88. 370 gosub111
  89. 480 rem*bewegung der legionen*
  90. 500 x=gs:pokes+1,130:pokes+4,21
  91. 502 pokev+21,127:w1=59
  92. 503 gosub3005
  93. 505 w2=peek(x-40):ifw2<>32andw2<>214andw2<>216thensw=1
  94. 510 ifu=2andn(i)<2andsw=1thenpokex,w1:x=x-40:n(i)=n(i)+1:w1=w2:goto600
  95. 515 w3=peek(x+40):ifw3<>32andw3<>214andw3<>216thensw=2
  96. 517 ifx>2004thensw=0
  97. 520 ifu=4andn(i)<2andsw=2thenpokex,w1:x=x+40:n(i)=n(i)+1:w1=w3:goto600
  98. 521 w4=peek(x-1):ifw4<>32andw4<>214andw4<>216thensw=3
  99. 530 ifu=1andn(i)<2andsw=3thenpokex,w1:x=x-1:n(i)=n(i)+1:w1=w4:goto600
  100. 532 w5=peek(x+1):ifw5<>32andw5<>214andw5<>216thensw=4
  101. 540 ifu=3andn(i)<2andsw=4thenpokex,w1:x=x+1:n(i)=n(i)+1:w1=w5
  102. 600 sw=0:ifz=0thenpokex,216:a(i)=x
  103. 610 ifz=1thenpokex,214:b(i)=x
  104. 615 fory=1to5:ifb(i)=k(y)thenk(y)=5:pokes+4,21:be=be+1:ifbe>3thenbe=0:goto2000
  105. 616 pokes+4,20:nexty
  106. 620 ifu=5thenpokes+4,21:pokes+4,20:goto335
  107. 700 goto503
  108. 800 pokev+21,127:z=z+1:ifz=2thenz=0:zt=zt+1:ifzt=25then2500
  109. 801 poke56334,peek(56334)and254
  110. 802 ifzt=9thengosub9000
  111. 810 fort=1to20:ifl(t)<1then870
  112. 812 pokes+1,100+t
  113. 813 pokes+4,21
  114. 815 i=a(t)+40:k=a(t)+1
  115. 816 c=a(t)-1:g=a(t)-40
  116. 818 forl=1to15:ifm(l)<1then860
  117. 819 q=b(l)
  118. 820 ifi=qorg=qorc=qork=qthen840
  119. 830 goto860
  120. 840 o=int(rnd(1)*20)+1:l(t)=l(t)-o:ifl(t)<1thenpokea(t),217
  121. 850 p=int(rnd(1)*20)+1:m(l)=m(l)-p
  122. 855 ifm(l)<1thenpokeb(l),215
  123. 860 nextl
  124. 870 pokes+4,20:nextt
  125. 880 fori=1to20:n(i)=0:nexti
  126. 890 poke56334,peek(56334)or1
  127. 1020 goto106
  128. 2000 rem*sieg der germanen*
  129. 2010 pokefb+1,8:pokefb,9:pokev+21,0
  130. 2020 print"[147][158]":printtab(3)p2$", herrscher der germanen !"
  131. 2100 printtab(41)"das roemische imperium liegt am boden !"
  132. 2101 printtab(10)"( vae victis !!! )"
  133. 2105 printtab(40)"----------------------------------------"
  134. 2110 printtab(83)"die germanen haben sie wegen ihrer"
  135. 2120 printtab(43)"fuehrungsfaehigkeiten zum koenig auf"
  136. 2125 printtab(43)"lebenszeit ernannt !!!"
  137. 2130 printtab(83)"(das ist eine grosse ehre, wenn man"
  138. 2135 printtab(43)"bedenkt, dass bald die hunnen"
  139. 2140 printtab(43)"kommen)!!"
  140. 2150 goto2640
  141. 2490 rem*sieg der roemer*
  142. 2500 pokefb+1,9:pokefb,8:pokev+21,0
  143. 2550 print"[147][158]":printtab(3)"ave "p1$", kaiser von rom"
  144. 2560 printtab(40)"----------------------------------------"
  145. 2600 printtab(82)"das roemische imperium konnte diesen"
  146. 2605 printtab(42)"klaeglichen versuch einer horde"
  147. 2610 printtab(42)"barbaren laessig abwehren."
  148. 2620 printtab(124)"den germanen folgenden tip:"
  149. 2630 printtab(84)"versucht es in hundert jahren":printtab(44)"nocheinmal!"
  150. 2640 printtab(52)"- feuerknopf -";
  151. 2650 gosub3005
  152. 2660 ifu=5then9500
  153. 2670 goto2650
  154. 3000 rem*joystickabfrage*
  155. 3005 u=0:j=peek(jo)
  156. 3007 if(jand16)=0thenu=5
  157. 3010 if(jand1)=0thenu=2
  158. 3015 if(jand2)=0thenu=4
  159. 3020 if(jand4)=0thenu=1
  160. 3025 if(jand8)=0thenu=3
  161. 3040 return
  162. 4990 rem*bildschirmfarben*
  163. 5000 print"[147][144]":printtab(164)"waehlen sie die bildschirmfarben:"
  164. 5001 printtab(3)"--------------------------------"
  165. 5002 printtab(129)"f1[146] = bildschirmfarbe"
  166. 5003 printtab(89)"f3[146] = rahmenfarbe "
  167. 5004 printtab(89)"f7[146] = start"
  168. 5005 pokefb,o2:pokefb+1,o1:getz$
  169. 5007 ifz$="[133]"theno1=o1+1:ifo1>15theno1=2
  170. 5008 ifz$="[134]"theno2=o2+1:ifo2>15theno2=0
  171. 5020 ifz$="[136]"thenreturn
  172. 5030 fori=1to50:nexti:goto5005
  173. 6000 data1312,1393,1429,1474,1515,1516,1518
  174. 6010 data1520,1522,1511,1549,1601,1625,1632
  175. 6020 data1639,1720,1746,1796,1948,1965
  176. 6030 data1275,1314,1315,1316,1355,1356,1395
  177. 6040 data1396,1397,1398,1436,1437,1438,1439
  178. 6050 data1440,1430,1745,1755,1845,1952
  179. 8000 rem* namen*
  180. 8001 d=0:jo=56320
  181. 8002 po=1549:pokefb,0:pokefb+1,0
  182. 8005 print"[147]":printtab(52)"[176][192][192][192][192][192][192][192][192][192][192][192][174]"
  183. 8010 printtab(12)"[221][153] spieler";1+d;"[221]"
  184. 8020 printtab(12)"[173][192][192][192][192][192][192][192][192][192][192][192][189]"
  185. 8025 ifd=0thenprinttab(51)"[156]kaiser von rom!"
  186. 8026 ifd=1thenprinttab(47)"[156]herrscher der germanen"
  187. 8030 printtab(86)"[159]geben sie ihren namen ein :"
  188. 8040 printtab(83)"[213][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][201]"
  189. 8050 printtab(3)"[221][158]abcdefghijklmnopqrstuvwxyz?! [221]"
  190. 8060 printtab(3)"[202][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][203]"
  191. 8070 printtab(253)"[150]----------"
  192. 8080 x=peek(po):pokepo,x+128
  193. 8090 gosub3005
  194. 8100 ifu=1then8140
  195. 8110 ifu=3then8160
  196. 8120 ifu=5then8180
  197. 8130 goto8090
  198. 8140 ifpeek(po-1)<>32thenpokepo,x:x=peek(po-1):po=po-1:pokepo,x+128
  199. 8150 goto8090
  200. 8160 ifpeek(po+1)<>32thenpokepo,x:x=peek(po+1):po=po+1:pokepo,x+128
  201. 8170 goto8090
  202. 8180 ifx=33then8240
  203. 8190 iflen(a$)<11thena$=a$+chr$(x+64)
  204. 8200 ifx=63thena$="":poke781,21:sys59903
  205. 8210 poke781,21:poke782,0:sys58636:printtab(13)a$
  206. 8220 iflen(a$)>9then8240
  207. 8230 fori=1to50:nexti:goto8090
  208. 8240 ifd=0thenp1$=a$:a$="":d=1:jo=56321:goto8002
  209. 8250 p2$=a$
  210. 8260 return
  211. 9000 forl=1to20:ifl(l)>0thenl(l)=l(l)+50
  212. 9010 ifm(l)>0thenm(l)=m(l)+35
  213. 9020 nextl
  214. 9030 return
  215. 9500 sys58784
  216. 9510 run17
  217.