Thread:Lumage/@comment-15974427-20141214061144/@comment-15974427-20141215023033

@0

ACLS:CLEAR:PNLTYPE "OFF"

'AmountOfBullets (Sprites)

AB=10

'AmountOfBullets (Graphics)

AM=10

?"← For sprites, → for graphics

@LOOP

IF BUTTON==4 THEN CLS:GOTO @SPRITES

IF BUTTON==8 THEN CLS:GOTO @GRAPHICS

GOTO @LOOP

@SPRITES

T=-1:X=128:Y=32:SPSET 0,194,5,0,0,0:SPANIM 0,2,10:SPOFS 0,X-8,Y-8

FOR SP=1 TO 99:SPSET SP,140,2,0,0,0:SPOFS SP,-16,-16:NEXT

FOR LOOP=0 TO 250:VSYNC 1:T=T+1

IF T==30 THEN GOSUB @XY

IF T==0  THEN X1=X:Y1=Y

IF T==80 THEN X2=X:Y2=Y

IF T>=0  THEN R1=R1+1

IF T>=80 THEN R2=R2+1

IF T>=0  THEN FOR A1=1 TO 96 STEP AB

IF T>=80 THEN FOR A2=1 TO 96 STEP AB

IF T>=0  THEN SPOFS A1,X1-8+(R1*SIN(RAD(A1*3.6))),Y1-8+(R1*COS(RAD(A1*3.6))),1

IF T>=80 THEN SPOFS A2,X2-8+(R2*SIN(RAD(A2*3.6))),Y2-8+(R2*COS(RAD(A2*3.6))),1

NEXT:NEXT:NEXT:GOTO @0

@XY

X=RND(128)+64:Y=RND(48)+16

IF Y1-Y<8 AND Y1-Y>-8 GOTO @XY

IF X1-X<16 AND X1-X>-16 GOTO @XY

SPOFS 0,X-8,Y-8,50

RETURN

@WAVE1

IF X1+(R1*SIN(RAD(A1*3.6)))<-5 THEN RETURN

IF X1+(R1*SIN(RAD(A1*3.6)))>261 THEN RETURN

IF Y1+(R1*COS(RAD(A1*3.6)))<-5 THEN RETURN

IF Y1+(R1*COS(RAD(A1*3.6)))>197 THEN RETURN

GCIRCLE X1+(R1*SIN(RAD(A1*3.6))),Y1+(R1*COS(RAD(A1*3.6))),5,80

GPAINT (X1+1)+(R1*SIN(RAD(A1*3.6))),(Y1+1)+(R1*COS(RAD(A1*3.6))),67

RETURN

@WAVE2

IF X1+(R1*SIN(RAD(A1*3.6)))<-5 THEN RETURN

IF X1+(R1*SIN(RAD(A1*3.6)))>261 THEN RETURN

IF Y1+(R1*COS(RAD(A1*3.6)))<-5 THEN RETURN

IF Y1+(R1*COS(RAD(A1*3.6)))>197 THEN RETURN

GCIRCLE X2+(R2*SIN(RAD(A2*3.6))),Y2+(R2*COS(RAD(A2*3.6))),5,80

GPAINT (X2+1)+(R2*SIN(RAD(A2*3.6))),(Y2+1)+(R2*COS(RAD(A2*3.6))),67

RETURN

@GRAPHICS

T=-1:X=128:Y=32:SPSET 0,194,5,0,0,0:SPANIM 0,2,10:SPOFS 0,X-8,Y-8

FOR LOOP=0 TO 250:VSYNC 1:GCLS:T=T+1

IF T==30 THEN GOSUB @XY

IF T==0  THEN X1=X:Y1=Y

IF T==80 THEN X2=X:Y2=Y

IF T>=0  THEN R1=R1+1

IF T>=80 THEN R2=R2+1

IF T>=0  THEN FOR A1=0 TO 95 STEP AM

IF T>=80 THEN FOR A2=0 TO 95 STEP AM

IF T>=0  THEN GOSUB @WAVE1

IF T>=80 THEN GOSUB @WAVE2

NEXT:NEXT:NEXT:GOTO @0