Still an other new update always for BEYOND GALAXY version 3.5
I have to draw also an arabic city, I hope which will like to you.....
Update beta version 3.6
I tried to do work the explosion effect animation of the ship enemy, but unfortunately
doesn't work very well, I don't understand where I wrong.....
Therefore, I ask your help for do work well this effect animation of the explosions of the ship enemy.
BEYOND GALAXY beta version 3.6
10 REM 20 REM BEYOND GALAXY 30 REM FOR MSX2 MODE4IN1 40 REM PLUS EXTENDED SCROLL64 50 REM GRAPHICS IN VRAM 60 REM by ANDREA GASPARRINI 70 REM (C)2015 MICROBELL 80 REM ** ENTERTAINMENT ** 90 REM 100 REM version 3.5 BETA 110 REM WITH NESTOR BASIC 120 REM PLUS TURBO BASIC! 130 REM 15/12/2014 140 REM thanks KDL 2011 150 REM 160 REM SCRAMBL2.BAS 170 REM 180 KEY1,"SCREEN0"+CHR$(13) 190 COLOR,0,0 200 CLS:WIDTH32:SCREEN,,0 210 DEFUSR9=&HE000 220 DEFINTA-Z:DIMP(15) 230 REM 240 VPOKE&H3FFF,0 250 REM 260 REM 270 REM LOCATE23,1:PRINTCHR$(164)+CHR$(164)+CHR$(164)+CHR$(164)+CHR$(164) 280 REM 290 VPOKE&H1E02,1:VPOKE&H1E06,4:VPOKE&H1E02+8,8:VPOKE&H1E02+12,16:VPOKE&H1E06+12,12 300 REM SCRAMBLE GAME! 310 REM volume 320 P(0)=15:A=USR(67) 330 REM START MAP GFX 340 A=USR9(0) 350 REM 360 VPOKE&H1E02+112,112 370 VPOKE&H1E00+112,20 380 VPOKE&H1E01+112,230 390 VPOKE&H1E02+116,116 400 VPOKE&H1E00+116,30 410 VPOKE&H1E01+116,40 420 CALLTURBOON(P()) 430 DIMT(5):DIMSH(5) 440 DIMXS(5):DIMYS(5) 450 P$="00000000":H$="00030000":B=0:C=0:X=34:Y=44:LV=2:PG=0:A=USR9(PG):SR=0:B1=24:B2=24 460 LOCATE0,0:PRINT"SCORE":LOCATE11,0:PRINT"HI-SCORE":LOCATE23,0:PRINT"STAGE" 470 LOCATE0,1:PRINTP$:LOCATE11,1:PRINT"00030000":LOCATE28,0:PRINTLV 480 P(0)=7:P(1)=0:A=USR(74):REM play music! 490 XS(1)=255:YS(1)=50:XS(2)=255:YS(2)=100 500 XS(3)=255:YS(3)=140:XS(4)=255:YS(4)=80 510 XS(5)=255:YS(5)=120 520 REM SCRAMBLE MOVE 1UP 530 STRIG(0)ON:STRIG(1)ON:STRIG(3)ON 540 ON STRIG GOSUB 990,990,1040,1340 550 J=STICK(0)ORSTICK(1):XX=X:YY=Y 560 IFF4=0THENIF(PEEK(&HFBE0)AND(&H4))=0THENGOSUB1340 570 K$=INKEY$:IFK$=CHR$(27)THENVPOKE&H3FFF,1:GOTO2040 580 IFF1=1THENGOSUB1010 590 IFF4=1THENGOSUB1350 600 IFF4=2THENGOSUB1370 605 IFEP=1THENGOSUB1200 606 IFEP=2THENGOSUB1230 610 IFJ=1THENY=Y-4 620 IFJ=2THENY=Y-4:X=X+4 630 IFJ=3THENX=X+4 640 IFJ=4THENY=Y+4:X=X+4 650 IFJ=5THENY=Y+4 660 IFJ=6THENX=X-4:Y=Y+4 670 IFJ=7THENX=X-4 680 IFJ=8THENY=Y-4:X=X-4 690 IFY<16THENY=YY 700 IFY>172THENY=YY 710 IFX<16THENX=XX 720 IFX>230THENX=XX 730 VPOKE&H1E00,Y:VPOKE&H1E04,Y 740 VPOKE&H1E01,X:VPOKE&H1E05,X 750 VPOKE&H1E00+8,Y:VPOKE&H1E01+8,X 760 VPOKE&H1E00+12,Y-16:VPOKE&H1E04+12,Y-16 770 VPOKE&H1E01+12,X-1:VPOKE&H1E05+12,X-1 775 REM BITS OF SHIP 780 VPOKE&H1E02+24,B1 790 VPOKE&H1E00+24,Y-32 800 VPOKE&H1E01+24,X 810 VPOKE&H1E02+28,B2 820 VPOKE&H1E00+28,Y+16 830 VPOKE&H1E01+28,X 840 TI=TI+1:IFTI>15THENTI=0:B1=B1+4:B2=B2+4:IFB1>36THENB1=24:B2=24 850 T(1)=T(1)+1:IFT(1)>300THENT(1)=0:SH(1)=1 860 T(2)=T(2)+1:IFT(2)>400THENT(2)=0:SH(2)=1 870 T(3)=T(3)+1:IFT(3)>500THENT(3)=0:SH(3)=1 880 T(4)=T(4)+1:IFT(4)>700THENT(4)=0:SH(4)=1 890 T(5)=T(5)+1:IFT(5)>100THENT(5)=0:SH(5)=1 900 IFSH(1)=1THENGOSUB1430:REM SHIP-1 910 IFSH(2)=1THENGOSUB1480:REM SHIP-2 920 IFSH(3)=1THENGOSUB1530:REM SHIP-4 930 IFSH(4)=1THENGOSUB1580:REM SHIP-3 940 IFSH(5)=1THENGOSUB1630:REM SHIP-5 950 IFTIME>6THENTIME=0:A=USR9(SR):SR=SR+1:IFSR=>1280THENSR=0:'SCROLL 960 FORK=0TO100:NEXTK 970 GOTO550 980 REM FIRE! 990 P(0)=9:A=USR(69) 1000 F1=1:XF=X:YF=Y:XF=XF+8:YF=YF-4:STRIG(0)OFF:STRIG(1)OFF:VPOKE&H1E02+20,20:VPOKE&H1E01+20,XF:VPOKE&H1E00+20,YF 1001 REM IFB1=24ANDB2=24THEN1002ELSERETURN 1002 XB=X:YB=Y:XB=XB+0:YB=YB-32:VPOKE&H1E02+120,120:VPOKE&H1E01+120,XB:VPOKE&H1E00+120,YB 1003 XN=X:YN=Y:XN=XN+0:YN=YN+16:VPOKE&H1E02+124,124:VPOKE&H1E01+124,XN:VPOKE&H1E00+124,YN 1010 XF=XF+8:VPOKE&H1E01+20,XF 1015 XB=XB+8:VPOKE&H1E01+120,XB:XB=XB+8:VPOKE&H1E01+120,XB 1016 XN=XN+8:VPOKE&H1E01+124,XN:XN=XN+8:VPOKE&H1E01+124,XN 1020 IFXF>240THENF1=0:STRIG(0)ON:STRIG(1)ON:VPOKE&H1E02+20,4 1025 IFXB>240THENF1=0:STRIG(0)ON:STRIG(1)ON:VPOKE&H1E02+120,4:VPOKE&H1E02+124,4:VPOKE&H1E02+20,4 1030 GOSUB1060:REM COLLIDE FIRE CON SHIPS ENEMY 1040 RETURN 1050 REM COLLIDE FIRE CON SHIPS ENEMY 1060 IFXFXS(1)-16ANDYFYS(1)-16THENSH(1)=0:XS(1)=255:VPOKE&H1E02+92,250:P(0)=10:A=USR(69):F1=0:VPOKE&H1E02+20,4:VPOKE&H1E02+120,4:VPOKE&H1E02+124,0:GOSUB1680:EP=1 1070 IFXFXS(2)-16ANDYFYS(2)-16THENSH(2)=0:XS(2)=255:VPOKE&H1E02+96,250:P(0)=10:A=USR(69):F1=0:VPOKE&H1E02+20,4:VPOKE&H1E02+120,4:VPOKE&H1E02+124,4:GOSUB1680:EP=1 1080 IFXFXS(3)-16ANDYFYS(3)-16THENSH(3)=0:XS(3)=255:VPOKE&H1E02+100,250:P(0)=10:A=USR(69):F1=0:VPOKE&H1E02+20,4:VPOKE&H1E02+120,4:VPOKE&H1E02+124,4:GOSUB1680:EP=1 1090 IFXFXS(4)-16ANDYFYS(4)-16THENSH(4)=0:XS(4)=255:VPOKE&H1E02+104,250:P(0)=10:A=USR(69):F1=0:VPOKE&H1E02+20,4:VPOKE&H1E02+120,4:VPOKE&H1E02+124,4:GOSUB1680:EP=1 1100 IFXFXS(5)-16ANDYFYS(5)-16THENSH(5)=0:XS(5)=255:VPOKE&H1E02+108,250:P(0)=10:A=USR(69):F1=0:VPOKE&H1E02+20,4:VPOKE&H1E02+120,4:VPOKE&H1E02+124,4:GOSUB1680:EP=1 1110 STRIG(0)ON:STRIG(1)ON:RETURN 1120 REM COLLIDE MISSILE CON SHIP ENEMY 1130 IFXMXS(1)-16ANDYMYS(1)-16THENSH(1)=0:XS(1)=255:VPOKE&H1E02+92,250:P(0)=10:A=USR(69):GOSUB1680 1140 IFXMXS(2)-16ANDYMYS(2)-16THENSH(2)=0:XS(2)=255:VPOKE&H1E02+96,250:P(0)=10:A=USR(69):GOSUB1680 1150 IFXMXS(3)-16ANDYMYS(3)-16THENSH(3)=0:XS(3)=255:VPOKE&H1E02+100,250:P(0)=10:A=USR(69):GOSUB1680 1160 IFXMXS(4)-16ANDYMYS(4)-16THENSH(4)=0:XS(4)=255:VPOKE&H1E02+104,250:P(0)=10:A=USR(69):GOSUB1680 1170 IFXMXS(5)-16ANDYMYS(5)-16THENSH(5)=0:XS(5)=255:VPOKE&H1E02+108,250:P(0)=10:A=USR(69):GOSUB1680 1180 STRIG(3)ON:RETURN 1190 REM FX EXPLOSION OBJECT 1200 EX=XF:EY=YF:VPOKE&H1E02+40,40 1220 IFE1=0THENVPOKE&H1E00+40,EY:VPOKE&H1E01+40,EX:EE=EE+1:IFEE>2THENEE=0:E1=1 1230 EL=EL+1 1235 IFE1=1THEN VPOKE&H1E02+52,52:VPOKE&H1E00+52,EY-8:VPOKE&H1E01+52,EX-8:VPOKE&H1E02+56,56:VPOKE&H1E00+56,EY-8:VPOKE&H1E01+56,EX+8:VPOKE&H1E02+60,60:VPOKE&H1E00+60,EY+8:VPOKE&H1E01+60,EX-8:VPOKE&H1E02+64,64:VPOKE&H1E00+64,EY+8:VPOKE&H1E01+64,EX+8 1240 ER=ER+1:IFER>300THENER=0:E1=2:VPOKE&H1E02+52,250:VPOKE&H1E02+56,250:VPOKE&H1E02+60,250:VPOKE&H1E02+64,250:VPOKE&H1E02+40,250 1250 IFE1=2THENVPOKE&H1E02+68,68:VPOKE&H1E00+68,EY-8:VPOKE&H1E01+68,EX-8:VPOKE&H1E02+72,72:VPOKE&H1E00+72,EY-8:VPOKE&H1E01+72,EX+8:VPOKE&H1E02+76,76:VPOKE&H1E00+76,EY+8:VPOKE&H1E01+76,EX-8:VPOKE&H1E02+80,80:VPOKE&H1E00+80,EY+8:VPOKE&H1E01+80,EX+8 1260 ES=ES+1:IFES>300THENES=0:E1=3:VPOKE&H1E02+68,250:VPOKE&H1E02+72,250:VPOKE&H1E02+76,250:VPOKE&H1E02+80,250 1270 IFE1=3THEN VPOKE&H1E02+52,52:VPOKE&H1E00+52,EY-8:VPOKE&H1E01+52,EX-8:VPOKE&H1E02+56,56:VPOKE&H1E00+56,EY-8:VPOKE&H1E01+56,EX+8:VPOKE&H1E02+60,60:VPOKE&H1E00+60,EY+8:VPOKE&H1E01+60,EX-8:VPOKE&H1E02+64,64:VPOKE&H1E00+64,EY+8:VPOKE&H1E01+64,EX+8 1280 ER=ER+1:IFER>300THENER=0:VPOKE&H1E02+52,250:VPOKE&H1E02+56,250:VPOKE&H1E02+60,250:VPOKE&H1E02+64,250 1285 EP=2 1290 IFEL>20THENEL=0:ES=0:E1=0:EP=0:GOTO1300 ELSE RETURN 1300 FORI=&H1E00+40TO&H1E00+80:VPOKEI,250:NEXTI 1310 RETURN 1320 F1=0:VPOKE&H1E02+20,4:STRIG(0)ON:STRIG(1)ON 1330 REM SGANCIO MISSILE 1340 F4=1:XM=X:YM=Y:VPOKE&H1E02+84,84:P(0)=2:A=USR(69):STRIG(3)OFF:RETURN 1350 YM=YM+1:SM=SM+1:VPOKE&H1E00+84,YM:VPOKE&H1E01+84,XM 1360 IFSM>16THENSM=0:F4=2:P(0)=6:A=USR(69):RETURNELSERETURN 1370 IFF4=2THENXM=XM+8:VPOKE&H1E01+84,XM 1380 IFXM>248THENVPOKE&H1E00+84,0:VPOKE&H1E02+84,0:F4=0:STRIG(3)ON 1390 GOSUB1130 1400 RETURN 1410 REM MOVE ENEMY SHIP-1 1420 REM 1430 VPOKE&H1E02+92,92 1440 XS(1)=XS(1)-2 1450 VPOKE&H1E00+92,YS(1):VPOKE&H1E01+92,XS(1) 1460 IFXS(1)<2THENSH(1)=0:XS(1)=255:VPOKE&H1E02+92,250:RETURNELSERETURN 1470 REM MOVE ENEMY SHIP-2 1480 VPOKE&H1E02+96,96 1490 XS(2)=XS(2)-2 1500 VPOKE&H1E00+96,YS(2):VPOKE&H1E01+96,XS(2) 1510 IFXS(2)<2THENSH(2)=0:XS(2)=255:VPOKE&H1E02+96,250:RETURNELSERETURN 1520 REM MOVE ENEMY SHIP-3 1530 VPOKE&H1E02+100,100 1540 XS(3)=XS(3)-2 1550 VPOKE&H1E00+100,YS(3):VPOKE&H1E01+100,XS(3) 1560 IFXS(3)<2THENSH(3)=0:XS(3)=255:VPOKE&H1E02+100,250:RETURNELSERETURN 1570 REM MOVE ENEMY SHIP-4 1580 VPOKE&H1E02+104,104 1590 XS(4)=XS(4)-2 1600 VPOKE&H1E00+104,YS(4):VPOKE&H1E01+104,XS(4) 1610 IFXS(4)<2THENSH(4)=0:XS(4)=255:VPOKE&H1E02+104,250:RETURNELSERETURN 1620 REM MOVE ENEMY SHIP-5 1630 VPOKE&H1E02+108,108 1640 XS(5)=XS(5)-2 1650 VPOKE&H1E00+108,YS(5):VPOKE&H1E01+108,XS(5) 1660 IFXS(5)<2THENSH(5)=0:XS(5)=255:VPOKE&H1E02+108,250:RETURNELSERETURN 1670 REM PRINT SCORE 100 1680 REM SC=SC+1:LOCATE0,1:PRINTSC*100 1690 B=0:C=100:GOSUB 2020:LOCATE0,1:PRINTP$:LOCATE 11,1:PRINTH$ 1700 RETURN 1710 REM P$ e` il tuo punteggio 1720 REM P$="00000250" 1730 REM 1740 REM B$="00004100":GOSUB 1560 1750 REM B,C=tra 0 e 9999 1760 B=0:C=999:GOSUB 2020 1770 REM 1780 RETURN 1790 REM punti 1800 REM P$="00010500" 1810 REM bonus 1820 REM B$="00000100" 1830 REM 1840 D=0:C$=STRING$(8,48) 1850 FOR L=1 TO LEN(P$):A=VAL(MID$(P$,1+8-L,1)):B=VAL(MID$(B$,1+8-L,1)) 1860 C=A+B+D: 1870 IF C=>10 THEN D=1:C=C-10 ELSE D=0 1880 IF C=<-1 THEN C=0 1890 REM 1900 E=C AND C<10 1910 MID$(C$,1+8-L,1)=CHR$(48+E) 1920 NEXT L 1930 REM PRINT P$;"+";B$ 1940 REM 1950 P$=C$ 1960 B=VAL(LEFT$(P$,4)) 1970 C=VAL(LEFT$(H$,4)) 1980 IF B=>C THEN H$=P$ 1990 REM PRINT"Punti:";P$ 2000 RETURN 2010 REM 2020 D$=RIGHT$("0000"+RIGHT$(STR$(B),LEN(STR$(B))-1),4):E$=RIGHT$("0000"+RIGHT$(STR$(C),LEN(STR$(C))-1),4):B$=D$+E$:D$="":E$="":GOTO1840 2030 REM 2040 CALL TURBO OFF 2050 IFVPEEK(&H3FFF)=1THENA=USR(75):END 2060 A=USR(75) 2070 FORS=&H1E00TO&H1E40:VPOKES,0:NEXTS 2080 REM SFX SOUND EXPLOSION 2090 P(0)=8:A=USR(69) 2100 'SR=0:PG=0:A=USR9(PG) 2110 'VPOKE&H1E02,1:VPOKE&H1E06,4:VPOKE&H1E02+8,8:VPOKE&H1E02+12,16:VPOKE&H1E06+12,12 2120 'X=34:Y=44 2130 REM FX EPLOSION 1UP 2140 VPOKE&H1E02+24,24 2150 FORI=16TO0STEP-1 2160 IFE1=0THENVPOKE&H1E00+24,Y:VPOKE&H1E01+24,X:EE=EE+1:IFEE>2THENEE=0:E1=1 2170 IFE1=1THEN VPOKE&H1E02+28,36:VPOKE&H1E00+28,Y-8:VPOKE&H1E01+28,X-8:VPOKE&H1E02+32,40:VPOKE&H1E00+32,Y-8:VPOKE&H1E01+32,X+8:VPOKE&H1E02+36,44:VPOKE&H1E00+36,Y+8:VPOKE&H1E01+36,X-8:VPOKE&H1E02+40,48:VPOKE&H1E00+40,Y+8:VPOKE&H1E01+40,X+8 2180 ER=ER+1:IFER>2THENER=0:E1=2 2190 IFE1=2THENVPOKE&H1E02+28,52:VPOKE&H1E00+28,Y-8:VPOKE&H1E01+28,X-8:VPOKE&H1E02+32,56:VPOKE&H1E00+32,Y-8:VPOKE&H1E01+32,X+8:VPOKE&H1E02+36,60:VPOKE&H1E00+36,Y+8:VPOKE&H1E01+36,X-8:VPOKE&H1E02+40,64:VPOKE&H1E00+40,Y+8:VPOKE&H1E01+40,X+8 2200 ES=ES+1:IFES>2THENES=0:E1=3 2210 IFE1=3THEN VPOKE&H1E02+28,36:VPOKE&H1E00+28,Y-8:VPOKE&H1E01+28,X-8:VPOKE&H1E02+32,40:VPOKE&H1E00+32,Y-8:VPOKE&H1E01+32,X+8:VPOKE&H1E02+36,44:VPOKE&H1E00+36,Y+8:VPOKE&H1E01+36,X-8:VPOKE&H1E02+40,48:VPOKE&H1E00+40,Y+8:VPOKE&H1E01+40,X+8 2220 ER=ER+1:IFER>2THENER=0 2230 REM NEXTELSENEXTI 2240 FORI=&H1E00TO&H1E00+64:VPOKEI,0:NEXTI 2250 SR=0:PG=0:A=USR9(PG) 2260 VPOKE&H1E02,1:VPOKE&H1E06,4:VPOKE&H1E02+8,8:VPOKE&H1E02+12,16:VPOKE&H1E06+12,12 2270 X=34:Y=44 2280 GOTO 350 2290 'P(0)=7:P(1)=0:A=USR(74):' PLAY SKYRIDER.MBM 2300 'p(0)=7:P(1)=3218:A=USR(74):' PLAY GAMEOVER.MBM 2310 'P(0)=7:P(1)=4091:A=USR(74):' PLAY CLEAR .MBM 2320 'P(0)=1:A=USR(69):' PLAY SFX #1
I'm not much use to you, as I can't code/create music... but it keeps better and better. Keep on doing what you're doing!
Hello Dracul Vampire,
Thanks for you congratulations........
I hope in future of finish this my important videogame BEYOND GALAXY for MSX 2.
For now is all.....
Best Regards.
(^_^)
AG.
I hope in future of finish this my important videogame BEYOND GALAXY for MSX 2.
I think you will make it. Despite the language barrier and problems you run into the game seems to make good progress. Keep up the good work.