Frame 1
function Preloader(baseClip, loadedFrame) {
this.loadedFrame = loadedFrame;
this.baseClip = baseClip;
this.clip = this.baseClip.createEmptyMovieClip("preloaderClip", this.baseClip.getNextHighestDepth());
this.clip.preloader = this;
this.frame = 0;
this.fractionLoaded = 0;
this.loadedBytes = 0;
this.totalBytes = 0;
this.percentLoaded = 0;
this.clip.onEnterFrame = this.evtEnterFrame;
}
function setupRightClickMenu(showHyperlaunchLink) {
var _local2 = new ContextMenu();
_local2.hideBuiltInItems();
if (showHyperlaunchLink || (showHyperlaunchLink == undefined)) {
var _local4 = new ContextMenuItem("\u00A9 2008 Hyperlaunch New Media Ltd", function () {
return(undefined);
});
var _local3 = new ContextMenuItem("http://www.hyperlaunch.com", function () {
getURL ("http://www.hyperlaunch.com", "_blank");
});
_local3.separatorBefore = true;
_local2.customItems.push(_local4, _local3);
}
_root.menu = _local2;
}
stop();
baseURL = "";
siteURL = "http://extras.thesun.co.uk/flash/apache-serialisation/";
Preloader.prototype.evtEnterFrame = function () {
var _local4 = _root.getBytesLoaded();
var _local3 = _root.getBytesTotal();
this.preloader.frame++;
this.preloader.onUpdate();
if ((_local4 > 10) && (_local3 > 10)) {
this.preloader.totalBytes = _local3;
this.preloader.loadedBytes = _local4;
this.preloader.fractionLoaded = _local4 / _local3;
this.preloader.percentLoaded = Math.floor((_local4 * 100) / _local3);
if (_local4 == _local3) {
this.preloader.onLoaded();
this.onEnterFrame = undefined;
this.removeMovieClip();
}
} else {
this.preloader.percentLoaded = 0;
}
this.preloader.loadingString = ("Loading: " + this.preloader.percentLoaded) + "%";
};
Preloader.prototype.onLoaded = function () {
_root.gotoAndStop(this.loadedFrame);
};
Preloader.prototype.onUpdate = function () {
trace(this.fractionLoaded);
};
var objPreloader = new Preloader(_root);
objPreloader.onUpdate = function () {
_root.preloader.txtLoaded.text = this.percentLoaded;
_root.preloader.progress.gotoAndStop(this.percentLoaded);
};
objPreloader.onLoaded = function () {
_root.preloader.text = "100";
_root.gotoAndPlay("intro");
};
setupRightClickMenu();
var transitioning = true;
_level0.hyperlaunchSWF_ID = "Apache_hyperlaunch";
if (_global.System) {
System.security.allowDomain("www.hyperlaunch.com");
}
loadMovieNum ("http://www.hyperlaunch.com/tracking/tracker.swf?r=" + (Math.floor(Math.random() * 10000) + 10000), 19467);
Frame 21
function Sounds(clip) {
if (clip == undefined) {
trace("Sounds: Clip not found in constructor");
}
this.clip = clip;
clip.objSounds = this;
this.sounds = [];
this.groups = [];
this.muted = false;
clip.onEnterFrame = function () {
this.objSounds.evtEnterFrame();
};
}
function initSounds() {
_root.objSounds = new Sounds(_root.soundClip);
_root.objSounds.registerSound("bleep-confirm");
_root.objSounds.registerSound("click");
_root.objSounds.registerSound("click2");
_root.objSounds.registerSound("cockpit_sound");
_root.objSounds.registerSound("helicopter");
_root.objSounds.registerSound("nav_click");
_root.objSounds.registerSound("scratch");
_root.objSounds.registerSound("scratch1");
_root.objSounds.registerSound("transition");
_root.objSounds.registerSound("transition1");
_root.objSounds.registerSound("transition2");
_root.objSounds.registerSound("type");
_root.objSounds.registerSound("zoomin");
_root.objSounds.registerSound("zoomout");
_root.objSounds.registerSound("gun1");
_root.objSounds.registerSound("gun2");
_root.objSounds.registerSound("gun3");
_root.objSounds.registerSound("gun4");
_root.objSounds.registerSound("gun5");
_root.objSounds.registerSound("gun6");
_root.objSounds.registerSound("gun7");
_root.objSounds.registerSound("gun8");
_root.objSounds.registerSound("gun9");
_root.objSounds.registerGroup("gun", ["gun1", "gun2", "gun3", "gun4", "gun5", "gun6", "gun7", "gun8", "gun9"]);
_root.objSounds.registerSound("explosion-bassy");
_root.objSounds.registerSound("explosion-distant");
_root.objSounds.registerSound("bomber");
_root.objSounds.registerSound("bullet-loop");
_root.objSounds.registerSound("rocket1");
_root.objSounds.registerSound("rocket2");
_root.objSounds.registerSound("rocket3");
_root.objSounds.registerGroup("rocket", ["rocket1", "rocket2", "rocket3"]);
_root.objSounds.registerSound("cannon-bang");
_root.objSounds.registerSound("flechette-bang");
_root.objSounds.registerSound("hellfire-bang");
_root.objSounds.registerSound("scream1", 25);
_root.objSounds.registerSound("scream2", 25);
_root.objSounds.registerSound("scream3", 25);
_root.objSounds.registerSound("scream4", 25);
_root.objSounds.registerSound("scream5", 25);
_root.objSounds.registerSound("scream6", 25);
_root.objSounds.registerSound("scream7", 25);
_root.objSounds.registerSound("scream8", 25);
_root.objSounds.registerGroup("scream", ["scream1", "scream2", "scream3", "scream4", "scream5", "scream6", "scream7", "scream8"]);
_root.objSounds.registerSound("alpha");
_root.objSounds.registerSound("bravo");
_root.objSounds.registerSound("charlie");
_root.objSounds.registerSound("delta");
_root.objSounds.registerSound("echo");
_root.objSounds.registerSound("foxtrot");
_root.objSounds.registerSound("golf");
_root.objSounds.registerSound("hotel");
_root.objSounds.registerSound("india");
_root.objSounds.registerSound("juliet");
_root.objSounds.registerSound("kilo");
_root.objSounds.registerSound("lima");
_root.objSounds.registerSound("mike");
_root.objSounds.registerSound("november");
_root.objSounds.registerSound("oscar");
_root.objSounds.registerSound("papa");
_root.objSounds.registerSound("quebec");
_root.objSounds.registerSound("romeo");
_root.objSounds.registerSound("sierra");
_root.objSounds.registerSound("tango");
_root.objSounds.registerSound("uniform");
_root.objSounds.registerSound("victor");
_root.objSounds.registerSound("whiskey");
_root.objSounds.registerSound("xray");
_root.objSounds.registerSound("yankee");
_root.objSounds.registerSound("zulu");
_root.objSounds.registerSound("num0");
_root.objSounds.registerSound("num1");
_root.objSounds.registerSound("num2");
_root.objSounds.registerSound("num3");
_root.objSounds.registerSound("num4");
_root.objSounds.registerSound("num5");
_root.objSounds.registerSound("num6");
_root.objSounds.registerSound("num7");
_root.objSounds.registerSound("num8");
_root.objSounds.registerSound("num9");
_root.objSounds.registerSound("num9er");
_root.objSounds.registerSound("02-hello");
_root.objSounds.registerSound("03-there-wasnt");
_root.objSounds.registerSound("04-youre-in-the");
_root.objSounds.registerSound("05-get-your-nose-in");
_root.objSounds.registerSound("06-your-looking-thru");
_root.objSounds.registerSound("07-there-it-is");
_root.objSounds.registerSound("08-click-on-it");
_root.objSounds.registerSound("09-nice-one");
_root.objSounds.registerSound("10-we-need-to-work-out");
_root.objSounds.registerSound("11-i-see-some-activity");
_root.objSounds.registerSound("12-i-recognise");
_root.objSounds.registerSound("13-taking-too-long");
_root.objSounds.registerSound("14-standby");
_root.objSounds.registerSound("15-keep-an-eye");
_root.objSounds.registerSound("16-that-looks-like-a");
_root.objSounds.registerSound("17-zoom-out");
_root.objSounds.registerSound("18-lase-and-store");
_root.objSounds.registerSound("19-good-spot");
_root.objSounds.registerSound("20-we-cant-watch");
_root.objSounds.registerSound("21-i-see-a-patch");
_root.objSounds.registerSound("23-see-if-you-can");
_root.objSounds.registerSound("24-keep-looking");
_root.objSounds.registerSound("25-ok");
_root.objSounds.registerSound("26-weve-reached");
_root.objSounds.registerSound("27-ugly-five-one");
_root.objSounds.registerSound("28-base-moved");
_root.objSounds.registerSound("29-hurry-up");
_root.objSounds.registerSound("30-ive-just-heard");
_root.objSounds.registerSound("32-apache-is-nothing");
_root.objSounds.registerSound("33-weapon-of-choice");
_root.objSounds.registerSound("36-were-currently");
_root.objSounds.registerSound("37-ill-fly");
_root.objSounds.registerSound("39-we-need-to");
_root.objSounds.registerSound("40-im-looking");
_root.objSounds.registerSound("41-looks-like");
_root.objSounds.registerSound("42-keep-the");
_root.objSounds.registerSound("43-gunner");
_root.objSounds.registerSound("44-gunner");
_root.objSounds.registerSound("45-i-think-its");
_root.objSounds.registerSound("46-the-marines");
_root.objSounds.registerSound("47-ugly-five-two");
_root.objSounds.registerSound("48-hit-those");
_root.objSounds.registerSound("49-are-those");
_root.objSounds.registerSound("50-our-guys");
_root.objSounds.registerSound("51-gunner");
_root.objSounds.registerSound("52-hold-fire");
_root.objSounds.registerSound("53-they-are-getting");
_root.objSounds.registerSound("54-there-must-be");
_root.objSounds.registerSound("55-low-on-fuel");
_root.objSounds.registerSound("56-time-for-the");
_root.objSounds.registerSound("57-what-a-disaster");
_root.objSounds.registerSound("58-what-a-mess");
_root.objSounds.registerSound("59-i-reckon-its-50-50");
_root.objSounds.registerSound("60-good-shooting");
_root.objSounds.registerSound("61-youre-combat-ready");
}
function letterToPhonetic(letter) {
switch (letter.toUpperCase()) {
case "A" :
return("alpha");
case "B" :
return("bravo");
case "C" :
return("charlie");
case "D" :
return("delta");
case "E" :
return("echo");
case "F" :
return("foxtrot");
case "G" :
return("golf");
case "H" :
return("hotel");
case "I" :
return("india");
case "J" :
return("juliet");
case "K" :
return("kilo");
case "L" :
return("lima");
case "M" :
return("mike");
case "N" :
return("november");
case "O" :
return("oscar");
case "P" :
return("papa");
case "Q" :
return("quebec");
case "R" :
return("romeo");
case "S" :
return("sierra");
case "T" :
return("tango");
case "U" :
return("uniform");
case "V" :
return("victor");
case "W" :
return("whiskey");
case "X" :
return("xray");
case "Y" :
return("yankee");
case "Z" :
return("zulu");
}
}
function letterToPhoneticCaps(letter) {
switch (letter.toUpperCase()) {
case "A" :
return("Alpha");
case "B" :
return("Bravo");
case "C" :
return("Charlie");
case "D" :
return("Delta");
case "E" :
return("Echo");
case "F" :
return("Foxtrot");
case "G" :
return("Golf");
case "H" :
return("Hotel");
case "I" :
return("India");
case "J" :
return("Juliet");
case "K" :
return("Kilo");
case "L" :
return("Lima");
case "M" :
return("Mike");
case "N" :
return("November");
case "O" :
return("Oscar");
case "P" :
return("Papa");
case "Q" :
return("Quebec");
case "R" :
return("Romeo");
case "S" :
return("Sierra");
case "T" :
return("Tango");
case "U" :
return("Uniform");
case "V" :
return("Victor");
case "W" :
return("Whiskey");
case "X" :
return("Xray");
case "Y" :
return("Yankee");
case "Z" :
return("Zulu");
}
}
function Recce(clip) {
this.clip = clip;
clip.objGame = this;
this.initialise();
}
function Fort(clip) {
this.clip = clip;
clip.objGame = this;
this.initialise();
}
com.mosesSupposes.fuse.ZigoEngine.simpleSetup(com.mosesSupposes.fuse.Shortcuts, com.mosesSupposes.fuse.PennerEasing);
var Maths = new Object();
Maths.randomNum = function (minNum, maxNum) {
return((Math.random() * (maxNum - minNum)) + minNum);
};
Maths.randomInt = function (minNum, maxNum) {
return(Math.round((Math.random() * (maxNum - minNum)) + minNum));
};
Maths.vectorLength = function (dx, dy) {
return(Math.sqrt((dx * dx) + (dy * dy)));
};
Maths.distance = function (x1, y1, x2, y2) {
var _local2 = x1 - x2;
var _local1 = y1 - y2;
return(Maths.vectorLength(_local2, _local1));
};
Maths.vectorLengthSquared = function (dx, dy) {
return((dx * dx) + (dy * dy));
};
Maths.distanceSquared = function (x1, y1, x2, y2) {
var _local2 = x1 - x2;
var _local1 = y1 - y2;
return(Maths.vectorLengthSquared(_local2, _local1));
};
Maths.angleBetween = function (x1, y1, x2, y2) {
var _local2 = (x1 * x2) + (y1 * y2);
var _local1 = Maths.vectorLength(x1, y1) * Maths.vectorLength(x2, y2);
return(Math.acos(_local2 / _local1));
};
Maths.dotProduct = function (ax, ay, bx, by) {
return((ax * bx) + (ay * by));
};
Maths.unitNormal = function (x, y) {
var _local2 = -y;
var _local1 = x;
var _local3 = Maths.vectorLength(_local2, _local1);
_local2 = _local2 / _local3;
_local1 = _local1 / _local3;
return({x:_local2, y:_local1});
};
Maths.scalarProjection = function (x1, y1, x2, y2) {
return(Maths.dotProduct(x1, y1, x2, y2) / Maths.vectorLength(x2, y2));
};
Maths.vectorProjection = function (x1, y1, x2, y2) {
var _local2 = Maths.dotProduct(x1, y1, x2, y2);
var _local1 = Maths.vectorLength(x2, y2);
var _local6 = (_local2 * x2) / (_local1 * _local1);
var _local5 = (_local2 * y2) / (_local1 * _local1);
return({x:_local6, y:_local5});
};
Maths.formatNum = function (num, leadingDigits, decimalDigits) {
var _local2 = "" + Math.floor(num);
while (_local2.length < leadingDigits) {
_local2 = "0" + _local2;
}
if (decimalDigits != undefined) {
var _local1 = Math.abs(num) - Math.floor(Math.abs(num));
_local1 = _local1 * (10 ^ decimalDigits);
_local1 = Math.floor(_local1);
_local1 = "" + _local1;
while (_local1.length < decimalDigits) {
_local1 = _local1 + "0";
}
_local2 = (_local2 + ".") + _local1;
}
return(_local2);
};
Maths.degToRad = function (degs) {
return(degs * (Math.PI/180));
};
Maths.radToDeg = function (rads) {
return(rads * 57.2957795130823);
};
MovieClip.prototype.curvedRectangle = function (p_nX1, p_nY1, p_nX2, p_nY2, p_nR) {
var _local2 = ((p_nR == undefined) ? 0 : (p_nR));
var _local7 = _local2 * 2;
var _local10 = Math.abs(p_nX2 - p_nX1) - _local7;
var _local8 = Math.abs(p_nY2 - p_nY1) - _local7;
this.moveTo(p_nX1 + _local2, p_nY1);
this.lineTo(p_nX2 - _local2, p_nY1);
this.curveTo(p_nX2, p_nY1, p_nX2, p_nY1 + _local2);
this.lineTo(p_nX2, p_nY2 - _local2);
this.curveTo(p_nX2, p_nY2, p_nX2 - _local2, p_nY2);
this.lineTo(p_nX1 + _local2, p_nY2);
this.curveTo(p_nX1, p_nY2, p_nX1, p_nY2 - _local2);
this.lineTo(p_nX1, p_nY1 + _local2);
this.curveTo(p_nX1, p_nY1, p_nX1 + _local2, p_nY1);
};
MovieClip.prototype.drawSquare = function (x, y, w, h) {
this.moveTo(x, y);
this.lineTo(x + w, y);
this.lineTo(x + w, y + h);
this.lineTo(x, y + h);
this.lineTo(x, y);
};
MovieClip.prototype.drawFilledSquare = function (x, y, w, h, colour, alpha) {
this.beginFill(colour, alpha);
this.drawSquare(x, y, w, h);
this.endFill();
};
MovieClip.prototype.drawCircle = function (x, y, r) {
var _local6 = r * 0.414213562373095;
var _local5 = (r * Math.SQRT2) / 2;
this.moveTo(x + r, y);
this.curveTo(x + r, y + _local6, x + _local5, y + _local5);
this.curveTo(x + _local6, y + r, x, y + r);
this.curveTo(x - _local6, y + r, x - _local5, y + _local5);
this.curveTo(x - r, y + _local6, x - r, y);
this.curveTo(x - r, y - _local6, x - _local5, y - _local5);
this.curveTo(x - _local6, y - r, x, y - r);
this.curveTo(x + _local6, y - r, x + _local5, y - _local5);
this.curveTo(x + r, y - _local6, x + r, y);
};
MovieClip.prototype.drawFilledCircle = function (x, y, r, colour, alpha) {
this.beginFill(colour, alpha);
this.drawCircle(x, y, r);
this.endFill();
};
MovieClip.prototype.drawCircleSegment = function (x, y, r, startAngle, endAngle, stepAngle) {
degToRad = (Math.PI/180);
while (endAngle < startAngle) {
endAngle = endAngle + 360;
}
this.moveTo(x, y);
this.lineTo(x + (r * Math.cos(startAngle * degToRad)), x + (r * Math.sin(startAngle * degToRad)));
var _local2 = startAngle + stepAngle;
while (_local2 < (endAngle - stepAngle)) {
var _local3 = _local2 * degToRad;
this.lineTo(x + (r * Math.cos(_local3)), x + (r * Math.sin(_local3)));
_local2 = _local2 + stepAngle;
}
this.lineTo(x + (r * Math.cos(endAngle * degToRad)), x + (r * Math.sin(endAngle * degToRad)));
this.lineTo(x, y);
};
MovieClip.prototype.drawFilledCircleSegment = function (x, y, r, startAngle, endAngle, stepAngle, colour, alpha) {
this.beginFill(colour, alpha);
this.drawCircleSegment(x, y, r, startAngle, endAngle, stepAngle);
this.endFill();
};
MovieClip.prototype.drawSmoothCurveThroughPoints = function (wibbleFactor, startAngle, points) {
this.moveTo(points[0].x, points[0].y);
var _local13 = points[0].x - Math.cos((Math.PI * startAngle) / 180);
var _local12 = points[0].y - Math.sin((Math.PI * startAngle) / 180);
var _local2 = 1;
while (_local2 < points.length) {
var _local5 = points[_local2 - 1].x - _local13;
var _local4 = points[_local2 - 1].y - _local12;
var _local8 = Maths.vectorLength(_local5, _local4);
var _local10 = points[_local2 - 1].x - points[_local2].x;
var _local9 = points[_local2 - 1].y - points[_local2].y;
var _local11 = Maths.vectorLength(_local10, _local9);
cScale = 0;
if (_local8 != 0) {
cScale = ((0.5 + wibbleFactor) * _local11) / _local8;
}
var _local7 = points[_local2 - 1].x + (_local5 * cScale);
var _local6 = points[_local2 - 1].y + (_local4 * cScale);
this.curveTo(_local7, _local6, points[_local2].x, points[_local2].y);
_local13 = _local7;
_local12 = _local6;
_local2++;
}
};
MovieClip.prototype.localToLocal = function (clip, x, y) {
var _local2 = {x:x, y:y};
clip.localToGlobal(_local2);
this.globalToLocal(_local2);
return(_local2);
};
MovieClip.prototype.holderToLocal = function (clip) {
var _local2 = {x:0, y:0};
this.localToGlobal(_local2);
clip.globalToLocal(_local2);
return(_local2);
};
MovieClip.prototype.holderToGlobal = function () {
var _local2 = {x:0, y:0};
this.localToGlobal(_local2);
return(_local2);
};
MovieClip.prototype.addHolder = function (x, y) {
var _local3 = this.getNextHighestDepth();
var _local2 = this.createEmptyMovieClip("holder_" + _local3, _local3);
_local2._x = x;
_local2._y = y;
return(_local2);
};
var Keys = new Object();
Keys.LeftMouse = 1;
Keys._mouseDown = false;
Keys.onMouseDown = function () {
this._mouseDown = true;
};
Keys.onMouseUp = function () {
this._mouseDown = false;
};
Mouse.addListener(Keys);
Keys.mouseDown = function () {
return(this._mouseDown);
};
Keys.CursorLeft = 37;
Keys.CursorRight = 39;
Keys.CursorUp = 38;
Keys.CursorDown = 40;
Keys.Backspace = 8;
Keys.Tab = 9;
Keys.Enter = 13;
Keys.Shift = 16;
Keys.Control = 17;
Keys.Alt = 18;
Keys.CapsLock = 20;
Keys.Spacebar = 32;
Keys.PageUp = 33;
Keys.PageDown = 34;
Keys.End = 35;
Keys.Home = 36;
Keys.PrintScr = 44;
Keys.ScrollLock = 145;
Keys.Pause = 19;
Keys.Insert = 45;
Keys.Delete = 46;
Keys.NumLock = 144;
Keys.Semicolon = 186;
Keys.Equals = 187;
Keys.Minus = 189;
Keys.Slash = 191;
Keys.Apostrophe = 192;
Keys.BackTick = 223;
Keys.BackSlash = 220;
Keys.Hash = 222;
Keys.Comma = 188;
Keys.Period = 190;
Keys.SquareOpen = 219;
Keys.SquareClose = 221;
Keys.F1 = 112;
Keys.F2 = 113;
Keys.F3 = 114;
Keys.F4 = 115;
Keys.F5 = 116;
Keys.F6 = 117;
Keys.F7 = 118;
Keys.F8 = 119;
Keys.F9 = 120;
Keys.F10 = undefined;
Keys.F11 = 122;
Keys.F12 = 123;
Keys.Num0 = 96;
Keys.Num1 = 97;
Keys.Num2 = 98;
Keys.Num3 = 99;
Keys.Num4 = 100;
Keys.Num5 = 101;
Keys.Num6 = 102;
Keys.Num7 = 103;
Keys.Num8 = 104;
Keys.Num9 = 105;
Keys.NumMultiply = 106;
Keys.NumAdd = 107;
Keys.NumEnter = 13;
Keys.NumMinus = 109;
Keys.NumPeriod = 110;
Keys.NumDivide = 111;
Keys.A = 65;
Keys.B = 66;
Keys.C = 67;
Keys.D = 68;
Keys.E = 69;
Keys.F = 70;
Keys.G = 71;
Keys.H = 72;
Keys.I = 73;
Keys.J = 74;
Keys.K = 75;
Keys.L = 76;
Keys.M = 77;
Keys.N = 78;
Keys.O = 79;
Keys.P = 80;
Keys.Q = 81;
Keys.R = 82;
Keys.S = 83;
Keys.T = 84;
Keys.U = 85;
Keys.V = 86;
Keys.W = 87;
Keys.X = 88;
Keys.Y = 89;
Keys.Z = 90;
Keys.Key0 = 48;
Keys.Key1 = 49;
Keys.Key2 = 50;
Keys.Key3 = 51;
Keys.Key4 = 52;
Keys.Key5 = 53;
Keys.Key6 = 54;
Keys.Key7 = 55;
Keys.Key8 = 56;
Keys.Key9 = 57;
Sounds.prototype.registerSound = function (linkage, defaultVolume) {
if (defaultVolume == undefined) {
defaultVolume = 100;
}
var _local4 = this.clip.getNextHighestDepth();
var _local2 = this.clip.createEmptyMovieClip((linkage + "_") + _local4, _local4);
_local2.sound = new Sound(_local2);
_local2.sound.defaultVolume = defaultVolume;
_local2.sound.clip = _local2;
_local2.sound.attachSound(linkage);
_local2.sound.setVolume(defaultVolume);
this.sounds[linkage] = _local2.sound;
this.sounds[linkage].looping = false;
this.sounds[linkage].playing = false;
this.sounds[linkage].onSoundComplete = function () {
if (this.looping) {
this.start();
} else {
this.playing = false;
}
};
return(_local2.sound);
};
Sounds.prototype.registerGroup = function (groupID, arrGroupIDs) {
var _local2 = 0;
while (_local2 < arrGroupIDs.length) {
if (this.sounds[arrGroupIDs[_local2]] == undefined) {
trace(((("Sounds: Group '" + groupID) + "' contains non-registered sound ID '") + arrGroupIDs[_local2]) + "'");
}
_local2++;
}
this.groups[groupID] = arrGroupIDs;
};
Sounds.prototype.play = function (id, volume, loop, soundPosition) {
if (this.muted) {
return(undefined);
}
if (loop != undefined) {
this.sounds[id].looping = loop;
}
if (soundPosition == undefined) {
soundPosition = 0;
}
if (this.groups[id] != undefined) {
id = this.groups[id][Maths.randomInt(0, this.groups[id].length - 1)];
}
if (this.sounds[id] == undefined) {
trace(("Sounds: Trying to play unregistered sound '" + id) + "'");
}
if (volume != undefined) {
this.sounds[id].setVolume(volume);
}
this.sounds[id].start(soundPosition);
this.sounds[id].playing = true;
};
Sounds.prototype.stop = function (id) {
if (this.sounds[id] == undefined) {
trace(("Sounds: Trying to stop unregistered sound '" + id) + "'");
}
this.sounds[id].looping = false;
this.sounds[id].stop();
this.sounds[id].playing = false;
};
Sounds.prototype.volume = function (id, volume) {
if (this.sounds[id] == undefined) {
trace(("Sounds: Trying to set volume of unregistered sound '" + id) + "'");
}
this.sounds[id].setVolume(volume);
};
Sounds.prototype.fadeTo = function (id, volume, dVol) {
if (this.sounds[id] == undefined) {
trace(("Sounds: Trying to fade volume of unregistered sound '" + id) + "'");
}
if (dVol == undefined) {
dVol = 1;
}
this.sounds[id].dVol = Math.ceil(Math.abs(dVol));
this.sounds[id].targetVol = volume;
};
Sounds.prototype.stopAllSounds = function () {
for (id in this.sounds) {
this.stop(id);
}
};
Sounds.prototype.fadeOutAllSounds = function (dVol) {
for (id in this.sounds) {
this.fadeTo(id, 0, dVol);
}
};
Sounds.prototype.setMute = function (muted) {
this.muted = muted;
if (this.muted) {
this.stopAllSounds();
}
};
Sounds.prototype.evtEnterFrame = function () {
for (id in this.sounds) {
if (this.sounds[id].targetVol != undefined) {
var _local2 = this.sounds[id].getVolume();
var _local3 = _local2 - this.sounds[id].targetVol;
if (Math.abs(_local3) < this.sounds[id].dVol) {
this.sounds[id].setVolume(this.sounds[id].targetVol);
this.sounds[id].targetVol = undefined;
} else {
this.sounds[id].setVolume(((_local3 > 0) ? (_local2 - this.sounds[id].dVol) : (_local2 + this.sounds[id].dVol)));
}
}
}
};
_root.activeIntervals = [];
MovieClip.prototype.typeText = function (textfield, str, onFinished) {
_root.objSounds.play("type", undefined, true);
this.str = str;
this.count = 0;
this.textfield = textfield;
this.onFinished = onFinished;
this.intervalID = setInterval(this, "typeUpdate", 1);
_root.activeIntervals.push(this.intervalID);
};
MovieClip.prototype.typeUpdate = function () {
this.textfield.text = this.str.substring(0, this.count);
this.count++;
if (this.count > this.str.length) {
clearInterval(this.intervalID);
_root.objSounds.stop("type");
this.onFinished();
}
};
MovieClip.prototype.typeSpeech = function (textfield, str, soundID, onFinished) {
_root.objSounds.play("type", undefined, true);
_root.objSounds.play(soundID, 100);
this.str = str;
this.soundID = soundID;
this.count = 0;
this.textfield = textfield;
this.onFinished = onFinished;
this.intervalID = setInterval(this, "typeSpeechUpdate", 1);
_root.activeIntervals.push(this.intervalID);
};
MovieClip.prototype.typeSpeechUpdate = function () {
this.textfield.text = this.str.substring(0, this.count);
this.count++;
if (this.count > this.str.length) {
_root.objSounds.stop("type");
if (!_root.objSounds.sounds[this.soundID].playing) {
clearInterval(this.intervalID);
this.onFinished();
}
}
};
MovieClip.prototype.sayUserCallsign = function (callback) {
this.callsignCallback = callback;
this.callsignState = "A";
_root.objSounds.play(letterToPhonetic(_root.letterA));
this.onEnterFrame = function () {
switch (this.callsignState) {
case "A" :
if (!_root.objSounds.sounds[letterToPhonetic(_root.letterA)].playing) {
_root.objSounds.play(letterToPhonetic(_root.letterB));
this.callsignState = "B";
}
break;
case "B" :
if (_root.objSounds.sounds[letterToPhonetic(_root.letterB)].playing) {
break;
}
this.callsignCallback();
this.callsignState = undefined;
this.onEnterFrame = undefined;
}
};
};
Recce.prototype.initialise = function () {
this.frame = 0;
this.state = "idle";
this.scrollVx = 0;
this.scrollVy = 0;
this.scrollAccel = 2.5;
this.scrollDrag = 0.85;
this.chopperWobble = 0;
this.misses = 0;
this.zoomStage = 3;
this.zoomFactor = 1;
this.updateZoom();
this.lasedTreeTruck = false;
this.lasedTreeGuys1 = false;
this.lasedTreeGuys2 = false;
this.lasedTreeCrates = false;
this.crosshairTargetX = this.clip.crosshair._x;
this.crosshairTargetY = this.clip.crosshair._y;
this.clip.map.leftEdge._visible = false;
this.clip.map.rightEdge._visible = false;
this.clip.map.topEdge._visible = false;
this.clip.map.bottomEdge._visible = false;
this.clip.x_scale.centreX = this.clip.x_scale.arrow._x;
this.clip.y_scale.centreY = this.clip.y_scale.arrow._x;
this.setMapMode("normal");
this.gridMode = "off";
this.clip.map.grid._alpha = 0;
this.clip.map.x = this.clip.map._x;
this.clip.map.y = this.clip.map._y;
this.clip.onEnterFrame = function () {
this.objGame.evtEnterFrame();
};
};
Recce.prototype.evtEnterFrame = function () {
this.frame++;
switch (this.state) {
case "idle" :
if (Key.isDown(Keys.CursorUp)) {
this.scrollVy = this.scrollVy - this.scrollAccel;
}
if (Key.isDown(Keys.CursorDown)) {
this.scrollVy = this.scrollVy + this.scrollAccel;
}
if (Key.isDown(Keys.CursorLeft)) {
this.scrollVx = this.scrollVx - this.scrollAccel;
}
if (Key.isDown(Keys.CursorRight)) {
this.scrollVx = this.scrollVx + this.scrollAccel;
}
if (Key.isDown(Keys.Minus) || (Key.isDown(Keys.NumMinus))) {
this.zoomOut();
}
if (Key.isDown(Keys.Equals) || (Key.isDown(Keys.NumAdd))) {
this.zoomIn();
}
this.evtScrollEnterFrame();
this.evtCrosshairEnterFrame();
this.evtTaskEnterFrame();
break;
default :
trace(("evtEnterFrame(" + this.state) + "): Unhandled");
}
};
Recce.prototype.setState = function (newState) {
var _local3 = this.state;
this.state = newState;
switch (newState) {
case "idle" :
break;
default :
trace(("setState(" + newState) + "): Unhandled");
}
};
Recce.prototype.zoomIn = function () {
if (this.zoomStage <= 1) {
return(undefined);
}
if (!this.clip.zoomFlicker.idle) {
return(undefined);
}
this.zoomStage--;
this.updateZoom();
};
Recce.prototype.zoomOut = function () {
if (this.zoomStage >= 4) {
return(undefined);
}
if (!this.clip.zoomFlicker.idle) {
return(undefined);
}
this.zoomStage++;
this.updateZoom();
};
Recce.prototype.setMapMode = function (newMode) {
if (newMode == this.mapMode) {
return(undefined);
}
this.mapMode = newMode;
switch (newMode) {
case "normal" :
this.clip.invertScreen.gotoAndPlay("off");
this.clip.mappanel.norm.gotoAndStop("out");
this.clip.mappanel.flir.gotoAndPlay("out");
break;
case "flir" :
this.clip.invertScreen.gotoAndPlay("on");
this.clip.mappanel.flir.gotoAndStop("out");
this.clip.mappanel.norm.gotoAndPlay("out");
}
this.clip.map.t0.gotoAndStop(newMode);
this.clip.map.t1.gotoAndStop(newMode);
this.clip.map.t2.gotoAndStop(newMode);
this.clip.map.t3.gotoAndStop(newMode);
this.clip.map.t4.gotoAndStop(newMode);
this.clip.map.t5.gotoAndStop(newMode);
this.clip.map.t6.gotoAndStop(newMode);
this.clip.map.t7.gotoAndStop(newMode);
this.clip.map.t8.gotoAndStop(newMode);
this.clip.map.t9.gotoAndStop(newMode);
this.clip.map.taliban.t0.gotoAndStop(newMode);
this.clip.map.taliban.t1.gotoAndStop(newMode);
this.clip.map.taliban.t2.gotoAndStop(newMode);
this.clip.map.taliban.t3.gotoAndStop(newMode);
this.clip.map.taliban.t4.gotoAndStop(newMode);
this.clip.map.rpgAmbush.t0.gotoAndStop(newMode);
this.clip.map.rpgAmbush.t1.gotoAndStop(newMode);
this.clip.map.rpgAmbush.t2.gotoAndStop(newMode);
this.clip.map.rpgAmbush.t3.gotoAndStop(newMode);
};
Recce.prototype.toggleGrid = function () {
switch (this.gridMode) {
case "off" :
this.gridMode = "on";
this.clip.map.grid.fadeIn(0.5);
_root.objSounds.play("transition");
this.clip.mappanel.map.gotoAndStop("out");
break;
case "on" :
this.gridMode = "off";
this.clip.map.grid.fadeOut(0.5);
_root.objSounds.play("transition");
this.clip.mappanel.map.gotoAndPlay("out");
}
};
Recce.prototype.updateZoom = function () {
var _local6 = this.zoomFactor;
switch (this.zoomStage) {
case 1 :
this.zoomFactor = 1;
break;
case 2 :
this.zoomFactor = 0.65;
break;
case 3 :
this.zoomFactor = 0.5;
break;
case 4 :
this.zoomFactor = 0.4;
}
_root.objSounds.play(((this.zoomFactor < _local6) ? "zoomout" : "zoomin"));
var _local3 = this.clip.centre.holderToLocal(this.clip.map);
var _local4 = this.clip.map.addHolder(_local3.x, _local3.y);
this.clip.map._scale = 100 * this.zoomFactor;
var _local5 = _local4.holderToLocal(this.clip.centre);
this.clip.map._x = this.clip.map._x - _local5.x;
this.clip.map._y = this.clip.map._y - _local5.y;
_local4.removeMovieClip();
this.evtScrollEnterFrame();
this.clip.zoompanel.txtZoom.text = (100 * this.zoomFactor) + "%";
this.clip.zoomFlicker.gotoAndPlay("flicker");
};
Recce.prototype.evtScrollEnterFrame = function () {
this.chopperWobble = this.chopperWobble + Maths.degToRad(30);
this.scrollVx = this.scrollVx + (0.1 * (Math.cos(this.chopperWobble) + Math.cos(this.chopperWobble * 1.72)));
this.scrollVy = this.scrollVy + (0.2 * Math.sin(this.chopperWobble * 1.3));
this.clip.map.x = this.clip.map.x - this.scrollVx;
this.clip.map.y = this.clip.map.y - this.scrollVy;
this.scrollVx = this.scrollVx * this.scrollDrag;
this.scrollVy = this.scrollVy * this.scrollDrag;
this.clip.x_scale.arrow._x = this.clip.x_scale.centreX - (this.scrollVx * 3);
this.clip.y_scale.arrow._x = this.clip.y_scale.centreY + (this.scrollVy * 3);
var _local4 = this.clip.leftEdge.holderToGlobal().x - this.clip.map.leftEdge.holderToGlobal().x;
if (_local4 < 0) {
this.clip.map.x = this.clip.map.x + _local4;
if (Math.abs(this.scrollVx) > 3) {
_root.objSounds.play("click");
}
this.scrollVx = 0;
}
_local4 = this.clip.rightEdge.holderToGlobal().x - this.clip.map.rightEdge.holderToGlobal().x;
if (_local4 > 0) {
this.clip.map.x = this.clip.map.x + _local4;
if (Math.abs(this.scrollVx) > 3) {
_root.objSounds.play("click");
}
this.scrollVx = 0;
}
var _local3 = this.clip.topEdge.holderToGlobal().y - this.clip.map.topEdge.holderToGlobal().y;
if (_local3 < 0) {
this.clip.map.y = this.clip.map.y + _local3;
if (Math.abs(this.scrollVy) > 3) {
_root.objSounds.play("click");
}
this.scrollVy = 0;
}
_local3 = this.clip.bottomEdge.holderToGlobal().y - this.clip.map.bottomEdge.holderToGlobal().y;
if (_local3 > 0) {
this.clip.map.y = this.clip.map.y + _local3;
if (Math.abs(this.scrollVy) > 3) {
_root.objSounds.play("click");
}
this.scrollVy = 0;
}
this.clip.map._x = Math.round(this.clip.map.x);
this.clip.map._y = Math.round(this.clip.map.y);
};
Recce.prototype.evtCrosshairEnterFrame = function () {
if (this.clip.hit.hitTest(_root._xmouse, _root._ymouse, true)) {
Mouse.hide();
this.crosshairTargetX = 0.7 * this.clip.centre._xmouse;
this.crosshairTargetY = 0.7 * this.clip.centre._ymouse;
} else {
Mouse.show();
}
this.clip.crosshair._x = this.clip.crosshair._x + (0.15 * (this.crosshairTargetX - this.clip.crosshair._x));
this.clip.crosshair._y = this.clip.crosshair._y + (0.15 * (this.crosshairTargetY - this.clip.crosshair._y));
};
Recce.prototype.setTask = function (taskID, completeFrame) {
this.task = taskID;
this.taskCompleteFrame = completeFrame;
};
Recce.prototype.taskComplete = function () {
this.task = "idle";
if (this.taskCompleteFrame != undefined) {
this.clip.map.gotoAndPlay(this.taskCompleteFrame);
}
};
Recce.prototype.evtTaskEnterFrame = function () {
switch (this.task) {
case "idle" :
break;
case "findFort" :
if (this.clip.crosshair.hit.hitTest(this.clip.map.fortHit)) {
this.taskComplete();
}
break;
case "laseFort" :
if (Keys.mouseDown()) {
var _local3 = this.clip.crosshair.holderToGlobal();
if (this.clip.map.fortLaseHit.hitTest(_local3.x, _local3.y)) {
_root.objSounds.play("bleep-confirm");
this.clip.map.lasedFort.gotoAndPlay("lased");
this.taskComplete();
}
}
break;
case "findFortZoomed" :
if ((this.zoomStage <= 2) && (this.clip.crosshair.hit.hitTest(this.clip.map.fortHit))) {
this.taskComplete();
}
break;
case "findTrucksZoomed" :
if ((this.zoomStage == 1) && (this.clip.crosshair.hit.hitTest(this.clip.map.t0))) {
this.taskComplete();
}
break;
case "findTrucksFlir" :
if (((this.zoomStage == 1) && (this.mapMode == "flir")) && (this.clip.crosshair.hit.hitTest(this.clip.map.t0))) {
this.taskComplete();
}
break;
case "laseBuilding" :
if (Keys.mouseDown()) {
var _local3 = this.clip.crosshair.holderToGlobal();
if (this.clip.map.buildingLaseHit.hitTest(_local3.x, _local3.y)) {
_root.objSounds.play("bleep-confirm");
this.clip.map.lasedBuilding.gotoAndPlay("lased");
this.taskComplete();
}
}
break;
case "laseAmmo" :
if (Keys.mouseDown()) {
var _local3 = this.clip.crosshair.holderToGlobal();
if (this.clip.map.ammoLaseHit.hitTest(_local3.x, _local3.y)) {
_root.objSounds.play("bleep-confirm");
this.clip.map.lasedAmmo.gotoAndPlay("lased");
this.taskComplete();
var _local4 = "That looks like an ammo dump. Well spotted.";
this.clip.map.typeSpeech(this.clip.subtitles.txtSubtitles, _local4, "16-that-looks-like-a", function () {
this._parent.subtitles.fadeOut(0.5);
});
this.clip.subtitles.fadeIn(0.5);
}
}
break;
case "findTrucks" :
if (this.clip.crosshair.hit.hitTest(this.clip.map.t0)) {
this.taskComplete();
}
break;
case "laseTunnel" :
if (Keys.mouseDown()) {
var _local3 = this.clip.crosshair.holderToGlobal();
if (this.clip.map.tunnelLaseHit.hitTest(_local3.x, _local3.y)) {
_root.objSounds.play("bleep-confirm");
this.clip.map.lasedTunnel.gotoAndPlay("lased");
this.taskComplete();
if (_root.objSounds.sounds["18-lase-and-store"].playing) {
_root.objSounds.fadeTo("18-lase-and-store", 0, 8);
}
var _local4 = "Good spot. That's a perfect target for a Hellfire missile.";
this.clip.map.typeSpeech(this.clip.subtitles.txtSubtitles, _local4, "19-good-spot", function () {
this._parent.subtitles.fadeOut(0.5);
});
this.clip.subtitles.fadeIn(0.5);
}
}
break;
case "findTrees" :
if (this.clip.crosshair.hit.hitTest(this.clip.map.treesHit)) {
this.taskComplete();
}
break;
case "laseTreeStuff" :
if (Keys.mouseDown()) {
var _local3 = this.clip.crosshair.holderToGlobal();
if ((!this.lasedTreeTruck) && (this.clip.map.t2.hitTest(_local3.x, _local3.y))) {
this.lasedTreeTruck = true;
_root.objSounds.play("bleep-confirm");
this.clip.map.t2.lased.gotoAndPlay("lased");
if ((!_root.objSounds.sounds["23-see-if-you-can"].playing) && (!_root.objSounds.sounds["24-keep-looking"].playing)) {
var _local4 = "Keep looking for targets";
this.clip.map.typeSpeech(this.clip.subtitles.txtSubtitles, _local4, "24-keep-looking", function () {
this._parent.subtitles.fadeOut(0.5);
});
this.clip.subtitles.fadeIn(0.5);
}
}
if ((!this.lasedTreeGuys1) && (this.clip.map.treeGuys1LaseHit.hitTest(_local3.x, _local3.y))) {
this.lasedTreeGuys1 = true;
_root.objSounds.play("bleep-confirm");
this.clip.map.lasedTreeGuys1.gotoAndPlay("lased");
if ((!_root.objSounds.sounds["23-see-if-you-can"].playing) && (!_root.objSounds.sounds["24-keep-looking"].playing)) {
var _local4 = "Keep looking for targets";
this.clip.map.typeSpeech(this.clip.subtitles.txtSubtitles, _local4, "24-keep-looking", function () {
this._parent.subtitles.fadeOut(0.5);
});
this.clip.subtitles.fadeIn(0.5);
}
}
if ((!this.lasedTreeGuys2) && (this.clip.map.treeGuys2LaseHit.hitTest(_local3.x, _local3.y))) {
this.lasedTreeGuys2 = true;
_root.objSounds.play("bleep-confirm");
this.clip.map.lasedTreeGuys2.gotoAndPlay("lased");
if ((!_root.objSounds.sounds["23-see-if-you-can"].playing) && (!_root.objSounds.sounds["24-keep-looking"].playing)) {
var _local4 = "Keep looking for targets";
this.clip.map.typeSpeech(this.clip.subtitles.txtSubtitles, _local4, "24-keep-looking", function () {
this._parent.subtitles.fadeOut(0.5);
});
this.clip.subtitles.fadeIn(0.5);
}
}
if ((!this.lasedTreeCrates) && (this.clip.map.treeCratesLaseHit.hitTest(_local3.x, _local3.y))) {
this.lasedTreeCrates = true;
_root.objSounds.play("bleep-confirm");
this.clip.map.lasedTreeCrates.gotoAndPlay("lased");
if ((!_root.objSounds.sounds["23-see-if-you-can"].playing) && (!_root.objSounds.sounds["24-keep-looking"].playing)) {
var _local4 = "Keep looking for targets";
this.clip.map.typeSpeech(this.clip.subtitles.txtSubtitles, _local4, "24-keep-looking", function () {
this._parent.subtitles.fadeOut(0.5);
});
this.clip.subtitles.fadeIn(0.5);
}
}
}
break;
case "laseBase" :
if (Keys.mouseDown()) {
var _local3 = this.clip.crosshair.holderToGlobal();
if (this.clip.map.lasedBaseHit.hitTest(_local3.x, _local3.y)) {
_root.objSounds.play("bleep-confirm");
this.clip.map.lasedBase.gotoAndPlay("lased");
this.taskComplete();
}
}
break;
case "laseRPG" :
if (!Keys.mouseDown()) {
break;
}
var _local3 = this.clip.crosshair.holderToGlobal();
if (!this.clip.map.laseRpgHit.hitTest(_local3.x, _local3.y)) {
break;
}
_root.objSounds.play("bleep-confirm");
this.clip.map.lasedRPG.gotoAndPlay("lased");
this.taskComplete();
}
};
Recce.prototype.missedGoal = function () {
if (!_root.objSounds.sounds.transition2.playing) {
_root.objSounds.play("transition2");
}
this.misses++;
trace("Goals missed: " + this.misses);
};
Recce.prototype.evt = function () {
};
Fort.prototype.initialise = function () {
this.frame = 0;
this.state = "idle";
this.ordinance = [];
this.targets = [];
this.chopperWobble = 0;
this.misses = 0;
this.focalLength = 10;
this.chopperHeight = 0;
this.chopperZ = 0;
this.scale3D = 10;
this.chopperScale = 0.17;
this.ammoFlechette = 8;
this.ammoHellfire = 8;
this.ammoCannon = 1200;
this.flechetteAccel = 0.6;
this.flechetteDrag = 0.97;
this.hellfireAccel = 0.15;
this.hellfireDrag = 0.98;
this.cannonSpeed = 10;
this.cannonRefireFrames = 3;
this.weaponsActive = false;
this.curWeapon = "none";
this.crosshairTargetX = this.clip.crosshair._x;
this.crosshairTargetY = this.clip.crosshair._y;
this.bmpPixelWorker = new flash.display.BitmapData(1, 1, false);
this.clip.level.x = this.clip.level._x;
this.clip.level.y = this.clip.level._y;
this.clip.sight.x = this.clip.sight._x;
this.clip.sight.y = this.clip.sight._y;
this.clip.sight.vx = 0;
this.clip.sight.vy = 0;
this.clip.onEnterFrame = function () {
this.objGame.evtEnterFrame();
};
this.clip.onMouseDown = function () {
this.objGame.evtMouseDown();
};
this.clip.onMouseUp = function () {
this.objGame.evtMouseUp();
};
};
Fort.prototype.evtEnterFrame = function () {
this.frame++;
switch (this.state) {
case "idle" :
this.checkKeys();
this.evtScrollEnterFrame();
this.evtCrosshairEnterFrame();
this.updateCamera();
this.updateOrdinance();
this.evtTaskEnterFrame();
break;
default :
trace(("evtEnterFrame(" + this.state) + "): Unhandled");
}
};
Fort.prototype.setState = function (newState) {
var _local3 = this.state;
this.state = newState;
switch (newState) {
case "idle" :
break;
default :
trace(("setState(" + newState) + "): Unhandled");
}
};
Fort.prototype.evtScrollEnterFrame = function () {
var _local2 = this.clip.level.viewGuide.holderToLocal(this.clip.centre);
this.clip.level.x = this.clip.level.x - _local2.x;
this.clip.level.y = this.clip.level.y - _local2.y;
this.chopperWobble = this.chopperWobble + Maths.degToRad(30);
this.clip.level.x = this.clip.level.x + (0.1 * (Math.cos(this.chopperWobble) + Math.cos(this.chopperWobble * 1.72)));
this.clip.level.y = this.clip.level.y + (0.2 * Math.sin(this.chopperWobble * 1.3));
this.clip.level._x = Math.floor(this.clip.level.x);
this.clip.level._y = Math.floor(this.clip.level.y);
};
Fort.prototype.evtCrosshairEnterFrame = function () {
var _local3 = this.clip.level.sightGuide.holderToLocal(this.clip.sight);
var _local4 = Maths.vectorLength(_local3.x, _local3.y);
if (_local4 != 0) {
_local3.x = _local3.x / _local4;
_local3.y = _local3.y / _local4;
this.clip.sight.vx = this.clip.sight.vx + (1 * _local3.x);
this.clip.sight.vy = this.clip.sight.vy + (1 * _local3.y);
}
this.clip.sight.vx = this.clip.sight.vx * 0.85;
this.clip.sight.vy = this.clip.sight.vy * 0.85;
this.clip.sight.x = this.clip.sight.x + this.clip.sight.vx;
this.clip.sight.y = this.clip.sight.y + this.clip.sight.vy;
if (this.clip.sight.x < this.clip.leftEdge._x) {
this.clip.sight.x = this.clip.leftEdge._x;
this.clip.sight.vx = 0;
}
if (this.clip.sight.x > this.clip.rightEdge._x) {
this.clip.sight.x = this.clip.rightEdge._x;
this.clip.sight.vx = 0;
}
if (this.clip.sight.y < this.clip.topEdge._y) {
this.clip.sight.y = this.clip.topEdge._y;
this.clip.sight.vy = 0;
}
if (this.clip.sight.y > this.clip.bottomEdge._y) {
this.clip.sight.y = this.clip.bottomEdge._y;
this.clip.sight.vy = 0;
}
this.clip.sight._x = Math.floor(this.clip.sight.x);
this.clip.sight._y = Math.floor(this.clip.sight.y);
if (this.clip.hit.hitTest(_root._xmouse, _root._ymouse, true)) {
Mouse.hide();
this.crosshairTargetX = 0.7 * this.clip.centre._xmouse;
this.crosshairTargetY = 0.7 * this.clip.centre._ymouse;
} else {
Mouse.show();
}
this.clip.crosshair._x = this.clip.crosshair._x + (0.15 * (this.crosshairTargetX - this.clip.crosshair._x));
this.clip.crosshair._y = this.clip.crosshair._y + (0.15 * (this.crosshairTargetY - this.clip.crosshair._y));
};
Fort.prototype.evtMouseDown = function () {
if (!this.weaponsActive) {
return(undefined);
}
if (!this.clip.hit.hitTest(_root._xmouse, _root._ymouse, true)) {
return(undefined);
}
switch (this.curWeapon) {
case "none" :
break;
case "flechette" :
this.fireFlechette();
break;
case "hellfire" :
this.fireHellfire();
break;
case "cannon" :
if (this.ammoCannon <= 0) {
break;
}
this.cannonFrames = 1;
_root.objSounds.play("bullet-loop", 100, true);
}
};
Fort.prototype.evtMouseUp = function () {
this.cannonFrames = undefined;
_root.objSounds.stop("bullet-loop");
};
Fort.prototype.updateOrdinance = function () {
if (this.cannonFrames != undefined) {
this.cannonFrames--;
if (this.cannonFrames <= 0) {
this.fireCannon();
this.cannonFrames = this.cannonRefireFrames;
}
}
var _local4 = 0;
while (_local4 < this.ordinance.length) {
var _local2 = this.ordinance[_local4];
switch (_local2.shotType) {
case "cannon" :
_local2.cur3D.x = _local2.cur3D.x + (_local2.speed * _local2.unitVelocity3D.x);
_local2.cur3D.y = _local2.cur3D.y + (_local2.speed * _local2.unitVelocity3D.y);
_local2.cur3D.z = _local2.cur3D.z + (_local2.speed * _local2.unitVelocity3D.z);
if (_local2.cur3D.z > 500) {
_local2.active = false;
_local2.clip.removeMovieClip();
} else {
var _local9 = this.render3D(_local2.cur3D);
var _local6 = this.render3D(_local2.prev3D);
_local2.clip.clear();
_local2.clip.lineStyle(Math.ceil(_local6.scale), 16777215, 100 - Math.floor(0.3 * _local2.prev3D.z));
_local2.clip.moveTo(_local6.x, _local6.y);
_local2.clip.lineTo(_local9.x, _local9.y);
_local2.prev3D = {x:_local2.cur3D.x, y:_local2.cur3D.y, z:_local2.cur3D.z};
if (_local2.cur3D.z > 20) {
var _local8 = _local2.clip.addHolder(p.x, p.y);
var _local10 = this.getDepthAt(_local8);
_local8.removeMovieClip();
if (_local2.cur3D.z > _local10) {
_local2.active = false;
_local2.clip.removeMovieClip();
this.weaponLanded(_local2);
}
}
}
break;
case "flechette" :
_local2.speed = _local2.speed + this.flechetteAccel;
_local2.speed = _local2.speed * this.flechetteDrag;
_local2.cur3D.x = _local2.cur3D.x + (_local2.speed * _local2.unitVelocity3D.x);
_local2.cur3D.y = _local2.cur3D.y + (_local2.speed * _local2.unitVelocity3D.y);
_local2.cur3D.z = _local2.cur3D.z + (_local2.speed * _local2.unitVelocity3D.z);
if (_local2.cur3D.z > 500) {
_local2.active = false;
} else {
var _local5 = _local2.clip.nextDepth--;
if ((_local5 % 1) == 0) {
_local2.clip.attachMovie("smokeFlechette", "smoke" + _local5, _local5);
var _local3 = _local2.clip["smoke" + _local5];
var p = this.render3D(_local2.cur3D);
_local3._x = p.x;
_local3._y = p.y;
_local3._scale = 100 * p.scale;
_local3._rotation = Maths.randomNum(0, 360);
_local3._alpha = Maths.randomInt(50, 80);
}
if (_local2.cur3D.z > 20) {
var _local8 = _local2.clip.addHolder(p.x, p.y);
var _local10 = this.getDepthAt(_local8);
_local8.removeMovieClip();
if (_local2.cur3D.z > _local10) {
_local2.active = false;
this.weaponLanded(_local2);
}
}
}
break;
case "hellfire" :
_local2.speed = _local2.speed + this.hellfireAccel;
_local2.speed = _local2.speed * this.hellfireDrag;
_local2.cur3D.x = _local2.cur3D.x + (_local2.speed * _local2.unitVelocity3D.x);
_local2.cur3D.y = _local2.cur3D.y + (_local2.speed * _local2.unitVelocity3D.y);
_local2.cur3D.z = _local2.cur3D.z + (_local2.speed * _local2.unitVelocity3D.z);
if (_local2.cur3D.z > 500) {
_local2.active = false;
} else {
var _local10 = this.getDepthAt(this.clip.crosshair);
if (_local10 > (_local2.cur3D.z - 10)) {
var p = this.get3Dposition(this.clip.crosshair, _local10);
_local2.end3D = {x:p.x, y:p.y, z:_local10};
_local2.unitVelocity3D = {x:_local2.end3D.x - _local2.cur3D.x, y:_local2.end3D.y - _local2.cur3D.y, z:_local2.end3D.z - _local2.cur3D.z};
var _local7 = Math.sqrt(((_local2.unitVelocity3D.x * _local2.unitVelocity3D.x) + (_local2.unitVelocity3D.y * _local2.unitVelocity3D.y)) + (_local2.unitVelocity3D.z * _local2.unitVelocity3D.z));
_local2.unitVelocity3D.x = _local2.unitVelocity3D.x / _local7;
_local2.unitVelocity3D.y = _local2.unitVelocity3D.y / _local7;
_local2.unitVelocity3D.z = _local2.unitVelocity3D.z / _local7;
}
var _local5 = _local2.clip.nextDepth--;
if ((_local5 % 1) == 0) {
_local2.clip.attachMovie("smokeHellfire", "smoke" + _local5, _local5);
var _local3 = _local2.clip["smoke" + _local5];
var p = this.render3D(_local2.cur3D);
_local3._x = p.x;
_local3._y = p.y;
_local3._scale = 100 * p.scale;
_local3._rotation = Maths.randomNum(0, 360);
_local3._alpha = Maths.randomInt(50, 80);
}
if (_local2.cur3D.z > 20) {
var _local8 = _local2.clip.addHolder(p.x, p.y);
_local10 = this.getDepthAt(_local8);
_local8.removeMovieClip();
if (_local2.cur3D.z > _local10) {
_local2.active = false;
this.weaponLanded(_local2);
}
}
}
break;
}
if (!_local2.active) {
this.ordinance.splice(_local4, 1);
_local4--;
}
_local4++;
}
};
Fort.prototype.fireCannon = function () {
if (this.ammoCannon <= 0) {
_root.objSounds.stop("bullet-loop");
return(undefined);
}
this.ammoCannon--;
this.clip.cockpit.txtAmmo.text = "30mm CANNON: " + this.ammoCannon;
var _local5;
var _local3 = {};
_local3.active = true;
_local3.shotType = "cannon";
_local5 = this.get3Dposition(this.clip.level.viewGuide.cannon, this.chopperZ);
_local3.start3D = {x:_local5.x, y:_local5.y, z:this.chopperZ};
_local3.cur3D = {x:_local3.start3D.x, y:_local3.start3D.y, z:_local3.start3D.z};
_local3.prev3D = {x:_local3.start3D.x, y:_local3.start3D.y, z:_local3.start3D.z};
var _local7 = this.getDepthAt(this.clip.crosshair);
_local5 = this.get3Dposition(this.clip.crosshair, _local7);
_local3.end3D = {x:_local5.x + Maths.randomNum(-5, 5), y:_local5.y + Maths.randomNum(-5, 5), z:_local7};
_local3.speed = this.cannonSpeed;
_local3.unitVelocity3D = {x:_local3.end3D.x - _local3.start3D.x, y:_local3.end3D.y - _local3.start3D.y, z:_local3.end3D.z - _local3.start3D.z};
var _local4 = Math.sqrt(((_local3.unitVelocity3D.x * _local3.unitVelocity3D.x) + (_local3.unitVelocity3D.y * _local3.unitVelocity3D.y)) + (_local3.unitVelocity3D.z * _local3.unitVelocity3D.z));
_local3.unitVelocity3D.x = _local3.unitVelocity3D.x / _local4;
_local3.unitVelocity3D.y = _local3.unitVelocity3D.y / _local4;
_local3.unitVelocity3D.z = _local3.unitVelocity3D.z / _local4;
var _local6 = this.clip.view3D.getNextHighestDepth();
_local3.clip = this.clip.view3D.createEmptyMovieClip("" + _local6, _local6);
_local3.clip.nextDepth = 3000;
this.ordinance.push(_local3);
};
Fort.prototype.fireFlechette = function () {
if (this.ammoFlechette <= 0) {
return(undefined);
}
this.ammoFlechette--;
_root.objSounds.play("rocket2");
this.clip.cockpit.txtAmmo.text = "FLECHETTES: " + this.ammoFlechette;
var _local5;
var _local3 = {};
_local3.active = true;
_local3.shotType = "flechette";
var _local7 = (((this.ammoFlechette % 2) == 0) ? (this.clip.level.viewGuide.leftRocket) : (this.clip.level.viewGuide.rightRocket));
_local5 = this.get3Dposition(_local7, this.chopperZ);
_local3.start3D = {x:_local5.x, y:_local5.y, z:this.chopperZ};
_local3.cur3D = {x:_local3.start3D.x, y:_local3.start3D.y, z:_local3.start3D.z};
var _local8 = this.getDepthAt(this.clip.crosshair);
_local5 = this.get3Dposition(this.clip.crosshair, _local8);
_local3.end3D = {x:_local5.x, y:_local5.y, z:_local8};
_local3.speed = 1;
_local3.unitVelocity3D = {x:_local3.end3D.x - _local3.start3D.x, y:_local3.end3D.y - _local3.start3D.y, z:_local3.end3D.z - _local3.start3D.z};
var _local4 = Math.sqrt(((_local3.unitVelocity3D.x * _local3.unitVelocity3D.x) + (_local3.unitVelocity3D.y * _local3.unitVelocity3D.y)) + (_local3.unitVelocity3D.z * _local3.unitVelocity3D.z));
_local3.unitVelocity3D.x = _local3.unitVelocity3D.x / _local4;
_local3.unitVelocity3D.y = _local3.unitVelocity3D.y / _local4;
_local3.unitVelocity3D.z = _local3.unitVelocity3D.z / _local4;
var _local6 = this.clip.view3D.getNextHighestDepth();
_local3.clip = this.clip.view3D.createEmptyMovieClip("" + _local6, _local6);
_local3.clip.nextDepth = 3000;
this.ordinance.push(_local3);
};
Fort.prototype.fireHellfire = function () {
if (this.ammoHellfire <= 0) {
return(undefined);
}
this.ammoHellfire--;
_root.objSounds.play("rocket1");
this.clip.cockpit.txtAmmo.text = "HELLFIRES: " + this.ammoHellfire;
var _local5;
var _local3 = {};
_local3.active = true;
_local3.shotType = "hellfire";
var _local7 = (((this.ammoHellfire % 2) == 0) ? (this.clip.level.viewGuide.leftRocket) : (this.clip.level.viewGuide.rightRocket));
_local5 = this.get3Dposition(_local7, this.chopperZ);
_local3.start3D = {x:_local5.x, y:_local5.y, z:this.chopperZ};
_local3.cur3D = {x:_local3.start3D.x, y:_local3.start3D.y, z:_local3.start3D.z};
var _local8 = this.getDepthAt(this.clip.crosshair);
_local5 = this.get3Dposition(this.clip.crosshair, _local8);
_local3.end3D = {x:_local5.x, y:_local5.y, z:_local8};
_local3.speed = 1;
_local3.unitVelocity3D = {x:_local3.end3D.x - _local3.start3D.x, y:_local3.end3D.y - _local3.start3D.y, z:_local3.end3D.z - _local3.start3D.z};
var _local4 = Math.sqrt(((_local3.unitVelocity3D.x * _local3.unitVelocity3D.x) + (_local3.unitVelocity3D.y * _local3.unitVelocity3D.y)) + (_local3.unitVelocity3D.z * _local3.unitVelocity3D.z));
_local3.unitVelocity3D.x = _local3.unitVelocity3D.x / _local4;
_local3.unitVelocity3D.y = _local3.unitVelocity3D.y / _local4;
_local3.unitVelocity3D.z = _local3.unitVelocity3D.z / _local4;
var _local6 = this.clip.view3D.getNextHighestDepth();
_local3.clip = this.clip.view3D.createEmptyMovieClip("" + _local6, _local6);
_local3.clip.nextDepth = 3000;
this.ordinance.push(_local3);
};
Fort.prototype.weaponLanded = function (objShot) {
var _local5 = this.render3D(objShot.cur3D);
var _local6 = this.clip.view3D.addHolder(_local5.x, _local5.y);
var _local8 = _local6.holderToLocal(this.clip.level.ordinance);
var _local3 = _local6.holderToGlobal();
_local6.removeMovieClip();
switch (objShot.shotType) {
case "cannon" :
var _local7 = this.clip.level.ordinance.getNextHighestDepth();
this.clip.level.ordinance.attachMovie("cannonExplosion", "explosion" + _local7, _local7);
var clip = this.clip.level.ordinance["explosion" + _local7];
clip._x = _local8.x;
clip._y = _local8.y;
clip._scale = 100 * _local5.scale;
this.testTargets(_local3.x, _local3.y, objShot);
_root.objSounds.play("cannon-bang");
break;
case "flechette" :
this.testTargets(_local3.x, _local3.y, objShot);
this.testTargets(_local3.x - 7, _local3.y, objShot);
this.testTargets(_local3.x + 7, _local3.y, objShot);
this.testTargets(_local3.x, _local3.y - 7, objShot);
this.testTargets(_local3.x, _local3.y + 7, objShot);
this.testTargets(_local3.x - 7, _local3.y - 7, objShot);
this.testTargets(_local3.x + 7, _local3.y - 7, objShot);
this.testTargets(_local3.x - 7, _local3.y + 7, objShot);
this.testTargets(_local3.x + 7, _local3.y + 7, objShot);
this.testTargets(_local3.x - 14, _local3.y, objShot);
this.testTargets(_local3.x + 14, _local3.y, objShot);
this.testTargets(_local3.x, _local3.y - 14, objShot);
this.testTargets(_local3.x, _local3.y + 14, objShot);
this.testTargets(_local3.x - 14, _local3.y - 14, objShot);
this.testTargets(_local3.x + 14, _local3.y - 14, objShot);
this.testTargets(_local3.x - 14, _local3.y + 14, objShot);
this.testTargets(_local3.x + 14, _local3.y + 14, objShot);
_root.objSounds.play("flechette-bang");
break;
case "hellfire" :
this.testTargets(_local3.x, _local3.y, objShot);
this.testTargets(_local3.x - 7, _local3.y, objShot);
this.testTargets(_local3.x + 7, _local3.y, objShot);
this.testTargets(_local3.x, _local3.y - 7, objShot);
this.testTargets(_local3.x, _local3.y + 7, objShot);
_root.objSounds.play("hellfire-bang");
}
};
Fort.prototype.testTargets = function (x, y, objShot) {
var _local3 = 0;
while (_local3 < this.targets.length) {
var _local2 = this.targets[_local3];
if ((_local2.isDestroyed == undefined) && (_local2.hitTest(x, y, true))) {
if ((_local2.destroyedBy == undefined) || (_local2.destroyedBy == objShot.shotType)) {
_local2.isDestroyed = true;
_local2.destroyed();
}
}
_local3++;
}
};
Fort.prototype.updateCamera = function () {
var _local2 = this.clip.view3D.holderToLocal(this.clip.level);
_local2.x = _local2.x * this.chopperScale;
_local2.y = _local2.y * this.chopperScale;
this.camera3D = {x:_local2.x, y:_local2.y, z:this.chopperZ};
this.chopperHeight = _local2.y;
};
Fort.prototype.render3D = function (point3D) {
var _local6 = point3D.x - this.camera3D.x;
var _local5 = (point3D.y - this.camera3D.y) - 200;
var _local2 = point3D.z - this.camera3D.z;
var _local4 = (this.scale3D * this.focalLength) / (this.focalLength + _local2);
return({x:_local6 * _local4, y:_local5 * _local4, scale:_local4});
};
Fort.prototype.get3Dposition = function (holder, zDepth) {
var _local4 = zDepth + this.camera3D.z;
var _local2 = (this.scale3D * this.focalLength) / (this.focalLength + _local4);
var _local3 = holder.holderToLocal(this.clip.view3D);
return({x:(_local3.x / _local2) + this.camera3D.x, y:((_local3.y / _local2) + this.camera3D.y) + 200});
};
Fort.prototype.getDepthAt = function (holder) {
var _local2 = holder.holderToLocal(this.clip.level.zMap.topLeft);
this.bmpPixelWorker.draw(this.clip.level.zMap, new flash.geom.Matrix(1, 0, 0, 1, -_local2.x, -_local2.y));
var _local3 = this.bmpPixelWorker.getPixel(0, 0);
return(_local3 & 255);
};
Fort.prototype.draw3Dguides = function () {
var _local25 = {x:-128, y:-128, z:0};
var _local24 = {x:128, y:-128, z:0};
var _local23 = {x:-128, y:128, z:0};
var _local22 = {x:128, y:128, z:0};
var _local21 = {x:-128, y:-128, z:255};
var _local20 = {x:128, y:-128, z:255};
var _local19 = {x:-128, y:128, z:255};
var _local18 = {x:128, y:128, z:255};
var _local17 = {x:-128, y:-128, z:128};
var _local16 = {x:128, y:-128, z:128};
var _local15 = {x:-128, y:128, z:128};
var _local14 = {x:128, y:128, z:128};
var _local4 = this.render3D(_local25);
var _local13 = this.render3D(_local24);
var _local2 = this.render3D(_local23);
var _local11 = this.render3D(_local22);
var _local9 = this.render3D(_local21);
var _local7 = this.render3D(_local20);
var _local6 = this.render3D(_local19);
var _local5 = this.render3D(_local18);
var _local3 = this.render3D(_local17);
var _local12 = this.render3D(_local16);
var _local10 = this.render3D(_local15);
var _local8 = this.render3D(_local14);
this.clip.view3D.clear();
this.clip.view3D.lineStyle(1, 16711935, 100);
this.clip.view3D.moveTo(_local4.x, _local4.y);
this.clip.view3D.lineTo(_local13.x, _local13.y);
this.clip.view3D.lineTo(_local7.x, _local7.y);
this.clip.view3D.lineTo(_local9.x, _local9.y);
this.clip.view3D.lineTo(_local4.x, _local4.y);
this.clip.view3D.lineStyle(1, 16711935, 100);
this.clip.view3D.moveTo(_local2.x, _local2.y);
this.clip.view3D.lineTo(_local11.x, _local11.y);
this.clip.view3D.lineTo(_local5.x, _local5.y);
this.clip.view3D.lineTo(_local6.x, _local6.y);
this.clip.view3D.lineTo(_local2.x, _local2.y);
this.clip.view3D.lineStyle(1, 16711680, 100);
this.clip.view3D.moveTo(_local3.x, _local3.y);
this.clip.view3D.lineTo(_local12.x, _local12.y);
this.clip.view3D.lineTo(_local8.x, _local8.y);
this.clip.view3D.lineTo(_local10.x, _local10.y);
this.clip.view3D.lineTo(_local3.x, _local3.y);
};
Fort.prototype.weaponsFree = function () {
this.weaponsActive = true;
this.setWeapon("cannon");
};
Fort.prototype.setWeapon = function (weapon) {
if (!this.weaponsActive) {
_root.objSounds.play("transition2");
this.clip.cockpit.txtAmmo.text = "WEAPONS LOCKED";
return(undefined);
}
if (this.curWeapon == weapon) {
return(undefined);
}
this.curWeapon = weapon;
switch (weapon) {
case "flechette" :
this.clip.cockpit.txtAmmo.text = "FLECHETTES: " + this.ammoFlechette;
break;
case "hellfire" :
this.clip.cockpit.txtAmmo.text = "HELLFIRES: " + this.ammoHellfire;
break;
case "cannon" :
this.clip.cockpit.txtAmmo.text = "30mm CANNON: " + this.ammoCannon;
}
_root.objSounds.play("bleep-confirm");
};
Fort.prototype.checkKeys = function () {
if (Key.isDown(Keys.Z)) {
this.setWeapon("cannon");
}
if (Key.isDown(Keys.X)) {
this.setWeapon("flechette");
}
if (Key.isDown(Keys.C)) {
this.setWeapon("hellfire");
}
};
Fort.prototype.missedGoal = function () {
if (!_root.objSounds.sounds.transition2.playing) {
_root.objSounds.play("transition2");
}
this.misses++;
trace("Goals missed: " + this.misses);
};
Fort.prototype.setTask = function (taskID, completeFrame) {
this.task = taskID;
this.taskCompleteFrame = completeFrame;
switch (taskID) {
case "hitFortWall" :
this.targets.push(this.clip.level.fortHitZone);
break;
case "warnTruck" :
this.targets.push(this.clip.level.warnHit);
this.targets.push(this.clip.level.truckHit);
}
};
Fort.prototype.taskComplete = function () {
this.task = "idle";
if (this.taskCompleteFrame != undefined) {
this.clip.level.gotoAndPlay(this.taskCompleteFrame);
}
};
Fort.prototype.evtTaskEnterFrame = function () {
switch (this.task) {
case "idle" :
break;
case "hitFortWall" :
break;
case "switchHellfire" :
if (this.curWeapon != "hellfire") {
break;
}
this.taskComplete();
}
};
Fort.prototype.evt = function () {
};
initSounds();
Frame 31
stop();
Symbol 745 MovieClip [__Packages.com.mosesSupposes.fuse.Shortcuts] Frame 0
class com.mosesSupposes.fuse.Shortcuts
{
function Shortcuts () {
}
static function initialize() {
if (shortcuts == null) {
initShortcuts();
}
}
static function doShortcut(obj, methodName) {
initialize();
var _local5 = shortcuts[methodName];
if (_local5 == undefined) {
if (typeof(obj) == "movieclip") {
_local5 = mcshortcuts[methodName];
}
}
if (_local5 == undefined) {
return(null);
}
obj = arguments.shift();
methodName = String(arguments.shift());
if (!(obj instanceof Array)) {
obj = [obj];
}
var _local3 = "";
for (var _local6 in obj) {
var _local2 = String(_local5.apply(obj[_local6], arguments));
if ((_local2 != null) && (_local2.length > 0)) {
if (_local3.length > 0) {
_local3 = (_local2 + "|") + _local3;
} else {
_local3 = _local2;
}
}
}
return(((_local3 == "") ? null : (_local3)));
}
static function addShortcutsTo() {
initialize();
var _local5 = function (o, so) {
for (var _local5 in so) {
var _local2 = so[_local5];
if (_local2.getter || (_local2.setter)) {
o.addProperty(_local5, _local2.getter, _local2.setter);
_global.ASSetPropFlags(o, _local5, 3, 1);
} else {
o[_local5] = _local2;
_global.ASSetPropFlags(o, _local5, 7, 1);
}
}
};
for (var _local7 in arguments) {
var _local4 = arguments[_local7];
if ((_local4 == MovieClip.prototype) || (typeof(_local4) == "movieclip")) {
_local5(_local4, mcshortcuts);
}
_local5(_local4, shortcuts);
}
}
static function removeShortcutsFrom() {
initialize();
var _local5 = function (o, so) {
for (var _local5 in so) {
_global.ASSetPropFlags(o, _local5, 0, 2);
var _local2 = so[_local5];
if (_local2.getter || (_local2.setter)) {
o.addProperty(_local5, null, null);
}
delete o[_local5];
}
};
for (var _local7 in arguments) {
var _local3 = arguments[_local7];
if ((_local3 == MovieClip.prototype) || (typeof(_local3) == "movieclip")) {
_local5(_local3, mcshortcuts);
}
_local5(_local3, shortcuts);
}
}
static function parseStringTypeCallback(callbackStr) {
var evaluate = function (val) {
var first = val.charAt(0);
if ((first == val.slice(-1)) && ((first == "\"") || (first == "'"))) {
return(val.slice(1, -1));
}
if (val == "true") {
return(Object(true));
}
if (val == "false") {
return(Object(false));
}
if (val == "null") {
return(Object(null));
}
if (_global.isNaN(Number(val)) == false) {
return(Object(Number(val)));
}
return(Object(eval (val)));
};
var trimWhite = function (str) {
while (str.charAt(0) == " ") {
str = str.slice(1);
}
while (str.slice(-1) == " ") {
str = str.slice(0, -1);
}
return(str);
};
var evaluateList = function (list) {
var _local11 = [];
var _local4 = 0;
while (_local4 < list.length) {
var _local3 = list[_local4];
_local3 = trimWhite(_local3);
var _local5 = (_local3.charAt(0) == "{") && ((_local3.indexOf("}") > -1) || (_local3.indexOf(":") > -1));
var _local10 = _local3.charAt(0) == "[";
if ((_local5 || (_local10)) == true) {
var _local6 = ((_local5 == true) ? ({}) : ([]));
var _local2 = _local4;
while (_local2 < list.length) {
if (_local2 == _local4) {
_local3 = _local3.slice(1);
}
var _local1;
var _local8 = (_local1.slice(-1) == ((_local5 == true) ? "}" : "]")) || (_local2 == (list.length - 1));
if (_local8 == true) {
_local1 = _local1.slice(0, -1);
}
if ((_local5 == true) && (_local1.indexOf(":") > -1)) {
var _local7 = _local1.split(":");
_local6[trimWhite(_local7[0])] = evaluate(trimWhite(_local7[1]));
} else if (_local10 == true) {
_local6.push(evaluate(trimWhite(_local1)));
}
if (_local8 == true) {
_local11.push(_local6);
_local4 = _local2;
break;
}
_local2++;
}
} else {
_local11.push(evaluate(trimWhite(_local3)));
}
_local4++;
}
return(_local11);
};
var parts = callbackStr.split("(");
var p0 = parts[0];
var p1 = parts[1];
return({func:p0.slice(p0.lastIndexOf(".") + 1), scope:eval (p0.slice(0, p0.lastIndexOf("."))), args:evaluateList(p1.slice(0, p1.lastIndexOf(")")).split(","))});
}
static function initShortcuts() {
shortcuts = new Object();
var methods = {alphaTo:"_alpha", scaleTo:"_scale", sizeTo:"_size", rotateTo:"_rotation", brightnessTo:"_brightness", brightOffsetTo:"_brightOffset", contrastTo:"_contrast", colorTo:"_tint", tintPercentTo:"_tintPercent", colorResetTo:"_colorReset", invertColorTo:"_invertColor"};
var _local4 = _global.com.mosesSupposes.fuse.FuseFMP.getAllShortcuts();
var _local7 = {blur:1, blurX:1, blurY:1, strength:1, shadowAlpha:1, highlightAlpha:1, angle:1, distance:1, alpha:1, color:1};
for (var _local9 in _local4) {
if (_local7[_local4[_local9].split("_")[1]] === 1) {
methods[_local4[_local9] + "To"] = _local4[_local9];
}
}
var _local8 = {__resolve:function (name) {
var propName = methods[name];
return(function () {
var _local4 = _global.com.mosesSupposes.fuse.ZigoEngine.doTween.apply(com.mosesSupposes.fuse.ZigoEngine, new Array(this, propName).concat(arguments));
return(_local4);
});
}};
var _local5 = {__resolve:function (name) {
var _local3 = {setter:function (v) {
_global.com.mosesSupposes.fuse.ZigoEngine.doTween(this, ((name == "_tintString") ? "_tint" : (name)), v, 0);
}};
switch (name) {
case "_colorReset" :
_local3.getter = function () {
return(100 - _global.com.mosesSupposes.fuse.ZigoEngine.getColorKeysObj(this).tintPercent);
};
break;
case "_colorTransform" :
_local3.getter = function () {
return(Color(new Color(this)).getTransform());
};
break;
case "_fade" :
_local3.getter = function () {
return(this._alpha);
};
break;
case "_size" :
_local3.getter = function () {
return(((this._width == this._height) ? (this._width) : null));
};
break;
case "_scale" :
_local3.getter = function () {
return(((this._xscale == this._yscale) ? (this._xscale) : null));
};
break;
default :
_local3.getter = function () {
return(_global.com.mosesSupposes.fuse.ZigoEngine.getColorKeysObj(this)[name.slice(1)]);
};
}
return(_local3);
}};
for (var _local9 in methods) {
shortcuts[_local9] = _local8[_local9];
if ((_local9 != "alphaTo") && (_local9 != "rotateTo")) {
shortcuts[methods[_local9]] = _local5[methods[_local9]];
}
}
shortcuts._tintString = _local5._tintString;
shortcuts._colorTransform = _local5._colorTransform;
shortcuts._fade = _local5._fade;
shortcuts.tween = function (props, endVals, seconds, ease, delay, callback) {
if ((arguments.length == 1) && (typeof(props) == "object")) {
return(com.mosesSupposes.fuse.ZigoEngine.doTween({target:this, action:props}));
}
return(com.mosesSupposes.fuse.ZigoEngine.doTween(this, props, endVals, seconds, ease, delay, callback));
};
shortcuts.removeTween = (shortcuts.stopTween = function (props) {
com.mosesSupposes.fuse.ZigoEngine.removeTween(this, props);
});
shortcuts.removeAllTweens = (shortcuts.stopAllTweens = function () {
com.mosesSupposes.fuse.ZigoEngine.removeTween("ALL");
});
shortcuts.isTweening = function (prop) {
return(com.mosesSupposes.fuse.ZigoEngine.isTweening(this, prop));
};
shortcuts.getTweens = function () {
return(com.mosesSupposes.fuse.ZigoEngine.getTweens(this));
};
shortcuts.lockTween = function () {
com.mosesSupposes.fuse.ZigoEngine.lockTween(this, true);
};
shortcuts.unlockTween = function () {
com.mosesSupposes.fuse.ZigoEngine.lockTween(this, false);
};
shortcuts.isTweenLocked = function () {
return(com.mosesSupposes.fuse.ZigoEngine.isTweenLocked(this));
};
shortcuts.isTweenPaused = function (prop) {
return(com.mosesSupposes.fuse.ZigoEngine.isTweenPaused(this, prop));
};
shortcuts.pauseTween = function (props) {
com.mosesSupposes.fuse.ZigoEngine.pauseTween(this, props);
};
shortcuts.resumeTween = (shortcuts.unpauseTween = function (props) {
com.mosesSupposes.fuse.ZigoEngine.unpauseTween(this, props);
});
shortcuts.pauseAllTweens = function () {
com.mosesSupposes.fuse.ZigoEngine.pauseTween("ALL");
};
shortcuts.resumeAllTweens = (shortcuts.unpauseAllTweens = function () {
com.mosesSupposes.fuse.ZigoEngine.unpauseTween("ALL");
});
shortcuts.ffTween = function (props) {
com.mosesSupposes.fuse.ZigoEngine.ffTween(this, props);
};
shortcuts.rewTween = function (props, suppressStartEvents) {
com.mosesSupposes.fuse.ZigoEngine.rewTween(this, props, false, suppressStartEvents);
};
shortcuts.rewAndPauseTween = function (props, suppressStartEvents) {
com.mosesSupposes.fuse.ZigoEngine.rewTween(this, props, true, suppressStartEvents);
};
shortcuts.skipTweenTo = function (seconds, props) {
com.mosesSupposes.fuse.ZigoEngine.skipTweenTo(seconds, this, props);
};
shortcuts.bezierTo = function (destX, destY, controlX, controlY, seconds, ease, delay, callback) {
return(com.mosesSupposes.fuse.ZigoEngine.doTween(this, "_bezier_", {x:destX, y:destY, controlX:controlX, controlY:controlY}, seconds, ease, delay, callback));
};
shortcuts.colorTransformTo = function (ra, rb, ga, gb, ba, bb, aa, ab, seconds, ease, delay, callback) {
return(com.mosesSupposes.fuse.ZigoEngine.doTween(this, "_colorTransform", {ra:ra, rb:rb, ga:ga, gb:gb, ba:ba, bb:bb, aa:aa, ab:ab}, seconds, ease, delay, callback));
};
shortcuts.tintTo = function (rgb, percent, seconds, ease, delay, callback) {
return(com.mosesSupposes.fuse.ZigoEngine.doTween(this, "_tint", {tint:rgb, percent:percent}, seconds, ease, delay, callback));
};
shortcuts.slideTo = function (destX, destY, seconds, ease, delay, callback) {
return(com.mosesSupposes.fuse.ZigoEngine.doTween(this, "_x,_y", [destX, destY], seconds, ease, delay, callback));
};
shortcuts.fadeIn = function (seconds, ease, delay, callback) {
return(com.mosesSupposes.fuse.ZigoEngine.doTween(this, "_fade", 100, seconds, ease, delay, callback));
};
shortcuts.fadeOut = function (seconds, ease, delay, callback) {
return(com.mosesSupposes.fuse.ZigoEngine.doTween(this, "_fade", 0, seconds, ease, delay, callback));
};
mcshortcuts = new Object();
mcshortcuts._frame = {getter:function () {
return(this._currentframe);
}, setter:function (v) {
this.gotoAndStop(Math.round(v));
}};
mcshortcuts.frameTo = function (endframe, seconds, ease, delay, callback) {
return(com.mosesSupposes.fuse.ZigoEngine.doTween(this, "_frame", ((endframe != undefined) ? (endframe) : (this._totalframes)), seconds, ease, delay, callback));
};
}
static var registryKey = "shortcuts";
static var shortcuts = null;
static var mcshortcuts = null;
}
Symbol 746 MovieClip [__Packages.com.mosesSupposes.fuse.FuseKitCommon] Frame 0
class com.mosesSupposes.fuse.FuseKitCommon
{
static var logOutput;
function FuseKitCommon () {
}
static function _cts() {
return("|_tint|_tintPercent|_brightness|_brightOffset|_contrast|_invertColor|_colorReset|_colorTransform|");
}
static function _resetTo100() {
return("|_alpha|_contrast|_invertColor|_tintPercent|_xscale|_yscale|_scale|");
}
static function _resetTo0() {
return("|_brightness|_brightOffset|_colorReset|_rotation|");
}
static function _underscoreable() {
return(_cts() + "_frame|_x|_y|_xscale|_yscale|_scale|_width|_height|_size|_rotation|_alpha|_fade|_visible|");
}
static function _cbprops() {
return("|skipLevel|cycles|roundResults|extra1|extra2|func|scope|args|startfunc|startscope|startargs|updfunc|updscope|updargs|");
}
static function _fuseEvents() {
return("|onStart|onStop|onPause|onResume|onAdvance|onComplete|");
}
static function _fuseprops() {
return("|command|label|delay|event|eventparams|target|addTarget|trigger|startAt|ease|easing|seconds|duration|time|");
}
static function _validateFuseCommand(c, inGroup, hasArg, outputLevel, simple) {
var _local1 = false;
var _local2 = false;
switch (c) {
case "start" :
case "stop" :
case "pause" :
case "resume" :
case "setStartProps" :
if (inGroup != true) {
_local1 = true;
}
break;
case "delay" :
case "trigger" :
if (simple == true) {
if (hasArg == true) {
_local1 = true;
}
} else {
_local2 = true;
}
inGroup = false;
break;
case "skipTo" :
if (!((hasArg == true) && (inGroup != true))) {
break;
}
_local1 = true;
}
if ((outputLevel > 0) && (_local1 == false)) {
error("109", c, inGroup, _local2);
}
return(_local1);
}
static function output(s) {
if (typeof(logOutput) == "function") {
logOutput(s);
} else {
trace(s);
}
}
static function error(errorCode) {
var _local3 = arguments[1];
var _local4 = arguments[2];
var _local6 = arguments[3];
if (VERBOSE != true) {
output(("[FuseKitCommon#" + errorCode) + "]");
return(undefined);
}
var _local2 = "";
var _local5 = newline;
switch (errorCode) {
case "001" :
_local2 = _local2 + "** ERROR: When using simpleSetup to extend prototypes, you must pass the Shortcuts class. **";
_local2 = _local2 + (_local5 + " import com.mosesSupposes.fuse.*;");
_local2 = _local2 + ((_local5 + " ZigoEngine.simpleSetup(Shortcuts);") + _local5);
break;
case "002" :
_local2 = _local2 + "** ZigoEngine.doShortcut: shortcuts missing. Use the setup commands: import com.mosesSupposes.fuse.*; ZigoEngine.register(Shortcuts); **";
break;
case "003" :
_local2 = _local2 + ((_local5 + "*** Error: DO NOT use #include \"lmc_tween.as\" with this version of ZigoEngine! ***") + _local5);
break;
case "004" :
_local2 = _local2 + (("** ZigoEngine.doTween - too few arguments [" + _local3) + "].");
if (Boolean(_local4) == true) {
_local2 = _local2 + " If you are trying to use Object Syntax without Fuse, pass FuseItem in your register() or simpleSetup() call. **";
} else {
_local2 = _local2 + " Object syntax call failed. **";
}
break;
case "005" :
_local2 = _local2 + (((("** ZigoEngine.doTween - missing targets[" + _local3) + "] and/or props[") + _local4) + "] **");
break;
case "006" :
_local2 = _local2 + (("** Error: easing shortcut string not recognized (\"" + _local3) + "\"). You may need to pass the in PennerEasing class during register or simpleSetup. **");
break;
case "007" :
_local2 = _local2 + (((("- ZigoEngine: Target locked [" + _local3) + "], ignoring tween call [") + _local4) + "]");
break;
case "008" :
_local2 = _local2 + "** You must register the Shortcuts class in order to use easy string-type callback parsing. **";
break;
case "009" :
_local2 = _local2 + (("** ZigoEngine: A callback parameter \"" + _local3) + "\" was not recognized. **");
break;
case "010" :
_local2 = _local2 + ((((("** " + ((_local3 == true) ? "ZigoEngine" : "FuseItem")) + " unable to parse ") + ((_local4 == 1) ? "callback[" : (String(_local4) + " callbacks["))) + _local6) + "]. Try using the syntax {scope:this, func:\"myFunction\"} **");
break;
case "011" :
_local2 = _local2 + (((("- ZigoEngine: Callbacks discarded via skipLevel 2 option [" + _local3) + "|") + _local4) + "].");
break;
case "012" :
_local2 = _local2 + (((((("- Engine set props or ignored no-change tween on: " + _local3) + ", props passed:[") + _local4) + "], endvals passed:[") + _local6) + "]");
break;
case "013" :
_local2 = _local2 + (((((("- Engine added tween on:\n\ttargets:[" + _local3) + "]\n\tprops:[") + _local4) + "]\n\tendvals:[") + _local6) + "]");
break;
case "014" :
_local2 = _local2 + "** Error: easing function passed is not usable with this engine. Functions need to follow the Robert Penner model. **";
break;
case "015" :
_local2 = _local2 + "** Error: The CustomEasing class must be passed during setup (register or simpleSetup) to use custom easing Arrays. **";
break;
case "016" :
_local2 = _local2 + (("[ ZigoEngine.TIME_MULTIPLIER: " + String(Number(Number(_local3) * 100))) + "% ]");
break;
case "101" :
_local2 = _local2 + "** ERROR: Fuse simpleSetup was removed in version 2.0! **";
_local2 = _local2 + (_local5 + " You must now use the following commands:");
_local2 = _local2 + ((_local5 + _local5) + "\timport com.mosesSupposes.fuse.*;");
_local2 = _local2 + (_local5 + "\tZigoEngine.simpleSetup(Shortcuts, PennerEasing, Fuse);");
_local2 = _local2 + ((_local5 + "Note that PennerEasing is optional, and FuseFMP is also accepted. (FuseFMP.simpleSetup is run automatically if included.)") + _local5);
break;
case "102" :
_local2 = _local2 + (((("** Fuse " + _local3) + " index or label not found (") + _local4) + ") or out of range. **");
break;
case "103" :
_local2 = _local2 + (((("** Fuse skipTo (" + _local3) + ") ignored - targets the current index (") + _local4) + "). **");
break;
case "104" :
_local2 = _local2 + (("** Fuse fastForward index out of play range (" + _local3) + ") - skipTo has been called instead. **");
break;
case "105" :
_local2 = _local2 + "** An unsupported Array method was called on Fuse. **";
break;
case "106" :
_local2 = _local2 + "** ERROR: You have not set up Fuse correctly. **";
_local2 = _local2 + (_local5 + "You must now use the following commands (PennerEasing is optional).");
_local2 = _local2 + (_local5 + "\timport com.mosesSupposes.fuse.*;");
_local2 = _local2 + ((_local5 + "\tZigoEngine.simpleSetup(Shortcuts, PennerEasing, Fuse);") + _local5);
break;
case "107" :
_local2 = _local2 + "** Fuse :: id not found - Aborting open(). **";
break;
case "108" :
_local2 = _local2 + "** Fuse.startRecent: No recent Fuse found to start! **";
break;
case "109" :
_local2 = _local2 + (("** Command \"" + _local3) + "\" discarded. ");
if (_local4 == true) {
_local2 = _local2 + "Not allowed within a group. **";
} else if (_local6 == true) {
_local2 = _local2 + (("Not supported in Object Syntax, use the " + _local3) + " property instead. **");
} else {
_local2 = _local2 + "The command may be unrecognized or missing an argument. **";
}
break;
case "110" :
_local2 = _local2 + (((("** " + _local3) + " illegal Fuse property discarded:\"") + _local4) + "\". Bezier keywords other than x and y cannot be set as start values. **");
break;
case "112" :
_local2 = _local2 + "** Fuse: missing com.mosesSupposes.fuse.ZigoEngine! Cannot tween. **";
break;
case "113" :
_local2 = _local2 + "** FuseItem: A callback has been discarded. Actions with a command may only contain: label, delay, scope, args. **";
break;
case "115" :
_local2 = _local2 + ((_local3 + " overlapping prop discarded: ") + _local4);
break;
case "116" :
_local2 = _local2 + ("** FuseItem Error: Delays within groups (arrays) and start/update callbacks are not supported when using Fuse without ZigoEngine. Although you need to restructure your Fuse, it should be possible to achieve the same results. **" + _local5);
break;
case "117" :
_local2 = _local2 + (("** " + _local3) + ": infinite cycles are not allowed within Fuses - discarded. **");
break;
case "118" :
_local2 = _local2 + ((("** " + _local3) + ": No targets found!") + ((_local4 == true) ? " [Unable to set start props] **" : " [Skipping tween parameters in this action] **"));
break;
case "119" :
_local2 = _local2 + ((((("** " + _local3) + ": ") + ((_local4 == 1) ? "" : (_local4 + " actions in the group"))) + " missing targets") + ((_local6 == true) ? " during setStartProps **" : " **"));
break;
case "120" :
_local2 = _local2 + (((("** " + _local3) + ": conflict with \"") + _local4) + "\". Property might be doubled within a grouped-action array. **");
break;
case "121" :
_local2 = _local2 + "** Fuse timecode formatting requires \"00:\" formatting (example:\"01:01:33\" yields 61.33 seconds.) **";
break;
case "122" :
_local2 = _local2 + (("** Event \"" + _local3) + "\" reserved by Fuse. **");
break;
case "123" :
_local2 = _local2 + (("** A Fuse event parameter failed in " + _local3) + " **");
break;
case "124" :
_local2 = _local2 + (((("** " + _local3) + ": trigger:") + _local4) + " ignored - only one trigger is allowed per action **");
break;
case "125" :
_local2 = _local2 + (_local3 + " Warning - fastForward hit an item during its tween cycle, may malfunction.");
break;
case "201" :
_local2 = _local2 + (("**** FuseFMP cannot initialize argument " + _local3) + " (BitmapFilters cannot be applied to this object type) ****");
break;
case "202" :
_local2 = _local2 + (((("** FuseFMP error: A " + _local3) + " could not be created for ") + _local4) + " **");
break;
case "203" :
_local2 = _local2 + (("** FuseFMP.setFilterProps - too few arguments passed (" + _local3) + ") - minimum 2 required. **");
break;
case "204" :
_local2 = _local2 + (("** FuseFMP.setFilterProps could not locate the filter passed. (" + _local3) + ") **");
}
output(_local2);
}
static function parseCallback(callback, targets, outputLevel, callerIsEngine, addprefix) {
if (callback._vcb == true) {
return(callback);
}
var validCBs = {_vcb:true, skipLevel:_global.com.mosesSupposes.fuse.ZigoEngine.SKIP_LEVEL, cycles:1};
if (callback == undefined) {
return(validCBs);
}
var cbErrors = [];
if (typeof(callback) == "object") {
if (((callback.skipLevel != undefined) && (typeof(callback.skipLevel) == "number")) && (callback.skipLevel != _global.com.mosesSupposes.fuse.ZigoEngine.SKIP_LEVEL)) {
if ((callback.skipLevel >= 0) && (callback.skipLevel <= 2)) {
validCBs.skipLevel = callback.skipLevel;
}
}
if (callback.cycles != undefined) {
if ((typeof(callback.cycles) == "number") && (callback.cycles > -1)) {
validCBs.cycles = callback.cycles;
} else if (callback.cycles.toUpperCase() == "LOOP") {
validCBs.cycles = 0;
}
}
if (callback.extra1 != undefined) {
validCBs.extra1 = callback.extra1;
}
if (callback.extra2 != undefined) {
validCBs.extra2 = callback.extra2;
}
if ((callback.roundResults === true) || (callback.roundResults === false)) {
validCBs.roundResults = callback.roundResults;
}
} else {
callback = {func:callback};
}
var prefixes = ["start", "upd", ""];
var easyfuncparse = _global.com.mosesSupposes.fuse.Shortcuts.parseStringTypeCallback;
for (var i in prefixes) {
var prefix = prefixes[i];
var fstr = callback[prefix + "func"];
if (((fstr != undefined) && (typeof(fstr) == "string")) && (fstr.indexOf("(") > -1)) {
if (easyfuncparse != undefined) {
var efc = easyfuncparse(fstr);
if (efc.func != undefined) {
callback[prefix + "scope"] = efc.scope;
callback[prefix + "func"] = efc.func;
callback[prefix + "args"] = efc.args;
}
} else if (outputLevel > 0) {
error("008");
}
}
}
var basescope = callback.scope;
for (var i in callback) {
var fi = i.toLowerCase().indexOf("func");
if (fi > -1) {
var prefix = i.slice(0, fi);
var func = callback[i];
var args = callback[prefix + "args"];
var scope = ((callback[prefix + "scope"] == undefined) ? (basescope) : (callback[prefix + "scope"]));
if ((typeof(func) == "string") && (scope[func] == undefined)) {
for (var j in targets) {
var targ = targets[j];
if (typeof(targ[func]) == "function") {
scope = targ;
break;
}
if (typeof(targ._parent[func]) == "function") {
scope = targ._parent;
break;
}
}
if ((scope == undefined) && (_level0[func] != undefined)) {
scope = _level0;
}
if ((scope == undefined) && (_global[func] != undefined)) {
scope = _global;
}
}
if (typeof(func) != "function") {
if (typeof(scope[String(func)]) == "function") {
func = scope[String(func)];
} else {
func = eval (String(func));
}
}
if (func == undefined) {
cbErrors.push(String((((((((addprefix == null) ? (i) : (addprefix + i)) + ":") + ((typeof(callback[i]) == "string") ? (("\"" + callback[i]) + "\"") : (callback[i]))) + "/") + prefix) + "scope:") + scope));
} else {
if ((args != undefined) && (!(args instanceof Array))) {
args = [args];
}
if (prefix == "") {
prefix = "end";
}
validCBs[prefix] = {s:scope, f:func, a:args};
if (callerIsEngine == true) {
validCBs[prefix].id = ++cbTicker;
}
if (prefix == "start") {
validCBs.start.fired = false;
}
}
} else if (_cbprops().indexOf(("|" + i) + "|") == -1) {
error("009", i);
}
}
if ((cbErrors.length > 0) && (outputLevel > 0)) {
if (outputLevel > 0) {
error("010", callerIsEngine, cbErrors.length, cbErrors.toString());
}
}
return(validCBs);
}
static var VERSION = "Fuse Kit 2.1.4 Copyright (c) 2006 Moses Gunesch, MosesSupposes.com under MIT Open Source License";
static var VERBOSE = true;
static var ALL = "ALL";
static var ALLCOLOR = "ALLCOLOR";
static var cbTicker = 0;
}
Symbol 747 MovieClip [__Packages.com.mosesSupposes.fuse.ZigoEngine] Frame 0
class com.mosesSupposes.fuse.ZigoEngine
{
static var extensions, updateTime, tweenHolder, instance, _listeners, broadcastMessage, updateIntId;
function ZigoEngine () {
}
static function addListener(handler) {
AsBroadcaster.initialize(com.mosesSupposes.fuse.ZigoEngine);
addListener(handler);
}
static function removeListener(handler) {
}
static function isPlaying() {
return(_playing);
}
static function simpleSetup(shortcutsClass) {
if (arguments.length > 0) {
register.apply(com.mosesSupposes.fuse.ZigoEngine, arguments);
}
_global.ZigoEngine = com.mosesSupposes.fuse.ZigoEngine;
if (extensions.fuse != undefined) {
_global.Fuse = extensions.fuse;
}
if (extensions.fuseFMP != undefined) {
extensions.fuseFMP.simpleSetup();
}
initialize(MovieClip.prototype, Button.prototype, TextField.prototype);
if (extensions.shortcuts == undefined) {
com.mosesSupposes.fuse.FuseKitCommon.error("001");
}
}
static function register(classReference) {
if (extensions == undefined) {
extensions = {};
}
var _local3 = "|fuse|fuseItem|fuseFMP|shortcuts|pennerEasing|customEasing|";
for (var _local4 in arguments) {
var _local2 = arguments[_local4].registryKey;
if ((extensions[_local2] == undefined) && (_local3.indexOf(("|" + _local2) + "|") > -1)) {
extensions[_local2] = arguments[_local4];
if ((_local2 == "fuseFMP") || (_local2 == "shortcuts")) {
Object(extensions[_local2]).initialize();
}
}
}
}
static function initialize(target) {
if (arguments.length > 0) {
initializeTargets.apply(com.mosesSupposes.fuse.ZigoEngine, arguments);
if (extensions.shortcuts != undefined) {
extensions.shortcuts.addShortcutsTo.apply(extensions.shortcuts, arguments);
}
}
}
static function deinitialize(target) {
if ((arguments.length == 0) || (target == null)) {
arguments.push(MovieClip.prototype, Button.prototype, TextField.prototype);
}
deinitializeTargets.apply(com.mosesSupposes.fuse.ZigoEngine, arguments);
if (extensions.shortcuts != undefined) {
extensions.shortcuts.removeShortcutsFrom.apply(extensions.shortcuts, arguments);
}
}
static function getUpdateInterval() {
return(updateTime);
}
static function setUpdateInterval(time) {
if (_playing) {
setup(true);
updateTime = time;
setup();
} else {
updateTime = time;
}
}
static function getControllerDepth() {
return(tweenHolder.getDepth());
}
static function setControllerDepth(depth) {
if ((depth == null) || (_global.isNaN(depth) == true)) {
depth = 6789;
}
if (Object(tweenHolder).proof != null) {
tweenHolder.swapDepths(depth);
} else {
tweenHolder = _root.createEmptyMovieClip("ZigoEnginePulse", depth);
}
}
static function doShortcut(targets, methodName) {
if (extensions.shortcuts == undefined) {
if (OUTPUT_LEVEL > 0) {
com.mosesSupposes.fuse.FuseKitCommon.error("002");
}
return(null);
}
return(extensions.shortcuts.doShortcut.apply(extensions.shortcuts, arguments));
}
static function doTween(targets, props, endvals, seconds, ease, delay, callback) {
if (extensions.fuse.addBuildItem(arguments) == true) {
return(null);
}
if (TIME_MULTIPLIER != prevTimeMult) {
TIME_MULTIPLIER = Math.abs(TIME_MULTIPLIER);
if (_global.isNaN(TIME_MULTIPLIER) == true) {
TIME_MULTIPLIER = 1;
}
if (OUTPUT_LEVEL > 0) {
com.mosesSupposes.fuse.FuseKitCommon.error("016", TIME_MULTIPLIER);
}
prevTimeMult = TIME_MULTIPLIER;
}
if ((instance == undefined) || ((Object(tweenHolder).proof == undefined) && (updateTime == undefined))) {
if ((MovieClip.prototype.tween != null) && (typeof(_global.$tweenManager) == "object")) {
com.mosesSupposes.fuse.FuseKitCommon.error("003");
}
instance = new com.mosesSupposes.fuse.ZManager();
_playing = false;
}
var _local4 = instance.paramsObj(targets, props, endvals, true);
var _local7 = (((_local4.tg[0] == null) || (_local4.tg.length == 0)) ? undefined : (_local4.tg));
if (((_local4.pa == undefined) || (_local7 == undefined)) || (arguments.length < 3)) {
if (((extensions.fuseItem != null) && (arguments.length == 1)) && (typeof(arguments[0]) == "object")) {
return(extensions.fuseItem.doTween(arguments[0]));
}
if (OUTPUT_LEVEL > 0) {
if (arguments.length < 3) {
com.mosesSupposes.fuse.FuseKitCommon.error("004", (((arguments.length == 1) && (arguments[0] == null)) ? "1 (null)" : (String(arguments.length))), Boolean(extensions.fuseItem == null));
} else {
com.mosesSupposes.fuse.FuseKitCommon.error("005", _local7.toString(), _local4.pa.toString());
}
}
return(null);
}
if (_playing != true) {
setup();
}
if ((seconds == null) || (_global.isNaN(seconds) == true)) {
seconds = DURATION || 1;
} else if (seconds < 0.01) {
seconds = 0;
}
seconds = seconds * TIME_MULTIPLIER;
if (((delay < 0.01) || (delay == null)) || (_global.isNaN(delay) == true)) {
delay = 0;
}
delay = delay * TIME_MULTIPLIER;
var _local12 = com.mosesSupposes.fuse.FuseKitCommon.parseCallback(callback, _local7, OUTPUT_LEVEL, true);
var _local9;
if (typeof(ease) == "function") {
if (typeof(Function(ease).call(null, 1, 1, 1, 1)) == "number") {
_local9 = Function(ease);
} else if (OUTPUT_LEVEL > 0) {
com.mosesSupposes.fuse.FuseKitCommon.error("014", ease);
}
} else if ((ease == null) || (ease == "")) {
if (EASING instanceof Function) {
_local9 = Function(EASING);
} else if (extensions.pennerEasing != undefined) {
ease = EASING;
}
}
if ((typeof(ease) == "string") && (ease != "")) {
if (extensions.pennerEasing[ease] != undefined) {
_local9 = extensions.pennerEasing[ease];
} else if (OUTPUT_LEVEL > 0) {
com.mosesSupposes.fuse.FuseKitCommon.error("006", ease);
}
} else if (ease instanceof Array) {
if (extensions.customEasing != undefined) {
_local12.extra1 = ease;
if (typeof(ease[0]) == "number") {
_local9 = extensions.customEasing.precalced;
} else {
_local9 = extensions.customEasing.fromCurve;
}
} else if (OUTPUT_LEVEL > 0) {
com.mosesSupposes.fuse.FuseKitCommon.error("015", ease);
}
}
if (typeof(_local9) != "function") {
_local9 = function (t, b, c, d) {
t = (t / d) - 1;
return((c * (((((t * t) * t) * t) * t) + 1)) + b);
};
}
if (_listeners.length > 0) {
broadcastMessage.call(com.mosesSupposes.fuse.ZigoEngine, "onTweenAdd", _local7, _local4.pa, _local4.va, seconds, _local9, delay, _local12);
}
var _local6 = "";
for (var _local13 in _local7) {
var _local3 = _local7[_local13];
if (_local3.__zigoID__ == null) {
initializeTargets(_local3);
} else if (instance.getStatus("locked", _local3) == true) {
if (OUTPUT_LEVEL > 0) {
com.mosesSupposes.fuse.FuseKitCommon.error("007", ((_local3._name != undefined) ? (_local3._name) : (_local3.toString())), _local4.pa.toString());
}
continue;
}
var _local5 = instance.addTween(_local3, _local4.pa, _local4.va, seconds, _local9, delay, _local12);
_local6 = ((_local5 == null) ? "|" : (_local5 + "|")) + _local6;
}
_local6 = _local6.slice(0, -1);
return((((_local6 == "") || (_local6 == "|")) ? null : (_local6)));
}
static function removeTween(targs, props) {
instance.removeTween(targs, props);
}
static function isTweening(targ, prop) {
return(Boolean(instance.getStatus("active", targ, prop)));
}
static function getTweens(targ) {
if (instance == undefined) {
return(0);
}
return(Number(instance.getStatus("count", targ)));
}
static function lockTween(targ, setLocked) {
instance.alterTweens("lock", targ, setLocked == true);
}
static function isTweenLocked(targ) {
return(Boolean(instance.getStatus("locked", targ)));
}
static function ffTween(targs, props, suppressEndEvents) {
instance.alterTweens("ff", targs, props, null, suppressEndEvents);
}
static function skipTweenTo(seconds, targs, props) {
instance.alterTweens("skipTo", targs, props, false, false, seconds);
}
static function rewTween(targs, props, pauseFlag, suppressStartEvents) {
instance.alterTweens("rewind", targs, props, pauseFlag, suppressStartEvents);
}
static function isTweenPaused(targ, prop) {
return(Boolean(instance.getStatus("paused", targ, prop)));
}
static function pauseTween(targs, props) {
instance.alterTweens("pause", targs, props);
}
static function unpauseTween(targs, props) {
instance.alterTweens("unpause", targs, props);
}
static function resumeTween(targs, props) {
instance.alterTweens("unpause", targs, props);
}
static function setColorByKey(targetObj, type, amt, rgb) {
new Color(targetObj).setTransform(getColorTransObj(type, amt, rgb));
}
static function getColorTransObj(type, amt, rgb) {
switch (type) {
case "brightness" :
var _local3 = 100 - Math.abs(amt);
var _local4 = ((amt > 0) ? (255 * (amt / 100)) : 0);
return({ra:_local3, rb:_local4, ga:_local3, gb:_local4, ba:_local3, bb:_local4});
case "brightOffset" :
return({ra:100, rb:255 * (amt / 100), ga:100, gb:255 * (amt / 100), ba:100, bb:255 * (amt / 100)});
case "contrast" :
return({ra:amt, rb:128 - (1.28 * amt), ga:amt, gb:128 - (1.28 * amt), ba:amt, bb:128 - (1.28 * amt)});
case "invertColor" :
return({ra:100 - (2 * amt), rb:amt * 2.55, ga:100 - (2 * amt), gb:amt * 2.55, ba:100 - (2 * amt), bb:amt * 2.55});
case "tint" :
if (rgb == null) {
break;
}
var _local5;
if (typeof(rgb) == "string") {
if (rgb.charAt(0) == "#") {
rgb = rgb.slice(1);
}
rgb = ((rgb.charAt(1).toLowerCase() != "x") ? ("0x" + rgb) : (rgb));
}
_local5 = Number(rgb);
return({ra:100 - amt, rb:(_local5 >> 16) * (amt / 100), ga:100 - amt, gb:((_local5 >> 8) & 255) * (amt / 100), ba:100 - amt, bb:(_local5 & 255) * (amt / 100)});
}
return({rb:0, ra:100, gb:0, ga:100, bb:0, ba:100});
}
static function getColorKeysObj(targOrTransObj) {
var _local1 = ((targOrTransObj.ra != undefined) ? (targOrTransObj) : (new Color(targOrTransObj).getTransform()));
var _local6 = (_local1.ra == _local1.ga) && (_local1.ga == _local1.ba);
var _local8 = (_local1.rb == _local1.gb) && (_local1.gb == _local1.bb);
var _local3 = {tintPercent:Number(((_local6 == true) ? (100 - _local1.ra) : 0))};
if (_local3.tintPercent != 0) {
var _local5 = 100 / _local3.tintPercent;
_local3.tint = (((_local1.rb * _local5) << 16) | ((_local1.gb * _local5) << 8)) | (_local1.bb * _local5);
var _local2 = _local3.tint.toString(16);
var _local4 = 6 - _local2.length;
while ((_local4--) > 0) {
_local2 = "0" + _local2;
}
_local3.tintString = "0x" + _local2.toUpperCase();
}
if ((_local6 == true) && (_local8 == true)) {
if (_local1.ra < 0) {
_local3.invertColor = _local1.rb * 0.392156862745098;
} else if ((_local1.ra == 100) && (_local1.rb != 0)) {
_local3.brightOffset = _local1.rb * 0.392156862745098;
}
if (_local1.ra != 100) {
if ((_local1.rb == 0) || ((_local1.rb != 0) && (((255 * ((100 - _local1.ra) / 100)) - _local1.rb) <= 1))) {
_local3.brightness = ((_local1.rb != 0) ? (100 - _local1.ra) : (_local1.ra - 100));
}
if (((128 - (1.28 * _local1.ra)) - _local1.rb) <= 1) {
_local3.contrast = _local1.ra;
}
}
}
return(_local3);
}
static function initializeTargets() {
for (var _local5 in arguments) {
var _local4 = arguments[_local5];
if ((((_local4 == MovieClip.prototype) || (_local4 == Button.prototype)) || (_local4 == TextField.prototype)) || (_local4 == Object.prototype)) {
if (_local4.oldAddListener == undefined) {
if (_local4 == TextField.prototype) {
_local4.oldAddListener = _local4.addListener;
_global.ASSetPropFlags(_local4, "oldAddListener", 7, 1);
}
_local4.addListener = function (o) {
if (this.__zigoID__ == undefined) {
com.mosesSupposes.fuse.ZigoEngine.initializeTargets(this);
}
if (this instanceof TextField) {
Function(this.oldAddListener).call(this, o);
} else {
this.addListener(o);
}
};
if (_local4 == MovieClip.prototype) {
_global.ASSetPropFlags(_local4, "addListener", 7, 1);
}
}
} else if (_local4.__zigoID__ == undefined) {
_local4.__zigoID__ = zigoIDs;
_global.ASSetPropFlags(_local4, "__zigoID__", 7, 1);
zigoIDs++;
if ((_local4._listeners == null) || (_local4.addListener == null)) {
AsBroadcaster.initialize(_local4);
}
}
}
}
static function deinitializeTargets() {
for (var _local4 in arguments) {
var _local3 = arguments[_local4];
if (_local3.__zigoID__ != undefined) {
_global.ASSetPropFlags(_local3, "__zigoID__,_listeners,broadcastMessage,addListener,removeListener", 0, 2);
delete _local3.__zigoID__;
delete _local3._listeners;
delete _local3.broadcastMessage;
delete _local3.addListener;
delete _local3.removeListener;
}
if (_local3.oldAddListener != undefined) {
_global.ASSetPropFlags(_local3, "oldAddListener", 0, 2);
_local3.addListener = _local3.oldAddListener;
delete _local3.oldAddListener;
}
}
}
static function __mgrRelay(inst, method, args) {
if (inst == instance) {
Function(com.mosesSupposes.fuse.ZigoEngine[method]).apply(com.mosesSupposes.fuse.ZigoEngine, args);
}
}
static function setup(deinitFlag) {
if (deinitFlag == true) {
_playing = false;
clearInterval(updateIntId);
delete tweenHolder.onEnterFrame;
return(undefined);
}
instance.cleanUp();
clearInterval(updateIntId);
delete updateIntId;
if ((updateTime != null) && (updateTime > 0)) {
updateIntId = setInterval(instance, "update", updateTime);
} else {
if (Object(tweenHolder).proof == null) {
setControllerDepth(6789);
Object(tweenHolder).proof = 1;
}
var _inst = instance;
tweenHolder.onEnterFrame = function () {
_inst.update.call(_inst);
};
}
_playing = true;
instance.now = getTimer();
}
static var VERSION = com.mosesSupposes.fuse.FuseKitCommon.VERSION + ", ZigoEngine based on concepts by L.Zigo";
static var EASING = "easeOutQuint";
static var DURATION = 1;
static var TIME_MULTIPLIER = 1;
static var ROUND_RESULTS = false;
static var OUTPUT_LEVEL = 1;
static var AUTOSTOP = false;
static var SKIP_LEVEL = 0;
static var _playing = false;
static var zigoIDs = 0;
static var prevTimeMult = 1;
}
Symbol 748 MovieClip [__Packages.com.mosesSupposes.fuse.ZManager] Frame 0
class com.mosesSupposes.fuse.ZManager
{
var tweens, now;
function ZManager () {
tweens = {};
numTweens = 0;
}
function addTween(obj, props, endvals, seconds, ease, delay, callback) {
var _local24 = ((callback.skipLevel == undefined) ? 0 : (callback.skipLevel));
var _local44 = ((callback.cycles == undefined) ? 1 : (callback.cycles));
var _local30 = callback.extra1;
var _local29 = callback.extra2;
var _local23 = [];
var _local14 = _global.com.mosesSupposes.fuse.FuseFMP;
var _local43 = String(("|" + _local14.getAllShortcuts().join("|")) + "|");
var _local42 = com.mosesSupposes.fuse.FuseKitCommon._cts();
var _local25 = "";
var _local28 = "";
var _local22 = obj.__zigoID__;
var _local7 = tweens[String(_local22)];
if ((_local7 != undefined) && (com.mosesSupposes.fuse.ZigoEngine.AUTOSTOP == true)) {
if (obj._listeners.length > 0) {
for (var _local40 in _local7.props) {
_local23.unshift(_local40);
}
}
_local7.numProps = 0;
cleanUp(true);
}
for (var _local47 in props) {
var _local5 = props[_local47];
var _local4 = endvals[_local47];
var _local15 = 0;
if (_local5 == "_fade") {
_local5 = "_alpha";
_local15 = ((_local4 < 50) ? -1 : 1);
}
var _local16 = _local42.indexOf(("|" + _local5) + "|") > -1;
var _local18 = _local7.colorProp;
if (_local7 != undefined) {
if ((_local16 == true) && (_local18 != undefined)) {
_local23.unshift(_local18);
delete _local7.props[_local18];
delete _local7.colorProp;
_local7.numProps--;
} else if (_local7.props[_local5] != undefined) {
_local23.unshift(_local5);
delete _local7[_local5];
_local7.numProps--;
}
}
var _local3 = {c:-1, fmp:-1, complex:-1};
var _local11 = ((_local24 == 0) && ((seconds + delay) == 0)) || ((_local24 > 0) && (seconds == 0));
var _local10 = false;
var _local13 = (_local14 != undefined) && (_local43.indexOf(("|" + _local5) + "|") > -1);
var _local19 = (_local5.toLowerCase().indexOf("colors") > -1) && (_local4 instanceof Array);
var _local27 = ((_local13 == true) && (_local5.indexOf("lor") > -1)) && (_local5.charAt(2) != "l");
if (_local13 == true) {
_local3.fmp = _local14;
_local3.ps = _local14.getFilterProp(obj, _local5, true);
_local3.special = true;
}
if (((_local16 == true) || (_local19 == true)) || (_local27 && (_local11 == false))) {
_local3.complex = 1;
if (_local16 == true) {
_local3.c = new Color(obj);
_local3.ps = Color(_local3.c).getTransform();
var _local17 = ((((_local5 == "_tint") || (_local5 == "_tintPercent")) || (_local5 == "_colorReset")) ? "tint" : (_local5.slice(1)));
var _local9 = null;
var _local12 = null;
if (_local5 != "_colorTransform") {
if (_local17 == "tint") {
if (typeof(_local4) == "object") {
_local12 = _local4.tint;
_local9 = ((_global.isNaN(_local4.percent) == true) ? 100 : (_local4.percent));
} else if ((_local5 == "_tintPercent") || (_local5 == "_colorReset")) {
var _local20 = com.mosesSupposes.fuse.ZigoEngine.getColorKeysObj(obj).tintPercent;
if (_local5 == "_colorReset") {
_local9 = Math.min(_local20, 100 - Math.abs(Number(_local4)));
} else {
_local9 = ((typeof(_local4) == "string") ? ((_local20 || 0) + Number(_local4)) : Number(_local4));
}
_local9 = Math.max(0, Math.min(_local9, 100));
_local12 = com.mosesSupposes.fuse.ZigoEngine.getColorKeysObj(obj).tint || 0;
} else {
_local12 = _local4;
_local9 = 100;
}
} else {
_local9 = ((typeof(_local4) == "string") ? ((com.mosesSupposes.fuse.ZigoEngine.getColorKeysObj(obj)[_local17] || 0) + Number(_local4)) : (_local4));
}
_local4 = com.mosesSupposes.fuse.ZigoEngine.getColorTransObj(_local17, _local9, _local12);
}
if (_local11 == true) {
if (_local5 == "_colorTransform") {
Color(_local3.c).setTransform(_local4);
} else {
com.mosesSupposes.fuse.ZigoEngine.setColorByKey(obj, _local17, _local9, _local12);
}
} else {
var _local21 = getChangeObj(_local3.ps, _local4, false, false);
_local3.ch = _local21.map;
if (_local21.changed == true) {
_local10 = true;
}
}
} else if (_local11 == true) {
_local14.setFilterProp(obj, _local5, _local4);
} else if (_local19 == true) {
_local3.c = 2;
_local3.ch = [];
for (var _local40 in _local4) {
if (_local4[_local40] != null) {
if (_local3.ps == null) {
_local3.ps = [];
}
_local3.ps[_local40] = com.mosesSupposes.fuse.ZigoEngine.getColorTransObj("tint", 100, ((_local3.ps[_local40] == null) ? obj[_local5][_local40] : _local3.ps[_local40]));
var _local21 = getChangeObj(_local3.ps[_local40], com.mosesSupposes.fuse.ZigoEngine.getColorTransObj("tint", 100, _local4[_local40]), true, false);
_local3.ch[_local40] = _local21.map;
if (_local21.changed == true) {
_local10 = true;
}
}
}
} else {
_local3.c = 1;
_local3.ps = com.mosesSupposes.fuse.ZigoEngine.getColorTransObj("tint", 100, _local3.ps);
var _local21 = getChangeObj(_local3.ps, com.mosesSupposes.fuse.ZigoEngine.getColorTransObj("tint", 100, _local4), true, false);
_local3.ch = _local21.map;
if (_local21.changed == true) {
_local10 = true;
}
}
} else if (_local5 == "_bezier_") {
removeTween(obj, "_x,_y", true);
if (_local11 == true) {
if ((_local4.x != null) && (_global.isNaN(Number(_local4.x)) == false)) {
obj._x = ((typeof(_local4.x) == "string") ? (obj._x + Number(_local4.x)) : (_local4.x));
}
if ((_local4.y != null) && (_global.isNaN(Number(_local4.y)) == false)) {
obj._y = ((typeof(_local4.y) == "string") ? (obj._y + Number(_local4.y)) : (_local4.y));
}
} else {
_local3.special = true;
_local3.ps = 0;
_local3.ch = 1;
_local3.bz = {sx:obj._x, sy:obj._y};
if ((_local4.x == null) || (_global.isNaN(Number(_local4.x)))) {
_local4.x = _local3.bz.sx;
}
if ((_local4.y == null) || (_global.isNaN(Number(_local4.y)))) {
_local4.y = _local3.bz.sy;
}
_local3.bz.chx = ((typeof(_local4.x) == "string") ? (Number(_local4.x)) : (_local4.x - _local3.bz.sx));
if (_global.isNaN(_local3.bz.chx) == true) {
_local3.bx.chx = 0;
}
_local3.bz.chy = ((typeof(_local4.y) == "string") ? (Number(_local4.y)) : (_local4.y - _local3.bz.sy));
if (_global.isNaN(_local3.bz.chy) == true) {
_local3.bx.chy = 0;
}
if ((_local4.controlX == null) || (_global.isNaN(Number(_local4.controlX)))) {
_local3.bz.ctrlx = _local3.bz.sx + (_local3.bz.chx / 2);
} else {
_local3.bz.ctrlx = ((typeof(_local4.controlX) == "string") ? (_local3.bz.sx + Number(_local4.controlX)) : (_local4.controlX));
}
if ((_local4.controlY == null) || (_global.isNaN(Number(_local4.controlY)))) {
_local3.bz.ctrly = _local3.bz.sy + (_local3.bz.chy / 2);
} else {
_local3.bz.ctrly = ((typeof(_local4.controlY) == "string") ? (_local3.bz.sy + Number(_local4.controlY)) : (_local4.controlY));
}
_local3.bz.ctrlx = _local3.bz.ctrlx - _local3.bz.sx;
_local3.bz.ctrly = _local3.bz.ctrly - _local3.bz.sy;
_local10 = (_local3.bz.chx + _local3.bz.chy) != 0;
}
} else {
if (typeof(_local4) == "object") {
_local3.complex = ((_local4 instanceof Array) ? 0 : 1);
}
if ((_local5 == "_x") || (_local5 == "_y")) {
removeTween(obj, "_bezier_", true);
}
if ((_local5 == "_frame") && (typeof(obj) == "movieclip")) {
_local3.ps = obj._currentframe;
_local3.special = true;
} else if (_local13 == false) {
if (_local3.complex > -1) {
_local3.ps = ((_local3.complex == 0) ? ([]) : ({}));
for (var _local40 in _local4) {
_local3.ps[_local40] = obj[_local5][_local40];
}
} else {
_local3.ps = obj[_local5];
}
}
if (_local11 == true) {
if (_local13 == true) {
_local14.setFilterProp(obj, _local5, ((typeof(_local4) == "string") ? (_local3.ps + Number(_local4)) : (_local4)));
} else if (_local3.complex > -1) {
for (var _local40 in _local4) {
if ((_local4[_local40] != null) && (_global.isNaN(Number(_local4[_local40])) == false)) {
obj[_local5][_local40] = ((typeof(_local4[_local40]) == "string") ? (_local3.ps[_local40] + Number(_local4[_local40])) : _local4[_local40]);
if (_global.isNaN(obj[_local5][_local40]) == true) {
obj[_local5][_local40] = 0;
}
}
}
} else {
obj[_local5] = ((typeof(_local4) == "string") ? (_local3.ps + Number(_local4)) : (_local4));
if (_local15 == 1) {
obj._visible = true;
} else if (_local15 == -1) {
obj._visible = false;
}
}
} else if (_local3.complex > -1) {
var _local21 = getChangeObj(_local3.ps, _local4, _local13, _local3.complex == 0);
_local3.ch = _local21.map;
if (_local21.changed == true) {
_local10 = true;
}
} else {
if ((_local4 == null) || (_global.isNaN(Number(_local4)))) {
_local4 = _local3.ps;
}
_local3.ch = ((typeof(_local4) == "string") ? (Number(_local4)) : (Number(_local4) - _local3.ps));
if (_global.isNaN(_local3.ch) == true) {
_local3.ch = 0;
}
_local10 = _local3.ch != 0;
}
}
if (((_local24 == 0) && ((_local10 == true) || (_local11 == false))) || ((_local10 == true) && (_local11 == false))) {
if ((_local3.complex > -1) && (!(_local3.c === 2))) {
_local3.ps = [_local3.ps];
_local3.ch = [_local3.ch];
}
_local3.ts = now + (delay * 1000);
_local3.pt = -1;
_local3.d = seconds * 1000;
_local3.ef = ease;
_local3.sf = false;
_local3.cycles = _local44;
if (_local30 != undefined) {
_local3.e1 = _local30;
}
if (_local29 != undefined) {
_local3.e2 = _local29;
}
_local3.v = _local15;
if (callback.start != undefined) {
_local3.scb = callback.start;
}
if (callback.upd != undefined) {
_local3.ucb = callback.upd;
}
if (callback.end != undefined) {
_local3.ecb = callback.end;
}
if (callback.roundResults != undefined) {
_local3.rr = callback.roundResults;
}
if (tweens[String(_local22)] == undefined) {
_local7 = (tweens[String(_local22)] = {numProps:0, locked:false, targ:obj, targID:String(("\"" + ((obj._name != undefined) ? (obj._name) : (obj.toString()))) + "\""), targZID:_local22, props:{}});
numTweens++;
}
if (_local16 == true) {
_local7.colorProp = _local5;
}
_local7.props[_local5] = _local3;
_local7.numProps++;
_local25 = (_local5 + ",") + _local25;
_local28 = (((typeof(_local4) == "string") ? (("\"" + _local4) + "\"") : (_local4)) + ",") + _local28;
}
_local3 = undefined;
}
if ((_local7 == undefined) || (_local7.numProps <= 0)) {
cleanUp();
}
if ((_local23.length > 0) && (com.mosesSupposes.fuse.ZigoEngine._listeners.length > 0)) {
com.mosesSupposes.fuse.ZigoEngine.broadcastMessage("onTweenInterrupt", {target:obj, props:_local23, __zigoID__:_local22, during:"add"});
}
if (_local25 == "") {
if (_local24 == 2) {
if (com.mosesSupposes.fuse.ZigoEngine.OUTPUT_LEVEL == 2) {
com.mosesSupposes.fuse.FuseKitCommon.error("011", ((obj._name != undefined) ? (obj._name) : (obj.toString())), props.toString());
}
} else {
var _local48 = obj._listeners.length > 0;
if (_local48 == true) {
obj.broadcastMessage("onTweenStart", {target:obj, props:props});
}
if (callback.start != undefined) {
callback.start.f.apply(callback.start.s, callback.start.a);
}
if (_local48 == true) {
obj.broadcastMessage("onTweenUpdate", {target:obj, props:props});
}
if (callback.upd != undefined) {
callback.upd.f.apply(callback.upd.s, callback.upd.a);
}
if (_local48 == true) {
obj.broadcastMessage("onTweenEnd", {target:obj, props:props});
}
if (callback.end != undefined) {
callback.end.f.apply(callback.end.s, callback.end.a);
}
}
cleanUp();
}
if (com.mosesSupposes.fuse.ZigoEngine.OUTPUT_LEVEL == 2) {
if (_local25 == "") {
com.mosesSupposes.fuse.FuseKitCommon.error("012", ((obj._name != undefined) ? (obj._name) : (obj.toString())), props.toString(), endvals.toString());
} else {
com.mosesSupposes.fuse.FuseKitCommon.error("013", ((obj._name != undefined) ? (obj._name) : (obj.toString())), _local25.slice(0, -1), _local28.slice(0, -1));
}
}
return(((_local25 == "") ? null : (_local25.slice(0, -1))));
}
function removeTween(targs, props, noInit) {
var _local4 = {};
var _local12 = paramsObj(targs, props);
if (_local12.none == true) {
return(undefined);
}
var _local16 = _local12.all;
var _local17 = _local12.allprops;
var _local9 = ((_local16 == true) ? (tweens) : (Object(_local12.tg)));
var _local8 = false;
for (var _local20 in _local9) {
var _local3 = ((_local16 == true) ? (_local20) : (String(_local9[_local20].__zigoID__)));
var _local2 = tweens[_local3];
var _local6 = ((_local17 == true) ? (_local2.props) : (_local12.props));
for (var _local14 in _local6) {
var _local5 = (_local14 == com.mosesSupposes.fuse.FuseKitCommon.ALLCOLOR) && (_local2.colorProp != undefined);
if ((_local2.props[_local14] != undefined) || (_local5 == true)) {
if (_local4[_local3] == null) {
_local4[_local3] = [];
}
_local4[_local3].unshift(_local14);
if ((_local14 == _local2.colorProp) || (_local5 == true)) {
delete _local2.props[_local2.colorProp];
delete _local2.colorProp;
} else {
delete _local2.props[_local14];
}
_local2.numProps--;
if (_local2.numProps <= 0) {
_local8 = true;
break;
}
}
}
}
if (com.mosesSupposes.fuse.ZigoEngine._listeners.length > 0) {
for (var _local19 in _local4) {
var _local7 = tweens[_local19].targ;
com.mosesSupposes.fuse.ZigoEngine.broadcastMessage("onTweenInterrupt", {target:((typeof(_local7.addProperty) == "function") ? (_local7) : (("[MISSING(\"" + tweens[_local19].targID) + "\")]")), props:_local4[_local19], __zigoID__:tweens[_local19].targZID, during:((noInit == true) ? "add" : "remove")});
}
}
if (_local8 == true) {
cleanUp(noInit);
}
}
function alterTweens(type, targs, props, pauseFlag, noEvents, skipTo) {
if (type == "lock") {
tweens[String(targs.__zigoID__)].locked = props;
return(undefined);
}
var _local11 = paramsObj(targs, props);
if (_local11.none == true) {
return(undefined);
}
var _local14 = _local11.all;
var _local15 = _local11.allprops;
var _local9 = ((_local14 == true) ? (tweens) : (Object(_local11.tg)));
var _local8 = 0;
for (var _local16 in _local9) {
var _local7 = ((_local14 == true) ? (_local16) : (String(_local9[_local16].__zigoID__)));
var _local5 = tweens[_local7];
var _local4 = ((_local15 == true) ? (_local5.props) : (_local11.props));
if (_local4.ALLCOLOR == true) {
_local4[_local5.colorProp] = true;
delete _local4.ALLCOLOR;
}
for (var _local10 in _local4) {
_local8++;
var _local2 = _local5.props[_local10];
if (type == "rewind") {
if (pauseFlag == true) {
_local2.pt = now;
}
_local2.ts = now;
if (noEvents != true) {
_local2.sf = false;
if (_local2.scb != undefined) {
_local2.scb.fired = false;
}
}
} else if (type == "ff") {
if (noEvents == true) {
_local2.suppressEnd = true;
}
_local2.o = true;
_local2.pt = -1;
_local2.ts = now - _local2.d;
} else if (type == "skipTo") {
_local2.ts = Math.min(now, (_local2.ts + (now - _local2.ts)) - (skipTo * 1000));
} else if (type == "pause") {
if (_local2.pt == -1) {
_local2.pt = now;
}
} else if (type == "unpause") {
if (_local2.pt != -1) {
_local2.ts = now - (_local2.pt - _local2.ts);
_local2.pt = -1;
}
}
}
}
if ((type == "ff") && (_local8 > 0)) {
update();
} else if ((type == "rewind") && (_local8 > 0)) {
update(true);
}
}
function getStatus(type, targ, param) {
if (targ == null) {
return(null);
}
var _local8 = String(targ).toUpperCase() == com.mosesSupposes.fuse.FuseKitCommon.ALL;
var _local4 = tweens[String(targ.__zigoID__)];
switch (type) {
case "paused" :
var _local2 = _local4.props;
if (param != null) {
if (_local2[String(param)] == undefined) {
return(false);
}
return(Boolean(_local2[String(param)].pt != -1));
}
for (var _local6 in _local2) {
if (_local2[_local6].pt != -1) {
return(true);
}
}
return(false);
case "active" :
if (param == null) {
return(Boolean(_local4 != undefined));
}
if (String(param).toUpperCase() == com.mosesSupposes.fuse.FuseKitCommon.ALLCOLOR) {
return(Boolean(_local4.colorProp != undefined));
}
return(Boolean(_local4.props[String(param)] != undefined));
case "count" :
if (!_local8) {
return(_local4.numProps);
}
var _local3 = 0;
for (var _local6 in tweens) {
_local3 = _local3 + tweens[_local6].numProps;
}
return(_local3);
case "locked" :
return(_local4.locked);
}
}
function update(force) {
var _local22 = {};
var _local24 = {};
var _local23 = {};
var _local15 = {};
var _local13 = {};
var _local14 = {};
var _local26 = false;
var _local20 = com.mosesSupposes.fuse.ZigoEngine.ROUND_RESULTS;
for (var _local35 in tweens) {
var _local12 = tweens[_local35];
var _local5 = _local12.targ;
var _local34 = _local12.props;
var _local21 = _local5._listeners.length > 0;
if (_local5.__zigoID__ == undefined) {
_local26 = true;
if (com.mosesSupposes.fuse.ZigoEngine._listeners.length > 0) {
var _local25 = [];
for (var _local30 in _local34) {
_local25.unshift(_local30);
}
com.mosesSupposes.fuse.ZigoEngine.broadcastMessage("onTweenInterrupt", {target:((typeof(_local5.addProperty) == "function") ? (_local5) : (("[MISSING:" + _local12.targID) + "]")), props:_local25, __zigoID__:_local12.targZID, during:"update"});
}
continue;
}
for (var _local30 in _local34) {
var _local3 = _local34[_local30];
if (((_local3.ts > now) || (_local3.pt != -1)) && (force != true)) {
continue;
}
var _local9 = now >= (_local3.ts + _local3.d);
if (_local3.complex == -1) {
var _local6;
if (_local9 == true) {
_local6 = _local3.ps + _local3.ch;
if ((_local3.cycles > 1) || (_local3.cycles == 0)) {
if (_local3.cycles > 1) {
_local3.cycles--;
}
_local3.ps = _local6;
_local3.ch = -_local3.ch;
_local3.ts = now;
_local9 = false;
}
} else {
_local6 = _local3.ef(now - _local3.ts, _local3.ps, _local3.ch, _local3.d, _local3.e1, _local3.e2);
}
if (_global.isNaN(_local6) == false) {
if ((_local30 != "_bezier_") && ((_local3.rr == true) || ((_local20 == true) && (!(_local3.rr === false))))) {
_local6 = Math.round(Number(_local6));
}
if (_local3.special != true) {
_local5[_local30] = _local6;
} else if (_local3.fmp != -1) {
_local3.fmp.setFilterProp(_local5, _local30, _local6);
} else if (_local30 == "_bezier_") {
var _local10 = _local3.bz;
var _local18 = _local10.sx + (_local6 * (((2 * (1 - _local6)) * _local10.ctrlx) + (_local6 * _local10.chx)));
var _local17 = _local10.sy + (_local6 * (((2 * (1 - _local6)) * _local10.ctrly) + (_local6 * _local10.chy)));
if ((_local3.rr == true) || ((_local20 == true) && (!(_local3.rr === false)))) {
_local18 = Math.round(Number(_local18));
_local17 = Math.round(Number(_local17));
}
_local5._x = _local18;
_local5._y = _local17;
} else if (_local30 == "_frame") {
MovieClip(_local5).gotoAndStop(Math.ceil(_local6));
}
}
} else {
var _local16 = (_local9 == true) && ((_local3.cycles > 1) || (_local3.cycles == 0));
var _local7 = [];
for (var _local27 in _local3.ch) {
var _local4 = ((_local3.complex == 0) ? ([]) : ({}));
for (var _local28 in _local3.ch[_local27]) {
var _local8 = _local3.ch[_local27][_local28];
var _local11 = _local3.ps[_local27][_local28];
if (_local9 == true) {
_local4[_local28] = _local11 + _local8;
if (_local16 == true) {
_local3.ch[_local27][_local28] = -_local8;
}
} else {
_local4[_local28] = _local3.ef(now - _local3.ts, _local11, _local8, _local3.d, _local3.e1, _local3.e2);
}
if (_global.isNaN(_local4[_local28]) == false) {
if ((_local3.rr == true) || ((_local20 == true) && (!(_local3.rr === false)))) {
_local4[_local28] = Math.round(_local4[_local28]);
}
}
if ((_local3.fmp == -1) && (_local3.c == -1)) {
_local5[_local30][_local28] = _local4[_local28];
}
}
_local7.push(_local4);
if ((_local3.fmp == -1) && (_local3.c == 2)) {
_local5[_local30][_local27] = Number(((_local4.rb << 16) | (_local4.gb << 8)) | _local4.bb);
}
}
if (_local3.fmp != -1) {
if (_local3.c == 1) {
_local3.fmp.setFilterProp(_local5, _local30, ((_local7[0].rb << 16) | (_local7[0].gb << 8)) | _local7[0].bb);
} else if (_local3.c == 2) {
var _local19 = [];
for (var _local28 in _local7) {
_local19.unshift(((_local7[_local28].rb << 16) | (_local7[_local28].gb << 8)) | _local7[_local28].bb);
}
_local3.fmp.setFilterProp(_local5, _local30, _local19);
} else {
_local3.fmp.setFilterProp(_local5, _local30, _local7[0]);
}
} else if (_local3.c != -1) {
_local3.c.setTransform(_local7[0]);
}
if (_local16 == true) {
if (_local3.cycles > 1) {
_local3.cycles--;
}
_local9 = false;
_local3.ts = now;
_local3.ps = _local7;
}
}
if (_local3.sf == false) {
if (_local3.v != 0) {
_local5._visible = true;
}
if (_local21 == true) {
if (_local15[_local35] == undefined) {
_local15[_local35] = [_local5, []];
}
_local15[_local35][1].unshift(_local30);
}
_local3.sf = true;
}
if (_local3.scb.fired == false) {
_local22[String(_local3.scb.id)] = _local3.scb;
_local3.scb.fired = true;
}
if (_local21 == true) {
if (_local13[_local35] == undefined) {
_local13[_local35] = [_local5, []];
}
_local13[_local35][1].unshift(_local30);
}
if (_local3.ucb != undefined) {
_local24[String(_local3.ucb.id)] = _local3.ucb;
}
if (_local9 == true) {
if (_local3.v === -1) {
_local5._visible = false;
}
if (_local3.suppressEnd != true) {
if (_local21 == true) {
if (_local14[_local35] == undefined) {
_local14[_local35] = [_local5, []];
}
_local14[_local35][1].unshift(_local30);
}
if (_local3.ecb != undefined) {
_local23[String(_local3.ecb.id)] = _local3.ecb;
}
}
delete _local34[_local30];
if (_local30 == _local12.colorProp) {
delete _local12.colorProp;
}
_local12.numProps--;
if (_local12.numProps <= 0) {
_local26 = true;
}
}
delete _local3.suppressEnd;
}
}
for (var _local35 in _local15) {
_local15[_local35][0].broadcastMessage("onTweenStart", {target:_local15[_local35][0], props:_local15[_local35][1]});
}
for (var _local35 in _local22) {
_local22[_local35].f.apply(_local22[_local35].s, _local22[_local35].a);
}
for (var _local35 in _local13) {
_local13[_local35][0].broadcastMessage("onTweenUpdate", {target:_local13[_local35][0], props:_local13[_local35][1]});
}
for (var _local35 in _local24) {
_local24[_local35].f.apply(_local24[_local35].s, _local24[_local35].a);
}
for (var _local35 in _local14) {
_local14[_local35][0].broadcastMessage("onTweenEnd", {target:_local14[_local35][0], props:_local14[_local35][1]});
}
for (var _local35 in _local23) {
_local23[_local35].f.apply(_local23[_local35].s, _local23[_local35].a);
}
if (_local26) {
cleanUp();
}
now = getTimer();
}
function cleanUp(noInit) {
for (var _local4 in tweens) {
var _local2 = tweens[_local4].targ;
if ((tweens[_local4].numProps <= 0) || (_local2.__zigoID__ == undefined)) {
if ((((_local2 != undefined) && (_local2.tween == undefined)) && (noInit != true)) && (_local2._listeners.length <= 0)) {
com.mosesSupposes.fuse.ZigoEngine.deinitializeTargets(_local2);
}
delete tweens[_local4];
numTweens--;
}
}
if (numTweens <= 0) {
numTweens = 0;
delete tweens;
tweens = {};
if (noInit != true) {
com.mosesSupposes.fuse.ZigoEngine.__mgrRelay(this, "setup", [true]);
}
}
}
function paramsObj(targs, props, endvals, retainFade) {
var _local6 = {};
_local6.all = String(targs).toUpperCase() == com.mosesSupposes.fuse.FuseKitCommon.ALL;
_local6.none = Boolean(targs == null);
if (_local6.all == true) {
_local6.tg = [null];
} else {
_local6.tg = ((targs instanceof Array) ? (targs) : ([targs]));
for (var _local11 in _local6.tg) {
var _local7 = _local6.tg[_local11];
if ((_local7 == null) || (!((typeof(_local7) == "object") || (typeof(_local7) == "movieclip")))) {
_local6.tg.splice(Number(_local11), 1);
}
}
}
_local6.allprops = props == null;
var _local1;
var _local4;
var _local3 = {};
if (_local6.allprops == false) {
if ((typeof(props) == "string") && ((String(props).indexOf(" ") > -1) || (String(props).indexOf(",") > -1))) {
props = String(props.split(" ").join("")).split(",");
}
_local1 = ((props instanceof Array) ? (props.slice()) : ([props]));
if (endvals != undefined) {
if ((typeof(endvals) == "string") && ((String(endvals).indexOf(" ") > -1) || (String(endvals).indexOf(",") > -1))) {
endvals = String(endvals.split(" ").join("")).split(",");
}
_local4 = ((endvals instanceof Array) ? (endvals.slice()) : ([endvals]));
while (_local4.length < _local1.length) {
_local4.push(_local4[_local4.length - 1]);
}
_local4.splice(_local1.length, _local4.length - _local1.length);
}
for (var _local11 in _local1) {
var _local2 = Number(_local11);
if ((_local1[_local11] != "_scale") && (_local1[_local11] != "_size")) {
if (_local3[_local1[_local11]] == undefined) {
if ((_local1[_local11] == "_fade") && (retainFade != true)) {
_local1[_local11] = "_alpha";
}
if (String(_local1[_local11]).toUpperCase() == com.mosesSupposes.fuse.FuseKitCommon.ALLCOLOR) {
_local1[_local11] = com.mosesSupposes.fuse.FuseKitCommon.ALLCOLOR;
}
_local3[_local1[_local11]] = true;
} else {
_local1.splice(_local2, 1);
_local4.splice(_local2, 1);
}
} else {
var _local8 = String(_local1.splice(_local2, 1)[0]);
var _local5 = _local4.splice(_local2, 1)[0];
if (_local8 == "_scale") {
if (_local3._xscale == undefined) {
_local1.splice(_local2, 0, "_xscale");
_local4.splice(_local2, 0, _local5);
_local3._xscale = true;
_local2++;
}
if (_local3._yscale == undefined) {
_local1.splice(_local2, 0, "_yscale");
_local4.splice(_local2, 0, _local5);
_local3._yscale = true;
}
}
if (_local8 == "_size") {
if (_local3._width == undefined) {
_local1.splice(_local2, 0, "_width");
_local4.splice(_local2, 0, _local5);
_local3._width = true;
_local2++;
}
if (_local3._yscale == undefined) {
_local1.splice(_local2, 0, "_height");
_local4.splice(_local2, 0, _local5);
_local3._height = true;
}
}
}
}
for (var _local11 in _local1) {
if (((_local1[_local11] == "_xscale") && (_local3._width == true)) || ((_local1[_local11] == "_yscale") && (_local3._height == true))) {
_local1.splice(Number(_local11), 1);
_local4.splice(Number(_local11), 1);
delete _local3[_local1[_local11]];
}
}
}
_local6.pa = _local1;
_local6.va = _local4;
_local6.props = _local3;
return(_local6);
}
function getChangeObj(ps, ep, isFMP, useArray) {
var _local3 = {map:((useArray == true) ? ([]) : ({})), changed:false};
for (var _local7 in ep) {
if ((((((isFMP == true) && (_local7.charAt(1) == "b")) || (ep[_local7] != ps[_local7])) || (useArray == true)) && (ep[_local7] != null)) && (_global.isNaN(Number(ep[_local7])) == false)) {
_local3.map[_local7] = ((typeof(ep[_local7]) == "string") ? (Number(ep[_local7])) : (ep[_local7] - ps[_local7]));
if (_global.isNaN(_local3.map[_local7]) == true) {
_local3.map[_local7] = 0;
} else if (_local3.map[_local7] != 0) {
_local3.changed = true;
}
}
}
return(_local3);
}
var numTweens = 0;
}
Symbol 749 MovieClip [__Packages.com.mosesSupposes.fuse.PennerEasing] Frame 0
class com.mosesSupposes.fuse.PennerEasing
{
function PennerEasing () {
}
static function linear(t, b, c, d) {
return(((c * t) / d) + b);
}
static function easeInQuad(t, b, c, d) {
t = t / d;
return(((c * t) * t) + b);
}
static function easeOutQuad(t, b, c, d) {
t = t / d;
return((((-c) * t) * (t - 2)) + b);
}
static function easeInOutQuad(t, b, c, d) {
t = t / (d / 2);
if (t < 1) {
return((((c / 2) * t) * t) + b);
}
t--;
return((((-c) / 2) * ((t * (t - 2)) - 1)) + b);
}
static function easeInExpo(t, b, c, d) {
return(((t == 0) ? (b) : ((c * Math.pow(2, 10 * ((t / d) - 1))) + b)));
}
static function easeOutExpo(t, b, c, d) {
return(((t == d) ? (b + c) : ((c * ((-Math.pow(2, (-10 * t) / d)) + 1)) + b)));
}
static function easeInOutExpo(t, b, c, d) {
if (t == 0) {
return(b);
}
if (t == d) {
return(b + c);
}
t = t / (d / 2);
if (t < 1) {
return(((c / 2) * Math.pow(2, 10 * (t - 1))) + b);
}
t--;
return(((c / 2) * ((-Math.pow(2, -10 * t)) + 2)) + b);
}
static function easeOutInExpo(t, b, c, d) {
if (t == 0) {
return(b);
}
if (t == d) {
return(b + c);
}
t = t / (d / 2);
if (t < 1) {
return(((c / 2) * ((-Math.pow(2, -10 * t)) + 1)) + b);
}
return(((c / 2) * (Math.pow(2, 10 * (t - 2)) + 1)) + b);
}
static function easeInElastic(t, b, c, d, a, p) {
var _local5;
if (t == 0) {
return(b);
}
t = t / d;
if (t == 1) {
return(b + c);
}
if (!p) {
p = d * 0.3;
}
if ((!a) || (a < Math.abs(c))) {
a = c;
_local5 = p / 4;
} else {
_local5 = (p / (Math.PI*2)) * Math.asin(c / a);
}
t = t - 1;
return((-((a * Math.pow(2, 10 * t)) * Math.sin((((t * d) - _local5) * (Math.PI*2)) / p))) + b);
}
static function easeOutElastic(t, b, c, d, a, p) {
var _local5;
if (t == 0) {
return(b);
}
t = t / d;
if (t == 1) {
return(b + c);
}
if (!p) {
p = d * 0.3;
}
if ((!a) || (a < Math.abs(c))) {
a = c;
_local5 = p / 4;
} else {
_local5 = (p / (Math.PI*2)) * Math.asin(c / a);
}
return((((a * Math.pow(2, -10 * t)) * Math.sin((((t * d) - _local5) * (Math.PI*2)) / p)) + c) + b);
}
static function easeInOutElastic(t, b, c, d, a, p) {
var _local5;
if (t == 0) {
return(b);
}
t = t / (d / 2);
if (t == 2) {
return(b + c);
}
if (!p) {
p = d * 0.45;
}
if ((!a) || (a < Math.abs(c))) {
a = c;
_local5 = p / 4;
} else {
_local5 = (p / (Math.PI*2)) * Math.asin(c / a);
}
if (t < 1) {
t = t - 1;
return((-0.5 * ((a * Math.pow(2, 10 * t)) * Math.sin((((t * d) - _local5) * (Math.PI*2)) / p))) + b);
}
t = t - 1;
return(((((a * Math.pow(2, -10 * t)) * Math.sin((((t * d) - _local5) * (Math.PI*2)) / p)) * 0.5) + c) + b);
}
static function easeOutInElastic(t, b, c, d, a, p) {
var _local5;
if (t == 0) {
return(b);
}
t = t / (d / 2);
if (t == 2) {
return(b + c);
}
if (!p) {
p = d * 0.45;
}
if ((!a) || (a < Math.abs(c))) {
a = c;
_local5 = p / 4;
} else {
_local5 = (p / (Math.PI*2)) * Math.asin(c / a);
}
if (t < 1) {
return(((0.5 * ((a * Math.pow(2, -10 * t)) * Math.sin((((t * d) - _local5) * (Math.PI*2)) / p))) + (c / 2)) + b);
}
return(((c / 2) + (0.5 * ((a * Math.pow(2, 10 * (t - 2))) * Math.sin((((t * d) - _local5) * (Math.PI*2)) / p)))) + b);
}
static function easeInBack(t, b, c, d, s) {
if (s == undefined) {
s = 1.70158;
}
t = t / d;
return((((c * t) * t) * (((s + 1) * t) - s)) + b);
}
static function easeOutBack(t, b, c, d, s) {
if (s == undefined) {
s = 1.70158;
}
t = (t / d) - 1;
return((c * (((t * t) * (((s + 1) * t) + s)) + 1)) + b);
}
static function easeInOutBack(t, b, c, d, s) {
if (s == undefined) {
s = 1.70158;
}
t = t / (d / 2);
if (t < 1) {
s = s * 1.525;
return(((c / 2) * ((t * t) * (((s + 1) * t) - s))) + b);
}
t = t - 2;
s = s * 1.525;
return(((c / 2) * (((t * t) * (((s + 1) * t) + s)) + 2)) + b);
}
static function easeOutInBack(t, b, c, d, s) {
if (s == undefined) {
s = 1.70158;
}
t = t / (d / 2);
if (t < 1) {
t--;
s = s * 1.525;
return(((c / 2) * (((t * t) * (((s + 1) * t) + s)) + 1)) + b);
}
t--;
s = s * 1.525;
return(((c / 2) * (((t * t) * (((s + 1) * t) - s)) + 1)) + b);
}
static function easeOutBounce(t, b, c, d) {
t = t / d;
if (t < 0.363636363636364) {
return((c * ((7.5625 * t) * t)) + b);
}
if (t < 0.727272727272727) {
t = t - 0.545454545454545;
return((c * (((7.5625 * t) * t) + 0.75)) + b);
}
if (t < 0.909090909090909) {
t = t - 0.818181818181818;
return((c * (((7.5625 * t) * t) + 0.9375)) + b);
}
t = t - 0.954545454545455;
return((c * (((7.5625 * t) * t) + 0.984375)) + b);
}
static function easeInBounce(t, b, c, d) {
return((c - easeOutBounce(d - t, 0, c, d)) + b);
}
static function easeInOutBounce(t, b, c, d) {
if (t < (d / 2)) {
return((easeInBounce(t * 2, 0, c, d) * 0.5) + b);
}
return(((easeOutBounce((t * 2) - d, 0, c, d) * 0.5) + (c * 0.5)) + b);
}
static function easeOutInBounce(t, b, c, d) {
if (t < (d / 2)) {
return((easeOutBounce(t * 2, 0, c, d) * 0.5) + b);
}
return(((easeInBounce((t * 2) - d, 0, c, d) * 0.5) + (c * 0.5)) + b);
}
static function easeInCubic(t, b, c, d) {
t = t / d;
return((((c * t) * t) * t) + b);
}
static function easeOutCubic(t, b, c, d) {
t = (t / d) - 1;
return((c * (((t * t) * t) + 1)) + b);
}
static function easeInOutCubic(t, b, c, d) {
t = t / (d / 2);
if (t < 1) {
return(((((c / 2) * t) * t) * t) + b);
}
t = t - 2;
return(((c / 2) * (((t * t) * t) + 2)) + b);
}
static function easeOutInCubic(t, b, c, d) {
t = t / (d / 2);
t--;
return(((c / 2) * (((t * t) * t) + 1)) + b);
}
static function easeInQuart(t, b, c, d) {
t = t / d;
return(((((c * t) * t) * t) * t) + b);
}
static function easeOutQuart(t, b, c, d) {
t = (t / d) - 1;
return(((-c) * ((((t * t) * t) * t) - 1)) + b);
}
static function easeInOutQuart(t, b, c, d) {
t = t / (d / 2);
if (t < 1) {
return((((((c / 2) * t) * t) * t) * t) + b);
}
t = t - 2;
return((((-c) / 2) * ((((t * t) * t) * t) - 2)) + b);
}
static function easeOutInQuart(t, b, c, d) {
t = t / (d / 2);
if (t < 1) {
t--;
return((((-c) / 2) * ((((t * t) * t) * t) - 1)) + b);
}
t--;
return(((c / 2) * ((((t * t) * t) * t) + 1)) + b);
}
static function easeInQuint(t, b, c, d) {
t = t / d;
return((((((c * t) * t) * t) * t) * t) + b);
}
static function easeOutQuint(t, b, c, d) {
t = (t / d) - 1;
return((c * (((((t * t) * t) * t) * t) + 1)) + b);
}
static function easeInOutQuint(t, b, c, d) {
t = t / (d / 2);
if (t < 1) {
return(((((((c / 2) * t) * t) * t) * t) * t) + b);
}
t = t - 2;
return(((c / 2) * (((((t * t) * t) * t) * t) + 2)) + b);
}
static function easeOutInQuint(t, b, c, d) {
t = t / (d / 2);
t--;
return(((c / 2) * (((((t * t) * t) * t) * t) + 1)) + b);
}
static function easeInSine(t, b, c, d) {
return((((-c) * Math.cos((t / d) * (Math.PI/2))) + c) + b);
}
static function easeOutSine(t, b, c, d) {
return((c * Math.sin((t / d) * (Math.PI/2))) + b);
}
static function easeInOutSine(t, b, c, d) {
return((((-c) / 2) * (Math.cos((Math.PI * t) / d) - 1)) + b);
}
static function easeOutInSine(t, b, c, d) {
t = t / (d / 2);
if (t < 1) {
return(((c / 2) * Math.sin((Math.PI * t) / 2)) + b);
}
t--;
return((((-c) / 2) * (Math.cos((Math.PI * t) / 2) - 2)) + b);
}
static function easeInCirc(t, b, c, d) {
t = t / d;
return(((-c) * (Math.sqrt(1 - (t * t)) - 1)) + b);
}
static function easeOutCirc(t, b, c, d) {
t = (t / d) - 1;
return((c * Math.sqrt(1 - (t * t))) + b);
}
static function easeInOutCirc(t, b, c, d) {
t = t / (d / 2);
if (t < 1) {
return((((-c) / 2) * (Math.sqrt(1 - (t * t)) - 1)) + b);
}
t = t - 2;
return(((c / 2) * (Math.sqrt(1 - (t * t)) + 1)) + b);
}
static function easeOutInCirc(t, b, c, d) {
t = t / (d / 2);
if (t < 1) {
t--;
return(((c / 2) * Math.sqrt(1 - (t * t))) + b);
}
t--;
return(((c / 2) * (2 - Math.sqrt(1 - (t * t)))) + b);
}
static var registryKey = "pennerEasing";
}
Symbol 31 MovieClip Frame 1
gotoAndStop(_root.Maths.randomInt(2, this._totalframes));
Symbol 32 MovieClip Frame 41
_parent.removeMovieClip();
Symbol 34 MovieClip Frame 20
_parent.removeMovieClip();
Symbol 40 MovieClip [cannonExplosion] Frame 14
this.removeMovieClip();
Symbol 197 MovieClip Frame 1
stop();
Symbol 197 MovieClip Frame 8
stop();
Symbol 197 MovieClip Frame 14
gotoAndStop (1);
Symbol 197 MovieClip Frame 15
stop();
Symbol 200 MovieClip Frame 1
stop();
Symbol 200 MovieClip Frame 8
stop();
Symbol 200 MovieClip Frame 14
gotoAndStop (1);
Symbol 200 MovieClip Frame 15
stop();
Symbol 203 MovieClip Frame 1
stop();
Symbol 203 MovieClip Frame 8
stop();
Symbol 203 MovieClip Frame 14
gotoAndStop (1);
Symbol 203 MovieClip Frame 15
stop();
Symbol 209 MovieClip Frame 1
stop();
Symbol 209 MovieClip Frame 8
stop();
Symbol 209 MovieClip Frame 14
gotoAndStop (1);
Symbol 209 MovieClip Frame 15
stop();
Symbol 211 Button
on (rollOver, dragOver) {
rollover(1);
_root.objSounds.play("click2");
}
on (rollOut, dragOut) {
rollout(1);
}
on (release) {
gotoSection(1);
}
Symbol 212 Button
on (rollOver, dragOver) {
rollover(2);
_root.objSounds.play("click2");
}
on (rollOut, dragOut) {
rollout(2);
}
on (release) {
gotoSection(2);
}
Symbol 213 Button
on (rollOver, dragOver) {
rollover(3);
_root.objSounds.play("click2");
}
on (rollOut, dragOut) {
rollout(3);
}
on (release) {
gotoSection(3);
}
Symbol 214 Button
on (rollOver, dragOver) {
sendto.gotoAndPlay("in");
_root.objSounds.play("click2");
}
on (rollOut, dragOut) {
sendto.gotoAndPlay("out");
}
on (release) {
_root.trackPoint("STF_clicked");
getURL ("mailto:your friends?subject=Could you handle the Apache&body=Hi there\n\nYou've been challenged to experience the thrill of sitting in the seat of the APACHE, the most deadly attack helicopter in the world.\n\nThink you've got what it takes?\n\nGo here to find out:\n\n" + _root.siteURL);
}
Symbol 215 MovieClip Frame 29
function gotoSection(section) {
if (_root.transitioning) {
return(undefined);
}
if (section == currentSection) {
return(undefined);
}
_root.transitioning = true;
currentSection = section;
Mouse.show();
_root.objSounds.stop("type");
var _local4 = 0;
while (_local4 < _root.activeIntervals) {
clearInterval(_root.activeIntervals);
_local4++;
}
_root.activeIntervals = [];
resetNav();
this["navitem" + section].gotoAndStop("clicked");
switch (section) {
case 1 :
_parent.game.navsection = "missionintro";
_parent.game.mcclip.gotoAndPlay("out");
break;
case 2 :
_parent.game.navsection = "thebook";
_parent.game.mcclip.gotoAndPlay("out");
break;
case 3 :
_parent.game.navsection = "buynow";
_parent.game.mcclip.gotoAndPlay("out");
}
}
function resetNav() {
i = 0;
while (i <= 3) {
this["navitem" + i].gotoAndStop(1);
i++;
}
}
function rollover(section) {
if (section != currentSection) {
this["navitem" + section].gotoAndPlay("in");
}
}
function rollout(section) {
if (section != currentSection) {
this["navitem" + section].gotoAndPlay("out");
}
}
stop();
var currentSection = 0;
_root.transitioning = false;
gotoSection(1);
Symbol 234 MovieClip Frame 1
stop();
this.pauseFrames = Math.floor((Math.random() * 30) * 1) * 1;
this.onEnterFrame = function () {
this.pauseFrames--;
if (this.pauseFrames <= 0) {
play();
this.onEnterFrame = undefined;
}
};
Symbol 236 MovieClip Frame 1
alphabet = ["0", "8", "2", "9"];
this.onEnterFrame = function () {
variableText = "";
i = 0;
while (i <= 4) {
variableText = variableText + alphabet[random(4)];
tickerText.text = variableText;
i++;
}
};
Symbol 252 MovieClip Frame 20
stop();
Symbol 256 MovieClip Frame 18
stop();
Symbol 256 MovieClip Frame 20
_root.objSounds.play("click2");
Symbol 256 MovieClip Frame 28
stop();
_parent.book_mc.gotoAndPlay("in");
Symbol 256 MovieClip Frame 31
_root.objSounds.play("transition1");
Symbol 256 MovieClip Frame 35
gotoAndStop ("mission");
_parent.img_panel.gotoAndPlay("bookjacketout");
Symbol 260 MovieClip Frame 1
alphabet = ["0", "8", "2", "9"];
this.onEnterFrame = function () {
variableText = "";
i = 0;
while (i <= 4) {
variableText = variableText + alphabet[random(4)];
tickerText.text = variableText;
i++;
}
};
Symbol 261 MovieClip Frame 1
stop();
Symbol 270 MovieClip Frame 1
alphabet = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "_"];
this.onEnterFrame = function () {
variableText = "1";
i = 0;
while (i <= 10) {
variableText = variableText + alphabet[random(10)];
tickerText.text = variableText;
i++;
}
};
Symbol 276 MovieClip Frame 15
stop();
Symbol 279 MovieClip Frame 14
stop();
Symbol 299 MovieClip Frame 144
stop();
Symbol 299 MovieClip Frame 216
stop();
_parent.gotoAndPlay("mission1out");
Symbol 317 MovieClip Frame 214
gotoAndPlay ("loop");
Symbol 332 MovieClip Frame 1
stop();
this.pauseFrames = Math.floor((Math.random() * 30) * 6) + 30;
this.onEnterFrame = function () {
this.pauseFrames--;
if (this.pauseFrames <= 0) {
play();
this.onEnterFrame = undefined;
}
};
Symbol 332 MovieClip Frame 2
_root.objSounds.play("helicopter", 0);
_root.objSounds.fadeTo("helicopter", 100, 5);
Symbol 332 MovieClip Frame 20
_root.objSounds.fadeTo("helicopter", 0, 4);
Symbol 332 MovieClip Frame 49
stop();
this.pauseFrames = Math.floor((Math.random() * 30) * 6) + 30;
this.onEnterFrame = function () {
this.pauseFrames--;
if (this.pauseFrames <= 0) {
play();
this.onEnterFrame = undefined;
}
};
_root.objSounds.stop("helicopter");
Symbol 341 MovieClip Frame 105
stop();
Symbol 342 MovieClip Frame 1
stop();
Symbol 342 MovieClip Frame 20
stop();
Symbol 342 MovieClip Frame 29
gotoAndStop ("apache");
_parent._parent.play();
Symbol 342 MovieClip Frame 38
stop();
Symbol 342 MovieClip Frame 46
gotoAndStop ("apache");
Symbol 342 MovieClip Frame 55
stop();
Symbol 342 MovieClip Frame 62
gotoAndStop ("apache");
Symbol 357 MovieClip Frame 1
stop();
Symbol 357 MovieClip Frame 6
stop();
Symbol 359 Button
on (rollOver, dragOver) {
buy_mc.gotoAndPlay("in");
}
on (rollOut, dragOut) {
buy_mc.gotoAndPlay("out");
}
on (release) {
gotoAndPlay ("bookjacketout");
_parent.navsection = "buynow";
_parent._parent.nav.gotoSection(3);
}
Symbol 360 MovieClip Frame 21
stop();
Symbol 360 MovieClip Frame 43
stop();
_parent.message_panel.gotoAndPlay("synopsis");
Symbol 360 MovieClip Frame 56
gotoAndPlay ("looped");
_parent.play();
Symbol 364 MovieClip Frame 1
stop();
Symbol 364 MovieClip Frame 6
stop();
Symbol 367 Button
on (rollOver, dragOver) {
play_mc.gotoAndPlay("in");
_root.objSounds.play("nav_click");
}
on (rollOut, dragOut) {
play_mc.gotoAndPlay("out");
}
on (release) {
_parent.navsection = "selectinitials";
gotoAndPlay ("out");
}
Symbol 368 MovieClip Frame 1
var txt = "BECOME AN APACHE GUNNER";
this.typeText(header, txt, function () {
this.play();
});
stop();
Symbol 368 MovieClip Frame 10
var txt = "Have you got what it takes to become an Apache gunner, fighting the Taliban in Afghanistan? With Ed Macy as your expert pilot, you might just have what it takes. Play now to find out.";
this.typeText(welcomemessage, txt);
stop();
_root.objSounds.play("click");
Symbol 368 MovieClip Frame 19
stop();
_parent.play();
Symbol 377 MovieClip Frame 1
stop();
Symbol 377 MovieClip Frame 6
stop();
Symbol 409 MovieClip Frame 1
stop();
Symbol 410 MovieClip Frame 1
stop();
Symbol 410 MovieClip Frame 15
letter.gotoAndStop(_parent.curPos + 1);
gotoAndStop ("idle");
Symbol 410 MovieClip Frame 20
letter.gotoAndStop(_parent.curPos + 1);
gotoAndStop ("idle");
Symbol 416 MovieClip Frame 1
stop();
Symbol 416 MovieClip Frame 6
stop();
Symbol 417 Button
on (rollOver, dragOver) {
up.gotoAndPlay("in");
_root.objSounds.play("nav_click");
}
on (rollOut, dragOut) {
up.gotoAndPlay("out");
}
on (release) {
_root.objSounds.play("click2");
letterAnim.letter.gotoAndStop(curPos + 1);
curPos--;
if (curPos < 0) {
curPos = this.letters.length - 1;
}
curLetter = this.letters[this.curPos];
letterAnim.nextLetter.gotoAndStop(curPos + 1);
letterAnim.gotoAndPlay("up");
}
Symbol 418 Button
on (rollOver, dragOver) {
down.gotoAndPlay("in");
_root.objSounds.play("nav_click");
}
on (rollOut, dragOut) {
down.gotoAndPlay("out");
}
on (release) {
_root.objSounds.play("click2");
letterAnim.letter.gotoAndStop(curPos + 1);
curPos++;
if (curPos >= this.letters.length) {
curPos = 0;
}
curLetter = this.letters[this.curPos];
letterAnim.nextLetter.gotoAndStop(curPos + 1);
letterAnim.gotoAndPlay("down");
}
Symbol 419 MovieClip Frame 1
var letters = ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"];
var curPos = 0;
var curLetter = this.letters[this.curPos];
Symbol 419 MovieClip Frame 20
stop();
letters = ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"];
curPos = 0;
curLetter = this.letters[this.curPos];
Symbol 420 Button
on (rollOver, dragOver) {
submit_mc.gotoAndPlay("in");
_root.objSounds.play("nav_click");
}
on (rollOut, dragOut) {
submit_mc.gotoAndPlay("out");
}
on (release) {
_root.letterA = initiala.curLetter;
_root.letterB = initialb.curLetter;
_parent.navsection = "mission1brief";
gotoAndPlay ("out");
}
Symbol 421 MovieClip Frame 1
var txt = "SELECT INITIALS";
this.typeText(header, txt, function () {
this.play();
});
stop();
Symbol 421 MovieClip Frame 10
stop();
_root.objSounds.play("click");
Symbol 421 MovieClip Frame 19
stop();
_parent.play();
Symbol 426 MovieClip Frame 1
stop();
Symbol 426 MovieClip Frame 6
stop();
Symbol 427 Button
on (rollOver, dragOver) {
begin_mc.gotoAndPlay("in");
_root.objSounds.play("nav_click");
}
on (rollOut, dragOut) {
begin_mc.gotoAndPlay("out");
}
on (release) {
_parent.navsection = "recce";
gotoAndPlay ("out");
}
Symbol 430 MovieClip Frame 1
var txt = "MISSION 1. RECCE";
this.typeSpeech(header, txt, "02-hello", function () {
this.play();
});
stop();
_parent.img_panel.apache_mc.gotoAndPlay("mission1");
Symbol 430 MovieClip Frame 2
this.sayUserCallsign(function () {
this.play();
});
stop();
_root.objSounds.play("helicopter", 0, true);
_root.objSounds.play("cockpit_sound", 0, true);
_root.objSounds.fadeTo("helicopter", 90, 2);
_root.objSounds.fadeTo("cockpit_sound", 60, 1);
Symbol 430 MovieClip Frame 5
var txt = (("Hello " + _root.callsign) + ". There wasn't any time to get you briefed on the ground. Sorry, but that's the way goes sometimes. I\u2019m WO One Ed Macy. I'm your pilot for today's recce.");
this.typeSpeech(briefing, txt, "03-there-wasnt", function () {
this.play();
});
stop();
Symbol 430 MovieClip Frame 16
var txt = "You're in the gunner's seat for this mission. We're high above RPG and small arms fire and reasonably safe for now. We won't have long in the combat zone, but we've got to identify targets at the fort for a deliberate attack the Marines are planning.";
this.typeSpeech(briefing, txt, "04-youre-in-the", function () {
this.play();
});
stop();
Symbol 430 MovieClip Frame 17
_parent.img_panel.apache_mc.anim.gotoAndPlay("out");
Symbol 430 MovieClip Frame 24
stop();
_root.objSounds.play("click");
Symbol 430 MovieClip Frame 32
_parent.img_panel.apache_mc.animation.gotoAndPlay("goOut");
stop();
Symbol 437 Button
on (release) {
getURL ("http://www.borders.co.uk/book/apache/991109", "_blank");
}
Symbol 438 Button
on (release) {
getURL ("http://www.amazon.co.uk/exec/obidos/ASIN/0007288166/harpercollins-21", "_blank");
}
Symbol 439 Button
on (release) {
getURL ("http://www.play.com/Books/Books/4-/5600770/-/Product.html?searchstring=Ed+Macy&searchsource=0", "_blank");
}
Symbol 440 Button
on (release) {
getURL ("http://www.waterstones.com/waterstonesweb/displayProductDetails.do?sku=6275262", "_blank");
}
Symbol 441 MovieClip Frame 1
var txt = "BUY NOW";
this.typeText(header, txt, function () {
this.play();
});
stop();
Symbol 441 MovieClip Frame 10
stop();
Symbol 441 MovieClip Frame 19
stop();
_parent.play();
Symbol 445 MovieClip Frame 14
stop();
Symbol 447 MovieClip Frame 1
alphabet = ["0", "8", "2", "9"];
this.onEnterFrame = function () {
variableText = "";
i = 0;
while (i <= 4) {
variableText = variableText + alphabet[random(4)];
tickerText.text = variableText;
i++;
}
};
Symbol 449 MovieClip Frame 14
stop();
Symbol 452 Button
on (rollOver, dragOver) {
begin_mc.gotoAndPlay("in");
}
on (rollOut, dragOut) {
begin_mc.gotoAndPlay("out");
}
on (release) {
_parent.navsection = "beginmission";
gotoAndPlay ("out");
}
Symbol 453 MovieClip Frame 1
stop();
Symbol 453 MovieClip Frame 2
var txt = "SYNOPSIS";
this.typeText(header, txt, function () {
this.play();
});
stop();
Symbol 453 MovieClip Frame 6
var txt = "An astonishing first book, Apache is a story of courage, comradeship, technology and tragedy, during the ongoing war in Afghanistan. 'Apache' is the first book to come from the cockpit of the most sophisticated fighting helicopter the world has ever known. Designed in the mid 1980s to take on the Soviets, these machines have proven themselves as the perfect tool for combat in Afghanistan. Ed Macy's account of the incredibly hard Apache selection process, tougher than that of the SAS, combined with his description of the sheer difficulty of flying one of these helicopters provides a fascinating insight into the relationship between man and machine fighting in the toughest conditions imaginable. The climactic build-up to the rescue mission at Jugroom Fort is both dramatic and deeply moving.";
this.typeText(synopsis, txt);
stop();
Symbol 453 MovieClip Frame 7
_parent.message_panel.gotoAndPlay("synopsisout");
Symbol 453 MovieClip Frame 12
stop();
Symbol 453 MovieClip Frame 20
stop();
Symbol 453 MovieClip Frame 28
stop();
_parent.play();
Symbol 456 Button
on (rollOver, dragOver) {
begin_mc.gotoAndPlay("in");
}
on (rollOut, dragOut) {
begin_mc.gotoAndPlay("out");
}
on (release) {
_parent.navsection = "fort";
gotoAndPlay ("out");
}
Symbol 457 MovieClip Frame 1
var txt = "MISSION 2. FORT ATTACK";
this.typeText(header, txt, function () {
this.play();
});
stop();
_parent.img_panel.apache_mc.gotoAndPlay("mission2");
Symbol 457 MovieClip Frame 13
_root.objSounds.stop("helicopter");
_root.objSounds.stop("cockpit_sound");
_root.objSounds.play("helicopter", 0, true);
_root.objSounds.play("cockpit_sound", 0, true);
_root.objSounds.fadeTo("helicopter", 90, 2);
_root.objSounds.fadeTo("cockpit_sound", 60, 1);
Symbol 457 MovieClip Frame 14
var txt = "The Apache is nothing without its weapons. Attack pilots don't deliver soup. We don't help old ladies over the road and we don't shoot out lollipops either. We close with the enemy and we kill them.";
this.typeSpeech(briefing, txt, "32-apache-is-nothing", function () {
this.play();
});
stop();
Symbol 457 MovieClip Frame 20
var txt = "The weapon of choice is the M230 30mm under slung cannon. For tree lines and target areas, every CRV7 rocket has 80 tungsten darts. And Hellfire missiles that destroy buildings, bunkers, tunnels and every known type of vehicle.";
this.typeSpeech(briefing, txt, "33-weapon-of-choice", function () {
this.play();
});
stop();
Symbol 457 MovieClip Frame 25
stop();
Symbol 457 MovieClip Frame 33
stop();
_parent.play();
Symbol 462 MovieClip Frame 1
stop();
Symbol 462 MovieClip Frame 6
stop();
Symbol 463 Button
on (rollOver, dragOver) {
begin_mc.gotoAndPlay("in");
}
on (rollOut, dragOut) {
begin_mc.gotoAndPlay("out");
}
on (release) {
_parent.navsection = "missionintro";
gotoAndPlay ("out");
_root.trackPoint("btn_play_again");
}
Symbol 464 MovieClip Frame 1
_parent.img_panel.apache_mc.gotoAndPlay("debrief");
var txt = "DEBRIEF";
this.typeText(header, txt, function () {
this.play();
});
stop();
Symbol 464 MovieClip Frame 2
_root.transitioning = false;
Symbol 464 MovieClip Frame 10
var txt = "Time for the post mission debrief, I've got the guntape. See you in a couple of hours.";
this.typeSpeech(briefing, txt, "56-time-for-the", function () {
this.play();
});
stop();
Symbol 464 MovieClip Frame 37
_root.transitioning = false;
var ranking = 0;
if (_root.misses < 3) {
ranking = 5;
} else if (_root.misses < 6) {
ranking = 4;
} else if (_root.misses < 9) {
ranking = 3;
} else if (_root.misses < 14) {
ranking = 2;
} else {
ranking = 1;
}
trace("Total misses: " + _root.misses);
trace(("Final ranking: " + ranking) + "/5");
_root.trackPoint("results_rank_" + ranking);
_root.trackPoint("results_misses_" + misses);
var txt = "";
var sound = "";
switch (ranking) {
case 5 :
txt = "You're Combat Ready. I think you'll be selected for 656 Squadron when they see your guntape.";
sound = "61-youre-combat-ready";
break;
case 4 :
txt = "Good shooting buddy. I think the boss will be happy with that.";
sound = "60-good-shooting";
break;
case 3 :
txt = "I reckon it\u2019s 50/50 if the Boss picks us for a mission again.";
sound = "59-i-reckon-its-50-50";
break;
case 2 :
txt = "What a mess buddy. After that performance we need more time in the simulator.";
sound = "58-what-a-mess";
break;
case 1 :
txt = "What a disaster that was. The boss is gonna remove our wings forever.";
sound = "57-what-a-disaster";
}
txt = txt + (("\n\nPerformance grade: " + ranking) + "/5.");
this.typeSpeech(briefing, txt, sound, function () {
this.play();
});
stop();
Symbol 464 MovieClip Frame 45
stop();
Symbol 464 MovieClip Frame 53
stop();
_parent.play();
Symbol 489 MovieClip Frame 2
stop();
Symbol 489 MovieClip Frame 25
stop();
Symbol 492 MovieClip Frame 2
stop();
Symbol 492 MovieClip Frame 25
stop();
Symbol 495 MovieClip Frame 2
stop();
Symbol 495 MovieClip Frame 25
stop();
Symbol 498 MovieClip Frame 2
stop();
Symbol 498 MovieClip Frame 25
stop();
Symbol 501 MovieClip Frame 2
stop();
Symbol 501 MovieClip Frame 25
stop();
Symbol 505 MovieClip Frame 1
stop();
Symbol 506 MovieClip Frame 229
_parent.gotoAndStop("laseTunnel");
Symbol 506 MovieClip Frame 434
stop();
_parent.gotoAndPlay("tunnelTimeUp");
Symbol 515 MovieClip Frame 1
stop();
lights._visible = this.lightsOn;
Symbol 515 MovieClip Frame 11
lights._visible = this.lightsOn;
Symbol 516 MovieClip Frame 1
stop();
lights._visible = this.lightsOn;
Symbol 516 MovieClip Frame 11
lights._visible = this.lightsOn;
Symbol 523 MovieClip Frame 1
stop();
Symbol 527 MovieClip Frame 1
stop();
Symbol 546 MovieClip Frame 1
stop();
lights._visible = this.lightsOn;
Symbol 546 MovieClip Frame 11
lights._visible = this.lightsOn;
Symbol 551 MovieClip Frame 1
t0.lightsOn = false;
t1.lightsOn = false;
t2.lightsOn = true;
t0.lights._visible = false;
t1.lights._visible = false;
taliban._visible = false;
taliban.stop();
Symbol 551 MovieClip Frame 21
Symbol 551 MovieClip Frame 46
this.sayUserCallsign(function () {
this.play();
});
stop();
Symbol 551 MovieClip Frame 47
var txt = (_root.callsign + ", you're looking through the Target Acquisition and Designation Sight, or TADS. You can move your view around with the arrow keys on your keyboard. Look a little to the north to find the fort. We'll be assaulting it at first light tomorrow.");
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "06-your-looking-thru", function () {
this.gotoAndStop("findFort");
});
stop();
Symbol 551 MovieClip Frame 71
_parent.subtitles.fadeOut(0.5);
fortHit._visible = false;
_root.objGame.setTask("findFort", "thereItIs");
Symbol 551 MovieClip Frame 81
_parent.subtitles.fadeIn(0.5);
var txt = (("There it is " + _root.callsign) + ".");
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "07-there-it-is", function () {
this.play();
});
stop();
Symbol 551 MovieClip Frame 82
this.sayUserCallsign(function () {
this.play();
});
stop();
Symbol 551 MovieClip Frame 91
fortLaseHit._visible = false;
_root.objGame.setTask("laseFort");
var txt = "Click on it with your mouse to lase and store it in the tactical computer.";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "08-click-on-it", function () {
this.gotoAndStop("laseFort");
});
stop();
Symbol 551 MovieClip Frame 101
_parent.subtitles.fadeOut(0.5);
if (_root.objGame.task == "idle") {
gotoAndPlay ("fortStored");
} else {
_root.objGame.setTask("laseFort", "fortStored");
stop();
}
Symbol 551 MovieClip Frame 125
_parent.subtitles.fadeIn(0.5);
var txt = "Nice one. Let's zoom in a little and see what's going on down there. Use the buttons on your display or the plus and minus keys to take a closer look.";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "09-nice-one", function () {
this.play();
});
stop();
Symbol 551 MovieClip Frame 136
stop();
_parent.subtitles.fadeOut(0.5);
fortHit._visible = false;
_root.objGame.setTask("findFortZoomed", "examineSpots");
Symbol 551 MovieClip Frame 163
t0.lights._visible = true;
t0.lightsOn = true;
Symbol 551 MovieClip Frame 172
t1.lights._visible = true;
t1.lightsOn = true;
Symbol 551 MovieClip Frame 180
_parent.subtitles.fadeIn(0.5);
var txt = "We need to work out which of the buildings are part of the fort. Zoom in to those moving bright spots and see what they are.";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "10-we-need-to-work-out", function () {
this.play();
});
stop();
Symbol 551 MovieClip Frame 182
_parent.subtitles.fadeOut(0.5);
_root.objGame.setTask("findTrucksZoomed", "switchToFlir");
stop();
Symbol 551 MovieClip Frame 232
_parent.subtitles.fadeIn(0.5);
var txt = "I see some activity down there. Switch to the Forward Looking Infra-Red camera, The FLIR should help with the clarity.";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "11-i-see-some-activity", function () {
this.gotoAndPlay("findTrucksFlir");
});
Symbol 551 MovieClip Frame 300
stop();
Symbol 551 MovieClip Frame 304
stop();
_parent.subtitles.fadeOut(0.5);
_root.objGame.setTask("findTrucksFlir", "laseBuilding");
Symbol 551 MovieClip Frame 349
_parent.subtitles.fadeIn(0.5);
var txt = "I recognise that from the satellite image. It\u2019s part of the fort. Lase and store the building next to the trucks quick.";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "12-i-recognise", function () {
this.play();
});
stop();
buildingLaseHit._visible = false;
_root.objGame.setTask("laseBuilding");
Symbol 551 MovieClip Frame 350
_parent.subtitles.fadeOut(0.5);
Symbol 551 MovieClip Frame 401
if (_root.objGame.task != "idle") {
_root.objGame.missedGoal();
_root.objGame.setTask("idle");
var txt = "You're taking too long.";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "13-taking-too-long", function () {
this.play();
});
stop();
}
Symbol 551 MovieClip Frame 427
var txt = "Standby. Standby. The trucks are on the move. Let\u2019s watch and see where they are going.";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "14-standby", function () {
this._parent.subtitles.fadeOut(0.5);
});
Symbol 551 MovieClip Frame 591
var txt = "Keep an eye out for fresh targets whilst watching the trucks. Lase and store anything that looks like it might be a potential target for tomorrow";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "15-keep-an-eye", function () {
this._parent.subtitles.fadeOut(0.5);
});
_parent.subtitles.fadeIn(0.5);
Symbol 551 MovieClip Frame 835
ammoLaseHit._visible = false;
_root.objGame.setTask("laseAmmo");
Symbol 551 MovieClip Frame 1130
if (_root.objGame.task != "idle") {
_root.objGame.missedGoal();
_root.objGame.setTask("idle");
}
Symbol 551 MovieClip Frame 1477
_root.objGame.setTask("findTrucks", "talibanRunToHills");
Symbol 551 MovieClip Frame 1479
if (_root.objGame.task != "idle") {
_root.objGame.missedGoal();
_root.objGame.setTask("findTrucks", "talibanRunToHills");
stop();
var txt = ("Zoom out and re-acquire those trucks " + _root.callsign);
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "17-zoom-out", function () {
this.sayUserCallsign();
this.play();
});
_parent.subtitles.fadeIn(0.5);
} else {
gotoAndPlay ("talibanRunToHills");
}
Symbol 551 MovieClip Frame 1494
_parent.subtitles.fadeOut(0.5);
stop();
Symbol 551 MovieClip Frame 1534
t0.lights._visible = false;
t0.lightsOn = false;
Symbol 551 MovieClip Frame 1541
t1.lights._visible = false;
t1.lightsOn = false;
Symbol 551 MovieClip Frame 1564
stop();
taliban._visible = true;
taliban.play();
Symbol 551 MovieClip Frame 1574
stop();
tunnelLaseHit._visible = false;
_root.objGame.setTask("laseTunnel");
var txt = "Lase and store the place those Taliban fighters are disappearing. Looks like there's an underground tunnel system there.";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "18-lase-and-store", function () {
this.play();
});
_parent.subtitles.fadeIn(0.5);
Symbol 551 MovieClip Frame 1582
_parent.subtitles.fadeOut(0.5);
stop();
Symbol 551 MovieClip Frame 1594
if (_root.objGame.task != "idle") {
_root.objGame.missedGoal();
_root.objGame.setTask("idle");
stop();
var txt = "We can't watch these guys forever. Let's move on.";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "20-we-cant-watch", function () {
this.play();
});
_parent.subtitles.fadeIn(0.5);
}
Symbol 551 MovieClip Frame 1607
var txt = "I see a patch of trees in sector Hotel-Four, let's check it out. Switch to the map mode to get the grid references up, then zoom in on that sector.";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "21-i-see-a-patch", function () {
this.play();
});
_parent.subtitles.fadeIn(0.5);
stop();
treesHit._visible = false;
Symbol 551 MovieClip Frame 1608
_parent.subtitles.fadeOut(0.5);
stop();
_root.objGame.setTask("findTrees", "foundTrees");
Symbol 551 MovieClip Frame 1622
var txt = "See if you can find anything here. Lase and store everything you spot.";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "23-see-if-you-can", function () {
this.play();
});
_parent.subtitles.fadeIn(0.5);
stop();
_root.objGame.setTask("laseTreeStuff");
treeGuys1LaseHit._visible = false;
treeGuys2LaseHit._visible = false;
treeCratesLaseHit._visible = false;
Symbol 551 MovieClip Frame 1870
t2.lights._visible = false;
t2.lightsOn = false;
Symbol 551 MovieClip Frame 1926
_root.objSounds.fadeTo("24-keep-looking", 0, 8);
_root.objGame.setTask("idle");
if (!_root.objGame.lasedTreeTruck) {
_root.objGame.missedGoal();
}
if (!_root.objGame.lasedTreeGuys1) {
_root.objGame.missedGoal();
}
if (!_root.objGame.lasedTreeGuys2) {
_root.objGame.missedGoal();
}
if (!_root.objGame.lasedTreeCrates) {
_root.objGame.missedGoal();
}
Symbol 551 MovieClip Frame 1939
var txt = ("Ok " + _root.callsign);
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "25-ok", function () {
this.play();
});
_parent.subtitles.fadeIn(0.5);
stop();
Symbol 551 MovieClip Frame 1940
this.sayUserCallsign(function () {
this.play();
});
stop();
Symbol 551 MovieClip Frame 1944
var txt = "We've reached chicken-fuel. We're going home.";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "26-weve-reached", function () {
this.play();
});
_parent.subtitles.fadeIn(0.5);
stop();
Symbol 551 MovieClip Frame 1948
_root.objSounds.play("scratch");
Symbol 551 MovieClip Frame 1951
var txt = "Ugly Five-One, returning to base.";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "27-ugly-five-one", function () {
this.play();
});
_parent.subtitles.fadeIn(0.5);
stop();
Symbol 551 MovieClip Frame 1953
_root.objSounds.play("scratch");
_parent.subtitles.fadeOut(0.5);
Symbol 551 MovieClip Frame 1969
var txt = "The base has been moved since we left. AWACs tells me it's in sector Juliet-Two. Find and store it so we know where we're going.";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "28-base-moved", function () {
this.play();
});
_parent.subtitles.fadeIn(0.5);
stop();
_root.objGame.setTask("laseBase");
lasedBaseHit._visible = false;
Symbol 551 MovieClip Frame 1972
_parent.subtitles.fadeOut(0.5);
if (_root.objGame.task == "idle") {
gotoAndPlay ("baseStored");
} else {
_root.objGame.setTask("laseBase", "baseStored");
}
Symbol 551 MovieClip Frame 2253
var txt = "Hurry up. We\u2019re fuel-critical. Store our new base in sector Juliet-Two";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "29-hurry-up", function () {
this._parent.subtitles.fadeOut(0.5);
});
_parent.subtitles.fadeIn(0.5);
_root.objGame.missedGoal();
gotoAndPlay ("storeBaseLoop");
Symbol 551 MovieClip Frame 2265
_root.objSounds.fadeTo("29-hurry-up", 0, 8);
laseRpgHit._visible = false;
Symbol 551 MovieClip Frame 2274
var txt = "I've just heard the Taliban have an RPG ambush in sector India-Three. Find it and lase and store it so we can fly round it. We don't want to get into a firefight while short on fuel.";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "30-ive-just-heard", function () {
this.play();
});
_parent.subtitles.fadeIn(0.5);
stop();
_root.objGame.setTask("laseRPG");
lasedBaseHit._visible = false;
Symbol 551 MovieClip Frame 2276
_parent.subtitles.fadeOut(0.5);
if (_root.objGame.task == "idle") {
gotoAndPlay ("end");
} else {
_root.objGame.setTask("laseRPG", "end");
}
Symbol 551 MovieClip Frame 2396
_root.objSounds.fadeTo("helicopter", 0, 1);
_root.objSounds.fadeTo("cockpit_sound", 0, 2);
_parent.missionComplete._visible = true;
Symbol 551 MovieClip Frame 2496
if (_root.objGame.task != "idle") {
_root.objGame.missedGoal();
}
_root.objGame.setTask("idle");
_root.objSounds.stop("helicopter");
_root.objSounds.stop("cockpit_sound");
_root.misses = _root.objGame.misses;
_parent._parent.navsection = "debriefmission1";
_parent.gotoAndPlay("out");
Mouse.show();
stop();
Symbol 559 MovieClip Frame 11
stop();
Symbol 560 MovieClip Frame 1
stop();
Symbol 560 MovieClip Frame 28
stop();
Symbol 560 MovieClip Frame 45
stop();
Symbol 564 MovieClip Frame 1
stop();
this.idle = true;
Symbol 564 MovieClip Frame 11
this.idle = false;
Symbol 575 MovieClip Frame 1
hit._visible = false;
Symbol 580 MovieClip Frame 10
stop();
Symbol 580 MovieClip Frame 20
stop();
Symbol 581 MovieClip Frame 10
stop();
Symbol 581 MovieClip Frame 20
stop();
Symbol 589 MovieClip Frame 1
alphabet = ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"];
this.onEnterFrame = function () {
variableText = "1";
i = 0;
while (i <= 10) {
variableText = variableText + alphabet[random(10)];
numText.text = variableText;
i++;
}
};
Symbol 597 MovieClip Frame 1
this._visible = false;
Symbol 615 MovieClip Frame 1
stop();
Symbol 615 MovieClip Frame 6
stop();
Symbol 618 MovieClip Frame 1
stop();
Symbol 618 MovieClip Frame 6
stop();
Symbol 621 MovieClip Frame 1
stop();
Symbol 621 MovieClip Frame 6
stop();
Symbol 622 Button
on (rollOver, dragOver) {
if (_root.objGame.mapMode == "normal") {
return(undefined);
}
norm.gotoAndPlay("in");
}
on (rollOut, dragOut) {
if (_root.objGame.mapMode == "normal") {
return(undefined);
}
norm.gotoAndPlay("out");
}
on (release) {
_root.objGame.setMapMode("normal");
}
Symbol 623 Button
on (rollOver, dragOver) {
if (_root.objGame.mapMode == "flir") {
return(undefined);
}
flir.gotoAndPlay("in");
}
on (rollOut, dragOut) {
if (_root.objGame.mapMode == "flir") {
return(undefined);
}
flir.gotoAndPlay("out");
}
on (release) {
_root.objGame.setMapMode("flir");
}
Symbol 624 Button
on (rollOver, dragOver) {
if (_root.objGame.gridMode == "on") {
return(undefined);
}
map.gotoAndPlay("in");
}
on (rollOut, dragOut) {
if (_root.objGame.gridMode == "on") {
return(undefined);
}
map.gotoAndPlay("out");
}
on (release) {
_root.objGame.toggleGrid();
}
Symbol 625 MovieClip Frame 15
stop();
norm.gotoAndStop("out");
Symbol 625 MovieClip Frame 28
stop();
Symbol 629 MovieClip Frame 1
stop();
Symbol 629 MovieClip Frame 6
stop();
Symbol 631 MovieClip Frame 1
stop();
Symbol 631 MovieClip Frame 6
stop();
Symbol 633 Button
on (rollOver, dragOver) {
minus.gotoAndPlay("in");
}
on (rollOut, dragOut) {
minus.gotoAndPlay("out");
}
on (release) {
_root.objGame.zoomOut();
}
Symbol 634 Button
on (rollOver, dragOver) {
plus.gotoAndPlay("in");
}
on (rollOut, dragOut) {
plus.gotoAndPlay("out");
}
on (release) {
_root.objGame.zoomIn();
}
Symbol 635 MovieClip Frame 15
stop();
Symbol 635 MovieClip Frame 28
stop();
Symbol 636 MovieClip Frame 1
var now = new Date();
mapDetails.txtDate.text = (((_root.Maths.formatNum(now.getDate(), 2) + ".") + _root.Maths.formatNum(now.getMonth() + 1, 2)) + ".") + now.getFullYear();
hit._visible = false;
centre._visible = false;
missionComplete._visible = false;
Symbol 636 MovieClip Frame 15
stop();
_root.objSounds.stop("type");
_root.objGame = new _root.Recce(this);
Symbol 636 MovieClip Frame 16
y_scale.gotoAndPlay("out");
x_scale.gotoAndPlay("out");
Symbol 636 MovieClip Frame 19
mappanel.gotoAndPlay("out");
zoompanel.gotoAndPlay("out");
Symbol 636 MovieClip Frame 34
_parent.play();
stop();
Symbol 652 MovieClip Frame 10
_parent.gotoAndStop("idle");
Symbol 653 MovieClip Frame 1
stop();
Symbol 656 MovieClip Frame 1
stop();
Symbol 657 MovieClip Frame 1
stop();
_root.objGame.targets.push(t0);
_root.objGame.targets.push(t1);
_root.objGame.targets.push(t2);
_root.objGame.targets.push(t3);
_root.objGame.targets.push(t4);
_root.objGame.targets.push(t5);
_root.objGame.targets.push(t6);
t0.destroyed = function () {
_root.objSounds.play("scream");
_root.objGame.missedGoal();
this._visible = false;
};
t1.destroyed = function () {
_root.objSounds.play("scream");
_root.objGame.missedGoal();
this._visible = false;
};
t2.destroyed = function () {
_root.objSounds.play("scream");
_root.objGame.missedGoal();
this._visible = false;
};
t3.destroyed = function () {
_root.objSounds.play("scream");
_root.objGame.missedGoal();
this._visible = false;
};
t4.destroyed = function () {
_root.objSounds.play("scream");
_root.objGame.missedGoal();
this._visible = false;
};
t5.destroyed = function () {
_root.objSounds.play("scream");
_root.objGame.missedGoal();
this._visible = false;
};
t6.destroyed = function () {
_root.objSounds.play("scream");
_root.objGame.missedGoal();
this._visible = false;
};
Symbol 657 MovieClip Frame 203
stop();
Symbol 657 MovieClip Frame 220
this["t" + _root.Maths.randomInt(0, 6)].gotoAndStop("fireLeft");
Symbol 657 MovieClip Frame 227
this["t" + _root.Maths.randomInt(0, 6)].gotoAndStop("fireLeft");
Symbol 657 MovieClip Frame 233
gotoAndPlay ("atFort");
Symbol 657 MovieClip Frame 415
_parent.play();
Symbol 657 MovieClip Frame 652
stop();
Symbol 670 MovieClip Frame 1
_root.objSounds.play("explosion-distant");
Symbol 670 MovieClip Frame 46
_root.objSounds.play("explosion-distant");
Symbol 670 MovieClip Frame 47
stop();
Symbol 671 MovieClip Frame 1
_root.objGame.targets.push(t0);
_root.objGame.targets.push(t1);
_root.objGame.targets.push(t2);
_root.objGame.targets.push(t3);
_root.objGame.targets.push(t4);
_root.objGame.targets.push(t5);
_root.objGame.targets.push(t6);
t0.destroyed = function () {
_root.objSounds.play("scream");
this._visible = false;
};
t1.destroyed = function () {
_root.objSounds.play("scream");
this._visible = false;
};
t2.destroyed = function () {
_root.objSounds.play("scream");
this._visible = false;
};
t3.destroyed = function () {
_root.objSounds.play("scream");
this._visible = false;
};
t4.destroyed = function () {
_root.objSounds.play("scream");
this._visible = false;
};
t5.destroyed = function () {
_root.objSounds.play("scream");
this._visible = false;
};
t6.destroyed = function () {
_root.objSounds.play("scream");
this._visible = false;
};
Symbol 671 MovieClip Frame 434
stop();
_parent.play();
Symbol 672 MovieClip Frame 1
_root.objGame.targets.push(t0);
t0.destroyed = function () {
_root.objSounds.play("scream");
_root.objGame.missedGoal();
this._visible = false;
};
Symbol 672 MovieClip Frame 133
stop();
_parent.play();
Symbol 676 MovieClip Frame 1
_root.objGame.targets.push(t0);
_root.objGame.targets.push(t1);
_root.objGame.targets.push(t2);
_root.objGame.targets.push(t3);
_root.objGame.targets.push(t4);
_root.objGame.targets.push(t5);
_root.objGame.targets.push(t6);
t0.destroyed = function () {
_root.objSounds.play("scream");
this._visible = false;
};
t1.destroyed = function () {
_root.objSounds.play("scream");
this._visible = false;
};
t2.destroyed = function () {
_root.objSounds.play("scream");
this._visible = false;
};
t3.destroyed = function () {
_root.objSounds.play("scream");
this._visible = false;
};
t4.destroyed = function () {
_root.objSounds.play("scream");
this._visible = false;
};
t5.destroyed = function () {
_root.objSounds.play("scream");
this._visible = false;
};
t6.destroyed = function () {
_root.objSounds.play("scream");
this._visible = false;
};
Symbol 676 MovieClip Frame 110
t0.gotoAndStop("fireRight");
_root.objSounds.play("gun");
Symbol 676 MovieClip Frame 115
t1.gotoAndStop("fireRight");
_root.objSounds.play("gun");
Symbol 676 MovieClip Frame 124
t2.gotoAndStop("fireRight");
_root.objSounds.play("gun");
Symbol 676 MovieClip Frame 126
t3.gotoAndStop("fireRight");
t4.gotoAndStop("fireRight");
t0.gotoAndStop("fireRight");
Symbol 676 MovieClip Frame 136
t0.gotoAndStop("fireRight");
_root.objSounds.play("gun");
Symbol 676 MovieClip Frame 160
_parent.play();
Symbol 676 MovieClip Frame 268
t1.gotoAndStop("fireRight");
_root.objSounds.play("gun");
Symbol 676 MovieClip Frame 273
t0.gotoAndStop("fireRight");
_root.objSounds.play("gun");
Symbol 676 MovieClip Frame 280
t2.gotoAndStop("fireRight");
_root.objSounds.play("gun");
Symbol 676 MovieClip Frame 285
t0.gotoAndStop("fireRight");
_root.objSounds.play("gun");
Symbol 676 MovieClip Frame 291
t3.gotoAndStop("fireRight");
t4.gotoAndStop("fireRight");
Symbol 676 MovieClip Frame 298
t4.gotoAndStop("fireRight");
_root.objSounds.play("gun");
Symbol 676 MovieClip Frame 305
t5.gotoAndStop("fireRight");
_root.objSounds.play("gun");
Symbol 676 MovieClip Frame 307
t3.gotoAndStop("fireRight");
_root.objSounds.play("gun");
Symbol 676 MovieClip Frame 308
t4.gotoAndStop("fireRight");
Symbol 676 MovieClip Frame 335
t2.gotoAndStop("fireRight");
_root.objSounds.play("gun");
Symbol 676 MovieClip Frame 341
t0.gotoAndStop("fireRight");
_root.objSounds.play("gun");
Symbol 676 MovieClip Frame 345
t4.gotoAndStop("fireRight");
_root.objSounds.play("gun");
Symbol 676 MovieClip Frame 350
t1.gotoAndStop("fireRight");
_root.objSounds.play("gun");
Symbol 676 MovieClip Frame 355
t5.gotoAndStop("fireRight");
_root.objSounds.play("gun");
Symbol 676 MovieClip Frame 359
t3.gotoAndStop("fireRight");
t4.gotoAndStop("fireRight");
Symbol 676 MovieClip Frame 362
t0.gotoAndStop("fireRight");
_root.objSounds.play("gun");
Symbol 676 MovieClip Frame 368
t4.gotoAndStop("fireRight");
Symbol 676 MovieClip Frame 375
t3.gotoAndStop("fireRight");
_root.objSounds.play("gun");
Symbol 676 MovieClip Frame 520
stop();
_parent.play();
Symbol 688 MovieClip Frame 1
_root.objGame.targets.push(t0);
_root.objGame.targets.push(t1);
_root.objGame.targets.push(t2);
_root.objGame.targets.push(t3);
_root.objGame.targets.push(t4);
_root.objGame.targets.push(t5);
_root.objGame.targets.push(t6);
t0.destroyed = function () {
_root.objSounds.play("scream");
this._visible = false;
};
t1.destroyed = function () {
_root.objSounds.play("scream");
this._visible = false;
};
t2.destroyed = function () {
_root.objSounds.play("scream");
this._visible = false;
};
t3.destroyed = function () {
_root.objSounds.play("scream");
this._visible = false;
};
t4.destroyed = function () {
_root.objSounds.play("scream");
this._visible = false;
};
t5.destroyed = function () {
_root.objSounds.play("scream");
this._visible = false;
};
t6.destroyed = function () {
_root.objSounds.play("scream");
this._visible = false;
};
Symbol 688 MovieClip Frame 20
this["t" + _root.Maths.randomInt(0, 6)].gotoAndStop("fireLeft");
_root.objSounds.play("gun");
Symbol 688 MovieClip Frame 25
this["t" + _root.Maths.randomInt(0, 6)].gotoAndStop("fireLeft");
_root.objSounds.play("gun");
Symbol 688 MovieClip Frame 27
this["t" + _root.Maths.randomInt(0, 6)].gotoAndStop("fireLeft");
_root.objSounds.play("gun");
Symbol 688 MovieClip Frame 37
this["t" + _root.Maths.randomInt(0, 6)].gotoAndStop("fireLeft");
_root.objSounds.play("gun");
Symbol 688 MovieClip Frame 41
this["t" + _root.Maths.randomInt(0, 6)].gotoAndStop("fireLeft");
_root.objSounds.play("gun");
Symbol 688 MovieClip Frame 44
this["t" + _root.Maths.randomInt(0, 6)].gotoAndStop("fireLeft");
_root.objSounds.play("gun");
Symbol 688 MovieClip Frame 57
this["t" + _root.Maths.randomInt(0, 6)].gotoAndStop("fireLeft");
_root.objSounds.play("gun");
Symbol 688 MovieClip Frame 58
this["t" + _root.Maths.randomInt(0, 6)].gotoAndStop("fireLeft");
Symbol 688 MovieClip Frame 59
this["t" + _root.Maths.randomInt(0, 6)].gotoAndStop("fireLeft");
Symbol 688 MovieClip Frame 68
this["t" + _root.Maths.randomInt(0, 6)].gotoAndStop("fireLeft");
_root.objSounds.play("gun");
Symbol 688 MovieClip Frame 75
this["t" + _root.Maths.randomInt(0, 6)].gotoAndStop("fireLeft");
_root.objSounds.play("gun");
Symbol 688 MovieClip Frame 80
this["t" + _root.Maths.randomInt(0, 6)].gotoAndStop("fireLeft");
_root.objSounds.play("gun");
Symbol 688 MovieClip Frame 85
this["t" + _root.Maths.randomInt(0, 6)].gotoAndStop("fireLeft");
_root.objSounds.play("gun");
Symbol 688 MovieClip Frame 98
this["t" + _root.Maths.randomInt(0, 6)].gotoAndStop("fireLeft");
_root.objSounds.play("gun");
Symbol 688 MovieClip Frame 101
this["t" + _root.Maths.randomInt(0, 6)].gotoAndStop("fireLeft");
_root.objSounds.play("gun");
Symbol 688 MovieClip Frame 107
this["t" + _root.Maths.randomInt(0, 6)].gotoAndStop("fireLeft");
_root.objSounds.play("gun");
Symbol 688 MovieClip Frame 111
gotoAndPlay ("attack");
Symbol 698 MovieClip Frame 1
stop();
Symbol 698 MovieClip Frame 10
stop();
Symbol 698 MovieClip Frame 86
stop();
Symbol 698 MovieClip Frame 87
_root.objSounds.play("scream");
Symbol 698 MovieClip Frame 94
_root.objSounds.play("scream");
Symbol 698 MovieClip Frame 96
_root.objSounds.play("scream");
Symbol 698 MovieClip Frame 108
_root.objSounds.play("scream");
Symbol 698 MovieClip Frame 156
stop();
Symbol 703 MovieClip Frame 1
viewGuide._visible = false;
sightGuide._visible = false;
yMap._visible = false;
zMap._visible = false;
Symbol 703 MovieClip Frame 16
Symbol 703 MovieClip Frame 31
_parent.subtitles.fadeIn(0.5);
var txt = ("Ok " + _root.callsign);
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "25-ok", function () {
this.play();
});
stop();
Symbol 703 MovieClip Frame 32
this.sayUserCallsign(function () {
this.play();
});
stop();
Symbol 703 MovieClip Frame 37
var txt = "We're currently hovering behind a hill, in cover. The fort we recce'd yesterday is directly in front of us. The Marines are waiting to the left of the fort. A B1 bomber is going to start the show with a 2000 pounder on the building you stored yesterday then we're going to unmask and support the Marines.";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "36-were-currently", function () {
this.play();
});
stop();
Symbol 703 MovieClip Frame 40
var txt = "I'll fly the chopper. Your job is to put weapons on the targets I identify. You can see what I'm looking at in your display. It's the green square cursor. Follow where I look with the white cursor, and listen to my commands. Remember the rules of engagement - only fire on positively identified threats.";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "37-ill-fly", function () {
this.play();
});
stop();
Symbol 703 MovieClip Frame 43
_parent.subtitles.fadeOut(0.5);
Symbol 703 MovieClip Frame 47
_root.objSounds.play("bomber");
Symbol 703 MovieClip Frame 89
_root.objSounds.play("explosion-bassy");
Symbol 703 MovieClip Frame 106
_parent.subtitles.fadeIn(0.5);
var txt = "We need to find the friendly forces first. Standby. Standby. Listen to my commands and don't hit our guys!";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "39-we-need-to", function () {
this._parent.subtitles.fadeOut(0.5);
});
Symbol 703 MovieClip Frame 218
_root.objGame.weaponsFree();
Symbol 703 MovieClip Frame 309
marines.gotoAndPlay("advance");
Symbol 703 MovieClip Frame 344
_parent.subtitles.fadeIn(0.5);
var txt = "I'm looking at the Marines now. Those are our guys. Don't hit them!";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "40-im-looking", function () {
this._parent.subtitles.fadeOut(0.5);
});
Symbol 703 MovieClip Frame 545
_parent.subtitles.fadeIn(0.5);
var txt = "Looks like the fort wall is still standing. Switch to Hellfire missiles with your C key, and punch a hole for the Marines.";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "41-looks-like", function () {
play();
this._parent.subtitles.fadeOut(0.5);
});
stop();
Symbol 703 MovieClip Frame 552
_root.objGame.setTask("switchHellfire", "aimCrosshair");
stop();
Symbol 703 MovieClip Frame 556
_root.objGame.setTask("hitFortWall", "fortHit");
fortHitZone._visible = false;
stop();
_parent.subtitles.fadeIn(0.5);
var txt = "Keep the crosshair on the wall to guide the missile";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "42-keep-the", function () {
this._parent.subtitles.fadeOut(0.5);
});
Instance of Symbol 659 MovieClip "fortHitZone" in Symbol 703 MovieClip Frame 556
onClipEvent (load) {
this.destroyedBy = "hellfire";
this.destroyed = function () {
_root.objGame.taskComplete();
};
}
Symbol 703 MovieClip Frame 658
_parent.subtitles.fadeIn(0.5);
var txt = "Gunner. Target. My line of sight. Taliban. Hit Z to switch to the 30mm cannon. Take out those leakers.";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "43-gunner", function () {
this._parent.subtitles.fadeOut(0.5);
});
stop();
Symbol 703 MovieClip Frame 717
_parent.subtitles.fadeIn(0.5);
var txt = "Gunner. Target. My line of sight. Don\u2019t shoot. Movement. Is that enemy or civilian?";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "44-gunner", function () {
this._parent.subtitles.fadeOut(0.5);
});
Symbol 703 MovieClip Frame 780
if (talibanFort.t0._visible) {
_root.objGame.missedGoal();
}
if (talibanFort.t1._visible) {
_root.objGame.missedGoal();
}
if (talibanFort.t2._visible) {
_root.objGame.missedGoal();
}
if (talibanFort.t3._visible) {
_root.objGame.missedGoal();
}
if (talibanFort.t4._visible) {
_root.objGame.missedGoal();
}
if (talibanFort.t5._visible) {
_root.objGame.missedGoal();
}
if (talibanFort.t6._visible) {
_root.objGame.missedGoal();
}
Symbol 703 MovieClip Frame 845
_root.objSounds.play("bomber");
Symbol 703 MovieClip Frame 876
_parent.subtitles.fadeIn(0.5);
var txt = "I think it's just a local Afghan seeing what all the noise is about. Hold your fire. Let's get back to the main fight.";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "45-i-think-its", function () {
this._parent.subtitles.fadeOut(0.5);
});
Symbol 703 MovieClip Frame 1168
marines.gotoAndPlay("atFort");
Symbol 703 MovieClip Frame 1297
stop();
_parent.subtitles.fadeIn(0.5);
var txt = "The Marines are being out-flanked. They'll be over run in seconds. Switch to Flechette rockets with the X key and launch on the Taliban asap.";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "46-the-marines", function () {
this._parent.subtitles.fadeOut(0.5);
});
Symbol 703 MovieClip Frame 1382
stop();
Symbol 703 MovieClip Frame 1472
_root.objSounds.play("gun2");
Symbol 703 MovieClip Frame 1497
if (talibanFlank.t0._visible) {
_root.objGame.goalMissed();
}
if (talibanFlank.t1._visible) {
_root.objGame.goalMissed();
}
if (talibanFlank.t2._visible) {
_root.objGame.goalMissed();
}
if (talibanFlank.t3._visible) {
_root.objGame.goalMissed();
}
if (talibanFlank.t4._visible) {
_root.objGame.goalMissed();
}
if (talibanFlank.t5._visible) {
_root.objGame.goalMissed();
}
if (talibanFlank.t6._visible) {
_root.objGame.goalMissed();
}
Symbol 703 MovieClip Frame 1503
_parent.subtitles.fadeIn(0.5);
var txt = "Ugly Five-Two you're taking incoming anti-aircraft fire. Break right. We'll cover you.";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "47-ugly-five-two", function () {
this._parent.subtitles.fadeOut(0.5);
});
Symbol 703 MovieClip Frame 1624
this.sayUserCallsign(function () {
this.play();
});
stop();
Symbol 703 MovieClip Frame 1625
_parent.subtitles.fadeIn(0.5);
var txt = (_root.callsign + ", hit those Taliban shooting at Ugly Five-Two, quick as you can.");
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "48-hit-those", function () {
this._parent.subtitles.fadeOut(0.5);
});
Symbol 703 MovieClip Frame 1948
marines.gotoAndStop("outOfFort");
Symbol 703 MovieClip Frame 2039
marines.play();
Symbol 703 MovieClip Frame 2090
_parent.subtitles.fadeIn(0.5);
var txt = "Are those the Marines or Taliban...";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "49-are-those", function () {
this._parent.subtitles.fadeOut(0.5);
});
Symbol 703 MovieClip Frame 2132
stop();
Symbol 703 MovieClip Frame 2136
_parent.subtitles.fadeIn(0.5);
var txt = "... Checkfire, they're our guys. Looks like the action is over in the fort.";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "50-our-guys", function () {
this._parent.subtitles.fadeOut(0.5);
this.play();
});
stop();
Symbol 703 MovieClip Frame 2161
_parent.subtitles.fadeIn(0.5);
var txt = "Gunner. Target. My line of sight. Truck. Danger Close. How'd we miss that?";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "51-gunner", function () {
this._parent.subtitles.fadeOut(0.5);
this.play();
});
Symbol 703 MovieClip Frame 2200
stop();
Symbol 703 MovieClip Frame 2209
_parent.subtitles.fadeIn(0.5);
var txt = "Hold fire. No weapons seen. They look like Taliban to me though. Put down a 30 mike mike warning burst with the cannon close by. They'll either run away innocently or retaliate.";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "52-hold-fire", function () {
this._parent.subtitles.fadeOut(0.5);
});
stop();
_root.objGame.setTask("warnTruck", "destroyTruck");
warnHit._visible = false;
truckHit._visible = false;
Instance of Symbol 700 MovieClip "truckHit" in Symbol 703 MovieClip Frame 2209
onClipEvent (load) {
this.destroyed = function () {
_root.objSounds.fadeTo("52-hold-fire", 0, 5);
this._parent._parent.subtitles.fadeOut(0.5);
_root.objGame.missedGoal();
this._parent.gotoAndPlay("truckDestroyed");
};
}
Instance of Symbol 702 MovieClip "warnHit" in Symbol 703 MovieClip Frame 2209
onClipEvent (load) {
this.destroyedBy = "cannon";
this.destroyed = function () {
_root.objGame.taskComplete();
this._parent.talibanTruck.gotoAndPlay("getRPG");
};
}
Symbol 703 MovieClip Frame 2223
_root.objSounds.fadeTo("52-hold-fire", 0, 5);
_parent.subtitles.fadeOut(0.5);
Symbol 703 MovieClip Frame 2236
talibanTruck.gotoAndPlay("getRPG");
Symbol 703 MovieClip Frame 2249
_parent.subtitles.fadeIn(0.5);
var txt = "They're getting something out of the truck. That's an RPG! Hit them now.";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "53-they-are-getting", function () {
this._parent.subtitles.fadeOut(0.5);
});
stop();
truckHit._visible = false;
Instance of Symbol 700 MovieClip "truckHit" in Symbol 703 MovieClip Frame 2249
onClipEvent (load) {
this.destroyed = function () {
this._parent.gotoAndPlay("truckDestroyed");
};
}
Symbol 703 MovieClip Frame 2258
talibanTruck.gotoAndPlay("destroyed");
Symbol 703 MovieClip Frame 2306
_parent.subtitles.fadeIn(0.5);
var txt = "We're low on fuel. There's nothing left for us to do here, let's head home. We'll need to debrief with the boss at the Ops tent, but not before the traditional post mission game to see who makes the brews. Let's shoot some hoops when we get back.";
this.typeSpeech(_parent.subtitles.txtSubtitles, txt, "55-low-on-fuel", function () {
this._parent.subtitles.fadeOut(0.5);
this.play();
});
_root.objGame.weaponsActive = false;
_root.objGame.setWeapon("none");
_root.objSounds.stop("bullet-loop");
Symbol 703 MovieClip Frame 2394
stop();
Symbol 703 MovieClip Frame 2395
_parent.subtitles.fadeOut(0.5);
Symbol 703 MovieClip Frame 2397
_root.objSounds.fadeTo("helicopter", 0, 1);
_root.objSounds.fadeTo("cockpit_sound", 0, 2);
Symbol 703 MovieClip Frame 2494
_root.objSounds.stop("helicopter");
_root.objSounds.stop("cockpit_sound");
_root.misses = _root.misses + _root.objGame.misses;
_parent._parent.navsection = "fullmissiondebrief";
_parent.gotoAndPlay("out");
Mouse.show();
stop();
Symbol 713 MovieClip Frame 1
stop();
Symbol 713 MovieClip Frame 8
stop();
Symbol 716 MovieClip Frame 1
stop();
Symbol 716 MovieClip Frame 8
stop();
Symbol 719 MovieClip Frame 1
stop();
Symbol 719 MovieClip Frame 8
stop();
Symbol 720 Button
on (rollOver, dragOver) {
zmc.gotoAndPlay("in");
}
on (rollOut, dragOut) {
zmc.gotoAndPlay("out");
}
on (release) {
_root.objGame.setWeapon("cannon");
}
Symbol 721 Button
on (rollOver, dragOver) {
cmc.gotoAndPlay("in");
}
on (rollOut, dragOut) {
cmc.gotoAndPlay("out");
}
on (release) {
_root.objGame.setWeapon("hellfire");
}
Symbol 722 Button
on (rollOver, dragOver) {
xmc.gotoAndPlay("in");
}
on (rollOut, dragOut) {
xmc.gotoAndPlay("out");
}
on (release) {
_root.objGame.setWeapon("flechette");
}
Symbol 724 MovieClip Frame 1
alphabet = ["0", "8", "2", "9"];
this.onEnterFrame = function () {
variableText = "";
i = 0;
while (i <= 4) {
variableText = variableText + alphabet[random(4)];
tickerText.text = variableText;
i++;
}
};
Symbol 733 MovieClip Frame 1
stop();
Symbol 733 MovieClip Frame 21
gotoAndPlay ("in");
Symbol 734 MovieClip Frame 5
l1.gotoAndPlay("in");
Symbol 734 MovieClip Frame 10
l2.gotoAndPlay("in");
Symbol 734 MovieClip Frame 15
l3.gotoAndPlay("in");
Symbol 734 MovieClip Frame 20
l4.gotoAndPlay("in");
stop();
Symbol 736 MovieClip Frame 1
stop();
Symbol 736 MovieClip Frame 23
gotoAndStop ("idle");
Symbol 742 MovieClip Frame 1
centre._visible = false;
hit._visible = false;
crosshair.hit._visible = false;
topEdge._visible = false;
bottomEdge._visible = false;
leftEdge._visible = false;
rightEdge._visible = false;
subtitles._alpha = 0;
Symbol 742 MovieClip Frame 15
_root.objSounds.stop("type");
_root.objGame = new _root.Fort(this);
stop();
Symbol 742 MovieClip Frame 29
stop();
_parent.play();
Symbol 743 MovieClip Frame 1
var navsection;
var mcclip;
Symbol 743 MovieClip Frame 12
_root.objSounds.play("click2");
Symbol 743 MovieClip Frame 37
_root.objSounds.play("transition");
Symbol 743 MovieClip Frame 41
_root.objSounds.play("scratch");
Symbol 743 MovieClip Frame 60
mcclip = mission_intro;
Symbol 743 MovieClip Frame 65
_root.trackPoint("section_play_game");
stop();
_root.transitioning = false;
_root.letterA = "C";
_root.letterB = "U";
_root.callsign = (_root.letterToPhoneticCaps(_root.letterA) + " ") + _root.letterToPhoneticCaps(_root.letterB);
_root.objSounds.stop("helicopter");
_root.objSounds.stop("cockpit_sound");
Mouse.show();
Symbol 743 MovieClip Frame 66
_root.transitioning = true;
Symbol 743 MovieClip Frame 70
gotoAndPlay(navsection);
Symbol 743 MovieClip Frame 75
mcclip = select_initials;
Symbol 743 MovieClip Frame 80
_root.trackPoint("section_select_initials");
stop();
_root.transitioning = false;
_root.objSounds.stop("helicopter");
_root.objSounds.stop("cockpit_sound");
Mouse.show();
Symbol 743 MovieClip Frame 81
_root.transitioning = true;
Symbol 743 MovieClip Frame 85
gotoAndPlay(navsection);
Symbol 743 MovieClip Frame 90
mcclip = mission_1;
_root.callsign = (_root.letterToPhoneticCaps(_root.letterA) + " ") + _root.letterToPhoneticCaps(_root.letterB);
Symbol 743 MovieClip Frame 95
_root.trackPoint("section_mission1_brief");
stop();
_root.transitioning = false;
_root.objSounds.stop("helicopter");
_root.objSounds.stop("cockpit_sound");
Mouse.show();
Symbol 743 MovieClip Frame 96
_root.transitioning = true;
Symbol 743 MovieClip Frame 100
gotoAndPlay(navsection);
Symbol 743 MovieClip Frame 105
mcclip = buymc;
Symbol 743 MovieClip Frame 110
_root.trackPoint("section_buy");
stop();
_root.transitioning = false;
_root.objSounds.stop("helicopter");
_root.objSounds.stop("cockpit_sound");
Mouse.show();
Symbol 743 MovieClip Frame 111
_root.transitioning = true;
Symbol 743 MovieClip Frame 115
gotoAndPlay(navsection);
Symbol 743 MovieClip Frame 120
mcclip = book_mc;
img_panel.gotoAndPlay("bookjacket");
Symbol 743 MovieClip Frame 125
_root.trackPoint("section_book");
stop();
_root.transitioning = false;
_root.objSounds.stop("helicopter");
_root.objSounds.stop("cockpit_sound");
Mouse.show();
Symbol 743 MovieClip Frame 130
gotoAndPlay(navsection);
Symbol 743 MovieClip Frame 140
_root.trackPoint("section_mission2_brief");
stop();
_root.transitioning = false;
_root.objSounds.stop("helicopter");
_root.objSounds.stop("cockpit_sound");
Mouse.show();
Symbol 743 MovieClip Frame 141
_root.transitioning = true;
Symbol 743 MovieClip Frame 145
gotoAndPlay(navsection);
Symbol 743 MovieClip Frame 155
_root.trackPoint("section_game_finished");
stop();
_root.transitioning = false;
_root.objSounds.stop("helicopter");
_root.objSounds.stop("cockpit_sound");
Mouse.show();
Symbol 743 MovieClip Frame 156
_root.transitioning = true;
Symbol 743 MovieClip Frame 160
gotoAndPlay(navsection);
Symbol 743 MovieClip Frame 166
_root.objSounds.play("click2");
Symbol 743 MovieClip Frame 174
_root.trackPoint("section_mission1_play");
stop();
_root.transitioning = false;
mcclip = recce;
_root.objSounds.play("scratch");
Symbol 743 MovieClip Frame 175
_root.transitioning = true;
Symbol 743 MovieClip Frame 177
_root.objSounds.play("click2");
Symbol 743 MovieClip Frame 182
Mouse.show();
gotoAndPlay(navsection);
Symbol 743 MovieClip Frame 187
_root.objSounds.play("click2");
Symbol 743 MovieClip Frame 195
_root.trackPoint("section_mission2_play");
stop();
_root.transitioning = false;
mcclip = fort;
_root.objSounds.play("scratch");
Symbol 743 MovieClip Frame 196
_root.transitioning = true;
Symbol 743 MovieClip Frame 198
_root.objSounds.play("click2");
Symbol 743 MovieClip Frame 203
Mouse.show();
gotoAndPlay(navsection);
Symbol 744 MovieClip Frame 50
stop();