1 REM Ins{nd av Lennart Einarsson <6554> 1986-05-25 19.10.56
10 REM INS[DARE <6554>
20 GOSUB 1230 : ;
30 ; "H{r b|rjar spelet med att du handlar"
40 ;
50 ; "dom vapen du t{nker anv{nda i ditt spel."
60 ; "Gl|m inte att du bara har 50 GULD i"
70 ;
80 ; "b|rjan av spelet."
90 ; : ;
100 ONERRORGOTO 20 : ; TAB(8)"SV]RIGHETSGRAD (1-10)"; : INPUT C% : IF C%>10% OR C%<1 THEN 100
110 DIM P%(9),O%(25,5),P1%(15),M$(24)=12,E1%(9,4),S$=13,D$=11,L4%(7),L5%(3),V4%(7),V5%(3),R$(2)=11,L6%(2),R$=21
120 DIM E%(1),D%(9,8),A$(4)=4,B$(4)=1,C$(4)=2,D$(4)=3,L%(9,3),M1%(11),M2%(11)
130 DATA 20,50,10,10,20,10,35,40,100,7,RUSTNING,75,5,RINGBRYNJA,30,3,L[DERPANSAR
140 DATA "DU HAR INGE"," ",SV[RD,BREDSV[RD,KORTSV[RD,STRIDSGISSEL,HANDYXA,SPIKKLUBBA,PILB]GE,HILLEBARD
150 DATA DRAKE,V]LNAD,BJ\RN,CHIMERA,ZOMBIE,J[TTER]TTA,V[TTE,J[TTE\DLA,SLEMKLUMP,J[TTE,VARG,J[TTESNIGEL
160 DATA \DLEMAN,MINOTAUR,ORCH,J[TTESPINDEL,TROLL,J[TTEORM,MUMIE,SKELETT,VAMPYR
170 DATA J[TTEGETING,VARULV,HYENA,HYDRA
180 DATA 4,5,6,21,19,4,23,6,21,14,4,21,6,10,14,13,23,15,10,12,13,2,15,8,1,13,22,11,8,1,7
190 DATA 18,11,16,17,9,18,3,16,20,9,24,3,16,20,9,24,3,0,20,4,7,3,3,4,3,5,6
200 DATA 10,22,8,1,11,6,6,10,2,5,5,8,5,5,5,8,16
210 DATA 10,3,9,0,4,5,10,2,0,2,8,10,1,1,4,5,8,2,7,10,4,4,6,5,5,2,8,7,9,14,8,3,9
220 DATA 2,5,10,9,3,7,12,1,3,6,4,6,6,5,5,5,10,6,6,6,2,5,5,8,3,3,8,8,7,3,7,14,6,4,7,7,12,4,4,8,6,12,8,4,7,0,3,5,10,1
230 DATA 9,18,3,3,8,0,3,10,9,1,6,10,8,5,5,1,4,10,9,2,9,20,6,2,9
240 DATA 7!#,5,5,#!#,5,7!#,4,5,#!#,4,7##,4,5,###,4,7##,5,5,###,5
250 FOR I%=0 TO 7 : READ L4%(I%) : NEXT I%
260 FOR I%=0 TO 2 : READ L5%(I%),L6%(I%),R$(I%) : NEXT I%
270 READ D$,S$ : FOR I%=1 TO 8 : READ P$(I%) : NEXT I% : FOR I%=0 TO 24
280 READ M$(I%) : NEXT I% : FOR I%=0 TO 9 : FOR I1%=0 TO 4 : READ E1%(I%,I1%) : NEXT I1% : NEXT I%
290 FOR I%=1 TO 8 : READ P%(I%) : NEXT I% : FOR I1%=0 TO 24 : FOR I2%=0 TO 4 : READ O%(I1%,I2%) : NEXT I2% : NEXT I1%
300 FOR I%=1 TO 4 : READ A$(I%),B$(I%),C$(I%),D$(I%),E$(I%) : NEXT I%
310 RANDOMIZE : E%(0)=1 : E%(1)=-1 : L5%=50 : H1=30 : K%=4 : K1%=3 : R$="F\R LITE GULD. REST->"
320 L%(0,0)=8*RND+1 : L%(1,2)=L%(0,0) : L%(0,1)=6*RND+1 : L%(1,3)=L%(0,1) : FOR I%=1 TO 8
330 \1%=8*RND+1 : \2%=6*RND+1 : IF L%(I%-1,2)=\1% 330
340 L%(I%,0)=\1% : L%(I%+1,2)=\1% : L%(I%,1)=\2% : L%(I%+1,3)=\2% : NEXT I%
350 GOSUB 1230 : OUT 6,137 : ; TAB(8%)"DU HAR BARA"L5%" GULD NU" : FOR I%=0 TO 7
360 ; : ; TAB(8%)P$(I%+1)" ""PRIS"L4%(I%)" G "; : INPUT A$ : IF A$="" 380
370 IF L4%(I%)>L5% GOSUB 1230 : ; TAB(8%)R$L5% : GOTO 380 ELSE P1%(I%+1)=1 : L5%=L5%-L4%(I%)
380 NEXT I% : GOSUB 1230
390 ONERRORGOTO 410 : ; TAB(8%)"PILAR 5 G DUSS "; : INPUT L%
400 IF L5%0 THEN D%(L%(L1%,2),L%(L1%,3))=11 : ; CUR(2*L%(L1%,2)+1,3*L%(L1%,3)+2)"D"
510 P%=P%+4 : IF L1%>L3% THEN L3%=L1%
520 R2%=R% : P2%=P% : S1%=INP(56) : IF S%=1 AND S1%>128 THEN K%=S1%-128
530 ; CUR(8,28); : IF S1%<128 THEN S%=1 ELSE S%=0
540 IF K%=0 THEN 610
550 IF K%=69 THEN R%=R%-1 ELSE IF K%=83 THEN P%=P%-1 ELSE IF K%=68 THEN P%=P%+1 ELSE IF K%=88 THEN R%=R%+1
560 IF P2%=P% AND R2%=R% THEN 580
570 IF RND<.02/C% THEN L5%=L5%+RND*INT(L1%/2+1)*20+1 : OUT 6,7 : FOR I=1 TO 500 : NEXT I : OUT 6,0 : ; CUR(1,34)L5%
580 IF K%<57 AND K%>47 THEN H%=K%-48 : IF P1%(H%)=1 THEN ; S$CUR(7,28)S$CUR(6,28)S$CUR(10,28)S$CUR(10,28)P$(H%)
590 IF K%<57 AND K%>47 AND P1%(H%)=0 THEN ; S$CUR(8,28)P$(H%)CUR(7,28)D$
600 IF H%<>0 THEN IF K%=89 OR K%=71 OR K%=72 OR K%=66 THEN GOSUB 980
610 IF M1%=-1 THEN IF RND<.01 THEN GOSUB 930 ELSE 640
620 IF ABS(INT(W1)-R%)=1 AND INT(E1)=P% THEN F%=0 : GOSUB 910 ELSE F%=1
630 IF ABS(INT(E1)-P%)=1 AND W1=R% THEN F%=0 : GOSUB 910
640 IF P%=1 AND R%=4 THEN IF L1%=0 THEN 350 ELSE 1190
650 IF F%=1 THEN GOSUB 840 ELSE IF M1%>-1 AND RND<.2 THEN F%=1
660 CLRDOT R2%,P2% : IF DOT(R%,P%) THEN R%=R2% : P%=P2% : P=P2% : R=R2%
670 IF M1%>-1 THEN IF ABS(P%-E1)>18 OR ABS(R%-W1)>18 THEN F%=0 : M1%=-1 : CLRDOT W1,E1 : ; CUR(23,1)S$;
680 SETDOT R%,P% : K%=0 : R1%=INT(R%/6) : P1%=INT(P%/6) : D1%=D%(R1%,P1%)
690 IF D1%=10 THEN L1%=L1%+1 : M1%=0 : F%=0 : GOTO 440
700 IF D1%=11 THEN L1%=L1%-1 : M1%=0 : F%=0 : GOTO 440
710 IF Y3%=1 THEN GOSUB 1110
720 IF D1%<>0 THEN ; CUR(R1%*2,P1%*3)A$(D1%)CUR(R1%*2+1,P1%*3)B$(D1%); : D%(R1%,P1%)=0
730 IF P1%=7 THEN IF R1%<>0 ; CUR(R1%*2,24)"5"CUR(R1%*2+1,24)"5" ELSE ; CUR(1,24)"5"
740 IF R1%=8 THEN IF P1%<>0 ; CUR(18,P1%*3)D$(4); ELSE ; CUR(18,1)"##";
750 D0%=D%(R1%+1,P1%) : IF D0%=0 THEN 770 ELSE ; CUR(R1%*2+2,P1%*3+1); : IF D0%<3 THEN ; "!#" ELSE ; "##"
760 ; CUR(R1%*2+2,P1%*3); : IF D%(R1%+1,P1%-1)<>0 THEN ; "#" ELSE ; "7"
770 D0%=D%(R1%,P1%+1) : IF D0%=0 THEN 790 ELSE ; CUR(R1%*2+1,P1%*3+3); : IF D0%=2 OR D0%=3 THEN ; "4"; ELSE ; "5";
780 IF D0%<>0 THEN ; CUR(R1%*2,P1%*3+3); : IF D%(R1%-1,P1%+1)<>0 THEN ; "5"; ELSE ; "7";
790 IF RND<.3 THEN \1%=RND*8+1 : \2%=RND*7+1 : IF NOT D%(\1%,\2%)>5 THEN D%(\1%,\2%)=5*RND
800 IF R1%>0 OR M1%(P1%)=1 THEN 820 ELSE M1%(P1%)=1
810 IF P1%>0 THEN ; CUR(1,P1%*3)D$(4) ELSE ; CUR(1,1); : IF L1%=0 OR L1%=9 THEN ; "3##" ELSE ; "7##"
820 IF P1%=0 AND M2%(R1%)=0 AND R1%>0 THEN M2%(R1%)=1 : ; CUR(R1%*2,1)"5"CUR(R1%*2+1,1)"5";
830 GOTO 520
840 W2%=W1 : E2%=E1 : IF INT(E1)P% THEN E1=E1-RND*M4
850 CLRDOT W2%,E2% : IF INT(W1)R% THEN W1=W1-RND*M4
860 IF DOT(W1,E1) OR W1>65 OR W1<4 OR E1>59 OR E1<3 THEN 880 ELSE SETDOT W1,E1 : RETURN
870 SETDOT W1,E1 : RETURN
880 E1=E2% : W1=W2% : IF RND<.5 THEN E1=E1+M4 ELSE E1=E1-M4
890 IF RND<.5 THEN W1=W1+M4 ELSE W1=W1-M4
900 GOTO 860
910 IF RND<.1 THEN IF RND*10+O%(M1%,0)+1>C1% OR RND<.1 THEN H2=H2+.1*RND*O%(M1%,1)*C%+1
920 IF NOT H2>=H1 THEN ; CUR(3,36)INT(100*(H2/H1))"%" : RETURN ELSE W%=W%/2 : GOTO 1190
930 W1=R%+(4*RND+2)*(E%(RND*2)) : E1=P%+(4*RND+2)*E%(RND*2)
940 IF W1>54 OR W1<4 OR E1>49 OR E1<3 OR DOT(W1,E1) THEN 930
950 IF INT(W1)=R% AND INT(E1)=P% THEN 930
960 M1%=E1%(L1%,5*RND) : F%=1 : ; CHR$(7)CUR(24,1)M$(M1%)S$; : M4=O%(M1%,2)/10
970 M3%=0 : FOR I%=1 TO O%(M1%,4) : M3%=M3%+(C%+3)*RND+1 : NEXT I% : M2%=M3% : RETURN
980 T%=0 : ; CUR(10,28)S$CUR(7,28)S$CUR(8,28)S$ : IF H%=7 THEN IF Y3%=0 THEN 1080 ELSE RETURN
990 IF M1%=-1 THEN 1020
1000 IF K%=89 AND INT(W1)=R%-1 AND INT(E1)=P% THEN T%=1 ELSE IF K%=71 AND INT(E1)=P%-1 AND INT(W1)=R% THEN T%=1
1010 IF K%=72 AND INT(E1)=P%+1 AND INT(W1)=R% THEN T%=1 ELSE IF K%=66 AND INT(W1)=R%+1 AND INT(E1)=P% THEN T%=1
1020 ; CUR(6,29); : IF T%=0 THEN ; "MISS " ELSE ; "TR[FF" : IF RND-1 THEN M2%=M2%-4*RND-1 : Y3%=0 : [%=1
1130 IF [%=0 THEN 1170
1140 IF M2%<0 THEN G%=G%+1 : H2=H2+M3%/4 : M1%=-1 : F%=0 : H3%=INT(100*(H2/H1)) : IF L1%=L3% THEN W%=W%+M3%*(L1%+1)
1150 IF M2%<0 THEN CLRDOT Y4%,Y5% : ; CUR(2,36)G%CUR(24,1)S$CUR(3,36)H3%"%"; : IF H3%<10 THEN ; " "
1160 RETURN
1170 IF [%=0 THEN IF DOT(Y4%,Y5%) OR Y4%<4 OR Y4%>53 OR Y5%<3 OR Y5%>47 THEN Y3%=0 ELSE SETDOT Y4%,Y5%
1180 RETURN
1190 GOSUB 1230 : IF H2<=H1 THEN ; " DU KLARADE DIG LEVANDE UT!" : GOTO 1220
1200 ; " DU D\DADES UNDER FRUKTANSV[RD KAMP" : ; : ; " MOT EN "M$(M1%)" P] V]NING"L1%+1
1210 ; : ; " DU N]DDE SOM H\GST V]NING"L3%+1
1220 ; : ; " DU FICK"W%+INT(L5%/5)" PO[NG,OCH D\DADE" : ; : ; G%" MONSTER." : ; : ; " SV]RIGHETSGRADEN VAR"C% : END
1230 ; CHR$(12)
1240 ; CHR$(151)CUR(1,13)"7###########k"
1250 ; CHR$(151)CUR(2,13)"5XAGYGS TORNj"
1260 ; CHR$(151)CUR(3,13)"-,,,,,,,,,,,."
1270 ; : RETURN