import java.applet.Applet;

import java.awt.Color;
import java.awt.Component;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.Point;
import java.awt.Rectangle;

import java.awt.image.ImageObserver;
import java.awt.image.MemoryImageSource;
import java.awt.image.PixelGrabber;

import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionListener;

import java.net.URL;
import java.net.MalformedURLException;

public class Vulture
extends      AnimatedSprite
implements   Runnable
{

    /**
     *  This constructor creates an Raster initialized
     *  with the contents of an image.
     */
    public Vulture( Image image, long delay )
    {
		super( image, null );
		
		animation_rule = getAnimationRule( delay );
	}
		
		
    /**
     *  Returns the animation rule
     */
    public AnimationRule
	getAnimationRule( long delay )
    {
		Rectangle     clips[];
		Point         offsets[];
		AnimationRule vulture_animation_rule = new AnimationRule();
		
		clips      = new Rectangle[1];
		offsets    = new Point[1];
		clips[0]   = new Rectangle ( 16, 32, 21, 18 );
		offsets[0] = new Point( 5, 5 );
		vulture_animation_rule.appendClips( clips, delay, offsets );
		
		clips      = new Rectangle[1];
		offsets    = new Point[1];
		clips[0]   = new Rectangle ( 73, 33, 30, 15 );
		offsets[0] = new Point( 1, 5 );
		vulture_animation_rule.appendClips( clips, delay, offsets );
		
		clips      = new Rectangle[1];
		offsets    = new Point[1];
		clips[0]   = new Rectangle ( 39, 34, 31, 13 );
		offsets[0] = new Point( 1, 5 );
		vulture_animation_rule.appendClips( clips, delay, offsets );
		
		clips      = new Rectangle[1];
		offsets    = new Point[1];
		clips[0]   = new Rectangle ( 44, 21, 26, 11 );
		offsets[0] = new Point( 3, 5 );
		vulture_animation_rule.appendClips( clips, delay, offsets );
		
		clips      = new Rectangle[1];
		offsets    = new Point[1];
		clips[0]   = new Rectangle ( 73, 21, 30, 11 );
		offsets[0] = new Point( 1, 5 );
		vulture_animation_rule.appendClips( clips, delay, offsets );
		
		clips      = new Rectangle[1];
		offsets    = new Point[1];
		clips[0]   = new Rectangle ( 11, 21, 31, 11 );
		offsets[0] = new Point( 1, 5 );
		vulture_animation_rule.appendClips( clips, delay, offsets );
		
		clips      = new Rectangle[1];
		offsets    = new Point[1];
		clips[0]   = new Rectangle ( 24, 1, 33, 18 );
		offsets[0] = new Point( 0, 0 );
		vulture_animation_rule.appendClips( clips, delay, offsets );
	
		return vulture_animation_rule;	
	}
}
