Frame 1
i = 1;
minDistance = 5;
Frame 2
if (getBytesLoaded() >= getBytesTotal()) {
gotoAndPlay (7);
}
startX = _root._xmouse;
startY = _root._ymouse;
Frame 3
endX = _root._xmouse;
endY = _root._ymouse;
Frame 4
if ((Math.abs(endX - startX) > minDistance) || (Math.abs(endY - startY) > minDistance)) {
duplicateMovieClip ("bubble", "bubble" + i, i);
_root["bubble" + i]._x = _root._xmouse;
_root["bubble" + i]._y = _root._ymouse;
_root["bubble" + i]._alpha = (Math.random() * 75) + 25;
test = random(2);
if (test == 1) {
_root["bubble" + i]._xscale = (Math.random() * 100) + 10;
_root["bubble" + i]._yscale = _root["bubble" + i]._xscale;
} else {
_root["bubble" + i]._xscale = ((-Math.random()) * 100) + 10;
_root["bubble" + i]._yscale = -_root["bubble" + i]._xscale;
}
i++;
}
Frame 5
if (count > 1000) {
count = 1;
}
gotoAndPlay (2);
Frame 15
loadMovieNum ("fn-turtlegame-bonus.swf", 10);
Frame 18
stop();
Frame 22
stop();
Frame 108
gameOn = 1;
restartGame = 0;
turtleLeanAngle = 0;
turtleVX = 0;
turtleVY = 0;
turtleAngleMove = 3;
turtleAngleMax = 25;
turtleAngleVXConv = 0.7;
turtleAngleReturn = 1;
turtleVYMove = 2;
turtleVYMax = 12;
turtleVYReturn = 0.75;
distanceToTunnelForceConv = 0.06;
distanceToTunnelForceConvIncr = 1E-5;
dttfcStart = distanceToTunnelForceConv;
dttfcStop = 0.12;
dttfcCutoff2 = 0.1;
obsticleWaitMin = 35;
obsticleWaitMax = 75;
obsticleWait = obsticleWaitMax;
obsticleWaitCounter = 0;
obsticleWaitDecrement = 5;
powerupWaitMin = 50;
powerupWaitMax = 120;
powerupWait = powerupWaitMax;
powerupWaitCounter = 0;
objectTweenSteps = 65;
objectTweenStepsDecrement = 0.017;
objectTweenStepsMin = 25;
dupeCounter = 0;
dupeCounterMax = 500;
startGameWait = 20;
turtleFlashing = 0;
livesMax = 3;
livesLeft = livesMax;
babyTurtlesCaught = 0;
turtleBoundaryBorder = 0;
turtleBoundaryLeft = -turtleBoundaryBorder;
turtleBoundaryRight = Stage.width + turtleBoundaryBorder;
turtleBoundaryTop = -turtleBoundaryBorder;
turtleBoundaryBottom = Stage.height + turtleBoundaryBorder;
turtleOutOfBoundsCounter = 0;
turtleOutOfBoundsMax = 50;
turtleFallOffVX = 0;
turtleFallOffVY = 0;
scoreLocal = 0;
scorePerTick = 1;
scoreRemovedObsticle = 50;
scorePowerup = 500;
ridingClipWait = 0;
ridingClipWaitMin = 150;
ridingClipWaitMax = 500;
ridingClipWaitCounter = 0;
ridingClipsTotal = 3;
ridingClipLast = 0;
mailer.loadMovie("mailer-turtle.swf");
scores.loadMovie("http://www.disney.go.com/disneyvideos/animatedfilms/findingnemo/turtle-scores.swf");
badWords.loadMovie("disneyBadWords.swf");
centerX = Stage.width / 2;
centerY = Stage.height / 2;
Frame 109
function turtleRight() {
if (turtleLeanAngle < (turtleAngleMax - turtleAngleMove)) {
turtleLeanAngle = turtleLeanAngle + turtleAngleMove;
} else {
turtleLeanAngle = turtleAngleMax;
}
}
function turtleLeft() {
if (turtleLeanAngle > ((-turtleAngleMax) + turtleAngleMove)) {
turtleLeanAngle = turtleLeanAngle - turtleAngleMove;
} else {
turtleLeanAngle = -turtleAngleMax;
}
}
function turtleUp() {
if (turtleVY > ((-turtleVYMax) + turtleVYMove)) {
turtleVY = turtleVY - turtleVYMove;
} else {
turtleVY = -turtleVYMax;
}
}
function turtleDown() {
if (turtleVY < (turtleVYMax - turtleVYMove)) {
turtleVY = turtleVY + turtleVYMove;
} else {
turtleVY = turtleVYMax;
}
}
function createObsticle() {
duplicateMovieClip ("masterObsticle", "obsticle" add dupeCounter, dupeCounter + 100);
dupeCounter++;
if (dupeCounter > dupeCounterMax) {
dupeCounter = 0;
}
}
function createPowerup() {
duplicateMovieClip ("masterPowerup", "powerup" add dupeCounter, dupeCounter + 100);
dupeCounter++;
if (dupeCounter > dupeCounterMax) {
dupeCounter = 0;
}
}
function obsticleHitTurtle(whichObsticle) {
if ((turtleFlashing == 0) and (gameOn == 1)) {
trace(whichObsticle add " hit turtle");
turtle.gotoAndPlay("flash");
sounds.gotoAndPlay("badObsticle");
scoreLocal = scoreLocal - scoreRemovedObsticle;
if (scoreLocal < 0) {
scoreLocal = 0;
}
}
}
function powerupHitTurtle(whichPowerup) {
if (gameOn == 1) {
if (Math.random() < 0.5) {
sounds.gotoAndPlay("goodObsticle1");
} else {
sounds.gotoAndPlay("goodObsticle2");
}
babyTurtlesCaught++;
scoreLocal = scoreLocal + scorePowerup;
}
}
function turtleDied() {
gameOn = 0;
turtle.anim.stop();
path.stop();
if (distanceToTunnelForceConv >= dttfcStop) {
if ((_level10.getBytesLoaded() >= _level10.getBytesTotal()) and (_level10.getBytesTotal() > 30)) {
_level10.gotoAndPlay("playVideo");
}
screens.gotoAndStop("gameOver3");
} else if (distanceToTunnelForceConv >= dttfcCutoff2) {
screens.gotoAndStop("gameOver2");
} else {
screens.gotoAndStop("gameOver1");
}
}
function turtleFellOut() {
trace("turtle fell out");
gameOn = 0;
turtleFallOff = 1;
turtleFallOffVX = -1 + (Math.ceil((turtle._x - centerX) / 100000) * 2);
turtleFallOffVY = -1 + (Math.ceil((turtle._y - centerY) / 100000) * 2);
trace((((((("_x=" add turtle._x) add " _y=") add turtle._y) add " vx=") add turtleFallOffVX) add " vy=") add turtleFallOffVY);
turtle.anim.stop();
path.stop();
turtleDied();
}
function restartCleanUp() {
stopAllSounds();
removeMovieClip("turtle");
removeMovieClip("screens");
removeMovieClip("scoreboard");
gotoIntro = 1;
}
Frame 110
duplicateMovieClip ("masterScreens", "screens", 1000001);
duplicateMovieClip ("masterScoreboard", "scoreboard", 1000002);
scoreboard._x = 400;
scoreboard._y = 20;
duplicateMovieClip ("masterTurtle", "turtle", 1000000);
masterTurtle.anim.stop();
turtleVY = -15;
ridingClipWait = ridingClipWaitMin + (Math.random() * (ridingClipWaitMax - ridingClipWait));
Frame 112
if (Key.isDown(38) and (gameOn == 1)) {
turtleUp();
}
if (Key.isDown(40) and (gameOn == 1)) {
turtleDown();
}
if (Key.isDown(37) and (gameOn == 1)) {
turtleLeft();
}
if (Key.isDown(39) and (gameOn == 1)) {
turtleRight();
}
if (Key.isDown(32) and (gameOn == 1)) {
}
if (startGameWait > 0) {
startGameWait--;
if (startGameWait == 0) {
startGameWait = -1;
path.gotoAndPlay("start");
}
}
tunnelCenterX = (path.follow._x * path._xscale) / 100;
tunnelCenterY = (path.follow._y * path._xscale) / 100;
tunnel._x = tunnelCenterX;
tunnel._y = tunnelCenterY;
if ((obsticleWaitCounter >= obsticleWait) and (gameOn == 1)) {
obsticleWaitCounter = 0;
obsticleWait = obsticleWait - obsticleWaitDecrement;
if (obsticleWait < obsticleWaitMin) {
obsticleWait = obsticleWaitMin;
}
objectTweenSteps = objectTweenSteps - objectTweenStepsDecrement;
if (objectTweenSteps < objectTweenStepsMin) {
objectTweenSteps = objectTweenStepsMin;
}
createObsticle();
trace("objectTweenSteps=" add objectTweenSteps);
} else {
obsticleWaitCounter++;
}
if ((powerupWaitCounter >= powerupWait) and (gameOn == 1)) {
powerupWaitCounter = 0;
powerupWait = powerupWaitMin + (Math.random() * (powerupWaitMax - powerupWaitMin));
createPowerup();
} else {
powerupWaitCounter++;
}
objectTweenSteps = objectTweenSteps - objectTweenStepsDecrement;
if (objectTweenSteps < objectTweenStepsMin) {
objectTweenSteps = objectTweenStepsMin;
}
if ((ridingClipWaitCounter > ridingClipWait) and (gameOn == 1)) {
ridingClipWaitCounter = 0;
ridingClipWait = ridingClipWaitMin + (Math.random() * (ridingClipWaitMax - ridingClipWait));
do {
ridingClipNew = Math.ceil(Math.random() * ridingClipsTotal);
} while (ridingClipNew == ridingClipLast);
audioClip = "ridingClip" add ridingClipNew;
trace("ac=" add audioClip);
ridingClipLast = ridingClipNew;
sounds.gotoAndPlay(audioClip);
} else if (gameOn == 1) {
ridingClipWaitCounter++;
}
if (gameOn == 1) {
distanceToTunnelForceConv = distanceToTunnelForceConv + distanceToTunnelForceConvIncr;
turtle._x = turtle._x - ((path.follow._x - centerX) * distanceToTunnelForceConv);
turtle._y = turtle._y - ((path.follow._y - centerY) * distanceToTunnelForceConv);
turtleVX = turtleLeanAngle * turtleAngleVXConv;
if (distanceToTunnelForceConv >= dttfcStop) {
turtleDied();
}
} else if (turtleFallOff == 1) {
turtleVX = turtleVX + turtleFallOffVX;
turtleVY = turtleVY + turlteFallOffVY;
}
if ((gameOn == 1) or (turtleFallOff == 1)) {
turtle._x = turtle._x + turtleVX;
turtle._y = turtle._y + turtleVY;
turtle._rotation = turtleLeanAngle;
}
if (Math.abs(turtleLeanAngle) < turtleAngleReturn) {
turtleLeanAngle = 0;
} else if (turtleLeanAngle > 0) {
turtleLeanAngle = turtleLeanAngle - turtleAngleReturn;
} else if (turtleLeanAngle < 0) {
turtleLeanAngle = turtleLeanAngle + turtleAngleReturn;
}
if (Math.abs(turtleVY) < turtleVYReturn) {
turtleVY = 0;
} else if (turtleVY > 0) {
turtleVY = turtleVY - turtleVYReturn;
} else if (turtleVY < 0) {
turtleVY = turtleVY + turtleVYReturn;
}
if (((((turtle._x <= turtleBoundaryLeft) or (turtle._x >= turtleBoundaryRight)) or (turtle._y <= turtleBoundaryTop)) or (turtle._y >= turtleBoundaryBottom)) and (gameOn == 1)) {
turtleOutOfBoundsCounter++;
if (turtleOutOfBoundsCounter > turtleOutOfBoundsMax) {
turtleFellOut();
}
} else {
turtleOutOfBoundsCounter = 0;
}
if (gameOn == 1) {
scoreLocal = scoreLocal + scorePerTick;
scoreBoard.scoreOutput = scoreLocal;
scoreBoard.babyTurtlesOutput = babyTurtlesCaught;
gameProgressPercent = ((distanceToTunnelForceConv - dttfcStart) / (dttfcStop - dttfcStart)) * 100;
scoreBoard.gameProgress.gotoAndStop(Math.round(gameProgressPercent));
}
if (restartGame == 1) {
restartCleanUp();
gotoAndPlay (26);
} else {
gotoAndPlay (111);
}
Symbol 5 MovieClip Frame 1
stop();
Symbol 6 MovieClip Frame 3
if (_root.getBytesLoaded() >= _root.getBytesTotal()) {
} else {
loadingProgress.gotoAndStop(Math.round((_root.getBytesLoaded() / _root.getBytesTotal()) * 100));
}
gotoAndPlay (2);
Symbol 9 MovieClip Frame 25
removeMovieClip(this);
Symbol 20 Button
on (release) {
stopAllSounds();
gotoAndPlay (26);
}
Symbol 21 Button
on (release) {
gotoAndStop (22);
}
Symbol 25 Button
on (release) {
getURL ("http://www.findingnemo.com", "_blank");
}
Symbol 28 Button
on (release) {
getURL ("javascript:window.close();", "_self");
}
Symbol 34 Button
on (release) {
getURL ("http://www.findingnemo.com", "_blank");
}
Symbol 46 Button
on (release) {
gotoAndStop (18);
}
Symbol 49 MovieClip Frame 1
stop();
Symbol 49 MovieClip Frame 741
gotoAndPlay (5);
Symbol 70 MovieClip Frame 1
stop();
Instance of Symbol 48 MovieClip "collisionBox" in Symbol 70 MovieClip Frame 1
onClipEvent (load) {
this._visible = 0;
}
Symbol 70 MovieClip Frame 5
_parent.turtleFlashing = 1;
Symbol 70 MovieClip Frame 14
_parent.turtleFlashing = 0;
gotoAndStop (1);
Symbol 72 MovieClip Frame 1
startScale = 15;
endScale = 100;
startCollisionScale = 75;
endCollisionScale = 115;
startAlpha = 30;
endAlpha = 150;
tweenSteps = Math.round(_parent.objectTweenSteps);
tweenStepsCounter = 3;
finalSide = Math.random();
if (finalSide < 0.25) {
finalX = Math.random() * Stage.width;
finalY = -5 + ((endScale * this._height) / 100);
} else if (finalSide < 0.5) {
finalX = (Stage.width + 5) + ((endScale * this._width) / 100);
finalY = Math.random() * Stage.height;
} else if (finalSide < 0.75) {
finalX = Math.random() * Stage.width;
finalY = (Stage.height + 5) + ((endScale * this._height) / 100);
} else {
finalX = -5 + ((endScale * this._width) / 100);
finalY = Math.random() * Stage.height;
}
startX = _parent.tunnelCenterX;
startY = _parent.tunnelCenterY;
scaleRange = endScale - startScale;
alphaRange = endAlpha - startAlpha;
xRange = finalX - startX;
yRange = finalY - startY;
Symbol 72 MovieClip Frame 2
if (this._name eq "masterObsticle") {
stop();
}
Symbol 72 MovieClip Frame 4
tweenSquared = Math.pow(tweenStepsCounter / tweenSteps, 4);
newScale = startScale + (tweenSquared * scaleRange);
if ((newScale >= startCollisionScale) and (newScale <= endCollisionScale)) {
if (this.hitTest(_root.turtle.collisionBox)) {
trace("hit");
_root.obsticleHitTurtle(this._name);
}
}
this._xscale = newScale;
this._yscale = newScale;
this._alpha = startAlpha + (tweenSquared * alphaRange);
this._x = startX + (tweenSquared * xRange);
this._y = startY + (tweenSquared * yRange);
if (tweenStepsCounter > tweenSteps) {
trace("removing " add this._name);
this.removeMovieClip();
} else {
tweenStepsCounter++;
}
gotoAndPlay (3);
Symbol 73 MovieClip Frame 1
startScale = 20;
endScale = 100;
startCollisionScale = 65;
endCollisionScale = 125;
startAlpha = 30;
endAlpha = 150;
tweenSteps = Math.round((_parent.objectTweenSteps + 12) - 1);
tweenStepsCounter = 5;
finalSide = Math.random();
if (finalSide < 0.25) {
finalX = Math.random() * Stage.width;
finalY = -5 + ((endScale * this._height) / 100);
} else if (finalSide < 0.5) {
finalX = (Stage.width + 5) + ((endScale * this._width) / 100);
finalY = Math.random() * Stage.height;
} else if (finalSide < 0.75) {
finalX = Math.random() * Stage.width;
finalY = (Stage.height + 5) + ((endScale * this._height) / 100);
} else {
finalX = -5 + ((endScale * this._width) / 100);
finalY = Math.random() * Stage.height;
}
startX = _parent.tunnelCenterX;
startY = _parent.tunnelCenterY;
scaleRange = endScale - startScale;
alphaRange = endAlpha - startAlpha;
xRange = finalX - startX;
yRange = finalY - startY;
Symbol 73 MovieClip Frame 2
if (this._name eq "masterPowerup") {
stop();
}
Symbol 73 MovieClip Frame 4
tweenSquared = Math.pow(tweenStepsCounter / tweenSteps, 4);
newScale = startScale + (tweenSquared * scaleRange);
if ((newScale >= startCollisionScale) and (newScale <= endCollisionScale)) {
if (this.hitTest(_root.turtle.collisionBox)) {
trace("hit");
_root.powerUpHitTurtle(this._name);
this.removeMovieClip();
}
}
this._xscale = newScale;
this._yscale = newScale;
this._alpha = startAlpha + (tweenSquared * alphaRange);
this._x = startX + (tweenSquared * xRange);
this._y = startY + (tweenSquared * yRange);
if (tweenStepsCounter > tweenSteps) {
trace("removing " add this._name);
this.removeMovieClip();
} else {
tweenStepsCounter++;
}
gotoAndPlay (3);
Symbol 80 MovieClip Frame 1
stop();
Symbol 82 MovieClip Frame 1
babyTurtlesOutput = 0;
Symbol 82 MovieClip Frame 5
stop();
Symbol 89 MovieClip Frame 1
stop();
Symbol 89 MovieClip Frame 6
gotoAndStop (1);
Symbol 89 MovieClip Frame 16
gotoAndStop (1);
Symbol 89 MovieClip Frame 26
gotoAndStop (1);
Symbol 89 MovieClip Frame 36
trace("rc1");
gotoAndStop (1);
Symbol 89 MovieClip Frame 46
trace("rc2");
gotoAndStop (1);
Symbol 89 MovieClip Frame 56
gotoAndStop (1);
Symbol 94 Button
on (release) {
if (_parent._parent.badWords.containsBadWord(playerName) == 1) {
playerName = "";
} else {
_parent._parent.scores.addScore(playerName, _parent._parent.scoreLocal);
gotoAndPlay (10);
}
}
Symbol 100 MovieClip Frame 1
stop();
Symbol 100 MovieClip Frame 55
_parent.gotoAndPlay("showScores");
stop();
Symbol 104 Button
on (release) {
_parent.restartGame = 1;
}
Symbol 105 Button
on (release) {
gotoAndStop (50);
}
Symbol 111 Button
on (release) {
_level10.gotoAndPlay("playVideo");
gotoAndStop (20);
}
Symbol 113 Button
on (release) {
_level10.gotoAndPlay("playVideo");
}
Symbol 114 MovieClip Frame 1
if ((_level10.getBytesLoaded() >= _level10.getBytesTotal()) and (_level10.getBytesTotal() > 30)) {
gotoAndStop (20);
}
Symbol 114 MovieClip Frame 4
derPercentLoaded = (_level10.getBytesLoaded() / _level10.getBytesTotal()) * 100;
loadingProgress.gotoAndStop(Math.round(derPercentLoaded));
if ((derPercentLoaded >= 100) and (_level10.getBytesTotal() > 30)) {
gotoAndStop (11);
} else {
gotoAndPlay (3);
}
Symbol 114 MovieClip Frame 11
stop();
Symbol 114 MovieClip Frame 20
stop();
Symbol 136 Button
on (release) {
sendErrorText = "";
gotoAndStop(endScreen);
}
Symbol 137 Button
on (release) {
getURL ("javascript:trackCruisingGameSend();");
_parent.mailer.sendMail(escape(userName), escape(friendName), friendEmail, "");
sendStartTime = getTimer();
gotoAndPlay (58);
}
Symbol 142 Button
on (release) {
gotoAndStop(endScreen);
}
Symbol 165 MovieClip Frame 1
stop();
Symbol 165 MovieClip Frame 5
endScreen = "fellOut";
stop();
Symbol 165 MovieClip Frame 20
endScreen = "gameOver1";
stop();
Symbol 165 MovieClip Frame 30
endScreen = "gameOver2";
stop();
Symbol 165 MovieClip Frame 40
endScreen = "gameOver3";
stop();
Symbol 165 MovieClip Frame 50
userName = "";
friendName = "";
friendEmail = "";
stop();
Symbol 165 MovieClip Frame 59
if (_parent.mailer.sendStatus == "sent") {
sendErrorText = "";
gotoAndStop (60);
} else if ((_parent.mailer.sendStatus == "error") || ((getTimer() - sendStartTime) > 10000)) {
sendErrorText = "Dude!\nI coudn't send your message like that. Please try again.";
gotoAndStop (50);
} else {
gotoAndPlay (58);
}
Symbol 165 MovieClip Frame 70
endScreen = "showScores";
_parent.scores.getTopScores();
play();
Symbol 165 MovieClip Frame 72
stop();