161 lines
4.4 KiB
QBasic
161 lines
4.4 KiB
QBasic
5 RANDOMIZE
|
|
10 PRINT TAB(32);"HAMURABI"
|
|
20 PRINT TAB(15);"CREATIVE COMPUTING MORRISTOWN, NEW JERSEY"
|
|
30 PRINT
|
|
40 PRINT TAB(11);"ECMA-55 PORT BY B. WATSON, URCHLAY AT SLACKWARE.UK"
|
|
50 PRINT
|
|
80 PRINT "TRY YOUR HAND AT GOVERNING ANCIENT SUMERIA"
|
|
90 PRINT "FOR A TEN-YEAR TERM OF OFFICE."
|
|
92 PRINT
|
|
95 LET D1=0
|
|
97 LET P1=0
|
|
100 LET Z=0
|
|
102 LET P=95
|
|
104 LET S=2800
|
|
106 LET H=3000
|
|
107 LET E=H-S
|
|
110 LET Y=3
|
|
120 LET A=H/Y
|
|
130 LET I=5
|
|
140 LET Q=1
|
|
210 LET D=0
|
|
215 PRINT
|
|
216 PRINT
|
|
217 PRINT "HAMURABI: I BEG TO REPORT TO YOU,"
|
|
218 LET Z=Z+1
|
|
220 PRINT "IN YEAR";Z;",";D;"PEOPLE STARVED,";I;"CAME TO THE CITY,"
|
|
225 LET P=P+I
|
|
227 IF Q>0 THEN 230
|
|
228 LET P=INT(P/2)
|
|
229 PRINT "A HORRIBLE PLAGUE STRUCK! HALF THE PEOPLE DIED."
|
|
230 PRINT "POPULATION IS NOW";P
|
|
232 PRINT "THE CITY NOW OWNS";A;"ACRES."
|
|
235 PRINT "YOU HARVESTED";Y;"BUSHELS PER ACRE."
|
|
250 PRINT "THE RATS ATE";E;"BUSHELS."
|
|
260 PRINT "YOU NOW HAVE";S;"BUSHELS IN STORE."
|
|
261 PRINT
|
|
270 IF Z=11 THEN 860
|
|
310 LET C=INT(10*RND)
|
|
311 LET Y=C+17
|
|
312 PRINT "LAND IS TRADING AT";Y;"BUSHELS PER ACRE."
|
|
320 PRINT "HOW MANY ACRES DO YOU WISH TO BUY";
|
|
321 INPUT Q
|
|
322 IF Q<0 THEN 850
|
|
323 IF Y*Q<=S THEN 330
|
|
324 GOSUB 710
|
|
325 GOTO 320
|
|
330 IF Q=0 THEN 340
|
|
331 LET A=A+Q
|
|
332 LET S=S-Y*Q
|
|
333 LET C=0
|
|
334 GOTO 400
|
|
340 PRINT "HOW MANY ACRES DO YOU WISH TO SELL";
|
|
341 INPUT Q
|
|
343 IF Q<0 THEN 850
|
|
345 IF Q<A THEN 360
|
|
347 GOSUB 720
|
|
350 GOTO 340
|
|
360 LET A=A-Q
|
|
370 LET S=S+Y*Q
|
|
380 LET C=0
|
|
400 PRINT
|
|
410 PRINT "HOW MANY BUSHELS DO YOU WISH TO FEED YOUR PEOPLE";
|
|
411 INPUT Q
|
|
412 IF Q<0 THEN 850
|
|
418 REM *** TRYING TO USE MORE GRAIN THAN IS IN SILOS?
|
|
420 IF Q<=S THEN 430
|
|
421 GOSUB 710
|
|
422 GOTO 410
|
|
430 LET S=S-Q
|
|
433 LET C=1
|
|
435 PRINT
|
|
440 PRINT "HOW MANY ACRES DO YOU WISH TO PLANT WITH SEED";
|
|
442 INPUT D
|
|
443 IF D=0 THEN 511
|
|
444 IF D<0 THEN 850
|
|
445 REM *** TRYING TO PLANT MORE ACRES THAN YOU OWN?
|
|
446 IF D<=A THEN 450
|
|
447 GOSUB 720
|
|
448 GOTO 440
|
|
449 REM *** ENOUGH GRAIN FOR SEED?
|
|
450 IF INT(D/2)<=S THEN 455
|
|
452 GOSUB 710
|
|
453 GOTO 440
|
|
454 REM *** ENOUGH PEOPLE TO TEND THE CROPS?
|
|
455 IF D<10*P THEN 510
|
|
460 PRINT "BUT YOU HAVE ONLY";P;"PEOPLE TO TEND THE FIELDS! NOW THEN,"
|
|
470 GOTO 440
|
|
510 LET S=S-INT(D/2)
|
|
511 GOSUB 800
|
|
512 REM *** A BOUNTIFUL HARVEST!
|
|
515 LET Y=C
|
|
518 LET H=D*Y
|
|
520 LET E=0
|
|
521 GOSUB 800
|
|
522 IF INT(C/2)<>C/2 THEN 530
|
|
523 REM *** RATS ARE RUNNING WILD!!
|
|
525 LET E=INT(S/C)
|
|
530 LET S=S-E+H
|
|
531 GOSUB 800
|
|
532 REM *** LET'S HAVE SOME BABIES
|
|
533 LET I=INT(C*(20*A+S)/P/100+1)
|
|
539 REM *** HOW MANY PEOPLE HAD FULL TUMMIES?
|
|
540 LET C=INT(Q/20)
|
|
541 REM *** HORROS, A 15% CHANCE OF PLAGUE
|
|
542 LET Q=INT(10*(2*RND-.3))
|
|
550 IF P<C THEN 210
|
|
551 REM *** STARVE ENOUGH FOR IMPEACHMENT?
|
|
552 LET D=P-C
|
|
553 IF D>.45*P THEN 560
|
|
555 LET P1=((Z-1)*P1+D*100/P)/Z
|
|
556 LET P=C
|
|
557 LET D1=D1+D
|
|
558 GOTO 215
|
|
560 PRINT
|
|
562 PRINT "YOU STARVED";D;"PEOPLE IN ONE YEAR!!!"
|
|
565 PRINT "DUE TO THIS EXTREME MISMANAGEMENT YOU HAVE NOT ONLY"
|
|
566 PRINT "BEEN IMPEACHED AND THROWN OUT OF OFFICE BUT YOU HAVE"
|
|
567 PRINT "ALSO BEEN DECLARED NATIONAL FINK!!!!"
|
|
569 GOTO 990
|
|
710 PRINT "HAMURABI: THINK AGAIN. YOU HAVE ONLY"
|
|
711 PRINT S;"BUSHELS OF GRAIN. NOW THEN,"
|
|
712 RETURN
|
|
720 PRINT "HAMURABI: THINK AGAIN. YOU OWN ONLY";A;"ACRES. NOW THEN,"
|
|
730 RETURN
|
|
800 LET C=INT(RND*5)+1
|
|
801 RETURN
|
|
850 PRINT
|
|
852 PRINT "HAMURABI: I CANNOT DO WHAT YOU WISH."
|
|
855 PRINT "GET YOURSELF ANOTHER STEWARD!!!!!"
|
|
857 GOTO 990
|
|
860 PRINT "IN YOUR 10-YEAR TERM OF OFFICE,";P1;"PERCENT OF THE"
|
|
862 PRINT "POPULATION STARVED PER YEAR ON THE AVERAGE, I.E. A TOTAL OF"
|
|
865 PRINT D1;"PEOPLE DIED!!"
|
|
867 LET L=A/P
|
|
870 PRINT "YOU STARTED WITH 10 ACRES PER PERSON AND ENDED WITH"
|
|
875 PRINT L;"ACRES PER PERSON."
|
|
877 PRINT
|
|
880 IF P1>33 THEN 565
|
|
885 IF L<7 THEN 565
|
|
890 IF P1>10 THEN 940
|
|
892 IF L<9 THEN 940
|
|
895 IF P1>3 THEN 960
|
|
896 IF L<10 THEN 960
|
|
900 PRINT "A FANTASTIC PERFORMANCE!!! CHARLEMANGE, DISRAELI, AND"
|
|
905 PRINT "JEFFERSON COMBINED COULD NOT HAVE DONE BETTER!"
|
|
910 GOTO 990
|
|
940 PRINT "YOUR HEAVY-HANDED PERFORMANCE SMACKS OF NERO AND IVAN IV."
|
|
945 PRINT "THE PEOPLE (REMAINING) FIND YOU AN UNPLEASANT RULER, AND,"
|
|
950 PRINT "FRANKLY, HATE YOUR GUTS!!"
|
|
955 GOTO 990
|
|
960 PRINT "YOUR PERFORMANCE COULD HAVE BEEN SOMEWHAT BETTER, BUT"
|
|
965 PRINT "REALLY WASN'T TOO BAD AT ALL. ";INT(P*.8*RND);"PEOPLE"
|
|
970 PRINT "WOULD DEARLY LIKE TO SEE YOU ASSASSINATED BUT WE ALL HAVE"
|
|
975 PRINT "OUR TRIVIAL PROBLEMS."
|
|
989 REM BAS55 HAS NO CHR$() FUNCTION, NO WAY TO RING A BELL.
|
|
990 REM 990 PRINT: FOR N=1 TO 10: PRINT CHR$(7);: NEXT N
|
|
991 PRINT
|
|
995 PRINT "SO LONG FOR NOW."
|
|
997 PRINT
|
|
999 END
|