STORY   LOOP   FURRY   PORN   GAMES
• C •   SERVICES [?] [R] RND   POPULAR
Archived flashes:
228096
/disc/ · /res/     /show/ · /fap/ · /gg/ · /swf/P0001 · P2561 · P5121

swfchan turned sixteen years old yesterday! (5may2024)

<div style="position:absolute;top:-99px;left:-99px;"><img src="http://swfchan.com:57475/97199398?noj=FRM97199398-6DC" width="1" height="1"></div>

Nerve Jangla - complete the 30 mini puzzle and skill games.swf

This is the info page for
Flash #92557

(Click the ID number above for more basic data on this flash file.)


Text
High Scores

X:

UserName

Score

Today

Today

Today

This Week

This Week

This Month

This Month

This Year

This Year

All-Time

All-Time

Newgrounds API Connector

Connecting to the Newgrounds Gateway...

Connection Established!

medal unlocked!

MEDAL GET!

100pts

YOU ARE NOT LOGGED IN!

You will not be able to use any
members-only features!

Some features may be
temporarily unavailable.

API CONNECTION FAILED

NOTICE!

A new version is now available!
Click the button below to check it out.

View latest version

UNAUTHORIZED USE!!

This website is hosting this file without proper consent!
Click the button below to view a legal version.

View authorized version

ninjadoodle

.com

fun n' games until somebody gets a shuriken in their eye!

PLAY

HELP

CREDITS

SCORES

Nerve

Jangla!

click here to
watch.

WALKTHROUGH

ninjadoodle.com
presents:

www.ninjadoodle.com

www.ninjadoodle.com

PAUSED

RESUME

QUIT

whoops!

cool!

huh

explosionA

explosionB

blip

success

rope

creak

pickup

jump

fail

correct

hey

engine

sink

pass

crowd

stinger

D
U
N
K

Time: 0

Yin 2 Yang!

Copy!

20 sec penalty for the wrong answer!

Odd one out!

Throw to collect!

A

B

C

D

Match up!

Woof!

I am
heavenly.

Shoot
this!

Now
this!

Reverse Maze!

4

5

6

7

How many triangles?

Fertilize!

+

=

I look like
an orange slice!

I feel so
alone.

20 sec penalty for
the wrong answer!

How
many
squares?

11

12

13

14

Deprickle!

I rock!

La

Laa

How
many
lines?

Jump!

Final Time:

Awesome Work!

TRY AGAIN?

SUBMIT

Visit the rewards
section at
ninjadoodle.com
for your gift!
password: nervewreck

0

was designed and
programmed by...
Tom "Ninjadoodle" Vencel

MENU

NerveJangla

Use the mouse and follow
the simple on-screen instructions.
If you get really stuck, then consult
the walkthrough at ninjadoodle.com

Help

ActionScript [AS1/AS2]

Frame 1
Stage.scaleMode = "noScale"; _quality = "HIGH"; _global.myRoot = this; globalSound = new Sound(); sound = true; var rightClick = new ContextMenu(); rightClick.hideBuiltInItems(); _global.myRoot.menu = rightClick; function deadClick() { } function gotoMySite() { getURL ("http://www.ninjadoodle.com", "_top"); } Stage.scaleMode = "noScale"; _global.myRoot = this; globalSound = new Sound(); sound = true; var myMenu = new ContextMenu(); myMenu.hideBuiltInItems(); var copyrightNotice = new ContextMenuItem("\u00A9 2009 Tom Vencel, ninjadoodle.com", deadClick); copyrightNotice.separatorBefore = true; var mySiteLink = new ContextMenuItem("www.ninjadoodle.com", gotoMySite); myMenu.customItems.push(mySiteLink, copyrightNotice); _global.myRoot.menu = myMenu;
Instance of Symbol 175 MovieClip [API Connector (NewgroundsAPI)] in Frame 1
//component parameters onClipEvent (construct) { encryption_key = "EajovJFq2DRQaVzmDazv5WSGF2EVBjkQ"; movie_id = "11556"; movie_version = "1.0"; fake_session = true; debug = true; error_screens = true; medal_popups = true; }
Instance of Symbol 105 MovieClip [Preloader Bar (NewgroundsAPI)] in Frame 1
//component parameters onClipEvent (construct) { AUTO_PLAY = false; }
Instance of Symbol 73 MovieClip [Flash Ad (NewgroundsAPI)] in Frame 1
//component parameters onClipEvent (construct) { show_background = true; }
Frame 2
buttonLink.onRelease = function () { getURL ("http://www.ninjadoodle.com/", "_blank"); };
Frame 92
stop(); headPick = random(9) + 2; bodyPick = random(9) + 2; legsPick = random(9) + 2; dudeGuide.dudeHolder.head.gotoAndStop(headPick); dudeGuide.dudeHolder.body.gotoAndStop(bodyPick); dudeGuide.dudeHolder.legs.gotoAndStop(legsPick); moveOn = false; help = false; scores = false; credits = false; buttonPlay.onPress = function () { stopAllSounds(); moveOn = true; help = false; scores = false; credits = false; fg.play(); }; buttonHelp.onPress = function () { moveOn = false; help = true; scores = false; credits = false; fg.play(); }; buttonScores.onPress = function () { moveOn = false; help = false; scores = true; credits = false; fg.play(); }; buttonCredits.onPress = function () { moveOn = false; help = false; scores = false; credits = true; fg.play(); }; buttonLink.onRelease = function () { getURL ("http://www.ninjadoodle.com/", "_blank"); }; buttonWalkthrough.onRelease = function () { getURL ("http://www.ninjadoodle.com/nervejangla-walkthrough/", "_blank"); }; fg.speaker.onRelease = function () { if (sound) { sound = false; _global.myRoot.globalSound.setVolume(0); } else { sound = true; _global.myRoot.globalSound.setVolume(100); } }; fg.q.onRelease = function () { trace(_quality); if (_quality == "HIGH") { prev = "HIGH"; _quality = "MEDIUM"; } else if ((_quality == "MEDIUM") && (prev == "HIGH")) { _quality = "LOW"; } else if ((_quality == "MEDIUM") && (prev == "LOW")) { _quality = "HIGH"; } else if (_quality == "LOW") { _quality = "MEDIUM"; prev = "LOW"; } }; onEnterFrame = function () { if (sound) { fg.speaker.gotoAndStop(1); } else { fg.speaker.gotoAndStop(2); } if (_quality == "HIGH") { fg.q.gotoAndStop(1); } else if (_quality == "MEDIUM") { fg.q.gotoAndStop(2); } else if (_quality == "LOW") { fg.q.gotoAndStop(3); } if (fg._currentframe == fg._totalframes) { if (moveOn) { stopAllSounds(); play(); } if (help) { gotoAndStop ("help"); } if (scores) { gotoAndStop ("scores"); } if (credits) { gotoAndStop ("credits"); } } }; time = 0; score = 0; timerOn = true; countdown = 60; onMouseDown = function () { pressed = true; }; onMouseUp = function () { pressed = false; }; setup = function () { Mouse.show(); player._visible = true; fg.buttonContinue._visible = false; levelPassed = false; gamePaused = false; shaking = false; quit = false; fg.q.onRelease = function () { trace(_quality); if (_quality == "HIGH") { prev = "HIGH"; _quality = "MEDIUM"; } else if ((_quality == "MEDIUM") && (prev == "HIGH")) { _quality = "LOW"; } else if ((_quality == "MEDIUM") && (prev == "LOW")) { _quality = "HIGH"; } else if (_quality == "LOW") { _quality = "MEDIUM"; prev = "LOW"; } }; fg.speaker.onRelease = function () { if ((!levelPassed) and (!gamePaused)) { if (sound) { sound = false; _global.myRoot.globalSound.setVolume(0); fg.speaker.gotoAndStop(2); } else { sound = true; _global.myRoot.globalSound.setVolume(100); fg.speaker.gotoAndStop(1); } } }; fg.pauseGame.gotoAndStop(1); fg.pauseGame.onRelease = function () { if (fg.pauseGame._currentframe == 1) { fg.pauseGame.play(); fg.pausedMenu.play(); gamePaused = true; timerOn = false; } }; fg.buttonContinue.onPress = function () { levelPassed = true; }; onMouseDown = function () { pressed = true; }; onMouseUp = function () { pressed = false; }; }; game = function () { shake(); count(); fg.timeText = "Time: " + time; if (timerOn) { if (countdown > 0) { countdown--; } else { time++; countdown = 60; } } if (sound) { fg.speaker.gotoAndStop(1); } else { fg.speaker.gotoAndStop(2); } if (_quality == "HIGH") { fg.q.gotoAndStop(1); } else if (_quality == "MEDIUM") { fg.q.gotoAndStop(2); } else if (_quality == "LOW") { fg.q.gotoAndStop(3); } if (pressed) { pressCounter++; } else { pressCounter = 0; } }; passed = function () { if (!levelPassed) { fg.sounds.pass.play(); levelPassed = true; fg.timer.stop(); fg.pass.play(); } }; rockOn = function () { if (levelPassed) { fg.pauseGame.gotoAndStop(2); if (fg.pass._currentframe == fg.pass._totalframes) { if (fg._currentframe != fg._totalframes) { fg.play(); } } if (fg._currentframe == fg._totalframes) { play(); } } if (gamePaused) { if (quit) { if (fg._currentframe != fg._totalframes) { fg.play(); } if (fg._currentframe == fg._totalframes) { gotoAndPlay ("menu"); } } } };
Frame 93
stop(); setup(); dragging = false; dunked = false; radius = donut._height / 2; donut.onRelease = function () { }; donut.useHandCursor = true; onEnterFrame = function () { game(); if ((!levelPassed) and (!gamePaused)) { if (pressed and (!dunked)) { if (donut.hitTest(_xmouse, _ymouse, true)) { dragging = true; } } else { dragging = false; } if (!dunked) { if (dragging) { donut._y = _ymouse; } if ((donut._y - radius) < 0) { donut._y = radius; } if (donut._y > 260) { dunked = true; donut._y = 260; donut.play(); passed(); } } } else { rockOn(); } };
Frame 94
stop(); setup(); radius = player._height / 2; xPosPlayer = 140; yPosPlayer = ground._y - radius; draggingPlayer = false; xPosWall = 320; yPosWall = 350; draggingWall = false; player.onRelease = function () { }; player.useHandCursor = true; wall.onRelease = function () { }; wall.useHandCursor = true; onEnterFrame = function () { game(); if ((!levelPassed) and (!gamePaused)) { if (pressed) { if (pressCounter == 1) { if (player.hitTest(_xmouse, _ymouse, true)) { if (!draggingWall) { draggingPlayer = true; } } if (wall.hitTest(_xmouse, _ymouse, true)) { if (!draggingPlayer) { draggingWall = true; wallDragY = _ymouse - wall._y; } } } } else { draggingPlayer = false; draggingWall = false; } if (draggingPlayer) { player._alpha = 25; player._x = _xmouse; player._y = _ymouse; } else { player._alpha = 100; player._y = yPosPlayer; } if (player._y > (350 - radius)) { player._y = yPosPlayer; } if (player._y < (0 + radius)) { player._y = 0 + radius; } if (player._x > (640 - radius)) { player._x = 640 - radius; } if (player._x < (0 + radius)) { player._x = 0 + radius; } if ((((_xmouse < 0) or (_xmouse > 640)) or (_ymouse < 0)) or (_ymouse > 350)) { draggingPlayer = false; draggingWall = false; } if (draggingWall) { wall._alpha = 25; wall._y = _ymouse - wallDragY; } else { wall._alpha = 100; } if (wall._y > 350) { wall._y = 350; } if (player.hitTest(wall) or ASnative(800, 2) /* [Key] isDown */(2)) { if (player.hitTest(wall)) { fg.sounds.fail.play(); } draggingPlayer = false; player._x = xPosPlayer; player._y = yPosPlayer; draggingWall = false; wall._x = xPosWall; wall._y = yPosWall; } if (player.hitTest(yang)) { if (yang._currentframe == 1) { yang.play(); player._visible = false; player._x = xPosPlayer; player._y = yPosPlayer; passed(); } } } else { rockOn(); } };
Frame 95
stop(); setup(); headPick = random(9) + 2; bodyPick = random(9) + 2; legsPick = random(9) + 2; dudeGuide.dudeHolder.head.gotoAndStop(headPick); dudeGuide.dudeHolder.body.gotoAndStop(bodyPick); dudeGuide.dudeHolder.legs.gotoAndStop(legsPick); dude.onRelease = function () { }; dude.useHandCursor = true; onEnterFrame = function () { game(); if ((!levelPassed) and (!gamePaused)) { if (pressed) { if (pressCounter == 1) { pressed = false; if (dude.dudeHolder.head.hitTest(_xmouse, _ymouse, true)) { dude.dudeHolder.head.play(); } if ((dude.dudeHolder.body.hitTest(_xmouse, _ymouse, true) and (!dude.dudeHolder.head.hitTest(_xmouse, _ymouse, true))) and (!dude.dudeHolder.legs.hitTest(_xmouse, _ymouse, true))) { dude.dudeHolder.body.play(); } if (dude.dudeHolder.legs.hitTest(_xmouse, _ymouse, true)) { dude.dudeHolder.legs.play(); } } } if (((dude.dudeHolder.body._currentframe == bodyPick) and (dude.dudeHolder.head._currentframe == headPick)) and (dude.dudeHolder.legs._currentframe == legsPick)) { passed(); } } else { rockOn(); } };
Frame 96
stop(); setup(); i = 0; while (i < 9) { _global.myRoot["robot" + i].onRelease = function () { }; _global.myRoot["robot" + i].useHandCursor = true; i++; } robotFound = false; chosenRobot = random(9); _global.myRoot["robot" + chosenRobot].gotoAndStop(2); onEnterFrame = function () { game(); if ((!levelPassed) and (!gamePaused)) { i = 0; while (i < 9) { if (pressed) { if (pressCounter == 1) { if (_global.myRoot["robot" + i].hitTest(_xmouse, _ymouse, true)) { if (i == chosenRobot) { passed(); } else { fg.sounds.fail.play(); time = time + 20; } } } } if (_global.myRoot["robot" + i].hitTest(_xmouse, _ymouse, true)) { if (_global.myRoot["robot" + i]._xscale < 110) { _global.myRoot["robot" + i]._xscale = _global.myRoot["robot" + i]._xscale + 5; _global.myRoot["robot" + i]._yscale = _global.myRoot["robot" + i]._yscale + 5; } else { _global.myRoot["robot" + i]._xscale = 110; _global.myRoot["robot" + i]._yscale = 110; } _global.myRoot["robot" + i].robot.play(); } else if (_global.myRoot["robot" + i]._xscale > 100) { _global.myRoot["robot" + i]._xscale = _global.myRoot["robot" + i]._xscale - 5; _global.myRoot["robot" + i]._yscale = _global.myRoot["robot" + i]._yscale - 5; } else { _global.myRoot["robot" + i]._xscale = 100; _global.myRoot["robot" + i]._yscale = 100; } i++; } } else { rockOn(); } };
Frame 97
stop(); setup(); alive = true; bombs = 0; stars = 14; starsCollected = new Array(); i = 0; while (i < stars) { starsCollected[i] = false; _global.myRoot["star" + i].gotoAndStop("start"); i++; } totalCollected = 0; gravity = 0.4; restitution = 0.7; friction = 0.9; xPos = 320; yPos = 370; vel = {x:0, y:0}; pos = {x:xPos, y:yPos}; old = {x:player._x, y:player._y}; radius = player._width / 2; player._x = xPos; player._y = yPos; player._alpha = 100; player.onRelease = function () { }; player.useHandCursor = true; onEnterFrame = function () { game(); if ((!levelPassed) and (!gamePaused)) { throwsText = throws + " throws"; if (pressed) { if (pressCounter == 1) { if (player.hitTest(_xmouse, _ymouse, true)) { dragging = true; player.play(); } } } else { dragging = false; } if (alive) { if (!dragging) { if (player._currentframe == 6) { player.play(); } vel.y = vel.y + gravity; pos.x = pos.x + vel.x; pos.y = pos.y + vel.y; if ((pos.y + radius) > 450) { pos.y = 450 - radius; vel.y = vel.y * (-restitution); vel.x = vel.x * friction; if (vel.y < -2) { fg.sounds.jump.play(); } } if ((pos.y - radius) < 0) { fg.sounds.jump.play(); pos.y = 0 + radius; vel.y = vel.y * (-restitution); vel.x = vel.x * friction; } if ((pos.x + radius) > 640) { fg.sounds.jump.play(); pos.x = 640 - radius; vel.x = vel.x * (-restitution); } if (pos.x < (0 + radius)) { fg.sounds.jump.play(); pos.x = 0 + radius; vel.x = vel.x * (-restitution); } player._x = pos.x; player._y = pos.y; } else { playerEndX = _xmouse; playerEndY = _ymouse; player._x = player._x + ((playerEndX - player._x) / 3); player._y = player._y + ((playerEndY - player._y) / 3); old.x = pos.x; old.y = pos.y; pos.x = player._x; pos.y = player._y; vel.x = (pos.x - old.x) / 2; vel.y = (pos.y - old.y) / 2; } } if ((((_xmouse < 0) or (_xmouse > 640)) or (_ymouse < 0)) or (_ymouse > 450)) { dragging = false; } if ((player._y + radius) > 450) { player._y = 450 - radius; } if (_ymouse > 450) { dragging = false; } if ((player._y - radius) < 0) { player._y = 0 + radius; dragging = false; } if ((player._x + radius) > 640) { player._x = 640 - radius; dragging = false; } if (player._x < (0 + radius)) { player._x = 0 + radius; dragging = false; } i = 0; while (i < stars) { if (!dragging) { if (_global.myRoot["star" + i].hitTest(player)) { if (_global.myRoot["star" + i]._currentframe == 1) { _global.myRoot["star" + i].play(); starsCollected[i] = true; totalCollected++; } } } i++; } i = 0; while (i < bombs) { if (!dragging) { if (_global.myRoot["bomb" + i].hitTest(player)) { if (_global.myRoot["bomb" + i]._currentframe == 1) { fg.sounds.explosionA.play(); _global.myRoot["bomb" + i].play(); player._visible = false; bombTouched = i; alive = false; } } } if (_global.myRoot["bomb" + i]._currentframe == _global.myRoot["bomb" + i]._totalframes) { _global.myRoot["bomb" + i].gotoAndStop("start"); player._visible = true; alive = true; vel = {x:0, y:0}; pos = {x:xPos, y:yPos}; old = {x:player._x, y:player._y}; radius = player._width / 2; player._x = xPos; player._y = yPos; i = 0; while (i < stars) { starsCollected[i] = false; _global.myRoot["star" + i].gotoAndStop("start"); i++; } totalCollected = 0; } i++; } if (totalCollected == stars) { if (player._alpha > 0) { player._alpha = player._alpha - 5; } else { player._alpha = 0; passed(); } } } else { rockOn(); } };
Frame 98
stop(); setup(); shuriken.onRelease = function () { }; shuriken.useHandCursor = true; onEnterFrame = function () { game(); if ((!levelPassed) and (!gamePaused)) { if (pressed) { if (pressCounter == 1) { if (((shuriken.shurikenHolder.starOuter.hitTest(_xmouse, _ymouse, true) and (!shuriken.shurikenHolder.starInner.hitTest(_xmouse, _ymouse, true))) and (!shuriken.shurikenHolder.circleOuter.hitTest(_xmouse, _ymouse, true))) and (!shuriken.shurikenHolder.circleInner.hitTest(_xmouse, _ymouse, true))) { shuriken.shurikenHolder.starOuter.play(); } if (((shuriken.shurikenHolder.starInner.hitTest(_xmouse, _ymouse, true) and shuriken.shurikenHolder.starOuter.hitTest(_xmouse, _ymouse, true)) and (!shuriken.shurikenHolder.circleOuter.hitTest(_xmouse, _ymouse, true))) and (!shuriken.shurikenHolder.circleInner.hitTest(_xmouse, _ymouse, true))) { shuriken.shurikenHolder.starInner.play(); } if (((shuriken.shurikenHolder.circleOuter.hitTest(_xmouse, _ymouse, true) and (!shuriken.shurikenHolder.circleInner.hitTest(_xmouse, _ymouse, true))) and shuriken.shurikenHolder.starInner.hitTest(_xmouse, _ymouse, true)) and shuriken.shurikenHolder.starOuter.hitTest(_xmouse, _ymouse, true)) { shuriken.shurikenHolder.circleOuter.play(); } if (((shuriken.shurikenHolder.circleInner.hitTest(_xmouse, _ymouse, true) and shuriken.shurikenHolder.circleOuter.hitTest(_xmouse, _ymouse, true)) and shuriken.shurikenHolder.starInner.hitTest(_xmouse, _ymouse, true)) and shuriken.shurikenHolder.starOuter.hitTest(_xmouse, _ymouse, true)) { shuriken.shurikenHolder.circleInner.play(); } } } if ((((shuriken.shurikenHolder.starOuter._currentframe == 2) and (shuriken.shurikenHolder.starInner._currentframe == 3)) and (shuriken.shurikenHolder.circleOuter._currentframe == 4)) and (shuriken.shurikenHolder.circleInner._currentframe == 1)) { passed(); } } else { rockOn(); } };
Frame 99
stop(); setup(); radius = player._height / 2; xPosPlayer = 140; yPosPlayer = ground._y - radius; draggingPlayer = false; xPosWall = 320; yPosWall = 350; draggingWall = false; player.onRelease = function () { }; player.useHandCursor = true; wall.onRelease = function () { }; wall.useHandCursor = true; onEnterFrame = function () { game(); if ((!levelPassed) and (!gamePaused)) { if (pressed) { if (pressCounter == 1) { if (player.hitTest(_xmouse, _ymouse, true)) { if (!draggingWall) { draggingPlayer = true; } } if (wall.hitTest(_xmouse, _ymouse, true)) { if (!draggingPlayer) { draggingWall = true; wallDragY = _ymouse - wall._y; } } } } else { draggingPlayer = false; draggingWall = false; } if (draggingPlayer) { player._alpha = 25; player._x = _xmouse; player._y = _ymouse; } else { player._alpha = 100; player._y = yPosPlayer; } if (player._y > (350 - radius)) { player._y = yPosPlayer; } if (player._y < (0 + radius)) { player._y = 0 + radius; } if (player._x > (640 - radius)) { player._x = 640 - radius; } if (player._x < (0 + radius)) { player._x = 0 + radius; } if ((((_xmouse < 0) or (_xmouse > 640)) or (_ymouse < 0)) or (_ymouse > 350)) { draggingPlayer = false; draggingWall = false; } if (draggingWall) { wall._alpha = 25; wall._x = _xmouse; wall._y = _ymouse - wallDragY; } else { wall._alpha = 100; wall._y = 350; } if (wall._y > 350) { wall._y = 350; } if (player.hitTest(wall) or ASnative(800, 2) /* [Key] isDown */(2)) { if (player.hitTest(wall)) { fg.sounds.fail.play(); } draggingPlayer = false; player._x = xPosPlayer; player._y = yPosPlayer; draggingWall = false; wall._x = xPosWall; wall._y = yPosWall; } if (player.hitTest(yang)) { if (yang._currentframe == 1) { yang.play(); player._visible = false; player._x = xPosPlayer; player._y = yPosPlayer; passed(); } } } else { rockOn(); } };
Frame 100
stop(); setup(); i = 0; while (i < 6) { _global.myRoot["monster" + i].onRelease = function () { }; _global.myRoot["monster" + i].useHandCursor = true; i++; } chosen = false; matched = 0; monsterDone = new Array(); i = 0; while (i < 6) { monsterDone[i] = false; i++; } pos = new Array(); pos[0] = 1; pos[1] = 2; pos[2] = 3; pos[3] = 4; pos[4] = 5; pos[5] = 6; i = 0; while (i < 6) { j = Math.floor(Math.random() * pos.length); _global.myRoot["monster" + i].gotoAndStop(pos[j]); pos.splice(j, 1); i++; } onEnterFrame = function () { game(); if ((!levelPassed) and (!gamePaused)) { i = 0; while (i < 9) { if (_global.myRoot["monster" + i].hitTest(_xmouse, _ymouse, true)) { if (pressed) { if (pressCounter == 1) { if ((!chosen) and (_global.myRoot["monster" + i]._alpha == 100)) { _global.myRoot["monster" + i]._alpha = 50; chosen = true; num = i; } else { if (_global.myRoot["monster" + num]._currentframe == 1) { if (_global.myRoot["monster" + i]._currentframe == 2) { if (!monsterDone[num]) { monsterDone[num] = true; } if (!monsterDone[i]) { monsterDone[i] = true; _global.myRoot["monster" + i]._alpha = 50; } chosen = false; } else { _global.myRoot["monster" + num]._alpha = 100; _global.myRoot["monster" + i]._alpha = 100; chosen = false; } } if (_global.myRoot["monster" + num]._currentframe == 2) { if (_global.myRoot["monster" + i]._currentframe == 1) { if (!monsterDone[num]) { monsterDone[num] = true; } if (!monsterDone[i]) { monsterDone[i] = true; _global.myRoot["monster" + i]._alpha = 50; } chosen = false; } else { _global.myRoot["monster" + num]._alpha = 100; _global.myRoot["monster" + i]._alpha = 100; chosen = false; } } if (_global.myRoot["monster" + num]._currentframe == 3) { if (_global.myRoot["monster" + i]._currentframe == 4) { if (!monsterDone[num]) { monsterDone[num] = true; } if (!monsterDone[i]) { monsterDone[i] = true; _global.myRoot["monster" + i]._alpha = 50; } chosen = false; } else { _global.myRoot["monster" + num]._alpha = 100; _global.myRoot["monster" + i]._alpha = 100; chosen = false; } } if (_global.myRoot["monster" + num]._currentframe == 4) { if (_global.myRoot["monster" + i]._currentframe == 3) { if (!monsterDone[num]) { monsterDone[num] = true; } if (!monsterDone[i]) { monsterDone[i] = true; _global.myRoot["monster" + i]._alpha = 50; } chosen = false; } else { _global.myRoot["monster" + num]._alpha = 100; _global.myRoot["monster" + i]._alpha = 100; chosen = false; } } if (_global.myRoot["monster" + num]._currentframe == 5) { if (_global.myRoot["monster" + i]._currentframe == 6) { if (!monsterDone[num]) { monsterDone[num] = true; } if (!monsterDone[i]) { monsterDone[i] = true; _global.myRoot["monster" + i]._alpha = 50; } chosen = false; } else { _global.myRoot["monster" + num]._alpha = 100; _global.myRoot["monster" + i]._alpha = 100; chosen = false; } } if (_global.myRoot["monster" + num]._currentframe == 6) { if (_global.myRoot["monster" + i]._currentframe == 5) { if (!monsterDone[num]) { monsterDone[num] = true; } if (!monsterDone[i]) { monsterDone[i] = true; _global.myRoot["monster" + i]._alpha = 50; } chosen = false; } else { _global.myRoot["monster" + num]._alpha = 100; _global.myRoot["monster" + i]._alpha = 100; chosen = false; } } } } } if (_global.myRoot["monster" + i]._xscale < 110) { _global.myRoot["monster" + i]._xscale = _global.myRoot["monster" + i]._xscale + 5; _global.myRoot["monster" + i]._yscale = _global.myRoot["monster" + i]._yscale + 5; } else { _global.myRoot["monster" + i]._xscale = 110; _global.myRoot["monster" + i]._yscale = 110; } if (_global.myRoot["monster" + i].monster._currentframe == 1) { _global.myRoot["monster" + i].monster.play(); } } else { if (_global.myRoot["monster" + i]._xscale > 100) { _global.myRoot["monster" + i]._xscale = _global.myRoot["monster" + i]._xscale - 5; _global.myRoot["monster" + i]._yscale = _global.myRoot["monster" + i]._yscale - 5; } else { _global.myRoot["monster" + i]._xscale = 100; _global.myRoot["monster" + i]._yscale = 100; } if (_global.myRoot["monster" + i].monster._currentframe > 1) { _global.myRoot["monster" + i].monster.play(); } } i++; } i = 0; while (i < 6) { if (monsterDone[i]) { if (_global.myRoot["monster" + i]._alpha > 0) { _global.myRoot["monster" + i]._alpha = _global.myRoot["monster" + i]._alpha - 5; _global.myRoot["monster" + i]._xscale = _global.myRoot["monster" + i]._xscale - 5; _global.myRoot["monster" + i]._yscale = _global.myRoot["monster" + i]._yscale - 5; _global.myRoot["monster" + i]._rotation = _global.myRoot["monster" + i]._rotation + 20; } else { _global.myRoot["monster" + i]._visible = false; } } i++; } if ((((((monster0._visible == false) and (monster1._visible == false)) and (monster2._visible == false)) and (monster3._visible == false)) and (monster4._visible == false)) and (monster5._visible == false)) { passed(); } } else { rockOn(); } };
Frame 101
stop(); setup(); frame = random(2) + 1; hint.gotoAndStop(frame); onEnterFrame = function () { game(); i = 0; while (i < 9) { if (_global.myRoot["tile" + i].hitTest(_xmouse, _ymouse, true)) { if (_global.myRoot["tile" + i]._xscale < 120) { _global.myRoot["tile" + i]._xscale = _global.myRoot["tile" + i]._xscale + 5; _global.myRoot["tile" + i]._yscale = _global.myRoot["tile" + i]._yscale + 5; } else { _global.myRoot["tile" + i]._xscale = 120; _global.myRoot["tile" + i]._yscale = 120; } } else if (_global.myRoot["tile" + i]._xscale > 100) { _global.myRoot["tile" + i]._xscale = _global.myRoot["tile" + i]._xscale - 5; _global.myRoot["tile" + i]._yscale = _global.myRoot["tile" + i]._yscale - 5; } else { _global.myRoot["tile" + i]._xscale = 100; _global.myRoot["tile" + i]._yscale = 100; } i++; } if ((!levelPassed) and (!gamePaused)) { i = 0; while (i < 9) { if (pressed) { if (pressCounter == 1) { if (_global.myRoot["tile" + i].hitTest(_xmouse, _ymouse, true)) { _global.myRoot["tile" + i].play(); } } } i++; } if (frame == 1) { if (((tile0._currentframe == 2) and (tile1._currentframe == 3)) and (tile2._currentframe == 4)) { passed(); } } if (frame == 2) { if (((tile0._currentframe == 4) and (tile1._currentframe == 3)) and (tile2._currentframe == 2)) { passed(); } } } else { rockOn(); } };
Frame 102
stop(); setup(); target0._visible = true; target1._visible = false; targetShot = new Array(); i = 0; while (i < 2) { targetShot[i] = false; i++; } onEnterFrame = function () { game(); crosshair._x = 320 - (_xmouse - 320); crosshair._y = 240 - (_ymouse - 240); if ((!levelPassed) and (!gamePaused)) { i = 0; while (i < 2) { if (_global.myRoot["target" + i].hitTest(crosshair._x, crosshair._y, true)) { if (targetShot[i] == false) { if (pressed) { if (pressCounter == 1) { if (i == 1) { if (targetShot[0]) { fg.sounds.explosionB.play(); targetShot[i] = true; } } else { fg.sounds.explosionB.play(); targetShot[i] = true; } _global.myRoot["target" + (i + 1)]._visible = true; } } } } if (targetShot[i]) { if (_global.myRoot["target" + i]._alpha > 0) { _global.myRoot["target" + i]._alpha = _global.myRoot["target" + i]._alpha - 5; _global.myRoot["target" + i]._xscale = _global.myRoot["target" + i]._xscale + 5; _global.myRoot["target" + i]._yscale = _global.myRoot["target" + i]._yscale + 5; _global.myRoot["target" + i]._rotation = _global.myRoot["target" + i]._rotation + 20; } else { _global.myRoot["target" + i]._visible = false; } } i++; } if (hitmap.hitTest(crosshair._x, crosshair._y, true) or ASnative(800, 2) /* [Key] isDown */(2)) { if (!targetShot[1]) { if (targetShot[0]) { fg.sounds.fail.play(); } targetShot[0] = false; targetShot[1] = false; target0._alpha = 100; target0._xscale = 100; target0._yscale = 100; target0._rotation = 0; target1._alpha = 100; target1._xscale = 100; target1._yscale = 100; target1._rotation = 0; target0._visible = true; target1._visible = false; } } if (targetShot[0] and targetShot[1]) { if (target1._visible == false) { passed(); } } } else { rockOn(); } };
Frame 103
stop(); setup(); correct = false; answerA.onPress = function () { fg.sounds.fail.play(); time = time + 20; }; answerB.onPress = function () { correct = true; }; answerC.onPress = function () { fg.sounds.fail.play(); time = time + 20; }; answerD.onPress = function () { fg.sounds.fail.play(); time = time + 20; }; onEnterFrame = function () { game(); if ((!levelPassed) and (!gamePaused)) { if (correct) { passed(); } } else { rockOn(); } };
Frame 104
stop(); setup(); pooping = false; bird.onRelease = function () { }; bird.useHandCursor = true; var medal_name = "Stage1"; com.newgrounds.API.unlockMedal(medal_name); onEnterFrame = function () { game(); if ((!levelPassed) and (!gamePaused)) { if (pressed) { if (pressCounter == 1) { if (bird.hitTest(_xmouse, _ymouse, true)) { if ((bird._currentframe == 1) and (square._currentframe == 1)) { bird.birdLoop.play(); bird.play(); } if (bird._currentframe > 1) { if (!pooping) { poopX = _xmouse; poopY = _ymouse; poop._x = poopX; poop._y = poopY; pooping = true; } } } } } if (!pooping) { poop._x = -20; poop._y = -20; } else { poop._y = poop._y + 5; } if (poop.hitTest(square.hitmap)) { if (pooping) { pooping = false; square.play(); } } if (bird._currentframe == bird._totalframes) { bird.birdLoop.gotoAndStop(1); pooping = false; } if (square._currentframe == square._totalframes) { passed(); } } else { rockOn(); } };
Frame 105
stop(); setup(); radius = player._height / 2; xPosPlayer = 140; yPosPlayer = ground._y - radius; draggingPlayer = false; xPosWall = 320; yPosWall = 350; draggingWall = false; player.onRelease = function () { }; player.useHandCursor = true; wall.onRelease = function () { }; wall.useHandCursor = true; onEnterFrame = function () { game(); if ((!levelPassed) and (!gamePaused)) { if (pressed) { if (pressCounter == 1) { if (player.hitTest(_xmouse, _ymouse, true)) { if (!draggingWall) { originalX = _xmouse; draggingPlayer = true; } } if (wall.hitTest(_xmouse, _ymouse, true)) { if (!draggingPlayer) { draggingWall = true; } } } } else { draggingPlayer = false; draggingWall = false; } if (draggingPlayer) { player._alpha = 25; player._x = _xmouse; player._y = _ymouse; } else { player._alpha = 100; player._y = yPosPlayer; } if ((player._y + radius) > ground._y) { player._y = ground._y - radius; } if (player._y > (350 - radius)) { player._y = yPosPlayer; } if (player._y < (0 + radius)) { player._y = 0 + radius; } if (player._x > (640 - radius)) { player._x = 640 - radius; } if (player._x < (0 + radius)) { player._x = 0 + radius; } if ((((_xmouse < 0) or (_xmouse > 640)) or (_ymouse < 0)) or (_ymouse > 350)) { draggingPlayer = false; draggingWall = false; } if (draggingWall) { wall._x = _xmouse; } else { wall._alpha = 100; } if (player.hitTest(wall)) { player._x = wall._x - ((wall._width / 2) + radius); } if (originalX < wall._x) { if (player._x > wall._x) { player._x = wall._x - ((wall._width / 2) + radius); } } if (yang.hitTest(wall) or ASnative(800, 2) /* [Key] isDown */(2)) { if (yang.hitTest(wall)) { fg.sounds.fail.play(); } draggingPlayer = false; player._x = xPosPlayer; player._y = yPosPlayer; draggingWall = false; wall._x = xPosWall; wall._y = yPosWall; } if ((player._x + radius) < 0) { player._x = 640 - radius; } if (ASnative(800, 2) /* [Key] isDown */(2)) { if (player.hitTest(wall)) { fg.sounds.fail.play(); } draggingPlayer = false; player._x = xPosPlayer; player._y = yPosPlayer; draggingWall = false; wall._x = xPosWall; wall._y = yPosWall; } if (player.hitTest(yang)) { if (yang._currentframe == 1) { yang.play(); player._visible = false; player._y = pos.x; player._y = pos.y; passed(); } } } else { rockOn(); } };
Frame 106
stop(); setup(); headPick = random(9) + 2; bodyPick = random(9) + 2; legsPick = random(9) + 2; dudeGuide.dudeHolder.head.gotoAndStop(headPick); dudeGuide.dudeHolder.body.gotoAndStop(bodyPick); dudeGuide.dudeHolder.legs.gotoAndStop(legsPick); dude.onRelease = function () { }; dude.useHandCursor = true; onEnterFrame = function () { game(); if ((!levelPassed) and (!gamePaused)) { if (pressed) { if (pressCounter == 1) { pressed = false; if (dude.dudeHolder.head.hitTest(_xmouse, _ymouse, true)) { dude.dudeHolder.head.play(); } if ((dude.dudeHolder.body.hitTest(_xmouse, _ymouse, true) and (!dude.dudeHolder.head.hitTest(_xmouse, _ymouse, true))) and (!dude.dudeHolder.legs.hitTest(_xmouse, _ymouse, true))) { dude.dudeHolder.body.play(); } if (dude.dudeHolder.legs.hitTest(_xmouse, _ymouse, true)) { dude.dudeHolder.legs.play(); } } } if (((dude.dudeHolder.body._currentframe == bodyPick) and (dude.dudeHolder.head._currentframe == headPick)) and (dude.dudeHolder.legs._currentframe == legsPick)) { passed(); } } else { rockOn(); } };
Frame 107
stop(); setup(); i = 0; while (i < 9) { _global.myRoot["robot" + i].onRelease = function () { }; _global.myRoot["robot" + i].useHandCursor = true; i++; } robotFound = false; chosenRobot = random(9); _global.myRoot["robot" + chosenRobot].gotoAndStop(2); onEnterFrame = function () { game(); if ((!levelPassed) and (!gamePaused)) { i = 0; while (i < 9) { if (pressed) { if (pressCounter == 1) { if (_global.myRoot["robot" + i].hitTest(_xmouse, _ymouse, true)) { if (i == chosenRobot) { passed(); } else { fg.sounds.fail.play(); time = time + 20; } } } } if (_global.myRoot["robot" + i].hitTest(_xmouse, _ymouse, true)) { if (_global.myRoot["robot" + i]._xscale < 120) { _global.myRoot["robot" + i]._xscale = _global.myRoot["robot" + i]._xscale + 5; _global.myRoot["robot" + i]._yscale = _global.myRoot["robot" + i]._yscale + 5; } else { _global.myRoot["robot" + i]._xscale = 120; _global.myRoot["robot" + i]._yscale = 120; } _global.myRoot["robot" + i].robot.robotMouth.play(); } else if (_global.myRoot["robot" + i]._xscale > 100) { _global.myRoot["robot" + i]._xscale = _global.myRoot["robot" + i]._xscale - 5; _global.myRoot["robot" + i]._yscale = _global.myRoot["robot" + i]._yscale - 5; } else { _global.myRoot["robot" + i]._xscale = 100; _global.myRoot["robot" + i]._yscale = 100; } i++; } } else { rockOn(); } };
Frame 108
stop(); setup(); alive = true; bombs = 2; stars = 16; starsCollected = new Array(); i = 0; while (i < stars) { starsCollected[i] = false; _global.myRoot["star" + i].gotoAndStop("start"); i++; } totalCollected = 0; gravity = 0.4; restitution = 0.7; friction = 0.9; xPos = 320; yPos = 370; vel = {x:0, y:0}; pos = {x:xPos, y:yPos}; old = {x:player._x, y:player._y}; radius = player._width / 2; player._x = xPos; player._y = yPos; player._alpha = 100; player.onRelease = function () { }; player.useHandCursor = true; onEnterFrame = function () { game(); if ((!levelPassed) and (!gamePaused)) { throwsText = throws + " throws"; if (pressed) { if (pressCounter == 1) { if (player.hitTest(_xmouse, _ymouse, true)) { dragging = true; player.play(); } } } else { dragging = false; } if (alive) { if (!dragging) { if (player._currentframe == 6) { player.play(); } vel.y = vel.y + gravity; pos.x = pos.x + vel.x; pos.y = pos.y + vel.y; if ((pos.y + radius) > 450) { pos.y = 450 - radius; vel.y = vel.y * (-restitution); vel.x = vel.x * friction; if (vel.y < -2) { fg.sounds.jump.play(); } } if ((pos.y - radius) < 0) { fg.sounds.jump.play(); pos.y = 0 + radius; vel.y = vel.y * (-restitution); vel.x = vel.x * friction; } if ((pos.x + radius) > 640) { fg.sounds.jump.play(); pos.x = 640 - radius; vel.x = vel.x * (-restitution); } if (pos.x < (0 + radius)) { fg.sounds.jump.play(); pos.x = 0 + radius; vel.x = vel.x * (-restitution); } player._x = pos.x; player._y = pos.y; } else { playerEndX = _xmouse; playerEndY = _ymouse; player._x = player._x + ((playerEndX - player._x) / 3); player._y = player._y + ((playerEndY - player._y) / 3); old.x = pos.x; old.y = pos.y; pos.x = player._x; pos.y = player._y; vel.x = (pos.x - old.x) / 2; vel.y = (pos.y - old.y) / 2; } } if ((((_xmouse < 0) or (_xmouse > 640)) or (_ymouse < 0)) or (_ymouse > 450)) { dragging = false; } if ((player._y + radius) > 450) { player._y = 450 - radius; } if (_ymouse > 450) { dragging = false; } if ((player._y - radius) < 0) { player._y = 0 + radius; dragging = false; } if ((player._x + radius) > 640) { player._x = 640 - radius; dragging = false; } if (player._x < (0 + radius)) { player._x = 0 + radius; dragging = false; } i = 0; while (i < stars) { if (!dragging) { if (_global.myRoot["star" + i].hitTest(player)) { if (_global.myRoot["star" + i]._currentframe == 1) { _global.myRoot["star" + i].play(); starsCollected[i] = true; totalCollected++; } } } i++; } i = 0; while (i < bombs) { if (!dragging) { if (_global.myRoot["bomb" + i].hitTest(player)) { if (_global.myRoot["bomb" + i]._currentframe == 1) { fg.sounds.explosionA.play(); _global.myRoot["bomb" + i].play(); player._visible = false; bombTouched = i; alive = false; } } } if (_global.myRoot["bomb" + i]._currentframe == _global.myRoot["bomb" + i]._totalframes) { _global.myRoot["bomb" + i].gotoAndStop("start"); player._visible = true; alive = true; vel = {x:0, y:0}; pos = {x:xPos, y:yPos}; old = {x:player._x, y:player._y}; radius = player._width / 2; player._x = xPos; player._y = yPos; i = 0; while (i < stars) { starsCollected[i] = false; _global.myRoot["star" + i].gotoAndStop("start"); i++; } totalCollected = 0; } i++; } if (totalCollected == stars) { if (player._alpha > 0) { player._alpha = player._alpha - 5; } else { player._alpha = 0; passed(); } } } else { rockOn(); } };
Frame 109
stop(); setup(); shuriken.onRelease = function () { }; shuriken.useHandCursor = true; onEnterFrame = function () { game(); if ((!levelPassed) and (!gamePaused)) { if (pressed) { if (pressCounter == 1) { if (((shuriken.shurikenHolder.starOuter.hitTest(_xmouse, _ymouse, true) and (!shuriken.shurikenHolder.starInner.hitTest(_xmouse, _ymouse, true))) and (!shuriken.shurikenHolder.circleOuter.hitTest(_xmouse, _ymouse, true))) and (!shuriken.shurikenHolder.circleInner.hitTest(_xmouse, _ymouse, true))) { shuriken.shurikenHolder.starOuter.play(); } if (((shuriken.shurikenHolder.starInner.hitTest(_xmouse, _ymouse, true) and shuriken.shurikenHolder.starOuter.hitTest(_xmouse, _ymouse, true)) and (!shuriken.shurikenHolder.circleOuter.hitTest(_xmouse, _ymouse, true))) and (!shuriken.shurikenHolder.circleInner.hitTest(_xmouse, _ymouse, true))) { shuriken.shurikenHolder.starInner.play(); } if (((shuriken.shurikenHolder.circleOuter.hitTest(_xmouse, _ymouse, true) and (!shuriken.shurikenHolder.circleInner.hitTest(_xmouse, _ymouse, true))) and shuriken.shurikenHolder.starInner.hitTest(_xmouse, _ymouse, true)) and shuriken.shurikenHolder.starOuter.hitTest(_xmouse, _ymouse, true)) { shuriken.shurikenHolder.circleOuter.play(); } if (((shuriken.shurikenHolder.circleInner.hitTest(_xmouse, _ymouse, true) and shuriken.shurikenHolder.circleOuter.hitTest(_xmouse, _ymouse, true)) and shuriken.shurikenHolder.starInner.hitTest(_xmouse, _ymouse, true)) and shuriken.shurikenHolder.starOuter.hitTest(_xmouse, _ymouse, true)) { shuriken.shurikenHolder.circleInner.play(); } } } if ((((shuriken.shurikenHolder.starOuter._currentframe == 2) and (shuriken.shurikenHolder.starInner._currentframe == 2)) and (shuriken.shurikenHolder.circleOuter._currentframe == 2)) and (shuriken.shurikenHolder.circleInner._currentframe == 2)) { passed(); } } else { rockOn(); } };
Frame 110
stop(); setup(); radius = player._height / 2; xPosPlayer = 140; yPosPlayer = ground._y - radius; draggingPlayer = false; xPosWall = 320; yPosWall = 350; draggingWall = false; player.onRelease = function () { }; player.useHandCursor = true; wall.onRelease = function () { }; wall.useHandCursor = true; onEnterFrame = function () { game(); if ((!levelPassed) and (!gamePaused)) { if (pressed) { if (pressCounter == 1) { if (player.hitTest(_xmouse, _ymouse, true)) { if (!draggingWall) { draggingPlayer = true; } } if (wall.hitTest(_xmouse, _ymouse, true)) { if (!draggingPlayer) { gravity = 1; draggingWall = true; wallDragY = _ymouse - wall._y; } } } } else { draggingPlayer = false; draggingWall = false; } if (draggingPlayer) { player._alpha = 25; player._x = _xmouse; player._y = _ymouse; } else { player._alpha = 100; player._y = yPosPlayer; } if (player._y > (350 - radius)) { player._y = yPosPlayer; } if (player._y < (0 + radius)) { player._y = 0 + radius; } if (player._x > (640 - radius)) { player._x = 640 - radius; } if (player._x < (0 + radius)) { player._x = 0 + radius; } if ((((_xmouse < 0) or (_xmouse > 640)) or (_ymouse < 0)) or (_ymouse > 350)) { draggingPlayer = false; draggingWall = false; } if (draggingWall) { wall._alpha = 25; wall._y = _ymouse - wallDragY; } else { wall._alpha = 100; if (wall._y < 350) { wall._y = wall._y + gravity; gravity = gravity * 1.1; } else { wall._y = 350; gravity = 2; } } if (wall._y > 350) { wall._y = 350; } if (player.hitTest(wall) or ASnative(800, 2) /* [Key] isDown */(2)) { if (player.hitTest(wall)) { fg.sounds.fail.play(); } draggingPlayer = false; player._x = xPosPlayer; player._y = yPosPlayer; draggingWall = false; wall._x = xPosWall; wall._y = yPosWall; } if (player.hitTest(yang)) { if (yang._currentframe == 1) { yang.play(); player._visible = false; player._x = xPosPlayer; player._y = yPosPlayer; passed(); } } } else { rockOn(); } };
Frame 111
stop(); setup(); i = 0; while (i < 6) { _global.myRoot["monster" + i].onRelease = function () { }; _global.myRoot["monster" + i].useHandCursor = true; i++; } chosen = false; matched = 0; monsterDone = new Array(); i = 0; while (i < 6) { monsterDone[i] = false; i++; } pos = new Array(); pos[0] = 1; pos[1] = 2; pos[2] = 3; pos[3] = 4; pos[4] = 5; pos[5] = 6; i = 0; while (i < 6) { j = Math.floor(Math.random() * pos.length); _global.myRoot["monster" + i].gotoAndStop(pos[j]); pos.splice(j, 1); i++; } onEnterFrame = function () { game(); if ((!levelPassed) and (!gamePaused)) { i = 0; while (i < 9) { if (_global.myRoot["monster" + i].hitTest(_xmouse, _ymouse, true)) { if (pressed) { if (pressCounter == 1) { if ((!chosen) and (_global.myRoot["monster" + i]._alpha == 100)) { _global.myRoot["monster" + i]._alpha = 50; chosen = true; num = i; } else { if (_global.myRoot["monster" + num]._currentframe == 1) { if (_global.myRoot["monster" + i]._currentframe == 2) { if (!monsterDone[num]) { monsterDone[num] = true; } if (!monsterDone[i]) { monsterDone[i] = true; _global.myRoot["monster" + i]._alpha = 50; } chosen = false; } else { _global.myRoot["monster" + num]._alpha = 100; _global.myRoot["monster" + i]._alpha = 100; chosen = false; } } if (_global.myRoot["monster" + num]._currentframe == 2) { if (_global.myRoot["monster" + i]._currentframe == 1) { if (!monsterDone[num]) { monsterDone[num] = true; } if (!monsterDone[i]) { monsterDone[i] = true; _global.myRoot["monster" + i]._alpha = 50; } chosen = false; } else { _global.myRoot["monster" + num]._alpha = 100; _global.myRoot["monster" + i]._alpha = 100; chosen = false; } } if (_global.myRoot["monster" + num]._currentframe == 3) { if (_global.myRoot["monster" + i]._currentframe == 4) { if (!monsterDone[num]) { monsterDone[num] = true; } if (!monsterDone[i]) { monsterDone[i] = true; _global.myRoot["monster" + i]._alpha = 50; } chosen = false; } else { _global.myRoot["monster" + num]._alpha = 100; _global.myRoot["monster" + i]._alpha = 100; chosen = false; } } if (_global.myRoot["monster" + num]._currentframe == 4) { if (_global.myRoot["monster" + i]._currentframe == 3) { if (!monsterDone[num]) { monsterDone[num] = true; } if (!monsterDone[i]) { monsterDone[i] = true; _global.myRoot["monster" + i]._alpha = 50; } chosen = false; } else { _global.myRoot["monster" + num]._alpha = 100; _global.myRoot["monster" + i]._alpha = 100; chosen = false; } } if (_global.myRoot["monster" + num]._currentframe == 5) { if (_global.myRoot["monster" + i]._currentframe == 6) { if (!monsterDone[num]) { monsterDone[num] = true; } if (!monsterDone[i]) { monsterDone[i] = true; _global.myRoot["monster" + i]._alpha = 50; } chosen = false; } else { _global.myRoot["monster" + num]._alpha = 100; _global.myRoot["monster" + i]._alpha = 100; chosen = false; } } if (_global.myRoot["monster" + num]._currentframe == 6) { if (_global.myRoot["monster" + i]._currentframe == 5) { if (!monsterDone[num]) { monsterDone[num] = true; } if (!monsterDone[i]) { monsterDone[i] = true; _global.myRoot["monster" + i]._alpha = 50; } chosen = false; } else { _global.myRoot["monster" + num]._alpha = 100; _global.myRoot["monster" + i]._alpha = 100; chosen = false; } } } } } if (_global.myRoot["monster" + i]._xscale < 110) { _global.myRoot["monster" + i]._xscale = _global.myRoot["monster" + i]._xscale + 5; _global.myRoot["monster" + i]._yscale = _global.myRoot["monster" + i]._yscale + 5; } else { _global.myRoot["monster" + i]._xscale = 110; _global.myRoot["monster" + i]._yscale = 110; } if (_global.myRoot["monster" + i].monster._currentframe == 1) { _global.myRoot["monster" + i].monster.play(); } } else { if (_global.myRoot["monster" + i]._xscale > 100) { _global.myRoot["monster" + i]._xscale = _global.myRoot["monster" + i]._xscale - 5; _global.myRoot["monster" + i]._yscale = _global.myRoot["monster" + i]._yscale - 5; } else { _global.myRoot["monster" + i]._xscale = 100; _global.myRoot["monster" + i]._yscale = 100; } if (_global.myRoot["monster" + i].monster._currentframe > 1) { _global.myRoot["monster" + i].monster.play(); } } i++; } i = 0; while (i < 6) { if (monsterDone[i]) { if (_global.myRoot["monster" + i]._alpha > 0) { _global.myRoot["monster" + i]._alpha = _global.myRoot["monster" + i]._alpha - 5; _global.myRoot["monster" + i]._xscale = _global.myRoot["monster" + i]._xscale - 5; _global.myRoot["monster" + i]._yscale = _global.myRoot["monster" + i]._yscale - 5; _global.myRoot["monster" + i]._rotation = _global.myRoot["monster" + i]._rotation + 20; } else { _global.myRoot["monster" + i]._visible = false; } } i++; } if ((((((monster0._visible == false) and (monster1._visible == false)) and (monster2._visible == false)) and (monster3._visible == false)) and (monster4._visible == false)) and (monster5._visible == false)) { passed(); } } else { rockOn(); } };
Frame 112
stop(); setup(); frame = random(2) + 1; hint.gotoAndStop(frame); onEnterFrame = function () { game(); i = 0; while (i < 9) { if (_global.myRoot["tile" + i].hitTest(_xmouse, _ymouse, true)) { if (_global.myRoot["tile" + i]._xscale < 120) { _global.myRoot["tile" + i]._xscale = _global.myRoot["tile" + i]._xscale + 5; _global.myRoot["tile" + i]._yscale = _global.myRoot["tile" + i]._yscale + 5; } else { _global.myRoot["tile" + i]._xscale = 120; _global.myRoot["tile" + i]._yscale = 120; } } else if (_global.myRoot["tile" + i]._xscale > 100) { _global.myRoot["tile" + i]._xscale = _global.myRoot["tile" + i]._xscale - 5; _global.myRoot["tile" + i]._yscale = _global.myRoot["tile" + i]._yscale - 5; } else { _global.myRoot["tile" + i]._xscale = 100; _global.myRoot["tile" + i]._yscale = 100; } i++; } if ((!levelPassed) and (!gamePaused)) { i = 0; while (i < 9) { if (pressed) { if (pressCounter == 1) { if (_global.myRoot["tile" + i].hitTest(_xmouse, _ymouse, true)) { _global.myRoot["tile" + i].play(); } } } i++; } if (frame == 1) { if ((((tile0._currentframe == 2) and (tile1._currentframe == 3)) and (tile2._currentframe == 3)) and (tile3._currentframe == 4)) { passed(); } } if (frame == 2) { if ((((tile0._currentframe == 2) and (tile1._currentframe == 3)) and (tile2._currentframe == 4)) and (tile3._currentframe == 3)) { passed(); } } } else { rockOn(); } };
Frame 113
stop(); setup(); target0._visible = true; target1._visible = false; targetShot = new Array(); i = 0; while (i < 2) { targetShot[i] = false; i++; } onEnterFrame = function () { game(); crosshair._x = 320 - (_xmouse - 320); crosshair._y = 240 - (_ymouse - 240); if ((!levelPassed) and (!gamePaused)) { i = 0; while (i < 2) { if (_global.myRoot["target" + i].hitTest(crosshair._x, crosshair._y, true)) { if (targetShot[i] == false) { if (pressed) { if (pressCounter == 1) { if (i == 1) { if (targetShot[0]) { fg.sounds.explosionB.play(); targetShot[i] = true; } } else { fg.sounds.explosionB.play(); targetShot[i] = true; } _global.myRoot["target" + (i + 1)]._visible = true; } } } } if (targetShot[i]) { if (_global.myRoot["target" + i]._alpha > 0) { _global.myRoot["target" + i]._alpha = _global.myRoot["target" + i]._alpha - 5; _global.myRoot["target" + i]._xscale = _global.myRoot["target" + i]._xscale + 5; _global.myRoot["target" + i]._yscale = _global.myRoot["target" + i]._yscale + 5; _global.myRoot["target" + i]._rotation = _global.myRoot["target" + i]._rotation + 20; } else { _global.myRoot["target" + i]._visible = false; } } i++; } if (hitmap.hitTest(crosshair._x, crosshair._y, true) or ASnative(800, 2) /* [Key] isDown */(2)) { if (!targetShot[1]) { if (targetShot[0]) { fg.sounds.fail.play(); } targetShot[0] = false; targetShot[1] = false; target0._alpha = 100; target0._xscale = 100; target0._yscale = 100; target0._rotation = 0; target1._alpha = 100; target1._xscale = 100; target1._yscale = 100; target1._rotation = 0; target0._visible = true; target1._visible = false; } } if (targetShot[0] and targetShot[1]) { if (target1._visible == false) { passed(); } } } else { rockOn(); } };
Frame 114
stop(); setup(); correct = false; answerA.onPress = function () { fg.sounds.fail.play(); time = time + 20; }; answerB.onPress = function () { fg.sounds.fail.play(); time = time + 20; }; answerC.onPress = function () { fg.sounds.fail.play(); time = time + 20; }; answerD.onPress = function () { correct = true; }; onEnterFrame = function () { game(); if ((!levelPassed) and (!gamePaused)) { if (correct) { passed(); } } else { rockOn(); } };
Frame 115
stop(); setup(); i = 0; while (i < 11) { _global.myRoot.cactus["prick" + i]._visible = true; _global.myRoot.cactus["prick" + i].onRelease = function () { }; _global.myRoot.cactus["prick" + i].useHandCursor = true; i++; } depricked = 0; var medal_name = "Stage2"; com.newgrounds.API.unlockMedal(medal_name); onEnterFrame = function () { game(); if ((!levelPassed) and (!gamePaused)) { if (pressed and (pressCounter == 1)) { i = 0; while (i < 11) { if (_global.myRoot.cactus["prick" + i].hitTest(_xmouse, _ymouse, true)) { _global.myRoot.cactus["prick" + i]._visible = false; depricked++; } i++; } } if (depricked == 11) { if (balloonLoop.balloon._currentframe == 1) { balloonLoop.balloon.play(); cactus.play(); heart.play(); } } if (heart._currentframe == heart._totalframes) { passed(); } } else { rockOn(); } };
Frame 116
stop(); setup(); radius = player._height / 2; xPosPlayer = 140; yPosPlayer = ground._y - radius; draggingPlayer = false; xPosWall = 320; yPosWall = 350; xPosGround = 320; yPosGround = 350; draggingGround = false; gravity = 0.1; player.onRelease = function () { }; player.useHandCursor = true; ground.onRelease = function () { }; ground.useHandCursor = true; onEnterFrame = function () { game(); if ((!levelPassed) and (!gamePaused)) { if (pressed) { if (pressCounter == 1) { if (player.hitTest(_xmouse, _ymouse, true)) { if (!draggingGround) { draggingPlayer = true; } } if (ground.hitTest(_xmouse, _ymouse, true)) { if (!draggingPlayer) { draggingGround = true; groundDragY = _ymouse - ground._y; } } } } else { draggingPlayer = false; draggingGround = false; } yang._y = ground._y - (yang._height / 2); if (draggingPlayer) { player._alpha = 25; player._x = _xmouse; player._y = _ymouse; } else { player._alpha = 100; player._y = ground._y - radius; } if ((player._y + radius) > ground._y) { player._y = ground._y - radius; } if (player._y > (ground._y - radius)) { player._y = yPosPlayer; } if (player._y < (0 + radius)) { player._y = 0 + radius; } if (player._x > (640 - radius)) { player._x = 640 - radius; } if (player._x < (0 + radius)) { player._x = 0 + radius; } if ((((_xmouse < 0) or (_xmouse > 640)) or (_ymouse < 0)) or (_ymouse > ground._y)) { draggingPlayer = false; draggingWall = false; } if (draggingGround) { ground._alpha = 25; ground._y = _ymouse - groundDragY; } else { ground._alpha = 100; } if (ground._y < 350) { ground._y = 350; } if (ground._y > 450) { ground._y = 450; } if (wall._y < ground._y) { wall._y = wall._y + gravity; gravity = gravity * 1.1; } else { wall._y = ground._y; gravity = 0.1; } if (player.hitTest(wall) or ASnative(800, 2) /* [Key] isDown */(2)) { if (player.hitTest(wall)) { fg.sounds.fail.play(); } draggingPlayer = false; player._x = xPosPlayer; player._y = yPosPlayer; draggingWall = false; wall._x = xPosWall; wall._y = yPosWall; ground._x = xPosGround; ground._y = yPosGround; } if (player.hitTest(yang)) { if (yang._currentframe == 1) { yang.play(); player._visible = false; player._y = pos.x; player._y = pos.y; passed(); } } } else { rockOn(); } };
Frame 117
stop(); setup(); headPick = random(9) + 2; bodyPick = random(9) + 2; legsPick = random(9) + 2; dudeGuide.dudeHolder.head.gotoAndStop(headPick); dudeGuide.dudeHolder.body.gotoAndStop(bodyPick); dudeGuide.dudeHolder.legs.gotoAndStop(legsPick); dude.onRelease = function () { }; dude.useHandCursor = true; onEnterFrame = function () { game(); if ((!levelPassed) and (!gamePaused)) { if (pressed) { if (pressCounter == 1) { pressed = false; if (dude.dudeHolder.head.hitTest(_xmouse, _ymouse, true)) { dude.dudeHolder.head.play(); } if ((dude.dudeHolder.body.hitTest(_xmouse, _ymouse, true) and (!dude.dudeHolder.head.hitTest(_xmouse, _ymouse, true))) and (!dude.dudeHolder.legs.hitTest(_xmouse, _ymouse, true))) { dude.dudeHolder.body.play(); } if (dude.dudeHolder.legs.hitTest(_xmouse, _ymouse, true)) { dude.dudeHolder.legs.play(); } } } if (((dude.dudeHolder.body._currentframe == bodyPick) and (dude.dudeHolder.head._currentframe == headPick)) and (dude.dudeHolder.legs._currentframe == legsPick)) { passed(); } } else { rockOn(); } };
Frame 118
stop(); setup(); i = 0; while (i < 9) { _global.myRoot["robot" + i].onRelease = function () { }; _global.myRoot["robot" + i].useHandCursor = true; i++; } robotFound = false; chosenRobot = random(9); _global.myRoot["robot" + chosenRobot].gotoAndStop(2); onEnterFrame = function () { game(); if ((!levelPassed) and (!gamePaused)) { i = 0; while (i < 9) { if (pressed) { if (pressCounter == 1) { if (_global.myRoot["robot" + i].hitTest(_xmouse, _ymouse, true)) { if (i == chosenRobot) { passed(); } else { fg.sounds.fail.play(); time = time + 20; } } } } if (_global.myRoot["robot" + i].hitTest(_xmouse, _ymouse, true)) { if (_global.myRoot["robot" + i]._xscale < 110) { _global.myRoot["robot" + i]._xscale = _global.myRoot["robot" + i]._xscale + 5; _global.myRoot["robot" + i]._yscale = _global.myRoot["robot" + i]._yscale + 5; } else { _global.myRoot["robot" + i]._xscale = 110; _global.myRoot["robot" + i]._yscale = 110; } _global.myRoot["robot" + i].robot.eyeLeft.play(); _global.myRoot["robot" + i].robot.eyeRight.play(); } else if (_global.myRoot["robot" + i]._xscale > 100) { _global.myRoot["robot" + i]._xscale = _global.myRoot["robot" + i]._xscale - 5; _global.myRoot["robot" + i]._yscale = _global.myRoot["robot" + i]._yscale - 5; } else { _global.myRoot["robot" + i]._xscale = 100; _global.myRoot["robot" + i]._yscale = 100; } i++; } } else { rockOn(); } };
Frame 119
stop(); setup(); alive = true; bombs = 4; stars = 22; starsCollected = new Array(); i = 0; while (i < stars) { starsCollected[i] = false; _global.myRoot["star" + i].gotoAndStop("start"); i++; } totalCollected = 0; gravity = 0.4; restitution = 0.7; friction = 0.9; xPos = 320; yPos = 370; vel = {x:0, y:0}; pos = {x:xPos, y:yPos}; old = {x:player._x, y:player._y}; radius = player._width / 2; player._x = xPos; player._y = yPos; player._alpha = 100; player.onRelease = function () { }; player.useHandCursor = true; onEnterFrame = function () { game(); if ((!levelPassed) and (!gamePaused)) { throwsText = throws + " throws"; if (pressed) { if (pressCounter == 1) { if (player.hitTest(_xmouse, _ymouse, true)) { dragging = true; player.play(); } } } else { dragging = false; } if (alive) { if (!dragging) { if (player._currentframe == 6) { player.play(); } vel.y = vel.y + gravity; pos.x = pos.x + vel.x; pos.y = pos.y + vel.y; if ((pos.y + radius) > 450) { pos.y = 450 - radius; vel.y = vel.y * (-restitution); vel.x = vel.x * friction; if (vel.y < -2) { fg.sounds.jump.play(); } } if ((pos.y - radius) < 0) { fg.sounds.jump.play(); pos.y = 0 + radius; vel.y = vel.y * (-restitution); vel.x = vel.x * friction; } if ((pos.x + radius) > 640) { fg.sounds.jump.play(); pos.x = 640 - radius; vel.x = vel.x * (-restitution); } if (pos.x < (0 + radius)) { fg.sounds.jump.play(); pos.x = 0 + radius; vel.x = vel.x * (-restitution); } player._x = pos.x; player._y = pos.y; } else { playerEndX = _xmouse; playerEndY = _ymouse; player._x = player._x + ((playerEndX - player._x) / 3); player._y = player._y + ((playerEndY - player._y) / 3); old.x = pos.x; old.y = pos.y; pos.x = player._x; pos.y = player._y; vel.x = (pos.x - old.x) / 2; vel.y = (pos.y - old.y) / 2; } } if ((((_xmouse < 0) or (_xmouse > 640)) or (_ymouse < 0)) or (_ymouse > 450)) { dragging = false; } if ((player._y + radius) > 450) { player._y = 450 - radius; } if (_ymouse > 450) { dragging = false; } if ((player._y - radius) < 0) { player._y = 0 + radius; dragging = false; } if ((player._x + radius) > 640) { player._x = 640 - radius; dragging = false; } if (player._x < (0 + radius)) { player._x = 0 + radius; dragging = false; } i = 0; while (i < stars) { if (!dragging) { if (_global.myRoot["star" + i].hitTest(player)) { if (_global.myRoot["star" + i]._currentframe == 1) { _global.myRoot["star" + i].play(); starsCollected[i] = true; totalCollected++; } } } i++; } i = 0; while (i < bombs) { if (!dragging) { if (_global.myRoot["bomb" + i].hitTest(player)) { if (_global.myRoot["bomb" + i]._currentframe == 1) { fg.sounds.explosionA.play(); _global.myRoot["bomb" + i].play(); player._visible = false; bombTouched = i; alive = false; } } } if (_global.myRoot["bomb" + i]._currentframe == _global.myRoot["bomb" + i]._totalframes) { _global.myRoot["bomb" + i].gotoAndStop("start"); player._visible = true; alive = true; vel = {x:0, y:0}; pos = {x:xPos, y:yPos}; old = {x:player._x, y:player._y}; radius = player._width / 2; player._x = xPos; player._y = yPos; i = 0; while (i < stars) { starsCollected[i] = false; _global.myRoot["star" + i].gotoAndStop("start"); i++; } totalCollected = 0; } i++; } if (totalCollected == stars) { if (player._alpha > 0) { player._alpha = player._alpha - 5; } else { player._alpha = 0; passed(); } } } else { rockOn(); } };
Frame 120
stop(); setup(); shuriken.onRelease = function () { }; shuriken.useHandCursor = true; buttonRotate.onPress = function () { if ((!levelPassed) and (!gamePaused)) { shuriken._rotation = shuriken._rotation + 45; } }; onEnterFrame = function () { game(); if ((!levelPassed) and (!gamePaused)) { if (pressed) { if (pressCounter == 1) { if (shuriken.shurikenHolder.starOuter.hitTest(_xmouse, _ymouse, true) and (!shuriken.shurikenHolder.circleInner.hitTest(_xmouse, _ymouse, true))) { shuriken.shurikenHolder.starOuter.play(); } if (shuriken.shurikenHolder.circleInner.hitTest(_xmouse, _ymouse, true) and shuriken.shurikenHolder.starOuter.hitTest(_xmouse, _ymouse, true)) { shuriken.shurikenHolder.circleInner.play(); } } } if ((((shuriken._rotation == 45) or (shuriken._rotation == 135)) and (shuriken.shurikenHolder.starOuter._currentframe == 2)) and (shuriken.shurikenHolder.circleInner._currentframe == 2)) { passed(); } } else { rockOn(); } };
Frame 121
stop(); setup(); radius = player._height / 2; xPosPlayer = 140; yPosPlayer = ground._y - radius; draggingPlayer = false; gravity = 0.4; restitution = 0.7; friction = 0.9; vel = {x:0, y:0}; pos = {x:xPosPlayer, y:yPosPlayer}; old = {x:player._x, y:player._y}; radius = player._height / 2; player._x = xPosPlayer; player._y = yPosPlayer; player.onRelease = function () { }; player.useHandCursor = true; onEnterFrame = function () { game(); if ((!levelPassed) and (!gamePaused)) { if (pressed) { if (pressCounter == 1) { if (player.hitTest(_xmouse, _ymouse, true)) { draggingPlayer = true; } } } else { draggingPlayer = false; } if (!draggingPlayer) { if (player._currentframe == 6) { player.play(); } vel.y = vel.y + gravity; pos.x = pos.x + vel.x; pos.y = pos.y + vel.y; if ((pos.y + radius) > 350) { pos.y = 350 - radius; vel.y = vel.y * (-restitution); vel.x = vel.x * friction; if (vel.y < -2) { fg.sounds.jump.play(); } } if ((pos.x + radius) > 640) { fg.sounds.jump.play(); pos.x = 640 - radius; vel.x = vel.x * (-restitution); } if (pos.x < (0 + radius)) { fg.sounds.jump.play(); pos.x = 0 + radius; vel.x = vel.x * (-restitution); } player._x = pos.x; player._y = pos.y; } else { playerEndX = _xmouse; playerEndY = _ymouse; player._x = player._x + ((playerEndX - player._x) / 3); player._y = player._y + ((playerEndY - player._y) / 3); old.x = pos.x; old.y = pos.y; pos.x = player._x; pos.y = player._y; vel.x = (pos.x - old.x) / 2; vel.y = (pos.y - old.y) / 2; } if (player._y > (350 - radius)) { player._y = yPosPlayer; } if (player._x > (640 - radius)) { player._x = 640 - radius; } if (player._x < (0 + radius)) { player._x = 0 + radius; } if ((((_xmouse < 0) or (_xmouse > 640)) or (_ymouse < 0)) or (_ymouse > 350)) { draggingPlayer = false; draggingWall = false; } if (player.hitTest(wall)) { if (player.hitTest(wall)) { fg.sounds.fail.play(); } draggingPlayer = false; player._x = xPosPlayer; player._y = yPosPlayer; draggingWall = false; wall._x = xPosWall; wall._y = yPosWall; vel = {x:0, y:0}; pos = {x:xPosPlayer, y:yPosPlayer}; old = {x:player._x, y:player._y}; } if (player.hitTest(yang)) { if (yang._currentframe == 1) { yang.play(); player._visible = false; player._y = pos.x; player._y = pos.y; passed(); } } } else { rockOn(); } };
Frame 122
stop(); setup(); i = 0; while (i < 6) { _global.myRoot["monster" + i].onRelease = function () { }; _global.myRoot["monster" + i].useHandCursor = true; i++; } chosen = false; matched = 0; monsterDone = new Array(); i = 0; while (i < 6) { monsterDone[i] = false; i++; } pos = new Array(); pos[0] = 1; pos[1] = 2; pos[2] = 3; pos[3] = 4; pos[4] = 5; pos[5] = 6; i = 0; while (i < 6) { j = Math.floor(Math.random() * pos.length); _global.myRoot["monster" + i].gotoAndStop(pos[j]); pos.splice(j, 1); i++; } onEnterFrame = function () { game(); if ((!levelPassed) and (!gamePaused)) { i = 0; while (i < 9) { if (_global.myRoot["monster" + i].hitTest(_xmouse, _ymouse, true)) { if (pressed) { if (pressCounter == 1) { if ((!chosen) and (_global.myRoot["monster" + i]._alpha == 100)) { _global.myRoot["monster" + i]._alpha = 50; chosen = true; num = i; } else { if (_global.myRoot["monster" + num]._currentframe == 1) { if (_global.myRoot["monster" + i]._currentframe == 2) { if (!monsterDone[num]) { monsterDone[num] = true; } if (!monsterDone[i]) { monsterDone[i] = true; _global.myRoot["monster" + i]._alpha = 50; } chosen = false; } else { _global.myRoot["monster" + num]._alpha = 100; _global.myRoot["monster" + i]._alpha = 100; chosen = false; } } if (_global.myRoot["monster" + num]._currentframe == 2) { if (_global.myRoot["monster" + i]._currentframe == 1) { if (!monsterDone[num]) { monsterDone[num] = true; } if (!monsterDone[i]) { monsterDone[i] = true; _global.myRoot["monster" + i]._alpha = 50; } chosen = false; } else { _global.myRoot["monster" + num]._alpha = 100; _global.myRoot["monster" + i]._alpha = 100; chosen = false; } } if (_global.myRoot["monster" + num]._currentframe == 3) { if (_global.myRoot["monster" + i]._currentframe == 4) { if (!monsterDone[num]) { monsterDone[num] = true; } if (!monsterDone[i]) { monsterDone[i] = true; _global.myRoot["monster" + i]._alpha = 50; } chosen = false; } else { _global.myRoot["monster" + num]._alpha = 100; _global.myRoot["monster" + i]._alpha = 100; chosen = false; } } if (_global.myRoot["monster" + num]._currentframe == 4) { if (_global.myRoot["monster" + i]._currentframe == 3) { if (!monsterDone[num]) { monsterDone[num] = true; } if (!monsterDone[i]) { monsterDone[i] = true; _global.myRoot["monster" + i]._alpha = 50; } chosen = false; } else { _global.myRoot["monster" + num]._alpha = 100; _global.myRoot["monster" + i]._alpha = 100; chosen = false; } } if (_global.myRoot["monster" + num]._currentframe == 5) { if (_global.myRoot["monster" + i]._currentframe == 6) { if (!monsterDone[num]) { monsterDone[num] = true; } if (!monsterDone[i]) { monsterDone[i] = true; _global.myRoot["monster" + i]._alpha = 50; } chosen = false; } else { _global.myRoot["monster" + num]._alpha = 100; _global.myRoot["monster" + i]._alpha = 100; chosen = false; } } if (_global.myRoot["monster" + num]._currentframe == 6) { if (_global.myRoot["monster" + i]._currentframe == 5) { if (!monsterDone[num]) { monsterDone[num] = true; } if (!monsterDone[i]) { monsterDone[i] = true; _global.myRoot["monster" + i]._alpha = 50; } chosen = false; } else { _global.myRoot["monster" + num]._alpha = 100; _global.myRoot["monster" + i]._alpha = 100; chosen = false; } } } } } if (_global.myRoot["monster" + i]._xscale < 110) { _global.myRoot["monster" + i]._xscale = _global.myRoot["monster" + i]._xscale + 5; _global.myRoot["monster" + i]._yscale = _global.myRoot["monster" + i]._yscale + 5; } else { _global.myRoot["monster" + i]._xscale = 110; _global.myRoot["monster" + i]._yscale = 110; } if (_global.myRoot["monster" + i].monster._currentframe == 1) { _global.myRoot["monster" + i].monster.play(); } } else { if (_global.myRoot["monster" + i]._xscale > 100) { _global.myRoot["monster" + i]._xscale = _global.myRoot["monster" + i]._xscale - 5; _global.myRoot["monster" + i]._yscale = _global.myRoot["monster" + i]._yscale - 5; } else { _global.myRoot["monster" + i]._xscale = 100; _global.myRoot["monster" + i]._yscale = 100; } if (_global.myRoot["monster" + i].monster._currentframe > 1) { _global.myRoot["monster" + i].monster.play(); } } i++; } i = 0; while (i < 6) { if (monsterDone[i]) { if (_global.myRoot["monster" + i]._alpha > 0) { _global.myRoot["monster" + i]._alpha = _global.myRoot["monster" + i]._alpha - 5; _global.myRoot["monster" + i]._xscale = _global.myRoot["monster" + i]._xscale - 5; _global.myRoot["monster" + i]._yscale = _global.myRoot["monster" + i]._yscale - 5; _global.myRoot["monster" + i]._rotation = _global.myRoot["monster" + i]._rotation + 20; } else { _global.myRoot["monster" + i]._visible = false; } } i++; } if ((((((monster0._visible == false) and (monster1._visible == false)) and (monster2._visible == false)) and (monster3._visible == false)) and (monster4._visible == false)) and (monster5._visible == false)) { passed(); } } else { rockOn(); } };
Frame 123
stop(); setup(); frame = random(2) + 1; hint.gotoAndStop(frame); onEnterFrame = function () { game(); i = 0; while (i < 9) { if (_global.myRoot["tile" + i].hitTest(_xmouse, _ymouse, true)) { if (_global.myRoot["tile" + i]._xscale < 120) { _global.myRoot["tile" + i]._xscale = _global.myRoot["tile" + i]._xscale + 5; _global.myRoot["tile" + i]._yscale = _global.myRoot["tile" + i]._yscale + 5; } else { _global.myRoot["tile" + i]._xscale = 120; _global.myRoot["tile" + i]._yscale = 120; } } else if (_global.myRoot["tile" + i]._xscale > 100) { _global.myRoot["tile" + i]._xscale = _global.myRoot["tile" + i]._xscale - 5; _global.myRoot["tile" + i]._yscale = _global.myRoot["tile" + i]._yscale - 5; } else { _global.myRoot["tile" + i]._xscale = 100; _global.myRoot["tile" + i]._yscale = 100; } i++; } if ((!levelPassed) and (!gamePaused)) { i = 0; while (i < 9) { if (pressed) { if (pressCounter == 1) { if (_global.myRoot["tile" + i].hitTest(_xmouse, _ymouse, true)) { _global.myRoot["tile" + i].play(); } } } i++; } if (frame == 1) { if (((((tile0._currentframe == 2) and (tile1._currentframe == 3)) and (tile2._currentframe == 4)) and (tile3._currentframe == 5)) and (tile4._currentframe == 6)) { passed(); } } if (frame == 2) { if (((((tile0._currentframe == 5) and (tile1._currentframe == 4)) and (tile2._currentframe == 3)) and (tile3._currentframe == 6)) and (tile4._currentframe == 2)) { passed(); } } if (frame == 2) { if (((((tile0._currentframe == 3) and (tile1._currentframe == 4)) and (tile2._currentframe == 5)) and (tile3._currentframe == 6)) and (tile4._currentframe == 2)) { passed(); } } } else { rockOn(); } };
Frame 124
stop(); setup(); target0._visible = true; target1._visible = false; targetShot = new Array(); i = 0; while (i < 2) { targetShot[i] = false; i++; } onEnterFrame = function () { game(); crosshair._x = 320 - (_xmouse - 320); crosshair._y = 240 - (_ymouse - 240); if ((!levelPassed) and (!gamePaused)) { i = 0; while (i < 2) { if (_global.myRoot["target" + i].hitTest(crosshair._x, crosshair._y, true)) { if (targetShot[i] == false) { if (pressed) { if (pressCounter == 1) { if (i == 1) { if (targetShot[0]) { fg.sounds.explosionB.play(); targetShot[i] = true; } } else { fg.sounds.explosionB.play(); targetShot[i] = true; } _global.myRoot["target" + (i + 1)]._visible = true; } } } } if (targetShot[i]) { if (_global.myRoot["target" + i]._alpha > 0) { _global.myRoot["target" + i]._alpha = _global.myRoot["target" + i]._alpha - 5; _global.myRoot["target" + i]._xscale = _global.myRoot["target" + i]._xscale + 5; _global.myRoot["target" + i]._yscale = _global.myRoot["target" + i]._yscale + 5; _global.myRoot["target" + i]._rotation = _global.myRoot["target" + i]._rotation + 20; } else { _global.myRoot["target" + i]._visible = false; } } i++; } if (hitmap.hitTest(crosshair._x, crosshair._y, true) or ASnative(800, 2) /* [Key] isDown */(2)) { if (!targetShot[1]) { if (targetShot[0]) { fg.sounds.fail.play(); } targetShot[0] = false; targetShot[1] = false; target0._alpha = 100; target0._xscale = 100; target0._yscale = 100; target0._rotation = 0; target1._alpha = 100; target1._xscale = 100; target1._yscale = 100; target1._rotation = 0; target0._visible = true; target1._visible = false; } } if (targetShot[0] and targetShot[1]) { if (target1._visible == false) { passed(); } } } else { rockOn(); } };
Frame 125
stop(); setup(); correct = false; answerA.onPress = function () { fg.sounds.fail.play(); time = time + 20; }; answerB.onPress = function () { fg.sounds.fail.play(); time = time + 20; }; answerC.onPress = function () { correct = true; }; answerD.onPress = function () { fg.sounds.fail.play(); time = time + 20; }; onEnterFrame = function () { game(); if ((!levelPassed) and (!gamePaused)) { if (correct) { passed(); } } else { rockOn(); } };
Frame 126
stop(); setup(); gravity = 2; curtainGravity = 2; power = 0; curtainCall = false; shown = false; back = false; submit = false; curtain.buttonMenu.onPress = function () { back = true; submit = false; fg.play(); }; curtain.buttonSubmit.onPress = function () { back = false; submit = true; fg.play(); }; curtain.buttonReward.onRelease = function () { getURL ("http://www.ninjadoodle.com/", "_blank"); }; ninja.onRelease = function () { }; ninja.useHandCursor = true; var medal_name = "Stage3"; com.newgrounds.API.unlockMedal(medal_name); onEnterFrame = function () { game(); if (fg._currentframe == fg._totalframes) { if (back) { gotoAndStop ("menu"); } if (submit) { gotoAndStop ("submit"); } } if ((!levelPassed) and (!gamePaused)) { if (pressed) { if (ninja.hitTest(_xmouse, _ymouse, true)) { if (ninja._currentframe == 1) { power = 0; ninja.play(); } if (ninja._y == 430) { if (power < 30) { trace(power); power = power + 0.5; } else { power = 30; } } } } else if (ninja._currentframe == 15) { ninja.play(); jumping = true; } if (jumping) { if (power < 1) { jumping = false; } ninja._y = ninja._y - power; power = power * 0.9; } else if (ninja._y < 430) { ninja._y = ninja._y + gravity; gravity = gravity * 1.1; } else { if (ninja._currentframe == 25) { ninja.play(); gravity = 2; } ninja._y = 430; } if (ninja.hitTest(curtain)) { if (!jumping) { curtainCall = true; timerOn = false; finalTime = time; curtain.finalTimeText = finalTime + " seconds"; } } if (curtainCall) { if (curtain._currentframe == 1) { stopAllSounds(); curtain.play(); } if (curtain._y < 240) { curtain._y = curtain._y + curtainGravity; curtainGravity = curtainGravity * 1.1; } else { curtain._y = 240; curtainGravity = 2; } if (!shown) { shown = true; if (finalTime < 150) { var _local1 = "RankNinja"; com.newgrounds.API.unlockMedal(_local1, 400, 150); _local1 = "RankGold"; com.newgrounds.API.unlockMedal(_local1, 400, 200); _local1 = "RankSilver"; com.newgrounds.API.unlockMedal(_local1, 400, 250); _local1 = "RankBronze"; com.newgrounds.API.unlockMedal(_local1, 400, 300); _local1 = "RankSurvivor"; com.newgrounds.API.unlockMedal(_local1, 400, 350); } if ((finalTime >= 150) and (finalTime < 200)) { var _local1 = "RankGold"; com.newgrounds.API.unlockMedal(_local1, 400, 200); _local1 = "RankSilver"; com.newgrounds.API.unlockMedal(_local1, 400, 250); _local1 = "RankBronze"; com.newgrounds.API.unlockMedal(_local1, 400, 300); _local1 = "RankSurvivor"; com.newgrounds.API.unlockMedal(_local1, 400, 350); } if ((finalTime >= 200) and (finalTime < 250)) { var _local1 = "RankSilver"; com.newgrounds.API.unlockMedal(_local1, 400, 250); _local1 = "RankBronze"; com.newgrounds.API.unlockMedal(_local1, 400, 300); _local1 = "RankSurvivor"; com.newgrounds.API.unlockMedal(_local1, 400, 350); } if ((finalTime >= 250) and (finalTime < 300)) { var _local1 = "RankBronze"; com.newgrounds.API.unlockMedal(_local1, 400, 300); _local1 = "RankSurvivor"; com.newgrounds.API.unlockMedal(_local1, 400, 350); } if (finalTime >= 300) { var _local1 = "RankSurvivor"; com.newgrounds.API.unlockMedal(_local1, 400, 350); } } } } };
Frame 127
stop(); back = false; buttonMenu.onPress = function () { back = true; fg.play(); }; buttonLink.onRelease = function () { getURL ("http://www.ninjadoodle.com/", "_blank"); }; fg.speaker.onRelease = function () { if (sound) { sound = false; _global.myRoot.globalSound.setVolume(0); } else { sound = true; _global.myRoot.globalSound.setVolume(100); } }; fg.cog.onRelease = function () { if (_quality == "HIGH") { prev = "HIGH"; _quality = "MEDIUM"; } else if ((_quality == "MEDIUM") && (prev == "HIGH")) { _quality = "LOW"; } else if ((_quality == "MEDIUM") && (prev == "LOW")) { _quality = "HIGH"; } else if (_quality == "LOW") { _quality = "MEDIUM"; prev = "LOW"; } }; onEnterFrame = function () { if (sound) { fg.speaker.gotoAndStop("on"); } else { fg.speaker.gotoAndStop("off"); } if (fg._currentframe == fg._totalframes) { if (back) { gotoAndPlay ("menu"); } } };
Frame 128
stop(); back = false; buttonMenu.onPress = function () { back = true; fg.play(); }; buttonLink.onRelease = function () { getURL ("http://www.ninjadoodle.com/", "_blank"); }; fg.speaker.onRelease = function () { if (sound) { sound = false; _global.myRoot.globalSound.setVolume(0); } else { sound = true; _global.myRoot.globalSound.setVolume(100); } }; fg.cog.onRelease = function () { if (_quality == "HIGH") { prev = "HIGH"; _quality = "MEDIUM"; } else if ((_quality == "MEDIUM") && (prev == "HIGH")) { _quality = "LOW"; } else if ((_quality == "MEDIUM") && (prev == "LOW")) { _quality = "HIGH"; } else if (_quality == "LOW") { _quality = "MEDIUM"; prev = "LOW"; } }; onEnterFrame = function () { if (sound) { fg.speaker.gotoAndStop("on"); } else { fg.speaker.gotoAndStop("off"); } if (fg._currentframe == fg._totalframes) { if (back) { gotoAndPlay ("menu"); } } };
Frame 129
stop(); back = false; buttonMenu.onPress = function () { back = true; fg.play(); }; buttonLink.onRelease = function () { getURL ("http://www.ninjadoodle.com/", "_blank"); }; fg.speaker.onRelease = function () { if (sound) { sound = false; _global.myRoot.globalSound.setVolume(0); } else { sound = true; _global.myRoot.globalSound.setVolume(100); } }; fg.cog.onRelease = function () { if (_quality == "HIGH") { prev = "HIGH"; _quality = "MEDIUM"; } else if ((_quality == "MEDIUM") && (prev == "HIGH")) { _quality = "LOW"; } else if ((_quality == "MEDIUM") && (prev == "LOW")) { _quality = "HIGH"; } else if (_quality == "LOW") { _quality = "MEDIUM"; prev = "LOW"; } }; onEnterFrame = function () { if (sound) { fg.speaker.gotoAndStop("on"); } else { fg.speaker.gotoAndStop("off"); } if (fg._currentframe == fg._totalframes) { if (back) { gotoAndPlay ("menu"); } } };
Instance of Symbol 44 MovieClip [Score Board (NewgroundsAPI)] in Frame 129
//component parameters onClipEvent (construct) { board_name = "Best Times"; period = "Today"; }
Frame 130
stop(); var scoreboard_name = "Best Times"; var my_score = finalTime; com.newgrounds.API.postScore(scoreboard_name, my_score); back = false; buttonMenu.onPress = function () { back = true; fg.play(); }; buttonLink.onRelease = function () { getURL ("http://www.ninjadoodle.com/", "_blank"); }; fg.speaker.onRelease = function () { if (sound) { sound = false; _global.myRoot.globalSound.setVolume(0); } else { sound = true; _global.myRoot.globalSound.setVolume(100); } }; fg.cog.onRelease = function () { if (_quality == "HIGH") { prev = "HIGH"; _quality = "MEDIUM"; } else if ((_quality == "MEDIUM") && (prev == "HIGH")) { _quality = "LOW"; } else if ((_quality == "MEDIUM") && (prev == "LOW")) { _quality = "HIGH"; } else if (_quality == "LOW") { _quality = "MEDIUM"; prev = "LOW"; } }; onEnterFrame = function () { if (sound) { fg.speaker.gotoAndStop("on"); } else { fg.speaker.gotoAndStop("off"); } if (fg._currentframe == fg._totalframes) { if (back) { gotoAndPlay ("menu"); } } };
Instance of Symbol 44 MovieClip [Score Board (NewgroundsAPI)] in Frame 130
//component parameters onClipEvent (construct) { board_name = "Best Times"; period = "Today"; }
Symbol 6 Button
on (release) { com.newgrounds.API.loadNewgrounds(); }
Symbol 25 Button
on (release) { nextFrame(); }
Symbol 26 Button
on (release) { prevFrame(); }
Symbol 30 Button
on (release) { selectPeriod("Today"); }
Symbol 33 Button
on (release) { selectPeriod("This Week"); }
Symbol 36 Button
on (release) { selectPeriod("This Month"); }
Symbol 39 Button
on (release) { selectPeriod("This Year"); }
Symbol 42 Button
on (release) { selectPeriod("All-Time"); }
Symbol 43 MovieClip Frame 1
function selectPeriod(p) { _parent.loadScores(10, p); period = p; gotoAndStop (1); } stop();
Symbol 44 MovieClip [Score Board (NewgroundsAPI)] Frame 1
#initclip 25 Object.registerClass("Score Board (NewgroundsAPI)", com.newgrounds.components.ScoreTable); #endinitclip loadScores(10);
Symbol 71 MovieClip Frame 1
onEnterFrame = function () { if (_visible) { _rotation = (_rotation + 30); } else { delete onEnterFrame; } };
Symbol 72 MovieClip Frame 11
gotoAndPlay (1);
Symbol 73 MovieClip [Flash Ad (NewgroundsAPI)] Frame 1
#initclip 26 Object.registerClass("Flash Ad (NewgroundsAPI)", com.newgrounds.components.FlashAd); #endinitclip
Symbol 97 MovieClip Frame 40
stop();
Symbol 104 Button
on (release) { startMovie(); }
Symbol 105 MovieClip [Preloader Bar (NewgroundsAPI)] Frame 1
#initclip 27 Object.registerClass("Preloader Bar (NewgroundsAPI)", com.newgrounds.components.PreloaderBar); #endinitclip
Symbol 113 MovieClip Frame 10
stop();
Symbol 115 MovieClip Frame 37
_parent.setGotoFrame("done"); stop();
Symbol 127 MovieClip [NewgroundsAPIAsset_Medal_Popup] Frame 1
function endDelay() { clearInterval(pop_delay); gotoAndPlay ("closeme"); } _visible = true; icon._visible = false; pop_delay = setInterval(endDelay, 3000);
Symbol 127 MovieClip [NewgroundsAPIAsset_Medal_Popup] Frame 2
medal.attachIcon(icon);
Symbol 127 MovieClip [NewgroundsAPIAsset_Medal_Popup] Frame 10
icon._visible = true; medal_name = medal.getName(); medal_value = medal.getValue() + "pts"; stop();
Symbol 127 MovieClip [NewgroundsAPIAsset_Medal_Popup] Frame 21
this.removeMovieClip(); _visible = false; stop();
Symbol 133 MovieClip [NewgroundsAPIAsset_Login_Warning] Frame 1
function endDelay() { clearInterval(pop_delay); gotoAndPlay ("closeme"); } _x = 0; _y = 0; _visible = true; pop_delay = setInterval(endDelay, 6000);
Symbol 133 MovieClip [NewgroundsAPIAsset_Login_Warning] Frame 10
stop();
Symbol 133 MovieClip [NewgroundsAPIAsset_Login_Warning] Frame 21
this.removeMovieClip(); _visible = false; stop();
Symbol 136 MovieClip [NewgroundsAPIAsset_Connection_Error] Frame 1
function endDelay() { clearInterval(pop_delay); gotoAndPlay ("closeme"); } _x = 0; _y = 0; _visible = true; pop_delay = setInterval(endDelay, 6000);
Symbol 136 MovieClip [NewgroundsAPIAsset_Connection_Error] Frame 10
stop();
Symbol 136 MovieClip [NewgroundsAPIAsset_Connection_Error] Frame 21
this.removeMovieClip(); _visible = false; stop();
Symbol 157 MovieClip [NewgroundsAPIAsset_big_popup_background] Frame 1
var w = Math.round(this._width); var h = Math.round(this._height); if (w < 80) { w = 80; } if (h < 80) { h = 80; } this._width = 350; this._height = 120; t._width = w - 2; t._x = 1; b._width = w - 2; b._x = 1; c._width = w - 2; c._x = 1; c._height = h - 2; c._y = 1; l._height = h - 2; l._y = 1; r._height = h - 2; r._y = 1; tr._x = w - 7; r._x = w - 7; br._x = w - 7; b._y = h - 7; bl._y = h - 7; br._y = h - 7; shadow._width = w + 10; shadow._height = h + 10;
Symbol 161 Button
on (release) { this._visible = false; this.removeMovieClip(); }
Symbol 167 Button
on (release) { getURL (official_version_url, "_blank"); }
Symbol 169 MovieClip [NewgroundsAsset_New_Version_Available] Frame 1
_x = (Stage.width / 2); _y = (Stage.height / 2); background._width = Stage.width + 200; background._height = Stage.height + 200; background._x = -(_x + 100); background._y = -(_y + 100);
Symbol 170 Button
on (release) { getURL (official_version_url, "_blank"); }
Symbol 174 MovieClip [NewgroundsAsset_Illegal_Host] Frame 1
_x = (Stage.width / 2); _y = (Stage.height / 2); background._width = Stage.width + 200; background._height = Stage.height + 200; background._x = -(_x + 100); background._y = -(_y + 100);
Symbol 175 MovieClip [API Connector (NewgroundsAPI)] Frame 1
#initclip 28 Object.registerClass("API Connector (NewgroundsAPI)", com.newgrounds.components.APIConnector); #endinitclip
Symbol 175 MovieClip [API Connector (NewgroundsAPI)] Frame 20
_visible = false;
Symbol 47 MovieClip [__Packages.com.newgrounds.API] Frame 0
class com.newgrounds.API { static var version, user_email, movie_id, debug, session_id, connected, tracker_id, timeout, encryption_key, user_id, user_name, host, ad_url, eventDispatcher, last_command, ad_swf_url; function API () { } static function setMovieVersion(v) { if (v) { version = String(v); } } static function setUserEmail(e) { user_email = e; } static function setFakeSession(fake) { fake_session = fake; } static function setPreload(p) { preload = p; } static function getPercentLoaded() { var _local2; if (preload && (preload_items > 0)) { _local2 = 80; var _local4 = Math.round((preload_items_loaded / preload_items) * 20); var _local3 = Math.round((_root.getBytesLoaded() / _root.getBytesTotal()) * _local2) + _local4; } else { _local2 = 100; var _local3 = Math.round((_root.getBytesLoaded() / _root.getBytesTotal()) * _local2); } return(_local3); } static function reportNewAsset() { if (preload) { preload_items++; } } static function reportAssetLoaded() { if (preload) { preload_items_loaded++; } } static function populateMedals(medal_list) { if (medals === null) { medals = new Array(); var _local2 = 0; while (_local2 < medal_list.length) { var _local1 = medal_list[_local2]; medals.push(new com.newgrounds.Medal(_local1.medal_id, _local1.medal_name, _local1.medal_value, _local1.medal_difficulty, _local1.medal_unlocked, _local1.medal_icon)); _local2++; } } } static function populateSaveGroups(save_group_list, file_path) { com.newgrounds.SaveFile.setFilePath(file_path); save_groups = new Array(); var _local6 = 0; while (_local6 < save_group_list.length) { var _local2 = save_group_list[_local6]; var _local5 = new com.newgrounds.SaveGroup(_local2.group_id, _local2.group_name, _local2.group_type); var _local4 = 0; while (_local4 < _local2.keys.length) { var _local3 = _local2.keys[_local4]; _local5.addKey(_local3.id, _local3.name, _local3.type); _local4++; } _local4 = 0; while (_local4 < _local2.ratings.length) { var _local1 = _local2.ratings[_local4]; _local5.addRating(_local1.id, _local1.name, _local1.min, _local1.max, _local1.float); _local4++; } save_groups.push(_local5); _local6++; } } static function populateScoreBoards(score_boards) { scoreboards = new Array(); var _local1 = 0; while (_local1 < score_boards.length) { scoreboards.push(new com.newgrounds.ScoreBoard(score_boards[_local1].id, score_boards[_local1].name)); _local1++; } } static function getOfficialVersionURL() { var _local1 = (((GATEWAY_URL + "?tracker_id=") + movie_id) + "&command_id=loadOfficalVersion&seed=") + Math.random(); if (debug) { _local1 = _local1 + "&debug=1"; } return(_local1); } static function hasUserSession() { if (session_id && (publisher_id)) { return(true); } if (_root.NewgroundsAPI_PublisherID && (_root.NewgroundsAPI_SessionID)) { return(true); } return(false); } static function isNewgrounds() { return(((publisher_id == 1) || (_root.NewgroundsAPI_PublisherID == 1)) || (getHost().toLowerCase().indexOf("ungrounded.net") > -1)); } static function hasPublisher() { return(publisher_id || (_root.NewgroundsAPI_PublisherID)); } static function hasUserEmail() { if (user_email) { return(true); } return(false); } static function isConnected() { return(connected); } static function getTrackerID() { return(tracker_id); } static function connectionTimeOut() { reportAssetLoaded(); clearInterval(timeout); callListener(com.newgrounds.APIEvent.MOVIE_CONNECTED, false, new com.newgrounds.APIError("CONNECTION_FAILED", "Connection to API gateway timed out.")); } static function connectMovie(m_id, encrypt_key, debug_mode) { if (connected) { return(undefined); } sendMessage("Connecting to the Newgrounds API Gateway..."); var _local2 = function () { com.newgrounds.API.connectionTimeOut(); }; timeout = setInterval(_local2, 10000, null); if (!m_id) { fatalError("API.connectMovie() - missing required movie_id parameter", "connectMovie"); } movie_id = String(m_id); tracker_id = Number(movie_id.substring(0, movie_id.indexOf(":"))); encryption_key = encrypt_key; debug = debug_mode; if (_root.NewgroundsAPI_PublisherID) { publisher_id = _root.NewgroundsAPI_PublisherID; if (_root.NewgroundsAPI_SessionID) { session_id = _root.NewgroundsAPI_SessionID; } } else if (fake_session) { publisher_id = 1; session_id = "D3bu64p1U53R"; user_id = 10; user_name = "API-Debugger"; } else { if (debug) { publisher_id = 1; } session_id = null; user_id = 0; user_name = "Guest"; } if (_root.NewgroundsAPI_UserName) { user_name = _root.NewgroundsAPI_UserName; } if (_root.NewgroundsAPI_UserID) { user_id = _root.NewgroundsAPI_UserID; } reportNewAsset(); connected = true; sendCommand("connectMovie", {host:getHost(), movie_version:version}); } static function getHost() { if (!host) { var _local1 = _url; if ((_local1.indexOf("http://") > -1) or (_local1.indexOf("https://") > -1)) { host = _local1.split("/")[2].toLowerCase(); } else { host = LOCAL_HOST; } } return(host); } static function isPublishedHost() { for (var _local1 in PREVIEW_HOSTS) { if (getHost() == PREVIEW_HOSTS[_local1]) { return(false); } } return(true); } static function loadNewgrounds() { sendCommand("loadNewgrounds", {host:getHost()}, true); } static function loadMySite() { sendCommand("loadMySite", {host:getHost()}, true); } static function loadCustomLink(link) { sendCommand("loadCustomLink", {host:getHost(), link:link}, true); } static function logCustomEvent(event) { sendCommand("logCustomEvent", {host:getHost(), event:event}); } static function getScoreBoard(board) { for (var _local2 in scoreboards) { if ((typeof(board) == "string") && (scoreboards[_local2].name == board)) { return(scoreboards[_local2]); } if ((typeof(board) == "number") && (scoreboards[_local2].id == board)) { return(scoreboards[_local2]); } } } static function postScore(board, value, get_best) { if ((!board) or (value == undefined)) { sendError({command_id:"postScore"}, new com.newgrounds.APIError("MISSING_PARAM", "missing required parameter(s)")); return(undefined); } sendSecureCommand("postScore", {user_name:user_name, board:board, value:value, get_best:get_best, publisher_id:publisher_id}); } static function loadScores(board) { var _local3 = "loadScores"; if (!board.__get__id()) { sendError({command_id:_local3}, new com.newgrounds.APIError("MISSING_PARAM", "missing required ScoreBoard instance")); return(undefined); } if (!hasUserSession()) { callListener(com.newgrounds.APIEvent.SCORES_LOADED, false, new com.newgrounds.APIError("SITE_ID_REQUIRED", ("Host '" + getHost()) + "' does not have high scores enabled")); return(undefined); } var _local1 = {}; _local1.publisher_id = publisher_id; _local1.period = board.period; _local1.board = board.id; _local1.num_results = board.num_results; _local1.page = board.page; sendCommand(_local3, _local1); } static function unlockMedal(medal, x, y) { if (!medal) { sendError({command_id:"unlockMedal"}, new com.newgrounds.APIError("MISSING_PARAM", "missing required medal name")); return(undefined); } if (typeof(medal) != "object") { medal = getMedal(medal); } callListener(com.newgrounds.APIEvent.UNLOCK_MEDAL, true, {medal:medal, x:x, y:y}); if (hasUserSession() or debug) { sendMessage(("Attempting to unlock '" + medal.getName()) + "'"); var _local3 = new Object(); _local3.medal_id = medal.getID(); sendSecureCommand("unlockMedal", _local3); } else { sendMessage(("Unlocking '" + medal.getName()) + "'"); medal.setUnlocked(true); var _local2 = loadLocal("medals_unlocked"); if (!_local2) { _local2 = new Object(); } _local2[medal.getID()] = true; saveLocal("medals_unlocked", _local2); } } static function loadMedals() { if (medals) { callListener(com.newgrounds.APIEvent.MEDALS_LOADED, true, {medals:medals}); return(undefined); } var _local1 = new Object(); if (hasUserSession()) { _local1.publisher_id = publisher_id; _local1.user_id = user_id; } sendCommand("getMedals", _local1); } static function getMedals() { return(medals); } static function getMedal(identifier) { for (var _local3 in medals) { var _local1 = medals[_local3]; if ((typeof(identifier) == "string") && (_local1.getName() == identifier)) { return(_local1); } if (_local1.getID() == identifier) { return(_local1); } } sendWarning(("Could not find the medal '" + identifier) + "'"); } static function saveLocal(save_id, save_data, size_allocation) { if (!sharedObjects[save_id]) { sharedObjects[save_id] = SharedObject.getLocal((("ng_ap_secure_" + movie_id) + "_") + save_id); } sharedObjects[save_id].data[save_id] = encodeData(save_data); sharedObjects[save_id].flush(); } static function loadLocal(save_id) { if (!sharedObjects[save_id]) { sharedObjects[save_id] = SharedObject.getLocal((("ng_ap_secure_" + movie_id) + "_") + save_id); } sharedObjects[save_id].flush(); echo((("sharedobject " + save_id) + " is: ") + sharedObjects[save_id].data[save_id]); if (sharedObjects[save_id].data[save_id]) { echo("decoded: " + decodeData(sharedObjects[save_id].data[save_id])); return(decodeData(sharedObjects[save_id].data[save_id])); } return(null); } static function encodeData(data) { return(compressHex(com.newgrounds.encoders.RC4.encrypt(com.newgrounds.encoders.JSON.encode(data), encryption_key))); } static function decodeData(base) { return(com.newgrounds.encoders.JSON.decode(com.newgrounds.encoders.RC4.decrypt(uncompressHex(base), encryption_key))); } static function compressHex(hex_value) { var _local6 = hex_value.length % 6; var _local4 = ""; var _local5 = new com.newgrounds.encoders.BaseN(compression_radix); var _local1 = 0; while (_local1 < hex_value.length) { var _local2 = Number("0x" + hex_value.substr(_local1, 6)); _local4 = _local4 + _local5.encode(_local2, 4); _local1 = _local1 + 6; } return(_local6 + _local4); } static function uncompressHex(base_value) { var _local9 = Number(base_value.charAt(0)); var _local7 = ""; var _local3; var _local8 = new com.newgrounds.encoders.BaseN(compression_radix); var _local2 = 1; while (_local2 < base_value.length) { var _local6 = base_value.substr(_local2, 4); var _local5 = _local8.decode(_local6); var _local1 = dec2hex(_local5); if ((_local2 + 4) < base_value.length) { _local3 = 6; } else { _local3 = _local9; } while (_local1.length < _local3) { _local1 = "0" + _local1; } _local7 = _local7 + _local1; _local2 = _local2 + 4; } return(_local7); } static function dec2hex(dec) { var _local4 = "0123456789ABCDEF"; var _local3 = ""; while (dec > 0) { var _local2 = dec % 16; _local3 = _local4.charAt(_local2) + _local3; dec = (dec - _local2) / 16; } return(_local3); } static function getSaveGroup(group) { if ((save_groups == null) || (save_groups.length < 1)) { return(null); } var _local1 = 0; while (_local1 <= save_groups.length) { if ((typeof(group) == "number") or (Number(group).toString() == String(group))) { if (save_groups[_local1].getID() == Number(group)) { return(save_groups[_local1]); } } else if (typeof(group) == "string") { if (save_groups[_local1].getName().toLowerCase() == group.toLowerCase()) { return(save_groups[_local1]); } } _local1++; } return(null); } static function lookupSaveFiles(save_group) { var _local1 = "lookupSaveFiles"; var _local2 = {publisher_id:publisher_id, group_id:save_group.getID(), query:com.newgrounds.encoders.JSON.encode(save_group.getQuery(true))}; sendCommand(_local1, _local2); } static function newSaveFile(group) { var _local1 = getSaveGroup(group); if (_local1) { return(_local1.newFile()); } var _local2 = new com.newgrounds.APIError("INVALID_SAVE_GROUP", ("'" + group) + "' is not a valid save group."); sendError({command_id:"newSaveFile"}, _local2); } static function newSaveQuery(group) { var _local1 = getSaveGroup(group); if (_local1) { return(_local1.newQuery()); } var _local2 = new com.newgrounds.APIError("INVALID_SAVE_GROUP", ("'" + group) + "' is not a valid save group."); sendError({command_id:"newSaveQuery"}, _local2); } static function checkFilePrivs(file) { if (user_id) { var _local1 = user_id; } else { var _local1 = 0; } var _local2 = {group:file.getGroup().getID(), filename:file.getName(), user_id:_local1, publisher_id:publisher_id}; sendCommand("checkFilePrivs", _local2); } static function saveFile(file, overwrite) { var _local1; _local1 = {group:file.getGroup().getID(), filename:file.getName(), description:file.getDescription(), draft:file.__get__draft(), user_name:user_name}; if (overwrite) { _local1.overwrite = overwrite; } if (file.getDuplicateID()) { _local1.save_id = file.getDuplicateID(); } if (file.getKeys().length > 0) { _local1.keys = file.getKeys(); } var _local3; _local3 = {file:file.getRawContents()}; if (file.getThumbnailImageScan()) { _local3.thumbnail = file.getThumbnailImageScan(); } save_file = file; sendSecureCommand("saveFile", _local1, null, _local3); } static function rateSaveFile(file, rating, vote) { var _local1 = {group:file.getGroup().getID(), save_id:file.getID(), rating_id:rating.rating_id, vote:vote, user_id:user_id}; sendSecureCommand("rateSaveFile", _local1); } static function getConfirmation(command_name, event, msg, target, confirm, cancel) { var _local1 = new com.newgrounds.APIError("CONFIRM_REQUEST", msg); _local1.confirm = function () { target[confirm](); }; _local1.cancel = function () { target[cancel](); }; _local1.command = command_name; callListener(event, false, _local1); } static function doEvent(e) { switch (e.command_id) { case "connectMovie" : clearInterval(timeout); sendMessage("You have successfully connected to the Newgrounds API Gateway"); sendMessage(("Movie identified as \"" + e.movie_name) + "\""); callListener(com.newgrounds.APIEvent.MOVIE_CONNECTED, e.success, {movie_name:e.movie_name}); var _local6 = false; if (e.ad_status === -1) { var _local10 = "This movie was not approved to run Flash Ads."; sendWarning(_local10); sendWarning(("visit " + AD_TERMS_URL) + " to view our approval guidelines"); if (!e.ad_url) { callListener(com.newgrounds.APIEvent.ADS_APPROVED, false, new com.newgrounds.APIError("FLASH_ADS_NOT_APPROVED", _local10)); } else { _local6 = true; } } else if (e.ad_status === 0) { var _local10 = "Flash Ads are currently awaiting approval."; sendNotice(_local10); if (!e.ad_url) { callListener(com.newgrounds.APIEvent.ADS_APPROVED, false, new com.newgrounds.APIError("FLASH_ADS_NOT_APPROVED", _local10)); } else { _local6 = true; } } if (e.ad_url) { ad_url = unescape(e.ad_url); if (!_local6) { sendMessage("This movie has been approved to run Flash Ads!"); } callListener(com.newgrounds.APIEvent.ADS_APPROVED, true); } if (e.deny_host) { var _local10 = getHost() + " does not have permission to run this movie!"; sendWarning(_local10); sendWarning("\tUpdate your API configuration to unblock " + getHost()); callListener(com.newgrounds.APIEvent.HOST_BLOCKED, true, {movie_url:unescape(e.movie_url), redirect_url:getOfficialVersionURL()}); } else if (e.movie_version) { sendWarning("According to your API Configuration, this version is out of date."); if (version) { sendWarning("\tThe this movie is version " + version); } sendWarning("\tThe most current version is " + e.movie_version); callListener(com.newgrounds.APIEvent.NEW_VERSION_AVAILABLE, true, {movie_version:e.movie_version, movie_url:unescape(e.movie_url), redirect_url:getOfficialVersionURL()}); } if (e.request_portal_url) { sendCommand("setPortalID", {portal_url:_url}); } if (preload) { reportNewAsset(); var _local7 = {}; if (hasUserSession()) { _local7.publisher_id = publisher_id; _local7.user_id = user_id; } sendCommand("preloadSettings", _local7); } reportAssetLoaded(); break; case "preloadSettings" : if (e.medals) { populateMedals(e.medals); if ((!hasUserSession()) and (!debug)) { echo("checking for sharedobject medals..."); var _local3 = loadLocal("medals_unlocked"); if (_local3) { for (var _local5 in _local3) { var _local5 = Number(_local5); if (_local3[_local5]) { var _local2 = getMedal(_local5); echo("now unlocking " + _local2.getName()); _local2.setUnlocked(true); } } } } } if (e.save_groups) { populateSaveGroups(e.save_groups, e.save_file_path); } if (e.score_boards) { populateScoreBoards(e.score_boards); } reportAssetLoaded(); break; case "logCustomEvent" : if (e.success) { sendMessage(("Event '" + e.event) + "' was logged."); } callListener(com.newgrounds.APIEvent.EVENT_LOGGED, e.success, {event:e.event}); break; case "postScore" : var _local8; if (e.success) { var _local4 = "User"; if (user_email) { _local4 = user_email; } else if (user_name) { _local4 = user_name; } var _local17 = getScoreBoard(e.board); sendMessage(((((_local4 + " posted ") + e.value) + " to '") + _local17.name) + "'"); _local8 = {board:_local17, value:e.value, username:_local4}; } callListener(com.newgrounds.APIEvent.SCORE_POSTED, e.success, _local8); break; case "loadScores" : _local8 = new Object(); var _local17 = getScoreBoard(e.board); if (_local17.exists()) { _local17.setScores(e.scores, e.period, e.page, e.num_results); } callListener(com.newgrounds.APIEvent.SCORES_LOADED, e.success, {board:_local17}); break; case "unlockMedal" : var _local21 = getMedal(e.medal_name); _local21.setUnlocked(true); sendMessage(("Successfuly unlocked '" + _local21.getName()) + "'"); callListener(com.newgrounds.APIEvent.MEDAL_UNLOCKED, e.success, {medal:_local21}); break; case "getMedals" : populateMedals(e.medals); callListener(com.newgrounds.APIEvent.MEDALS_LOADED, e.success, {medals:medals}); break; case "lookupSaveFiles" : var _local11 = getSaveGroup(e.group_id).getQuery(); _local11.onExecuted(e.files); break; case "rateSaveFile" : var _local15 = getSaveGroup(e.group_id); var _local13 = _local15.getFile(e.save_id); if (e.already_voted) { var _local24 = new com.newgrounds.APIError("PERMISSION_DENIED", "You have already voted on this item today"); callListener(com.newgrounds.APIEvent.VOTE_COMPLETE, false, {error:_local24, file:_local13}); return(undefined); } if (e.success) { var _local9 = _local13.onVoted(e); callListener(com.newgrounds.APIEvent.VOTE_COMPLETE, e.success, {rating:_local9, file:_local13}); } else { callListener(com.newgrounds.APIEvent.VOTE_COMPLETE, e.success, {file:_local13}); } break; case "saveFile" : if (save_file) { if (!save_file.exists()) { save_file.setID(e.save_id, true); } save_file.onSaved(e); callListener(com.newgrounds.APIEvent.FILE_SAVED, e.success, {file:save_file}); } save_file = null; break; case "checkFilePrivs" : _local8 = {file:save_file, filename:e.filename, group:e.group, exists:e.exists, can_write:e.can_write}; if (e.duplicate_id) { _local8.duplicate_id = e.duplicate_id; } callListener(com.newgrounds.APIEvent.FILE_PRIVS_LOADED, e.success, _local8); } } static function getDispatcher() { if (!eventDispatcher) { eventDispatcher = new com.newgrounds.APIEventDispatcher(); } return(eventDispatcher); } static function hasEventListener(event) { return(getDispatcher().hasEventListener(event)); } static function addEventListener(event, listener, target) { echo(("Adding a listener for '" + event) + "'"); getDispatcher().addEventListener(event, listener, target); } static function removeEventListener(event, target) { getDispatcher().removeEventListener(event, target); } static function callListener(event, success, data, target) { echo("Fired Event: " + event); var _local1 = new com.newgrounds.APIEvent(event, success, target, data); if (data.isError()) { _local1.error = data; } else { _local1.data = data; } getDispatcher().dispatchEvent(_local1); if ((event == com.newgrounds.APIEvent.MOVIE_CONNECTED) && (!success)) { connected = false; } bridge.sendEvent(event, {success:success, data:data}); } static function sendError(c, e) { switch (c.command_id) { case "connectMovie" : clearInterval(timeout); callListener(com.newgrounds.APIEvent.MOVIE_CONNECTED, false, {error:e, response:c}); break; case "saveFile" : callListener(com.newgrounds.APIEvent.FILE_SAVED, false, {error:e, file:save_file, response:c}); save_file = null; } bridge.sendError(com.newgrounds.APIEvent.API_ERROR, {command:c.command_id, error:e}); trace((((((("[Newgrounds API ERROR] :: " + c.command_id) + "() - ") + e.name) + ":") + newline) + "\t\t\t\t") + e.message); } static function sendWarning(m, c) { if (c) { m = m + ((("\r[Newgrounds API WARNING] :: \tSee " + COMMANDS_WIKI_URL) + c.toLowerCase()) + " for additional information."); } trace("[Newgrounds API WARNING] :: " + m); } static function sendNotice(m, c) { if (c) { m = m + ((("\r[Newgrounds API NOTICE] :: \tSee " + COMMANDS_WIKI_URL) + c.toLowerCase()) + " for additional information."); } trace("[Newgrounds API NOTICE] :: " + m); } static function fatalError(m, c) { if (c) { m = m + ((("\r\tSee " + COMMANDS_WIKI_URL) + c.toLowerCase()) + " for additional information."); } throw (((("***ERROR*** frame=" + _root._currentframe) + ", class=API") + newline) + newline) + m; } static function sendSecureCommand(command, secure_params, unsecure_params, files) { if (((!debug) && (!hasUserSession())) && (!hasUserEmail())) { sendError({command_id:command}, new com.newgrounds.APIError("IDENTIFICATION_REQUIRED", ("You must be logged in, or provide an e-mail address using 'API.setUserEmail(\"name@domain.com\");' to use " + command) + "().")); return(undefined); } if (!command) { fatalError("Missing command", "sendSecureCommand"); } if (!secure_params) { fatalError("Missing secure_params", "sendSecureCommand"); } if (!unsecure_params) { unsecure_params = new Object(); } var _local2 = ""; var _local1 = 0; while (_local1 < 16) { _local2 = _local2 + compression_radix.charAt(Math.floor(Math.random() * compression_radix.length)); _local1++; } if (debug && (!fake_session)) { secure_params.session_id = ""; } else { secure_params.session_id = session_id; } secure_params.as_version = 2; secure_params.user_email = user_email; secure_params.publisher_id = publisher_id; secure_params.seed = _local2; secure_params.command_id = command; var _local8 = com.newgrounds.encoders.JSON.encode(secure_params); var _local9 = com.newgrounds.encoders.MD5.calculate(_local2); var _local6 = com.newgrounds.encoders.RC4.encrypt(_local8, encryption_key); var _local7 = _local9 + _local6; unsecure_params.secure = compressHex(_local7); sendCommand("securePacket", unsecure_params, false, files); } static function sendCommand(command, params, open_browser, files) { if ((!connected) and (command != "connectMovie")) { var _local12 = (("API." + command) + "() - API.connectMovie() must be called before this command can be called") + newline; fatalError(_local12, "connectMovie"); } if (open_browser) { var _local2 = new Object(); } else { var _local2 = new LoadVars(); } _local2.command_id = command; _local2.tracker_id = movie_id; if (debug) { _local2.debug = debug; } if (params) { for (var _local9 in params) { _local2[_local9] = params[_local9]; } } if (files) { for (var _local9 in files) { _local2[_local9] = files[_local9]; } } if (open_browser) { var _local7 = (GATEWAY_URL + "?seed=") + Math.random(); for (var _local9 in _local2) { _local7 = _local7 + ((("&" + escape(_local9)) + "=") + escape(_local2[_local9])); } getURL (_local7, "_blank"); _local2.removeMovieClip(); } else { var _local10 = new LoadVars(); _local10.remember_command_id = _local2.command_id; _local10.onData = function (data) { com.newgrounds.API.echo(("INPUT: \r" + data) + newline); if (data) { var _local2 = com.newgrounds.encoders.JSON.decode(data); } else { var _local2 = {success:false}; } if (!_local2.success) { if ((!_local2.error_code) && (!_local2.error_msg)) { _local2.error_code = "CONNECTION_FAILED"; _local2.error_msg = "Could not contact the API Gateway"; _local2.command_id = this.remember_command_id; } var _local4 = new com.newgrounds.APIError(_local2.error_code, _local2.error_msg); com.newgrounds.API.sendError(_local2, _local4); } else { com.newgrounds.API.doEvent(_local2); } }; var _local6 = new Array(); for (var _local8 in _local2) { _local6.push((_local8 + "=") + escape(_local2[_local8])); } echo((("POST " + GATEWAY_URL) + "?") + _local6.join("&")); _local2.sendAndLoad((GATEWAY_URL + "?seed=") + Math.random(), _local10, "POST"); last_command = _local2.command_id; } } static function renderAd(target) { if (ad_swf_url) { target.background = target.createEmptyMovieClip("background", 100); target.background.beginFill(0); target.background.moveTo(0, 0); target.background.lineTo(300, 0); target.background.lineTo(300, 250); target.background.lineTo(0, 250); target.background.lineTo(0, 0); target.background.endFill(); target.mask = target.createEmptyMovieClip("mask", 101); target.mask.beginFill(0); target.mask.moveTo(0, 0); target.mask.lineTo(300, 0); target.mask.lineTo(300, 250); target.mask.lineTo(0, 250); target.mask.lineTo(0, 0); target.mask.endFill(); target.clip = target.createEmptyMovieClip("clip", 102); target.clip.ad = target.clip.createEmptyMovieClip("ad", 100); target.clip.setMask(target.mask); loadMovie (ad_swf_url, target.clip.ad); callListener(com.newgrounds.APIEvent.AD_ATTACHED, true, null, target); } else { callListener(com.newgrounds.APIEvent.AD_ATTACHED, false, new com.newgrounds.APIError("FLASH_ADS_NOT_APPROVED", "Unable to render ad")); } } static function attachFlashAd(target) { System.security.allowDomain("http://server.cpmstar.com"); System.security.allowDomain("http://www.cpmstar.com"); System.security.allowDomain("https://server.cpmstar.com"); System.security.allowDomain("https://www.cpmstar.com"); System.security.allowInsecureDomain("http://server.cpmstar.com"); System.security.allowInsecureDomain("http://www.cpmstar.com"); System.security.allowInsecureDomain("https://server.cpmstar.com"); System.security.allowInsecureDomain("https://www.cpmstar.com"); if (checkAdFlood()) { ad_swf_url = null; } else if (checkAdCache()) { reportNewAsset(); var _local1 = new LoadVars(); _local1.onData = function (data) { if (data) { com.newgrounds.API.ad_swf_url = data; } else { com.newgrounds.API.ad_swf_url = null; } com.newgrounds.API.reportAssetLoaded(); com.newgrounds.API.renderAd(target); }; if (ad_url.indexOf("?") > -1) { _local1.load((ad_url + "&random=") + Math.random()); } else { _local1.load((ad_url + "?random=") + Math.random()); } if (!ad_warning) { ad_warning = true; sendMessage("You may get a security sandbox violation from this ad. This is nothing to worry about!"); } } else if (ad_swf_url) { renderAd(target); } } static function checkAdFlood() { if (!ad_url) { return(false); } var _local2 = new Date(); var _local1 = _local2.getTime(); if (_local1 >= ad_flood) { if ((_local1 - ad_flood) > 1000) { ad_flood = _local1 + 1000; } else { ad_flood = _local1; sendWarning("This movie is attempting to load multiple ads at too high of a frequency; you may have a bad preloader loop."); return(true); } } return(false); } static function checkAdCache() { if (!ad_url) { return(false); } var _local2 = new Date(); var _local1 = _local2.getTime(); if (_local1 >= ad_url_cache) { ad_url_cache = _local1 + 300000; return(true); } return(false); } static function sendMessage(m, r) { var _local1 = "[Newgrounds API] :: " + m; if (r) { return(_local1); } trace(_local1); } static function echo(m) { if (do_echo) { trace(m); } } static var do_echo = false; static var GATEWAY_URL = "http://www.ngads.com/gateway_v2.php"; static var AD_TERMS_URL = "http://www.newgrounds.com/wiki/flashads/terms/"; static var COMMANDS_WIKI_URL = "http://www.newgrounds.com/wiki/flashapi/commands/"; static var LOCAL_HOST = "localhost"; static var PREVIEW_HOSTS = new Array(LOCAL_HOST); static var ad_url_cache = 0; static var ad_flood = 0; static var ad_warning = false; static var save_file = null; static var publisher_id = 1; static var fake_session = false; static var medals = null; static var scoreboards = new Array(); static var save_groups = null; static var compression_radix = "/g8236klvBQ#&|;Zb*7CEA59%s`Oue1wziFp$rDVY@TKxUPWytSaGHJ>dmoMR^<0~4qNLhc(I+fjn)X"; static var errors = com.newgrounds.APIError.init_codes(); static var sharedObjects = new Object(); static var bridge = new com.newgrounds.Bridge(_root.NewgroundsAPI_SandboxID); static var preload = false; static var preload_items = 0; static var preload_items_loaded = 0; }
Symbol 48 MovieClip [__Packages.com.newgrounds.Bridge] Frame 0
class com.newgrounds.Bridge { var widget_id, receiver, transmitter; function Bridge (id) { widget_id = id; receiver = new LocalConnection(); transmitter = new LocalConnection(); receiver.receiveEvent = function (event, params) { com.newgrounds.API.callListener(event, params.success, params.data); }; receiver.connect("rec_" + widget_id); } function sendError(command, params) { if (widget_id) { transmitter.send(widget_id, "sendError", command, params); } } function sendEvent(event, params) { if (widget_id) { transmitter.send(widget_id, "sendEvent", event, params); } } function sendCommand(command, params) { if (widget_id) { transmitter.send(widget_id, "sendCommand", command, params); } } }
Symbol 49 MovieClip [__Packages.com.newgrounds.SaveFile] Frame 0
class com.newgrounds.SaveFile { static var file_path; var _group, _filename, _file_id, _contents, _thumbnail, _thumbnail_url, raw, img, _file_url, _description, scanner; function SaveFile (_group) { this._group = _group; _filename = null; _file_id = null; _contents = null; _thumbnail = null; _thumbnail_url = null; raw = null; img = null; _draft = false; _keys = new Array(); _ratings = new Array(); _file_url = null; com.newgrounds.API.addEventListener(com.newgrounds.APIEvent.FILE_PRIVS_LOADED, checkPrivs, this); } static function setFilePath(path) { file_path = path + "/"; } function get name() { return(_filename); } function set name(s) { _filename = s; //return(name); } function get id() { return(_file_id); } function get description() { return(_description); } function set description(s) { _description = s; //return(description); } function get contents() { return(_contents); } function set contents(o) { _contents = o; //return(contents); } function get thumbnailUrl() { return(_thumbnail_url); } function set thumbnailUrl(s) { _thumbnail_url = s; //return(thumbnailUrl); } function get fileUrl() { return(_file_url); } function set fileUrl(s) { _file_url = s; //return(fileUrl); } function get draft() { return(_draft); } function set draft(d) { _draft = d; //return(draft); } function get group() { return(_group); } function get groupId() { return(_group.getID()); } function get groupName() { return(_group.getName()); } function get groupType() { return(_group.getType()); } function get locked() { return(_locked); } function get shared() { return(_isShared()); } function get isPrivate() { return(_isPrivate()); } function get isPublic() { return(_isPublic()); } function get approved() { return(_isApproved()); } function get keys() { return(_keys); } function get ratings() { return(_ratings); } function getID() { return(_file_id); } function exists() { return(!(_file_id === null)); } function getGroup() { return(_group); } function getName() { return(_filename); } function _isPrivate() { return(status == STATUS.PRIVATE); } function _isShared() { return(status > STATUS.PRIVATE); } function _isApproved() { return(status > STATUS.UNAPPROVED); } function _isPublic() { if (_isPrivate()) { return(false); } if (_group.isType("SYSTEM") or _group.isType("PRIVATE")) { return(false); } if (_group.isType("PUBLIC")) { return(true); } if (_isApproved()) { return(true); } return(false); } function isLocked() { return(_locked); } function getDescription() { return(_description); } function getShared() { return(_draft); } function getThumbnailImageScan() { return(img); } function getRawContents() { return(raw); } function getDuplicateID() { return(duplicate_id); } function getKeys() { return(_keys); } function getKey(key) { var _local3 = getGroup().getKey(key); var _local2 = 0; while (_local2 < _keys.length) { if (_keys[_local2].id == _local3.key_id) { return(_keys[_local2].value); } _local2++; } } function getRating(rating) { var _local2 = getGroup().getRating(rating); if (_ratings[_local2.rating_id]) { return(_ratings[_local2.rating_id]); } return(null); } function overwriteAllowed() { return(overwrite); } function getFileURL() { return(file_path + _file_url); } function overwriteExisting() { overwrite = true; } function setID(id, add_to_group) { _file_id = id; if (add_to_group) { getGroup().addFile(this); } } function setName(filename, locked) { _filename = filename; _locked = locked; } function setDescription(description) { _description = description; } function setDraft(draft) { _draft = draft; } function setContents(_contents) { this._contents = _contents; } function setThumbnail(thumb) { if (thumb) { _thumbnail = thumb; } else { _thumbnail = null; } } function setThumbnailURL(url) { _thumbnail_url = url; } function setFileURL(url) { _file_url = url; } function setPermissions(status, _locked) { this._locked = _locked; this.status = status; } function setKey(key, val) { var _local4 = _group.getKeyID(key); var _local2; if (!_local4) { onError(((("'" + key) + "' is not a valid key for the '") + _group.getKeyType(key, true)) + "' save _group", "setKey", "INVALID_VALUE", true); return(undefined); } if ((!_group.keyValueIsValid(key, val)) && (!(val === null))) { onError((("'" + val) + "' is not a valid ") + _group.getKeyType(key, true), "setKey", "INVALID_VALUE", true); return(undefined); } switch (_group.getKeyType(key, true)) { case "string" : if (val) { val = String(val); } else { val = undefined; } break; default : val = Number(val); } var _local5 = {id:_local4, value:val}; for (var _local7 in _keys) { _local2 = _keys[_local7]; if (_local2.id == _local4) { _keys[_local7] = _local5; return(undefined); } } _keys.push(_local5); } function setRating(rating, votes, score) { var _local2 = getGroup().getRating(rating); if (!votes) { votes = 0; } if (!score) { score = 0; } if (!_local2.is_float) { score = Math.round(Number(score)); } _ratings[_local2.rating_id] = {id:Number(_local2.rating_id), name:_local2.rating_name, votes:Number(votes), score:Number(score)}; return(_ratings[_local2.rating_id]); } function clearBuffer() { _contents = null; raw = null; img = null; scanner = null; overwrite = false; duplicate_id = null; } function onError(msg, funct, code) { busy = false; if (!code) { code = "SAVE_FILE_ERROR"; } if (!funct) { funct = "unknown_function"; } var _local3 = ("getSaveGroup('" + _group.getName()) + "')"; if (exists()) { funct = (((_local3 + ".getFile('") + getName()) + "').") + funct; } else { funct = (_local3 + ".getNewFile().") + funct; } var _local5 = new com.newgrounds.APIError(code, msg); com.newgrounds.API.sendError({command_id:funct}, _local5); } function onSaved(p) { busy = false; if (!exists()) { setID(p.save_id, true); } setName(p.filename); setFileURL(p.file_url); if (p.thumbnail) { _thumbnail_url = p.thumbnail; } } function onVoted(p) { trace("ONVOTED WAS CALLED"); return(setRating(p.rating_id, p.votes, p.score)); } function sendRating(rating, vote) { var _local6 = null; if (!com.newgrounds.API.hasUserSession()) { _local6 = new com.newgrounds.APIError("PERMISSION_DENIED", "You must be logged in to vote on save files"); } var _local2 = _group.getRating(rating); if (!_local2) { _local6 = new com.newgrounds.APIError("PERMISSION_DENIED", ((("'" + rating) + "' is not a valid rating for the '") + _group.getName()) + "' save group"); } if (_local2.voted === true) { _local6 = new com.newgrounds.APIError("PERMISSION_DENIED", "You have already voted on this item today"); } if ((vote < _local2.min_value) or (vote > _local2.max_value)) { _local6 = new com.newgrounds.APIError("PERMISSION_DENIED", (((("'" + rating) + "' votes must be between ") + _local2.min_value) + " and ") + _local2.max_value); } if (_local6) { com.newgrounds.API.callListener(com.newgrounds.APIEvent.VOTE_COMPLETE, false, {error:_local6, file:this}); return(undefined); } _local2.voted = true; com.newgrounds.API.rateSaveFile(this, _local2, vote); } function replace() { if (busy) { onError("Another file is currently being saved, please try again later", "replace"); return(undefined); } overwriteExisting(); save(); } function save() { if (busy) { onError("Another file is currently being saved, please try again later", "save", "UPLOAD_IN_PROGRESS"); return(undefined); } busy = true; if (isLocked()) { onError("This file is _locked and cannot be overwritten.", "save", "PERMISSION_DENIED"); return(undefined); } if (!_filename) { onError("Please provide a name for your file.", "save", "MISSING_PARAM"); return(undefined); } if (!_contents) { onError("The file is empty.", "save", "MISSING_PARAM"); return(undefined); } img = null; com.newgrounds.API.checkFilePrivs(this); } function checkPrivs(e) { if (e.data.file.id != id) { return(undefined); } if (e.success) { if (e.data.can_write) { can_write = e.data.can_write; if (e.data.duplicate_id) { duplicate_id = e.data.duplicate_id; } if (e.data.exists && (!overwriteAllowed())) { onError(("You already have a file named '" + getName()) + "'", "save", "CONFIRM_REQUEST"); } else { startFile(); } } else { onError("This file is _locked and cannot be overwritten", "save", "PERMISSION_DENIED"); } } else { onError("There was a problem looking up your file's details. The server may be down.", "save", "UNKNOWN_ERROR"); } } function startFile() { if (can_write) { if (_thumbnail) { scanner = new com.newgrounds.encoders.ImageScanner(_thumbnail); scanner.setCallback(this, "encodeFile"); scanner.startScan(100, 100, true); } else { encodeFile(); } } else { onError("You do not have permission to save this file.", "save", "PERMISSION_DENIED"); } } function encodeFile(img) { this.img = img; raw = com.newgrounds.encoders.SerialXML.encode(_contents).toString(); compressFile(); } function compressFile() { com.newgrounds.encoders.LZW2.compress(raw, function (s, p) { p.file.onCompressed(s); }, {file:this}); } function onCompressed(compressed) { raw = escape(compressed); writeFile(); } function getProgress() { } function writeFile() { getGroup().getQuery().clearCache(); com.newgrounds.API.saveFile(this); clearBuffer(); } function getContents() { if (_contents) { com.newgrounds.API.callListener(com.newgrounds.APIEvent.FILE_LOADED, true, {file:this}); return(undefined); } if (!getFileURL()) { var _local4 = new com.newgrounds.APIError("FILE_NOT_FOUND", "Attempted to load contents of an unsaved file."); com.newgrounds.API.callListener(com.newgrounds.APIEvent.FILE_LOADED, false, {file:this, error:_local4}); return(undefined); } var _local2 = new LoadVars(); _local2.target = this; var target = this; _local2.onData = function (encoded) { target.onLoaded(encoded); }; _local2.load(getFileURL()); } function onLoaded(encoded) { if (encoded == undefined) { var _local3 = new com.newgrounds.APIError("FILE_NOT_FOUND", "We could not find the contents for this file. It may have been deleted."); com.newgrounds.API.callListener(com.newgrounds.APIEvent.FILE_LOADED, false, {file:this, error:_local3}); return(undefined); } com.newgrounds.encoders.LZW.setXMLSafe(true); _contents = com.newgrounds.encoders.SerialXML.decode(com.newgrounds.encoders.LZW.decompress(encoded)); com.newgrounds.API.callListener(com.newgrounds.APIEvent.FILE_LOADED, true, {file:this}); } static var busy = false; var can_write = false; var _draft = false; var status = 0; var _locked = false; var overwrite = false; var duplicate_id = null; var _keys = null; var _ratings = null; static var STATUS = {PRIVATE:1, PUBLIC:2, UNAPPROVED:3, APPROVED:4}; }
Symbol 50 MovieClip [__Packages.com.newgrounds.SaveGroup] Frame 0
class com.newgrounds.SaveGroup { var group_name, group_id, group_type, query, ratings, keys, files; function SaveGroup (group_id, group_name, group_type) { this.group_name = group_name; this.group_id = group_id; this.group_type = group_type; query = new com.newgrounds.SaveGroupQuery(this); ratings = new Array(); keys = new Array(); files = new Array(); } function get id() { return(group_id); } function get name() { return(group_name); } function get type() { return(group_type); } function addFile(file) { var _local2 = 0; while (_local2 < files.length) { if (files[_local2].getID() == file.getID()) { files[_local2] = file; return(undefined); } _local2++; } files.push(file); } function getFile(file_id) { trace("getting the file " + file_id); var _local2 = 0; while (_local2 < files.length) { trace((((("Looking up " + file_id) + " :: ") + files[_local2].getID()) + " || ") + files[_local2].getName()); if (isNumeric(file_id) and (files[_local2].getID() == Number(file_id))) { return(files[_local2]); } if (files[_local2].getName() == file_id) { return(files[_local2]); } _local2++; } return(null); } function addRating(rating_id, rating_name, min_value, max_value, is_float) { var _local3 = {rating_id:rating_id, rating_name:rating_name, min_value:min_value, max_value:max_value, is_float:is_float}; if (!getRatingID(rating_name)) { ratings.push(_local3); } } function getRating(rating_id) { var _local2 = 0; while (_local2 < ratings.length) { if (isNumeric(rating_id) and (ratings[_local2].rating_id == rating_id)) { return(ratings[_local2]); } if (ratings[_local2].rating_name == rating_id) { return(ratings[_local2]); } _local2++; } return(null); } function getRatingID(rating_id) { var _local2 = getRating(rating_id); if (_local2) { return(_local2.rating_id); } return(null); } function getRatingName(rating_id) { var _local2 = getRating(rating_id); if (_local2) { return(_local2.rating_name); } return(null); } function addKey(key_id, key_name, key_type) { var _local2 = {key_id:key_id, key_name:key_name, key_type:key_type}; if (!getKey(key_name)) { keys.push(_local2); } } function getKey(key_id) { var _local2 = 0; while (_local2 < keys.length) { if (isNumeric(key_id) and (keys[_local2].key_id == key_id)) { return(keys[_local2]); } if (keys[_local2].key_name == key_id) { return(keys[_local2]); } _local2++; } return(null); } function getKeyType(key_name, as_string) { var _local2 = getKey(key_name); if (_local2) { return((as_string ? (KEY_TYPES[_local2.key_type]) : (_local2.key_type))); } return(null); } function getKeyID(key_id) { var _local2 = getKey(key_id); if (_local2) { return(_local2.key_id); } return(null); } function getKeyName(key_id) { var _local2 = getKey(key_id); if (_local2) { return(_local2.key_name); } return(null); } function keyValueIsValid(key, value) { var _local4; var _local7; if ((typeof(value) == "number") or (Number(value).toString() == String(value))) { value = Number(value); _local4 = ((Math.round(value) === value) ? "integer" : "float"); } else { _local4 = typeof(value); if (_local4 == "string") { var _local6 = "01234567890.-"; var _local5 = true; var _local2 = 0; while (_local2 < value.length) { if (_local6.indexOf(value.charAt(_local2)) < 0) { _local5 = false; break; } _local2++; } if (_local5) { value = Number(value); _local4 = "float"; } } } switch (getKeyType(key, true)) { case "integer" : _local7 = (_local4 == "integer") or (_local4 == "boolean"); break; case "float" : _local7 = ((_local4 == "float") or (_local4 == "integer")) or (_local4 == "boolean"); break; case "string" : _local7 = (((_local4 == "string") or (_local4 == "float")) or (_local4 == "integer")) or (_local4 == "boolean"); break; case "boolean" : _local7 = (((_local4 == "boolean") or (value == 1)) or (value == 0)) or (value == ""); break; default : _local7 = false; } return(_local7); } function isType(type) { return(group_type == TYPES[type.toUpperCase()]); } function getID() { return(group_id); } function getName() { return(group_name); } function getType() { return(group_type); } function isSystem() { return(undefined); } function getQuery(as_object) { if (as_object) { return(query.toObject()); } return(query); } function newQuery() { query.reset(); return(query); } function clearQuery() { query.reset(); } function newFile() { var _local2 = new com.newgrounds.SaveFile(this); return(_local2); } static function isNumeric(value) { return((typeof(value) == "number") or (Number(value).toString() == String(value))); } static var KEY_TYPES = [null, "float", "integer", "string", "boolean"]; static var TYPES = {SYSTEM:0, PRIVATE:1, PUBLIC:2, MODERATED:3}; }
Symbol 52 MovieClip [__Packages.com.newgrounds.SaveGroupQuery] Frame 0
class com.newgrounds.SaveGroupQuery { var _group, _num_results, _pages, _page, _randomize_results, file_conditions, key_conditions, rating_conditions, sort_conditions, lookup_keys, lookup_ratings, _group_by; function SaveGroupQuery (_group) { this._group = _group; reset(); } function get group() { return(_group); } function get groupId() { return(_group.getID()); } function get resultsPerPage() { return(_num_results); } function set resultsPerPage(n) { _num_results = n; //return(resultsPerPage); } function get pages() { return(_pages); } function get page() { return(_page); } function set page(n) { _page = n; //return(page); } function get randomize() { return(_randomize_results); } function set randomize(b) { _randomize_results = b; //return(randomize); } function get results() { return(_results); } function clearCache() { _results = []; } function reset() { file_conditions = new Array(); key_conditions = new Array(); rating_conditions = new Array(); sort_conditions = new Array(); lookup_keys = new Object(); lookup_ratings = new Object(); _num_results = 20; _page = 1; _randomize_results = false; _group_by = new Array(); clearCache(); } function getGroup() { return(_group); } function getGroupID() { return(_group.getID()); } function isRandomized() { return(_randomize_results); } function toObject() { var _local2; var _local11 = {page:_page, num_results:_num_results}; if (_randomize_results) { _local11.randomize = 1; } if (!com.newgrounds.ValidationTools.isEmpty(file_conditions)) { var _local12 = []; _local2 = 0; while (_local2 < file_conditions.length) { var _local6 = file_conditions[_local2]; _local12.push({field:file_fields[_local6.field.toUpperCase()].id, operator:_local6.operator, value:_local6.value}); _local2++; } _local11.file_conditions = _local12; } if (!com.newgrounds.ValidationTools.isEmpty(key_conditions)) { _local11.key_conditions = key_conditions; } if (!com.newgrounds.ValidationTools.isEmpty(rating_conditions)) { _local11.rating_conditions = rating_conditions; } if (!com.newgrounds.ValidationTools.isEmpty(sort_conditions)) { var _local14 = []; _local2 = 0; while (_local2 < sort_conditions.length) { var _local3 = sort_conditions[_local2]; if (_local3.table == TABLE_FILES) { var _local8 = file_fields[_local3.field.toUpperCase()].id; } else { var _local8 = _local3.field; } var _local5 = {field:_local8, table:_local3.table}; if (_local3.desc) { _local5.desc = 1; } if (_local3.extra) { _local5.extra = _local3.extra; } _local14.push(_local5); _local2++; } _local11.sort_conditions = _local14; } if (!com.newgrounds.ValidationTools.isEmpty(lookup_keys)) { var _local15 = []; for (_local2 in lookup_keys) { _local15.push(_local2); } _local11.lookup_keys = _local15; } if (!com.newgrounds.ValidationTools.isEmpty(lookup_ratings)) { var _local13 = []; for (_local2 in lookup_ratings) { _local13.push(_local2); } _local11.lookup_ratings = _local13; } if (!com.newgrounds.ValidationTools.isEmpty(_group_by)) { var _local16 = []; _local2 = 0; while (_local2 < _group_by.length) { var _local4 = _group_by[_local2]; if (_local4.table == TABLE_FILES) { var _local8 = file_fields[_local4.field.toUpperCase()].id; } else { var _local8 = _local4.field; } _local16.push({field:_local8, table:_local4.table}); _local2++; } _local11.group_by = _local16; } return(_local11); } function toString() { var _local9; var _local2; var _local11 = []; _local9 = "Lookup:\r"; var _local14 = []; for (var _local6 in file_fields) { _local14.push(" " + _local6); _local2 = true; } _local9 = _local9 + _local14.join(newline); _local11.push(_local9); _local9 = ""; _local2 = false; var _local16 = []; for (var _local6 in lookup_keys) { _local16.push((" KEY '" + _group.getKeyName(_local6)) + "'"); _local2 = true; } if (_local2) { _local9 = _local9 + _local16.join(newline); _local11.push(_local9); } _local9 = ""; _local2 = false; var _local15 = []; for (var _local6 in lookup_ratings) { _local15.push((" RATING '" + _group.getRatingName(_local6)) + "'"); _local2 = true; } if (_local2) { _local9 = _local9 + _local15.join(newline); _local11.push(_local9); } _local9 = "Where:\r"; _local2 = false; var _local8 = []; var _local6 = 0; while (_local6 < file_conditions.length) { var _local7 = file_conditions[_local6]; var _local10 = ((((" " + _local7.field) + " ") + _local7.operator) + " ") + _local7.value; _local8.push(_local10); _local2 = true; _local6++; } _local6 = 0; while (_local6 < key_conditions.length) { var _local7 = key_conditions[_local6]; var _local10 = ((((" KEY '" + _group.getKeyName(_local7.key_id)) + "' ") + _local7.operator) + " ") + _local7.value; _local8.push(_local10); _local2 = true; _local6++; } _local6 = 0; while (_local6 < rating_conditions.length) { var _local7 = rating_conditions[_local6]; var _local10 = ((((" RATING '" + _group.getRatingName(_local7.rating_id)) + "' ") + _local7.operator) + " ") + _local7.value; _local8.push(_local10); _local2 = true; _local6++; } if (_local2) { _local9 = _local9 + _local8.join(newline); _local11.push(_local9); } _local9 = "Group By:\r"; _local2 = false; var _local13 = []; _local6 = 0; while (_local6 < _group_by.length) { var _local4 = _group_by[_local6]; var _local5; if (_local4.table == TABLE_KEYS) { _local5 = (" KEY '" + _group.getKeyName(_local4.field)) + "'"; } else if (_local4.table == TABLE_RATINGS) { _local5 = (" RATING '" + _group.getRatingName(_local4.field)) + "'"; } else { _local5 = " " + _local4.field; } _local13.push(_local5); _local2 = true; _local6++; } if (_local2) { _local9 = _local9 + _local13.join(newline); _local11.push(_local9); } _local9 = "Order By:\r"; _local2 = false; var _local12 = []; if (isRandomized()) { _local12.push(" RANDOM"); _local2 = true; } _local6 = 0; while (_local6 < sort_conditions.length) { var _local3 = sort_conditions[_local6]; if (_local3.table == TABLE_KEYS) { var _local5 = (" KEY '" + _group.getKeyName(_local3.field)) + "'"; } else if (_local3.table == TABLE_RATINGS) { var _local5 = ((" RATING '" + _group.getRatingName(_local3.field)) + "' ") + ((_local3.extra == "votes") ? "VOTES" : "SCORE"); } else { var _local5 = " " + _local3.field; } var _local5 = _local5 + (_local3.desc ? " (DESCENDING)" : ""); _local12.push(_local5); _local2 = true; _local6++; } if (_local2) { _local9 = _local9 + _local12.join(newline); _local11.push(_local9); } _local11.push("Page:\r " + _page); _local11.push("Results Per Page:\r " + _num_results); return(_local11.join(newline)); } function setResultsPerPage(r) { _num_results = r; clearCache(); } function setPage(p) { _page = p; clearCache(); } function setRandomize(bool) { _randomize_results = true; } function includeKey(key) { if (!_group.getKeyID(key)) { trace(((("[SaveGroupQuery Error] :: '" + key) + "' is not a valid key for the '") + _group.__get__name()) + "' group."); return(undefined); } lookup_keys[_group.getKeyID(key)] = 1; clearCache(); } function includeRating(rating) { if (!_group.getRatingID(rating)) { trace(((("[SaveGroupQuery Error] :: '" + rating) + "' is not a valid rating for the '") + _group.__get__name()) + "' group."); return(undefined); } lookup_ratings[_group.getRatingID(rating)] = 1; clearCache(); } function groupBy(field) { addGroupItem(TABLE_FILES, field); } function groupByKey(key) { if (!_group.getKeyID(key)) { error(((("'" + key) + "' is not a valid key for the '") + _group.getName()) + "' _group"); return(undefined); } addGroupItem(TABLE_KEYS, _group.getKeyID(key)); } function groupByRating(rating) { if (!_group.getRatingID(rating)) { error(((("'" + rating) + "' is not a valid rating for the '") + _group.getName()) + "' _group"); return(undefined); } addGroupItem(TABLE_RATINGS, _group.getRatingID(rating)); } function addGroupItem(table, field) { _group_by.push({table:table, field:field}); clearCache(); } function excludeKey(key) { delete lookup_keys[_group.getKeyID(key)]; clearCache(); } function excludeRating(rating) { delete lookup_ratings[_group.getRatingID(rating)]; clearCache(); } function addCondition(field, operator, value) { if (((field == "FILE_STATUS") && (typeof(value) == "string")) && (!(com.newgrounds.SaveFile.STATUS[value.toUpperCase()] === undefined))) { value = com.newgrounds.SaveFile.STATUS[value.toUpperCase()]; } if (operator == "==") { operator = "="; } if ((!validateOperator(operator)) or (!validateValue(field, value))) { return(undefined); } file_conditions.push({field:field, operator:operator, value:value}); clearCache(); } function addKeyCondition(key, operator, value) { if (!_group.getKeyID(key)) { error(((("'" + key) + "' is not a valid key for the '") + _group.getName()) + "' save _group"); } else if ((!validateOperator(operator)) or (!validateKeyValue(key, value))) { return(undefined); } key_conditions.push({key_id:_group.getKeyID(key), operator:operator, value:value}); clearCache(); } function addRatingCondition(rating, operator, value, column) { if (!column) { column = "SCORE"; } if (!_group.getRatingID(rating)) { error(((("'" + rating) + "' is not a valid rating for the '") + _group.getName()) + "' save _group"); } else { if (!validateOperator(operator)) { return(undefined); } if (!com.newgrounds.ValidationTools.isNumber(value)) { error(("Expected numeric value for rating '" + rating) + "'"); return(undefined); } } if (!rating_columns[column]) { var _local2 = []; for (var _local3 in rating_columns) { _local2.push(_local3); } error((("Invalid rating column '" + column) + "'. Valid columns are ") + _local2.join(", ")); return(undefined); } rating_conditions.push({rating_id:_group.getRatingID(rating), operator:operator, value:value, column:rating_columns[column]}); clearCache(); } function sortOn(field, order) { if (!file_fields[field]) { var _local2 = []; for (var _local3 in file_fields) { _local2.push(_local3); } error((("'" + field) + "' is not a valid sort field. Valid fields are: ") + _local2.join(", ")); return(undefined); } addSortCondition(TABLE_FILES, field, order); } function sortOnKey(key, order) { if (!_group.getKeyID(key)) { error(((("'" + key) + "' is not a valid key for the '") + _group.getName()) + "' _group"); return(undefined); } addSortCondition(TABLE_KEYS, _group.getKeyID(key), order); } function sortOnRating(rating, order, column) { if (!_group.getRatingID(rating)) { error(((("'" + rating) + "' is not a valid rating for the '") + _group.getName()) + "' _group"); return(undefined); } if (!column) { column = "score"; } addSortCondition(TABLE_RATINGS, _group.getRatingID(rating), order, column); } function sortOnRatingScore(rating, order) { sortOnRating(rating, order, "score"); } function sortOnRatingVotes(rating, order) { sortOnRating(rating, order, "votes"); } function addSortCondition(table, field, order, extra) { var _local7; if (((!order) or (order == "")) or (order.toUpperCase() == "ASC")) { _local7 = false; } else if (order.toUpperCase() == "DESC") { _local7 = true; } else { error(("'" + order) + "' is not a valid sort order!"); return(undefined); } var _local3 = {table:table, field:field, desc:_local7}; if (extra) { _local3.extra = extra; } sort_conditions.push(_local3); clearCache(); } function onExecuted(results) { _results = []; var _local6 = 0; while (_local6 < results.length) { var _local2 = results[_local6]; var _local3 = new com.newgrounds.SaveFile(_group); _local3.setName(_local2.filename); _local3.setID(_local2.save_id); _local3.setDescription(_local2.description); _local3.setThumbnailURL(_local2.thumb); _local3.setFileURL(_local2.file); _local3.setPermissions(_local2.status, _local2.locked); var _local5 = 0; while (_local5 < _local2.keys.length) { _local3.setKey(_local2.keys[_local5].id, _local2.keys[_local5].value); _local5++; } var _local4 = 0; while (_local4 < _local2.ratings.length) { _local3.setRating(_local2.ratings[_local4].id, _local2.ratings[_local4].votes, _local2.ratings[_local4].score); _local4++; } getGroup().addFile(_local3); _results.push(_local3); _local6++; } callEventDispatcher(); } function hasResults() { return(_results && (_results.length > 0)); } function callEventDispatcher() { com.newgrounds.API.callListener(com.newgrounds.APIEvent.QUERY_COMPLETE, true, {query:this}); } function execute() { if (hasResults() && (!isRandomized())) { callEventDispatcher(); return(undefined); } com.newgrounds.API.lookupSaveFiles(_group); } function processResults(files) { return(null); } function validateKeyValue(key, value) { var _local3 = _group.getKeyType(key); if (_local3) { var _local2 = com.newgrounds.SaveGroup.KEY_TYPES[_local3]; if ((_local2 == "float") and com.newgrounds.ValidationTools.isFloat(value)) { return(true); } if ((_local2 == "integer") and com.newgrounds.ValidationTools.isInteger(value)) { return(true); } if ((_local2 == "string") and com.newgrounds.ValidationTools.isString(value)) { return(true); } error(((("Expected type " + _local2) + " for key '") + key) + "'"); } return(false); } function validateValue(field, value) { if (file_fields[field]) { if ((file_fields[field].type == "integer") and com.newgrounds.ValidationTools.isInteger(value)) { return(true); } if ((file_fields[field].type == "float") and com.newgrounds.ValidationTools.isFloat(value)) { return(true); } if ((file_fields[field].type == "string") and com.newgrounds.ValidationTools.isString(value)) { return(true); } error(((("Expecting " + file_fields[field].type) + " value on '") + field) + "' condition"); } else { var _local2 = []; for (var _local4 in file_fields) { _local2.push(_local4); } error((("'" + field) + "' is not a searchable field. Valid fields are: ") + _local2.join(", ")); } return(false); } function validateOperator(operator) { var _local2 = 0; while (_local2 < valid_operators.length) { if (operator == valid_operators[_local2]) { return(true); } _local2++; } error((("'" + operator) + "' is not a valid lookup operation. Valid operations are: ") + valid_operators.join(", ")); return(false); } function error(msg) { trace("[QUERY ERROR] :: " + msg); } static var TABLE_FILES = 1; static var TABLE_KEYS = 2; static var TABLE_RATINGS = 3; var _results = []; static var file_fields = {AUTHOR_ID:{id:1, field:"user_id", type:"integer"}, AUTHOR_NAME:{id:2, field:"user_name", type:"string"}, FILE_NAME:{id:3, field:"file_name", type:"string"}, CREATED_ON:{id:4, field:"created", type:"string"}, UPDATED_ON:{id:5, field:"last_update", type:"string"}, TOTAL_VIEWS:{id:6, field:"views", type:"integer"}, FILE_STATUS:{id:7, field:"status", type:"integer"}}; static var rating_columns = {TOTAL_VOTES:"votes", SCORE:"score"}; static var valid_operators = ["=", "<", ">", "!=", "<>", "<=", ">="]; }
Symbol 54 MovieClip [__Packages.com.newgrounds.encoders.ImageScanner] Frame 0
class com.newgrounds.encoders.ImageScanner { var image_source, source_width, source_height, sourceBitmap, callback_target, callback_function, hash, cube, basen, xpos, ypos, pixels, busy, canvas_width, canvas_height, resizedBitmap, copyBitmap, output, draw_interval, callback_interval; function ImageScanner (the_source) { if (the_source) { image_source = the_source; } else { image_source = _root; } reset(); if (typeof(image_source) == "movieclip") { if (image_source == _root) { source_width = Stage.width; source_height = Stage.height; } else { source_width = Math.floor(image_source._width); source_height = Math.floor(image_source._height); } sourceBitmap = new flash.display.BitmapData(source_width, source_height, false, 4294967295); sourceBitmap.draw(_root); } else if (image_source.width) { source_width = image_source.width; source_height = image_source.height; sourceBitmap = image_source; } else { error("You can only use BitMaptData and MovieClip objects to create images"); } } function setCallback(target, funct) { if (target && (funct)) { callback_target = target; callback_function = funct; } } function reset() { callback_target = null; callback_function = null; debug.bad_pixels = 0; hash = "0123456789aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ<>?:;-_=+()!&"; var _local3 = Math.pow(hash.length, 2); trace("MAX COLORS: " + _local3); var _local2 = Math.floor(Math.pow(_local3, 0.333333333333333)) - 1; var _local4 = Math.pow(_local2, 3); cube = _local2; basen = new com.newgrounds.encoders.BaseN(hash); xpos = 0; ypos = 0; pixels = 0; busy = false; } function startScan(w, h, s) { if (w) { image_width = w; } if (h) { image_height = h; } if (s != undefined) { crop = s; } var _local7 = _root.getNextHighestDepth(); var _local6 = _root.createEmptyMovieClip("API_image_container_" + _local7, _local7); var _local5 = _local6.createEmptyMovieClip("canvas", 100); _local5.attachBitmap(sourceBitmap, 100); if (crop) { if ((image_width / source_width) > (image_height / source_height)) { canvas_width = image_width; canvas_height = Math.ceil(source_height * (image_width / source_width)); } else { canvas_height = image_height; canvas_width = Math.ceil(source_width * (image_height / source_height)); } } else { canvas_width = image_width; canvas_height = image_height; } _local5._x = Math.round((image_width - canvas_width) / 2); _local5._width = canvas_width; _local5._height = canvas_height; resizedBitmap = new flash.display.BitmapData(image_width, image_height, false, 4294967295); resizedBitmap.draw(_local6); _local6.removeMovieClip(); copyBitmap = new flash.display.BitmapData(image_width, image_height, false, 4294967295); var _local3 = "" + image_width; while (_local3.length < 3) { _local3 = "0" + _local3; } var _local4 = "" + image_height; while (_local4.length < 3) { _local4 = "0" + _local4; } output = _local3 + _local4; draw_interval = setInterval(this, "drawChunk", 10); busy = false; return(resizedBitmap); } function getBitmapData() { return(copyBitmap); } function getBytesTotal() { return((image_width * image_height) * 2); } function getBytesScanned() { return(pixels * 2); } function getProgress() { return(Math.round((getBytesScanned() / getBytesTotal()) * 100)); } function drawChunk() { if (!busy) { busy = true; var _local2 = 0; while (_local2 < pixels_per_chunk) { if (!nextPixel()) { clearInterval(draw_interval); callback_interval = setInterval(this, "doCallback", 25); busy = true; break; } _local2++; } busy = false; } } function doCallback() { busy = false; clearInterval(callback_interval); if (callback_target and callback_function) { callback_target[callback_function](output); } else { onScanComplete(output); } } function onScanComplete(packet) { sendMessage(("packet size: " + output.length) + " bytes", "onScanComplete"); } function nextPixel() { var _local15 = xpos; var _local14 = ypos; var _local7 = resizedBitmap.getPixel(_local15, _local14); var _local17 = (_local7 >> 16) & 255; var _local20 = (_local7 >> 8) & 255; var _local16 = (_local7 >> 0) & 255; var _local11 = Math.round(((_local17 + 1) / 256) * cube); var _local10 = Math.round(((_local20 + 1) / 256) * cube); var _local13 = Math.round(((_local16 + 1) / 256) * cube); var _local12 = (((_local11 * (cube + 1)) * (cube + 1)) + (_local10 * (cube + 1))) + _local13; var _local6 = basen.encode(_local12, 2); output = output + _local6; if (_local6.length != 2) { trace("bad pixel " + _local6); } var _local5 = basen.decode(_local6); var _local18 = _local5; var _local8 = _local5 % (cube + 1); _local5 = (_local5 - _local8) / (cube + 1); var _local9 = _local5 % (cube + 1); var _local19 = (_local5 - _local9) / (cube + 1); if (((_local13 != _local8) and (_local10 != _local9)) and (_local11 != _local10)) { debug.bad_pixels++; trace((((((("BAD PIXEL " + debug.bad_pixels) + ") ") + _local12) + " != ") + _local18) + " ") + _local6); trace(basen.debug.lastencode); } var _local2 = Math.round((_local19 / cube) * 255).toString(16); var _local4 = Math.round((_local9 / cube) * 255).toString(16); var _local3 = Math.round((_local8 / cube) * 255).toString(16); while (_local2.length < 2) { _local2 = "0" + _local2; } while (_local4.length < 2) { _local4 = "0" + _local4; } while (_local3.length < 2) { _local3 = "0" + _local3; } copyBitmap.setPixel(_local15, _local14, Number((("0x" + _local2) + _local4) + _local3)); pixels++; if (pixels >= (image_width * image_height)) { return(false); } xpos++; if (xpos >= image_width) { xpos = 0; ypos++; } return(true); } function error(e, f) { sendMessage(e, f, "ERROR"); } function sendMessage(msg, func, type) { var _local1 = "ImageScanner"; if (func) { _local1 = _local1 + (("." + func) + "()"); } if (type) { _local1 = (type + " in ") + _local1; } _local1 = _local1 + (" :: " + msg); trace(_local1); } var image_width = 100; var image_height = 100; var crop = true; var pixels_per_chunk = 500; var debug = new Object(); }
Symbol 53 MovieClip [__Packages.com.newgrounds.encoders.BaseN] Frame 0
class com.newgrounds.encoders.BaseN { var ceiling, hashIndex, bitSize, hashVal, i; function BaseN (hash) { ceiling = 100000000000000; if (hash) { hashIndex = hash; } else { hashIndex = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ`~@#$%^&*()+|;/"; } bitSize = hashIndex.length; hashVal = new Object(); i = 0; while (i < bitSize) { hashVal[hashIndex.charAt(i)] = i; i++; } } function verify(s) { if (hashVal[s] != undefined) { return(true); } return(false); } function encode(n, minchars) { debug.lastencode = ""; if (typeof(i) != "string") { n = n.toString(); } if (n.charAt(0) == "-") { var _local3 = "-"; n = n.substring(1); } else { var _local3 = ""; } if (String(n).indexOf(".") > -1) { var _local4 = String(n).split(".", 2); return(((_local3 + baseNEncoder(_local4[0], minchars)) + ".") + baseNEncoder(_local4[1])); } debug.lastencode = debug.lastencode + "\tNo decimal\r"; return(_local3 + baseNEncoder(n, minchars)); } function decode(s) { var _local4 = 1; if (s.charAt(0) == "-") { _local4 = -1; s = s.substring(1, s.length); } var _local3 = s.indexOf("."); if (_local3 > -1) { var _local5 = Math.pow(10, baseNDecoder(s.substring(_local3 + 1, s.length))); return((baseNDecoder(s.substring(0, _local3)) / _local5) * _local4); } return(baseNDecoder(s) * _local4); } function baseNEncoder(n, minchars) { if (!minchars) { minchars = 1; } var _local4 = ""; while (n != 0) { n = Math.round(n); var _local3 = n % bitSize; if (Math.round(_local3) != _local3) { trace((((((((("BaseN failed on " + n) + "%") + bitSize) + " = ") + _local3) + " ") + int(n)) + " ") + int(bitSize)); } _local4 = hashIndex.charAt(_local3) + _local4; debug.lastencode = debug.lastencode + (((((((("\t-> n:" + n) + " % bitSize:") + bitSize) + " = ") + _local3) + ", final char=") + _local4) + newline); n = n - _local3; n = n / bitSize; } if (minchars) { while (_local4.length < minchars) { _local4 = hashIndex.charAt(0) + _local4; } } return(_local4); } function baseNDecoder(s) { var _local2 = 0; var _local6 = 0; i = 0; while (i < s.length) { var _local3 = s.charAt((s.length - i) - 1); if (_local3 == hashIndex.charAt(0)) { var _local5 = 0; } else { var _local5 = hashVal[_local3] * Math.pow(bitSize, i); } _local2 = _local2 + _local5; if (_local2 >= ceiling) { _local6 = _local6 + ((_local2 - (_local2 % ceiling)) / ceiling); _local2 = _local2 % ceiling; } i++; } if (_local6 > 0) { _local2 = "" + _local2; while (_local2.length < (ceiling.toString().length - 1)) { _local2 = "0" + _local2; } _local2 = ("" + _local6) + _local2; } return(_local2); } var debug = new Object(); }
Symbol 62 MovieClip [__Packages.com.newgrounds.APIEventDispatcher] Frame 0
class com.newgrounds.APIEventDispatcher { function APIEventDispatcher () { } function addEventListener(event, callback, target) { if (!target) { throw "Attempted to create a listener without providing a target object."; } if (!listeners[event]) { listeners[event] = []; } else { removeEventListener(event, target); } listeners[event].push({target:target, callback:callback}); } function removeEventListener(event, target) { if (!target) { throw "Attempted to remove a listener without providing a target object."; } if ((!listeners[event]) || (listeners[event].length < 1)) { return(undefined); } var _local4 = []; var _local2 = 0; while (_local2 < listeners[event].length) { if (listeners[event][_local2].target != target) { _local4.push(listeners[event][_local2]); } _local2++; } listeners[event] = _local4; } function dispatchEvent(event) { if (!hasEventListener(event.__get__type())) { return(false); } collectGarbage(event.__get__type()); var _local2 = 0; while (_local2 < listeners[event.__get__type()].length) { var _local4 = listeners[event.__get__type()][_local2].callback; if (listeners[event.__get__type()][_local2].target) { var _local5 = listeners[event.__get__type()][_local2].target; _local4.call(_local5, event); } else { _local4(event); } _local2++; } return(true); } function hasEventListener(event) { return((listeners[event] != undefined) && (listeners[event].length > 0)); } function collectGarbage(event) { var _local5 = []; if (!hasEventListener) { return(undefined); } var _local2 = 0; while (_local2 < listeners[event].length) { var _local4 = listeners[event][_local2].target; if (_local4) { _local5.push(listeners[event][_local2]); } _local2++; } listeners[event] = _local5; } var listeners = {}; }
Symbol 45 MovieClip [__Packages.com.newgrounds.APIEvent] Frame 0
class com.newgrounds.APIEvent { var _type, _target, _success, data; function APIEvent (type, success, target, data) { _type = type; _target = target; _success = success; this.data = data; } function get target() { return(_target); } function get type() { return(_type); } function get success() { return(_success); } static var MOVIE_CONNECTED = "movieConnected"; static var ADS_APPROVED = "adsApproved"; static var AD_ATTACHED = "adAttached"; static var HOST_BLOCKED = "hostBlocked"; static var NEW_VERSION_AVAILABLE = "newVersionAvailable"; static var EVENT_LOGGED = "eventLogged"; static var SCORE_POSTED = "scorePosted"; static var SCORES_LOADED = "scoresLoaded"; static var UNLOCK_MEDAL = "unlockMedal"; static var MEDAL_UNLOCKED = "medalUnlocked"; static var MEDALS_LOADED = "medalsLoaded"; static var METADATA_LOADED = "metadataLoaded"; static var FILE_PRIVS_LOADED = "filePrivsLoaded"; static var FILE_SAVED = "fileSaved"; static var FILE_LOADED = "fileLoaded"; static var QUERY_COMPLETE = "queryComplete"; static var VOTE_COMPLETE = "voteComplete"; static var API_ERROR = "apiError"; static var UNCAUGHT_EVENT = "uncaughtEvent"; }
Symbol 59 MovieClip [__Packages.com.newgrounds.ScoreBoard] Frame 0
class com.newgrounds.ScoreBoard { var _name, _id, _scores; function ScoreBoard (id, name) { _name = name; _id = id; } function exists() { return(Number(_id) > 0); } function get id() { return(_id); } function get name() { return(_name); } function get period() { return(_period); } function get page() { return(_page); } function get num_results() { return(_num_results); } function get scores() { return(_scores); } function postScore(value, get_best) { com.newgrounds.API.postScore(_name, value, get_best); } function loadScores(period, page, num_results) { if (period) { _period = period; } if (page) { _page = page; } if (num_results) { _num_results = num_results; } _scores = []; com.newgrounds.API.loadScores(this); } function setScores(scores, period, page, num_results) { if (period) { _period = period; } if (page) { _page = page; } if (num_results) { _num_results = num_results; } _scores = []; var _local2 = 0; while (_local2 < scores.length) { var _local4 = ((_num_results * (_page - 1)) + 1) + _local2; _scores.push(new com.newgrounds.Score(this, _local4, scores[_local2].username, scores[_local2].value, scores[_local2].numeric_value)); _local2++; } } var _period = "Today"; var _num_results = 10; var _page = 1; }
Symbol 46 MovieClip [__Packages.com.newgrounds.APIError] Frame 0
class com.newgrounds.APIError { var message, name, alias; function APIError (error, msg) { if (Number(error).toString() == String(error)) { error = Number(error); } else if (error_codes[String(error)]) { error = error_codes[String(error)]; } else { error = 0; } code = error; message = msg; name = error_names[error]; alias = aliases[error]; } static function init_codes() { var _local2 = new Object(); var _local1 = 0; while (_local1 < aliases.length) { _local2[aliases[_local1]] = _local1; _local1++; } return(_local2); } static function init_names() { var _local5 = new Array(); var _local3 = 0; while (_local3 < aliases.length) { var _local2 = aliases[_local3].toLowerCase().split("_"); var _local1 = 0; while (_local1 < _local2.length) { _local2[_local1] = _local2[_local1].substr(0, 1).toUpperCase() + _local2[_local1].substr(1, _local2[_local1].length); for (var _local4 in always_caps) { if (_local2[_local1].toUpperCase() == always_caps[_local4]) { _local2[_local1] = _local2[_local1].toUpperCase(); } } _local1++; } _local5[_local3] = _local2.join(" "); _local3++; } return(_local5); } function isError() { return(true); } static var aliases = new Array("UNKNOWN_ERROR", "INVALID_API_ID", "MISSING_PARAM", "INVALID_STAT_ID", "INVALID_COMMAND_ID", "FLASH_ADS_NOT_APPROVED", "PERMISSION_DENIED", "IDENTIFICATION_REQUIRED", "INVALID_EMAIL_ADDRESS", "BANNED_USER", "SESSION_EXPIRED", "INVALID_SCORE", "INVALID_MEDAL", "INVALID_SAVE_GROUP", "FILE_NOT_FOUND", "SITE_ID_REQUIRED", "UPLOAD_IN_PROGRESS", "USER_CANCELLED", "CONFIRM_REQUEST", "ILLEGAL_REQUEST", "CONNECTION_FAILED", "QUERY_INCOMPLETE", "SAVE_FILE_ERROR", "INVALID_VALUE", "SERVER_ERROR"); static var always_caps = new Array("API", "URL", "ID"); static var error_codes = init_codes(); static var error_names = init_names(); var code = 0; }
Symbol 1 MovieClip [__Packages.com.newgrounds.components.ScoreTable] Frame 0
class com.newgrounds.components.ScoreTable { var board_name, board, period, period_select; function ScoreTable () { if (!board_name) { throw "[ERROR] :: Score Board components require the 'Board Name' parameter to be populated"; } var _local2 = com.newgrounds.API.getScoreBoard(board_name); if (_local2.exists()) { board = _local2; } else { trace(("[WARNING] :: Could not initialize the scoreboard for '" + board_name) + "'."); } period_select.period = period; com.newgrounds.API.addEventListener(com.newgrounds.APIEvent.SCORES_LOADED, scoresLoaded, this); } function loadScores(numresults, p) { if (numresults) { num_results = numresults; } if (p) { period = p; } var _local3 = 0; while (_local3 < num_results) { var _local2 = this["score_row_" + _local3]; _local2.gotoAndStop((((_local3 % 2) == 0) ? 1 : 2)); _local2.position = ""; _local2.username = ""; _local2.score = ""; _local3++; } board.loadScores(period, 1, num_results); } function scoresLoaded(event) { if (event.data.board.id != board.__get__id()) { return(undefined); } var _local2 = 0; while (_local2 < num_results) { var _local3 = this["score_row_" + _local2]; if (board.__get__scores()[_local2]) { _local3.position = board.__get__scores()[_local2].position + ":"; _local3.username = board.__get__scores()[_local2].username; _local3.score = board.__get__scores()[_local2].value; } else { _local3.position = ""; _local3.username = ""; _local3.score = ""; } _local2++; } } var num_results = 10; }
Symbol 51 MovieClip [__Packages.com.newgrounds.ValidationTools] Frame 0
class com.newgrounds.ValidationTools { function ValidationTools () { } static function isNumber(v) { if (typeof(v) == "number") { return(true); } if ((typeof(v) == "string") and (Number(v).toString() == v)) { return(true); } return(false); } static function isInteger(v) { if (isNumber(v)) { v = Number(v); return(Math.floor(v) == v); } return(false); } static function isFloat(v) { return(isNumber(v)); } static function isString(v) { if ((typeof(v) == "string") or (typeof(v) == "number")) { return(true); } return(false); } static function isEmpty(o) { for (var _local2 in o) { return(false); } return(true); } }
Symbol 55 MovieClip [__Packages.com.newgrounds.encoders.SerialXML] Frame 0
class com.newgrounds.encoders.SerialXML { function SerialXML () { } static function decode(xml) { if (!(xml instanceof XML)) { xml = new XML(xml); } var _local2 = populateObject(xml.firstChild, {}); return(_local2.DATA); } static function encode(obj) { var _local1 = new XML(); populateXML(_local1, obj, "DATA"); return(_local1); } static function populateObject(child, object) { var _local6 = child.nodeName; var _local5 = getValue(_local6, child.attributes.v); var _local4 = child.attributes.n; if (object instanceof Array) { _local4 = object.length; object.push(_local5); } else { object[_local4] = _local5; } if (child.hasChildNodes()) { var _local1 = 0; while (_local1 < child.childNodes.length) { populateObject(child.childNodes[_local1], object[_local4]); _local1++; } } return(object); } static function populateXML(child, obj, name) { if (obj === undefined) { return(undefined); } var _local5 = new XML(); var _local2; if (obj instanceof Array) { _local2 = _local5.createElement(getType(obj)); if (name) { _local2.attributes.n = name; } child.appendChild(_local2); var _local4 = 0; while (_local4 < obj.length) { populateXML(_local2, obj[_local4]); _local4++; } } else if (typeof(obj) == "object") { _local2 = _local5.createElement(getType(obj)); if (name) { _local2.attributes.n = name; } child.appendChild(_local2); for (var _local4 in obj) { populateXML(_local2, obj[_local4], _local4); } } else { _local2 = _local5.createElement(getType(obj)); if (name) { _local2.attributes.n = name; } if (getType(obj).length == 1) { _local2.attributes.v = obj; } child.appendChild(_local2); } } static function getValue(type, stringval) { switch (type.toUpperCase()) { case "O" : return(new Object()); case "A" : return(new Array()); case "N" : return(Number(stringval)); case "S" : return(String(stringval)); case "TRUE" : return(true); case "FALSE" : return(false); } return(null); } static function getType(obj) { switch (((obj instanceof Array) ? "array" : (typeof(obj)))) { case "array" : return("A"); case "object" : return("O"); case "string" : return("S"); case "number" : return("N"); case "boolean" : return(((obj === true) ? "TRUE" : "FALSE")); } return("NULL"); } }
Symbol 56 MovieClip [__Packages.com.newgrounds.encoders.LZW2] Frame 0
class com.newgrounds.encoders.LZW2 { static var comp_dict, pos, result, buffer, nbChar, splitStr, len, local, interval; function LZW2 () { } static function doCompressorConfig() { comp_dict = []; var _local1 = 0; while (_local1 < 256) { comp_dict[String.fromCharCode(_local1)] = _local1; _local1++; } comp_dict["<"] = 256; comp_dict[">"] = 257; comp_dict["&"] = 258; comp_dict["\""] = 259; comp_dict["'"] = 260; pos = 0; result = ""; buffer = ""; nbChar = 256 + skipnum; } static function compress(string, callback, callback_params) { doCompressorConfig(); if (busy) { trace("[LZW COMPRESSOR] :: Compression can not begin until previous compression or decompression is complete!"); return(undefined); } splitStr = string.split(""); string = ""; len = splitStr.length; local = {delay:30, callback:callback, callback_params:callback_params, compress_chunk:function () { com.newgrounds.encoders.LZW2.compress_chunk(); }, busy:false, complete:false}; interval = setInterval(local, "compress_chunk", 5); } static function getProgress() { return(Math.round((pos / len) * 100)); } static function compress_chunk() { if (local.delay > 0) { local.delay--; } else if (!local.busy) { local.busy = true; var _local1 = 0; while (_local1 < max_chunk_length) { encode_next(); if (local.complete) { break; } _local1++; } local.busy = false; } if (local.complete) { trace((((((((("LZW2 complete " + nbChar) + " ") + comp_dict.length) + " ") + len) + " ") + pos) + " ") + skipnum); clearInterval(interval); local.callback(result, local.callback_params); result = ""; buffer = ""; } } static function encode_next() { if (pos <= len) { var _local1 = splitStr[pos]; if (!(comp_dict[buffer + _local1] === undefined)) { buffer = buffer + _local1; } else { result = result + String.fromCharCode(comp_dict[buffer]); comp_dict[buffer + _local1] = nbChar; nbChar++; buffer = _local1; } pos++; } else { local.complete = true; return(undefined); } } static var comp_config = false; static var skipnum = 5; static var busy = false; static var max_chunk_length = 12000; }
Symbol 57 MovieClip [__Packages.com.newgrounds.encoders.LZW] Frame 0
class com.newgrounds.encoders.LZW { function LZW () { } static function setXMLSafe(x) { xmlsafe = x; } static function compress(str, escape_chars) { var _local2 = new Array(); var _local11 = (xmlsafe ? 5 : 0); var _local5 = 0; while (_local5 < 256) { _local2[String.fromCharCode(_local5)] = _local5; _local5++; } if (xmlsafe) { _local2["<"] = 256; _local2[">"] = 257; _local2["&"] = 258; _local2["\""] = 259; _local2["'"] = 260; } var _local7 = ""; var _local8 = str.split(""); var _local9 = _local8.length; var _local6 = 256 + _local11; var _local1 = ""; var _local4; _local5 = 0; while (_local5 <= _local9) { var _local3 = _local8[_local5]; if (!(_local2[_local1 + _local3] === undefined)) { _local1 = _local1 + _local3; } else { _local4 = String.fromCharCode(_local2[_local1]); if (escape_chars and (((_local2[_local1] < 33) or (_local2[_local1] > 126)) or (_local4 == "%"))) { _local4 = escape(_local4); } _local7 = _local7 + _local4; _local2[_local1 + _local3] = _local6; _local6++; _local1 = _local3; } _local5++; } return(_local7); } static function decompress(str) { var _local4 = new Array(); var _local10 = (xmlsafe ? 5 : 0); var _local6 = 0; while (_local6 < 256) { var _local9 = String.fromCharCode(_local6); _local4[_local6] = _local9; _local6++; } if (xmlsafe) { _local4[256] = "<"; _local4[257] = ">"; _local4[258] = "&"; _local4[259] = "\""; _local4[260] = "'"; } var _local11 = str; var _local13 = _local11.split(""); var _local12 = _local13.length; var _local7 = 256 + _local10; var _local1 = ""; var _local2 = ""; var _local8 = ""; _local6 = 0; while (_local6 < _local12) { var _local5 = _local11.charCodeAt(_local6); var _local3 = _local4[_local5]; if (_local1 == "") { _local1 = _local3; _local8 = _local8 + _local3; } else if (_local5 <= (255 + _local10)) { _local8 = _local8 + _local3; _local2 = _local1 + _local3; _local4[_local7] = _local2; _local7++; _local1 = _local3; } else { _local2 = _local4[_local5]; if (_local2 == undefined) { _local2 = _local1 + _local1.slice(0, 1); } _local8 = _local8 + _local2; _local4[_local7] = _local1 + _local2.slice(0, 1); _local7++; _local1 = _local2; } _local6++; } return(_local8); } static function compress_fp6(str) { var _local3 = new Array(); var _local10 = (xmlsafe ? 5 : 0); var _local4 = 0; while (_local4 < 256) { _local3[String(_local4)] = _local4; _local4++; } if (xmlsafe) { var _local14 = String(new String("<").charCodeAt(0)); var _local11 = String(new String(">").charCodeAt(0)); var _local13 = String(new String("&").charCodeAt(0)); var _local15 = String(new String("\"").charCodeAt(0)); var _local12 = String(new String("'").charCodeAt(0)); _local3[_local14] = 256; _local3[_local11] = 257; _local3[_local13] = 258; _local3[_local15] = 259; _local3[_local12] = 260; } var _local7 = ""; var _local16 = str; var _local8 = _local16.split(""); var _local9 = _local8.length; var _local6 = 256 + _local10; var _local1 = new Array(); _local4 = 0; while (_local4 <= _local9) { var _local2 = _local8[_local4]; if (_local1.length == 0) { var _local5 = String(_local2.charCodeAt(0)); } else { var _local5 = (_local1.join("-") + "-") + String(_local2.charCodeAt(0)); } if (!(_local3[_local5] === undefined)) { _local1.push(_local2.charCodeAt(0)); } else { _local7 = _local7 + String.fromCharCode(_local3[_local1.join("-")]); _local3[_local5] = _local6; _local6++; _local1 = new Array(); _local1.push(_local2.charCodeAt(0)); } _local4++; } return(_local7); } static var xmlsafe = false; }
Symbol 58 MovieClip [__Packages.com.newgrounds.Medal] Frame 0
class com.newgrounds.Medal { var _medal_id, _medal_name, _medal_value, _medal_difficulty; function Medal (id, name, value, difficulty, unlocked, _icon_url) { if ((((id == undefined) || (name == undefined)) || (value == undefined)) || (difficulty == undefined)) { com.newgrounds.API.fatalError("Medal instances require an id, name, value and difficulty"); } _medal_id = id; _medal_name = name; _medal_value = value; _medal_difficulty = difficulty; if (unlocked) { _medal_unlocked = true; } if (_icon_url) { this._icon_url = _icon_url; } } function get difficulty() { return(difficulty_names[_medal_difficulty]); } function get difficultyId() { return(_medal_difficulty); } function get icon_url() { return(_icon_url); } function get id() { return(_medal_id); } function get name() { return(_medal_name); } function get unlocked() { return(_medal_unlocked); } function get value() { return(_medal_value); } function isUnlocked() { return(_medal_unlocked); } function unlock() { if (!isUnlocked()) { com.newgrounds.API.unlockMedal(this); } } function setUnlocked(u) { _medal_unlocked = u; } function attachIcon(target, depth) { if (!depth) { depth = target.getNextHighestDepth(); } var _local3 = target.createEmptyMovieClip("Asset_Medal_Icon_" + getID(), depth); if (_icon_url) { _local3.loadMovie(_icon_url); } else { var _local4 = flash.display.BitmapData.loadBitmap("Asset_default_medal_icon_" + getDifficulty(), depth); _local3.attachBitmap(_local4, depth, true); } } function getID() { return(_medal_id); } function getName() { return(_medal_name); } function getValue() { return(_medal_value); } function getDifficulty(as_string) { if (as_string) { return(difficulty_names[_medal_difficulty]); } return(_medal_difficulty); } var _medal_unlocked = false; var _icon_loaded = false; var _icon_width = 50; var _icon_height = 50; var _icon_url = null; static var difficulty_names = new Array(null, "Easy", "Moderate", "Challenging", "Difficult", "Brutal"); }
Symbol 60 MovieClip [__Packages.com.newgrounds.encoders.RC4] Frame 0
class com.newgrounds.encoders.RC4 { function RC4 () { } static function encrypt(src, key) { var _local3 = strToChars(src); var _local1 = strToChars(key); var _local2 = calculate(_local3, _local1); return(charsToHex(_local2)); } static function encryptbin(src, key) { var _local3 = strToChars(src); var _local1 = strToChars(key); var _local2 = calculate(_local3, _local1); return(_local2); } static function decrypt(src, key) { var _local3 = hexToChars(src); var _local1 = strToChars(key); var _local2 = calculate(_local3, _local1); return(charsToStr(_local2)); } static function initialize(pwd) { var _local2 = 0; var _local3; var _local4 = pwd.length; var _local1 = 0; while (_local1 <= 255) { mykey[_local1] = pwd[_local1 % _local4]; sbox[_local1] = _local1; _local1++; } _local1 = 0; while (_local1 <= 255) { _local2 = ((_local2 + sbox[_local1]) + mykey[_local1]) % 256; _local3 = sbox[_local1]; sbox[_local1] = sbox[_local2]; sbox[_local2] = _local3; _local1++; } } static function calculate(plaintxt, psw) { initialize(psw); var _local1 = 0; var _local2 = 0; var _local9 = new Array(); var _local7; var _local5; var _local6; var _local3 = 0; while (_local3 < plaintxt.length) { _local1 = (_local1 + 1) % 256; _local2 = (_local2 + sbox[_local1]) % 256; _local5 = sbox[_local1]; sbox[_local1] = sbox[_local2]; sbox[_local2] = _local5; var _local4 = (sbox[_local1] + sbox[_local2]) % 256; _local7 = sbox[_local4]; _local6 = plaintxt[_local3] ^ _local7; _local9.push(_local6); _local3++; } return(_local9); } static function charsToHex(chars) { var _local4 = new String(""); var _local3 = new Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"); var _local1 = 0; while (_local1 < chars.length) { _local4 = _local4 + (_local3[chars[_local1] >> 4] + _local3[chars[_local1] & 15]); _local1++; } return(_local4); } static function hexToChars(hex) { var _local3 = new Array(); var _local1 = ((hex.substr(0, 2) == "0x") ? 2 : 0); while (_local1 < hex.length) { _local3.push(parseInt(hex.substr(_local1, 2), 16)); _local1 = _local1 + 2; } return(_local3); } static function charsToStr(chars) { var _local3 = new String(""); var _local1 = 0; while (_local1 < chars.length) { _local3 = _local3 + String.fromCharCode(chars[_local1]); _local1++; } return(_local3); } static function strToChars(str) { var _local3 = new Array(); var _local1 = 0; while (_local1 < str.length) { _local3.push(str.charCodeAt(_local1)); _local1++; } return(_local3); } static var sbox = new Array(255); static var mykey = new Array(255); }
Symbol 61 MovieClip [__Packages.com.newgrounds.encoders.JSON] Frame 0
class com.newgrounds.encoders.JSON { static var start, cache, interval; function JSON () { } static function encode(arg, noquotes) { var _local3; var _local2; var _local6; var _local1 = ""; var _local4; if (arg.isSServerVar()) { var _local8 = "sservervariable"; } else { var _local8 = typeof(arg); } switch (_local8) { case "sservervariable" : return("?" + arg.getEncodedValue()); case "object" : if (arg) { if (arg instanceof Array) { _local2 = 0; while (_local2 < arg.length) { _local4 = encode(arg[_local2]); if (_local1) { _local1 = _local1 + ","; } _local1 = _local1 + _local4; _local2++; } return(("[" + _local1) + "]"); } if (typeof(arg.toString) != "undefined") { for (_local2 in arg) { _local4 = arg[_local2]; if ((typeof(_local4) != "undefined") && (typeof(_local4) != "function")) { _local4 = encode(_local4); if (_local1) { _local1 = _local1 + ","; } _local1 = _local1 + ((encode(_local2) + ":") + _local4); } } return(("{" + _local1) + "}"); } } return("null"); case "number" : return((isFinite(arg) ? (String(arg)) : "null")); case "string" : _local6 = arg.length; if (noquotes) { var _local7 = ""; } else { var _local7 = "\""; } _local1 = _local7; _local2 = 0; while (_local2 < _local6) { _local3 = arg.charAt(_local2); if (_local3 >= " ") { if ((_local3 == "\\") || (_local3 == "\"")) { _local1 = _local1 + "\\"; } _local1 = _local1 + _local3; } else { switch (_local3) { case "\b" : _local1 = _local1 + "\\b"; break; case "\f" : _local1 = _local1 + "\\f"; break; case newline : _local1 = _local1 + "\\n"; break; case "\r" : _local1 = _local1 + "\\r"; break; case "\t" : _local1 = _local1 + "\\t"; break; default : _local3 = _local3.charCodeAt(); _local1 = _local1 + (("\\u00" + Math.floor(_local3 / 16).toString(16)) + (_local3 % 16).toString(16)); } } _local2 = _local2 + 1; } return(_local1 + _local7); case "boolean" : return(String(arg)); } return("null"); } static function background_encode(arg, callback) { if (busy) { trace("[Newgrounds Encoder] :: Cannot encode a new file until the previous file is completed"); return(false); } if (!callback) { trace("[Newgrounds Encoder] :: Missing a callback function, skipping encode"); return(false); } busy = true; var _local2 = new Date(); start = _local2.getTime(); cache = {busy:false, complete:false, arg:arg, target:arg, parents:[], encoded:"", callback:callback, encode_chunk:function () { com.newgrounds.encoders.JSON.encode_chunk(); }}; if (getType(arg) == "object") { cache.encoded = "{"; } else if (getType(arg) == "array") { cache.encoded = "["; } interval = setInterval(cache, "encode_chunk", 25); return(true); } static function background_decode(arg, callback) { if (busy) { trace("[Newgrounds Encoder] :: Cannot decode a new file until the previous file is completed"); return(false); } if (!callback) { trace("[Newgrounds Encoder] :: Missing a callback function, skipping decode"); return(false); } busy = true; var _local1 = new Date(); start = _local1.getTime(); cache = {busy:false, callback:callback, complete:false, arg:arg, pos:0, parents:["root"], target:null, scratch:"", decode_chunk:function () { com.newgrounds.encoders.JSON.decode_chunk(); }}; interval = setInterval(cache, "decode_chunk", 25); return(true); } static function decode(text) { var at = 0; var ch = " "; var _value; var _error = function (m) { throw {name:"JSONError", message:m, at:at - 1, text:text}; }; var _next = function () { ch = text.charAt(at); at = at + 1; return(ch); }; var _white = function () { while (ch) { if (ch <= " ") { _next(); } else if (ch == "/") { switch (_next()) { case "/" : while ((_next() && (ch != newline)) && (ch != "\r")) { } break; case "*" : _next(); for(;;){ if (ch) { if (ch == "*") { if (_next() == "/") { _next(); // unexpected jump } } else { _next(); } } else { _error("Unterminated comment"); } }; break; default : _error("Syntax error"); } } else { return; } } }; var _string = function () { var _local4; var _local1 = ""; var _local3; var _local2; var _local5 = false; if (ch == "\"") { while (_next()) { if (ch == "\"") { _next(); return(_local1); } if (ch == "\\") { switch (_next()) { case "b" : _local1 = _local1 + "\b"; break; case "f" : _local1 = _local1 + "\f"; break; case "n" : _local1 = _local1 + newline; break; case "r" : _local1 = _local1 + "\r"; break; case "t" : _local1 = _local1 + "\t"; break; case "u" : _local2 = 0; _local4 = 0; while (_local4 < 4) { _local3 = parseInt(_next(), 16); if (!isFinite(_local3)) { _local5 = true; break; } _local2 = (_local2 * 16) + _local3; _local4 = _local4 + 1; } if (_local5) { _local5 = false; break; } _local1 = _local1 + String.fromCharCode(_local2); break; default : _local1 = _local1 + ch; } } else { _local1 = _local1 + ch; } } } _error("Bad string"); }; var _array = function () { var _local1 = []; if (ch == "[") { _next(); _white(); if (ch == "]") { _next(); return(_local1); } while (ch) { _local1.push(_value()); _white(); if (ch == "]") { _next(); return(_local1); } if (ch != ",") { break; } _next(); _white(); } } _error("Bad array"); }; var _object = function () { var _local2; var _local1 = {}; if (ch == "{") { _next(); _white(); if (ch == "}") { _next(); return(_local1); } while (ch) { _local2 = _string(); _white(); if (ch != ":") { break; } _next(); _local1[_local2] = _value(); _white(); if (ch == "}") { _next(); return(_local1); } if (ch != ",") { break; } _next(); _white(); } } _error("Bad object"); }; var _number = function () { var _local1 = ""; var _local2; if (ch == "-") { _local1 = "-"; _next(); } while ((ch >= "0") && (ch <= "9")) { _local1 = _local1 + ch; _next(); } if (ch == ".") { _local1 = _local1 + "."; while ((_next() && (ch >= "0")) && (ch <= "9")) { _local1 = _local1 + ch; } } _local2 = 1 * _local1; if (!isFinite(_local2)) { _error("Bad number"); } else { return(_local2); } }; var _word = function () { switch (ch) { case "t" : if (((_next() == "r") && (_next() == "u")) && (_next() == "e")) { _next(); return(true); } break; case "f" : if ((((_next() == "a") && (_next() == "l")) && (_next() == "s")) && (_next() == "e")) { _next(); return(false); } break; case "n" : if (!(((_next() == "u") && (_next() == "l")) && (_next() == "l"))) { break; } _next(); return(null); } _error("Syntax error"); }; _value = function () { _white(); switch (ch) { case "{" : return(_object()); case "[" : return(_array()); case "\"" : return(_string()); case "-" : return(_number()); } return((((ch >= "0") && (ch <= "9")) ? (_number()) : (_word()))); }; return(_value()); } static function getType(v) { if (v instanceof Array) { return("array"); } return(typeof(v)); } static function decode_chunk() { if ((!cache.busy) && (!cache.complete)) { cache.busy = true; var _local1 = 0; while (_local1 < decode_chunks) { chunk_decoder(); if (cache.complete) { break; } _local1++; } trace(Math.round((cache.pos / cache.arg.length) * 100) + "% decoded"); cache.busy = false; } if (cache.complete) { var _local2 = new Date(); busy = false; clearInterval(interval); cache.callback(cache.root, _local2.getTime() - start); cache.arg = ""; } } static function encode_chunk() { if ((!cache.busy) && (!cache.complete)) { cache.busy = true; var _local1 = 0; while (_local1 < encode_chunks) { chunk_encoder(); if (cache.complete) { break; } _local1++; } cache.busy = false; } if (cache.complete) { var _local3 = new Date(); var _local2 = _local3.getTime(); busy = false; clearInterval(interval); cache.callback(cache.encoded, _local2 - start); cache.encoded = ""; } } static function chunk_decoder() { function _object() { var _local1 = com.newgrounds.encoders.JSON.cache.arg.charAt(com.newgrounds.encoders.JSON.cache.pos); if (!com.newgrounds.encoders.JSON.cache.mode) { com.newgrounds.encoders.JSON.cache.mode = "object"; com.newgrounds.encoders.JSON.cache.pos++; _local1 = com.newgrounds.encoders.JSON.cache.arg.charAt(com.newgrounds.encoders.JSON.cache.pos); if (_local1 != "\"") { throw "Malformed object key in encoded string. Keys must be wrapped in quotes (\"\")"; } com.newgrounds.encoders.JSON.cache.scratch = ""; _setTargetValue({}); } else if (_local1 == ",") { com.newgrounds.encoders.JSON.cache.pos++; _local1 = com.newgrounds.encoders.JSON.cache.arg.charAt(com.newgrounds.encoders.JSON.cache.pos); if (_local1 != "\"") { throw "Malformed object key in encoded string. Keys must be wrapped in quotes (\"\")"; } com.newgrounds.encoders.JSON.cache.scratch = ""; } else if (_local1 == "}") { _useParent(); } else if (_local1 == "\"") { com.newgrounds.encoders.JSON.cache.pos++; _local1 = com.newgrounds.encoders.JSON.cache.arg.charAt(com.newgrounds.encoders.JSON.cache.pos); if (_local1 != ":") { throw "Malformed object notation. Object keys and values must be separated by colons(:)"; } _addParent(com.newgrounds.encoders.JSON.cache.scratch); com.newgrounds.encoders.JSON.cache.mode = null; } else { if (_local1 == "\\") { com.newgrounds.encoders.JSON.cache.pos++; _local1 = com.newgrounds.encoders.JSON.cache.arg.charAt(com.newgrounds.encoders.JSON.cache.pos); } com.newgrounds.encoders.JSON.cache.scratch = com.newgrounds.encoders.JSON.cache.scratch + _local1; } com.newgrounds.encoders.JSON.cache.pos++; } function _array() { var _local1 = com.newgrounds.encoders.JSON.cache.arg.charAt(com.newgrounds.encoders.JSON.cache.pos); if (!com.newgrounds.encoders.JSON.cache.mode) { com.newgrounds.encoders.JSON.cache.mode = "array"; com.newgrounds.encoders.JSON.cache.pos++; _local1 = com.newgrounds.encoders.JSON.cache.arg.charAt(com.newgrounds.encoders.JSON.cache.pos); _setTargetValue([]); if (_local1 != "]") { _addArrayKey(); } else { _useParent(); } return(undefined); } if (_local1 == ",") { _addArrayKey(); } else if (_local1 == "]") { _useParent(); } com.newgrounds.encoders.JSON.cache.pos++; } function _boolean() { var _local1 = com.newgrounds.encoders.JSON.cache.arg.charAt(com.newgrounds.encoders.JSON.cache.pos); if (_local1 == "t") { _setTargetValue(true); com.newgrounds.encoders.JSON.cache.pos = com.newgrounds.encoders.JSON.cache.pos + 3; } else if (_local1 == "f") { _setTargetValue(false); com.newgrounds.encoders.JSON.cache.pos = com.newgrounds.encoders.JSON.cache.pos + 4; } else { throw "Bool values must be true or false"; } _useParent(); } function _null() { var _local1 = com.newgrounds.encoders.JSON.cache.arg.charAt(com.newgrounds.encoders.JSON.cache.pos); if (_local1 == "n") { _setTargetValue(null); com.newgrounds.encoders.JSON.cache.pos = com.newgrounds.encoders.JSON.cache.pos + 2; } else { throw "Null values must be null"; } _useParent(); } function _string() { var _local1 = com.newgrounds.encoders.JSON.cache.arg.charAt(com.newgrounds.encoders.JSON.cache.pos); if (!com.newgrounds.encoders.JSON.cache.mode) { if (_local1 != "\"") { throw "Strings must be wrapped in quotes (\"\")"; } com.newgrounds.encoders.JSON.cache.scratch = ""; com.newgrounds.encoders.JSON.cache.mode = "string"; } else if (_local1 == "\"") { _setTargetValue(com.newgrounds.encoders.JSON.cache.scratch); _useParent(); } else { if (_local1 == "\\") { com.newgrounds.encoders.JSON.cache.pos++; _local1 = com.newgrounds.encoders.JSON.cache.arg.charAt(com.newgrounds.encoders.JSON.cache.pos); switch (_local1) { case "n" : _local1 = newline; break; case "r" : _local1 = newline; break; case "t" : _local1 = "\t"; break; case "u" : _local1 = "\\" + _local1; } } com.newgrounds.encoders.JSON.cache.scratch = com.newgrounds.encoders.JSON.cache.scratch + _local1; } com.newgrounds.encoders.JSON.cache.pos++; } function _number() { var _local1 = com.newgrounds.encoders.JSON.cache.arg.charAt(com.newgrounds.encoders.JSON.cache.pos); var _local2 = "01234567890.-"; if (!com.newgrounds.encoders.JSON.cache.mode) { com.newgrounds.encoders.JSON.cache.mode = "number"; com.newgrounds.encoders.JSON.cache.scratch = ""; } if (_local2.indexOf(_local1) < 0) { _setTargetValue(Number(com.newgrounds.encoders.JSON.cache.scratch)); _useParent(); } else { com.newgrounds.encoders.JSON.cache.scratch = com.newgrounds.encoders.JSON.cache.scratch + _local1; com.newgrounds.encoders.JSON.cache.pos++; } } function _setTargetValue(newval) { var _local2 = _getParent().obj; var _local1 = com.newgrounds.encoders.JSON.cache.parents[com.newgrounds.encoders.JSON.cache.parents.length - 1]; _local2[_local1] = newval; } function _useParent() { com.newgrounds.encoders.JSON.cache.mode = com.newgrounds.encoders.JSON.getType(_getParent().obj); com.newgrounds.encoders.JSON.cache.parents.pop(); } function _getParent() { var _local2 = com.newgrounds.encoders.JSON.cache; var _local1 = 0; while (_local1 < (com.newgrounds.encoders.JSON.cache.parents.length - 1)) { _local2 = _local2[com.newgrounds.encoders.JSON.cache.parents[_local1]]; _local1++; } return({obj:_local2, name:com.newgrounds.encoders.JSON.cache.parents[_local1]}); } function _getCurrent() { var _local2 = com.newgrounds.encoders.JSON.cache; var _local1 = 0; while (_local1 < com.newgrounds.encoders.JSON.cache.parents.length) { _local2 = _local2[com.newgrounds.encoders.JSON.cache.parents[_local1]]; _local1++; } return({obj:_local2, name:com.newgrounds.encoders.JSON.cache.parents[_local1]}); } function _addParent(child) { com.newgrounds.encoders.JSON.cache.parents.push(child); } function _addArrayKey() { var _local1 = _getCurrent().obj.length; com.newgrounds.encoders.JSON.cache.parents.push(_local1); com.newgrounds.encoders.JSON.cache.mode = null; } if (cache.pos >= cache.arg.length) { cache.complete = true; return(undefined); } if (cache.mode) { eval ("_" + cache.mode)(); } else { var char = cache.arg.charAt(cache.pos); switch (char) { case "{" : _object(); return; case "[" : _array(); return; case "\"" : _string(); return; case "n" : _null(); return; case "t" : _boolean(); return; case "f" : _boolean(); return; default : _number(); } } } static function chunk_encoder() { if (cache.complete) { return(undefined); } var _local2 = getType(cache.target); switch (_local2) { case "number" : cache.encoded = cache.encoded + cache.target; getParent(); break; case "string" : cache.encoded = cache.encoded + (("\"" + cache.target.split("\"").join("\\\"")) + "\""); getParent(); break; case "boolean" : cache.encoded = cache.encoded + ((cache.target == true) ? "true" : "false"); getParent(); break; case "null" : cache.encoded = cache.encoded + "null"; getParent(); break; case "array" : if (cache.target.length < 1) { cache.encoded = cache.encoded + "]"; getParent(); } else { cache.parents.push(cache.target); cache.target = cache.target[0]; if (getType(cache.target) == "array") { cache.encoded = cache.encoded + "["; } else if (getType(cache.target) == "object") { cache.encoded = cache.encoded + "{"; } } break; case "object" : for (var _local1 in cache.target) { break; } if (_local1 === undefined) { cache.encoded = cache.encoded + "}"; getParent(); } else { cache.parents.push(cache.target); cache.target = cache.target[_local1]; cache.encoded = cache.encoded + (("\"" + _local1.split("\"").join("\\\"")) + "\":"); if (getType(cache.target) == "array") { cache.encoded = cache.encoded + "["; } else if (getType(cache.target) == "object") { cache.encoded = cache.encoded + "{"; } } break; default : cache.encoded = cache.encoded + "null"; getParent(); } } static function getParent() { if (cache.parents.length > 0) { var _local1 = cache.parents.pop(); if (getType(_local1) == "array") { _local1.shift(); } else { for (var _local3 in _local1) { delete _local1[_local3]; break; } } if ((getType(_local1) == "object") or (getType(_local1) == "array")) { for (var _local2 in _local1) { break; } if (!(_local2 === undefined)) { cache.encoded = cache.encoded + ","; } } cache.target = _local1; } else { cache.complete = true; } } static var encode_chunks = 20000; static var decode_chunks = 20000; static var busy = false; }
Symbol 63 MovieClip [__Packages.com.newgrounds.encoders.MD5] Frame 0
class com.newgrounds.encoders.MD5 { function MD5 () { } static function calculate(src) { return(hex_md5(src)); } static function hex_md5(src) { return(binl2hex(core_md5(str2binl(src), src.length * 8))); } static function core_md5(x, len) { x[len >> 5] = x[len >> 5] | (128 << (len % 32)); x[(((len + 64) >>> 9) << 4) + 14] = len; var _local4 = 1732584193 /* 0x67452301 */; var _local3 = -271733879; var _local2 = -1732584194; var _local1 = 271733878 /* 0x10325476 */; var _local5 = 0; while (_local5 < x.length) { var _local10 = _local4; var _local9 = _local3; var _local8 = _local2; var _local7 = _local1; _local4 = md5_ff(_local4, _local3, _local2, _local1, x[_local5 + 0], 7, -680876936); _local1 = md5_ff(_local1, _local4, _local3, _local2, x[_local5 + 1], 12, -389564586); _local2 = md5_ff(_local2, _local1, _local4, _local3, x[_local5 + 2], 17, 606105819); _local3 = md5_ff(_local3, _local2, _local1, _local4, x[_local5 + 3], 22, -1044525330); _local4 = md5_ff(_local4, _local3, _local2, _local1, x[_local5 + 4], 7, -176418897); _local1 = md5_ff(_local1, _local4, _local3, _local2, x[_local5 + 5], 12, 1200080426); _local2 = md5_ff(_local2, _local1, _local4, _local3, x[_local5 + 6], 17, -1473231341); _local3 = md5_ff(_local3, _local2, _local1, _local4, x[_local5 + 7], 22, -45705983); _local4 = md5_ff(_local4, _local3, _local2, _local1, x[_local5 + 8], 7, 1770035416); _local1 = md5_ff(_local1, _local4, _local3, _local2, x[_local5 + 9], 12, -1958414417); _local2 = md5_ff(_local2, _local1, _local4, _local3, x[_local5 + 10], 17, -42063); _local3 = md5_ff(_local3, _local2, _local1, _local4, x[_local5 + 11], 22, -1990404162); _local4 = md5_ff(_local4, _local3, _local2, _local1, x[_local5 + 12], 7, 1804603682); _local1 = md5_ff(_local1, _local4, _local3, _local2, x[_local5 + 13], 12, -40341101); _local2 = md5_ff(_local2, _local1, _local4, _local3, x[_local5 + 14], 17, -1502002290); _local3 = md5_ff(_local3, _local2, _local1, _local4, x[_local5 + 15], 22, 1236535329); _local4 = md5_gg(_local4, _local3, _local2, _local1, x[_local5 + 1], 5, -165796510); _local1 = md5_gg(_local1, _local4, _local3, _local2, x[_local5 + 6], 9, -1069501632); _local2 = md5_gg(_local2, _local1, _local4, _local3, x[_local5 + 11], 14, 643717713); _local3 = md5_gg(_local3, _local2, _local1, _local4, x[_local5 + 0], 20, -373897302); _local4 = md5_gg(_local4, _local3, _local2, _local1, x[_local5 + 5], 5, -701558691); _local1 = md5_gg(_local1, _local4, _local3, _local2, x[_local5 + 10], 9, 38016083); _local2 = md5_gg(_local2, _local1, _local4, _local3, x[_local5 + 15], 14, -660478335); _local3 = md5_gg(_local3, _local2, _local1, _local4, x[_local5 + 4], 20, -405537848); _local4 = md5_gg(_local4, _local3, _local2, _local1, x[_local5 + 9], 5, 568446438); _local1 = md5_gg(_local1, _local4, _local3, _local2, x[_local5 + 14], 9, -1019803690); _local2 = md5_gg(_local2, _local1, _local4, _local3, x[_local5 + 3], 14, -187363961); _local3 = md5_gg(_local3, _local2, _local1, _local4, x[_local5 + 8], 20, 1163531501); _local4 = md5_gg(_local4, _local3, _local2, _local1, x[_local5 + 13], 5, -1444681467); _local1 = md5_gg(_local1, _local4, _local3, _local2, x[_local5 + 2], 9, -51403784); _local2 = md5_gg(_local2, _local1, _local4, _local3, x[_local5 + 7], 14, 1735328473); _local3 = md5_gg(_local3, _local2, _local1, _local4, x[_local5 + 12], 20, -1926607734); _local4 = md5_hh(_local4, _local3, _local2, _local1, x[_local5 + 5], 4, -378558); _local1 = md5_hh(_local1, _local4, _local3, _local2, x[_local5 + 8], 11, -2022574463); _local2 = md5_hh(_local2, _local1, _local4, _local3, x[_local5 + 11], 16, 1839030562); _local3 = md5_hh(_local3, _local2, _local1, _local4, x[_local5 + 14], 23, -35309556); _local4 = md5_hh(_local4, _local3, _local2, _local1, x[_local5 + 1], 4, -1530992060); _local1 = md5_hh(_local1, _local4, _local3, _local2, x[_local5 + 4], 11, 1272893353); _local2 = md5_hh(_local2, _local1, _local4, _local3, x[_local5 + 7], 16, -155497632); _local3 = md5_hh(_local3, _local2, _local1, _local4, x[_local5 + 10], 23, -1094730640); _local4 = md5_hh(_local4, _local3, _local2, _local1, x[_local5 + 13], 4, 681279174); _local1 = md5_hh(_local1, _local4, _local3, _local2, x[_local5 + 0], 11, -358537222); _local2 = md5_hh(_local2, _local1, _local4, _local3, x[_local5 + 3], 16, -722521979); _local3 = md5_hh(_local3, _local2, _local1, _local4, x[_local5 + 6], 23, 76029189); _local4 = md5_hh(_local4, _local3, _local2, _local1, x[_local5 + 9], 4, -640364487); _local1 = md5_hh(_local1, _local4, _local3, _local2, x[_local5 + 12], 11, -421815835); _local2 = md5_hh(_local2, _local1, _local4, _local3, x[_local5 + 15], 16, 530742520); _local3 = md5_hh(_local3, _local2, _local1, _local4, x[_local5 + 2], 23, -995338651); _local4 = md5_ii(_local4, _local3, _local2, _local1, x[_local5 + 0], 6, -198630844); _local1 = md5_ii(_local1, _local4, _local3, _local2, x[_local5 + 7], 10, 1126891415); _local2 = md5_ii(_local2, _local1, _local4, _local3, x[_local5 + 14], 15, -1416354905); _local3 = md5_ii(_local3, _local2, _local1, _local4, x[_local5 + 5], 21, -57434055); _local4 = md5_ii(_local4, _local3, _local2, _local1, x[_local5 + 12], 6, 1700485571); _local1 = md5_ii(_local1, _local4, _local3, _local2, x[_local5 + 3], 10, -1894986606); _local2 = md5_ii(_local2, _local1, _local4, _local3, x[_local5 + 10], 15, -1051523); _local3 = md5_ii(_local3, _local2, _local1, _local4, x[_local5 + 1], 21, -2054922799); _local4 = md5_ii(_local4, _local3, _local2, _local1, x[_local5 + 8], 6, 1873313359); _local1 = md5_ii(_local1, _local4, _local3, _local2, x[_local5 + 15], 10, -30611744); _local2 = md5_ii(_local2, _local1, _local4, _local3, x[_local5 + 6], 15, -1560198380); _local3 = md5_ii(_local3, _local2, _local1, _local4, x[_local5 + 13], 21, 1309151649); _local4 = md5_ii(_local4, _local3, _local2, _local1, x[_local5 + 4], 6, -145523070); _local1 = md5_ii(_local1, _local4, _local3, _local2, x[_local5 + 11], 10, -1120210379); _local2 = md5_ii(_local2, _local1, _local4, _local3, x[_local5 + 2], 15, 718787259); _local3 = md5_ii(_local3, _local2, _local1, _local4, x[_local5 + 9], 21, -343485551); _local4 = safe_add(_local4, _local10); _local3 = safe_add(_local3, _local9); _local2 = safe_add(_local2, _local8); _local1 = safe_add(_local1, _local7); _local5 = _local5 + 16; } return(new Array(_local4, _local3, _local2, _local1)); } static function md5_cmn(q, a, b, x, s, t) { return(safe_add(bit_rol(safe_add(safe_add(a, q), safe_add(x, t)), s), b)); } static function md5_ff(a, b, c, d, x, s, t) { return(md5_cmn((b & c) | ((~b) & d), a, b, x, s, t)); } static function md5_gg(a, b, c, d, x, s, t) { return(md5_cmn((b & d) | (c & (~d)), a, b, x, s, t)); } static function md5_hh(a, b, c, d, x, s, t) { return(md5_cmn((b ^ c) ^ d, a, b, x, s, t)); } static function md5_ii(a, b, c, d, x, s, t) { return(md5_cmn(c ^ (b | (~d)), a, b, x, s, t)); } static function bit_rol(num, cnt) { return((num << cnt) | (num >>> (32 - cnt))); } static function safe_add(x, y) { var _local1 = (x & 65535) + (y & 65535); var _local2 = ((x >> 16) + (y >> 16)) + (_local1 >> 16); return((_local2 << 16) | (_local1 & 65535)); } static function str2binl(str) { var _local3 = new Array(); var _local4 = 255; var _local1 = 0; while (_local1 < (str.length * 8)) { _local3[_local1 >> 5] = _local3[_local1 >> 5] | ((str.charCodeAt(_local1 / 8) & _local4) << (_local1 % 32)); _local1 = _local1 + 8; } return(_local3); } static function binl2hex(binarray) { var _local4 = new String(""); var _local3 = new String("0123456789abcdef"); var _local1 = 0; while (_local1 < (binarray.length * 4)) { _local4 = _local4 + (_local3.charAt((binarray[_local1 >> 2] >> (((_local1 % 4) * 8) + 4)) & 15) + _local3.charAt((binarray[_local1 >> 2] >> ((_local1 % 4) * 8)) & 15)); _local1++; } return(_local4); } }
Symbol 64 MovieClip [__Packages.com.newgrounds.Score] Frame 0
class com.newgrounds.Score { var _board, _position, _username, _value, _numeric_value; function Score (board, position, username, value, numeric_value) { _board = board; _position = position; _username = username; _value = value; _numeric_value = numeric_value; } function get board() { return(_board); } function get position() { return(_position); } function get username() { return(_username); } function get value() { return(_value); } function get numeric_value() { return(_numeric_value); } static function fromTime(time) { var _local1 = time.split(":"); var _local2 = Math.round(Number(_local1.pop()) * 1000); if (_local1.length > 0) { _local2 = _local2 + (Number(_local1.pop()) * 60); } if (_local1.length > 0) { _local2 = _local2 + (Number(_local1.pop()) * 3600); } return(_local2); } static function fromDistance(distance) { var _local1 = distance.indexOf("'"); var _local5 = distance.indexOf("\"", _local1); var _local3 = Number(distance.substr(0, _local1)); var _local4 = Number(distance.substring(_local1 + 1, _local5)); return(Math.round((_local3 * 12) + _local4)); } }
Symbol 65 MovieClip [__Packages.com.newgrounds.components.FlashAd] Frame 0
class com.newgrounds.components.FlashAd extends MovieClip { var show_background, background, _x, _y, _xscale, _yscale; function FlashAd () { super(); background._visible = show_background; if (show_background) { _x = Math.round(_x); _y = Math.round(_y); _xscale = 100; _yscale = 100; } com.newgrounds.API.addEventListener(com.newgrounds.APIEvent.ADS_APPROVED, loadAd, this); } function onLoad() { com.newgrounds.API.attachFlashAd(this); } function loadAd(event, params) { com.newgrounds.API.attachFlashAd(this); } function onUnload() { com.newgrounds.API.removeEventListener(com.newgrounds.APIEvent.ADS_APPROVED, this); } }
Symbol 74 MovieClip [__Packages.com.newgrounds.components.PreloaderBar] Frame 0
class com.newgrounds.components.PreloaderBar extends MovieClip { var gotoAndStop, _totalframes, FRAME_TIME, intervalId, time, bar; function PreloaderBar () { super(); } function onLoad() { _root.stop(); var _local3 = com.newgrounds.API.getPercentLoaded(); if (_local3 == 100) { if (AUTO_PLAY) { startMovie(); } else { (gotoAndStop(_totalframes));// not popped } } else { advanceFrame(this, false, false); FRAME_TIME = 1000 / FRAME_RATE; loadingComplete = false; intervalId = setInterval(this, "timerHandler", FRAME_TIME / 2); frameAccum = 0; time = getTimer(); timerHandler(); } } function timerHandler() { if (!loadingComplete) { var _local4 = com.newgrounds.API.getPercentLoaded(); bar._xscale = _local4; if (_local4 == 100) { loadingComplete = true; if (AUTO_PLAY) { startMovie(); } return(undefined); } } var _local3 = getTimer() - time; time = time + _local3; frameAccum = frameAccum + _local3; var _local2 = 0; while ((frameAccum >= FRAME_TIME) && (_local2 < MAX_FRAME_SKIP)) { if (loadingComplete) { advanceFrame(this, false, false); } (frameAccum = frameAccum - FRAME_TIME); _local2++; } updateAfterEvent(); } function advanceFrame(clip, recurse, loop) { if (!clip) { return(undefined); } clip.stop(); if (clip._currentframe == clip._totalframes) { if (loop) { clip.gotoAndStop(1); } } else { clip.nextFrame(); } if (recurse) { for (var _local5 in clip) { if (typeof(clip[_local5]) == "movieclip") { advanceFrame(clip[_local5], recurse, loop); } } } } function startMovie() { clearInterval(intervalId); _root.play(); } static var symbolName = "preloaderBar"; static var symbolOwner = "com.newgrounds.API"; var AUTO_PLAY = false; var FRAME_RATE = 30; var MAX_FRAME_SKIP = 5; var loadingComplete = false; var frameAccum = 0; }
Symbol 106 MovieClip [__Packages.com.newgrounds.components.APIConnector] Frame 0
class com.newgrounds.components.APIConnector extends MovieClip { var _x, _y, fake_session, movie_id, nextFrame, _visible, error_screens, medal_popups, debug, movie_version, local_data, encryption_key, stop, gotoframe_interval, _totalframes, _framesloaded, gotoAndStop; function APIConnector () { super(); _x = Math.round(_x); _y = Math.round(_y); if (fake_session and (com.newgrounds.API.getHost() == "localhost")) { com.newgrounds.API.setFakeSession(true); } if (movie_id && (!com.newgrounds.API.isConnected())) { (nextFrame());// not popped _visible = false; setGotoFrame("connecting"); if (error_screens) { com.newgrounds.API.addEventListener(com.newgrounds.APIEvent.NEW_VERSION_AVAILABLE, onNewVersion, this); com.newgrounds.API.addEventListener(com.newgrounds.APIEvent.HOST_BLOCKED, onBadHost, this); } if (medal_popups) { com.newgrounds.API.addEventListener(com.newgrounds.APIEvent.UNLOCK_MEDAL, doUnlock, this); } com.newgrounds.API.addEventListener(com.newgrounds.APIEvent.MOVIE_CONNECTED, onConnected, this); if (com.newgrounds.API.isPublishedHost()) { debug = false; } if (movie_version) { com.newgrounds.API.setMovieVersion(movie_version); } if (!com.newgrounds.API.hasUserSession()) { var _local3 = com.newgrounds.API.loadLocal("api_connector_data"); if (_local3) { local_data = _local3; } else { local_data = {medals_unlocked:new Array()}; } } com.newgrounds.API.setPreload(true); com.newgrounds.API.connectMovie(movie_id, encryption_key, debug); } else if (movie_id && (com.newgrounds.API.isConnected())) { _visible = false; setGotoFrame("done"); } (stop());// not popped } function doUnlock(e) { var _local5 = _root.attachMovie("NewgroundsAPIAsset_Medal_Popup", "Asset_Medal_Popup_" + e.data.medal.getID(), _root.getNextHighestDepth()); if (e.data.x != undefined) { _local5._x = e.data.x + 254; } else { _local5._x = Stage.width; } if (e.data.x != undefined) { _local5._y = e.data.y + 73; } else { _local5._y = Stage.height; } _local5.medal = e.data.medal; var _local3 = com.newgrounds.API.getMedals(); var _local2 = 0; while (_local2 < _local3.length) { if ((_local3[_local2].getID() != e.data.medal.getID()) && (_root["medal_pop_" + _local3[_local2].getID()])) { _root["medal_pop_" + _local3[_local2].getID()]._y = _root["medal_pop_" + _local3[_local2].getID()]._y - 70; } _local2++; } } function onLoginError() { var _local2 = _root.attachMovie("Asset_Login_Warning", "Asset_Login_Warning", _root.getNextHighestDepth()); } function onConnectionError() { var _local3 = _root.attachMovie("Asset_Connection_Error", "Asset_Connection_Error", _root.getNextHighestDepth()); setGotoFrame("done"); } function onConnected(event, params) { if (event.success) { setGotoFrame("connected"); if (((error_screens && (com.newgrounds.API.isPublishedHost())) && (com.newgrounds.API.hasPublisher())) && (!com.newgrounds.API.hasUserSession())) { onLoginError(); } } else if (error_screens) { onConnectionError(); } } function onNewVersion() { var _local2 = _root.attachMovie("NewgroundsAsset_New_Version_Available", "NewgroundsAsset_New_Version_Available", _root.getNextHighestDepth()); _local2.official_version_url = com.newgrounds.API.getOfficialVersionURL(); } function onBadHost() { var _local2 = _root.attachMovie("NewgroundsAsset_Illegal_Host", "NewgroundsAsset_Illegal_Host", _root.getNextHighestDepth()); _local2.official_version_url = com.newgrounds.API.getOfficialVersionURL(); } function setGotoFrame(frame) { if (goto_frame == null) { goto_frame = frame; gotoframe_interval = setInterval(this, "gotoFrameIfLoaded", 50); } } function gotoFrameIfLoaded() { if ((goto_frame != null) && (_framesloaded == _totalframes)) { _visible = true; gotoAndStop(goto_frame); goto_frame = null; clearInterval(gotoframe_interval); } } var goto_frame = null; }
Symbol 204 MovieClip Frame 1
stop();
Symbol 204 MovieClip Frame 2
play();
Symbol 204 MovieClip Frame 19
_global.myRoot.score = _global.myRoot.score + 40; _global.myRoot.bombsBlown++;
Symbol 204 MovieClip Frame 20
stop();
Symbol 219 MovieClip Frame 1
stop();
Symbol 219 MovieClip Frame 2
play();
Symbol 219 MovieClip Frame 6
stop();
Symbol 219 MovieClip Frame 7
play();
Symbol 235 MovieClip Frame 1
stop();
Symbol 235 MovieClip Frame 2
play();
Symbol 235 MovieClip Frame 3
stop();
Symbol 248 MovieClip Frame 1
stop();
Symbol 248 MovieClip Frame 2
play();
Symbol 250 MovieClip Frame 1
stop();
Symbol 250 MovieClip Frame 2
play();
Symbol 252 MovieClip Frame 1
stop();
Symbol 252 MovieClip Frame 2
stop();
Symbol 264 MovieClip Frame 1
stop();
Symbol 264 MovieClip Frame 2
play();
Symbol 264 MovieClip Frame 10
stop();
Symbol 264 MovieClip Frame 11
play();
Symbol 266 MovieClip Frame 1
stop();
Symbol 266 MovieClip Frame 2
play();
Symbol 266 MovieClip Frame 10
stop();
Symbol 266 MovieClip Frame 11
play();
Symbol 270 MovieClip Frame 1
stop();
Symbol 270 MovieClip Frame 2
play();
Symbol 270 MovieClip Frame 10
stop();
Symbol 270 MovieClip Frame 11
play();
Symbol 271 MovieClip Frame 1
stop();
Symbol 271 MovieClip Frame 2
stop();
Symbol 271 MovieClip Frame 3
stop();
Symbol 271 MovieClip Frame 4
stop();
Symbol 271 MovieClip Frame 5
stop();
Symbol 271 MovieClip Frame 6
stop();
Symbol 285 MovieClip Frame 1
stop();
Symbol 285 MovieClip Frame 2
stop();
Symbol 320 MovieClip Frame 1
stop();
Symbol 320 MovieClip Frame 2
play();
Symbol 322 MovieClip Frame 1
stop();
Symbol 322 MovieClip Frame 2
play();
Symbol 323 MovieClip Frame 1
stop();
Symbol 323 MovieClip Frame 2
stop();
Symbol 336 MovieClip Frame 1
stop();
Symbol 336 MovieClip Frame 2
stop();
Symbol 336 MovieClip Frame 3
stop();
Symbol 336 MovieClip Frame 4
stop();
Symbol 336 MovieClip Frame 5
stop();
Symbol 336 MovieClip Frame 6
stop();
Symbol 336 MovieClip Frame 7
stop();
Symbol 336 MovieClip Frame 8
stop();
Symbol 336 MovieClip Frame 9
stop();
Symbol 336 MovieClip Frame 10
stop();
Symbol 347 MovieClip Frame 1
stop();
Symbol 347 MovieClip Frame 2
stop();
Symbol 347 MovieClip Frame 3
stop();
Symbol 347 MovieClip Frame 4
stop();
Symbol 347 MovieClip Frame 5
stop();
Symbol 347 MovieClip Frame 6
stop();
Symbol 347 MovieClip Frame 7
stop();
Symbol 347 MovieClip Frame 8
stop();
Symbol 347 MovieClip Frame 9
stop();
Symbol 347 MovieClip Frame 10
stop();
Instance of Symbol 358 MovieClip in Symbol 359 MovieClip Frame 1
onClipEvent (enterFrame) { rad = 7; point = new Object(); point.x = _xmouse; point.y = _ymouse; updateAfterEvent(); var diffX = (point.x - this._x); var diffY = (point.y - this._y); var r = Math.sqrt((diffX * diffX) + (diffY * diffY)); if (r > rad) { r = rad; } this.black._x = r * Math.cos(Math.atan2(diffY, diffX)); this.black._y = r * Math.sin(Math.atan2(diffY, diffX)); }
Symbol 376 MovieClip Frame 1
stop();
Symbol 376 MovieClip Frame 2
stop();
Symbol 376 MovieClip Frame 3
stop();
Symbol 376 MovieClip Frame 4
stop();
Symbol 376 MovieClip Frame 5
stop();
Symbol 376 MovieClip Frame 6
stop();
Symbol 376 MovieClip Frame 7
stop();
Symbol 376 MovieClip Frame 8
stop();
Symbol 376 MovieClip Frame 9
stop();
Symbol 376 MovieClip Frame 10
stop();
Symbol 394 Button
on (press) { _global.myRoot.gamePaused = false; _global.myRoot.timerOn = true; _global.myRoot.fg.pauseGame.play(); _global.myRoot.fg.pausedMenu.play(); }
Symbol 397 Button
on (press) { _global.myRoot.quit = true; }
Symbol 399 MovieClip Frame 1
stop();
Symbol 399 MovieClip Frame 2
play();
Symbol 399 MovieClip Frame 10
stop();
Symbol 399 MovieClip Frame 11
play();
Symbol 402 MovieClip Frame 1
stop();
Symbol 402 MovieClip Frame 2
play();
Symbol 402 MovieClip Frame 50
stop();
Symbol 405 MovieClip Frame 1
stop();
Symbol 405 MovieClip Frame 2
play();
Symbol 405 MovieClip Frame 50
stop();
Symbol 409 MovieClip Frame 1
stop();
Symbol 409 MovieClip Frame 2
play();
Symbol 412 MovieClip Frame 1
stop();
Symbol 412 MovieClip Frame 2
play();
Symbol 412 MovieClip Frame 11
gotoAndStop (1);
Symbol 415 MovieClip Frame 1
stop();
Symbol 415 MovieClip Frame 2
play();
Symbol 415 MovieClip Frame 11
gotoAndStop (1);
Symbol 418 MovieClip Frame 1
stop();
Symbol 418 MovieClip Frame 2
play();
Symbol 421 MovieClip Frame 1
stop();
Symbol 421 MovieClip Frame 2
play();
Symbol 424 MovieClip Frame 1
stop();
Symbol 424 MovieClip Frame 2
play();
Symbol 427 MovieClip Frame 1
stop();
Symbol 427 MovieClip Frame 2
play();
Symbol 430 MovieClip Frame 1
stop();
Symbol 430 MovieClip Frame 2
play();
Symbol 433 MovieClip Frame 1
stop();
Symbol 433 MovieClip Frame 2
play();
Symbol 436 MovieClip Frame 1
stop();
Symbol 436 MovieClip Frame 2
play();
Symbol 439 MovieClip Frame 1
stop();
Symbol 439 MovieClip Frame 2
play();
Symbol 442 MovieClip Frame 1
stop();
Symbol 442 MovieClip Frame 2
play();
Symbol 445 MovieClip Frame 1
stop();
Symbol 445 MovieClip Frame 2
play();
Symbol 448 MovieClip Frame 1
stop();
Symbol 448 MovieClip Frame 2
play();
Symbol 451 MovieClip Frame 1
stop();
Symbol 451 MovieClip Frame 2
play();
Symbol 451 MovieClip Frame 11
gotoAndStop (1);
Symbol 454 MovieClip Frame 1
stop();
Symbol 454 MovieClip Frame 2
play();
Symbol 457 MovieClip Frame 1
stop();
Symbol 457 MovieClip Frame 2
play();
Symbol 461 MovieClip Frame 1
stop();
Symbol 461 MovieClip Frame 2
stop();
Symbol 466 MovieClip Frame 1
stop();
Symbol 466 MovieClip Frame 2
stop();
Symbol 466 MovieClip Frame 3
stop();
Symbol 468 MovieClip Frame 1
play();
Symbol 468 MovieClip Frame 11
stop();
Symbol 468 MovieClip Frame 12
play();
Symbol 483 MovieClip Frame 1
stop();
Instance of Symbol 481 MovieClip in Symbol 483 MovieClip Frame 1
on (press) { }
Symbol 483 MovieClip Frame 2
stop();
Symbol 484 MovieClip Frame 1
play();
Symbol 484 MovieClip Frame 11
stop();
Symbol 484 MovieClip Frame 12
play();
Symbol 504 MovieClip Frame 1
stop();
Symbol 504 MovieClip Frame 2
play();
Symbol 504 MovieClip Frame 19
_global.myRoot.score = _global.myRoot.score + 10; _global.myRoot.starsCollected++;
Symbol 504 MovieClip Frame 20
stop();
Symbol 527 MovieClip Frame 1
stop();
Symbol 527 MovieClip Frame 2
stop();
Symbol 527 MovieClip Frame 3
stop();
Symbol 527 MovieClip Frame 4
stop();
Symbol 532 MovieClip Frame 1
stop();
Symbol 532 MovieClip Frame 2
stop();
Symbol 532 MovieClip Frame 3
stop();
Symbol 532 MovieClip Frame 4
stop();
Symbol 537 MovieClip Frame 1
stop();
Symbol 537 MovieClip Frame 2
stop();
Symbol 537 MovieClip Frame 3
stop();
Symbol 537 MovieClip Frame 4
stop();
Symbol 542 MovieClip Frame 1
stop();
Symbol 542 MovieClip Frame 2
stop();
Symbol 542 MovieClip Frame 3
stop();
Symbol 542 MovieClip Frame 4
stop();
Symbol 558 MovieClip Frame 1
stop();
Symbol 558 MovieClip Frame 2
stop();
Symbol 573 MovieClip Frame 1
stop();
Symbol 573 MovieClip Frame 2
stop();
Symbol 573 MovieClip Frame 3
stop();
Symbol 573 MovieClip Frame 4
stop();
Symbol 573 MovieClip Frame 5
gotoAndStop (2);
Symbol 634 MovieClip Frame 1
stop();
Symbol 634 MovieClip Frame 2
play();
Symbol 634 MovieClip Frame 31
stop();
Symbol 643 MovieClip Frame 1
stop();
Symbol 643 MovieClip Frame 2
play();
Symbol 643 MovieClip Frame 9
gotoAndPlay (2);
Symbol 644 MovieClip Frame 1
stop();
Symbol 644 MovieClip Frame 2
play();
Symbol 665 MovieClip Frame 1
stop();
Symbol 665 MovieClip Frame 2
stop();
Symbol 665 MovieClip Frame 3
stop();
Symbol 669 MovieClip Frame 1
stop();
Symbol 669 MovieClip Frame 2
stop();
Symbol 669 MovieClip Frame 3
stop();
Symbol 673 MovieClip Frame 1
stop();
Symbol 673 MovieClip Frame 2
stop();
Symbol 673 MovieClip Frame 3
stop();
Symbol 677 MovieClip Frame 1
stop();
Symbol 677 MovieClip Frame 2
stop();
Symbol 677 MovieClip Frame 3
stop();
Symbol 693 MovieClip Frame 1
stop();
Symbol 693 MovieClip Frame 2
play();
Symbol 693 MovieClip Frame 10
stop();
Symbol 693 MovieClip Frame 11
play();
Symbol 694 MovieClip Frame 1
stop();
Symbol 694 MovieClip Frame 2
play();
Symbol 694 MovieClip Frame 10
stop();
Symbol 694 MovieClip Frame 11
play();
Symbol 696 MovieClip Frame 1
stop();
Symbol 696 MovieClip Frame 2
play();
Symbol 696 MovieClip Frame 10
stop();
Symbol 696 MovieClip Frame 11
play();
Symbol 697 MovieClip Frame 1
stop();
Symbol 697 MovieClip Frame 2
stop();
Symbol 697 MovieClip Frame 3
stop();
Symbol 697 MovieClip Frame 4
stop();
Symbol 697 MovieClip Frame 5
stop();
Symbol 697 MovieClip Frame 6
stop();
Symbol 704 MovieClip Frame 1
stop();
Symbol 704 MovieClip Frame 2
stop();
Symbol 711 MovieClip Frame 1
stop();
Symbol 711 MovieClip Frame 2
stop();
Symbol 711 MovieClip Frame 3
stop();
Symbol 711 MovieClip Frame 4
stop();
Symbol 711 MovieClip Frame 5
gotoAndStop (2);
Symbol 745 MovieClip Frame 1
stop();
Symbol 745 MovieClip Frame 2
play();
Symbol 745 MovieClip Frame 36
stop();
Symbol 767 MovieClip Frame 1
stop();
Symbol 767 MovieClip Frame 2
play();
Symbol 767 MovieClip Frame 15
stop();
Symbol 778 MovieClip Frame 1
stop();
Symbol 778 MovieClip Frame 2
play();
Symbol 778 MovieClip Frame 15
stop();
Symbol 794 MovieClip Frame 1
stop();
Symbol 794 MovieClip Frame 2
play();
Symbol 800 MovieClip Frame 1
stop();
Symbol 800 MovieClip Frame 2
play();
Symbol 802 MovieClip Frame 1
stop();
Symbol 802 MovieClip Frame 2
stop();
Symbol 817 MovieClip Frame 1
stop();
Symbol 817 MovieClip Frame 2
stop();
Symbol 820 MovieClip Frame 1
stop();
Symbol 820 MovieClip Frame 2
stop();
Symbol 842 MovieClip Frame 1
stop();
Symbol 842 MovieClip Frame 2
play();
Symbol 842 MovieClip Frame 10
stop();
Symbol 842 MovieClip Frame 11
play();
Symbol 844 MovieClip Frame 1
stop();
Symbol 844 MovieClip Frame 2
play();
Symbol 844 MovieClip Frame 10
stop();
Symbol 844 MovieClip Frame 11
play();
Symbol 846 MovieClip Frame 1
stop();
Symbol 846 MovieClip Frame 2
play();
Symbol 846 MovieClip Frame 10
stop();
Symbol 846 MovieClip Frame 11
play();
Symbol 847 MovieClip Frame 1
stop();
Symbol 847 MovieClip Frame 2
stop();
Symbol 847 MovieClip Frame 3
stop();
Symbol 847 MovieClip Frame 4
stop();
Symbol 847 MovieClip Frame 5
stop();
Symbol 847 MovieClip Frame 6
stop();
Symbol 856 MovieClip Frame 1
stop();
Symbol 856 MovieClip Frame 2
stop();
Symbol 866 MovieClip Frame 1
stop();
Symbol 866 MovieClip Frame 2
stop();
Symbol 866 MovieClip Frame 3
stop();
Symbol 866 MovieClip Frame 4
stop();
Symbol 866 MovieClip Frame 5
stop();
Symbol 866 MovieClip Frame 6
stop();
Symbol 866 MovieClip Frame 7
gotoAndStop (2);
Symbol 875 MovieClip Frame 1
stop();
Symbol 875 MovieClip Frame 2
play();
Symbol 875 MovieClip Frame 15
stop();
Symbol 875 MovieClip Frame 16
play();
Symbol 875 MovieClip Frame 25
stop();
Symbol 875 MovieClip Frame 26
play();
Symbol 891 MovieClip Frame 1
stop();
Symbol 891 MovieClip Frame 2
stop();

Library Items

Symbol 2 GraphicUsed by:44
Symbol 3 GraphicUsed by:6
Symbol 4 GraphicUsed by:6
Symbol 5 GraphicUsed by:6
Symbol 6 ButtonUses:3 4 5Used by:44 72
Symbol 7 BitmapUsed by:8 67
Symbol 8 GraphicUses:7Used by:44
Symbol 9 FontUsed by:10
Symbol 10 EditableTextUses:9Used by:44
Symbol 11 GraphicUsed by:44
Symbol 12 GraphicUsed by:19
Symbol 13 FontUsed by:14 15
Symbol 14 EditableTextUses:13Used by:19
Symbol 15 EditableTextUses:13Used by:19
Symbol 16 FontUsed by:17 21 28 29 31 32 34 35 37 38 40 41 111 112 114 120 123 129 132 134 162 163 171 172
Symbol 17 EditableTextUses:16Used by:19
Symbol 18 GraphicUsed by:19
Symbol 19 MovieClipUses:12 14 15 17 18Used by:44
Symbol 20 GraphicUsed by:30 33 36 39 42 43
Symbol 21 EditableTextUses:16Used by:43
Symbol 22 GraphicUsed by:25 26
Symbol 23 GraphicUsed by:25 26
Symbol 24 GraphicUsed by:25 26
Symbol 25 ButtonUses:22 23 24Used by:43
Symbol 26 ButtonUses:22 23 24Used by:43
Symbol 27 GraphicUsed by:43
Symbol 28 TextUses:16Used by:30
Symbol 29 TextUses:16Used by:30
Symbol 30 ButtonUses:28 20 29Used by:43
Symbol 31 TextUses:16Used by:33
Symbol 32 TextUses:16Used by:33
Symbol 33 ButtonUses:31 20 32Used by:43
Symbol 34 TextUses:16Used by:36
Symbol 35 TextUses:16Used by:36
Symbol 36 ButtonUses:34 20 35Used by:43
Symbol 37 TextUses:16Used by:39
Symbol 38 TextUses:16Used by:39
Symbol 39 ButtonUses:37 20 38Used by:43
Symbol 40 TextUses:16Used by:42
Symbol 41 TextUses:16Used by:42
Symbol 42 ButtonUses:40 20 41Used by:43
Symbol 43 MovieClipUses:20 21 25 26 27 30 33 36 39 42Used by:44
Symbol 44 MovieClip [Score Board (NewgroundsAPI)]Uses:2 6 8 10 11 19 43Used by:Timeline
Symbol 66 GraphicUsed by:72
Symbol 67 GraphicUses:7Used by:72
Symbol 68 GraphicUsed by:72
Symbol 69 GraphicUsed by:72
Symbol 70 GraphicUsed by:71
Symbol 71 MovieClipUses:70Used by:72 113
Symbol 72 MovieClipUses:66 6 67 68 69 71Used by:73
Symbol 73 MovieClip [Flash Ad (NewgroundsAPI)]Uses:72Used by:Timeline
Symbol 75 GraphicUsed by:104 105
Symbol 76 GraphicUsed by:104 105
Symbol 77 GraphicUsed by:104 105
Symbol 78 GraphicUsed by:104 105
Symbol 79 GraphicUsed by:105
Symbol 80 GraphicUsed by:105
Symbol 81 GraphicUsed by:82
Symbol 82 MovieClipUses:81Used by:105
Symbol 83 GraphicUsed by:85
Symbol 84 GraphicUsed by:85
Symbol 85 MovieClipUses:83 84Used by:105
Symbol 86 GraphicUsed by:105
Symbol 87 GraphicUsed by:105
Symbol 88 GraphicUsed by:95 97
Symbol 89 GraphicUsed by:95 97
Symbol 90 GraphicUsed by:95 97
Symbol 91 GraphicUsed by:95 97
Symbol 92 GraphicUsed by:95 97
Symbol 93 GraphicUsed by:95 97
Symbol 94 GraphicUsed by:95 97
Symbol 95 MovieClipUses:88 89 90 91 92 93 94Used by:105
Symbol 96 GraphicUsed by:97
Symbol 97 MovieClipUses:88 89 90 91 92 93 94 96Used by:105
Symbol 98 ShapeTweeningUsed by:105
Symbol 99 GraphicUsed by:105
Symbol 100 GraphicUsed by:104
Symbol 101 GraphicUsed by:103
Symbol 102 GraphicUsed by:103
Symbol 103 MovieClipUses:101 102Used by:104
Symbol 104 ButtonUses:75 76 77 78 100 103Used by:105
Symbol 105 MovieClip [Preloader Bar (NewgroundsAPI)]Uses:75 76 77 78 79 80 82 85 86 87 95 97 98 99 104Used by:Timeline
Symbol 107 GraphicUsed by:113 115 175
Symbol 108 GraphicUsed by:113 115 175
Symbol 109 GraphicUsed by:113 115 175
Symbol 110 GraphicUsed by:113 115 175
Symbol 111 TextUses:16Used by:175
Symbol 112 TextUses:16Used by:113
Symbol 113 MovieClipUses:107 108 109 110 71 112Used by:175
Symbol 114 TextUses:16Used by:115
Symbol 115 MovieClipUses:107 108 109 110 114Used by:175
Symbol 116 GraphicUsed by:117
Symbol 117 MovieClipUses:116Used by:127 133 136
Symbol 118 GraphicUsed by:119 128 170
Symbol 119 MovieClip [NewgroundsAPIAsset_Medal_Icon_Placeholder]Uses:118Used by:127
Symbol 120 EditableTextUses:16Used by:127
Symbol 121 FontUsed by:122 135 168 173
Symbol 122 TextUses:121Used by:127
Symbol 123 EditableTextUses:16Used by:127
Symbol 124 Bitmap [NewgroundsAPIAsset_default_medal_icon_1]Used by:126
Symbol 125 Bitmap [NewgroundsAPIAsset_default_medal_icon_2]Used by:126
Symbol 126 GraphicUses:125 124Used by:127
Symbol 127 MovieClip [NewgroundsAPIAsset_Medal_Popup]Uses:117 119 120 122 123 126Used by:175
Symbol 128 ButtonUses:118Used by:169 175
Symbol 129 TextUses:16Used by:133
Symbol 130 BitmapUsed by:131
Symbol 131 GraphicUses:130Used by:133 136
Symbol 132 TextUses:16Used by:133
Symbol 133 MovieClip [NewgroundsAPIAsset_Login_Warning]Uses:117 129 131 132Used by:175
Symbol 134 TextUses:16Used by:136
Symbol 135 TextUses:121Used by:136
Symbol 136 MovieClip [NewgroundsAPIAsset_Connection_Error]Uses:117 134 135 131Used by:175
Symbol 137 GraphicUsed by:138
Symbol 138 MovieClipUses:137Used by:157
Symbol 139 GraphicUsed by:140
Symbol 140 MovieClipUses:139Used by:157
Symbol 141 GraphicUsed by:142
Symbol 142 MovieClipUses:141Used by:157
Symbol 143 GraphicUsed by:144
Symbol 144 MovieClipUses:143Used by:157
Symbol 145 GraphicUsed by:146
Symbol 146 MovieClipUses:145Used by:157
Symbol 147 GraphicUsed by:148
Symbol 148 MovieClipUses:147Used by:157
Symbol 149 GraphicUsed by:150
Symbol 150 MovieClipUses:149Used by:157
Symbol 151 GraphicUsed by:152
Symbol 152 MovieClipUses:151Used by:157
Symbol 153 GraphicUsed by:154
Symbol 154 MovieClipUses:153Used by:157
Symbol 155 GraphicUsed by:156
Symbol 156 MovieClipUses:155Used by:157
Symbol 157 MovieClip [NewgroundsAPIAsset_big_popup_background]Uses:138 140 142 144 146 148 150 152 154 156Used by:169 174
Symbol 158 GraphicUsed by:169
Symbol 159 GraphicUsed by:161
Symbol 160 GraphicUsed by:161
Symbol 161 ButtonUses:159 160Used by:169
Symbol 162 TextUses:16Used by:169
Symbol 163 TextUses:16Used by:169
Symbol 164 GraphicUsed by:167
Symbol 165 GraphicUsed by:167
Symbol 166 GraphicUsed by:167
Symbol 167 ButtonUses:164 165 166Used by:169 174
Symbol 168 TextUses:121Used by:169
Symbol 169 MovieClip [NewgroundsAsset_New_Version_Available]Uses:128 157 158 161 162 163 167 168Used by:175
Symbol 170 ButtonUses:118Used by:174
Symbol 171 TextUses:16Used by:174
Symbol 172 TextUses:16Used by:174
Symbol 173 TextUses:121Used by:174
Symbol 174 MovieClip [NewgroundsAsset_Illegal_Host]Uses:170 157 171 172 167 173Used by:175
Symbol 175 MovieClip [API Connector (NewgroundsAPI)]Uses:107 108 109 110 111 113 115 127 128 133 136 169 174Used by:Timeline
Symbol 176 Bitmap [NewgroundsAPIAsset_default_medal_icon_3]
Symbol 177 Bitmap [NewgroundsAPIAsset_default_medal_icon_4]
Symbol 178 Bitmap [NewgroundsAPIAsset_default_medal_icon_5]
Symbol 179 GraphicUsed by:180 188 189 389 693 694 696
Symbol 180 MovieClipUses:179Used by:Timeline
Symbol 47 MovieClip [__Packages.com.newgrounds.API]
Symbol 48 MovieClip [__Packages.com.newgrounds.Bridge]
Symbol 49 MovieClip [__Packages.com.newgrounds.SaveFile]
Symbol 50 MovieClip [__Packages.com.newgrounds.SaveGroup]
Symbol 52 MovieClip [__Packages.com.newgrounds.SaveGroupQuery]
Symbol 54 MovieClip [__Packages.com.newgrounds.encoders.ImageScanner]
Symbol 53 MovieClip [__Packages.com.newgrounds.encoders.BaseN]
Symbol 62 MovieClip [__Packages.com.newgrounds.APIEventDispatcher]
Symbol 45 MovieClip [__Packages.com.newgrounds.APIEvent]
Symbol 59 MovieClip [__Packages.com.newgrounds.ScoreBoard]
Symbol 46 MovieClip [__Packages.com.newgrounds.APIError]
Symbol 1 MovieClip [__Packages.com.newgrounds.components.ScoreTable]
Symbol 51 MovieClip [__Packages.com.newgrounds.ValidationTools]
Symbol 55 MovieClip [__Packages.com.newgrounds.encoders.SerialXML]
Symbol 56 MovieClip [__Packages.com.newgrounds.encoders.LZW2]
Symbol 57 MovieClip [__Packages.com.newgrounds.encoders.LZW]
Symbol 58 MovieClip [__Packages.com.newgrounds.Medal]
Symbol 60 MovieClip [__Packages.com.newgrounds.encoders.RC4]
Symbol 61 MovieClip [__Packages.com.newgrounds.encoders.JSON]
Symbol 63 MovieClip [__Packages.com.newgrounds.encoders.MD5]
Symbol 64 MovieClip [__Packages.com.newgrounds.Score]
Symbol 65 MovieClip [__Packages.com.newgrounds.components.FlashAd]
Symbol 74 MovieClip [__Packages.com.newgrounds.components.PreloaderBar]
Symbol 106 MovieClip [__Packages.com.newgrounds.components.APIConnector]
Symbol 181 GraphicUsed by:182
Symbol 182 MovieClipUses:181Used by:188
Symbol 183 FontUsed by:184 185 187
Symbol 184 TextUses:183Used by:186
Symbol 185 TextUses:183Used by:186
Symbol 186 MovieClipUses:184 185Used by:188
Symbol 187 TextUses:183Used by:188
Symbol 188 ButtonUses:182 186 187 179Used by:Timeline
Symbol 189 MovieClipUses:179Used by:399 468 484  Timeline
Symbol 190 SoundUsed by:Timeline
Symbol 191 GraphicUsed by:198 469
Symbol 192 GraphicUsed by:193
Symbol 193 MovieClipUses:192Used by:196
Symbol 194 GraphicUsed by:195 218 305 631 690 695 836
Symbol 195 MovieClipUses:194Used by:196
Symbol 196 MovieClipUses:193 195Used by:198 469
Symbol 197 GraphicUsed by:198 469
Symbol 198 MovieClipUses:191 196 197Used by:Timeline
Symbol 199 GraphicUsed by:200
Symbol 200 MovieClipUses:199Used by:201
Symbol 201 MovieClipUses:200Used by:204
Symbol 202 GraphicUsed by:203
Symbol 203 MovieClipUses:202Used by:204
Symbol 204 MovieClipUses:201 203Used by:Timeline
Symbol 205 GraphicUsed by:206
Symbol 206 MovieClipUses:205Used by:207
Symbol 207 MovieClipUses:206Used by:Timeline
Symbol 208 GraphicUsed by:209
Symbol 209 MovieClipUses:208Used by:809  Timeline
Symbol 210 GraphicUsed by:211
Symbol 211 MovieClipUses:210Used by:219 875
Symbol 212 GraphicUsed by:213
Symbol 213 MovieClipUses:212Used by:219 875
Symbol 214 GraphicUsed by:215
Symbol 215 MovieClipUses:214Used by:219 875
Symbol 216 GraphicUsed by:217
Symbol 217 MovieClipUses:216Used by:219 875
Symbol 218 MovieClipUses:194Used by:219 875
Symbol 219 MovieClipUses:211 213 215 217 218Used by:Timeline
Symbol 220 GraphicUsed by:221
Symbol 221 MovieClipUses:220Used by:228 232
Symbol 222 GraphicUsed by:223
Symbol 223 MovieClipUses:222Used by:228
Symbol 224 GraphicUsed by:225
Symbol 225 MovieClipUses:224Used by:228 232
Symbol 226 GraphicUsed by:227
Symbol 227 MovieClipUses:226Used by:228 232
Symbol 228 MovieClipUses:221 223 225 227Used by:229
Symbol 229 MovieClipUses:228Used by:Timeline
Symbol 230 GraphicUsed by:231
Symbol 231 MovieClipUses:230Used by:232
Symbol 232 MovieClipUses:221 231 225 227Used by:235
Symbol 233 GraphicUsed by:234
Symbol 234 ButtonUses:233Used by:235
Symbol 235 MovieClipUses:232 234Used by:Timeline
Symbol 236 GraphicUsed by:252 271 323 481 697 847
Symbol 237 GraphicUsed by:238
Symbol 238 MovieClipUses:237Used by:249 251
Symbol 239 GraphicUsed by:242
Symbol 240 GraphicUsed by:241
Symbol 241 MovieClipUses:240Used by:242
Symbol 242 MovieClipUses:239 241Used by:249 251
Symbol 243 GraphicUsed by:244
Symbol 244 MovieClipUses:243Used by:249 251
Symbol 245 GraphicUsed by:248 250
Symbol 246 GraphicUsed by:248 250
Symbol 247 GraphicUsed by:248 250
Symbol 248 MovieClipUses:245 246 247Used by:249
Symbol 249 MovieClipUses:238 242 244 248Used by:252
Symbol 250 MovieClipUses:245 247 246Used by:251
Symbol 251 MovieClipUses:238 242 244 250Used by:252
Symbol 252 MovieClipUses:236 249 251Used by:Timeline
Symbol 253 GraphicUsed by:257 265 269
Symbol 254 GraphicUsed by:255
Symbol 255 MovieClipUses:254Used by:257 265 269
Symbol 256 GraphicUsed by:257 265 269
Symbol 257 MovieClipUses:253 255 256Used by:264
Symbol 258 GraphicUsed by:259
Symbol 259 MovieClipUses:258Used by:264 266 270
Symbol 260 GraphicUsed by:261
Symbol 261 MovieClipUses:260Used by:264 266 270
Symbol 262 GraphicUsed by:263 318
Symbol 263 MovieClipUses:262Used by:264 266 270
Symbol 264 MovieClipUses:257 259 261 263Used by:271
Symbol 265 MovieClipUses:253 255 256Used by:266
Symbol 266 MovieClipUses:265 259 261 263Used by:271
Symbol 267 GraphicUsed by:268
Symbol 268 MovieClipUses:267Used by:269
Symbol 269 MovieClipUses:253 255 268 256Used by:270
Symbol 270 MovieClipUses:269 259 261 263Used by:271
Symbol 271 MovieClipUses:236 264 266 270Used by:Timeline
Symbol 272 GraphicUsed by:273
Symbol 273 MovieClipUses:272Used by:278 283
Symbol 274 GraphicUsed by:275
Symbol 275 MovieClipUses:274Used by:278
Symbol 276 GraphicUsed by:277
Symbol 277 MovieClipUses:276Used by:278
Symbol 278 MovieClipUses:273 275 277Used by:285
Symbol 279 GraphicUsed by:280
Symbol 280 MovieClipUses:279Used by:283
Symbol 281 GraphicUsed by:282
Symbol 282 MovieClipUses:281Used by:283
Symbol 283 MovieClipUses:273 280 282Used by:284
Symbol 284 MovieClipUses:283Used by:285
Symbol 285 MovieClipUses:278 284Used by:Timeline
Symbol 286 GraphicUsed by:287 292 296 300 304 883 885 897
Symbol 287 MovieClipUses:286Used by:292 296 300 304 883 885 897
Symbol 288 GraphicUsed by:289 292 883 885 897
Symbol 289 MovieClipUses:288Used by:292 883 885 897
Symbol 290 FontUsed by:291 295 299 303 391 392 395 400 403 478 514 517 520 545 553 556 699 702 849 853 854 882 884 888 890 895 896 898 899 900
Symbol 291 TextUses:290Used by:292
Symbol 292 ButtonUses:287 289 291 286 288Used by:Timeline
Symbol 293 GraphicUsed by:294 296
Symbol 294 MovieClipUses:293Used by:296
Symbol 295 TextUses:290Used by:296
Symbol 296 ButtonUses:287 294 295 286 293Used by:Timeline
Symbol 297 GraphicUsed by:298 300
Symbol 298 MovieClipUses:297Used by:300
Symbol 299 TextUses:290Used by:300
Symbol 300 ButtonUses:287 298 299 286 297Used by:Timeline
Symbol 301 GraphicUsed by:302 304
Symbol 302 MovieClipUses:301Used by:304
Symbol 303 TextUses:290Used by:304
Symbol 304 ButtonUses:287 302 303 286 301Used by:Timeline
Symbol 305 MovieClipUses:194Used by:313
Symbol 306 GraphicUsed by:307
Symbol 307 MovieClipUses:306Used by:313
Symbol 308 GraphicUsed by:312
Symbol 309 GraphicUsed by:310
Symbol 310 MovieClipUses:309Used by:312
Symbol 311 GraphicUsed by:312
Symbol 312 MovieClipUses:308 310 311Used by:313
Symbol 313 MovieClipUses:305 307 312Used by:320 322
Symbol 314 GraphicUsed by:315 321
Symbol 315 MovieClipUses:314Used by:319
Symbol 316 GraphicUsed by:317
Symbol 317 MovieClipUses:316Used by:319 321
Symbol 318 MovieClipUses:262Used by:319 321
Symbol 319 MovieClipUses:315 317 318Used by:320
Symbol 320 MovieClipUses:313 319Used by:323
Symbol 321 MovieClipUses:314 317 318Used by:322
Symbol 322 MovieClipUses:313 321Used by:323
Symbol 323 MovieClipUses:236 320 322Used by:Timeline
Symbol 324 GraphicUsed by:336
Symbol 325 GraphicUsed by:336
Symbol 326 GraphicUsed by:327
Symbol 327 MovieClipUses:326Used by:336
Symbol 328 GraphicUsed by:336
Symbol 329 GraphicUsed by:336
Symbol 330 GraphicUsed by:336
Symbol 331 GraphicUsed by:336
Symbol 332 GraphicUsed by:336
Symbol 333 GraphicUsed by:336
Symbol 334 GraphicUsed by:336
Symbol 335 GraphicUsed by:336
Symbol 336 MovieClipUses:324 325 327 328 329 330 331 332 333 334 335Used by:377
Symbol 337 GraphicUsed by:347
Symbol 338 GraphicUsed by:347
Symbol 339 GraphicUsed by:347
Symbol 340 GraphicUsed by:347
Symbol 341 GraphicUsed by:347
Symbol 342 GraphicUsed by:347
Symbol 343 GraphicUsed by:347
Symbol 344 GraphicUsed by:347
Symbol 345 GraphicUsed by:347
Symbol 346 GraphicUsed by:347
Symbol 347 MovieClipUses:337 338 339 340 341 342 343 344 345 346Used by:377
Symbol 348 GraphicUsed by:349
Symbol 349 MovieClipUses:348Used by:376
Symbol 350 GraphicUsed by:376
Symbol 351 GraphicUsed by:352
Symbol 352 MovieClipUses:351Used by:376
Symbol 353 GraphicUsed by:354
Symbol 354 MovieClipUses:353Used by:376
Symbol 355 GraphicUsed by:359
Symbol 356 GraphicUsed by:357
Symbol 357 MovieClipUses:356Used by:358
Symbol 358 MovieClipUses:357Used by:359
Symbol 359 MovieClipUses:355 358Used by:376
Symbol 360 GraphicUsed by:376
Symbol 361 GraphicUsed by:376
Symbol 362 GraphicUsed by:376
Symbol 363 GraphicUsed by:376
Symbol 364 GraphicUsed by:376
Symbol 365 GraphicUsed by:376
Symbol 366 GraphicUsed by:376
Symbol 367 GraphicUsed by:376
Symbol 368 GraphicUsed by:376
Symbol 369 GraphicUsed by:376
Symbol 370 GraphicUsed by:376
Symbol 371 GraphicUsed by:376
Symbol 372 GraphicUsed by:376
Symbol 373 GraphicUsed by:376
Symbol 374 GraphicUsed by:376
Symbol 375 GraphicUsed by:376
Symbol 376 MovieClipUses:349 350 352 354 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375Used by:377
Symbol 377 MovieClipUses:336 347 376Used by:378
Symbol 378 MovieClipUses:377Used by:Timeline
Symbol 379 FontUsed by:380 381 383 384 386 387 388 491 493 495 498 505 551 579 582 588 594 598 602 606 610 649 716 719 720 724 728 732 780 873 874 880 881
Symbol 380 TextUses:379Used by:Timeline
Symbol 381 TextUses:379Used by:Timeline
Symbol 382 GraphicUsed by:385
Symbol 383 TextUses:379Used by:385
Symbol 384 TextUses:379Used by:385
Symbol 385 ButtonUses:382 383 384Used by:Timeline
Symbol 386 TextUses:379Used by:Timeline
Symbol 387 TextUses:379Used by:389
Symbol 388 TextUses:379Used by:389
Symbol 389 ButtonUses:387 388 179Used by:Timeline
Symbol 390 GraphicUsed by:398
Symbol 391 TextUses:290Used by:398
Symbol 392 TextUses:290Used by:394
Symbol 393 GraphicUsed by:394
Symbol 394 ButtonUses:392 393Used by:398
Symbol 395 TextUses:290Used by:397
Symbol 396 GraphicUsed by:397
Symbol 397 ButtonUses:395 396Used by:398
Symbol 398 MovieClipUses:390 391 394 397Used by:399
Symbol 399 MovieClipUses:189 398Used by:468 484
Symbol 400 TextUses:290Used by:401
Symbol 401 MovieClipUses:400Used by:402
Symbol 402 MovieClipUses:401Used by:468
Symbol 403 TextUses:290Used by:404
Symbol 404 MovieClipUses:403Used by:405
Symbol 405 MovieClipUses:404Used by:468 484
Symbol 406 FontUsed by:407 410 413 416 419 422 425 428 431 434 437 440 443 446 449 452 455
Symbol 407 TextUses:406Used by:409
Symbol 408 SoundUsed by:409
Symbol 409 MovieClipUses:407 408Used by:458
Symbol 410 TextUses:406Used by:412
Symbol 411 SoundUsed by:412
Symbol 412 MovieClipUses:410 411Used by:458
Symbol 413 TextUses:406Used by:415
Symbol 414 SoundUsed by:415
Symbol 415 MovieClipUses:413 414Used by:458
Symbol 416 TextUses:406Used by:418
Symbol 417 SoundUsed by:418
Symbol 418 MovieClipUses:416 417Used by:458
Symbol 419 TextUses:406Used by:421
Symbol 420 SoundUsed by:421
Symbol 421 MovieClipUses:419 420Used by:458
Symbol 422 TextUses:406Used by:424
Symbol 423 SoundUsed by:424
Symbol 424 MovieClipUses:422 423Used by:458
Symbol 425 TextUses:406Used by:427
Symbol 426 SoundUsed by:427
Symbol 427 MovieClipUses:425 426Used by:458
Symbol 428 TextUses:406Used by:430
Symbol 429 SoundUsed by:430
Symbol 430 MovieClipUses:428 429Used by:458
Symbol 431 TextUses:406Used by:433
Symbol 432 SoundUsed by:433
Symbol 433 MovieClipUses:431 432Used by:458
Symbol 434 TextUses:406Used by:436
Symbol 435 SoundUsed by:436
Symbol 436 MovieClipUses:434 435Used by:458
Symbol 437 TextUses:406Used by:439
Symbol 438 SoundUsed by:439
Symbol 439 MovieClipUses:437 438Used by:458
Symbol 440 TextUses:406Used by:442
Symbol 441 SoundUsed by:442
Symbol 442 MovieClipUses:440 441Used by:458
Symbol 443 TextUses:406Used by:445
Symbol 444 SoundUsed by:445
Symbol 445 MovieClipUses:443 444Used by:458
Symbol 446 TextUses:406Used by:448
Symbol 447 SoundUsed by:448
Symbol 448 MovieClipUses:446 447Used by:458
Symbol 449 TextUses:406Used by:451
Symbol 450 SoundUsed by:451
Symbol 451 MovieClipUses:449 450Used by:458
Symbol 452 TextUses:406Used by:454
Symbol 453 SoundUsed by:454
Symbol 454 MovieClipUses:452 453Used by:458
Symbol 455 TextUses:406Used by:457
Symbol 456 SoundUsed by:457 891
Symbol 457 MovieClipUses:455 456Used by:458
Symbol 458 MovieClipUses:409 412 415 418 421 424 427 430 433 436 439 442 445 448 451 454 457Used by:468 484
Symbol 459 GraphicUsed by:461
Symbol 460 GraphicUsed by:461
Symbol 461 MovieClipUses:459 460Used by:468 484
Symbol 462 GraphicUsed by:466
Symbol 463 GraphicUsed by:466
Symbol 464 GraphicUsed by:466
Symbol 465 GraphicUsed by:466
Symbol 466 MovieClipUses:462 463 464 465Used by:468 484
Symbol 467 GraphicUsed by:468 484
Symbol 468 MovieClipUses:399 402 405 458 461 466 189 467Used by:Timeline
Symbol 469 MovieClipUses:191 196 197Used by:Timeline
Symbol 470 GraphicUsed by:471
Symbol 471 MovieClipUses:470Used by:Timeline
Symbol 472 GraphicUsed by:473
Symbol 473 MovieClipUses:472Used by:Timeline
Symbol 474 FontUsed by:475 477
Symbol 475 TextUses:474Used by:477
Symbol 476 TextUsed by:477
Symbol 477 MovieClipUses:474 475 476Used by:Timeline
Symbol 478 EditableTextUses:290Used by:484
Symbol 479 GraphicUsed by:480
Symbol 480 MovieClipUses:479Used by:481 482
Symbol 481 MovieClipUses:480 236Used by:483
Symbol 482 MovieClipUses:480Used by:483
Symbol 483 MovieClipUses:481 482Used by:484
Symbol 484 MovieClipUses:478 461 466 483 399 405 458 189 467Used by:Timeline
Symbol 485 SoundUsed by:Timeline
Symbol 486 GraphicUsed by:487
Symbol 487 MovieClipUses:486Used by:488
Symbol 488 MovieClipUses:487Used by:Timeline
Symbol 489 GraphicUsed by:490
Symbol 490 MovieClipUses:489Used by:492
Symbol 491 TextUses:379Used by:492
Symbol 492 MovieClipUses:490 491Used by:Timeline
Symbol 493 TextUses:379Used by:Timeline
Symbol 494 GraphicUsed by:496
Symbol 495 TextUses:379Used by:496
Symbol 496 MovieClipUses:494 495Used by:497
Symbol 497 MovieClipUses:496Used by:Timeline
Symbol 498 TextUses:379Used by:Timeline
Symbol 499 GraphicUsed by:500
Symbol 500 MovieClipUses:499Used by:Timeline
Symbol 501 GraphicUsed by:502
Symbol 502 MovieClipUses:501Used by:503
Symbol 503 MovieClipUses:502Used by:504
Symbol 504 MovieClipUses:503Used by:Timeline
Symbol 505 TextUses:379Used by:Timeline
Symbol 506 GraphicUsed by:507
Symbol 507 MovieClipUses:506Used by:508
Symbol 508 MovieClipUses:507Used by:Timeline
Symbol 509 GraphicUsed by:510
Symbol 510 MovieClipUses:509Used by:511
Symbol 511 MovieClipUses:510Used by:Timeline
Symbol 512 GraphicUsed by:513
Symbol 513 MovieClipUses:512Used by:515 518 521 546
Symbol 514 TextUses:290Used by:515
Symbol 515 MovieClipUses:513 514Used by:516
Symbol 516 MovieClipUses:515Used by:Timeline
Symbol 517 TextUses:290Used by:518
Symbol 518 MovieClipUses:513 517Used by:519
Symbol 519 MovieClipUses:518Used by:Timeline
Symbol 520 TextUses:290Used by:521
Symbol 521 MovieClipUses:513 520Used by:522
Symbol 522 MovieClipUses:521Used by:Timeline
Symbol 523 GraphicUsed by:527
Symbol 524 GraphicUsed by:527
Symbol 525 GraphicUsed by:527
Symbol 526 GraphicUsed by:527
Symbol 527 MovieClipUses:523 524 525 526Used by:543
Symbol 528 GraphicUsed by:532
Symbol 529 GraphicUsed by:532
Symbol 530 GraphicUsed by:532
Symbol 531 GraphicUsed by:532
Symbol 532 MovieClipUses:528 529 530 531Used by:543
Symbol 533 GraphicUsed by:537
Symbol 534 GraphicUsed by:537
Symbol 535 GraphicUsed by:537
Symbol 536 GraphicUsed by:537
Symbol 537 MovieClipUses:533 534 535 536Used by:543
Symbol 538 GraphicUsed by:542
Symbol 539 GraphicUsed by:542
Symbol 540 GraphicUsed by:542
Symbol 541 GraphicUsed by:542
Symbol 542 MovieClipUses:538 539 540 541Used by:543
Symbol 543 MovieClipUses:527 532 537 542Used by:544
Symbol 544 MovieClipUses:543Used by:Timeline
Symbol 545 TextUses:290Used by:546
Symbol 546 MovieClipUses:513 545Used by:547
Symbol 547 MovieClipUses:546Used by:Timeline
Symbol 548 GraphicUsed by:549
Symbol 549 MovieClipUses:548Used by:550
Symbol 550 MovieClipUses:549Used by:Timeline
Symbol 551 TextUses:379Used by:Timeline
Symbol 552 GraphicUsed by:554
Symbol 553 TextUses:290Used by:554
Symbol 554 MovieClipUses:552 553Used by:558
Symbol 555 GraphicUsed by:557
Symbol 556 TextUses:290Used by:557
Symbol 557 MovieClipUses:555 556Used by:558
Symbol 558 MovieClipUses:554 557Used by:Timeline
Symbol 559 GraphicUsed by:560
Symbol 560 MovieClipUses:559Used by:562 565 568 571 706 709 858 861 864
Symbol 561 GraphicUsed by:562
Symbol 562 MovieClipUses:560 561Used by:563
Symbol 563 MovieClipUses:562Used by:573 711 866
Symbol 564 GraphicUsed by:565
Symbol 565 MovieClipUses:560 564Used by:566
Symbol 566 MovieClipUses:565Used by:573
Symbol 567 GraphicUsed by:568
Symbol 568 MovieClipUses:560 567Used by:569
Symbol 569 MovieClipUses:568Used by:573 711 866
Symbol 570 GraphicUsed by:571
Symbol 571 MovieClipUses:560 570Used by:572
Symbol 572 MovieClipUses:571Used by:573
Symbol 573 MovieClipUses:563 566 569 572Used by:Timeline
Symbol 574 GraphicUsed by:575
Symbol 575 MovieClipUses:574Used by:576
Symbol 576 MovieClipUses:575Used by:Timeline
Symbol 577 GraphicUsed by:578
Symbol 578 MovieClipUses:577Used by:580 583
Symbol 579 TextUses:379Used by:580
Symbol 580 MovieClipUses:578 579Used by:581
Symbol 581 MovieClipUses:580Used by:Timeline
Symbol 582 TextUses:379Used by:583
Symbol 583 MovieClipUses:578 582Used by:584
Symbol 584 MovieClipUses:583Used by:Timeline
Symbol 585 GraphicUsed by:586
Symbol 586 MovieClipUses:585Used by:587
Symbol 587 MovieClipUses:586Used by:Timeline
Symbol 588 TextUses:379Used by:Timeline
Symbol 589 GraphicUsed by:590
Symbol 590 MovieClipUses:589Used by:591
Symbol 591 MovieClipUses:590Used by:Timeline
Symbol 592 GraphicUsed by:593 597 601 605 609 723 727 731 735
Symbol 593 MovieClipUses:592Used by:595 599 603 607 721 725 729 733
Symbol 594 TextUses:379Used by:595 597
Symbol 595 MovieClipUses:593 594Used by:596
Symbol 596 MovieClipUses:595Used by:597
Symbol 597 ButtonUses:596 592 594Used by:Timeline
Symbol 598 TextUses:379Used by:599 601
Symbol 599 MovieClipUses:593 598Used by:600
Symbol 600 MovieClipUses:599Used by:601
Symbol 601 ButtonUses:600 592 598Used by:Timeline
Symbol 602 TextUses:379Used by:603 605
Symbol 603 MovieClipUses:593 602Used by:604
Symbol 604 MovieClipUses:603Used by:605
Symbol 605 ButtonUses:604 592 602Used by:Timeline
Symbol 606 TextUses:379Used by:607 609
Symbol 607 MovieClipUses:593 606Used by:608
Symbol 608 MovieClipUses:607Used by:609
Symbol 609 ButtonUses:608 592 606Used by:Timeline
Symbol 610 TextUses:379Used by:Timeline
Symbol 611 GraphicUsed by:Timeline
Symbol 612 GraphicUsed by:613
Symbol 613 MovieClipUses:612Used by:Timeline
Symbol 614 GraphicUsed by:615
Symbol 615 MovieClipUses:614Used by:634
Symbol 616 GraphicUsed by:617
Symbol 617 MovieClipUses:616Used by:634
Symbol 618 GraphicUsed by:619 620
Symbol 619 MovieClipUses:618Used by:634
Symbol 620 MovieClipUses:618Used by:634
Symbol 621 GraphicUsed by:622
Symbol 622 MovieClipUses:621Used by:634
Symbol 623 GraphicUsed by:624
Symbol 624 MovieClipUses:623Used by:634
Symbol 625 GraphicUsed by:626
Symbol 626 MovieClipUses:625Used by:634
Symbol 627 GraphicUsed by:628
Symbol 628 MovieClipUses:627Used by:634
Symbol 629 GraphicUsed by:630
Symbol 630 MovieClipUses:629Used by:634
Symbol 631 MovieClipUses:194Used by:634
Symbol 632 GraphicUsed by:633
Symbol 633 MovieClipUses:632Used by:634
Symbol 634 MovieClipUses:615 617 619 620 622 624 626 628 630 631 633Used by:Timeline
Symbol 635 GraphicUsed by:636
Symbol 636 MovieClipUses:635Used by:Timeline
Symbol 637 GraphicUsed by:638
Symbol 638 MovieClipUses:637Used by:640
Symbol 639 GraphicUsed by:640
Symbol 640 MovieClipUses:638 639Used by:643
Symbol 641 GraphicUsed by:642
Symbol 642 MovieClipUses:641Used by:643
Symbol 643 MovieClipUses:640 642Used by:644
Symbol 644 MovieClipUses:643Used by:Timeline
Symbol 645 GraphicUsed by:646
Symbol 646 MovieClipUses:645Used by:Timeline
Symbol 647 GraphicUsed by:648
Symbol 648 MovieClipUses:647Used by:Timeline
Symbol 649 TextUses:379Used by:Timeline
Symbol 650 GraphicUsed by:651
Symbol 651 MovieClipUses:650Used by:652
Symbol 652 MovieClipUses:651Used by:Timeline
Symbol 653 GraphicUsed by:654
Symbol 654 MovieClipUses:653Used by:655
Symbol 655 MovieClipUses:654Used by:Timeline
Symbol 656 GraphicUsed by:657
Symbol 657 MovieClipUses:656Used by:658
Symbol 658 MovieClipUses:657Used by:Timeline
Symbol 659 FontUsed by:660 661
Symbol 660 TextUses:659Used by:Timeline
Symbol 661 TextUses:659Used by:Timeline
Symbol 662 GraphicUsed by:665
Symbol 663 GraphicUsed by:665
Symbol 664 GraphicUsed by:665
Symbol 665 MovieClipUses:662 663 664Used by:678
Symbol 666 GraphicUsed by:669
Symbol 667 GraphicUsed by:669
Symbol 668 GraphicUsed by:669
Symbol 669 MovieClipUses:666 667 668Used by:678
Symbol 670 GraphicUsed by:673
Symbol 671 GraphicUsed by:673
Symbol 672 GraphicUsed by:673
Symbol 673 MovieClipUses:670 671 672Used by:678
Symbol 674 GraphicUsed by:677
Symbol 675 GraphicUsed by:677
Symbol 676 GraphicUsed by:677
Symbol 677 MovieClipUses:674 675 676Used by:678
Symbol 678 MovieClipUses:665 669 673 677Used by:679
Symbol 679 MovieClipUses:678Used by:Timeline
Symbol 680 GraphicUsed by:681
Symbol 681 MovieClipUses:680Used by:682
Symbol 682 MovieClipUses:681Used by:Timeline
Symbol 683 GraphicUsed by:684
Symbol 684 MovieClipUses:683Used by:693 694 696
Symbol 685 GraphicUsed by:686
Symbol 686 MovieClipUses:685Used by:693 694 696
Symbol 687 GraphicUsed by:688
Symbol 688 MovieClipUses:687Used by:693 694 696
Symbol 689 GraphicUsed by:693 694 696
Symbol 690 MovieClipUses:194Used by:693 694 696
Symbol 691 GraphicUsed by:692
Symbol 692 MovieClipUses:691Used by:693 694
Symbol 693 MovieClipUses:179 684 686 688 689 690 692Used by:697
Symbol 694 MovieClipUses:179 684 686 688 689 690 692Used by:697
Symbol 695 MovieClipUses:194Used by:696
Symbol 696 MovieClipUses:179 684 686 688 689 690 695Used by:697
Symbol 697 MovieClipUses:236 693 694 696Used by:Timeline
Symbol 698 GraphicUsed by:700
Symbol 699 TextUses:290Used by:700
Symbol 700 MovieClipUses:698 699Used by:704
Symbol 701 GraphicUsed by:703
Symbol 702 TextUses:290Used by:703
Symbol 703 MovieClipUses:701 702Used by:704
Symbol 704 MovieClipUses:700 703Used by:Timeline
Symbol 705 GraphicUsed by:706
Symbol 706 MovieClipUses:560 705Used by:707
Symbol 707 MovieClipUses:706Used by:711
Symbol 708 GraphicUsed by:709
Symbol 709 MovieClipUses:560 708Used by:710
Symbol 710 MovieClipUses:709Used by:711 866
Symbol 711 MovieClipUses:563 707 569 710Used by:Timeline
Symbol 712 GraphicUsed by:713
Symbol 713 MovieClipUses:712Used by:714
Symbol 714 MovieClipUses:713Used by:Timeline
Symbol 715 GraphicUsed by:717
Symbol 716 TextUses:379Used by:717
Symbol 717 MovieClipUses:715 716Used by:718
Symbol 718 MovieClipUses:717Used by:Timeline
Symbol 719 TextUses:379Used by:Timeline
Symbol 720 TextUses:379Used by:721 723
Symbol 721 MovieClipUses:593 720Used by:722
Symbol 722 MovieClipUses:721Used by:723
Symbol 723 ButtonUses:722 592 720Used by:Timeline
Symbol 724 TextUses:379Used by:725 727
Symbol 725 MovieClipUses:593 724Used by:726
Symbol 726 MovieClipUses:725Used by:727
Symbol 727 ButtonUses:726 592 724Used by:Timeline
Symbol 728 TextUses:379Used by:729 731
Symbol 729 MovieClipUses:593 728Used by:730
Symbol 730 MovieClipUses:729Used by:731
Symbol 731 ButtonUses:730 592 728Used by:Timeline
Symbol 732 TextUses:379Used by:733 735
Symbol 733 MovieClipUses:593 732Used by:734
Symbol 734 MovieClipUses:733Used by:735
Symbol 735 ButtonUses:734 592 732Used by:Timeline
Symbol 736 GraphicUsed by:737
Symbol 737 MovieClipUses:736Used by:738
Symbol 738 MovieClipUses:737Used by:Timeline
Symbol 739 GraphicUsed by:Timeline
Symbol 740 GraphicUsed by:741
Symbol 741 MovieClipUses:740Used by:Timeline
Symbol 742 GraphicUsed by:743
Symbol 743 MovieClipUses:742Used by:744
Symbol 744 MovieClipUses:743Used by:745
Symbol 745 MovieClipUses:744Used by:Timeline
Symbol 746 GraphicUsed by:747
Symbol 747 MovieClipUses:746Used by:767
Symbol 748 GraphicUsed by:749
Symbol 749 MovieClipUses:748Used by:767
Symbol 750 GraphicUsed by:751
Symbol 751 MovieClipUses:750Used by:767
Symbol 752 GraphicUsed by:753 772
Symbol 753 MovieClipUses:752Used by:767
Symbol 754 GraphicUsed by:755 775
Symbol 755 MovieClipUses:754Used by:767
Symbol 756 GraphicUsed by:757
Symbol 757 MovieClipUses:756Used by:767
Symbol 758 GraphicUsed by:759
Symbol 759 MovieClipUses:758Used by:767
Symbol 760 GraphicUsed by:761
Symbol 761 MovieClipUses:760Used by:762
Symbol 762 MovieClipUses:761Used by:767
Symbol 763 GraphicUsed by:764
Symbol 764 MovieClipUses:763Used by:767
Symbol 765 GraphicUsed by:766
Symbol 766 MovieClipUses:765Used by:767
Symbol 767 MovieClipUses:747 749 751 753 755 757 759 762 764 766Used by:Timeline
Symbol 768 GraphicUsed by:769
Symbol 769 MovieClipUses:768Used by:778
Symbol 770 GraphicUsed by:771
Symbol 771 MovieClipUses:770Used by:778
Symbol 772 MovieClipUses:752Used by:778
Symbol 773 GraphicUsed by:774
Symbol 774 MovieClipUses:773Used by:778
Symbol 775 MovieClipUses:754Used by:778
Symbol 776 GraphicUsed by:777
Symbol 777 MovieClipUses:776Used by:778
Symbol 778 MovieClipUses:769 771 772 774 775 777Used by:779
Symbol 779 MovieClipUses:778Used by:Timeline
Symbol 780 TextUses:379Used by:Timeline
Symbol 781 GraphicUsed by:782
Symbol 782 MovieClipUses:781Used by:783
Symbol 783 MovieClipUses:782Used by:Timeline
Symbol 784 GraphicUsed by:785
Symbol 785 MovieClipUses:784Used by:799 801
Symbol 786 GraphicUsed by:789
Symbol 787 GraphicUsed by:788
Symbol 788 MovieClipUses:787Used by:789
Symbol 789 MovieClipUses:786 788Used by:799 801
Symbol 790 GraphicUsed by:791
Symbol 791 MovieClipUses:790Used by:799 801
Symbol 792 GraphicUsed by:793
Symbol 793 MovieClipUses:792Used by:794 800
Symbol 794 MovieClipUses:793Used by:799
Symbol 795 GraphicUsed by:796
Symbol 796 MovieClipUses:795Used by:799 801
Symbol 797 GraphicUsed by:798
Symbol 798 MovieClipUses:797Used by:799 801
Symbol 799 MovieClipUses:785 789 791 794 796 798Used by:802
Symbol 800 MovieClipUses:793Used by:801
Symbol 801 MovieClipUses:785 789 791 800 796 798Used by:802
Symbol 802 MovieClipUses:799 801Used by:Timeline
Symbol 803 GraphicUsed by:804
Symbol 804 MovieClipUses:803Used by:805
Symbol 805 MovieClipUses:804Used by:Timeline
Symbol 806 GraphicUsed by:807
Symbol 807 MovieClipUses:806Used by:808
Symbol 808 MovieClipUses:807Used by:Timeline
Symbol 809 MovieClipUses:209Used by:Timeline
Symbol 810 GraphicUsed by:811 814
Symbol 811 MovieClipUses:810Used by:814
Symbol 812 GraphicUsed by:813 814
Symbol 813 MovieClipUses:812Used by:814
Symbol 814 ButtonUses:811 813 810 812Used by:Timeline
Symbol 815 GraphicUsed by:817
Symbol 816 GraphicUsed by:817
Symbol 817 MovieClipUses:815 816Used by:821
Symbol 818 GraphicUsed by:820
Symbol 819 GraphicUsed by:820
Symbol 820 MovieClipUses:818 819Used by:821
Symbol 821 MovieClipUses:817 820Used by:822
Symbol 822 MovieClipUses:821Used by:Timeline
Symbol 823 GraphicUsed by:824
Symbol 824 MovieClipUses:823Used by:825
Symbol 825 MovieClipUses:824Used by:Timeline
Symbol 826 GraphicUsed by:829 843 845
Symbol 827 GraphicUsed by:828
Symbol 828 MovieClipUses:827Used by:829 843 845
Symbol 829 MovieClipUses:826 828Used by:842
Symbol 830 GraphicUsed by:834
Symbol 831 GraphicUsed by:832
Symbol 832 MovieClipUses:831Used by:833
Symbol 833 MovieClipUses:832Used by:834
Symbol 834 MovieClipUses:830 833Used by:842 844 846
Symbol 835 GraphicUsed by:841
Symbol 836 MovieClipUses:194Used by:841
Symbol 837 GraphicUsed by:838
Symbol 838 MovieClipUses:837Used by:841
Symbol 839 GraphicUsed by:840
Symbol 840 MovieClipUses:839Used by:841
Symbol 841 MovieClipUses:835 836 838 840Used by:842 844 846
Symbol 842 MovieClipUses:829 834 841Used by:847
Symbol 843 MovieClipUses:826 828Used by:844
Symbol 844 MovieClipUses:843 834 841Used by:847
Symbol 845 MovieClipUses:826 828Used by:846
Symbol 846 MovieClipUses:845 834 841Used by:847
Symbol 847 MovieClipUses:236 842 844 846Used by:Timeline
Symbol 848 GraphicUsed by:851
Symbol 849 TextUses:290Used by:851
Symbol 850 GraphicUsed by:851
Symbol 851 MovieClipUses:848 849 850Used by:856
Symbol 852 GraphicUsed by:855
Symbol 853 TextUses:290Used by:855
Symbol 854 TextUses:290Used by:855
Symbol 855 MovieClipUses:852 853 854Used by:856
Symbol 856 MovieClipUses:851 855Used by:Timeline
Symbol 857 GraphicUsed by:858
Symbol 858 MovieClipUses:560 857Used by:859
Symbol 859 MovieClipUses:858Used by:866
Symbol 860 GraphicUsed by:861
Symbol 861 MovieClipUses:560 860Used by:862
Symbol 862 MovieClipUses:861Used by:866
Symbol 863 GraphicUsed by:864
Symbol 864 MovieClipUses:560 863Used by:865
Symbol 865 MovieClipUses:864Used by:866
Symbol 866 MovieClipUses:563 859 862 569 710 865Used by:Timeline
Symbol 867 GraphicUsed by:868
Symbol 868 MovieClipUses:867Used by:869
Symbol 869 MovieClipUses:868Used by:Timeline
Symbol 870 GraphicUsed by:871
Symbol 871 MovieClipUses:870Used by:872
Symbol 872 MovieClipUses:871Used by:Timeline
Symbol 873 TextUses:379Used by:Timeline
Symbol 874 TextUses:379Used by:Timeline
Symbol 875 MovieClipUses:211 213 215 217 218Used by:Timeline
Symbol 876 GraphicUsed by:891
Symbol 877 GraphicUsed by:878
Symbol 878 MovieClipUses:877Used by:879
Symbol 879 MovieClipUses:878Used by:891
Symbol 880 TextUses:379Used by:891
Symbol 881 TextUses:379Used by:891
Symbol 882 TextUses:290Used by:883
Symbol 883 ButtonUses:287 289 882 286 288Used by:891
Symbol 884 TextUses:290Used by:885
Symbol 885 ButtonUses:287 289 884 286 288Used by:891
Symbol 886 GraphicUsed by:887 889
Symbol 887 MovieClipUses:886Used by:889
Symbol 888 TextUses:290Used by:889
Symbol 889 ButtonUses:887 888 886Used by:891
Symbol 890 EditableTextUses:290Used by:891
Symbol 891 MovieClipUses:876 879 880 881 883 885 889 890 456Used by:Timeline
Symbol 892 GraphicUsed by:893
Symbol 893 MovieClipUses:892Used by:894
Symbol 894 MovieClipUses:893Used by:Timeline
Symbol 895 TextUses:290Used by:Timeline
Symbol 896 TextUses:290Used by:897
Symbol 897 ButtonUses:287 289 896 286 288Used by:Timeline
Symbol 898 TextUses:290Used by:Timeline
Symbol 899 TextUses:290Used by:Timeline
Symbol 900 TextUses:290Used by:Timeline

Instance Names

"buttonLink"Frame 2Symbol 188 Button
"bomb0"Frame 92Symbol 204 MovieClip
"player"Frame 92Symbol 219 MovieClip
"player"Frame 92Symbol 229 MovieClip
"yang"Frame 92Symbol 235 MovieClip
"robot5"Frame 92Symbol 252 MovieClip
"monster0"Frame 92Symbol 271 MovieClip
"donut"Frame 92Symbol 285 MovieClip
"buttonPlay"Frame 92Symbol 292 Button
"buttonHelp"Frame 92Symbol 296 Button
"buttonCredits"Frame 92Symbol 300 Button
"buttonScores"Frame 92Symbol 304 Button
"robot1"Frame 92Symbol 323 MovieClip
"dudeGuide"Frame 92Symbol 378 MovieClip
"buttonWalkthrough"Frame 92Symbol 385 Button
"buttonLink"Frame 92Symbol 389 Button
"fg"Frame 92Symbol 468 MovieClip
"donut"Frame 93Symbol 285 MovieClip
"fg"Frame 93Symbol 484 MovieClip
"yang"Frame 94Symbol 235 MovieClip
"player"Frame 94Symbol 229 MovieClip
"wall"Frame 94Symbol 488 MovieClip
"ground"Frame 94Symbol 492 MovieClip
"fg"Frame 94Symbol 484 MovieClip
"dude"Frame 95Symbol 378 MovieClip
"dudeGuide"Frame 95Symbol 378 MovieClip
"fg"Frame 95Symbol 484 MovieClip
"robot0"Frame 96Symbol 323 MovieClip
"robot1"Frame 96Symbol 323 MovieClip
"robot2"Frame 96Symbol 323 MovieClip
"robot3"Frame 96Symbol 323 MovieClip
"robot4"Frame 96Symbol 323 MovieClip
"robot5"Frame 96Symbol 323 MovieClip
"robot6"Frame 96Symbol 323 MovieClip
"robot7"Frame 96Symbol 323 MovieClip
"robot8"Frame 96Symbol 323 MovieClip
"fg"Frame 96Symbol 484 MovieClip
"player"Frame 97Symbol 219 MovieClip
"star1"Frame 97Symbol 504 MovieClip
"star2"Frame 97Symbol 504 MovieClip
"star3"Frame 97Symbol 504 MovieClip
"star4"Frame 97Symbol 504 MovieClip
"star0"Frame 97Symbol 504 MovieClip
"star5"Frame 97Symbol 504 MovieClip
"star6"Frame 97Symbol 504 MovieClip
"star7"Frame 97Symbol 504 MovieClip
"star8"Frame 97Symbol 504 MovieClip
"star10"Frame 97Symbol 504 MovieClip
"star11"Frame 97Symbol 504 MovieClip
"star12"Frame 97Symbol 504 MovieClip
"star9"Frame 97Symbol 504 MovieClip
"star13"Frame 97Symbol 504 MovieClip
"fg"Frame 97Symbol 484 MovieClip
"shuriken"Frame 98Symbol 544 MovieClip
"fg"Frame 98Symbol 484 MovieClip
"yang"Frame 99Symbol 235 MovieClip
"player"Frame 99Symbol 229 MovieClip
"wall"Frame 99Symbol 550 MovieClip
"ground"Frame 99Symbol 492 MovieClip
"fg"Frame 99Symbol 484 MovieClip
"monster1"Frame 100Symbol 271 MovieClip
"monster2"Frame 100Symbol 271 MovieClip
"monster3"Frame 100Symbol 271 MovieClip
"monster4"Frame 100Symbol 271 MovieClip
"monster5"Frame 100Symbol 271 MovieClip
"monster0"Frame 100Symbol 271 MovieClip
"fg"Frame 100Symbol 484 MovieClip
"hint"Frame 101Symbol 558 MovieClip
"tile0"Frame 101Symbol 573 MovieClip
"tile1"Frame 101Symbol 573 MovieClip
"tile2"Frame 101Symbol 573 MovieClip
"fg"Frame 101Symbol 484 MovieClip
"hitmap"Frame 102Symbol 576 MovieClip
"target0"Frame 102Symbol 581 MovieClip
"target1"Frame 102Symbol 584 MovieClip
"crosshair"Frame 102Symbol 587 MovieClip
"fg"Frame 102Symbol 484 MovieClip
"answerA"Frame 103Symbol 597 Button
"answerB"Frame 103Symbol 601 Button
"answerC"Frame 103Symbol 605 Button
"answerD"Frame 103Symbol 609 Button
"fg"Frame 103Symbol 484 MovieClip
"square"Frame 104Symbol 634 MovieClip
"bird"Frame 104Symbol 644 MovieClip
"poop"Frame 104Symbol 646 MovieClip
"fg"Frame 104Symbol 484 MovieClip
"yang"Frame 105Symbol 235 MovieClip
"player"Frame 105Symbol 229 MovieClip
"wall"Frame 105Symbol 652 MovieClip
"ground"Frame 105Symbol 492 MovieClip
"fg"Frame 105Symbol 484 MovieClip
"dude"Frame 106Symbol 378 MovieClip
"dudeGuide"Frame 106Symbol 378 MovieClip
"fg"Frame 106Symbol 484 MovieClip
"robot0"Frame 107Symbol 252 MovieClip
"robot8"Frame 107Symbol 252 MovieClip
"robot1"Frame 107Symbol 252 MovieClip
"robot2"Frame 107Symbol 252 MovieClip
"robot3"Frame 107Symbol 252 MovieClip
"robot4"Frame 107Symbol 252 MovieClip
"robot5"Frame 107Symbol 252 MovieClip
"robot6"Frame 107Symbol 252 MovieClip
"robot7"Frame 107Symbol 252 MovieClip
"fg"Frame 107Symbol 484 MovieClip
"player"Frame 108Symbol 219 MovieClip
"star0"Frame 108Symbol 504 MovieClip
"star1"Frame 108Symbol 504 MovieClip
"star6"Frame 108Symbol 504 MovieClip
"star7"Frame 108Symbol 504 MovieClip
"star2"Frame 108Symbol 504 MovieClip
"star4"Frame 108Symbol 504 MovieClip
"star3"Frame 108Symbol 504 MovieClip
"star15"Frame 108Symbol 504 MovieClip
"star8"Frame 108Symbol 504 MovieClip
"star9"Frame 108Symbol 504 MovieClip
"star14"Frame 108Symbol 504 MovieClip
"star5"Frame 108Symbol 504 MovieClip
"star10"Frame 108Symbol 504 MovieClip
"star13"Frame 108Symbol 504 MovieClip
"star12"Frame 108Symbol 504 MovieClip
"star11"Frame 108Symbol 504 MovieClip
"bomb1"Frame 108Symbol 204 MovieClip
"bomb0"Frame 108Symbol 204 MovieClip
"fg"Frame 108Symbol 484 MovieClip
"shuriken"Frame 109Symbol 679 MovieClip
"fg"Frame 109Symbol 484 MovieClip
"yang"Frame 110Symbol 235 MovieClip
"player"Frame 110Symbol 229 MovieClip
"wall"Frame 110Symbol 682 MovieClip
"ground"Frame 110Symbol 492 MovieClip
"fg"Frame 110Symbol 484 MovieClip
"monster0"Frame 111Symbol 697 MovieClip
"monster1"Frame 111Symbol 697 MovieClip
"monster2"Frame 111Symbol 697 MovieClip
"monster3"Frame 111Symbol 697 MovieClip
"monster4"Frame 111Symbol 697 MovieClip
"monster5"Frame 111Symbol 697 MovieClip
"fg"Frame 111Symbol 484 MovieClip
"hint"Frame 112Symbol 704 MovieClip
"tile0"Frame 112Symbol 711 MovieClip
"tile1"Frame 112Symbol 711 MovieClip
"tile2"Frame 112Symbol 711 MovieClip
"tile3"Frame 112Symbol 711 MovieClip
"fg"Frame 112Symbol 484 MovieClip
"hitmap"Frame 113Symbol 714 MovieClip
"target0"Frame 113Symbol 581 MovieClip
"target1"Frame 113Symbol 584 MovieClip
"crosshair"Frame 113Symbol 587 MovieClip
"fg"Frame 113Symbol 484 MovieClip
"answerA"Frame 114Symbol 723 Button
"answerB"Frame 114Symbol 727 Button
"answerC"Frame 114Symbol 731 Button
"answerD"Frame 114Symbol 735 Button
"fg"Frame 114Symbol 484 MovieClip
"heart"Frame 115Symbol 745 MovieClip
"cactus"Frame 115Symbol 767 MovieClip
"balloonLoop"Frame 115Symbol 779 MovieClip
"fg"Frame 115Symbol 484 MovieClip
"yang"Frame 116Symbol 235 MovieClip
"player"Frame 116Symbol 229 MovieClip
"wall"Frame 116Symbol 783 MovieClip
"ground"Frame 116Symbol 492 MovieClip
"fg"Frame 116Symbol 484 MovieClip
"dude"Frame 117Symbol 378 MovieClip
"dudeGuide"Frame 117Symbol 378 MovieClip
"fg"Frame 117Symbol 484 MovieClip
"robot0"Frame 118Symbol 802 MovieClip
"robot1"Frame 118Symbol 802 MovieClip
"robot2"Frame 118Symbol 802 MovieClip
"robot3"Frame 118Symbol 802 MovieClip
"robot4"Frame 118Symbol 802 MovieClip
"robot5"Frame 118Symbol 802 MovieClip
"robot6"Frame 118Symbol 802 MovieClip
"robot7"Frame 118Symbol 802 MovieClip
"robot8"Frame 118Symbol 802 MovieClip
"fg"Frame 118Symbol 484 MovieClip
"player"Frame 119Symbol 219 MovieClip
"star1"Frame 119Symbol 504 MovieClip
"star2"Frame 119Symbol 504 MovieClip
"star3"Frame 119Symbol 504 MovieClip
"star4"Frame 119Symbol 504 MovieClip
"star0"Frame 119Symbol 504 MovieClip
"star5"Frame 119Symbol 504 MovieClip
"star6"Frame 119Symbol 504 MovieClip
"star7"Frame 119Symbol 504 MovieClip
"star8"Frame 119Symbol 504 MovieClip
"star10"Frame 119Symbol 504 MovieClip
"star11"Frame 119Symbol 504 MovieClip
"star12"Frame 119Symbol 504 MovieClip
"star9"Frame 119Symbol 504 MovieClip
"star13"Frame 119Symbol 504 MovieClip
"star14"Frame 119Symbol 504 MovieClip
"star15"Frame 119Symbol 504 MovieClip
"star17"Frame 119Symbol 504 MovieClip
"star16"Frame 119Symbol 504 MovieClip
"star18"Frame 119Symbol 504 MovieClip
"star19"Frame 119Symbol 504 MovieClip
"star20"Frame 119Symbol 504 MovieClip
"star21"Frame 119Symbol 504 MovieClip
"bomb1"Frame 119Symbol 204 MovieClip
"bomb0"Frame 119Symbol 204 MovieClip
"bomb3"Frame 119Symbol 204 MovieClip
"bomb2"Frame 119Symbol 204 MovieClip
"fg"Frame 119Symbol 484 MovieClip
"buttonRotate"Frame 120Symbol 814 Button
"shuriken"Frame 120Symbol 822 MovieClip
"fg"Frame 120Symbol 484 MovieClip
"yang"Frame 121Symbol 235 MovieClip
"player"Frame 121Symbol 229 MovieClip
"wall"Frame 121Symbol 825 MovieClip
"ground"Frame 121Symbol 492 MovieClip
"fg"Frame 121Symbol 484 MovieClip
"monster0"Frame 122Symbol 847 MovieClip
"monster1"Frame 122Symbol 847 MovieClip
"monster2"Frame 122Symbol 847 MovieClip
"monster3"Frame 122Symbol 847 MovieClip
"monster4"Frame 122Symbol 847 MovieClip
"monster5"Frame 122Symbol 847 MovieClip
"fg"Frame 122Symbol 484 MovieClip
"hint"Frame 123Symbol 856 MovieClip
"tile0"Frame 123Symbol 866 MovieClip
"tile1"Frame 123Symbol 866 MovieClip
"tile2"Frame 123Symbol 866 MovieClip
"tile3"Frame 123Symbol 866 MovieClip
"tile4"Frame 123Symbol 866 MovieClip
"fg"Frame 123Symbol 484 MovieClip
"hitmap"Frame 124Symbol 869 MovieClip
"target0"Frame 124Symbol 581 MovieClip
"target1"Frame 124Symbol 584 MovieClip
"crosshair"Frame 124Symbol 587 MovieClip
"fg"Frame 124Symbol 484 MovieClip
"answerA"Frame 125Symbol 723 Button
"answerB"Frame 125Symbol 727 Button
"answerC"Frame 125Symbol 731 Button
"answerD"Frame 125Symbol 735 Button
"fg"Frame 125Symbol 484 MovieClip
"ninja"Frame 126Symbol 875 MovieClip
"curtain"Frame 126Symbol 891 MovieClip
"fg"Frame 126Symbol 484 MovieClip
"buttonMenu"Frame 127Symbol 897 Button
"buttonLink"Frame 127Symbol 389 Button
"fg"Frame 127Symbol 468 MovieClip
"buttonMenu"Frame 128Symbol 897 Button
"buttonLink"Frame 128Symbol 389 Button
"fg"Frame 128Symbol 468 MovieClip
"buttonMenu"Frame 129Symbol 897 Button
"fg"Frame 129Symbol 468 MovieClip
"buttonMenu"Frame 130Symbol 897 Button
"fg"Frame 130Symbol 468 MovieClip
"score_row_0"Symbol 44 MovieClip [Score Board (NewgroundsAPI)] Frame 1Symbol 19 MovieClip
"score_row_1"Symbol 44 MovieClip [Score Board (NewgroundsAPI)] Frame 1Symbol 19 MovieClip
"score_row_2"Symbol 44 MovieClip [Score Board (NewgroundsAPI)] Frame 1Symbol 19 MovieClip
"score_row_3"Symbol 44 MovieClip [Score Board (NewgroundsAPI)] Frame 1Symbol 19 MovieClip
"score_row_4"Symbol 44 MovieClip [Score Board (NewgroundsAPI)] Frame 1Symbol 19 MovieClip
"score_row_5"Symbol 44 MovieClip [Score Board (NewgroundsAPI)] Frame 1Symbol 19 MovieClip
"score_row_6"Symbol 44 MovieClip [Score Board (NewgroundsAPI)] Frame 1Symbol 19 MovieClip
"score_row_7"Symbol 44 MovieClip [Score Board (NewgroundsAPI)] Frame 1Symbol 19 MovieClip
"score_row_8"Symbol 44 MovieClip [Score Board (NewgroundsAPI)] Frame 1Symbol 19 MovieClip
"score_row_9"Symbol 44 MovieClip [Score Board (NewgroundsAPI)] Frame 1Symbol 19 MovieClip
"period_select"Symbol 44 MovieClip [Score Board (NewgroundsAPI)] Frame 1Symbol 43 MovieClip
"background"Symbol 73 MovieClip [Flash Ad (NewgroundsAPI)] Frame 1Symbol 72 MovieClip
"bar"Symbol 105 MovieClip [Preloader Bar (NewgroundsAPI)] Frame 2Symbol 82 MovieClip
"bargfx"Symbol 105 MovieClip [Preloader Bar (NewgroundsAPI)] Frame 2Symbol 85 MovieClip
"bargfx"Symbol 105 MovieClip [Preloader Bar (NewgroundsAPI)] Frame 3Symbol 85 MovieClip
"loadingText"Symbol 105 MovieClip [Preloader Bar (NewgroundsAPI)] Frame 3Symbol 97 MovieClip
"bargfx"Symbol 105 MovieClip [Preloader Bar (NewgroundsAPI)] Frame 21Symbol 85 MovieClip
"icon"Symbol 127 MovieClip [NewgroundsAPIAsset_Medal_Popup] Frame 1Symbol 119 MovieClip [NewgroundsAPIAsset_Medal_Icon_Placeholder]
"shadow"Symbol 157 MovieClip [NewgroundsAPIAsset_big_popup_background] Frame 1Symbol 138 MovieClip
"c"Symbol 157 MovieClip [NewgroundsAPIAsset_big_popup_background] Frame 1Symbol 140 MovieClip
"b"Symbol 157 MovieClip [NewgroundsAPIAsset_big_popup_background] Frame 1Symbol 142 MovieClip
"t"Symbol 157 MovieClip [NewgroundsAPIAsset_big_popup_background] Frame 1Symbol 144 MovieClip
"l"Symbol 157 MovieClip [NewgroundsAPIAsset_big_popup_background] Frame 1Symbol 146 MovieClip
"r"Symbol 157 MovieClip [NewgroundsAPIAsset_big_popup_background] Frame 1Symbol 148 MovieClip
"tl"Symbol 157 MovieClip [NewgroundsAPIAsset_big_popup_background] Frame 1Symbol 150 MovieClip
"tr"Symbol 157 MovieClip [NewgroundsAPIAsset_big_popup_background] Frame 1Symbol 152 MovieClip
"bl"Symbol 157 MovieClip [NewgroundsAPIAsset_big_popup_background] Frame 1Symbol 154 MovieClip
"br"Symbol 157 MovieClip [NewgroundsAPIAsset_big_popup_background] Frame 1Symbol 156 MovieClip
"background"Symbol 169 MovieClip [NewgroundsAsset_New_Version_Available] Frame 1Symbol 128 Button
"background"Symbol 174 MovieClip [NewgroundsAsset_Illegal_Host] Frame 1Symbol 170 Button
"connected"Symbol 175 MovieClip [API Connector (NewgroundsAPI)] Frame 11Symbol 115 MovieClip
"bomb"Symbol 204 MovieClip Frame 1Symbol 201 MovieClip
"explosion"Symbol 204 MovieClip Frame 2Symbol 203 MovieClip
"robotMouth"Symbol 249 MovieClip Frame 1Symbol 248 MovieClip
"robotMouth"Symbol 251 MovieClip Frame 1Symbol 250 MovieClip
"robot"Symbol 252 MovieClip Frame 1Symbol 249 MovieClip
"robot"Symbol 252 MovieClip Frame 2Symbol 251 MovieClip
"monster"Symbol 271 MovieClip Frame 1Symbol 264 MovieClip
"monster"Symbol 271 MovieClip Frame 3Symbol 266 MovieClip
"monster"Symbol 271 MovieClip Frame 5Symbol 270 MovieClip
"robot"Symbol 323 MovieClip Frame 1Symbol 320 MovieClip
"robot"Symbol 323 MovieClip Frame 2Symbol 322 MovieClip
"black"Symbol 358 MovieClip Frame 1Symbol 357 MovieClip
"body"Symbol 377 MovieClip Frame 1Symbol 336 MovieClip
"legs"Symbol 377 MovieClip Frame 1Symbol 347 MovieClip
"head"Symbol 377 MovieClip Frame 1Symbol 376 MovieClip
"dudeHolder"Symbol 378 MovieClip Frame 1Symbol 377 MovieClip
"buttonResume"Symbol 398 MovieClip Frame 1Symbol 394 Button
"buttonQuit"Symbol 398 MovieClip Frame 1Symbol 397 Button
"huh"Symbol 458 MovieClip Frame 1Symbol 409 MovieClip
"explosionA"Symbol 458 MovieClip Frame 1Symbol 412 MovieClip
"explosionB"Symbol 458 MovieClip Frame 1Symbol 415 MovieClip
"blip"Symbol 458 MovieClip Frame 1Symbol 418 MovieClip
"success"Symbol 458 MovieClip Frame 1Symbol 421 MovieClip
"rope"Symbol 458 MovieClip Frame 1Symbol 424 MovieClip
"creak"Symbol 458 MovieClip Frame 1Symbol 427 MovieClip
"pickup"Symbol 458 MovieClip Frame 1Symbol 430 MovieClip
"jump"Symbol 458 MovieClip Frame 1Symbol 433 MovieClip
"fail"Symbol 458 MovieClip Frame 1Symbol 436 MovieClip
"correct"Symbol 458 MovieClip Frame 1Symbol 439 MovieClip
"hey"Symbol 458 MovieClip Frame 1Symbol 442 MovieClip
"engine"Symbol 458 MovieClip Frame 1Symbol 445 MovieClip
"sink"Symbol 458 MovieClip Frame 1Symbol 448 MovieClip
"pass"Symbol 458 MovieClip Frame 1Symbol 451 MovieClip
"crowd"Symbol 458 MovieClip Frame 1Symbol 454 MovieClip
"stinger"Symbol 458 MovieClip Frame 1Symbol 457 MovieClip
"pausedMenu"Symbol 468 MovieClip Frame 1Symbol 399 MovieClip
"fail"Symbol 468 MovieClip Frame 1Symbol 402 MovieClip
"pass"Symbol 468 MovieClip Frame 1Symbol 405 MovieClip
"sounds"Symbol 468 MovieClip Frame 1Symbol 458 MovieClip
"speaker"Symbol 468 MovieClip Frame 1Symbol 461 MovieClip
"q"Symbol 468 MovieClip Frame 1Symbol 466 MovieClip
"speaker"Symbol 484 MovieClip Frame 1Symbol 461 MovieClip
"q"Symbol 484 MovieClip Frame 1Symbol 466 MovieClip
"pauseGame"Symbol 484 MovieClip Frame 1Symbol 483 MovieClip
"pausedMenu"Symbol 484 MovieClip Frame 1Symbol 399 MovieClip
"pausedMenu"Symbol 484 MovieClip Frame 1Symbol 399 MovieClip
"pass"Symbol 484 MovieClip Frame 1Symbol 405 MovieClip
"sounds"Symbol 484 MovieClip Frame 1Symbol 458 MovieClip
"starOuter"Symbol 543 MovieClip Frame 1Symbol 527 MovieClip
"starInner"Symbol 543 MovieClip Frame 1Symbol 532 MovieClip
"circleOuter"Symbol 543 MovieClip Frame 1Symbol 537 MovieClip
"circleInner"Symbol 543 MovieClip Frame 1Symbol 542 MovieClip
"shurikenHolder"Symbol 544 MovieClip Frame 1Symbol 543 MovieClip
"hitmap"Symbol 634 MovieClip Frame 1Symbol 622 MovieClip
"birdLoop"Symbol 644 MovieClip Frame 1Symbol 643 MovieClip
"starOuter"Symbol 678 MovieClip Frame 1Symbol 665 MovieClip
"starInner"Symbol 678 MovieClip Frame 1Symbol 669 MovieClip
"circleOuter"Symbol 678 MovieClip Frame 1Symbol 673 MovieClip
"circleInner"Symbol 678 MovieClip Frame 1Symbol 677 MovieClip
"shurikenHolder"Symbol 679 MovieClip Frame 1Symbol 678 MovieClip
"monster"Symbol 697 MovieClip Frame 1Symbol 693 MovieClip
"monster"Symbol 697 MovieClip Frame 3Symbol 694 MovieClip
"monster"Symbol 697 MovieClip Frame 5Symbol 696 MovieClip
"prick7"Symbol 767 MovieClip Frame 1Symbol 747 MovieClip
"prick0"Symbol 767 MovieClip Frame 1Symbol 747 MovieClip
"prick1"Symbol 767 MovieClip Frame 1Symbol 747 MovieClip
"prick2"Symbol 767 MovieClip Frame 1Symbol 747 MovieClip
"prick3"Symbol 767 MovieClip Frame 1Symbol 747 MovieClip
"prick4"Symbol 767 MovieClip Frame 1Symbol 747 MovieClip
"prick8"Symbol 767 MovieClip Frame 1Symbol 747 MovieClip
"prick5"Symbol 767 MovieClip Frame 1Symbol 747 MovieClip
"prick6"Symbol 767 MovieClip Frame 1Symbol 747 MovieClip
"prick9"Symbol 767 MovieClip Frame 1Symbol 747 MovieClip
"prick10"Symbol 767 MovieClip Frame 1Symbol 747 MovieClip
"balloon"Symbol 779 MovieClip Frame 1Symbol 778 MovieClip
"eyeLeft"Symbol 799 MovieClip Frame 1Symbol 794 MovieClip
"eyeRight"Symbol 799 MovieClip Frame 1Symbol 794 MovieClip
"eyeLeft"Symbol 801 MovieClip Frame 1Symbol 800 MovieClip
"eyeRight"Symbol 801 MovieClip Frame 1Symbol 800 MovieClip
"robot"Symbol 802 MovieClip Frame 1Symbol 799 MovieClip
"robot"Symbol 802 MovieClip Frame 2Symbol 801 MovieClip
"starOuter"Symbol 821 MovieClip Frame 1Symbol 817 MovieClip
"circleInner"Symbol 821 MovieClip Frame 1Symbol 820 MovieClip
"shurikenHolder"Symbol 822 MovieClip Frame 1Symbol 821 MovieClip
"monster"Symbol 847 MovieClip Frame 1Symbol 842 MovieClip
"monster"Symbol 847 MovieClip Frame 3Symbol 844 MovieClip
"monster"Symbol 847 MovieClip Frame 5Symbol 846 MovieClip
"buttonMenu"Symbol 891 MovieClip Frame 1Symbol 883 Button
"buttonSubmit"Symbol 891 MovieClip Frame 1Symbol 885 Button
"buttonReward"Symbol 891 MovieClip Frame 1Symbol 889 Button

Special Tags

FileAttributes (69)Timeline Frame 1Access local files only, Metadata not present, AS1/AS2.
ExportAssets (56)Timeline Frame 1Symbol 44 as "Score Board (NewgroundsAPI)"
ExportAssets (56)Timeline Frame 1Symbol 73 as "Flash Ad (NewgroundsAPI)"
ExportAssets (56)Timeline Frame 1Symbol 105 as "Preloader Bar (NewgroundsAPI)"
ExportAssets (56)Timeline Frame 1Symbol 119 as "NewgroundsAPIAsset_Medal_Icon_Placeholder"
ExportAssets (56)Timeline Frame 1Symbol 124 as "NewgroundsAPIAsset_default_medal_icon_1"
ExportAssets (56)Timeline Frame 1Symbol 125 as "NewgroundsAPIAsset_default_medal_icon_2"
ExportAssets (56)Timeline Frame 1Symbol 127 as "NewgroundsAPIAsset_Medal_Popup"
ExportAssets (56)Timeline Frame 1Symbol 133 as "NewgroundsAPIAsset_Login_Warning"
ExportAssets (56)Timeline Frame 1Symbol 136 as "NewgroundsAPIAsset_Connection_Error"
ExportAssets (56)Timeline Frame 1Symbol 157 as "NewgroundsAPIAsset_big_popup_background"
ExportAssets (56)Timeline Frame 1Symbol 169 as "NewgroundsAsset_New_Version_Available"
ExportAssets (56)Timeline Frame 1Symbol 174 as "NewgroundsAsset_Illegal_Host"
ExportAssets (56)Timeline Frame 1Symbol 175 as "API Connector (NewgroundsAPI)"
ExportAssets (56)Timeline Frame 1Symbol 176 as "NewgroundsAPIAsset_default_medal_icon_3"
ExportAssets (56)Timeline Frame 1Symbol 177 as "NewgroundsAPIAsset_default_medal_icon_4"
ExportAssets (56)Timeline Frame 1Symbol 178 as "NewgroundsAPIAsset_default_medal_icon_5"
ExportAssets (56)Timeline Frame 1Symbol 47 as "__Packages.com.newgrounds.API"
ExportAssets (56)Timeline Frame 1Symbol 48 as "__Packages.com.newgrounds.Bridge"
ExportAssets (56)Timeline Frame 1Symbol 49 as "__Packages.com.newgrounds.SaveFile"
ExportAssets (56)Timeline Frame 1Symbol 50 as "__Packages.com.newgrounds.SaveGroup"
ExportAssets (56)Timeline Frame 1Symbol 52 as "__Packages.com.newgrounds.SaveGroupQuery"
ExportAssets (56)Timeline Frame 1Symbol 54 as "__Packages.com.newgrounds.encoders.ImageScanner"
ExportAssets (56)Timeline Frame 1Symbol 53 as "__Packages.com.newgrounds.encoders.BaseN"
ExportAssets (56)Timeline Frame 1Symbol 62 as "__Packages.com.newgrounds.APIEventDispatcher"
ExportAssets (56)Timeline Frame 1Symbol 45 as "__Packages.com.newgrounds.APIEvent"
ExportAssets (56)Timeline Frame 1Symbol 59 as "__Packages.com.newgrounds.ScoreBoard"
ExportAssets (56)Timeline Frame 1Symbol 46 as "__Packages.com.newgrounds.APIError"
ExportAssets (56)Timeline Frame 1Symbol 1 as "__Packages.com.newgrounds.components.ScoreTable"
ExportAssets (56)Timeline Frame 1Symbol 51 as "__Packages.com.newgrounds.ValidationTools"
ExportAssets (56)Timeline Frame 1Symbol 55 as "__Packages.com.newgrounds.encoders.SerialXML"
ExportAssets (56)Timeline Frame 1Symbol 56 as "__Packages.com.newgrounds.encoders.LZW2"
ExportAssets (56)Timeline Frame 1Symbol 57 as "__Packages.com.newgrounds.encoders.LZW"
ExportAssets (56)Timeline Frame 1Symbol 58 as "__Packages.com.newgrounds.Medal"
ExportAssets (56)Timeline Frame 1Symbol 60 as "__Packages.com.newgrounds.encoders.RC4"
ExportAssets (56)Timeline Frame 1Symbol 61 as "__Packages.com.newgrounds.encoders.JSON"
ExportAssets (56)Timeline Frame 1Symbol 63 as "__Packages.com.newgrounds.encoders.MD5"
ExportAssets (56)Timeline Frame 1Symbol 64 as "__Packages.com.newgrounds.Score"
ExportAssets (56)Timeline Frame 1Symbol 65 as "__Packages.com.newgrounds.components.FlashAd"
ExportAssets (56)Timeline Frame 1Symbol 74 as "__Packages.com.newgrounds.components.PreloaderBar"
ExportAssets (56)Timeline Frame 1Symbol 106 as "__Packages.com.newgrounds.components.APIConnector"

Labels

"splash"Frame 2
"menu"Frame 92
"credits"Frame 127
"help"Frame 128
"scores"Frame 129
"submit"Frame 130
"LOAD"Symbol 105 MovieClip [Preloader Bar (NewgroundsAPI)] Frame 2
"COMPLETE_STOP"Symbol 105 MovieClip [Preloader Bar (NewgroundsAPI)] Frame 3
"closeme"Symbol 127 MovieClip [NewgroundsAPIAsset_Medal_Popup] Frame 11
"closeme"Symbol 133 MovieClip [NewgroundsAPIAsset_Login_Warning] Frame 11
"closeme"Symbol 136 MovieClip [NewgroundsAPIAsset_Connection_Error] Frame 11
"connecting"Symbol 175 MovieClip [API Connector (NewgroundsAPI)] Frame 2
"connected"Symbol 175 MovieClip [API Connector (NewgroundsAPI)] Frame 11
"done"Symbol 175 MovieClip [API Connector (NewgroundsAPI)] Frame 20
"start"Symbol 204 MovieClip Frame 1
"fadeIn"Symbol 468 MovieClip Frame 1
"faded"Symbol 468 MovieClip Frame 11
"fadeOut"Symbol 468 MovieClip Frame 12
"off"Symbol 483 MovieClip Frame 1
"on"Symbol 483 MovieClip Frame 2
"fadeIn"Symbol 484 MovieClip Frame 1
"faded"Symbol 484 MovieClip Frame 11
"fadeOut"Symbol 484 MovieClip Frame 12
"start"Symbol 504 MovieClip Frame 1

Dynamic Text Variables

board_nameSymbol 10 EditableText"High Scores"
positionSymbol 14 EditableText"X:"
usernameSymbol 15 EditableText"UserName"
scoreSymbol 17 EditableText"Score"
periodSymbol 21 EditableText"Today"
medal_nameSymbol 120 EditableText"medal unlocked!"
medal_valueSymbol 123 EditableText"100pts"
timeTextSymbol 478 EditableText"Time: 0"
finalTimeTextSymbol 890 EditableText"0"




http://swfchan.com/19/92557/info.shtml
Created: 27/3 -2019 09:15:22 Last modified: 27/3 -2019 09:15:22 Server time: 06/05 -2024 09:33:44