package
{
import flash.display.MovieClip;
import flash.utils.Timer;
import flash.events.TimerEvent;
import flash.ui.Mouse;
import flash.utils.*;
import flash.events.MouseEvent;
public class DuckHunt extends MovieClip
{
public var flock:Array;
public var enemy

uck;
public var CrossHair:crossHair;
public var enemyTimer:Timer
public var myTimer:Timer;
Mouse.hide();
public var duckXSpeed:Number //X Speed of the duck
public var duckYSpeed:Number //Y Speed of the duck
public var speed:Number;
public var newDuck

uck;
public var secondX:Number;
public var secondY:Number;
public function DuckHunt()
{
Mouse.hide();
flock = new Array();
var newDuck = new Duck(100, 313);
flock.push( newDuck );
addChild( newDuck );
secondX = 20;
secondY = 20;
CrossHair = new crossHair();
addChild( CrossHair );
CrossHair.x = mouseX;
CrossHair.y = mouseY;
trace('MyTimer');
myTimer = new Timer ( 1 );
myTimer.addEventListener( TimerEvent.TIMER,moveThings);
myTimer.start();
trace('enemyTimer');
enemyTimer = new Timer(500);
trace ('Event Listener');
enemyTimer.addEventListener(TimerEvent.TIMER, onTick );
enemyTimer.start();
}
public function onTick( timerEvent:TimerEvent ):void
{
if ( Math.random() < 0.2 )
{
var randomX:Number = Math.random() ;
var newDuck

uck = new Duck(randomX, 313);
flock.push( newDuck );
addChild( newDuck );
newDuck.addEventListener(MouseEvent.CLICK, die);
newDuck.addEventListener(MouseEvent.CLICK, remove);
}
}
public function die(evt:MouseEvent):void
{
trace('Die');
var Death = new Die;
addChild(Death);
Death.x=CrossHair.x;
Death.y=CrossHair.y;
if(MouseEvent.CLICK)
{
trace('die');
speedUp()
this.removeChild(flock);
}
}
public function moveThings( timerEvent:TimerEvent ):void
{
Mouse.hide();
CrossHair.x = mouseX;
CrossHair.y = mouseY;
for each ( var enemy

uck in flock )
{
enemy.moveABit();
if (enemy.y<=-18)
{
enemy.bounceEnemy()
}
if (enemy.x>=568)
{
enemy.bounceEnemy()
}
}
}
public function remove(evt:MouseEvent):void
{
speedUp()
}
public function addBackGround()
{
var backGround = new BackGround;
backGround.x = 0;
backGround.y = 0;
trace ('add background');
addChild(backGround);
}
public function speedUp()
{
x = x + secondX;
y = y - secondY;
}
}
}