Frame 1
function goTo() {
getURL ("http://www.MoFunZone.com");
}
stop();
var newMenu = new ContextMenu();
newMenu.hideBuiltInItems();
newMenu.customItems.push(new ContextMenuItem("MoFunZone.com - Play More Games", goTo));
this.menu = newMenu;
Instance of Symbol 38 MovieClip in Frame 1
onClipEvent (enterFrame) {
if (_parent.getBytesLoaded() >= _parent.getBytesTotal()) {
_parent.gotoAndStop("Intro");
} else {
Percentage = (_parent.getBytesLoaded() / _parent.getBytesTotal()) * 100;
gotoAndStop(Math.round(Percentage) + 1);
}
}
Frame 2
stop();
Frame 3
stop();
Instance of Symbol 159 MovieClip "Instructions" in Frame 3
onClipEvent (load) {
PrevColor = new Color(Prev);
NextColor = new Color(Next);
gotoAndStop (1);
_visible = false;
}
onClipEvent (enterFrame) {
if (_currentframe == 1) {
PrevColor.setRGB(8947848);
PrevButton.enabled = false;
} else {
PrevColor.setRGB(3355443);
PrevButton.enabled = true;
}
if (_currentframe == _totalframes) {
NextColor.setRGB(8947848);
NextButton.enabled = false;
} else {
NextColor.setRGB(3355443);
NextButton.enabled = true;
}
}
Frame 4
stop();
Instance of Symbol 168 MovieClip "Background" in Frame 4
onClipEvent (load) {
gotoAndStop (1);
}
Instance of Symbol 182 MovieClip "LevelText" in Frame 4
onClipEvent (load) {
function Update() {
DigitsArray = new Array(0, 0, 0, 0, 0, 0, 0, 0);
TempValue = _parent.Scene.Level;
i = 5;
while (i >= 0) {
TenPow = Math.pow(10, i);
DigitsArray[i] = Math.floor(TempValue / TenPow);
TempValue = TempValue - (DigitsArray[i] * TenPow);
i--;
}
LastDigit = 0;
i = 5;
while (i >= 0) {
if (DigitsArray[i] != 0) {
LastDigit = i;
break;
}
i--;
}
i = 0;
while (i <= LastDigit) {
DigNum = (i + 5) - LastDigit;
eval ("Digit" + DigNum).gotoAndStop(DigitsArray[i] + 1);
i++;
}
i = 0;
while (i <= (4 - LastDigit)) {
eval ("Digit" + i).gotoAndStop(11);
i++;
}
_x = (250 - (((LastDigit * 26) + 165) / 2));
}
Update();
}
Instance of Symbol 740 MovieClip "Scene" in Frame 4
onClipEvent (load) {
function AddFeather(x, y, Scale, Rotation, r, g, b, Blood) {
FreeFeather = 0;
ii = 1;
while (ii <= TotalFeathers) {
if (!eval ("Feather" + ii)._visible) {
FreeFeather = ii;
break;
}
ii++;
}
PermitFeather = true;
if (FreeFeather == 0) {
if (TotalFeathers < 500) {
TotalFeathers++;
FeatherSample.duplicateMovieClip("Feather" + TotalFeathers, this.getNextHighestDepth());
FreeFeather = TotalFeathers;
} else {
PermitFeather = false;
}
}
if (PermitFeather) {
NewFeather = eval ("Feather" + FreeFeather);
NewFeather._x = x;
NewFeather._y = y;
NewFeather._xscale = (NewFeather._yscale = Scale);
NewFeather._rotation = Rotation;
NewFeather.col = new Color(NewFeather);
NewFeather.col.setTransform({ra:0, rb:r, ga:0, gb:g, ba:0, bb:b, aa:100, ab:0});
NewFeather.RotSpeed = 0;
if (Blood) {
NewFeather.gotoAndStop(2);
} else {
NewFeather.gotoAndStop(1);
}
NewFeather._visible = true;
return(FreeFeather);
}
}
function Fire() {
FreeFire = 0;
i = 1;
while (i <= FiresNum) {
if (!eval ("GunFire" + i)._visible) {
FreeFire = i;
break;
}
i++;
}
if (FreeFire == 0) {
FiresNum++;
GunFire1.duplicateMovieClip("GunFire" + FiresNum, this.getNextHighestDepth());
FreeFire = FiresNum;
}
GunFire = eval ("GunFire" + FreeFire);
RoughAngle = (Statue.Body._currentframe - 1) * 11.25;
GunFire._x = RiflePeak.x;
GunFire._y = RiflePeak.y;
GunFire._visible = true;
GunFire._rotation = RoughAngle;
GunFire.gotoAndStop(RifleType);
GunFire.Inside.gotoAndPlay(1);
}
function FireRocket() {
FreeRocket = 0;
i = 1;
while (i <= TotalRockets) {
if (!eval ("Rocket" + i)._visible) {
FreeRocket = i;
break;
}
i++;
}
if (FreeRocket == 0) {
TotalRockets++;
RocketSample.duplicateMovieClip("Rocket" + TotalRockets, this.getNextHighestDepth());
FreeRocket = TotalRockets;
}
NewRocket = eval ("Rocket" + FreeRocket);
RoughAngle = (Statue.Body._currentframe - 1) * 11.25;
NewRocket._x = RiflePeak.x;
NewRocket._y = RiflePeak.y;
NewRocket._visible = true;
NewRocket._rotation = RoughAngle;
NewRocket.XSpeed = RocketSpeed * Math.sin(RifleAngle);
NewRocket.YSpeed = RocketSpeed * Math.cos(RifleAngle);
NewRocket.Exploding = false;
NewRocket.gotoAndStop(1);
}
function CalcAngle(Xfrom, Yfrom, Xto, Yto) {
XDis = Math.abs(Xto - Xfrom);
YDis = Math.abs(Yto - Yfrom);
Angle = Math.atan(YDis / XDis);
if (Xto > Xfrom) {
if (Yto < Yfrom) {
Angle = halfPI - Angle;
} else {
Angle = halfPI + Angle;
}
} else if (Yto > Yfrom) {
Angle = (Math.PI + halfPI) - Angle;
} else {
Angle = (Math.PI + halfPI) + Angle;
}
if (Angle < 0) {
Angle = Angle + (Math.PI*2);
}
return(Angle);
}
function CalcDistance(Xfrom, Yfrom, Xto, Yto) {
xDistance = Math.abs(Xto - Xfrom);
yDistance = Math.abs(Yto - Yfrom);
LineDistance = Math.sqrt(Math.pow(xDistance, 2) + Math.pow(yDistance, 2));
return(LineDistance);
}
function CalculateRiflePeak() {
RiflePeak.x = Rifles[RifleType].PeakX;
RiflePeak.y = Rifles[RifleType].PeakY;
Statue.Body.Gun.localToGlobal(RiflePeak);
this.globalToLocal(RiflePeak);
}
function AddBird(Type, Side, Height) {
FreeBird = 0;
ii = 1;
while (ii <= TotalBirds) {
if (!eval ("Bird" + ii)._visible) {
FreeBird = ii;
break;
}
ii++;
}
if (FreeBird == 0) {
TotalBirds++;
BirdSample.duplicateMovieClip("Bird" + TotalBirds, this.getNextHighestDepth());
FreeBird = TotalBirds;
}
NewBird = eval ("Bird" + FreeBird);
NewBird._rotation = 0;
NewBird.gotoAndStop(Type);
NewBird.Body.gotoAndPlay(1);
NewBird._visible = true;
NewBird.Move = true;
NewBird.Hit = false;
NewBird.Dead = false;
NewBird.Type = Type;
NewBird.SoundControl = new Sound(NewBird);
if ((NewBird.Type == 2) or (NewBird.Type == 6)) {
NewBird.SoundControl.attachSound("Flapping2");
NewBird.SoundFrame = 1;
} else if (NewBird.Type != 4) {
NewBird.SoundControl.attachSound("Flapping2");
if (NewBird.Type == 1) {
NewBird.SoundFrame = 1;
} else {
NewBird.SoundFrame = 4;
}
}
if (Type == 1) {
NewBird.MaxSpeed = 5;
NewBird.MinSpeed = 3;
NewBird.Acceleration = 0.5;
NewBird.Weight = 30;
NewBird.ShitType = 1;
NewBird.ShitScale = 80;
NewBird.ShitWeight = 6;
NewBird.Radius = 20;
NewBird.HitFrame = 10;
NewBird.Health = 10;
NewBird.FeatherColors = new Array({r:179, g:179, b:179}, {r:102, g:102, b:102});
NewBird.DirChangeOdds = 20;
NewBird.SpeedChangeOdds = 20;
NewBird.ShitOdds = 40;
}
if (Type == 2) {
NewBird.MaxSpeed = 7;
NewBird.MinSpeed = 4;
NewBird.Acceleration = 1;
NewBird.Weight = 15;
NewBird.ShitType = 1;
NewBird.ShitScale = 50;
NewBird.ShitWeight = 4;
NewBird.Radius = 10;
NewBird.HitFrame = 6;
NewBird.Health = 5;
NewBird.FeatherColors = new Array({r:135, g:97, b:61}, {r:197, g:197, b:197}, {r:0, g:0, b:0});
NewBird.DirChangeOdds = 40;
NewBird.SpeedChangeOdds = 30;
NewBird.ShitOdds = 30;
}
if (Type == 3) {
NewBird.MaxSpeed = 6;
NewBird.MinSpeed = 3;
NewBird.Acceleration = 0.5;
NewBird.Weight = 50;
NewBird.ShitType = 1;
NewBird.ShitScale = 100;
NewBird.ShitWeight = 8;
NewBird.Radius = 25;
NewBird.HitFrame = 18;
NewBird.Health = 14;
NewBird.FeatherColors = new Array({r:51, g:51, b:51});
NewBird.DirChangeOdds = 30;
NewBird.SpeedChangeOdds = 30;
NewBird.ShitOdds = 20;
}
if (Type == 4) {
NewBird.MaxSpeed = 13;
NewBird.MinSpeed = 7;
NewBird.Acceleration = 1;
NewBird.Weight = 20;
NewBird.ShitType = 1;
NewBird.ShitScale = 60;
NewBird.ShitWeight = 5;
NewBird.Radius = 20;
NewBird.HitFrame = 33;
NewBird.Health = 7;
NewBird.FeatherColors = new Array({r:51, g:51, b:51}, {r:163, g:155, b:141});
NewBird.DirChangeOdds = 5;
NewBird.SpeedChangeOdds = 20;
NewBird.ShitOdds = 10;
NewBird.Inclination = random(3) - 1;
}
if (Type == 5) {
NewBird.MaxSpeed = 6;
NewBird.MinSpeed = 3;
NewBird.Acceleration = 0.3;
NewBird.Weight = 80;
NewBird.ShitType = 1;
NewBird.ShitScale = 120;
NewBird.ShitWeight = 10;
NewBird.Radius = 35;
NewBird.HitFrame = 18;
NewBird.Health = 20;
NewBird.FeatherColors = new Array({r:204, g:199, b:183}, {r:194, g:189, b:173}, {r:214, g:209, b:193}, {r:230, g:230, b:230}, {r:220, g:220, b:220}, {r:105, g:79, b:68}, {r:51, g:51, b:51});
NewBird.DirChangeOdds = 40;
NewBird.SpeedChangeOdds = 40;
NewBird.ShitOdds = 20;
}
if (Type == 6) {
NewBird.MaxSpeed = 8;
NewBird.MinSpeed = 3;
NewBird.Acceleration = 1;
NewBird.Weight = 30;
NewBird.ShitType = 1;
NewBird.ShitScale = 70;
NewBird.ShitWeight = 6;
NewBird.Radius = 20;
NewBird.HitFrame = 6;
NewBird.Health = 10;
NewBird.FeatherColors = new Array({r:224, g:105, b:105}, {r:51, g:51, b:51}, {r:153, g:153, b:153}, {r:204, g:204, b:204});
NewBird.DirChangeOdds = 30;
NewBird.SpeedChangeOdds = 30;
NewBird.ShitOdds = 15;
}
if (Type == 7) {
NewBird.MaxSpeed = 7;
NewBird.MinSpeed = 3;
NewBird.Acceleration = 0.5;
NewBird.Weight = 100;
NewBird.ShitType = 2;
NewBird.ShitScale = 100;
NewBird.ShitWeight = 25;
NewBird.Radius = 50;
NewBird.HitFrame = 18;
NewBird.Health = 40;
NewBird.FeatherColors = new Array({r:230, g:230, b:230}, {r:230, g:230, b:230}, {r:51, g:51, b:51});
NewBird.DirChangeOdds = 0;
NewBird.SpeedChangeOdds = 30;
NewBird.ShitOdds = 15;
}
if (Type == 8) {
NewBird.MaxSpeed = 7;
NewBird.MinSpeed = 3;
NewBird.Acceleration = 0.3;
NewBird.Weight = 90;
NewBird.ShitType = 1;
NewBird.ShitScale = 130;
NewBird.ShitWeight = 15;
NewBird.Radius = 40;
NewBird.HitFrame = 18;
NewBird.Health = 35;
NewBird.FeatherColors = new Array({r:230, g:230, b:230}, {r:230, g:209, b:195}, {r:179, g:150, b:134}, {r:51, g:51, b:51});
NewBird.DirChangeOdds = 30;
NewBird.SpeedChangeOdds = 30;
NewBird.ShitOdds = 15;
}
if (Type == 9) {
NewBird.MaxSpeed = 8;
NewBird.MinSpeed = 3;
NewBird.Acceleration = 0.5;
NewBird.Weight = 110;
NewBird.ShitType = 1;
NewBird.ShitScale = 150;
NewBird.ShitWeight = 17;
NewBird.Radius = 60;
NewBird.HitFrame = 18;
NewBird.Health = 50;
NewBird.FeatherColors = new Array({r:204, g:204, b:204}, {r:82, g:59, b:45}, {r:69, g:50, b:35});
NewBird.DirChangeOdds = 30;
NewBird.SpeedChangeOdds = 30;
NewBird.ShitOdds = 15;
}
if (Type == 10) {
NewBird.MaxSpeed = 6;
NewBird.MinSpeed = 3;
NewBird.Acceleration = 0.1;
NewBird.Weight = 1000;
NewBird.ShitType = 2;
NewBird.ShitScale = 100;
NewBird.ShitWeight = 25;
NewBird.Radius = 150;
NewBird.HitFrame = 18;
NewBird.Health = 200;
NewBird.FeatherColors = new Array({r:204, g:0, b:0}, {r:160, g:0, b:0}, {r:212, g:0, b:0});
NewBird.DirChangeOdds = 30;
NewBird.SpeedChangeOdds = 30;
NewBird.ShitOdds = 10;
}
if (Level > 5) {
NewBird.MinSpeed = NewBird.MinSpeed + Math.round(Math.sqrt(Level * 10) / 8);
NewBird.MaxSpeed = NewBird.MaxSpeed + Math.round(Math.sqrt(Level * 5) / 4);
}
NewBird.Speed = NewBird.MinSpeed + random((NewBird.MaxSpeed - NewBird.MinSpeed) + 1);
if (isNaN(Side)) {
Side = random(2);
}
if (Side == 0) {
NewBird._x = 250 + NewBird.Radius;
NewBird.Direction = Math.PI + halfPI;
} else {
NewBird._x = -250 - NewBird.Radius;
NewBird.Direction = halfPI;
}
if (isNaN(Height)) {
if (NewBird.Type == 9) {
Height = random(100) - 310;
}
if (NewBird.Type == 10) {
Height = random(100) - 290;
}
if (isNaN(Height)) {
Height = random(350) - 310;
}
}
NewBird._y = Height;
NewBird.WentRight = Number.NaN;
NewBird.InWedge = false;
BirdsOnScreen++;
return(FreeBird);
}
function RandomBird() {
B = BirdsPattern[random(BirdsPattern.length)];
return(B);
}
function Shit(Shitter) {
FreeShit = 0;
ii = 1;
while (ii <= TotalShits) {
if (!eval ("Shit" + ii)._visible) {
FreeShit = ii;
break;
}
ii++;
}
if (FreeShit == 0) {
TotalShits++;
ShitSample.duplicateMovieClip("Shit" + TotalShits, this.getNextHighestDepth());
FreeShit = TotalShits;
}
NewShit = eval ("Shit" + FreeShit);
NewShit.Speed = 0;
ShitFrom = {x:ShitPoint[Shitter.Type].x, y:ShitPoint[Shitter.Type].y};
Shitter.localToGlobal(ShitFrom);
this.globalToLocal(ShitFrom);
NewShit.OldX = (NewShit._x = ShitFrom.x);
NewShit.OldY = (NewShit._y = ShitFrom.y);
NewShit.gotoAndStop(Shitter.ShitType);
NewShit.Body.gotoAndStop(1);
NewShit.Scale = Shitter.ShitScale;
NewShit.XSpeed = Shitter.XSpeed;
NewShit.YSpeed = Shitter.YSpeed;
NewShit.Weight = Shitter.ShitWeight;
NewShit.Hit = false;
NewShit._visible = true;
}
function ShootingLine(Angle) {
Result = 0;
B1 = -(1 / Math.tan(Angle));
A1 = SCLocY - (SCLocX * B1);
Targets = new Array();
n = 1;
while (n <= TotalBirds) {
Bird = eval ("Bird" + n);
CorrectHalf = (((Bird._x + Bird.Radius) >= RiflePeak.x) and (Angle <= Math.PI)) or (((Bird._x - Bird.Radius) <= RiflePeak.x) and (Angle >= Math.PI));
if (Bird._visible and CorrectHalf) {
B2 = -(1 / Math.tan(Angle - halfPI));
A2 = Bird._y - (Bird._x * B2);
InterX = (A1 - A2) / (B2 - B1);
InterY = A1 + (B1 * InterX);
if (CalcDistance(Bird._x, Bird._y, InterX, InterY) <= Bird.Radius) {
Targets.push({Bird:n, Distance:CalcDistance(SCLocX, SCLocY, InterX, InterY)});
}
}
n++;
}
if (Targets.length > 1) {
s1 = 0;
while (s1 < (Targets.length - 1)) {
s2 = s1 + 1;
while (s2 < Targets.length) {
if ((s2 != s1) and (Targets[s2].Distance < Targets[s1].Distance)) {
temp = Targets[s1];
Targets[s1] = Targets[s2];
Targets[s2] = temp;
}
s2++;
}
s1++;
}
}
if (Targets.length > 0) {
Xco = Math.sin(Angle);
Yco = Math.cos(Angle);
StoppedBullet = false;
ss = 0;
while (ss < Targets.length) {
Bird = eval ("Bird" + Targets[ss].Bird);
StartDis = Targets[ss].Distance - Bird.Radius;
CurPoint = {x:SCLocX + (StartDis * Xco), y:SCLocY - (StartDis * Yco)};
if ((Bird.Radius <= 20) and ((RifleType == 1) or (RifleType == 4))) {
Result = {Bird:Targets[ss].Bird, x:CurPoint.x, y:CurPoint.y, Xco:Xco, Yco:Yco};
StoppedBullet = true;
} else {
this.localToGlobal(CurPoint);
ii = 0;
while (ii <= (Bird.Radius * 2)) {
if (Bird.hitTest(CurPoint.x, CurPoint.y, true)) {
this.globalToLocal(CurPoint);
Result = {Bird:Targets[ss].Bird, x:CurPoint.x, y:CurPoint.y, Xco:Xco, Yco:Yco};
StoppedBullet = true;
break;
}
CurPoint.x = CurPoint.x + Xco;
CurPoint.y = CurPoint.y - Yco;
ii++;
}
}
if (StoppedBullet) {
break;
}
ss++;
}
}
return(Result);
}
function ChangeGun(GunNum) {
if ((GunNum != RifleType) and Rifles[GunNum].Purchased) {
i = 1;
while (i <= 5) {
ReloadSounds[i].stop();
i++;
}
RifleType = GunNum;
if (Rifles[RifleType].Load > Rifles[RifleType].Amo.val) {
Rifles[RifleType].Load = Rifles[RifleType].Amo.val;
}
_parent.GunIcon.gotoAndStop(RifleType);
_parent.AmoText.Update();
ReloadTime = 0;
if (Rifles[RifleType].Load > 0) {
_parent.GunIcon.Amo._visible = true;
_parent.GunIcon.Reloading._visible = false;
_parent.GunIcon.Amo.gotoAndStop(Rifles[RifleType].Load);
Reloading = false;
} else {
_parent.GunIcon.Amo._visible = false;
PermitFire = false;
if (Rifles[RifleType].Amo.val > 0) {
_parent.GunIcon.Reloading._visible = true;
Reloading = true;
} else {
_parent.GunIcon.Reloading._visible = false;
Reloading = false;
}
}
if ((!Reloading) and (Rifles[RifleType].Amo.val > 0)) {
PermitFire = true;
}
}
}
function Unpause() {
Paused = false;
ib = 1;
while (ib <= _parent.Scene.TotalBirds) {
eval ("Bird" + ib).Body.play();
ib++;
}
_parent.Target._visible = true;
Mouse.hide();
BGSounds[1].start();
SoundPlaying = new Array();
TotalSounds = 0;
}
function BlowFeathers(Bird, CentX, CentY, Strength) {
if (Bird.Type == 10) {
MaxFeathers = Strength * 5;
if (MaxFeathers > 200) {
MaxFeathers = 200;
}
MaxDis = 30 + Math.round(Strength / 2);
} else {
MaxDis = 30 + Math.round(Strength / 5);
MaxFeathers = Strength;
if (MaxFeathers > 50) {
MaxFeaters = 50;
}
}
f = 0;
while (f <= random(MaxFeathers)) {
An = Math.random() * dblPI;
Dis = random(MaxDis);
Scale = Feathers[Bird.Type].MinScale + random(Feathers[Bird.Type].ScaleAmplitude);
XSpeed = Dis * Math.sin(An);
YSpeed = Dis * Math.cos(An);
fx = CentX + XSpeed;
fy = CentY - YSpeed;
Rot = (Rad2Deg * An) - 90;
Ind = random(Bird.FeatherColors.length);
FN = AddFeather(fx, fy, Scale, Rot, Bird.FeatherColors[Ind].r, Bird.FeatherColors[Ind].g, Bird.FeatherColors[Ind].b, Bird.Type == 10);
if (Bird.Type == 10) {
eval ("Feather" + FN).XSpeed = XSpeed;
eval ("Feather" + FN).YSpeed = YSpeed;
}
f++;
}
}
function InitiateLevel() {
i = 1;
while (i <= TotalBirds) {
eval ("Bird" + i)._visible = false;
i++;
}
i = 1;
while (i <= TotalShits) {
eval ("Shit" + i)._visible = false;
i++;
}
i = 1;
while (i <= TotalFeathers) {
eval ("Feather" + i)._visible = false;
i++;
}
i = 1;
while (i <= TotalRockets) {
eval ("Rocket" + i)._visible = false;
i++;
}
i = 1;
while (i <= 5) {
if (Rifles[i].MaxLoad <= Rifles[i].Amo.val) {
Rifles[i].Load = Rifles[i].MaxLoad;
} else {
Rifles[i].Load = Rifles[i].Amo.val;
}
i++;
}
_parent.ShitText.Update();
_parent.AmoText.Update();
_parent.LevelText._visible = true;
_parent.LevelText.Update();
_parent.ShitMeter.gotoAndStop(Math.round(ShitLevel));
if (Rifles[RifleType].Load > 0) {
_parent.GunIcon.Amo._visible = true;
PermitFire = true;
}
_parent.GunIcon.Amo.gotoAndStop(Rifles[RifleType].Load);
ChangeGun(RifleType);
Season = Level % 4;
if (Season == 0) {
Season = 4;
}
_parent.Background.gotoAndStop(Season);
if (Season == 3) {
TColor1.setRGB(0);
TColor2.setRGB(0);
TColor3.setRGB(0);
TColor4.setRGB(0);
} else {
TColor1.setRGB(16777215);
TColor2.setRGB(16777215);
TColor3.setRGB(16777215);
TColor4.setRGB(16777215);
}
LevelTime = 1000 + (200 * (Level - 1));
Timer = 0;
BirdsOnScreen = 0;
KilledBirds = 0;
LevelMoney = 0;
WedgeFlying = false;
if (Level < Difficulty.length) {
MaxBirds = Difficulty[Level].Max;
BirdsPattern = Difficulty[Level].Pattern;
} else {
MaxBirds = Math.round((Seasons[Season].MaxCo * Math.sqrt(Level)) * 3);
BirdsPattern = Seasons[Season].Pattern;
}
}
function NextGun() {
i = 1;
while (i <= 5) {
if ((RifleType + i) <= 5) {
GunToCheck = RifleType + i;
} else {
GunToCheck = (RifleType + i) - 5;
}
if (Rifles[GunToCheck].Purchased and (Rifles[GunToCheck].Amo.val > 0)) {
ChangeGun(GunToCheck);
return;
}
i++;
}
}
function InitiateWedge(Type, MaxLength) {
WedgeStep = 0;
WedgeFlying = true;
Wedge = new Array();
WedgeGap = random(20) + 30;
WedgeLength = random(MaxLength - 2) + 3;
WedgeMiddle = random(30) - 180;
Wedge[0] = {Step:0, y:(WedgeMiddle + 10) - random(20)};
WedgeSide = random(2);
WedgeType = Type;
InitiatedWedgeBirds = 0;
w = 1;
while (w < WedgeLength) {
Wedge.push({Step:((WedgeGap * w) + random(20)) - 10, y:((WedgeMiddle + (w * 30)) + random(20)) - 10});
Wedge.push({Step:((WedgeGap * w) + random(20)) - 10, y:((WedgeMiddle - (w * 30)) + random(20)) - 10});
w++;
}
}
function InitiateStork() {
StorkNum = AddBird(7, random(2), -120 - random(180));
eval ("Bird" + StorkNum).Body.Sack.gotoAndStop(1);
eval ("Bird" + StorkNum).Status = 1;
eval ("Bird" + StorkNum).ShitLine = random(60) - 30;
}
_parent.Score = 0;
Money = 100;
Protection = 0;
ShitLevel = 0;
WedgeFlying = false;
Wedge = new Array();
GlobalSound = new Sound();
TColor1 = new Color(_parent.ShitMeter.Lines);
TColor2 = new Color(_parent.ShitText);
TColor3 = new Color(_parent.AmoText);
TColor4 = new Color(_parent.LevelClock);
SoundPlaying = new Array();
TotalSounds = 0;
CarSound = new Array();
BGSounds = new Array();
i = 1;
while (i <= 15) {
this.createEmptyMovieClip("Dummy" + i, this.getNextHighestDepth());
BGSounds[i] = new Sound(eval ("Dummy" + i));
i++;
}
BGSounds[1].attachSound("Background");
BGSounds[2].attachSound("Car1");
BGSounds[3].attachSound("Car2");
BGSounds[4].attachSound("Car3");
BGSounds[5].attachSound("Horn1");
BGSounds[6].attachSound("Horn2");
BGSounds[7].attachSound("Horn3");
BGSounds[8].attachSound("Birds1");
BGSounds[9].attachSound("Birds2");
BGSounds[10].attachSound("Birds3");
BGSounds[11].attachSound("Birds4");
BGSounds[12].attachSound("Birds5");
BGSounds[13].attachSound("Birds6");
BGSounds[14].attachSound("Birds7");
BGSounds[15].attachSound("Birds8");
BGSounds[1].onSoundComplete = function () {
BGSounds[1].start();
};
BGSounds[1].setVolume(15);
ShotSounds = new Array();
ShotSounds[1] = new Sound(this);
ShotSounds[1].attachSound("Musket");
ShotSounds[2] = new Sound(this);
ShotSounds[2].attachSound("Shotgun1");
ShotSounds[3] = new Sound(this);
ShotSounds[3].attachSound("Shotgun2");
ShotSounds[4] = new Sound(this);
ShotSounds[4].attachSound("SMG");
ShotSounds[5] = new Sound(this);
ShotSounds[5].attachSound("Bazooka");
NoBullet = new Sound();
NoBullet.attachSound("no bullet");
ReloadSounds = new Array();
ReloadSounds[1] = new Sound(Statue);
ReloadSounds[1].attachSound("Reload Musket");
ReloadSounds[2] = new Sound(Statue);
ReloadSounds[2].attachSound("Reload Shotgun1");
ReloadSounds[3] = new Sound(Statue);
ReloadSounds[3].attachSound("Reload Shotgun2");
ReloadSounds[4] = new Sound(Statue);
ReloadSounds[4].attachSound("Reload SMG");
ReloadSounds[5] = new Sound(Statue);
ReloadSounds[5].attachSound("Reload Bazooka");
ShitHit = new Sound();
ShitHit.attachSound("Shit Hit");
LevelTime = 1000;
Timer = 0;
halfPI = (Math.PI/2);
dblPI = (Math.PI*2);
Rad2Deg = 360 / dblPI;
PermitFire = true;
Reloading = false;
ReloadTime = 0;
RocketSpeed = 30;
Gravity = 0.1;
Level = 0;
LevelColor = new Color(_parent.LevelText);
Paused = true;
Difficulty = [Number.NaN, {Max:5, Pattern:[1, 1, 1, 1, 2]}, {Max:5, Pattern:[1, 1, 1, 1, 2, 2, 2, 3]}, {Max:6, Pattern:[1, 1, 2, 2, 3]}, {Max:5, Pattern:[1, 1, 2, 3, 4]}, {Max:7, Pattern:[1, 1, 1, 2, 4]}, {Max:7, Pattern:[1, 1, 2, 3, 3]}, {Max:9, Pattern:[1, 2, 3, 3, 3]}, {Max:7, Pattern:[2, 3, 3, 4]}, {Max:8, Pattern:[1, 1, 2, 3, 4, 5]}, {Max:8, Pattern:[2, 3, 3, 3]}, {Max:11, Pattern:[1, 3, 3, 6]}, {Max:8, Pattern:[3, 4]}, {Max:11, Pattern:[1, 1, 5, 4]}, {Max:10, Pattern:[2, 3, 3]}, {Max:14, Pattern:[3, 6]}, {Max:12, Pattern:[2, 3, 4, 4]}, {Max:15, Pattern:[1, 2, 3, 5, 8, 9]}, {Max:13, Pattern:[2, 3, 3, 9]}];
Seasons = [Number.NaN, {MaxCo:1, Pattern:[1, 2, 4, 5, 9]}, {MaxCo:1, Pattern:[1, 2, 3, 9]}, {MaxCo:1.4, Pattern:[1, 2, 3, 3, 3, 6]}, {MaxCo:0.9, Pattern:[1, 2, 3, 4, 4, 4]}];
BirdsOnScreen = 0;
Rifles = new Array(Number.NaN, {PeakX:0, PeakY:-69, Strength:10, Amo:{val:50}, Load:1, MaxLoad:1, ReloadTime:36, Purchased:true}, {PeakX:0, PeakY:-59, Strength:5, Amo:{val:0}, Load:0, MaxLoad:2, ReloadTime:36, Purchased:false}, {PeakX:0, PeakY:-52, Strength:7, Amo:Object, Load:0, MaxLoad:6, ReloadTime:36, Purchased:false}, {PeakX:0, PeakY:-41, Strength:20, Amo:{val:0}, Load:0, MaxLoad:30, ReloadTime:36, Purchased:false}, {PeakX:0, PeakY:-52, Strength:100, Amo:{val:0}, Load:0, MaxLoad:1, ReloadTime:36, Purchased:false});
Rifles[3].Amo = Rifles[2].Amo;
Feathers = new Array(Number.NaN, {MinScale:20, ScaleAmplitude:70}, {MinScale:10, ScaleAmplitude:50}, {MinScale:30, ScaleAmplitude:80}, {MinScale:15, ScaleAmplitude:60}, {MinScale:40, ScaleAmplitude:90}, {MinScale:15, ScaleAmplitude:60}, {MinScale:50, ScaleAmplitude:100}, {MinScale:40, ScaleAmplitude:100}, {MinScale:60, ScaleAmplitude:100}, {MinScale:10, ScaleAmplitude:40});
BirdScore = new Array(Number.NaN, 10, 15, 20, 25, 30, 15, 100, 50, 120, 500);
RiflePeak = new Object();
RifleType = 1;
ShitPoint = new Array(Number.NaN, {x:-5.3, y:5.8}, {x:-3.6, y:0}, {x:-10, y:7}, {x:0, y:5}, {x:-9, y:9}, {x:-3.8, y:6.7}, {x:35, y:65}, {x:-20, y:13}, {x:-18, y:16}, {x:-79, y:10});
Delay = 0;
SCenterX = 245;
SCenterY = 335;
SCLocX = SCenterX - 250;
SCLocY = SCenterY - 321.9;
VVSpeed = 0;
HVSpeed = 0;
VPos = 0;
HPos = 0;
FiresNum = 1;
TotalBirds = 0;
BirdSample._visible = false;
BirdSample.gotoAndStop(4);
TotalShits = 0;
ShitSample._visible = false;
TotalFeathers = 0;
FeatherSample._visible = false;
TotalRockets = 0;
RocketSample._visible = false;
RocketSample.gotoAndStop(1);
Statue.gotoAndStop(50);
Mouse.hide();
GunFire1._visible = false;
Shooting = false;
var mouseListener = new Object();
mouseListener.onMouseDown = function () {
Shooting = true;
};
mouseListener.onMouseUp = function () {
Shooting = false;
};
Mouse.addListener(mouseListener);
}
onClipEvent (enterFrame) {
if (!Key.isDown(9)) {
TabReleased = true;
}
if (!Paused) {
if (Key.isDown(82)) {
if (((!Reloading) and (Rifles[RifleType].Amo.val > Rifles[RifleType].Load)) and (Rifles[RifleType].Load < Rifles[RifleType].MaxLoad)) {
_parent.GunIcon.Amo._visible = false;
_parent.GunIcon.Reloading._visible = true;
PermitFire = false;
Reloading = true;
}
}
if (Key.isDown(80)) {
_parent.Paused._visible = true;
brd = 1;
while (brd <= TotalBirds) {
eval ("Bird" + brd).Body.stop();
brd++;
}
Paused = true;
_parent.Target._visible = false;
Mouse.show();
}
if (Key.isDown(49)) {
ChangeGun(1);
}
if (Key.isDown(50)) {
ChangeGun(2);
}
if (Key.isDown(51)) {
ChangeGun(3);
}
if (Key.isDown(52)) {
ChangeGun(4);
}
if (Key.isDown(53)) {
ChangeGun(5);
}
if (Key.isDown(9) and TabReleased) {
TabReleased = false;
NextGun();
}
Timer++;
_parent.LevelClock.gotoAndStop(Math.round((Timer / LevelTime) * 200) + 1);
if ((Timer >= LevelTime) and (BirdsOnScreen == 0)) {
Paused = true;
Mouse.show();
_parent.Status._visible = true;
_parent.Status.gotoAndStop(1);
_parent.Status.Text1 = ("LEVEL " + Level) + " COMPLETE!";
_parent.Status.Text2 = ("You have killed " + KilledBirds) + " birds";
_parent.Status.Text3 = "and earned $" + LevelMoney;
}
if (Timer < 100) {
LevelColor.setTransform({ra:100, rb:0, ga:100, gb:0, ba:100, bb:0, aa:100 - Timer, bb:0});
}
if (Timer == 100) {
_parent.LevelText._visible = false;
}
_parent.Target._x = _parent._xmouse;
_parent.Target._y = _parent._ymouse;
RifleAngle = CalcAngle(SCenterX, SCenterY, _root._xmouse, _root._ymouse);
StatueFrame = Math.round((RifleAngle / dblPI) * 32) + 1;
if (StatueFrame > 32) {
StatueFrame = StatueFrame - 32;
}
Statue.Body.gotoAndStop(StatueFrame);
Statue.Body.Gun.gotoAndStop(RifleType);
Statue.Body.Gun.Inside.gotoAndStop(StatueFrame);
if (Reloading) {
if (ReloadTime == 0) {
ReloadSounds[RifleType].start();
}
ReloadTime++;
if (ReloadTime >= Rifles[RifleType].ReloadTime) {
if (Rifles[RifleType].MaxLoad <= Rifles[RifleType].Amo.val) {
Rifles[RifleType].Load = Rifles[RifleType].MaxLoad;
} else {
Rifles[RifleType].Load = Rifles[RifleType].Amo.val;
}
_parent.GunIcon.Amo._visible = true;
_parent.GunIcon.Amo.gotoAndStop(Rifles[RifleType].Load);
_parent.GunIcon.Reloading._visible = false;
PermitFire = true;
ReloadTime = 0;
Reloading = false;
}
}
if (Delay > 0) {
Delay--;
}
if (Shooting and (!PermitFire)) {
NoBullet.start();
Shooting = false;
}
if ((Shooting and PermitFire) and (!((RifleType == 4) and (Delay > 0)))) {
ShotSounds[RifleType].start();
VVSpeed = VVSpeed + (Math.cos(RifleAngle) * 3);
HVSpeed = HVSpeed + (Math.sin(RifleAngle) * 8);
CalculateRiflePeak();
if (RifleType == 5) {
FireRocket();
}
Fire();
ShotArray = new Array();
if ((RifleType == 1) or (RifleType == 4)) {
ShotDown = ShootingLine(RifleAngle);
if (ShotDown != 0) {
ShotArray.push(ShotDown);
}
}
if ((RifleType == 2) or (RifleType == 3)) {
CurAng = RifleAngle - 0.1;
bb = 0;
while (bb < 5) {
if (CurAng < 0) {
CurAng = CurAng + dblPI;
}
if (CurAng >= dblPI) {
CurAng = CurAng - dblPI;
}
ShotDown = ShootingLine(CurAng);
if (ShotDown != 0) {
ShotArray.push(ShotDown);
}
CurAng = CurAng + 0.05;
bb++;
}
}
sb = 0;
while (sb < ShotArray.length) {
Bird = eval ("Bird" + ShotArray[sb].Bird);
Inertion = 1 - (1 / (Bird.Weight / 5));
RawPower = (Rifles[RifleType].Strength * Inertion) * 2;
Bird.XSpeed = Bird.XSpeed + (ShotArray[sb].Xco * RawPower);
Bird.YSpeed = Bird.YSpeed + (ShotArray[sb].Yco * RawPower);
if (Math.abs(Bird.XSpeed) > 20) {
if (Bird.XSpeed > 0) {
Bird.XSpeed = 20;
} else {
Bird.XSpeed = -20;
}
}
if (Math.abs(Bird.YSpeed) > 20) {
if (Bird.YSpeed > 0) {
Bird.YSpeed = 20;
} else {
Bird.YSpeed = -20;
}
}
Bird.Health = Bird.Health - Rifles[RifleType].Strength;
Bird.Hit = true;
BlowFeathers(Bird, ShotArray[sb].x, ShotArray[sb].y, Rifles[RifleType].Strength);
sb++;
}
Rifles[RifleType].Amo.val--;
_parent.AmoText.Update();
Rifles[RifleType].Load--;
if (Rifles[RifleType].Load > 0) {
_parent.GunIcon.Amo.gotoAndStop(Rifles[RifleType].Load);
} else {
_parent.GunIcon.Amo._visible = false;
PermitFire = false;
if (Rifles[RifleType].Amo.val > 0) {
_parent.GunIcon.Reloading._visible = true;
Reloading = true;
}
}
if (RifleType == 4) {
Delay = 2;
} else {
Shooting = false;
}
}
if (VVSpeed != 0) {
VPos = VPos + VVSpeed;
VSCo = VPos * 0.5;
VVSpeed = VVSpeed - VSCo;
VVSpeed = VVSpeed * 0.7;
if ((Math.abs(VPos) < 0.1) and (Math.abs(VVSpeed) < 0.1)) {
VVSpeed = 0;
VVPos = 0;
}
Statue._yscale = 100 - VPos;
Statue._xscale = 100 + VPos;
}
if (HVSpeed != 0) {
HPos = HPos + HVSpeed;
HSCo = HPos * 0.5;
HVSpeed = HVSpeed - HSCo;
HVSpeed = HVSpeed * 0.7;
if ((Math.abs(HPos) < 0.1) and (Math.abs(HVSpeed) < 0.1)) {
HVSpeed = 0;
HVPos = 0;
}
Statue.gotoAndStop(50 - Math.round(HPos));
}
if ((BirdsOnScreen < MaxBirds) and (Timer < LevelTime)) {
if (random(Math.round(BirdsOnScreen / MaxBirds) * 50) == 0) {
AddBird(RandomBird());
}
}
if ((((Level > 9) and (Season == 1)) and (random(Math.round(10000 / Level)) == 0)) or ((Level == 9) and (Timer == 200))) {
InitiateStork();
}
if (((Level > 19) and (random(Math.round(20000 / Level)) == 0)) or ((Level == 19) and (Timer == 200))) {
AddBird(10);
}
if (((((((Season == 2) or (Season == 4)) and (!WedgeFlying)) and (random(Math.round(10000 / Level)) == 0)) and (Level > 6)) or ((Level == 6) and (Timer == 200))) or (((Level == 14) and (Timer == 200)) and (!WedgeFlying))) {
if (Level < 14) {
WB = 5;
}
if ((Level == 14) and (Timer == 200)) {
WB = 8;
}
if ((Level >= 14) and (Timer != 200)) {
if (random(2) == 0) {
WB = 5;
} else {
WB = 8;
}
}
MBN = 3 + Math.round(Level / 10);
if (MBN > 8) {
MBN = 8;
}
InitiateWedge(WB, MBN);
if (Season == 2) {
WedgeSide = 0;
} else {
WedgeSide = 1;
}
}
if (WedgeFlying) {
i = 0;
while (i < Wedge.length) {
if (WedgeStep == Wedge[i].Step) {
BirdNum = AddBird(WedgeType, WedgeSide, Wedge[i].y);
eval ("Bird" + BirdNum).InWedge = true;
eval ("Bird" + BirdNum).Speed = eval ("Bird" + BirdNum).MinSpeed;
InitiatedWedgeBirds++;
if (InitiatedWedgeBirds >= Wedge.length) {
WedgeFlying = false;
}
}
i++;
}
WedgeStep++;
}
BirdsToSound = new Array();
i = 1;
while (i <= TotalBirds) {
if (eval ("Bird" + i)._visible and (eval ("Bird" + i).Type != 4)) {
if (BirdsToSound.length < 2) {
BirdsToSound.push(i);
} else {
ii = 0;
while (ii < BirdsToSound.length) {
if (Math.abs(eval ("Bird" + BirdsToSound[ii])._x) > Math.abs(eval ("Bird" + i)._x)) {
BirdsToSound[ii] = i;
break;
}
ii++;
}
}
}
i++;
}
i = 1;
while (i <= TotalBirds) {
if (eval ("Bird" + i)._visible) {
Bird = eval ("Bird" + i);
HasToSound = false;
ii = 0;
while (ii < BirdsToSound.length) {
if (BirdsToSound[ii] == i) {
HasToSound = true;
break;
}
ii++;
}
if (HasToSound) {
if (Bird.SoundFrame == Bird.Body._currentframe) {
Bird.SoundControl.start(0);
Bird.SoundControl.setPan(Math.round(Bird._x / 2.7));
if (Bird.Type != 10) {
RadCo = Bird.Radius / 20;
} else {
RadCo = 1.2;
}
Bird.SoundControl.setVolume(Math.round((100 - Math.abs(Bird._x / 2.7)) * RadCo));
}
} else {
Bird.SoundControl.stop();
}
Bird.GoRight = Bird.Direction < Math.PI;
if (Bird.GoRight != Bird.WentRight) {
if (Bird.GoRight) {
Bird._xscale = 100;
} else {
Bird._xscale = -100;
}
}
Bird.WentRight = Bird.GoRight;
if (Bird.Dead) {
Bird.YSpeed = Bird.YSpeed - (Gravity * Bird.Weight);
Bird.XSpeed = Bird.XSpeed * 0.8;
Bird._x = Bird._x + Bird.XSpeed;
Bird._y = Bird._y - Bird.YSpeed;
if (Bird._y > 180) {
Bird._visible = false;
BirdsOnScreen--;
}
if (Bird.Type == 4) {
if (Bird._rotation > 0) {
Bird._rotation = Bird._rotation + 10;
} else {
Bird._rotation = Bird._rotation - 10;
}
}
} else if (Bird.Hit) {
if (Bird.Body._currentframe != Bird.HitFrame) {
Bird.Body.gotoAndStop(Bird.HitFrame);
Bird._x = Bird._x + Bird.XSpeed;
Bird._y = Bird._y - Bird.YSpeed;
} else if (Bird.Health > 0) {
Bird.Hit = false;
Bird.Body.gotoAndPlay(1);
} else {
Bird.Dead = true;
Bird.Body.gotoAndPlay(Bird.HitFrame + 1);
_parent.Score = _parent.Score + BirdScore[Bird.Type];
Money = Money + BirdScore[Bird.Type];
LevelMoney = LevelMoney + BirdScore[Bird.Type];
KilledBirds++;
ScoreBoard.Update();
}
} else {
if (Bird.Move) {
Bird.XSpeed = Bird.Speed * Math.sin(Bird.Direction);
Bird.YSpeed = Bird.Speed * Math.cos(Bird.Direction);
Bird._x = Bird._x + Bird.XSpeed;
Bird._y = Bird._y - Bird.YSpeed;
}
if (!Bird.InWedge) {
if (Bird.Type == 4) {
if (random(Bird.DirChangeOdds) == 0) {
Bird.Inclination = random(3) - 1;
}
Bird.Direction = Bird.Direction + (Bird.Inclination * 0.05);
Bird._rotation = Bird.Direction * Rad2Deg;
}
if (Bird.Type == 7) {
if ((Bird.Status == 1) and (Math.abs(Bird.ShitLine - Bird._x) <= (Bird.Speed * 20))) {
Bird.Body.Sack.gotoAndStop(2);
Bird.Status = 2;
}
if ((Bird.Status == 2) and (Bird.Body.Sack.Inside._currentframe == 9)) {
Shit(Bird);
Bird.Status = 3;
}
}
if ((((random(Bird.DirChangeOdds) == 0) and (Bird.Type != 4)) and (Bird.Type != 7)) and (Bird.Type != 10)) {
Bird.Direction = Bird.Direction + (1 - (Math.random() * 2));
}
if (Bird.Direction > dblPI) {
Bird.Direction = Bird.Direction - dblPI;
}
if (Bird.Direction < 0) {
Bird.Direction = Bird.Direction + dblPI;
}
if (random(Bird.SpeedChangeOdds) == 0) {
if (random(2) == 0) {
if (Bird.Speed < Bird.MaxSpeed) {
Bird.Speed = Bird.Speed + Bird.Acceleration;
}
} else if (Bird.Speed > Bird.MinSpeed) {
Bird.Speed = Bird.Speed - Bird.Acceleration;
}
if (Bird.Speed > Bird.MaxSpeed) {
Bird.Speed = Bird.MaxSpeed;
}
if (Bird.Speed < Bird.MinSpeed) {
Bird.Speed = Bird.MinSpeed;
}
}
}
if (((((Bird._x < -100) or (Bird._x > 100)) or (Bird._y < -100)) and (random(Bird.ShitOdds) == 0)) and (Bird.Type != 7)) {
Shit(Bird);
}
if (((((Bird._x > (250 + Bird.Radius)) or (Bird._x < (-250 - Bird.Radius))) or (Bird._y < (-310 - Bird.Radius))) or (Bird._y > (178 + Bird.Radius))) and Bird._visible) {
BirdsOnScreen--;
Bird._visible = false;
}
}
}
i++;
}
i = 1;
while (i <= TotalShits) {
if (eval ("Shit" + i)._visible and (!eval ("Shit" + i).Hit)) {
TheShit = eval ("Shit" + i);
TheShit.YSpeed = TheShit.YSpeed - (Gravity * TheShit.Weight);
TheShit.XSpeed = TheShit.XSpeed * 0.9;
TheShit._y = TheShit._y - TheShit.YSpeed;
TheShit._x = TheShit._x + TheShit.XSpeed;
RelativeScale = Math.abs(TheShit.YSpeed) / 30;
if (RelativeScale > 0.8) {
RelativeScale = 0.8;
}
TheShit._xscale = Math.round(TheShit.Scale - (TheShit.Scale * RelativeScale));
TheShit._yscale = Math.round(TheShit.Scale + (TheShit.Scale * RelativeScale));
if (TheShit._y > 200) {
TheShit._visible = false;
}
if (((((TheShit._x > -100) and (TheShit._x < 100)) and (TheShit._y > -100)) and (TheShit._y < 100)) or ((((TheShit.OldX > -100) and (TheShit.OldX < 100)) and (TheShit.OldY > -100)) and (TheShit.OldY < 100))) {
XFrom = TheShit.OldX;
YFrom = TheShit.OldY;
XTo = TheShit._x;
YTo = TheShit._y;
XDis = XTo - XFrom;
YDis = YTo - YFrom;
XCo = XDis / YDis;
xx = 0;
yy = 0;
while (yy <= YDis) {
CurX = XFrom + (yy * XCo);
CurY = YFrom + yy;
TestPoint = {x:CurX, y:CurY};
this.localToGlobal(TestPoint);
if (Statue.hitTest(TestPoint.x, TestPoint.y, true)) {
TheShit.Hit = true;
TheShit._x = CurX;
TheShit._y = CurY;
TheShit._xscale = (TheShit._yscale = TheShit.Scale);
TheShit.Body.gotoAndPlay(2);
ShitHit.start();
ShitLevel = ShitLevel + (TheShit.Weight * (1 - (Math.sqrt(Protection * 80) / 100)));
if (ShitLevel >= 100) {
Mouse.show();
GlobalSound.stop();
_parent.gotoAndStop("Game Over");
}
Protection = Protection - (TheShit.Weight / 50);
if (Protection < 0) {
Protection = 0;
}
_parent.ShitText.Update();
_parent.ShitMeter.gotoAndStop(Math.round(ShitLevel));
break;
}
yy++;
}
}
TheShit.OldX = TheShit._x;
TheShit.OldY = TheShit._y;
}
i++;
}
i = 1;
while (i <= TotalFeathers) {
if (eval ("Feather" + i)._visible) {
Feather = eval ("Feather" + i);
if (Feather._currentframe == 1) {
Feather.Rot = Feather._rotation;
if (Feather.Rot >= 360) {
Feather.Rot = Feather.Rot - 360;
}
if (Feather.Rot < 0) {
Feather.Rot = Feather.Rot + 360;
}
if (Feather.Rot > 180) {
Feather.RotTendency = 1;
} else {
Feather.RotTendency = -1;
}
Feather.RotSpeed = Feather.RotSpeed + Feather.RotTendency;
if (Feather.RotSpeed > 10) {
Feather.RotSpeed = 10;
}
Feather.Rot = Feather.Rot + Feather.RotSpeed;
Feather._rotation = Feather.Rot;
Feather._x = Feather._x + (-(Feather.RotSpeed / 5));
Feather._y = Feather._y + (Feather._xscale / 50);
} else {
Feather._x = Feather._x + Feather.XSpeed;
Feather._y = Feather._y - Feather.YSpeed;
Feather.XSpeed = Feather.XSpeed * 0.8;
Feather.YSpeed = Feather.YSpeed - (Feather._xscale * Gravity);
}
if (Feather._y > 200) {
Feather._visible = false;
}
}
i++;
}
i = 1;
while (i <= TotalRockets) {
if (eval ("Rocket" + i)._visible and (!eval ("Rocket" + i).Exploding)) {
Rocket = eval ("Rocket" + i);
Rocket._x = Rocket._x + Rocket.XSpeed;
Rocket._y = Rocket._y - Rocket.YSpeed;
ib = 1;
while (ib <= TotalBirds) {
if (((CalcDistance(Rocket._x, Rocket._y, eval ("Bird" + ib)._x, eval ("Bird" + ib)._y) - eval ("Bird" + ib).Radius) < 10) and eval ("Bird" + ib)._visible) {
Rocket.Exploding = true;
Rocket.gotoAndPlay(2);
Rocket._rotation = 0;
}
ib++;
}
if (Rocket.Exploding) {
ib = 1;
while (ib <= TotalBirds) {
Bird = eval ("Bird" + ib);
Dis = CalcDistance(Rocket._x, Rocket._y, Bird._x, Bird._y);
Dis = Dis - Bird.Radius;
if (Dis < 0) {
Dis = 0;
}
if (Dis < 200) {
HitPower = Math.pow(200 - Dis, 2) / 200;
Bird.Health = Bird.Health - HitPower;
Bird.Hit = true;
Inertion = 1 - (1 / (Bird.Weight / 5));
RawPower = (HitPower * Inertion) * 4;
Angle = CalcAngle(Rocket._x, Rocket._y, Bird._x, Bird._y);
Bird.XSpeed = Bird.XSpeed + (RawPower * Math.sin(Angle));
Bird.YSpeed = Bird.YSpeed + (RawPower * Math.cos(Angle));
if (Math.abs(Bird.XSpeed) > 20) {
if (Bird.XSpeed > 0) {
Bird.XSpeed = 20;
} else {
Bird.XSpeed = -20;
}
}
if (Math.abs(Bird.YSpeed) > 20) {
if (Bird.YSpeed > 0) {
Bird.YSpeed = 20;
} else {
Bird.YSpeed = -20;
}
}
BlowFeathers(Bird, Bird._x, Bird._y, Math.round(HitPower));
}
ib++;
}
}
if (((((Rocket._y < -310) or (Rocket._y > 178)) or (Rocket._x < -250)) or (Rocket._x > 250)) and (!Rocket.Exploding)) {
Rocket._visible = false;
}
}
i++;
}
BGVolume = BGSounds[1].getVolume();
if (random(50) == 0) {
BGVolume = BGVolume + (random(3) - 1);
if (BGVolume < 10) {
BGVolume = 10;
}
if (BGVolume > 20) {
BGVolume = 20;
}
BGSounds[1].setVolume(BGVolume);
}
if ((Season == 1) or (Season == 4)) {
SoundsLoop = 15;
} else {
SoundsLoop = 7;
}
i = 2;
while (i <= SoundsLoop) {
if (SoundPlaying[i] and (BGSounds[i].position >= BGSounds[i].duration)) {
BGSounds[i].stop();
SoundPlaying[i] = false;
TotalSounds--;
}
if (((random(200) == 0) and (!SoundPlaying[i])) and (TotalSounds < 2)) {
if ((i == 2) or (i == 3)) {
BGSounds[i].start(0, 5);
TotalDuration = BGSounds[i].duration * 5;
} else {
BGSounds[i].start(0);
TotalDuration = BGSounds[i].duration;
}
BGSounds[i].setPan(random(200) - 100);
if (i < 5) {
MaxVolume = 50 + random(100);
Middle = TotalDuration / 86;
CarSound[i - 2] = {Direction:random(2), Limit:Middle, CurVolume:0, Counter:0};
CarSound[i - 2].VolumeCo = MaxVolume / Middle;
CarSound[i - 2].PanCo = 100 / Middle;
if (CarSound[i - 2].Direction == 0) {
CarSound[i - 2].CurPan = -100;
} else {
CarSound[i - 2].CurPan = 100;
}
}
if (i == 5) {
BGSounds[i].setVolume(random(20));
}
if ((i > 5) and (i < 8)) {
BGSounds[i].setVolume(random(30));
}
if (i > 7) {
BGSounds[i].setVolume(random(100) + 100);
}
SoundPlaying[i] = true;
TotalSounds++;
}
if ((i < 5) and SoundPlaying[i]) {
if (CarSound[i - 2].Counter < CarSound[i - 2].Limit) {
CarSound[i - 2].CurVolume = CarSound[i - 2].CurVolume + CarSound[i - 2].VolumeCo;
} else {
CarSound[i - 2].CurVolume = CarSound[i - 2].CurVolume - CarSound[i - 2].VolumeCo;
}
if (CarSound[i - 2].Direction == 0) {
CarSound[i - 2].CurPan = CarSound[i - 2].CurPan + CarSound[i - 2].PanCo;
} else {
CarSound[i - 2].CurPan = CarSound[i - 2].CurPan - CarSound[i - 2].PanCo;
}
BGSounds[i].setVolume(Math.round(CarSound[i - 2].CurVolume));
BGSounds[i].setPan(Math.round(CarSound[i - 2].CurPan));
CarSound[i - 2].Counter++;
}
i++;
}
} else {
GlobalSound.stop();
}
}
Instance of Symbol 742 MovieClip "ShitText" in Frame 4
onClipEvent (load) {
function Update() {
DigitsArray = new Array(0, 0, 0, 0, 0, 0, 0, 0);
TempValue = Math.ceil(_parent.Scene.Protection);
i = 5;
while (i >= 0) {
TenPow = Math.pow(10, i);
DigitsArray[i] = Math.floor(TempValue / TenPow);
TempValue = TempValue - (DigitsArray[i] * TenPow);
i--;
}
LastDigit = 0;
i = 5;
while (i >= 0) {
if (DigitsArray[i] != 0) {
LastDigit = i;
break;
}
i--;
}
i = 0;
while (i <= LastDigit) {
DigNum = (i + 5) - LastDigit;
eval ("Digit" + DigNum).gotoAndStop(DigitsArray[i] + 1);
i++;
}
i = 0;
while (i <= (4 - LastDigit)) {
eval ("Digit" + i).gotoAndStop(11);
i++;
}
_x = (31.5 - (((LastDigit * 7) + 45) / 2));
}
Update();
}
Instance of Symbol 746 MovieClip "AmoText" in Frame 4
onClipEvent (load) {
function Update() {
DigitsArray = new Array(0, 0, 0, 0, 0, 0, 0, 0);
TempValue = _parent.Scene.Rifles[_parent.Scene.RifleType].Amo.val;
i = 5;
while (i >= 0) {
TenPow = Math.pow(10, i);
DigitsArray[i] = Math.floor(TempValue / TenPow);
TempValue = TempValue - (DigitsArray[i] * TenPow);
i--;
}
LastDigit = 0;
i = 5;
while (i >= 0) {
if (DigitsArray[i] != 0) {
LastDigit = i;
break;
}
i--;
}
i = 0;
while (i <= LastDigit) {
DigNum = (i + 5) - LastDigit;
eval ("Digit" + DigNum).gotoAndStop(DigitsArray[i] + 1);
i++;
}
i = 0;
while (i <= (4 - LastDigit)) {
eval ("Digit" + i).gotoAndStop(11);
i++;
}
_x = (461.6 - (((LastDigit * 7) + 20) / 2));
}
Update();
}
Instance of Symbol 823 MovieClip "GunIcon" in Frame 4
onClipEvent (load) {
gotoAndStop(_parent.Scene.RifleType);
Amo.gotoAndStop(_parent.Scene.Rifles[_parent.Scene.RifleType].Load);
}
onClipEvent (enterFrame) {
if (_parent.Scene.PermitFire) {
Status.gotoAndStop(1);
} else {
Status.gotoAndStop(2);
}
}
Instance of Symbol 913 MovieClip "Menu" in Frame 4
onClipEvent (load) {
function Update() {
ExtraWindow._visible = false;
ShitMeter.Update();
MaxCleanLevel = _parent.Scene.ShitLevel;
SetCleanToMax();
UpdateMoney();
DirtIndicator.gotoAndStop(Math.round(_parent.Scene.ShitLevel / 10) + 1);
UpdateWeapons();
ButtonsSwitch(true);
DefenseText = "Defense: " + Math.ceil(_parent.Scene.Protection);
}
function SetCleanToMax() {
CleanLevel = MaxCleanLevel;
CleanMask.Update();
CleanSlider.SetValue(MaxCleanLevel);
UpdateCleanText();
}
function UpdateMoney() {
MoneyText = "$" + _parent.Scene.Money;
MaxMoneyClean = _parent.Scene.Money / CPCU;
if (MaxCleanLevel > MaxMoneyClean) {
MaxCleanLevel = MaxMoneyClean;
}
if (CleanLevel > MaxCleanLevel) {
SetCleanToMax();
}
UpdateWeapons();
}
function UpdateCleanText() {
CleanCost = Math.round(CleanLevel * CPCU);
if ((CleanCost < 1) and (CleanLevel > 0)) {
CleanCost = 1;
}
if (CleanCost > _parent.Scene.Money) {
CleanCost = _parent.Scene.Money;
}
if (CleanLevel == _parent.Scene.ShitLevel) {
PercentageText = "All";
} else {
PercentageText = Math.round(CleanLevel) + "%";
}
CleanText = (("Clean " + PercentageText) + " - Cost: $") + CleanCost;
if (_parent.Scene.ShitLevel == 0) {
CleanText = "You're Clean";
}
}
function UpdateWeapons() {
i = 1;
while (i <= 5) {
eval ("GunStatus" + i).PriceText = "Price: $" + GunPrice[i];
eval ("GunStatus" + i).AmoText = "Ammo: " + _parent.Scene.Rifles[i].Amo.val;
if (_parent.Scene.Rifles[i].Purchased) {
eval ("Gun" + i).gotoAndStop(1);
eval ("GunStatus" + i).gotoAndStop(3);
} else {
eval ("Gun" + i).gotoAndStop(2);
if (_parent.Scene.Money >= GunPrice[i]) {
eval ("GunStatus" + i).gotoAndStop(1);
} else {
eval ("GunStatus" + i).gotoAndStop(2);
}
}
i++;
}
if ((_parent.Scene.Rifles[2].Purchased and _parent.Scene.Rifles[3].Purchased) and (!Scope._visible)) {
Scope._visible = true;
GunStatus3._visible = false;
GunStatus2._y = -104;
}
}
function ButtonsSwitch(On) {
i = 1;
while (i <= 5) {
eval ("GunStatus" + i).TheButton.enabled = On;
i++;
}
PlayButton.enabled = On;
CleanButton.enabled = On;
DefenseButton.enabled = On;
LeftSlideButton.enabled = On;
RightSlideButton.enabled = On;
}
function OpenExtraWindow(frame) {
ExtraWindow.AmoForGun = frame;
if (frame >= 3) {
frame = frame - 1;
}
ExtraWindow._visible = true;
ExtraWindow.Item.gotoAndStop(frame);
ButtonsSwitch(false);
ExtraWindow.Amount = 0;
ExtraWindow.Cost = 0;
ExtraWindow.CostText = "Cost: $0";
ExtraWindow.PPU = AmoPrice[frame];
ExtraWindow.MaxAmount = 9999999999;
if (frame == 5) {
ExtraWindow.MaxAmount = 100 - Math.ceil(_parent.Scene.Protection);
}
if ((_parent.Scene.Money / ExtraWindow.PPU) < ExtraWindow.MaxAmount) {
ExtraWindow.MaxAmount = Math.floor(_parent.Scene.Money / ExtraWindow.PPU);
}
}
function SetAmoAmount(Val) {
if (Val > ExtraWindow.MaxAmount) {
Val = ExtraWindow.MaxAmount;
}
if (Val < 0) {
Val = 0;
}
ExtraWindow.Amount = Val;
ExtraWindow.Cost = Val * ExtraWindow.PPU;
ExtraWindow.CostText = "Cost: $" + ExtraWindow.Cost;
}
CPCU = 3;
GunPrice = [Number.NaN, 0, 150, 500, 1500, 5000];
AmoPrice = [Number.NaN, 1, 4, 3, 50, 100];
Mouse.show();
Update();
}
Instance of Symbol 922 MovieClip "Paused" in Frame 4
onClipEvent (load) {
_visible = false;
}
Instance of Symbol 931 MovieClip "Status" in Frame 4
onClipEvent (load) {
_visible = false;
}
Symbol 39 Button
on (press) {
getURL ("http://www.mofunzone.com", "_blank");
}
Symbol 53 MovieClip Frame 33
stop();
Symbol 60 Button
on (press) {
gotoAndStop ("Start");
}
Symbol 64 Button
on (press) {
gotoAndStop ("Game");
}
Symbol 65 Button
on (press) {
getURL ("http://www.mofunzone.com", "_blank");
}
Symbol 66 Button
on (press) {
Button1.enabled = false;
Button2.enabled = false;
Button3.enabled = false;
Button4.enabled = false;
Instructions._visible = true;
Instructions.CameFrom = 2;
}
Symbol 67 Button
on (press) {
getURL ("http://www.mofunzone.com/game_scores/damn_birds/highscores.shtml", "_blank");
}
Symbol 75 Button
on (press) {
getURL ("http://www.mofunzone.com", "_blank");
}
Symbol 83 Button
on (press) {
prevFrame();
}
Symbol 84 Button
on (press) {
nextFrame();
}
Symbol 85 Button
on (press) {
_visible = false;
if (CameFrom == 1) {
_parent.Paused._visible = true;
}
if (CameFrom == 2) {
_parent.Button1.enabled = true;
}
_parent.Button2.enabled = true;
_parent.Button3.enabled = true;
_parent.Button4.enabled = true;
}
Symbol 114 Button
on (press) {
StartSliding();
}
on (release, releaseOutside) {
EndSliding();
}
Symbol 121 MovieClip Frame 1
stop();
Symbol 124 Button
on (press) {
SlideUp = true;
CleanSlider.Sliding = true;
}
on (release) {
SlideUp = false;
CleanSlider.Sliding = false;
}
Symbol 125 Button
on (press) {
SlideDown = true;
CleanSlider.Sliding = true;
}
on (release) {
SlideDown = false;
CleanSlider.Sliding = false;
}
Symbol 139 Button
on (press) {
_parent.SetAmoAmount(Amount + 1);
}
Symbol 140 Button
on (press) {
_parent.SetAmoAmount(Amount + 10);
}
Symbol 141 Button
on (press) {
_parent.SetAmoAmount(Amount - 1);
}
Symbol 142 Button
on (press) {
_parent.SetAmoAmount(Amount - 10);
}
Symbol 143 Button
on (press) {
_parent.SetAmoAmount(Amount + 100);
}
Symbol 144 Button
on (press) {
_parent.SetAmoAmount(0);
}
Symbol 145 Button
on (press) {
_parent.SetAmoAmount(MaxAmount);
}
Symbol 146 Button
on (press) {
_parent.SetAmoAmount(Amount - 100);
}
Symbol 159 MovieClip Frame 3
LeftSlideButton.enabled = false;
RightSlideButton.enabled = false;
Instance of Symbol 121 MovieClip "ShitMeter" in Symbol 159 MovieClip Frame 3
onClipEvent (load) {
gotoAndStop (66);
}
Instance of Symbol 128 MovieClip "CleanMask" in Symbol 159 MovieClip Frame 3
onClipEvent (load) {
gotoAndStop (33);
}
Symbol 159 MovieClip Frame 4
Button1.enabled = false;
Button2.enabled = false;
Button3.enabled = false;
Button4.enabled = false;
Button5.enabled = false;
Button6.enabled = false;
Button7.enabled = false;
Button8.enabled = false;
Symbol 421 MovieClip Frame 27
_parent._visible = false;
stop();
Symbol 424 MovieClip Frame 27
_parent._visible = false;
stop();
Symbol 425 MovieClip Frame 2
_parent._visible = false;
stop();
Symbol 426 MovieClip Frame 2
_parent._visible = false;
stop();
Symbol 427 MovieClip Frame 26
_parent._visible = false;
stop();
Symbol 446 MovieClip Frame 9
gotoAndPlay (1);
Symbol 446 MovieClip Frame 16
gotoAndPlay (14);
Symbol 457 MovieClip Frame 5
gotoAndPlay (1);
Symbol 457 MovieClip Frame 9
gotoAndPlay (7);
Symbol 486 MovieClip Frame 17
gotoAndPlay (1);
Symbol 486 MovieClip Frame 28
gotoAndPlay (26);
Symbol 493 MovieClip Frame 32
gotoAndPlay (1);
Symbol 493 MovieClip Frame 36
gotoAndPlay (34);
Symbol 519 MovieClip Frame 17
gotoAndPlay (1);
Symbol 519 MovieClip Frame 25
gotoAndPlay (23);
Symbol 535 MovieClip Frame 5
gotoAndPlay (1);
Symbol 535 MovieClip Frame 12
gotoAndPlay (10);
Symbol 564 MovieClip Frame 24
gotoAndPlay (16);
Symbol 565 MovieClip Frame 2
stop();
Symbol 592 MovieClip Frame 17
gotoAndPlay (1);
Symbol 592 MovieClip Frame 28
gotoAndPlay (26);
Symbol 621 MovieClip Frame 17
gotoAndPlay (1);
Symbol 621 MovieClip Frame 28
gotoAndPlay (26);
Symbol 653 MovieClip Frame 17
gotoAndPlay (1);
Symbol 653 MovieClip Frame 28
gotoAndPlay (26);
Symbol 671 MovieClip Frame 17
gotoAndPlay (1);
Symbol 671 MovieClip Frame 21
gotoAndPlay (19);
Symbol 682 MovieClip Frame 10
_parent._visible = false;
stop();
Symbol 684 MovieClip Frame 10
_parent._visible = false;
stop();
Symbol 739 MovieClip Frame 32
_visible = false;
stop();
Instance of Symbol 428 MovieClip "GunFire1" in Symbol 740 MovieClip Frame 1
onClipEvent (load) {
stop();
Inside.gotoAndStop(Inside._totalframes);
}
Instance of Symbol 704 MovieClip "ScoreBoard" in Symbol 740 MovieClip Frame 1
onClipEvent (load) {
function Update() {
DigitsArray = new Array(0, 0, 0, 0, 0, 0, 0, 0);
TempScore = _parent._parent.Score;
i = 7;
while (i >= 0) {
TenPow = Math.pow(10, i);
DigitsArray[i] = Math.floor(TempScore / TenPow);
TempScore = TempScore - (DigitsArray[i] * TenPow);
i--;
}
LastDigit = 0;
i = 7;
while (i >= 0) {
if (DigitsArray[i] != 0) {
LastDigit = i;
break;
}
i--;
}
i = 0;
while (i <= LastDigit) {
eval ("Digits.Digit" + i).gotoAndStop(DigitsArray[i] + 1);
i++;
}
i = LastDigit + 1;
while (i <= 7) {
eval ("Digits.Digit" + i).gotoAndStop(11);
i++;
}
Digits._x = -((7 - LastDigit) * 3);
}
Gold.setMask(Digits);
Update();
}
Instance of Symbol 756 MovieClip "Reloading" in Symbol 823 MovieClip Frame 1
onClipEvent (load) {
_visible = false;
}
Symbol 861 Button
on (press) {
_parent.Scene.Unpause();
_parent.Scene.Shooting = false;
_parent.Scene.Level++;
_parent.Scene.InitiateLevel();
this._visible = false;
}
Symbol 863 Button
on (press) {
_parent.Scene.ShitLevel = _parent.Scene.ShitLevel - CleanLevel;
_parent.Scene.Money = _parent.Scene.Money - CleanCost;
Update();
_parent.ShitMeter.gotoAndStop(Math.round(_parent.Scene.ShitLevel) + 1);
}
Symbol 869 Button
on (press) {
_parent._parent.Scene.Rifles[index].Purchased = true;
_parent._parent.Scene.Money = _parent._parent.Scene.Money - _parent.GunPrice[index];
_parent.UpdateMoney();
_parent.UpdateWeapons();
}
Symbol 874 Button
on (press) {
_parent.OpenExtraWindow(index);
}
Symbol 877 Button
on (press) {
OpenExtraWindow(6);
}
Symbol 889 Button
on (press) {
_parent.ButtonsSwitch(true);
_visible = false;
}
Symbol 890 Button
on (press) {
_parent._parent.Scene.Money = _parent._parent.Scene.Money - Cost;
if (AmoForGun == 6) {
_parent._parent.Scene.Protection = _parent._parent.Scene.Protection + Amount;
_parent.DefenseText = "Defense: " + Math.ceil(_parent._parent.Scene.Protection);
_parent._parent.ShitText.Update();
} else {
_parent._parent.Scene.Rifles[AmoForGun].Amo.val = _parent._parent.Scene.Rifles[AmoForGun].Amo.val + Amount;
_parent.UpdateWeapons();
}
_parent.UpdateMoney();
_parent.ButtonsSwitch(true);
_visible = false;
}
Instance of Symbol 115 MovieClip "CleanSlider" in Symbol 913 MovieClip Frame 1
onClipEvent (load) {
function StartSliding() {
InitialPos = _x;
InitialMouse = _parent._xmouse;
Sliding = true;
}
function EndSliding() {
Sliding = false;
}
function SetValue(Val) {
_x = ((Val * 1.18) - 210);
}
SetValue(_parent.MaxCleanLevel);
StartSliding();
EndSliding();
}
onClipEvent (enterFrame) {
if (Sliding) {
if (_parent.SlideUp) {
_x = (_x + 1.18);
}
if (_parent.SlideDown) {
_x = (_x - 1.18);
}
if ((!_parent.SlideUp) and (!_parent.SlideDown)) {
Xmove = _parent._xmouse - InitialMouse;
_x = (InitialPos + Xmove);
}
Value = (_x + 210) / 1.18;
if (Value > _parent.MaxCleanLevel) {
Value = _parent.MaxCleanLevel;
SetValue(Value);
}
if (Value < 0) {
Value = 0;
SetValue(Value);
}
_parent.CleanLevel = Value;
_parent.UpdateCleanText();
_parent.CleanMask.Update();
}
}
Instance of Symbol 858 MovieClip "Scope" in Symbol 913 MovieClip Frame 1
onClipEvent (load) {
_visible = false;
}
Instance of Symbol 121 MovieClip "ShitMeter" in Symbol 913 MovieClip Frame 1
onClipEvent (load) {
function Update() {
gotoAndStop(Math.round(_parent._parent.Scene.ShitLevel) + 1);
}
}
Instance of Symbol 876 MovieClip "GunStatus1" in Symbol 913 MovieClip Frame 1
onClipEvent (load) {
index = 1;
}
Instance of Symbol 876 MovieClip "GunStatus2" in Symbol 913 MovieClip Frame 1
onClipEvent (load) {
index = 2;
}
Instance of Symbol 876 MovieClip "GunStatus3" in Symbol 913 MovieClip Frame 1
onClipEvent (load) {
index = 3;
}
Instance of Symbol 876 MovieClip "GunStatus4" in Symbol 913 MovieClip Frame 1
onClipEvent (load) {
index = 4;
}
Instance of Symbol 876 MovieClip "GunStatus5" in Symbol 913 MovieClip Frame 1
onClipEvent (load) {
index = 5;
}
Instance of Symbol 128 MovieClip "CleanMask" in Symbol 913 MovieClip Frame 1
onClipEvent (load) {
function Update() {
gotoAndStop(Math.round(_parent.CleanLevel) + 1);
}
Update();
}
Symbol 916 Button
on (press) {
_parent.Scene.Unpause();
_parent.Scene.Shooting = false;
this._visible = false;
}
Symbol 917 Button
on (press) {
this._visible = false;
_parent.Instructions._visible = true;
_parent.Instructions.CameFrom = 1;
}
Symbol 918 Button
on (press) {
_parent.gotoAndStop("Game Over");
}
Symbol 928 Button
on (press) {
_parent.Menu._visible = true;
_parent.Menu.Update();
_visible = false;
}
Symbol 930 Button
on (press) {
getURL ("http://www.mofunzone.com", "_blank");
}
Symbol 940 Button
on (press) {
getURL ("http://www.mofunzone.com/online_games/damn_birds.shtml", "_blank");
}
Symbol 942 Button
on (press) {
getURL ("http://www.mofunzone.com", "_blank");
}