'Eater (c) Stephen Harvey 1993 Load "Eater.Abk" Screen Open 1,320,30,16,Lowres Curs Off : Paper 0 : Cls 0 Cline Centre "Score: 0" Screen Open 0,640,400,16,Lowres Screen Display 1,,260,, Wait Vbl Screen To Front 1 Get Sprite Palette Curs Off : Flash Off : Hide On Cls 0 Screen Display 0,,,,200 For L=1 To 100 Plot Rnd(640),Rnd(400) Next Double Buffer Procedure MOVEHIM A$="B: Pause ; " A$=A$+"Let R1=Joy 1 " A$=A$+"If R1=1 Jump Up ; If R1=2 Jump Down " A$=A$+"If R1=4 Jump Left ; If R1=8 Jump Right " A$=A$+"Jump Back " A$=A$+"D: " A$=A$+"Let Y=Y+2 ; Jump B " A$=A$+"L: " A$=A$+"Let X=X-2 ; Jump B " A$=A$+"U: " A$=A$+"Let Y=Y-2 ; Jump B " A$=A$+"R: Let X=X+2 ; Jump Back " B$="B: For R3=1 To 20 ; Next R3 ; " B$=B$+"Let R1=Joy 1 " B$=B$+"If R1=1 Jump Up ; If R1=2 Jump Down " B$=B$+"If R1=4 Jump Left ; If R1=8 Jump Right " B$=B$+"Jump Back " B$=B$+"D: Anim 1,(1,5)(2,5)(3,5)(2,5) " B$=B$+"Jump B " B$=B$+"L: Anim 1,(4,5)(5,5)(6,5)(5,5) " B$=B$+"Jump B " B$=B$+"U: Anim 1,(7,1)(7,1) " B$=B$+"Let A=7 ; Jump B " B$=B$+"R: Anim 1,($8000+4,5)($8000+5,5)($8000+6,5)($8000+5,5) " B$=B$+"Jump Back " Bob 1,160,0,1 Wait Vbl Channel 1 To Bob 1 Channel 2 To Bob 1 Amal 1,A$ Amal 2,B$ End Proc Procedure KEEP_IN[_BOB,X1,Y1,X2,Y2] XB=X Bob(_BOB) YB=Y Bob(_BOB) If XBX2 Then XB=X2 If YBY2 Then YB=Y2 Bob _BOB,XB,YB, End Proc Procedure MAN[NUMBER] A$="AUtotest" A$=A$+"(If X<10 Jump A ; If X>630 Jump F ; If Y<20 Jump C ; If Y>360 Jump E ; eXit " A$=A$+"A: Let X=10 ; eXit ; F: Let X=630 ; eXit ; C: Let Y=20 ; eXit " A$=A$+"E: Let Y=360 ; eXit ) " A$=A$+"For R1=0 To Z(10)+1 ; Next R1 ; Back: Pause ; Let R0=Z(3) " A$=A$+"If R0=0 Jump D ; If R0=1 Jump L " A$=A$+"If R0=2 Jump U ; If R0=3 Jump R ; Jump Back" A$=A$+"D: Anim 0,(15,5)(14,5)(16,5)(14,5) " A$=A$+"Move 0,50,20 ; Jump B " A$=A$+"L: Anim 0,(8,5)(9,5)(10,5)(9,5) " A$=A$+"Move -50,0,20 ; Jump B " A$=A$+"U: Anim 0,(12,5)(11,5)(13,5)(11,5) " A$=A$+"Move 0,-50,20 ; Jump B " A$=A$+"R: Anim 0,($8000+8,5)($8000+9,5)($8000+10,5)($8000+9,5) " A$=A$+"Move 50,0,20 ; Jump Back " Bob NUMBER,320,200,15 Wait Vbl Channel NUMBER+1 To Bob NUMBER Amal NUMBER+1,A$ End Proc Priority On MOVEHIM NUM=13 For L=2 To NUM+1 MAN[L] Next Amal On Timer=0 TIME=61 N=NUM+1 SCORE=0 Do BC=Bob Col(1) If Timer=>50 Dec TIME Screen 1 Locate ,1 Cline Centre "Time left:"+Str$(TIME) Screen 0 Timer=0 End If If TIME=0 Then End If BC and Fire(1) _COL=Col(-1) Bob Off _COL Amal Off _COL+1 Wait Vbl SCORE=SCORE+100 Screen 1 Locate ,0 Cline Centre "Score:"+Str$(SCORE) Screen 0 Screen Offset 0,X Bob(1)/2,Y Bob(1)/2 Dec NUM End If If NUM=0 Then End KEEP_IN[1,20,20,620,380] Screen Offset 0,X Bob(1)/2,Y Bob(1)/2 Wait Vbl Loop End