home *** CD-ROM | disk | FTP | other *** search
/ ittybittycomputers.com / www.ittybittycomputers.com.tar / www.ittybittycomputers.com / IttyBitty / TinyBasic / Euphoria.txt < prev    next >
Text File  |  2006-10-18  |  7KB  |  237 lines

  1. 1000 PRINT "THE KINGDOM OF EUPHORIA"
  2. 1010 PRINT
  3. 1020 GOSUB 3510
  4. 1100 REM PRINT STATE OF THE KINGDOM
  5. 1110 PRINT
  6. 1120 PRINT "YEAR ";Y/7
  7. 1130 PRINT "POPULATION: ";P
  8. 1140 IF B>0 THEN PRINT B;" BIRTHS"
  9. 1150 IF D>0 THEN PRINT D;" DEATHS BY NATURAL CAUSES"
  10. 1160 IF S>0 THEN PRINT S;" DEATHS BY STARVATION"
  11. 1170 IF K>0 THEN PRINT K;" WAR CASUALTIES"
  12. 1180 IF V>0 THEN PRINT V;" VICTIMS OF DISEASE"
  13. 1190 IF M>0 THEN PRINT M;" VICTIMS OF LOOTING"
  14. 1210 LET D=D+S+K+V+M
  15. 1220 LET P=P+B-D
  16. 1230 IF B+D>0 THEN PRINT "TOTAL: ";P
  17. 1250 PRINT "LAND (ACRES) : ";A
  18. 1260 IF T=0 THEN IF U=0 THEN GOTO 1350
  19. 1270 IF T>0 THEN PRINT T;" ACRES BOUGHT"
  20. 1280 IF T<0 THEN PRINT -T;" ACRES SOLD"
  21. 1290 IF U<>0 THEN PRINT "FRUITS OF WAR: ";U;" ACRES"
  22. 1310 LET A=A+T+U
  23. 1320 LET T=0
  24. 1330 LET U=0
  25. 1340 PRINT "TOTAL: ";A
  26. 1350 PRINT "GRAIN (BUSHELS): ";G
  27. 1360 IF C<0 THEN GOTO 1530
  28. 1370 IF C=0 THEN GOTO 1430
  29. 1380 LET R=X
  30. 1390 PRINT "CROP YIELD ";C;" AT ";
  31. 1410 GOSUB 3220
  32. 1420 PRINT
  33. 1430 IF F>0 THEN PRINT F;" BUSHELS USED FOR FOOD"
  34. 1440 IF Q>0 THEN PRINT Q;" BUSHELS PLANTED"
  35. 1450 IF L<>0 THEN PRINT "LAND DEALS: ";L;" BUSHELS"
  36. 1460 IF H>0 THEN PRINT "MERCENARY HIRE: ";H
  37. 1470 IF E>0 THEN PRINT E;" BUSHELS LOST TO RATS"
  38. 1480 IF Z<>0 THEN PRINT "FRUITS OF WAR: ";Z;" BUSHELS"
  39. 1490 IF O>0 THEN PRINT "LOOTING LOSSES: ";O;" BUSHELS"
  40. 1510 LET G=G+C-F-Q+L-H-E+Z-O
  41. 1520 PRINT "TOTAL: ";G
  42. 1530 GOSUB 3310
  43. 1600 REM NOTICE IF GAME ENDED
  44. 1610 IF J<100 THEN GOTO 1690
  45. 1620 PRINT "THE PEASANTS TIRE OF WAR AND STARVATION"
  46. 1630 PRINT "YOU ARE DEPOSED."
  47. 1640 PRINT "DO YOU WISH TO PLAY AGAIN";
  48. 1650 LET N=Y-1
  49. 1660 INPUT N
  50. 1670 IF Y<>N THEN END
  51. 1680 GOTO 1000
  52. 1690 IF P>l THEN GOTO 1750
  53. 1710 PRINT "YOU AND THE REMAINING POPULATION"
  54. 1720 PRINT "RETIRE IN THE SWISS ALPS."
  55. 1730 GOTO 1640
  56. 1740 REM MAKE LAND DEALS
  57. 1750 LET R=23+RND(8)
  58. 1760 GOSUB 3250
  59. 1770 PRINT "BUY AT ";
  60. 1780 GOSUB 3220
  61. 1790 INPUT T
  62. 1810 IF T<0 THEN GOTO 1760
  63. 1820 IF T=0 THEN GOTO 1860
  64. 1830 IF R*T<=G THEN GOTO 2060
  65. 1840 GOSUB 3270
  66. 1850 GOTO 1760
  67. 1860 LET R=R-1
  68. 1880 GOSUB 3250
  69. 1890 PRINT "SELL AT ";
  70. 1910 GOSUB 3220
  71. 1920 INPUT T
  72. 1930 IF T<0 THEN GOTO 1880
  73. 1940 IF T=0 THEN GOTO 2060
  74. 1950 IF T<=A THEN GOTO 1990
  75. 1960 PRINT "BUT THERE IS INSUFFICIENT LAND"
  76. 1970 GOTO 1880
  77. 1990 IF T<A/10 THEN GOTO 2050
  78. 2010 LET R=R-1
  79. 2020 PRINT "FOR SELLING SO MUCH YOU CAN ONLY GET ";
  80. 2030 GOSUB 3220
  81. 2040 PRINT
  82. 2050 LET T=-T
  83. 2060 LET L=-R*T
  84. 2100 REM DISTRIBUTE GRAIN
  85. 2110 GOSUB 3250
  86. 2120 PRINT "PLANT";
  87. 2130 INPUT Q
  88. 2140 IF Q<0 THEN GOTO 2110
  89. 2150 IF Q<=A+T THEN GOTO 2180
  90. 2160 GOSUB 3270
  91. 2170 GOTO 2110
  92. 2180 IF Q<=P*10 THEN GOTO 2220
  93. 2190 PRINT "BUT THERE ARE INSUFFICIENT PEOPLE"
  94. 2210 GOTO 2110
  95. 2220 PRINT "HOW MANY BUSHELS DO YOU WISH TO ";
  96. 2230 PRINT "USE AS FOOD";
  97. 2240 INPUT F
  98. 2250 IF F<0 THEN GOTO 2220
  99. 2260 IF G+L-Q-F>=0 THEN GOTO 2310
  100. 2270 GOSUB 3270
  101. 2280 GOTO 2220
  102. 2310 IF F<=40*P THEN LET S=P-F/40
  103. 2320 LET J=J+S
  104. 2330 LET X=5+RND(4)
  105. 2340 IF Y/7*8-Y/49*7=Y THEN LET X=X/2-1
  106. 2350 LET C=X*Q
  107. 2360 IF G+L-Q-F+C>=0 THEN GOTO 2390
  108. 2370 LET X=(32767-G-L+Q+F)/Q
  109. 2380 GOTO 2350
  110. 2390 IF RND(99)<25 THEN LET E=(G+L-F+C)/10
  111. 2400 REM WAR AND PLAGUE
  112. 2410 IF RND(99)>15 THEN GOTO 2880
  113. 2420 LET W=25
  114. 2430 PRINT "A NEARBY KINGDOM THREATENS WAR"
  115. 2440 PRINT "DO YOU WISH TO MAKE A";
  116. 2450 PRINT " PRE-EMPTIVE STRIKE";
  117. 2460 LET N=Y-1
  118. 2470 INPUT N
  119. 2480 IF N=Y-1 THEN GOTO 2520
  120. 2490 LET W=100
  121. 2510 LET J=J+5
  122. 2520 PRINT "HOW MANY MERCENARIES WILL YOU";
  123. 2530 PRINT " HIRE AT 80 BUSHELS EACH";
  124. 2540 INPUT N
  125. 2550 IF N<0 THEN GOTO 2520
  126. 2560 LET D=G+L-Q-F+C-E
  127. 2570 IF RND(99)<W THEN GOTO 2610
  128. 2580 PRINT "PEACE NEGOTIATIONS SUCCEED"
  129. 2590 GOTO 2810
  130. 2610 IF W=25 THEN LET W=150
  131. 2620 LET R=P-S
  132. 2630 IF N>R/10 THEN GOTO 2660
  133. 2640 LET R=3*W/5*N*N/R*100/R
  134. 2650 GOTO 2680
  135. 2660 LET R=3*W/5+N*100/R
  136. 2680 LET K=(P-S)/2
  137. 2690 LET U=-(A+T)/2
  138. 2710 LET Z=-D/2
  139. 2720 IF R>RND(99) THEN GOTO 2760
  140. 2730 PRINT "YOU HAVE LOST THE WAR"
  141. 2740 LET J=J+5000/W
  142. 2750 GOTO 2810
  143. 2760 PRINT "YOU HAVE WON THE WAR"
  144. 2770 LET K=K/2
  145. 2780 LET U=-U
  146. 2790 LET Z=D/4
  147. 2810 IF N*80<=D+Z THEN GOTO 2870
  148. 2820 GOSUB 3280
  149. 2830 PRINT "TO PAY THE MERCENARIES"
  150. 2840 LET M=3*(P-S-K)/4
  151. 2850 LET O=3*(R+Z)/4
  152. 2860 GOTO 2880
  153. 2870 LET H=N*80
  154. 2880 LET N=P-S-K-M
  155. 2890 IF RND(99)>4 THEN GOTO 2940
  156. 2910 PRINT "THE BLACK PLAGUE STRIKES"
  157. 2920 LET V=N/2
  158. 2930 GOTO 2970
  159. 2940 IF RND(99)>20 THEN GOTO 2980
  160. 2950 PRINT "A POX EPIDEMIC BREAKS OUT"
  161. 2960 LET V=N/20
  162. 2970 LET N=N-V
  163. 2980 LET B=(N*RND(5)+9)/100+1
  164. 2990 LET D=(N*RND(3)+4)/100
  165. 3010 IF Y/7*8-Y/49*7<>Y THEN GOTO 3030
  166. 3020 PRINT "SEVEN YEAR LOCUSTS REDUCE CROP YIELD"
  167. 3030 IF E>0 THEN PRINT "RATS INFEST YOUR SILOS"
  168. 3040 LET Y=Y+8-(Y-Y/7*7)/6
  169. 3050 GOTO 1110
  170. 3200 REM UTILITY PRINT ROUTINES
  171. 3220 PRINT R;" BUSHELS/ACRE";
  172. 3230 RETURN
  173. 3250 PRINT "HOW MANY ACRES DO YOU WISH TO ";
  174. 3260 RETURN
  175. 3270 PRINT "BUT ";
  176. 3280 PRINT "THERE IS INSUFFICIENT GRAIN"
  177. 3290 RETURN
  178. 3300 REM INITIALIZE POPULATION AND GRAIN VECTORS
  179. 3310 LET B=0
  180. 3320 LET D=0
  181. 3330 LET K=0
  182. 3340 LET M=0
  183. 3350 LET S=0
  184. 3360 LET V=0
  185. 3410 LET C=0
  186. 3420 LET E=0
  187. 3430 LET F=0
  188. 3440 LET H=0
  189. 3450 LET L=0
  190. 3460 LET O=0
  191. 3470 LET Q=0
  192. 3480 LET Z=0
  193. 3490 RETURN
  194. 3500 REM INITIALIZATION
  195. 3510 LET Y=RND(6)+l
  196. 3520 LET J=0
  197. 3530 LET P=100
  198. 3540 LET A=1500
  199. 3550 LET G=5000
  200. 3560 LET T=0
  201. 3570 LET U=0
  202. 3580 GOSUB 3310
  203. 3590 LET C=-l
  204. 3600 REM PRINT INSTRUCTIONS (MAY BE OMITTED)
  205. 3610 PRINT "DO YOU NEED INSTRUCTIONS (Y OR N)";
  206. 3620 LET N=P
  207. 3630 INPUT N
  208. 3640 IF N=P THEN RETURN
  209. 3650 IF N=Y THEN GOTO 3710
  210. 3660 PRINT "PLEASE TYPE Y FOR YES, N FOR NO. OK";
  211. 3670 GOTO 3620
  212. 3710 PRINT "YOU HAVE INHERITED THE THRONE TO THE MEDIEVAL"
  213. 3720 PRINT "KINGDOM OF EUPHORIA, SOMEWHERE IN EUROPE."
  214. 3730 PRINT "AT THIS TIME IT IS ABOUT ";A;" ACRES IN SIZE,"
  215. 3740 PRINT "WITH ";P;" LOYAL PEASANTS TO SERVE YOU."
  216. 3750 PRINT "IN YOUR ROYAL SILOS YOU HAVE ";G;" BUSHELS OF"
  217. 3760 PRINT "NUTRITIOUS GRAIN WITH WHICH TO FEED THE PEOPLE"
  218. 3770 PRINT "AND TRANSACT INTERNATIONAL TRADE."
  219. 3780 PRINT "CLOSE BY YOUR SIDE ARE JEALOUS NEIGHBORING"
  220. 3790 PRINT "KINGDOMS, BUT YOU CAN PROTECT YOURSELF BY"
  221. 3810 PRINT "HIRING EVIL MERCENARIES."
  222. 3820 PRINT "EACH YEAR YOUR MINISTERS WILL PRESENT YOU"
  223. 3830 PRINT "WITH A SUMMARY OF YOUR CURRENT STATUS,"
  224. 3840 PRINT "AND THEN ASK YOU FOR DECISIONS ON WHAT"
  225. 3850 PRINT "TO DO FOR THE NEXT YEAR. PLEASE TYPE Y OR N"
  226. 3860 PRINT "FOR YES OR NO, OR A WHOLE NUMBER FOR"
  227. 3870 PRINT "NUMERIC ANSWERS. IF YOU CHANGE YOUR MIND"
  228. 3880 PRINT "BEFORE HITTING RETURN, HOLD THE 'CTRL' KEY"
  229. 3890 PRINT "DOWN WHILE TYPING THE LETTER 'X', THEN"
  230. 3910 PRINT "RETYPE YOUR ANSWER ON THE NEXT LINE."
  231. 3920 PRINT "ARE YOU READY, YOUR HIGHNESS";
  232. 3930 LET N=P
  233. 3940 INPUT N
  234. 3950 IF N<>Y THEN GOTO 3920
  235. 3980 RETURN
  236. 3990 END
  237.