Files
feudal-economy/old/original_feudal_pl.txt
2024-08-26 17:58:30 -04:00

376 lines
22 KiB
Plaintext
Raw Permalink Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
1 REM modified 061485 by Bruce Ramsey 411 N 61st, Seattle, WA 98103
8 REM Æ=# of players;Å=player;Ù±=year Ç=$/grain,ı=demand;×=weather; Ì=land price;ñ=customs revenue
9 REM Ó±=sales tax rev.;ɱ=income tax rev.;Ê=net justice revenue
10 REM Á¨Å©=# of markets;ͨũ=# of mer chants (5 per market):Ĩũ=# of woollen mills:Өũ=# of serfs
11 REM ¨ũ=palace pts:Ψũ=nobles(RND 1-2/B(E));èũ=cathedral pts.
12 REM Ѩũ=# of clergymen(RND 1-6 per cath.point;˨ũ=cash;̨ũ=land Шũ=troops(paid $3/turn)
13 REM Ǩũ=customs duty;Ȩũ=sales tx ɨũ=income tax;ʨũ=justice Ԩũ=victory pts.(15 to win)
14 REM Ϩũ=you will die by this date (1440-1455);Ҩũ=grain reserves ÄӨũ 0=alive,1=dead;֨ũ=sex
15 REM Ô¤=titles;פ=weather & harvest; Τ=names;ʤ=level of justice; ÍԨũare you already sup.ruler?
16 REM ըũ=status pts.:cathedral pt. adds 1;palace,0.5;mill,0.25; market,0.1;ÌШũ=land prices
80 CLR :READ N1,N2,N3,N4,N5,N6,N7,N10,N100,KEY,DELAY
82 DATA 1,2,3,4,5,6,7,10,100,764,12000
100 DIM N$(49),T$(215),W$(34),L(N7),P(N7),C(N6),D(N6),A(N6),B(N6),S(N6),A$(23),K(N6),N1(30),N2(30),LP(N6)
110 DIM MT(N6),G(N6),V(N7),H(N6),I(N6),J(N6),O(N6),R(N6),T(N7),U(N6),N(N6),Q(N6),M(N6),J$(12),DS(N6):Y1=1400
120 FOR A=N1 TO 30:N1(A)=LEN(T$)+N1:READ A$:N2(A)=LEN(T$)+LEN(A$):T$(LEN(T$)+N1)=A$:NEXT A
200 GRAPHICS N0:SETCOLOR N2,N0,N2:POKE 82,N4:POKE 83,39:POKE 752,N1:POSITION 9,9
210 GOSUB 23000:POKE 82,N2
212 GOSUB KEY+N2:IF V=84 THEN 22000
215 IF V<>78 THEN 212
300 ? "}":POSITION N7,8:? "PODAJ LICZBE GRACZY (1-6)?":GOSUB KEY+N2:F=V:IF F<49 OR F>54 THEN 300
302 F=VAL(CHR$(F))
308 N$=" ":N$(43,49)="PEPPONE"
310 FOR A=N1 TO F
315 A(A)=N0:B(A)=N0:C(A)=N0:D(A)=N0:DS(A)=N0
318 POKE 752,N0:? "}":POSITION 9,N5:? "IMIE GRACZA ";A;"?":POSITION 12,8:? "
";:? "";:? "";:INPUT A$
322 POKE 752,N1:IF LEN(A$)>N7 THEN A$=A$(N1,N7)
330 ? :N$(A*N7-N6,A*N7-N5+LEN(A$))=A$:? "} ";N$(A*N7-N6,A*N7-N7+LEN(A$));" to mezczyzna czy kobieta?";:V(A)=N0
331 GOSUB KEY+N2:IF V=75 THEN V(A)=15
334 IF V<>75 AND V<>77 THEN 331
400 G(A)=25:H(A)=N10:I(A)=N5:J(A)=N2:O(A)=1440+INT(RND(N0)*15):K(A)=1000:L(A)=10000:R(A)=5000:T(A)=N1:U(A)=N1:N(A)=N4
410 P(A)=25:Q(A)=N5:M(A)=25:S(A)=2000:LP(A)=N2:NEXT A
550 ? "} PODAJ POZIOM GRY (0-9)":GOSUB KEY+N2:U=V:IF U<48 OR U>57 THEN 550
560 U(N0)=VAL(CHR$(U))+N6
600 E=E+N1:IF T(E)=-N1 THEN E=E+N1
620 AX=N0:FOR A=N1 TO N6:IF T(A)>N0 THEN AX=N1:NEXT A:IF AX=N0 THEN 11000
630 IF E>F THEN E=N0:Y1=Y1+N1:GOTO 600
640 IF Y1>O(E) THEN 600
650 IF Y1=O(E) OR L(E)<1001 THEN 1100
660 GOSUB 2000:GOSUB 2600:GOSUB 3000:GOSUB 5000
666 GOSUB 6000:GOSUB 7000
670 IF K(E)>N0 THEN K(E)=INT(K(E)*1.1)
675 GOTO 600
764 ? "ÎÁÃɤÎÉÊ ÄÏ×ÏÌÎÙ ËÌÁ×ÉÓÚ"
766 CLOSE #N1:OPEN #1,N4,N0,"K:":BK=PEEK(16):IF BK>127 THEN BK=BK-128:POKE 16,BK:POKE 53774,BK
768 GET #N1,V:CLOSE #N1:RETURN
1000 POKE 82,2:GOSUB 1001:F1=N1:GOTO 1005
1001 GRAPHICS N0:SETCOLOR N2,N0,N2:POKE 752,N1:? :? :? "WASALE":? :? "WOJOWNICY":? :? "KLER":? :? "KUPCY"
1002 ? :? "PODDANI":? :? "ZIEMIA":? :? "SKARB":? :? "KRAMY":? :? "MLYNY":RETURN
1005 Z1=N1:FOR A=F1 TO F:POSITION N4+Z1*9,N1:? N$(A*N7-N6,A*N7):POSITION N5+Z1*9,N2:? N(A):POSITION N5+Z1*9,N4
1006 ? P(A):POSITION N5+Z1*9,N6:? Q(A):POSITION N5+Z1*9,8:? M(A):POSITION N5+Z1*9,N10:? S(A):K(A)=INT(K(A))
1007 POSITION N5+Z1*9,12:? L(A):POSITION N5+Z1*9,14:? K(A):POSITION N5+Z1*9,16:? A(A):POSITION N5+Z1*9,18:? D(A)
1008 Z1=Z1+N1:IF A=N3 AND F>N3 THEN F1=N4:GOSUB KEY:GOSUB 1001:GOTO 1005
1009 NEXT A
1010 ? :GOSUB KEY:RETURN
1100 GRAPHICS N0:SETCOLOR N2,N3,N2:? :? "FATALNE WIE$CI":? :GOSUB 15000:? " zeszedl $miertelnie":T(E)=-N1
1103 IF L(E)<1001 THEN ? "podczas powstania":GOTO 1190
1104 IF A=71 THEN ? "podczas zamieszek glodowych":A=N0:GOTO 1190
1110 Y=INT(RND(N0)*N6+N1):IF Y1>1455 THEN ? "ze staro$ci w R.P. ";Y1:GOTO 1190
1120 IF Y=N1 THEN ? "podczas zarazy"
1160 IF Y=N2 THEN ? "na tyfus"
1170 IF Y=N3 THEN ? "na ospe"
1180 IF Y=N4 THEN ? "na czerwonke"
1182 IF Y=N5 THEN ? "przez zamordowanie"
1185 IF Y=N6 THEN ? "przez zatrucie"
1190 ? :GOSUB KEY:GOSUB 5000:GOSUB 1000:GOTO 600
1300 I1=INT(I1):RETURN
1310 C1=INT(C1):RETURN
1320 S1=INT(S1):RETURN
1330 K(E)=INT(K(E)):RETURN
1500 POKE 752,N1:Z=INT(RND(N0)*A+N1)*S(E)/N100:Z1=INT(Z):? Z1;" poddanych sie urodzilo":S(E)=S(E)+Z1:RETURN
1510 Z=INT(RND(N0)*A+N1)*S(E)/N100:Z1=INT(Z):? Z1;" poddanych zmarlo":IF Z1>S(E)*0.3 THEN DS(E)=N1:GOSUB DELAY:A=7
1512 ? :S(E)=S(E)-Z1:RETURN
2000 POKE 82,N1:IF DS(E)=N1 THEN 600
2005 W=(INT(RND(N0)*N5+N1)+INT(RND(N0)*N6+N1))/N2:W=INT(W):W$=""
2009 ON W GOTO 2010,2020,2030,2040,2050
2010 W$="SUSZA GROZI GLOD":GOTO 2100
2020 W$="ZLA POGODA-LICHE ZBIORY":GOTO 2100
2030 W$="NORMALNA POGODA-PRZECIETNE ZBIORY":GOTO 2100
2040 W$="DOBRA POGODA-B.DOBRE ZBIORY":GOTO 2100
2050 W$="WSPANIALA POGODA-$WIETNE ZBIORY"
2100 R=INT(RND(N0)*25+N1):V=(R(E)*R)/N100:R(E)=R(E)-V:REM òáôó åáô Ò¥
2140 X=L(E):Y=(S(E)-D(E)*N100)*N5:IF Y<N0 THEN Y=N0:REM óõâôòáãô ±°° óåòæó æòïí èáòöåóô æïò åáãè íéìì
2150 IF Y<X THEN X=Y:REM õóáâìå ìáîä
2160 Y=R(E)*N2:IF Y<X THEN X=Y:REM ðåîáìôù éæ óååä¼°®µªìáîä
2170 Y=W-0.5:H1=X*Y:R(E)=R(E)+H1-INT(X/N2):REM èáòöåóô½÷åáôèåòªìáîä ÷éôè ìáâïò áîä óååä óõððïòô»óõâôòáãô óååä
2180 D1=N(E)*N100+Q(E)*40+M(E)*30+P(E)*N10+S(E)*N5:REM îïâìåó åáô íïòå ôèáî óåòæó
2182 L=(N3*W+INT(RND(N0)*N6+N1)+INT(RND(N0)*N6+N1)+N10)/N10
2190 IF H1<N1 THEN Y=N2:GOTO 2210
2200 Y=D1/H1:IF Y>N2 THEN Y=N2
2210 IF Y<0.8 THEN Y=0.8
2220 L=L*Y:L=INT(L*N10)/N10:REM ìáîä ðòéãå½²äéãå¬÷åáôèåò»ðòïðïòôéïî ïæ çòáéî ðõòãèáóåä òáéóåó ìáîä ðòéãå
2222 IF L>LP(E)+0.8 THEN L=LP(E)+0.8:REM íáø áíô ìáîä ðòéãå ãáî òéóå½°®¸
2224 IF L<LP(E)-0.5 THEN L=LP(E)-0.5:REM íáø áíô ìáîä ðòéãå ãáî æáìì½°®µ
2226 LP(E)=L:REM óôïòå ðìáùåò Å§ó ìáîä ðòéãå
2230 Z=N6-W
2240 G=(Z*N3+INT(RND(N0)*N5+N1)+INT(RND(N0)*N5+N1))/N5*Y*20:G=INT(G*N4):RETURN
2300 R(E)=INT(R(E)):H1=INT(H1):? "Szczury zjadly ";R;"% twego ziarna ":? :? W$:? " Zbierasz ";H1;" korcow"
2340 ? "ZIEMIA ";L(E);" hektarow":POSITION 20,8:SD=INT(L(E)/N2):IF SD>R(E)-D1 THEN SD=R(E)-D1:IF SD<N0 THEN SD=N0
2342 ? "NASIONA ";SD;" (";INT(N100*SD/(L(E)/N2));"%)"
2344 FOR V=N1 TO 37:? "";:NEXT V:?
2350 ? "ZAPAS ZAP. NA CENA CENA SKARB":? "ZIARNA ZIARNO ZIARNA ZIEMI"
2360 Z9=PEEK(84):? R(E)-SD:POSITION 9,Z9:? D1:POSITION 17,Z9:? G:POSITION 24,Z9:? L:POSITION 31,Z9:? K(E)
2365 ? "Korce Korce Tys.K Hektar Dukaty "
2390 RETURN
2400 J$="":J=INT((J(E)*300-500)*T(E)):IF J(E)=N1 THEN J$=" LAGODNE"
2410 IF J(E)=N2 THEN J$="UMIARKOWANE"
2420 IF J(E)=N3 THEN J$=" SUROWE"
2430 IF J(E)=N4 THEN J$="DRAKONSKIE"
2440 Y=150-G(E)-H(E)-I(E):IF Y<N1 THEN Y=N1:REM ùïõ çåô ðïéîôó éæ ùïõò ³ ôáø òáôåó áää õð ôï ìåóó ôèáî µ°
2480 C1=(N(E)*180+Q(E)*75+M(E)*20)*(Y/N100)+U(E)*N100:REM ôáøáâìå ôòáäå½Îïâìåó¬ ãìåòçù¬ íåòãèáîôó¬ ðïéîôó¬ ôáø¼µ°
2490 S1=(N(E)*50+M(E)*25+U(E)*N10)*(Y/N100)*(N5-J(E))/N2:REM ôáøáâìå òåôáéì óáìåó½îïâìåó¬íåòãè¬ðïéîôó¬ôáø¼µ°¬ÊÕÓÔÉÃÅ
2500 I1=N(E)*250+U(E)*20+(N10*J(E)*M(E))*(Y/N100):REM ÔÁØÁÂÌÅ ÉÎÃÏÍŽîïâìåó¬ ðïéîôó¬ íåòãèáîôóªêõóôéãå 
2510 C1=C1*G(E)/N100:IF C1<32760 THEN GOSUB 1310
2520 S1=S1*H(E)/N100:IF S1<32760 THEN GOSUB 1320
2530 I1=I1*I(E)/N100:IF I1<32760 THEN GOSUB 1300
2540 ? "Twoje Dochody ";J+C1+S1+I1;" dukatow":? :? " CLO SPRZEDAZ KUPNO PRAWO "
2545 Z9=PEEK(84):POSITION N3,Z9:? G(E);"%":POSITION 12,Z9:? H(E);"%":POSITION 20,Z9:? I(E);"%":POSITION 27,Z9:? J$
2550 ? :Z9=PEEK(84):POSITION N2,Z9:? C1:POSITION 11,Z9:? S1:POSITION 19,Z9:? I1:POSITION 27,Z9:? J;" DUK.":RETURN
2600 GRAPHICS N0:SETCOLOR N2,N0,N2:? :GOSUB 15000:POSITION 27,N1:? " Rok ";Y1:? :GOSUB 2300:POKE 752,N1
2610 ? "":?
2620 ? "<1> Kupno ziarna <3> Kupno ziemi":? :? "<2> Sprzedaz ziarna <4> Sprzedaz ziemi":?
2621 ? " <RETURN> kontynuacja"
2622 POKE KEY,255:GOSUB KEY+N2:I1=V:IF I1=155 THEN 4000
2624 IF I1<49 OR I1>52 THEN 2622
2625 I1=VAL(CHR$(I1)):IF I1=N0 THEN RETURN
2660 ON I1 GOTO 2700,2750,2800,2850
2700 ? "œILE ZIARNA I NASION ËÕÐÕÊÅÓÚ ";:GOSUB 9000
2705 K(E)=K(E)-(I1*G/1000):R(E)=R(E)+I1
2720 POSITION N2,7:? "œœœœœœœœœœœœœœœœœ";:GOSUB 2340:GOTO 2610
2750 ? "œILE ZIARNA I NASION ÓÐÒÚÅÄÁÊÅÓÚ";:GOSUB 9000
2760 IF I1>R(E) THEN ? "œTYLE NIE POSIADASZý":GOSUB DELAY:GOTO 2720
2770 K(E)=K(E)+(I1*G/1000):R(E)=R(E)-I1:GOTO 2720
2800 ? "œILE HEKTAROW ËÕÐÕÊÅÓÚ";:GOSUB 9000:L(E)=L(E)+I1:K(E)=K(E)-(I1*L):GOTO 2720
2850 ? "œILE HEKTAROW ÓÐÒÚÅÄÁÊÅÓÚ";:GOSUB 9000
2852 IF I1>L(E)-5000 THEN ? "œMUSISZ TRZYMAC CO NAJMNIEJ 5000 HEKTAROW!ý":GOSUB DELAY:GOTO 2720
2870 L(E)=L(E)-I1:K(E)=K(E)+(I1*L):GOTO 2720
3000 POKE 82,N2:? "}":POKE 752,N1:GOSUB 15000:? :GOSUB 11100:? :GOSUB 2400:? :? " "
3002 ? :? "<1> Clo <2> Podatek od sprzedazy"
3003 ? :? "<3> Podatek od kupna <4> Prawo "
3004 ? :? " <RETURN> kontynuacja"
3005 GOSUB KEY+N2:I=V:IF I=155 THEN GOSUB 3200:RETURN
3006 IF I<49 OR I>52 THEN 3005
3008 I=VAL(CHR$(I))
3010 POSITION N2,13:? "œœœœœœœœœœ";:POKE 752,N0
3060 ON I GOTO 3070,3110,3140,3170
3070 TRAP 3010:? "NOWE CLO (0 to 100)";:INPUT I:TRAP 40000:I=INT(I):IF I>N100 OR I<N0 THEN I=N1:? "ý":GOTO 3010
3100 G(E)=I:GOTO 3000
3110 TRAP 3010:? "NOWY POD.SPRZ.(0 to 50)";:INPUT I:I=INT(I):TRAP 40000:IF I>50 OR I<N0 THEN I=N2:? "}":GOTO 3010
3130 H(E)=I:GOTO 3000
3140 TRAP 3010:? "NOWY POD.KUPNA (0 to 25)";:INPUT I:I=INT(I):TRAP 40000:IF I<N0 OR I>25 THEN I=N3:? "}":GOTO 3010
3160 I(E)=I:GOTO 3000
3170 POKE 752,N1:? "    ÐÒÁ×Ï   ":?
3171 ? " <1> Lagodne":?
3172 ? " <2> Umiarkowane":?
3173 ? " <3> Surowe":?
3174 ? " <4> Drakonskie"
3179 GOSUB KEY+N2:I=V:IF I<49 OR I>52 THEN 3179
3190 J(E)=VAL(CHR$(I)):GOTO 3000
3200 K(E)=K(E)+C1+S1+I1+J
3220 IF K(E)<(-10000*T(E)) THEN GOTO 8000
3230 RETURN
4000 TRAP 4008:? "œIle ziarna dajesz dla ludzi?":? "™ÒÅÔ dajesz tyle,jakie zap. ";
4002 POKE 752,N0:INPUT G1:GOTO 4016
4008 G1=D1
4016 POKE 752,N1:TRAP 40000:IF G1<=R(E) THEN 4040
4032 ? "œœBRAKUJE CI ";G1-INT(R(E));" KORCOW !ý":GOSUB DELAY:GOSUB DELAY:GOTO 2720
4040 R(E)=R(E)-G1:POKE 82,N2:? "}":GOSUB 15000:? ", ";Y1:? :Z=G1/D1-1:IF Z>N0 THEN Z=Z/N2
4050 IF Z>0.25 THEN Z=Z/N10+0.25
4060 Z1=50-G(E)-H(E)-I(E):IF Z1<N0 THEN Z1=Z1*J(E)
4070 Z1=Z1/N10:IF Z1>N0 THEN Z1=Z1+N3-J(E)
4080 Z=Z+(Z1/N10):IF Z>0.5 THEN Z=0.5
4100 IF G1<(D1-1) THEN 4500
4110 IF S(E)<N0 THEN S(E)=N0
4111 A=N7:? :GOSUB 1500:A=N3:GOSUB 1510
4130 IF (G(E)+H(E))<35 THEN M(E)=M(E)+INT(RND(N0)*N4+N1):REM éæ óáìåó«ãõóôïíó ôáøòáôåó¼³µ¥¬ áää ±­´ åøôòá íåòãèáîôó¯ôõòî
4140 IF I(E)<INT(RND(N0)*20+N1) THEN N(E)=N(E)+INT(RND(N0)*N2):Q(E)=Q(E)+INT(RND(N0)*N3)
4142 REM éæ éîãïíåôáø òáôå ìåóó ôèáî á òáîäïí îõíâåò ±­²° ôèåî áää °­± îïâìåó¬ °­² ãìåòçù
4190 IF G1<(D1*1.3) THEN 4300
4200 Z1=S(E)/1000:Z=(G1-D1)/D1*N10:Z=Z*Z1*INT(RND(N0)*25+N1)+INT(RND(N0)*20+N1):IF Z>32000 THEN Z=32000
4230 Z1=Z:Z=INT(RND(N0)*Z1+INT(Z1/N5)):? Z;" przybylo do twego lenna":? :S(E)=S(E)+Z
4250 Z1=Z/N5:Z=INT(RND(N0)*Z1+N1):IF Z>50 THEN Z=50
4260 M(E)=M(E)+Z:N(E)=N(E)+N1:Q(E)=Q(E)+N2:REM íéçòáôéïî áääó ± îïâì嬠² ãìåòçù¬ õð ôï µ° íåòãèáîôó¨°­²°¥ ïæ îå÷ óåòæó©
4300 IF J(E)<N3 THEN 4900
4310 J1=S(E)/N100*(J(E)-N2)*(J(E)-N2):J1=INT(RND(N0)*J1+N1):S(E)=S(E)-J1:? J1;" poddanych zbieglo":? :GOTO 4900
4500 X=(D1-G1)/D1*N100-9:V=X:IF X>65 THEN X=65
4510 IF X<N0 THEN X=N0:V=N0
4520 A=N3:GOSUB 1500:A=V+8:GOSUB 1510:GOTO 4300
4900 IF K(E)<N0 THEN K(E)=INT(K(E)*1.5):? "Lichwiarze domagaja sie zwrotu ";ABS(INT(K(E)/N3));" dukatow":?
4902 Z=11-INT(H(E)/N10):A=INT((S(E)-500+300*D(E))/1000):FOR V=N1 TO N10:IF A(E)>A*V THEN Z=Z-N1:REM íáòçéîó
4905 NEXT V:Z1=Z/100*A(E)*1000:K(E)=K(E)+Z:IF Z1>N0 THEN ? "Kramy przyniosly ";Z1;" dukatow (";Z;"%)"
4910 IF S(E)<32766 THEN S1=S(E):GOSUB 1320:S(E)=S1
4920 Z=180-G(E)*N2-J(E)*N10-I(E):IF Z<N0 OR S(E)/N100<D(E) THEN Z=N0
4925 Z=D(E)*(Z+INT(RND(N0)*Z+N1))
4927 IF Z>N0 THEN K(E)=K(E)+Z:? "Mlyny przyniosly ";Z;" dukatow (";INT((Z/D(E))/20);"%)"
4930 P(E)=INT(P(E)):Z=P(E)*N3:? :? P(E);" Wojownikow kosztuje ";Z;" dukatow":? :? :K(E)=K(E)-Z
4940 IF (L(E)/1000)>P(E) THEN 8100:REM ÃÈÅÃË ÄÅÆÅÎÓÅÓ
4950 IF (L(E)/500)<P(E) THEN 4980
4960 FOR A=N1 TO F:IF A=E THEN 4975
4970 IF P(A)>(P(E)*N2) THEN 8100
4975 NEXT A
4980 ? :? :GOSUB KEY:RETURN
5000 GRAPHICS N7:SETCOLOR N4,11,N5:SETCOLOR N2,E-N1,N2:CC=N3
5010 LL=L(E)/1000:IF LL<N10 THEN X=N100:Y=45:GOTO 5100
5020 IF LL<20 THEN X=N100:Y=45-(LL-N10):GOTO 5100
5030 IF LL<30 THEN X=80:Y=45-(LL-20):GOTO 5100
5040 IF LL<40 THEN X=60:Y=45-(LL-30):GOTO 5100
5050 IF LL<50 THEN X=40:Y=45-(LL-40):GOTO 5100
5060 IF LL<60 THEN X=N5:Y=45-(LL-50):GOTO 5100
5070 X=N5:Y=N3
5100 Y=INT(Y):X=INT(X):COLOR CC:PLOT X,Y:DRAWTO 159,Y:REM äòá÷ âïõîäáòéåó
5110 PLOT X,Y:DRAWTO X,79
5120 IF P(E)-N5<L(E)/1000 THEN 5160
5130 FOR A=X+N1 TO X+N6:FOR B=Y+N1 TO Y+9:PLOT A,B:NEXT B:NEXT A:FOR Z=X TO X+N6 STEP N2:PLOT Z,Y-N1:NEXT Z:REM óéíðìå ôï÷åò
5140 IF P(E)/N2<L(E)/1000 THEN 5160
5150 FOR A=X+N7 TO X+N10:FOR B=Y+N1 TO Y+9:PLOT A,B:NEXT B:NEXT A:PLOT X+8,Y-N1:PLOT X+N10,Y-N1
5153 COLOR N0:PLOT X+N3,Y+N2:PLOT X+N7,Y+N4:COLOR CC:PLOT X+N1,Y-N1:PLOT X+9,Y-N1:PLOT X,Y-N2:PLOT X+N2,Y-N2
5154 PLOT X+8,Y-N2:PLOT X+N10,Y-N2:REM 2-turret tower
5160 Z=C(E)+N1:COLOR CC:IF Z>15 THEN Z=15:REM ãáôèåäòáì ðïéîôó
5170 ON Z GOTO 5250,5245,5240,5230,5220,5208,5206,5204,5202,5200,5198,5196,5194,5192,5190,5180
5180 PLOT 120,50:DRAWTO 138,50:COLOR N0:PLOT 127,50:PLOT 131,50:COLOR CC
5190 FOR A=120 TO 124:FOR B=40 TO 41:PLOT A,B:NEXT B:NEXT A
5192 FOR A=120 TO 124:FOR B=42 TO 43:PLOT A,B:NEXT B:NEXT A
5194 FOR A=120 TO 124:FOR B=44 TO 45:PLOT A,B:NEXT B:NEXT A:COLOR N0:PLOT 122,44:PLOT 122,45:COLOR CC
5196 FOR A=120 TO 124:FOR B=46 TO 47:PLOT A,B:NEXT B:NEXT A
5198 FOR A=120 TO 124:FOR B=48 TO 49:PLOT A,B:NEXT B:NEXT A
5200 FOR A=134 TO 138:FOR B=40 TO 41:PLOT A,B:NEXT B:NEXT A
5202 FOR A=134 TO 138:FOR B=42 TO 43:PLOT A,B:NEXT B:NEXT A
5204 FOR A=134 TO 138:FOR B=44 TO 45:PLOT A,B:NEXT B:NEXT A:COLOR N0:PLOT 136,44:PLOT 136,45:COLOR CC
5206 FOR A=134 TO 138:FOR B=46 TO 47:PLOT A,B:NEXT B:NEXT A
5208 FOR A=134 TO 138:FOR B=48 TO 49:PLOT A,B:NEXT B:NEXT A
5220 FOR B=36 TO 41:PLOT 129,B:NEXT B:PLOT 128,38:PLOT 130,38
5230 FOR A=127 TO 131:FOR B=42 TO 44:PLOT A,B:NEXT B:NEXT A:COLOR N0:PLOT 127,42:PLOT 131,42:COLOR CC
5240 FOR A=125 TO 133:FOR B=45 TO 46:PLOT A,B:NEXT B:NEXT A
5245 FOR A=125 TO 133:FOR B=47 TO 49:PLOT A,B:NEXT B:NEXT A:COLOR N0:PLOT 127,49:PLOT 131,49:COLOR CC
5250 Z=B(E):IF Z=N0 THEN 5300:REM  ÐÁÌÁÃÅ ÐÏÉÎÔÓ 
5255 COLOR CC:IF Z>12 THEN Z=13:PLOT 94,52:PLOT 110,52
5258 IF Z>11 THEN PLOT 93,53:PLOT 95,53:PLOT 109,53:PLOT 111,53:PLOT 94,52:PLOT 110,52
5260 IF Z>N10 THEN COLOR N0:PLOT 101,53:PLOT 103,52:COLOR CC
5262 IF Z>9 THEN PLOT 101,50:PLOT 103,50:PLOT 102,49
5265 IF Z>8 THEN FOR A=N100 TO 104:FOR B=51 TO 53:PLOT A,B:NEXT B:NEXT A
5270 FOR A=102-Z TO 102+Z:FOR B=54 TO 56:PLOT A,B:NEXT B:NEXT A
5280 FOR A=103-Z TO 101+Z STEP N2:COLOR N0:PLOT A,55:NEXT A:PLOT 102,56:COLOR CC
5300 Z=S(E)-D(E)*N100:IF Z<N1 THEN Z=N1
5305 Z=Z*N5/L(E)*N10+N1:IF Z>N10 THEN Z=N10
5310 Z=(Z/N10)*(77-Y):Z=INT(79-Z):REM ìïãáôå æáòíåò ¦ ðìï÷º ôèå èéçèåò ôèå íïòå ìáâïò¯ìáîä
5320 FOR A=145 TO 153:PLOT A,Z:NEXT A:COLOR N0:PLOT 148,Z:PLOT 149,Z:PLOT 151,Z
5330 COLOR CC:FOR A=145 TO 153 STEP N2:PLOT A,Z+N1:NEXT A:PLOT 144,Z-N1:PLOT 153,Z-N1
5400 Z=A(E)*N2:IF Z=N0 THEN 5500
5410 IF Z>154-X THEN Z=154-X
5420 FOR A=X TO X+Z STEP N2:PLOT A,60:PLOT A+N1,60:PLOT A+N1,61:PLOT A+N1,62:NEXT A:REM draw market stalls
5500 Z=D(E):IF Z=N0 THEN 5600
5510 IF Z>153-X THEN Z=153-X
5525 FOR B=76 TO 78:PLOT 153-Z,B:DRAWTO 155,B:NEXT B
5530 COLOR N0:FOR A=155-Z TO 153 STEP N2:PLOT A,77:NEXT A:REM  äòá÷ íéììó 
5600 COLOR CC
5900 ? :? "ROK :";Y1;" ";:GOSUB 15000
5910 ? :GOSUB KEY:GRAPHICS N0:SETCOLOR N2,N0,N2:RETURN
6000 POKE 82,5:CLOSE #N1:GRAPHICS N0:SETCOLOR N2,N0,N3:POKE 752,N1:? :GOSUB 15000:?
6002 FOR V=N1 TO 28:? "-";:NEXT V:? :? K(E);" Dukatow":? :?
6004 ? "MOZLIWO$CI, ROK ";Y1:? "
"
6010 ? "<1> Kram 1000"
6020 ? "<2> Mlyn 2000"
6030 ? "<3> Rozbudowa Zamku 3000"
6040 ? "<4> Rozbudowa Katedry 5000"
6050 ? "<5> 20 Wojownikow 500":?
6055 ? "<6> Stan posiadania 100"
6057 ? "<7> Mapa 100"
6058 ? "<8> Samobojstwo":? "<9> Zapisanie stanu gry na TM":? ""
6072 ? :? "™ÒÅÔÕÒÎ kontynuacja";
6082 GOSUB KEY+N2:I=V:IF I=155 THEN RETURN
6084 IF I<49 OR I>57 THEN 6082
6085 I=VAL(CHR$(I))
6093 IF I>N0 AND I<N6 THEN 6107
6094 IF I=9 THEN 21000
6100 IF I=N6 THEN GOSUB 1000:K(E)=K(E)-N100:GOTO 6000
6102 IF I=N7 THEN GOSUB 5000:K(E)=K(E)-N100:GOTO 6000
6104 IF I=8 THEN ? "œPodaj pierwsza litere imienia";:OPEN #N1,N4,N0,"K:":GET #N1,X:CLOSE #N1:POKE KEY,255
6105 IF N$(E*N7-N6,E*N7-N6)=CHR$(X) THEN DS(E)=N1:GOTO 2000
6106 GOTO 6000
6107 ? "œIle jednostek nr. ";I;"?";
6108 GOSUB KEY+N2:ZZ=V:IF ZZ<48 OR ZZ>57 THEN 6108
6109 ZZ=VAL(CHR$(ZZ)):IF ZZ=N0 THEN 6000
6110 FOR IJ=N1 TO ZZ:ON I GOTO 6200,6120,6300,6400,6500
6120 D(E)=D(E)+N1:K(E)=K(E)-2000:U(E)=U(E)+0.25:GOTO 6505
6200 A(E)=A(E)+N1:M(E)=M(E)+N5:K(E)=K(E)-1000:U(E)=U(E)+0.1:GOTO 6505
6300 B(E)=B(E)+N1:N(E)=N(E)+INT(RND(N0)*N2+N1):K(E)=K(E)-3000:U(E)=U(E)+0.5:GOTO 6505
6400 C(E)=C(E)+N1:Q(E)=Q(E)+INT(RND(0)*N6+N1):K(E)=K(E)-5000:U(E)=U(E)+N1:GOTO 6505
6500 P(E)=P(E)+20:S(E)=S(E)-20:K(E)=K(E)-500:GOTO 6505
6505 NEXT IJ
6506 GOTO 6000
7000 Z=N0:A=A(E):GOSUB 7500:A=B(E):GOSUB 7500:A=C(E)*N2:GOSUB 7500:A=D(E):GOSUB 7500:A=K(E)/5000:GOSUB 7500:A=L(E)/4000
7010 GOSUB 7500:A=M(E)/40:GOSUB 7500:A=N(E):GOSUB 7500:A=P(E)/20:GOSUB 7500:A=Q(E)/N10:GOSUB 7500:A=S(E)/1000:GOSUB 7500
7020 A=U(E)/N5:GOSUB 7500:REM åîïõçè ðïéîôó ôï ÷éî¿
7130 A=Z/U(0)-J(E):A=INT(A):IF A>15 THEN A=15:REM áäêõóô æïò äéææéãõìôù¬êõóôéãå
7140 IF (Y1+N2)=O(E) THEN T(E)=T(E)+N1
7145 IF A<N1 THEN A=N1
7150 IF T(E)-N1>A THEN RETURN
7160 T(E)=A:IF MT(E)=N1 THEN 7490
7165 IF T(E)>=15 THEN 7600
7490 RETURN
7500 IF A>25 THEN A=25
7530 A=INT(A):Z=Z+A:RETURN
7600 GRAPHICS N7:MT(E)=N1:? "* ";:GOSUB 15000:? " POSTANOWIENIA!":GOSUB 5010:GOSUB 1000:GOTO 11000
8000 GRAPHICS N0:GOSUB 15000:? " JEST BANKRUTEM!":? :? "Kredytorzy zablokowali":? " twoje aktywa!":? :GOSUB KEY
8002 A(E)=N0:R(E)=N(E)*N100+Q(E)*40+M(E)*30+P(E)*N10+S(E)*N5+2000:B(E)=N0:C(E)=N0:D(E)=N0:L(E)=6000:U(E)=N1
8005 K(E)=N100:T(E)=T(E)-N2:M(E)=25:N(E)=N5:Q(E)=N5:P(E)=P(E)/N2:RETURN
8100 Z=N0:FOR A=N1 TO F:IF A=E THEN 8200:REM ÷áò
8110 IF P(A)<P(E) THEN 8200
8130 IF P(A)<(1.2*(L(A)/1000)) THEN 8200
8140 IF P(A)>P(Z) THEN Z=A:REM äåæéîå éîöáäåò
8200 NEXT A
8205 IF Z=N0 THEN Z=N7:A=INT(RND(N0)*9000+1001):GOTO 8220:REM ¢Ðåððïîå¢
8210 A=INT((P(Z)-P(E)))*50:IF A>L(E)-1000 THEN A=L(E)-1000
8220 IF A<1000 THEN A=1000
8230 GOSUB 16000:? "najechal i zajal ";A:? "hektarow ziemi!":L(Z)=L(Z)+A:L(E)=L(E)-A:Z=INT(RND(N0)*40*(A/1000))
8233 IF Z>P(E)-15 THEN Z=P(E)-15:IF Z<N0 THEN Z=N0
8240 GOSUB 15000:? " stracil ";Z;" wojownikow!":P(E)=P(E)-Z:? :GOSUB KEY:RETURN
9000 POKE 752,N0:TRAP 9007:INPUT I1:TRAP 40000:IF I1<1 OR I1>250000 OR I<>INT(I) THEN 9007
9005 POKE 752,N1:RETURN
9007 POKE 752,N1:? "ý";:POP :GOTO 2720
11000 ? "œChcesz grac dalej?";:GOSUB KEY+N2:IF V=78 THEN DS(E)=N1:RETURN
11002 IF V<>84 THEN ? "œ";:GOTO 11000
11003 GOTO 6000
11100 ? "Rok ";Y1;" Ziemia ";L(E);" hektarow":RETURN
12000 FOR DEL=N10 TO N100:NEXT DEL:RETURN
15000 X=N0:TRAP 15002:? T$(N1(T(E)+V(E)),N2(T(E)+V(E)));" ";
15002 ? N$(E*N7-N6+X,E*N7-N6+X);:X=X+N1:IF N$(E*N7-N6+X,E*N7-N6+X)<>" " AND X<N7 THEN 15002
15004 TRAP 40000:RETURN
16000 ? T$(N1(Z)+V(Z),N2(Z)+V(Z));" ";N$(Z*N7-N6,Z*N7):RETURN
20000 DATA SIR,BARON,COUNT,MARQUIS,LORD,DUKE,ARCHDUKE,GRAND DUKE,PRINCE,KING,EMPEROR,SHOGUN
20010 DATA DEMI-GOD,GOD,SUPREME RULER
20100 DATA MADAM,BARONESS,COUNTESS,MARQUISE,LADY,DUCHESS,ARCHDUCHESS,GRAND DUCHESS,PRINCESS
20110 DATA QUEEN,EMPRESS,SAINT,DEMI-GODESS,GODESS,SUPREME RULER
20200 DATA SANTA PARAVIA ,FIUMACCIO ,TORRICELLA ,VENIZIA ,MOLINETTO ,FONTANILE
20300 FOR A=N1 TO 30
20310 ? T$(N1(A),N2(A))
20320 NEXT A
21000 TRAP 21010:OPEN #N1,N4,N0,"C:":CLOSE #N1
21004 GOSUB KEY+N2:IF V=78 THEN 6000
21006 IF V<>89 THEN POKE KEY,255:GOTO 21004
21010 CLOSE #N1:OPEN #N1,8,N0,"C:"
21012 ? #N1;N$:? #N1;F:? #N1;U:? #N1;E:? #N1;W:? #N1;AX:? #N1;Y1:? #N1;U(N0)
21014 FOR A=N1 TO F:? #N1;L(A):? #N1;P(A):? #N1;C(A):? #N1;D(A):? #N1;A(A):? #N1;B(A):? #N1;S(A):? #N1;K(A)
21018 ? #N1;MT(A):? #N1;G(A):? #N1;V(A):? #N1;H(A):? #N1;I(A):? #N1;J(A):? #N1;O(A):? #N1;R(A):? #N1;T(A)
21020 ? #N1;U(A):? #N1;N(A):? #N1;Q(A):? #N1;M(A):? #N1;DS(A):? #N1;LP(A):NEXT A
21022 FOR A=N1 TO 30:? #N1;N1(A):? #N1;N2(A):NEXT A:CLOSE #N1
21024 POKE 752,N1:? "}":POSITION 13,N10:? "GRA ZAPISANA":FOR V=N1 TO 400:NEXT V:POKE 752,N0:GOTO 6000
22000 TRAP 22050:OPEN #N1,N4,N0,"C:":REM  ÌÏÁÄ ÇÁÍÅ 
22011 ? "}":POSITION 12,N10:? "LADOWANIE GRY"
22012 INPUT #N1;N$:INPUT #N1;F:INPUT #N1;U:INPUT #N1;E:INPUT #N1;W:INPUT #N1;AX:INPUT #N1;Y1:INPUT #N1;B:U(N0)=B
22014 FOR A=N1 TO F:INPUT #N1;B:L(A)=B:INPUT #N1;B:P(A)=B:INPUT #N1;B:C(A)=B:INPUT #N1;B:D(A)=B:INPUT #N1;B:A(A)=B:INPUT #N1;B:B(A)=B
22015 INPUT #N1;B:S(A)=B:INPUT #N1;B:K(A)=B:INPUT #N1;B:MT(A)=B:INPUT #N1;B:G(A)=B:INPUT #N1;B:V(A)=B
22018 INPUT #N1;B:H(A)=B:INPUT #N1;B:I(A)=B:INPUT #N1;B:J(A)=B:INPUT #N1;B:O(A)=B:INPUT #N1;B:R(A)=B:INPUT #N1;B:T(A)=B
22020 INPUT #N1;B:U(A)=B:INPUT #N1;B:N(A)=B:INPUT #N1;B:Q(A)=B:INPUT #N1;B:M(A)=B:INPUT #N1;B:DS(A)=B
22021 INPUT #N1;B:LP(A)=B:NEXT A
22022 FOR A=N1 TO 30:INPUT #N1;B:N1(A)=B:INPUT #N1;B:N2(A)=B:NEXT A:CLOSE #N1:POKE 752,N0:GOTO 666
22050 CLOSE #N1:? "}":POSITION N7,11:? "NIE MOGE ZNALEZC TEJ GRY":FOR V=N1 TO 500:NEXT V:GOTO 300
23000 ? "}        "
23012 ? "        Š     ˆ"
23014 ? "Š     ˆ      "
23016 ? "            "
23018 ? "           "
23020 ? "            "
23022 ? "                           "
23024 ? "                           "
23026 ? "                           "
23028 ? "     ÐÁÎÏ×ÉÅ É ÐÏÄÄÁÎÉ     "
23030 ? "     ’’’’’’’’’’’’’’’’’     "
23032 ? "     æåõäáìîá åëïîïíéá     "
23034 ? "                           "
23036 ? "                           "
23038 ? "                     "
23040 ? "                     "
23042 ? "                      "
23044 ? "                      ":? :? " Chcesz zaladowac ostatni stan gry?":RETURN