Get And Put Game Test

By Cclx33

DIM b(7,10)
GAMEPAD 1
RANDOMIZE TIMER
do
t=t+1
if BUTTON(0,1) then t=1
CLS
IF T MOD 150=1 THEN
FOR X=0 TO 7
die=(b(X,10)>0)
if die then exit
FOR Y=10 TO 0 STEP -1
IF Y=0 THEN b(X,Y)=val(mid$(“04060809111315”,INT(RND*7)*2+1,2)) ELSE b(X,Y)=b(X,Y-1)
NEXT
NEXT
END IF
PX=MAX(MIN(PX+LEFT(0)-RIGHT(0),7),0)
COLOR 1
LINE PX*5,63 TO PX*5+4,63
LINE PX*5+2,63 TO PX*5+2,0
TEXT 61,0,SC,2
IF DIE THEN PRINT “GAME OVER”
IF DIE THEN END
FOR Y=10 TO 0 STEP -1
FOR X=0 TO 7
COLOR b(X,Y)
IF b(X,Y)>0 THEN CIRCLE X*5+2,Y*5+2,2 PAINT
NEXT
NEXT
COLOR bG
IF bG>0 THEN CIRCLE PX*5+2,60,2 PAINT
IF left(0)+right(0)=0 and DOWN(0) AND bg=0 THEN
gosub find0
IF y0>0 THEN swap bg,b(PX,y0-1)
END IF
IF left(0)+right(0)=0 AND UP(0) AND bg>0 THEN
gosub find0
bp=bg
IF y0>=0 THEN swap b(PX,y0),bg
IF y0>=0 THEN GOSUB CHECK
END IF
WAIT 0.12
loop

CHECK:
Nv=0
FOR Y=y0 TO 0 STEP -1
IF b(PX,Y)=bp THEN Nv=Nv+1
IF b(PX,Y)<>bp THEN exit
NEXT
Nh=0
xs=px
FOR X=PX TO 0 STEP -1
IF b(X,y0)=bp THEN Nh=Nh+1
IF b(X,y0)=bp THEN XS=X
IF b(X,y0)<>bp THEN exit
NEXT
FOR X=PX TO 7
IF b(X,y0)=bp THEN Nh=Nh+1
IF b(X,y0)<>bp THEN exit
NEXT
Nh=Nh-1
IF Nv>2 THEN
FOR Y=y0-Nv+1 TO y0
b(PX,Y)=0
NEXT
END IF
IF Nh>2 THEN
FOR X=XS TO XS+Nh-1
b(X,y0)=0
FOR Y=y0+1 TO 11
IF Y=11 THEN b(X,Y-1)=0 else b(X,Y-1)=b(X,Y)
NEXT
NEXT
END IF
if nh>2 and nv>2 then n=nh+nv else if nh>2 then n=nh else if nv>2 then n=nv else n=0
if n>2 then SC=SC+2^(N-2)*3
RETURN

find0:
y0=-1
FOR Y=0 TO 10
IF b(PX,Y)=0 THEN y0=Y
IF y0>=0 THEN exit
NEXT
return

Get LowRes Coder to use this program.

Play homegrown retro games and program your own!