// Eater (c) Stephen Harvey 1993 A_Load("Eater.Abk"); A_ScreenOpen(1,320,30,16,A_Lowres()); A_CursOff(); A_SetPaper(0); A_Cls(0); A_Cline(); A_Centre("Score: 0"); A_ScreenOpen(0,640,400,16,A_Lowres()); A_ScreenDisplay(1,,260); A_WaitVbl(); A_ScreenToFront(1); A_GetSpritePalette(); A_CursOff(); A_FlashOff(); A_HideOn(); A_Cls(0); A_ScreenDisplay(0,,,,200); For ( L=1 ; L<=100; L++ ) { A_Plot(A_Rnd(640),A_Rnd(400)); } A_DoubleBuffer(); Function MOVEHIM() { a_S="B: Pause ; "; a_S=a_S+"Let R1=Joy 1 "; a_S=a_S+"If R1=1 Jump Up ; If R1=2 Jump Down "; a_S=a_S+"If R1=4 Jump Left ; If R1=8 Jump Right "; a_S=a_S+"Jump Back "; a_S=a_S+"D: "; a_S=a_S+"Let Y=Y+2 ; Jump B "; a_S=a_S+"L: "; a_S=a_S+"Let X=X-2 ; Jump B "; a_S=a_S+"U: "; a_S=a_S+"Let Y=Y-2 ; Jump B "; a_S=a_S+"R: Let X=X+2 ; Jump Back "; b_S="B: For R3=1 To 20 ; Next R3 ; "; b_S=b_S+"Let R1=Joy 1 "; b_S=b_S+"If R1=1 Jump Up ; If R1=2 Jump Down "; b_S=b_S+"If R1=4 Jump Left ; If R1=8 Jump Right "; b_S=b_S+"Jump Back "; b_S=b_S+"D: Anim 1,(1,5)(2,5)(3,5)(2,5) "; b_S=b_S+"Jump B "; b_S=b_S+"L: Anim 1,(4,5)(5,5)(6,5)(5,5) "; b_S=b_S+"Jump B "; b_S=b_S+"U: Anim 1,(7,1)(7,1) "; b_S=b_S+"Let A=7 ; Jump B "; b_S=b_S+"R: Anim 1,($8000+4,5)($8000+5,5)($8000+6,5)($8000+5,5) "; b_S=b_S+"Jump Back "; A_Bob(1,160,0,1); A_WaitVbl(); A_ChannelToBob(1 , 1); A_ChannelToBob(2 , 1); A_Amal(1,a_S); A_Amal(2,b_S); } Function KEEP_IN(_BOB,X1,Y1,X2,Y2) { XB=A_XBob(_BOB); YB=A_YBob(_BOB); If ( XBX2 ) XB=X2; If ( YBY2 ) YB=Y2; A_Bob(_BOB,XB,YB); } Function MAN(NUMBER) { a_S="AUtotest"; a_S=a_S+"(If X<10 Jump A ; If X>630 Jump F ; If Y<20 Jump C ; If Y>360 Jump E ; eXit "; a_S=a_S+"A: Let X=10 ; eXit ; F: Let X=630 ; eXit ; C: Let Y=20 ; eXit "; a_S=a_S+"E: Let Y=360 ; eXit ) "; a_S=a_S+"For R1=0 To Z(10)+1 ; Next R1 ; Back: Pause ; Let R0=Z(3) "; a_S=a_S+"If R0=0 Jump D ; If R0=1 Jump L "; a_S=a_S+"If R0=2 Jump U ; If R0=3 Jump R ; Jump Back"; a_S=a_S+"D: Anim 0,(15,5)(14,5)(16,5)(14,5) "; a_S=a_S+"Move 0,50,20 ; Jump B "; a_S=a_S+"L: Anim 0,(8,5)(9,5)(10,5)(9,5) "; a_S=a_S+"Move -50,0,20 ; Jump B "; a_S=a_S+"U: Anim 0,(12,5)(11,5)(13,5)(11,5) "; a_S=a_S+"Move 0,-50,20 ; Jump B "; a_S=a_S+"R: Anim 0,($8000+8,5)($8000+9,5)($8000+10,5)($8000+9,5) "; a_S=a_S+"Move 50,0,20 ; Jump Back "; A_Bob(NUMBER,320,200,15); A_WaitVbl(); A_ChannelToBob(NUMBER+1 , NUMBER); A_Amal(NUMBER+1,a_S); } A_PriorityOn(); MOVEHIM(); NUM=13; For ( L=2 ; L<=NUM+1; L++ ) { MAN(L); } A_AmalOn(); A_SetTimer(0); TIME=61; N=NUM+1; SCORE=0; While (1) { BC=A_BobCol(1); If ( A_Timer()>=50 ) { TIME--; A_Screen(1); A_Locate(,1); A_Cline(); A_Centre("Time left:"+(TIME)); A_Screen(0); A_SetTimer(0); } If ( TIME==0 ) End; If ( BC && A_Fire(1) ) { _COL=A_Col(-1); A_BobOff(_COL); A_AmalOff(_COL+1); A_WaitVbl(); SCORE=SCORE+100; A_Screen(1); A_Locate(,0); A_Cline(); A_Centre("Score:"+(SCORE)); A_Screen(0); A_ScreenOffset(0,A_XBob(1)/2,A_YBob(1)/2); NUM--; } If ( NUM==0 ) End; KEEP_IN(1,20,20,620,380); A_ScreenOffset(0,A_XBob(1)/2,A_YBob(1)/2); A_WaitVbl(); } End;