1000 REM********************************
1010 REM*       PARA LINHA APPLE       *
1020 REM*                              *
1030 REM*     MONSTROS GALACTICOS      *
1040 REM********************************
1050 GOSUB 2110
1060 DIM M(8,8),MX(8),MY(8)
1070 BES=CHR$(7)
1080 HOME
1090 GOTO 1900
1100 REM  ** PLOTA TABELA DE FORMAS **
1110 HCOLOR=3:DRAW SH AT 46+19*X,1+19*Y
1120 RETURN
1130 REM  ** LIMPA TABELA DE FORMAS **
1140 HCOLOR=0:DRAW SH AT 46+19*X,1+19*Y
1150 RETURN
1160 REM  ** MOVIMENTO DO JOGADOR   **
1170 PRINT BE$;
1180 MV=PEEK(-16384)-128
1190 IF MV>0 THEN POKE -16368,0
1200 MX=(MV=ASC("K") AND PX<8)-(MV=ASC("J") AND PX>1)
1210 MY=(MV=ASC("M") AND PY<8)-(MV=ASC("I") AND PY>1)
1220 IF MX<>0 OR MY<>0 THEN SH=1:X=PX:Y=PY:GOSUB 1130
1230 IF M(PX,PY)>0 THEN SH=2:GOSUB 1100
1240 X=PX+MX:Y=PY+MY:SH=1:GOSUB 1100
1250 PX=X:PY=Y
1260 RETURN
1270 REM  ** JOGADOR E APANHADO     **
1280 FOR TI=I TO M(PX,PY)
1290 PRINT BE$+BE$+BE$+BE$+BE$;
1300 NEXT
1310 NF=NF+M(PX,PY)
1320 RETURN
1330 REM  ** MOVIMENTO DO MONSTRO   **
1340 SH=2
1350 FOR MO=1 TO 8
1360 X=MX(MO):Y=MY(MO)
1370 IF INT(RND(1)*10)<NC THEN 1430
1380 REM  ** MOVIMENTO ALEATORIO    **
1390 DI=INT(RND(1)*4)
1400 MX=(DI=0 AND X<8)-(DI=1 AND X>1)
1410 MY=(DI=2 AND Y<8)-(DI=3 AND Y>1)
1420 GOTO 1510
1430 REM  ** MOVIMENTO COMPUTADO    **
1440 IF RND(1)<.5 THEN 1480
1450 MX=SGN(PX-X)
1460 MY=0
1470 IF MX<>0 THEN 1510
1480 MX=0
1490 MY=SGN(PY-Y)
1500 IF MY-0 THEN 1450
1510 REM  ** MOVIMENTO ATUAL        **
1520 M(X,Y)=M(X,Y)-1
1530 IF M(X,Y)=0 THEN GOSUB 1130
1540 IF PX=X AND PY=Y THEN SH=1:GOSUB 1100:SH=2
1550 X=X+MX:Y=Y+MY
1560 M(X,Y)=M(X,Y)+1
1570 GOSUB 1100
1580 MX(MO)=X:MY(MO)=Y
1590 NEXT MO
1600 RETURN
1610 REM ** INICIALIZA **
1620 FOR I=1 TO 47
1630 READ A
1640 POKE 767+I,A
1650 NEXT I
1660 POKE 232,0
1670 POKE 233,3
1680 RETURN
1690 REM ** PREPARA O JOGO **
1700 HGR :ROT=0:SCALE=2:HCOLOR=3
1710 FOR X=63 TO 216 STEP 19
1720 HPLOT X,3 TO X,155
1730 NEXT
1740 FOR Y=3 TO 156 STEP 19
1750 HPLOT 63,Y TO 215,Y
1760 NEXT
1770 FOR X=1 TO 8
1780 FOR Y=1 TO 8
1790 M(X,Y)=0
1800 NEXT Y,X
1810 PX=4:PY=1
1820 X=4:Y=1:SH=1:GOSUB 1100
1830 FOR I=1 TO 8
1840 MX(I)=I:MY(I)=8
1850 X=MX(I):Y=MY(I):SH=2:GOSUB 1100
1860 M(I,8)=1
1870 NEXT
1880 PRINT BE$+BE$+BE$;
1890 RETURN
1900 REM ** PROGRAMA PRINCIPAL **
1910 GOSUB 1610
1920 GOSUB 1690
1930 GOSUB 1160
1940 SC=SC-1
1950 VTAB 22:HTAB 16:PRINT "PONTOS: "SC"   ";
1960 IF M(PX,PY)=0 THEN 2000
1970 GOSUB 1270
1980 IF NF>4 THEN 2080
1990 GOTO 1920
2000 IF PY<8 THEN 2050
2010 NC=NC+1
2020 SC=SC+20*NC-5*NF
2030 VTAB 22:HTAB 16:PRINT "PONTOS: "SC"   ";
2040 GOTO 1920
2050 GOSUB 1330
2060 GOTO 1930
2070 END
2080 TEXT :HOME :VTAB 14:HTAB 20:PRINT "FIM"
2090 END
2100 REM ** INSTRUCOES **
2110 HOME :VTAB 2:HTAB 10:PRINT "MONSTROS GALACTICOS"
2120 PRINT :PRINT "SUA MISSAO E' A DE CONSEGUIR ATRAVESSAR"
2130 PRINT "OS QUADRANTES DO ESPACO SEM COLIDIR COM"
2140 PRINT "OS TEMIVEIS MONSTROS GALACTICOS QUE P0-"
2150 PRINT "VOAM O LOCAL. NADA CONSEGUIRA DETE-LOS,"
2160 PRINT "PARA TANTO VOCE DEVERA APENAS EVITA-LOS"
2170 PRINT "USANDO AS TECLAS:"
2180 PRINT :PRINT :PRINT "              SOBE"
2190 PRINT :PRINT "                I "
2200 PRINT :PRINT "  ESQUERDA    J   K  DIREITA"
2210 PRINT :PRINT "                M"
2220 PRINT :PRINT "              BAIXO"
2230 PRINT :PRINT :PRINT "QUALQUER TECLA PARA CONTINUAR ";
2240 GET A$
2250 RETURN
2260 DATA 2,0,6,0,21,0
2270 REM  ** FORMA DA NAVE **
2280 DATA 64,45,45,125,8,63,63,63,47,40,40,45,79,58,0
2290 REM  ** FORMA DO MONSTRO **
2300 DATA 33,12,15,45,173,34,196,63,239,40,45,79,17
2310 DATA 228,29,63,63,63,18,100,65,15,237,56,5,0

