Buzzy Bee


In Buzzy Bee you control a small bird which pecks away at the stems of a row of plants which are gradually growing towards the top of the screen. If any of the plants should reach the top a bee will drop down and take the nectar and you have lost the game.

The bird can be moved from left to right by using the Z and X keys and the 'M' key will cause it to peck, although none of the stems can be pecked twice in succession.

    1 REM *** BBC VERISION ***
    2 REM *** BUZZY   BEE ****
   10 VDU 23,224,0,2,34,17,9,5,5,5
   20 VDU 23,225,7,24,32,33,66,66,68,69
   30 VDU 23,226,128,124,226,34,34,66,130,12
   40 VDU 23,227,7,13,25,63,63,31,15,7
   50 VDU 23,228,170,170,170,170,170,170,170,
170
   60 VDU 23,229,240,248,252,254,252,248,240,
224
   70 VDU 23,230,1,62,71,68,68,66,65,48
   80 VDU 23,231,224,24,4,132,66,66,34,162
   90 VDU 23,232,0,64,68,136,144,160,160,160
  100 VDU 23,233,15,31,63,127,63,31,15,7
  110 VDU 23,234,85,85,85,85,85,85,85,85
  120 VDU 23,235,224,176,152,252,252,248,240,
224
  130 VDU 23,236,96,224,224,112,120,60,30,15
  140 VDU 23,237,6,6,7,15,30,60,120,240
  150 VDU 23,238,108,104,75,139,145,73,81,255
  160 VDU 23,239,220,220,72,126,72,28,20,20
  170 VDU 23,240,15,7,3,1,0,0,0,0
  180 VDU 23,241,240,224,192,128,0,0,0,0
  190 DIM a$(4),y(5)
  200 GOSUB 750
  210 hs=0
  220 MODE 1:VDU 23;8202;0;0;0;28,4,27,35,4
  230 GOSUB 680
  240 TIME=0
  250 COLOUR 129:COLOUR 0:PRINT TAB(x1,y1);" 
  ";TAB(x1,y1+1);"   ";TAB(x,y);b$;:COLOUR 3:
PRINT TAB(x,y+1);c$:y1=y:x1=x:COLOUR 128
  260 IF y(t)=4 THEN GOSUB 380
  270 IF INKEY(-67) AND g<31 THEN g=g+2
  280 IF INKEY(-98) AND g>0 THEN g=g-2
  290 PROCover(g1,f1,239):PROCover(g,f,239):f
1=f:g1=g
  300 IF INKEY(-102) THEN GOSUB 620
  310 t=INT(RND(5)+.9):y(t)=y(t)-1:IF y(t)<h2
 AND y(t)>h1 THEN h2=y(t):fl2=t
  320 IF y(t)<h1 THEN h1=y(t):fl1=t
  330 PRINT TAB(t*6-5,y(t));CHR$(236);"   ";C
HR$(237);TAB(t*6-5,y(t)+1);"     ";TAB(t*6-5,
y(t)+2);CHR$(240);"   ";CHR$(241);TAB(t*6-5,y
(t)+3);"     ";TAB(t*6-3,y(t)+1);CHR$(238)
  331 COLOUR 129:PRINT TAB(t*6-4,y(t)+3);"   
":COLOUR 128
  340 IF x<fl1*6-4 THEN b$=a$(3):c$=a$(4):x=x
+1
  350 IF x>fl1*6-4 THEN b$=a$(1):c$=a$(2):x=x
-1
  360 GOTO 250
  370 END
  380 IF x=t*6-4 THEN GOTO 470
  390 IF g=t*6-3 THEN PROCover(g,f,239)
  400 FOR f=4 TO 17
  410   COLOUR 3:PRINT TAB(t*6-5,f);"     ";T
AB(t*6-5,f+1);CHR$(236);"   ";CHR$(237);TAB(t
*6-5,f+2);"     ";TAB(t*6-5,f+3);CHR$(240);" 
  ";CHR$(241):COLOUR 2:COLOUR 129:PRINT TAB(t
*6-4,f+4);"   ";:COLOUR 128:PRINT TAB(t*6-3,f
+2);CHR$(238)
  420   SOUND 1,-15,50+f,1
  430   NEXT f
  440 f=21:y(t)=18:IF t=fl1 THEN fl1=fl2:h1=h
2
  450 IF g=t*6-3 THEN PROCover(g,f,239)
  460 RETURN
  470 IF b$=a$(1) THEN d=x+1
  480 IF b$=a$(3) THEN d=x
  490 time=TIME/100
  500 FOR i=0 TO 3:FOR g=1 TO 10:SOUND 1,-15,
50,1:SOUND 1,-15,125,1
  510     COLOUR 129:COLOUR 0:PRINT TAB(d,i);
MID$(a$(1),2,LEN(a$(1))-2):SOUND 1,-15,175,1:
PRINT TAB(d,i);MID$(a$(3),1,2)
  520     COLOUR 3:COLOUR 128:NEXT g
  530   COLOUR 129:COLOUR 0:PRINT TAB(x,i);" 
  ";:COLOUR 4:PRINT TAB(x,i+1);b$;TAB(x,i+2);
:COLOUR 3:PRINT c$:COLOUR 0:COLOUR 128
  540   NEXT i
  550 FOR f=1 TO 400:NEXT f
  560 MODE 7:VDU 23;8202;0;0;0;:PRINT TAB(0,4
);CHR$(129);"You survived for ";time;" second
s."
  570 IF time>hs THEN hs=time:PRINT ''CHR$(13
1);"Well done! That's the longest recorded  "
;CHR$(131);"time!":GOTO 590
  580 PRINT ''CHR$(133);"The longest recorded
 time stands at"';CHR$(136);hs;CHR$(137);CHR$
(133);"seconds."
  590 PRINT TAB(6,24);CHR$(136);"PRESS ANY KE
Y TO START.";
  600 *FX15,1
  610 IF INKEY$(1000)="" THEN GOTO 610 ELSE G
OTO 220
  620 SOUND 1,-15,240,1:IF g<>3 AND g<>9 AND 
g<>15 AND g<>21 AND g<>27 THEN RETURN
  630 IF g=u*6-3 OR y((g+3)/6)>15 THEN RETURN
  640 u=(g+3)/6:y(u)=y(u)+2
  650 COLOUR 3:PRINT TAB(u*6-5,y(u)-2);"     
";TAB(u*6-5,y(u)-1);"     ";TAB(u*6-5,y(u));C
HR$(236);"   ";CHR$(237);TAB(u*6-5,y(u)+1);" 
    ";TAB(u*6-5,y(u)+2);CHR$(240);"   ";CHR$(
241);
  651 COLOUR 129:PRINT TAB(u*6-4,y(u)+3);"   
":COLOUR 128:COLOUR 2:PRINT TAB(u*6-3,y(u)+1)
;CHR$(238)
  660 IF u=fl1 THEN IF y(u)>h2 THEN h1=h2:fl1
=fl2:fl2=u:h2=y(u)
  670 RETURN
  680 FOR f=1 TO 5:y(f)=18
  690   COLOUR 3:PRINT TAB(f*6-5,y(f));CHR$(2
36);"   ";CHR$(237);TAB(f*6-5,y(f)+1);"     "
;TAB(f*6-5,y(f)+2);CHR$(240);"   ";CHR$(241);
TAB(f*6-3,y(f)+3);"  ";TAB(f*6-3,y(f)+1);CHR$
(238);"   ";TAB(f*6-3,y(f)+1);CHR$(238)
  691   COLOUR 129:PRINT TAB(f*6-4,y(f)+3);" 
  ":COLOUR 128
  700   NEXT f
  710 COLOUR 129:FOR f=0 TO 3:PRINT TAB(0,f);
"                                ":NEXT f:COL
OUR 128:COLOUR 2
  720 y=0:x=15:f=21:g=15:a$(1)=CHR$(224)+CHR$
(225)+CHR$(226):a$(2)=CHR$(227)+CHR$(228)+CHR
$(229):a$(3)=CHR$(230)+CHR$(231)+CHR$(232):a$
(4)=CHR$(233)+CHR$(234)+CHR$(235):b$=a$(1):c$
=a$(2):y1=y:x1=x:f1=f:g1=g
  730 PROCover(g,f,239)
  740 h1=20:h2=20:fl1=2:fl2=4:t=1:u=10:SOUND 
1,-15,100,1:RETURN
  750 MODE7:VDU 23;8202;0;0;0;:PRINT CHR$(141
);CHR$(129);"------------- BUZZY BEE --------
----"'CHR$(141);CHR$(131);"------------- BUZZ
Y BEE ------------"'
  760 PRINT TAB(5);CHR$(130);"@   P A U L   S
 T A N L E Y"
  770 PRINT TAB(0,5);"A giant bee likes necta
r from giant     flowers, but you have to sto
p it becauseyou eat nectar as well!! ";
  780 PRINT "Chop chunks outof the stalks wit
h M (but note that oncea piece has been cut o
ut of one stalk   you must cut the next piece
 out of a    different stalk)."'
  790 PRINT CHR$(134);"     Control you man w
ith:-"''
  800 PRINT TAB(5);CHR$(132);"Z";CHR$(133);".
.....Move left"'
  810 PRINT TAB(5);CHR$(132);"X";CHR$(133);".
.....Move Right"
  820 PRINT TAB(6,24);CHR$136;"PRESS ANY KEY 
TO START.";
  830 IF INKEY$(1000)="" THEN GOTO 830 ELSE R
ETURN
  840 DEFPROCover(A%,B%,C%)
  850 GCOL 3,2:VDU5:MOVE 128+(A%*32),1023-(12
8+(B%*32)):PRINT CHR$(C%);
  860 VDU 4:ENDPROC