home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Brotikasten
/
BROTCD01.iso
/
games
/
dis12.d64
/
phaser
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
1995-07-31
|
3KB
|
91 lines
0 FORI=1TO11:GETA$:NEXT:GOSUB 6000
1 GOTO500
10 JV=PEEK(56320):JV=15-(JVAND15)
20 X=X+(JV=4)*8-(JV=8)*8
30 Y=Y+(JV=1)*4-(JV=2)*4
40 HX=INT(X/256):LX=X-256*HX:POKEV+16,HX:POKEV,LX:POKEV+1,Y:F=F-1
50 IFX>=300THENGOTO5000
60 IF F=0 THEN 4000
70 PRINT"[146]FUEL";
71 IF F<100 THEN PRINT" ";
72 IF F<10 THEN PRINT" ";
73 PRINTF
80 PRINT" HIGH";HI;
90 PRINT"[157]SCORE";SC;:RETURN
100 FORA=255TO30STEP-20:B=B+INT(RND(1)*20)-10:IFB<120THENB=120
105 IF B>175 THEN B=175
110 POKEV+2,A:POKEV+3,B:GOSUB10
115 POKEV+4,256-A:POKEV+5,140
120 IF PEEK(V+30)=3 AND X>50 THEN 2999
125 IF PEEK(V+30)=5 AND X>50 THEN 2999
130 IF Y<112 OR Y>174 THEN 2999
140 NEXT
150 B=150
160 GOTO 100
500 GOSUB1000
510 GOSUB1500
520 GOSUB2000
525 Z=PEEK(V+30)
530 GOTO100
1000 V=53248:F=150:X=24:Y=160:SC=0:HI=0:A=0:B=200:S=54272:W=54276:QX=0
1010 L=S:H=S+1:POKES+24,15:RETURN
1500 POKE53280,0:POKE53281,0:PRINT"[147]";SPC(13);" PHASER [158]"
1510 FORI=1TO120:PRINT" ";:NEXT:PRINT"[175][162][185][175][162][185][175][162][175][164][185][162][185][175][185][162][175][164][185][164][175][162][185][164][175][185][162][164][175][162][175][185][175][164][175][185][162][185][175][175]"
1520 PRINT"[183][184][183][184][183][163][184][183][163][183][184][183][183][183][184][184][183][163][183][183][163][184][183][163][183][184][183][163][183][184][183][163][183][184][183][163][184][183][163][183]";
1530 FORI=1TO120:PRINT" ";:NEXT
1540 RETURN
2000 FORN=0TO62:READA:POKE832+N,A:NEXT:FORN=0TO62:READB:POKE896+N,B:NEXT
2010 POKEV+21,7:POKE2040,13:POKE2041,14:POKE2042,14:POKEV+39,1:POKEV+40,2
2011 POKEV+41,2:POKEV+29,7:POKEV+23,1
2014 Z=PEEK(V+30)
2015 RETURN
2020 DATA 0,0,32,0,0,112,255,239,255,127,239,255,3,0,112,1,128,224,0,193
2025 DATA 192,127,255
2030 DATA 224,31,255,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
2040 DATA 0,0,0,0,0,0,0,0,0
2050 DATA 0,0,0,0,224,0,3,248,0,0,70,0,14,238,0,12,178,0,31,187,0,13,158,0
2060 DATA 15,206,0,7,252,0,3,248,0,0,224,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
2070 DATA 0,0,0,0,0,0,0,0,0,0,0,0
2999 POKE54277,1:POKE54278,240:POKEW,129:POKEH,12:POKEL,40:FORP=1TO750:NEXT
3000 FOR I=0 TO 15:POKEV+39,I:POKE5320,I:FORP=1TO50:NEXTP,I:POKEV+21,0
3010 POKE54296,0:PRINT"[147]";SPC(13);"P H A S E R[146]":QX=1:GOSUB 6001:POKE54296,15
3020 PRINT" YOU HAVE FAILED IN YOUR MISSION"
3030 PRINT"[158] THE ENTERPRISE HAS BEEN DESTROYED"
3040 PRINT" YOUR RESIGNATION IS HUMBLY REQUESTED"
3050 PRINTSPC(11);"[154]ENTER Y[146]ES OR N[146]O"
3060 GET A$:IF A$=""THEN 3060
3070 IF A$="N" THEN F=150:X=24:Y=160:SC=0:A=0:B=200:RESTORE:Z=PEEK(V+30):QX=0
3075 IF A$="N"THEN GOTO510
3080 IF A$="Y" THEN PRINT" RESIGNATION GRATEFULLY ACCEPTED":SYS 64738
3090 GOTO 3060
4000 POKEV+21,0:PRINT"[147]";SPC(13);"PHASER[146]"
4010 PRINT"[158] YOU HAVE RUN OUT OF FUEL"
4020 PRINT" THE ENTERPRISE HAS BEEN DESTROYED"
4030 GOTO 3040
5000 POKEV+21,0:PRINT"[147]";SPC(13);" UNIVERSE [146]"
5010 PRINT"";SPC(13);"WELL DONE!!"
5020 FORI=1TO255STEP5:POKEW,17:POKEH,I:POKEL,247:POKEW,0:NEXT:FORI=255TO0STEP-5
5021 POKEW,17:POKEH,I:POKEL,247:POKEW,0:NEXT:POKE54296,15
5025 PRINT SPC(8);"PREPARE FOR NEXT CAVERN":FORI=1 TO 1500:NEXT
5030 SC=SC+F:IF SC>HI THEN HI=SC
5040 FL=FL+1:F=150:F=F-(FL*10)
5045 FORI=1TO10:GET A$:NEXT
5050 QX=0:X=24:Y=160:A=0:B=200:RESTORE:GOTO510
6000 PRINT"[147] DO YOU WANT INSTRUCTIONS (Y/N)?"
6001 FOR F=54272 TO 54296:POKEF,0:NEXT:IF QX=1THENRETURN
6010 GET A$:IF A$=""THEN 6010
6020 IF A$<>"Y"THEN RETURN
6030 POKE53280,0:POKE53281,0:PRINT"[147]";SPC(11);"P H A S E R[158]"
6032 PRINT" THE ENTERPRISE IS TRAPPED IN A SERIES"
6034 PRINT" OF SPACE CAVERNS. CAN YOU FLY THROUGH"
6036 PRINT" THEM AND ESCAPE."
6040 PRINT" GUIDE THE ENTERPRISE THROUGH THE"
6050 PRINT" CAVERNS WITHOUT TOUCHING THE WALLS"
6060 PRINT" OR HITTING THE METEORS"
6070 PRINT"[158]USE A JOYSTICK TO CONTROL THE ENTERPRISE"
6100 PRINT" PRESS FIRE[146] TO START"
6110 JV=PEEK(56320):IFJV<>111THEN 6110
6115 FORI=1TO23:PRINT:FORP=1TO30:NEXT:NEXT
6120 RETURN
3926 REM ** ***