home *** CD-ROM | disk | FTP | other *** search
/ Publication 8 / Publication_08_1996_High-Tech_de_Side_B.d64 / pharao (.txt) < prev    next >
Commodore BASIC  |  2023-02-26  |  9KB  |  253 lines

  1. 100 rem ******* tut-en amun ***********
  2. 110 rem *******************************
  3. 120 rem ******* wolke *****************
  4. 130 data 0,28,0,124,62,0,254,126,0,255,255,0,255,255,128,255,255,224,255,255,240
  5. 140 data 255,255,240,255,255,240,127,255,240,127,255,224
  6. 150 fori=0to32:readq:poke832+i,q:next
  7. 160 fori=33to62:pokei+832,0:next:v=53248:pokev+16,0:i=rnd(-ti)
  8. 170 poke2040,13:poke2041,13:pokev+39,1:pokev+40,1:pokev+29,2:pokev+21,0
  9. 180 rem ******* sonne ******************
  10. 190 data 0,016,0,0,16,0,16,16,0,8,144,136,4,145,16,2,90,32,9,126,64,6,255,144,3
  11. 200 data 255,224,1,255,128,255,255,254,1,255,128,1,255,96,2,127,16,4,124,128,0
  12. 210 data 170,64,1,41,32,2,72,16,4,8,0,0,8,0,0,8,0
  13. 220 fori=0to62:readq:poke704+i,q:next
  14. 230 poke2042,11:pokev+41,7
  15. 240 poke53280,0:poke53281,0:printchr$(14)
  16. 250 wk=40000+int(rnd(1)*20000):vw=700+int(rnd(1)*500):w2=19
  17. 260 rem ****** anfang ****************
  18. 270 print"[147][158] [196]er [208]harao [212][213][212]-[197][206][195][200] [193][205][207][206] gibt [201]hnen"
  19. 280 print" die ehrenvolle [193]ufgabe, der [197]rbauer"
  20. 290 print" seiner [208]yramide zu sein."
  21. 300 print" [197]r gibt [201]hnen 13 [202]ahre."
  22. 310 print" [211]ie erhalten die [208]rovinz [193][204]-[208][193][210][193][211][195][200][193]"
  23. 320 print" um [193]rbeiter zu besorgen"
  24. 330 print" [206]ehmen sie diese [197]hre an ? ";
  25. 340 poke204,0:poke198,0:wait198,1:geta$:ifa$<>"j"anda$<>"n"then340
  26. 350 poke204,1:ifa$="j"then380
  27. 360 print:print" [198]uer diese [198]rechheit werden [211]ie "
  28. 370 print" von [204]oewen zerrissen.[144]":end
  29. 380 p=100000:g=200:pg=0:ja=1:f=1500:ab=0:te=0:je=13
  30. 390 ko$="[178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][178][146]"
  31. 400 al$="[147][158]      [193][204]-[208][193][210][193][211][195][200][193] [146]  [202]ahr :"
  32. 410 printal$;ja:printko$
  33. 420 print" [197]inwohner   : "p
  34. 430 print" [211]peicher    : "g
  35. 440 print" [198]elder      : "f
  36. 450 print" [215]ieviel [197]inwohner sollen zum"
  37. 460 input" [198]rondienst herangezogen werden";ab$:ab=val(ab$):ifab<0orab>pthen940
  38. 470 p=p-ab:print" [215]ieviel [211]peicher mit [203]orn bekommen die"
  39. 480 input" [193]rbeiter zugeteilt";ak$:ak=int(val(ak$)):ifak<0orak>gthen940
  40. 490 g=g-ak:ifak<(ab/vw)thenta=1:al=int(ak*vw):al=ab-al:ab=ab-al:is=is+al
  41. 500 print" [215]ieviel [211]peicher bekommen die"p
  42. 510 input" anderen [197]inwohner";ek$:ek=int(val(ek$)):ifek<0orek>gthen940
  43. 520 g=g-ek:ifek<(p/vw)thenet=1:el=int(ek*vw):el=p-el:p=p-el:is=is+el
  44. 530 print" [215]ieviel [198]elder sollen bestellt"
  45. 540 input" werden ";fb$:fb=int(val(fb$)):iffb<0orfb>fthen940
  46. 550 fori=1to500:next:printal$;ja:printko$
  47. 560 iffb>(g*25)thenfb=int(g*25):print"[211]ie koennen nur"fb" [198]elder bestellen.":u=1
  48. 570 ifint(fb*9)>pthenfb=int(p/9):print"[211]ie haben zu wenig [194]auern. [198]elder :"fb:u=1
  49. 580 ifu=1thenu=0:fori=1to4000:next
  50. 590 ifp=0orab=0then940
  51. 600 g=g-int(fb/25)
  52. 610 pg=int(50*rnd(1))/100
  53. 620 printal$;ja:printko$:print" [196]ie [197]rnte betrug in diesem [202]ahr"
  54. 630 printpg" [211]peicher pro [198]eld.":g=g+(pg*fb)
  55. 640 ifet=1thenet=0:print" [210]ebellion der [197]inwohner wegen [200]unger.":print" [197]inwohner :"p
  56. 650 ifta=1thenta=0:print" [210]ebellion der [193]rbeiter wegen [200]unger":print" [193]rbeiter :"ab
  57. 660 g=int(g):print" [211]ie haben nun"g" [211]peicher voll."
  58. 670 w=int(w2*rnd(1)+1)
  59. 680 fori=1to5000:next:printal$;ja:printko$
  60. 690 onwgosub980,1010,1050,1090,1130,1170,1210,1250,1300,1340,1720,1770,1820
  61. 700 w=w-13:ifw<1then720
  62. 710 onwgosub1880,1940,2000,2110,2220,2270
  63. 720 fori=1to9000:next:ifrnd(1)>.5andw<>w1thenw1=w:goto670
  64. 730 printal$;ja:printko$:g=int(g)
  65. 740 ifab<vw/2thenprint"[218]um [194]auen sind es zuwenig [193]rbeiter":goto810
  66. 750 print" [196]er [194]au der [208]yramide geht weiter ..."
  67. 760 fori=1to1500:next
  68. 770 ts=ts+18*(ab/wk+ak*300/ab)
  69. 780 ifts=>324thenen=1:ts=324
  70. 790 gosub2490
  71. 800 print"[147]"chr$(14)
  72. 810 iff<vw/2thenprint" [211]ie [210]uinieren alles ...":fori=1to400:next:goto940
  73. 820 printal$;ja:print"          [202] a h r e s b e r i c h t":printko$
  74. 830 ifab+p<wk/1.5thenprint" [196]as [204]eiden der [194]ewohner ist gross.":uu=1
  75. 840 ifuu=1thenprint" [201]hre [194]evoelkerung ist zu klein ! : "
  76. 850 ifuu=1thenprint" [194]evoelkerung :"ab+p
  77. 860 ifuu=1thenprint" [201]hr [212]od ist sehr grausam ! ":goto1400
  78. 870 ja=ja+1:ifja=int(je/2)thenprint" [196]ie [200]aelfte der [218]eit ist um ..."
  79. 880 nw=int(vw*ts/2*rnd(1))+1:printnw"[197]inwohner wurden geboren..."
  80. 890 nt=int(vw*ts/2*rnd(1))+1:printnt"[197]inwohner starben ...":p=p+nw-nt
  81. 900 ifja>jethenprintal$;ja:printko$:print" [213]nfaehig eine [208]yramide zu bauen":goto940
  82. 910 is=is+nt:ie=ie+nw
  83. 920 print" [197]in neues [202]ahr bricht an ...."
  84. 930 p=p+ab:ab=0:fori=1to9000:next:goto410
  85. 940 rem ******* fehler ****************
  86. 950 poke214,20:print:print"  [196]er [208]harao mag keine [198]ehler ..."
  87. 960 print"  [196]eshalb wirst du hingerichtet ...":goto1400
  88. 970 rem ******* priester **************
  89. 980 kl=int(g*rnd(1))+1:print" [196]ie [208]riester des [212]otengottes [193][206][213][194][201][211]"
  90. 990 print" beschlagnahmen"kl"[211]peicher mit [203]orn."
  91. 1000 g=g-kl:n=2:gosub1590:return
  92. 1010 rem ******* felder weg ************
  93. 1020 kl=int(f/2*rnd(1))+1:print" [197]infallende [203]reuzritter rauben"
  94. 1030 printkl" [198]elder der [208]rovinz ..."
  95. 1040 f=f-kl:n=2:gosub1590:return
  96. 1050 rem ******* sondersteuer **********
  97. 1060 gi=int(100*rnd(1)):print" [197]ine [211]ondersteuer erbrachte"
  98. 1070 print""gi"[146] [211]peicher voll [203]orn ..."
  99. 1080 g=g+gi:n=1:gosub1590:return
  100. 1090 rem ****** geschenk **************
  101. 1100 gi=int(1000*rnd(1)):print" [196]er [208]harao belohnt gute [193]rbeit."
  102. 1110 print" [196]ehalb schenkt er"gi" [198]elder ..."
  103. 1120 f=f+gi:n=1:gosub1590:return
  104. 1130 rem ****** flutwelle *************
  105. 1140 kl=int(100*rnd(1)):print" [197]ine [198]lutwelle verwuestete"
  106. 1150 printkl"[198]elder unserer [208]rovinz ..."
  107. 1160 f=f-kl:n=2:gosub1590:return
  108. 1170 rem ****** einwanderung **********
  109. 1180 da=int(p*rnd(1))+1:print" [213]nsere [208]rovinz ist beliebt !"
  110. 1190 printda"[204]eute wanderten ein ..."
  111. 1200 p=p+da:n=2:gosub1590:return
  112. 1210 rem ****** sterben ***************
  113. 1220 we=int(p*rnd(1))+1:print" [196]urch eine [197]pedemie starben "
  114. 1230 print" leider"we"[204]eute."
  115. 1240 is=is+we:p=p-we:n=2:gosub1590:return
  116. 1250 rem ****** erdbeben **************
  117. 1260 ifts<10thenprint" [199]lueck gehabt !! ":return
  118. 1270 ei=int(ts*rnd(1))+1:print" [196]urch [197]rdbeben wurden"
  119. 1280 printei*199"[211]teinbloecke der [208]yramide zerstoert."
  120. 1290 ts=ts-ei:n=2:gosub1590:return
  121. 1300 rem ****** streik ****************
  122. 1310 tt=int(ab*rnd(1))+1:print" [201]hre [193]rbeiter streiken."
  123. 1320 print" [197]s kam zu blutigen [203]aempfen.            [197]s starben"tt" [193]rbeiter"
  124. 1330 is=is+tt:ab=ab-tt:n=2:gosub1590:return
  125. 1340 rem ****** mordversuch ***********
  126. 1350 xx=int(100*rnd(1)):ifxx<40then1380
  127. 1360 print" [211]ie sind knapp einem [205]ordanschlag       entkommen. [193]mon sei [196]ank"
  128. 1370 n=1:gosub1590:return
  129. 1380 print" [196]er [205]oerder war erfolgreich und         hat [211]ie von hinten "
  130. 1390 print" getoetet. [196]as [214]olk trauert um [211]ie ! ":n=2:gosub1590
  131. 1400 rem ****** angabe ****************
  132. 1410 print"[158]":for t=1to9000:next:print"[147]":printko$
  133. 1420 print" [197]s starben"is"[204]eute."
  134. 1430 print" [197]s wanderten"ie" [204]eute ein."
  135. 1440 ifw=10then1470
  136. 1450 print" [205]oegen ihre [199]ebeine 1000 [202]ahre "
  137. 1460 print" im [211]ande vergraben sein ..."
  138. 1470 printko$:end
  139. 1480 rem ******* ende *****************
  140. 1490 print"[147][158]"al$;ja:printko$:print" [211]ie haben es wider [197]rwarten"
  141. 1500 print" geschaftt, die [208]yramide zu [197]rbauen."
  142. 1510 print" [201]hnen wird nun die ungeheuere [197]hre"
  143. 1520 print" zu [212]eil, mit [201]hrem [208]harao darin"
  144. 1530 print" begraben zu werden."
  145. 1540 print"[144]":end
  146. 1550 rem ******* positiv **************
  147. 1560 fort1=0to255step2:pokem,t1:next:return
  148. 1570 rem ******* negativ **************
  149. 1580 fort1=255to1step-4:pokem,t1:pokem,t1/1.5:next:return
  150. 1590 rem ******* ton ******************
  151. 1600 si=54272:m=si+8:pokesi+24,15:pokesi+7,0:pokesi+13,240:pokesi+12,0
  152. 1610 pokesi+9,125:pokesi+10,7:pokesi+11,65
  153. 1620 onngosub1550,1570
  154. 1630 pokem,0:return
  155. 1640 end
  156. 1650 rem ******* invers ***************
  157. 1660 fori=1024to1863:w1=peek(i)
  158. 1670 pokei,w1+128*sgn(128-w1)
  159. 1680 next:return
  160. 1690 printsk"[211]klaven als [193]rbeiter ..."
  161. 1700 printfe"[198]elder ..."
  162. 1710 printge"[211]peicher mit [199]etreide ..."
  163. 1720 rem ******* diebe ****************
  164. 1730 print" [196]iebe waren taetig !"
  165. 1740 we=int(g/2*rnd(1)+1)
  166. 1750 printwe"[203]ornspeicher wurden leergeraeumt."
  167. 1760 g=g-we:n=2:gosub1590:return
  168. 1770 rem ******* pharao stibt *********
  169. 1780 print" [196]er [208]harao wird bald sterben !"
  170. 1790 j1=int(rnd(1)*(je-ja)/2)+1
  171. 1800 print" [211]ie haben"j1"[202]ahre weniger [218]eit."
  172. 1810 je=je-j1:n=2:gosub1590:return
  173. 1820 rem ******* schatzraub ***********
  174. 1830 print" [211]ie haben wertvolle [211]chaetze geraubt !"
  175. 1840 j1=int(rnd(1)*(je-ja)/2)+1
  176. 1850 print" [196]a man [211]ie erwischt und verurteilt"
  177. 1860 print" hat, werden [211]ie"j1"[202]ahre eingesperrt."
  178. 1870 ja=ja+j1:n=2:gosub1590:return
  179. 1880 rem ******* baufehler ************
  180. 1890 print" [211]ie haben [194]aufehler begangen."
  181. 1900 we=int(rnd(1)*ts+1)
  182. 1910 print" [196]eshalb werden sie die letzten"
  183. 1920 printwe*199"[211]teinbloecke neu bauen muessen."
  184. 1930 ts=ts-we:n=2:gosub1590:return
  185. 1940 rem ******* erbschaft ************
  186. 1950 print" [201]hr [194]ruder ist gestorben. [211]ie erben     von ihm ein [214]ermoegen."
  187. 1960 a1=int(rnd(1)*ab/2+1)
  188. 1970 printa1"[211]klaven koennen [211]ie nun kaufen,"
  189. 1980 print" um rascher bauen zu koennen."
  190. 1990 ts=ts+1:ab=ab+a1:n=1:gosub1590:return
  191. 2000 rem ******* schlacht + ***********
  192. 2010 sk=int(rnd(1)*ab/2):ab=ab+sk:ie=ie+sk
  193. 2020 f1=int(rnd(1)*vw):f=f+f1
  194. 2030 ge=int(rnd(1)*vw/3):g=g+ge
  195. 2040 print" [196]er [208]harao gewann[146] eine grosse [211]chlacht"
  196. 2050 print" gegen [206]ubien."
  197. 2060 print" [197]r erbeutete :"
  198. 2070 printsk"[211]klaven als [193]rbeiter ..."
  199. 2080 printf1"[198]elder ..."
  200. 2090 printge"[211]peicher konnten mit [203]orn gefuellt      werden."
  201. 2100 n=1:gosub1590:return
  202. 2110 rem ******* schlacht - ***********
  203. 2120 sk=int(rnd(1)*p/2):p=p-sk:is=is+sk
  204. 2130 f1=int(rnd(1)*fb):f=f-f1
  205. 2140 ge=int(rnd(1)*g/3):g=g-ge
  206. 2150 print" [196]er [208]harao verlor[146] eine grosse [211]chlacht"
  207. 2160 print" gegen [206]ubien."
  208. 2170 print" [211]ein [194]esitz wurde vermindert um :"
  209. 2180 printsk"[197]inwohner ..."
  210. 2190 printf1"[198]elder ..."
  211. 2200 printge"[211]peicher mit korn ..."
  212. 2210 n=2:gosub1590:return
  213. 2220 rem ******* lebenselexier ********
  214. 2230 j1=int(rnd(1)*5)
  215. 2240 print" [196]er [208]harao hat von einem [205]agier ein     [204]ebenselexier erhalten."
  216. 2250 print" [197]r kann[146] nun"j1"[202]ahre laenger leben !"
  217. 2260 je=je+j1:n=1:gosub1590:return
  218. 2270 rem ******* fischseuche *********
  219. 2280 print" [196]urch [205]achenschaften der [206]ubier ist"
  220. 2290 print" der [206]il verseucht."
  221. 2300 ge=int(rnd(1)*g/1.5)+1
  222. 2310 print" [196]amit die [197]inwohner nicht verhungern,"
  223. 2320 print" muessen [211]ie"ge"weitere [203]ornspeicher":print" ausgeben."
  224. 2330 print " [196]er [208]harao befiehlt es so !!"
  225. 2340 g=g-ge:n=2:gosub1590:return
  226. 2350 rem ******* bauwerk **************
  227. 2360 print"[147]":poke214,23:print:print"       [144]das bauergebnis bis heute ..."
  228. 2370 y=1865:printchr$(142)
  229. 2380 fori=1864to1904+39:pokei,160:pokei+54272,13:next:i7=0
  230. 2390 fori=1to18:y=y+1
  231. 2400 fort=1to37-i*2:w3=160:pokem,0
  232. 2410 po=y-40*i+t:ift=1thenw3=233
  233. 2420 ift=37-i*2thenw3=223
  234. 2430 ifi=18thenw3=81
  235. 2440 pokepo,w3:pokepo+54272,0:pokem,10
  236. 2450 ifi7=>tsthent=40:i=20
  237. 2460 i7=i7+1:pokem,0:next:next
  238. 2470 pokev+5,60:pokev+4,80:pokev+21,4
  239. 2480 return
  240. 2490 rem ****** sprites ***************
  241. 2500 poke53280,14:poke53281,14:pokev+27,2:pokev,0:pokev+2,0
  242. 2510 gosub2350:xo=0:x1=0:y=80:pokev+21,7:pokev+3,y:pokev+1,y-25
  243. 2520 forx=1to360:x0=x:x1=x+20
  244. 2530 pokev+16,int(x0/255)+int(x1/255)*2
  245. 2540 ifx1>255thenx1=x1-255
  246. 2550 ifx0>255thenx0=x0-255
  247. 2560 pokev,x0:pokev+2,x1
  248. 2570 next:fori=1to400:next
  249. 2580 pokev+16,0:pokev+21,0:pokev+21,4
  250. 2590 ifen=1thengosub1650:gosub1650
  251. 2600 print"[147]":poke53280,0:poke53281,0:ifen=1thenprintchr$(14):goto1480
  252. 2610 pokev+21,0:return
  253.