10 DIM BX(3): DIM BY(3) 20 SC=0:LI=3 30 CLS 40 LX=1:LY=1 50 LOCATE 12,1: PRINT "SCORE:";SC 60 LOCATE 12,3: PRINT "LIVES:";LI 70 RANDOMIZE 80 LOCATE 10,0: PRINT "|" 90 LOCATE 10,1: PRINT "|" 100 LOCATE 10,2: PRINT "|" 110 LOCATE 10,3: PRINT "|" 120 FOR N2=0 TO 3:BX(N2)=10: NEXT N2 130 LOCATE LX,LY: PRINT ">" 140 REM START LOOP 150 FOR N=0 TO 3 160 GOSUB 280 170 IF BX(N)>9 THEN 240 180 LOCATE BX(N),BY(N): PRINT " " 190 BX(N)=BX(N)-1 200 IF BX(N)<0 THEN BX(N)=10: GOTO 240 210 LOCATE BX(N),BY(N): PRINT "-" 220 IF BX(N)=LX AND BY(N)=LY GOTO 520 230 GOTO 260 240 IF RND 0.5>0.21 GOTO 260 250 BX(N)=9:BY(N)=LY: LOCATE BX(N),BY(N): PRINT "-" 260 NEXT N 270 GOTO 140 280 A$=INKEY$ 290 IF A$="2" AND LY<3 THEN GOTO 340 300 IF A$="8" AND LY>0 THEN GOTO 380 310 IF A$="4" AND LX>0 THEN GOTO 420 320 IF A$="6" THEN GOTO 460 330 RETURN 340 LOCATE LX,LY: PRINT " ":LY=LY+1 350 GOSUB 680 360 LOCATE LX,LY: PRINT ">" 370 RETURN 380 LOCATE LX,LY: PRINT " ":LY=LY-1 390 GOSUB 680 400 LOCATE LX,LY: PRINT ">" 410 RETURN 420 LOCATE LX,LY: PRINT " ":LX=LX-1 430 GOSUB 680 440 LOCATE LX,LY: PRINT ">" 450 RETURN 460 REM 470 LOCATE LX,LY: PRINT " ":LX=LX+1 480 IF LX=10 THEN 600 490 GOSUB 680 500 LOCATE LX,LY: PRINT ">" 510 RETURN 520 BEEP 1,50,50 530 BEEP 1,60,50 540 BEEP 1,70,50 550 BEEP 1,80,50 560 IF INKEY$ ="" THEN 560 570 LI=LI-1 580 IF LI>0 GOTO 30 590 CLS : PRINT "GAME OVER!": PRINT "YOUR SCORE:";SC: END 600 BEEP 1,70,50 610 BEEP 1,60,50 620 BEEP 1,50,50 630 BEEP 1,40,50 640 LX=0:SC=SC+100 650 LOCATE 18,1: PRINT SC 660 LOCATE LX,LY: PRINT ">" 670 RETURN 680 FOR N3=0 TO 3 690 IF LX=BX(N3) AND LY=BY(N3) THEN N3=3: NEXT N3: GOTO 520 700 NEXT N3 710 RETURN