100 !********************* 110 !* TRRORISTSPELET * 120 !* by calle & kimme * 130 !* date 83.04.08 * 140 !* ORIGINAL * 150 !********************* 160 !****** PRE-SCAN ***** 170 GOTO 210 :: CALL COLOR :: CALL MAGNIFY :: CALL CLEAR :: CALL SCREEN :: CALL SPRITE :: CALL HCHAR :: CALL VCHAR :: CALL POSITION :: CALL SAY :: CALL SOUND :: CALL COINC 180 CALL PEEK :: CALL CHAR :: CALL KEY :: CALL MOTION :: CALL PATTERN :: CALL DELSPRITE :: CALL CHARSET :: CALL LOCATE :: CALL JOYST 190 X,Y,I,T,F,K,S,D,C,M,A,P,R,TD,T$,PO,NM$,TI,MH,MG,BT,CK,FG,BG,TR 200 !@P- 210 CALL CLEAR :: CALL SCREEN(12) :: CALL MAGNIFY(3) :: GOTO 240 220 CALL CHAR(91,"00280038447C4444",92,"0028003844444438",93,"00100038447C4444",64,"3C4299A1A199423C") 230 RETURN 240 GOSUB 220 250 CALL CHAR(36,"00000000000341FF08080400000000000000000000F020FF7F0F000000000000") 260 CALL CHAR(100,"0000000000101F020000000000000000000000000000C0C04000000000000000") 270 DISPLAY AT(1,7):"INSTRUKTIONER" 280 DISPLAY AT(3,1):"DU SKA SKJUTA NED S] M]NGA GUBBAR SOM M\\JLIGT P] S] KORT TID SOM M\\JLIGT." 290 DISPLAY AT(6,1):"N[R DU TR[FFAT EN GUBBE KAN POLISEN KOMMA. OM DU INTE LYCKAS SKJUTA NED DEM F]R DU 5]R I F[NGELSE TID." 300 DISPLAY AT(10,1):"DU KAN BLI BOMBAD N[R SOM HELST,OCH DU M]STE D] SKJUTABOMBEN,ANNARS [R DU F\\RLORAD" 310 DISPLAY AT(13,1):"V[LJ VAPEN. OM DU V[LJER REVOLVER F]R DU BONUSPO[NG." 320 DISPLAY AT(16,1):"1. KULSPRUTA " :: DISPLAY AT(18,1):"2. REVOLVER" :: DISPLAY AT(23,20):"é JOAKIM"," S\\DERBERG" 330 CALL SPRITE(#1,36,13,118,130,#2,100,2,134,130) 340 RESTORE 360 350 READ T,F :: IF F=0 THEN 410 :: CALL SOUND(T,F,0,F+1,1,F+2,2) :: CALL KEY(0,K,S) :: IF S THEN 410 ELSE 350 360 DATA 400,233,200,220,200,233,400,262,200,233,200,156,200,156,200,147,200,147,200,139 370 DATA 600,147,200,262,200,262,200,262,600,294,200,262,200,262,200,233,200,233,200,220,600,233,200,233,400,311 380 DATA 200,233,200,196,600,156,200,233,300,262,100,294,200,311,200,262,600,233 390 DATA 200,196,300,233,100,262,200,233,200,196,400,208,400,147,400,156,400,40000,400,156,200,196,200,147,600,156 400 DATA 200,196,400,233,400,147,400,156,100,0 410 CALL SAY("WHAT+IS+YOUR+CHOICE") 420 DISPLAY AT(21,1):"VAPEN? " :: CALL KEY(0,K,S) :: DISPLAY AT(21,1):"" 430 IF S=0 THEN 420 :: IF K=49 THEN P=-300 :: GOTO 450 440 IF K=50 THEN P=300 ELSE DISPLAY AT(21,3):"SVARA 1 ELLER 2 !!" :: FOR D=1 TO 300 NEXT D :: GOTO 420 450 CALL SAY("AND+YOUR+NAME") 460 DISPLAY AT(21,1):"NAMN:" :: ACCEPT AT(21,7)VALIDATE(UALPHA):NM$ 470 IF P=-300 THEN TI=50 ELSE TI=200 480 DISPLAY AT(21,1):"SV]RHETS":"GRAD? (1-3)" :: ACCEPT AT(22,13)VALIDATE("123"):S :: ON S GOTO 490,500,510 490 MH=8 :: BT=25 :: MG=3 :: GOTO 520 500 MH=10 :: BT=20 :: MG=4 :: GOTO 520 510 MH=15 :: BT=17 :: MG=5 520 CALL DELSPRITE(ALL) :: CALL CLEAR :: CALL SCREEN(2) 530 CALL CHAR(124,"000000000004081010387CFEFEFE7C3800000000000000000000000000") 540 CALL CHAR(36,"0101010F0F010101010101000B1A0A0B808080F0F080808080808000B8A8A8B8") 550 CALL CHAR(116,"000000000000020100010000000000000000000000408080C000000000000") 560 CALL CHAR(48,"00000000000000010303010101000000000000000000000080C000E08000000") 570 CALL CHAR(52,"13131213090703030303030202020206C8C848C890E0C0C0C0C0C04040404060") 580 CALL CHAR(68,"00000000000007FF8700000000000000000000000000EFFDEF22201800000000") 590 CALL CHAR(72,"000107091111113F11111109070100000000C020101010F810101020C0000000") 600 CALL CHAR(76,"03070301070B132307080402063F0C0C808080008040204000804040C0FC1818") 610 CALL CHAR(80,"0303030301070B137B7B7BC20102040680C0008000C0A0908080806010180000") 620 CALL CHAR(140,"0303030301070B1303030302020C080080C0808000C0A090BCBCBC4020102030") 630 CALL CHAR(100,"0303030301070B07030303010107050180C0808000808080C0C0C08040800080") 640 CALL CHAR(135,"FFFEFCF8F0E0C080",134,"0103070F1F3F7FFF") 650 CALL CHAR(114,"0000AAAAAAAAFFFF",113,"FFFFFFFFFFFFFFFF",130,"FFFFFB7B57510000") 660 CALL CHAR(61,"3F3F3F3F3F3F3F3F",62,"FCFCFCFCFCFCFCFC") 670 CALL CHAR(131,"0303031F1F1FFFFF",63,"FFFF00FFFF00FFFF",132,"C0C0C0F8F8F8FFFF") 680 CALL CHAR(88,"000000031F3F7FFF",89,"FFFF7F3F3F1F1F03",90,"071FFFFFFFFFFFFF",91,"FFFFFFFFFFFFC380") 690 CALL CHAR(92,"E0F0F3FFFFFFFFFF",93,"FFFFFFFFFFFFFF71",94,"0060F0F0F8FEFEFE",95,"FEFFFFFFFFFFFCF0") 700 CALL CHAR(96,"00070F1F3F3F7FFF",97,"00C4FCFCFCFEFFFF",122,"FEFEFCF8F8FCF060",123,"3F7E7C7F3F3F3F3F") 710 CALL CHAR(99,"FFFFFFFFFFFFFFFE",98,"E0F8FCFCFCFCFEFE",120,"FF7F7F7F3F1F0701",121,"FFFEFEFEFEFEF8F0") 720 CALL CHAR(129,"1C1C1C1D1E1C1C1C",133,"7722FF2222FF2222") 730 CALL CHAR(40,"0103070F1F3F7FFF",41,"FFFFFFFFFFFCFCFC",42,"FFFFFFFFFF3C3C3C",43,"FFFFFFFFFF3F3F3F") 740 CALL CHAR(44,"80C0E0F0F8FCFEFF",45,"FF3F3F3838383838",46,"FFFFFF3838383838",47,"FFFCFC3C3C3C3C3C") 750 CALL CHAR(87,"FFFFFFFFC9B6D5FF",64,"7F3E1C1C1C1C1C1C",65,"1C1C1C1C1C1C3E77F",60,"3F202F2F2F2F2F2F") 760 CALL CHAR(57,"7E027A7A7A7A7A7A",58,"2F2E2F2F2F2F2F2F",59,"7A3A7A7A7A7A7A7A") 770 RESTORE 780 :: FOR C=1 TO 14 :: READ CK,FG,BG :: CALL COLOR(CK,FG,BG) :: NEXT C 780 DATA 10,2,1,9,13,6,8,16,6,11,4,6,14,7,4,4,2,16,2,16,6,5,15,16,3,12,6,6,2,2,7,16,12 790 DATA 1,6,6,12,13,4,13,2,4 800 FOR I=1 TO 24 :: CALL HCHAR(I,31,75,4) :: NEXT I 810 DISPLAY AT(1,12):"XZ\x5c^" :: DISPLAY AT(2,3):"XZ\x5c^ Y[]_" :: DISPLAY AT(3,3):"Y[]_" 820 DISPLAY AT(5,19):"()****+," :: DISPLAY AT(6,19):"-....../" :: DISPLAY AT(7,19):"-....../" 830 DISPLAY AT(8,19):"WWWWWWWW" :: DISPLAY AT(9,19):"@@@<9@@@" :: DISPLAY AT(10,5):"ea AAA:;AAA" 840 DISPLAY AT(11,1):"rrrr`cbrrrrrrrrrr"&CHR$(131)&"????????"&CHR$(132)&"r":"qqqqxyzqqqqqqqqq"&CHR$(134)&"HHHHHHHHH"&CHR$(135)&"q" 850 DISPLAY AT(13,1):"qqqqq"&CHR$(129)&"qqqqqqqqq"&CHR$(134)&"HHHHHHHHH"&CHR$(135)&"qq" 860 DISPLAY AT(14,1):"qqqqq"&CHR$(129)&"qqqqqqqq"&CHR$(134)&"HHHHHHHHH"&CHR$(135)&"qqq" 870 DISPLAY AT(15,1):"qqqqq"&CHR$(129)&"qqqqqqq"&CHR$(134)&"HHHHHHHHH"&CHR$(135)&"qqqq":RPT$(CHR$(133),12)&"=HHHHHHHHH>"&RPT$(CHR$(133),5) 880 DISPLAY AT(17,1):"HHHHHHHHHHHHHHHHHHHHHHHHHHHH" :: DISPLAY AT(18,1):"??HHHH??HHHH??HHHH??HHHH??HH" 890 DISPLAY AT(19,1):"HHHHHHHHHHHHHHHHHHHHHHHHHHHH":RPT$(CHR$(130),28) 900 DISPLAY AT(21,1):RPT$("q",112) 910 CALL SAY("#READY TO START#") :: CALL SCREEN(2) 920 CALL CHAR(104,"000000000000000000003FFF000000000007000000000000007FC0FF0700000") 930 CALL CHAR(136,"00183C3C180C0F1F2743211000000302000000000810E00080C0E0E090880503") 940 CALL CHAR(108,"00FF02071F7F7070F0F0F0F0F8FF3F0000FF0000C0E0781C1C00070707FCF000") 950 CALL CHAR(32,RPT$("0",28)&"3F0C"&RPT$("0",27)&"4F860") 960 CALL SAY("USE+JOYSTICK+NUMBER+ONE") 970 CALL DELSPRITE(#10) :: CALL SPRITE(#1,76,8,120,100,0,-MH,#2,80,10,140,1,#3,72,16,100,150) 980 CALL MOTION(#2,0,MG) :: CALL PATTERN(#2,80) 990 TD=TD+1 :: CALL JOYST(1,X,Y) :: CALL MOTION(#3,-Y*3,X*3) 1000 RANDOMIZE :: CALL PEEK(-31880,R) :: IF R<5 THEN 1100 1010 CALL PATTERN(#2,140) :: CALL DELSPRITE(#4) 1020 CALL KEY(1,K,S) :: IF K=18 THEN 1200 1030 CALL JOYST(1,X,Y) :: CALL MOTION(#3,-Y*3,X*3) 1040 CALL KEY(1,K,S) :: IF K=18 THEN 1200 1050 CALL PATTERN(#2,100) :: CALL JOYST(1,X,Y) :: CALL MOTION(#3,-Y*3,X*3) 1060 CALL KEY(1,K,S) :: IF K=18 THEN 1200 1070 CALL PATTERN(#2,80) :: CALL JOYST(1,X,Y) :: CALL MOTION(#3,-Y*3,X*3) 1080 CALL KEY(1,K,S) :: IF K=18 THEN 1200 1090 GOTO 990 1100 CALL PATTERN(#2,52) :: CALL MOTION(#2,0,0) :: CALL SPRITE(#10,124,15,100,249,15,-10) 1110 FOR D=1 TO 135 :: NEXT D :: CALL SOUND(50,-7,1) 1120 CALL MOTION(#10,-30,-10) :: CALL JOYST(1,X,Y) :: CALL MOTION(#3,-Y*3,X*3) :: CALL MOTION(#10,35,-20) :: CALL SOUND(35,40000,1) 1130 CALL SOUND(50,-7,1) :: CALL MOTION(#10,0,0) :: I=0 1140 FOR I=1 TO BT :: CALL KEY(1,K,S) :: IF K=18 THEN 1170 1150 CALL JOYST(1,X,Y) :: CALL MOTION(#3,-Y*3,X*3) 1160 CALL MOTION(#3,-Y*3,X*3) :: CALL SOUND(50,400,1) :: NEXT I :: GOTO 1180 1170 I=I+1 :: CALL SOUND(-50,-6,1,400,1,400,1) :: CALL COINC(#3,#10,10,TR) :: IF TR=-1 THEN 970 ELSE 1150 1180 CALL SOUND(500,-6,1) :: CALL CLEAR :: CALL CHARSET :: CALL DELSPRITE(ALL) :: FOR I=1 TO 20 :: CALL SCREEN(7) :: CALL SCREEN(12) 1190 CALL SOUND(50,-7,I) :: CALL SCREEN(16) :: NEXT I :: CALL SAY("YOU+ARE+FINISHED") :: GOSUB 220 :: GOTO 1590 1200 CALL PATTERN(#2,52) :: CALL MOTION(#2,0,0) 1210 CALL JOYST(1,X,Y) :: CALL MOTION(#3,-Y*3,X*3) 1220 CALL POSITION(#3,R,K) :: CALL SPRITE(#4,116,16,R,K) :: CALL SOUND(-TI,-6,1) 1230 CALL COINC(#2,#3,2,TR) :: CALL COINC(#1,#3,2,T) 1240 IF TR=-1 THEN 1270 ELSE IF T=-1 THEN 1330 :: IF TI=200 THEN 1250 ELSE 1260 1250 FOR D=1 TO 7 :: CALL JOYST(1,X,Y) :: CALL MOTION(#3,-Y*3,X*3) :: NEXT D 1260 CALL KEY(1,K,S) :: IF S=0 THEN 980 ELSE 1210 1270 FOR I=1 TO 20 STEP 5 :: CALL SOUND(-1,2000-I*9,I) :: NEXT I 1280 CALL SAY("UHOH+VERY+GOOD") 1290 CALL DELSPRITE(#4) :: CALL PATTERN(#2,68) 1300 CALL POSITION(#2,R,K) :: CALL SPRITE(#5,36,15,R,K+10) 1310 FOR D=1 TO 300 :: NEXT D 1320 P=P+200 :: CALL DELSPRITE(#5) :: GOTO 1360 1330 CALL SAY("OH") :: CALL PATTERN(#1,136) :: CALL SOUND(-70,-5,1) :: CALL MOTION(#1,0,0,#3,0,0) :: CALL COLOR(#1,10) 1340 CALL DELSPRITE(#4) :: CALL POSITION(#1,R,K) :: CALL SPRITE(#9,32,8,R,K,0,-MH) 1350 FOR D=1 TO 500 :: NEXT D :: P=P+50 :: CALL DELSPRITE(#9) :: GOTO 1360 1360 RANDOMIZE :: CALL PEEK(-31880,R) :: IF R>50 THEN 1370 ELSE 970 1370 CALL SAY("LOOK+OUT") :: CALL SPRITE(#6,104,2,30,1,#7,108,2,30,18,#8,48,16,30,21) 1380 CALL POSITION(#8,R,C) :: IF R>30 THEN M=-10 ELSE M=10 :: IF C>230 THEN 1460 1390 TD=TD+1 :: CALL SOUND(-10,700,1) :: CALL MOTION(#6,M,MH,#7,M,MH,#8,M,MH) 1400 CALL JOYST(1,X,Y) :: CALL MOTION(#3,-Y*3,X*3) :: CALL KEY(1,K,S) :: IF K=18 THEN 1410 :: GOTO 1380 1410 CALL SOUND(-50,-7,0) :: CALL COINC(#8,#3,3,T) :: IF T=-1 THEN 1420 ELSE 1380 1420 CALL DELSPRITE(#8) :: CALL MOTION(#6,22,5,#7,22,5) 1430 FOR I=1 TO 700 STEP 40 :: CALL SOUND(-5,2600-I,0) :: NEXT I 1440 CALL SAY("#GOOD WORK#") 1450 CALL SOUND(1000,-7,0,120,0) :: P=P+200 :: A=A-1 :: CALL DELSPRITE(#6,#7,#8,#9) :: GOTO 970 1460 CALL DELSPRITE(ALL) :: CALL SAY("#NICE TRY#") 1470 CALL CLEAR :: CALL SCREEN(12) :: CALL CHARSET :: GOSUB 220 1480 CALL SAY("YOU+ARE+FINISHED") 1490 A=A+5 :: P=P-100 :: IF A<0 THEN A=0 1500 DISPLAY AT(2,7):"MISS! HE,HE,HEE" 1510 DISPLAY AT(5,5):"OK."&NM$&", DU KAN NU V[LJA":"ATT TJ[NA AV DITT F[NGELSE" 1520 DISPLAY AT(8,1):"STRAFF P] "&STR$(A)&" ]R ELLER FORT- S[TTA SPELET" 1530 DISPLAY AT(10,5):"OCH OM DU D] LYCKAS SKJUTA NED N]GON POLIS REDUCERAS DIN F[NGELSE TID." 1540 DISPLAY AT(14,5):"MEN OM DU MISSAR EN HELIKOPTER TILL \x5cKAR DIN F[NGELSE TID MED 5 ]R!" 1550 DISPLAY AT(18,6):"DU HAR NU "&STR$(P)&" PO[NG. VAD V[LJER DU?" 1560 DISPLAY AT(22,3):"1. FORTS[TTA 2. SLUTA" 1570 CALL KEY(0,K,S) :: IF S=0 THEN 1570 :: IF K=49 THEN CALL SAY("#THAT IS RIGHT#") :: GOTO 520 :: IF K=50 THEN 1580 ELSE 1570 1580 CALL SAY("YOUR+CHOICE+ARE+COMPLETE+MEAN+LESS") :: CALL CLEAR :: DISPLAY AT(6,1):NM$&", DU [R EN RIKTIG":"FEGIS" 1590 DISPLAY AT(10,1):"DIN PO[NG [R "&STR$(P)&" OCH DET":"TOG DIG "&STR$(TD)&" MINUTER." 1600 T=P-TD-A*30+1500 :: IF T>2000 THEN 1640 ELSE 1610 1610 RESTORE 1630 1620 READ T$,PO :: IF TPO THEN 1650 ELSE 1670 1660 DATA GODK[ND,2400,HYFSAD,2500,KLART BRA,3000,V[LDIGT BRA,3200,SUVER[N,3600,FANTASTISKT BRA,4000,\x5cVERL[GSET B[ST,4200,SUPERB,10000 1670 DISPLAY AT(15,5):"DET G\x5cR DIG TILL EN "&T$&" TRRORIST !" :: DISPLAY AT(23,20):"é JOAKIM"," S\\DERBERG" 1680 CALL SAY("#TEXAS INSTRUMENTS#+THINK+YOU+ARE+A+VERY+GOOD+PARTNER+AFTER+ALL") 1690 CALL SAY("GOODBYE") :: FOR D=1 TO 2000 :: NEXT D :: CALL CLEAR