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

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

Ninja Plus 2 - beat all of the levels as a crazy ninja.swf

This is the info page for
Flash #93584

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


Text
[PAUSED

Paused
Press "p" to continue

<p align="center"></p>

Please be patient - your game is loading

EXPLOSIVE GAMES

<p align="center"></p>

Almost too full...

Level Builder Instructions

Move by moving your mouse to the edge of the screen and
with arrow keys.
Click to build what is currently displayed on your preview
box.
Click the tiles button to choose tiles. To choose multiple tiles
at once, hold SHIFT
Press CTRL to place coins.
Press SHIFT to place the ninja.
Press SPACE to delete objects. Press SPACE when selecting
tiles to deselect all tiles.
Keyboard Shortcuts:
"M" will open and close the tile menu.
"T" will test the level.
"E" will export the level.
"H" will open the instructions.

Close

Close

Take this code and share it with your friends and family.
Show off what you have created!

<p align="center"></p>

Your name:

Level's Name:

<p align="left"></p>

<p align="left"></p>

Test

Test

Copy

Copy

Save to my levels!

Save to my levels!

Save your level to the database so people around the
world can play and rate your level!

Are you sure you want to delete this
map permanently? (Warning - you
cannot recover this map unless you
have the export code)

Yes

Yes

No

No

<p align="center"></p>

Tiles

Tiles

Instructions

Instructions

Export

Export

Menu

Menu

SPACE - Delete
CTRL - Coin
SHIFT - Ninja

SHIFT to select multiple tiles. Cannot select multiple accessories.

Accessories

Background

Walls

Enemies

Change Page

If you have a level code that you would
like to play, paste it into this box by
pressing CTRL+V at the same time.

Load Level

Load Level

Best Time:

Time needed to unlock next level:

<p align="left"></p>

<p align="left"></p>

Award Times:

Easy:

Medium:

Hard:

Godly:

<p align="left"></p>

<p align="left"></p>

Health:

Restart

Restart

Menu

Menu

Resume Editing (Esc)

Resume Editing (Esc)

Esc - Back
Enter - Restart
P - Pause

Load Levels

Play

Play

Help

help

Options

Options

BuilD

BuilD

Your Logo

Ninja

Load

Load

Play More

Games

Play More

Games

Ninja

Select Level

1

1

1

2

2

2

2

3

3

3

3

You may only choose levels that you have unlocked. To unlock levels, you must obtain a
certain time on the previous level. It is stated when you rollover a level.

<p align="left"><font face="Arial Black" size="12" color="#2f2f2f" letterSpacing="0.000000" kerning="1"><b>00:00.00</b></font></p>

<p align="center"><font face="Arial Black" size="12" color="#2f2f2f" letterSpacing="0.000000" kerning="1"><b>00:00.00</b></font></p>

<p align="center"><font face="Arial Black" size="12" color="#2f2f2f" letterSpacing="0.000000" kerning="1"><b>00:00.00</b></font></p>

<p align="center"><font face="Arial Black" size="12" color="#2f2f2f" letterSpacing="0.000000" kerning="1"><b>00:00.00</b></font></p>

<p align="center"><font face="Arial Black" size="12" color="#2f2f2f" letterSpacing="0.000000" kerning="1"><b>00:00.00</b></font></p>

<p align="center"><font face="Arial Black" size="12" color="#2f2f2f" letterSpacing="0.000000" kerning="1"><b>00:00.00</b></font></p>

5

5

5

5

6

6

6

6

4

4

4

4

Main Menu

Main Menu

Needed Time:

Medium Time:

Hard Time:

Your Best Time:

Best Time:

LEVEL STATS

Godly Time:

AWARDS

You may only choose levels that you have unlocked. To unlock levels, you must
obtain a certain time on the previous level. It is stated when you rollover a level.

Select   Level

Import

Import

1
2
3
4
5

6
7
8
9
10

Your Time:

Best Time:

Top Times for this Level

<p align="center"></p>

<p align="center"><font face="Arial Black" size="25" color="#251f1b" letterSpacing="0.000000" kerning="1">00:00</font></p>

<p align="center"><font face="Arial Black" size="25" color="#251f1b" letterSpacing="0.000000" kerning="1">00:00</font></p>

Submit

Submit

Replay

Replay

Level Select

Level Select

<p align="center"></p>

Level Completed!

Enter Name:

You collected all Orbs in:

<p align="center"></p>

<p align="center"></p>

<p align="center"><font face="Hobo Std" size="22" color="#ffffff" letterSpacing="0.000000" kerning="1">Your best time is:</font></p>

Name:

<p align="center"></p>

Test of
Level Completed!

K

C

A

B

K

C

A

B

<p align="left"></p>

<p align="left"></p>

<p align="left"></p>

<p align="left"></p>

<p align="left"></p>

<p align="left"></p>

<p align="left"></p>

<p align="left"></p>

<p align="left"></p>

<p align="left"></p>

Next Level

Next Level

Take this code and share it with your friends and family. Show off what you
have created!
If you have created a level you think is good enough to be coded into the
game, email this code to chris@fullergames.com and I will judge it.

Copy

Copy

<p align="center"></p>

<p align="center"><font face="Hobo Std" size="11" color="#ff0000" letterSpacing="0.000000" kerning="1">Your name:</font></p>

<p align="center"><font face="Hobo Std" size="11" color="#ff0000" letterSpacing="0.000000" kerning="1">Level&apos;s Name:</font></p>

<p align="center"></p>

<p align="left"></p>

To collect coins, you can either shoot them(Default "K") or move into
them/
To wall slide, hold in the direction towards a wall when against it.
You will reverse direction and begin to wall slide. You no longer
need to hold the arrow key after you start sliding. You may proceed
to shoot Kunai's and your rope.
An in-game tutorial can be found on Level
One.

Collect all coins
as quickly as
you can.

Avoid and
defeat the
enemies

Aim with mouse.
Hold down mouse to
fire rope.

Jump

Move
Right

Move
Left

Shoot Kunai

Change controls in Options

Hold in the direction of
a wall when against it
until you start sliding.
You can use your rope
or kunais.

Wall Sliding

Jump key while
wall sliding.

Wall Jumping

Instructions

Throw Rope:

Aim up:

Aim down:

<p align="left"></p>

<p align="left"></p>

<p align="left"></p>

<p align="center"><font face="Arial Black" size="15" color="#ffffff" letterSpacing="0.000000" kerning="1">Change</font></p>

<p align="center"><font face="Arial Black" size="15" color="#ffff00" letterSpacing="0.000000" kerning="1">Change</font></p>

Aimer Sensitivity:

<p align="left"></p>

<p align="left"><font face="Arial Black" size="12" color="#ffffff" letterSpacing="0.000000" kerning="1">Max: 15 Min: 1</font></p>

<p align="center"><font face="Arial Black" size="12" color="#ffffff" letterSpacing="0.000000" kerning="1">Default: 5</font></p>

Erase saved times

Erase saved times

<p align="center"></p>

Restore Defaults

Restore Defaults

Sound Control

Move left:

Move right:

Jump:

Throw Kunai:

OPTIONS

Click the change button and type
a key to change the control.

Quality:

Music

SFX

<p align="left"></p>

<p align="left"></p>

<p align="left"></p>

<p align="left"></p>

<p align="left"><font face="Arial Black" size="14" color="#000000" letterSpacing="0.000000" kerning="1">Medium</font></p>

Game Over!

Game Over

Replay

Replay

Main MENU

Main MENU

Continue editing

Continue editing

Load Random Level

Load Random Level

2

2

1

1

Level Name:

Submitted By:

LevelCode:

Rating:

RATE:

tOP TIMES

1.

2.

3.

Here you can play and rate many levels submitted by players just like
you. Compete against people around the world for the best times!

3

3

4

4

5

5

<p align="center"><font face="Century Gothic" size="22" color="#ffffff" letterSpacing="2.000000" kerning="1"><b>Play</b></font></p>

<p align="center"><font face="Century Gothic" size="22" color="#ffff00" letterSpacing="2.000000" kerning="1"><b>Play</b></font></p>

This game can only be
played at
www.FullerGames.com

ActionScript [AS1/AS2]

Frame 1
function __com_mochibot__(swfid, mc, lv, trk) { var x; var g; var s; var fv; var sb; var u; var res; var mb; var mbc; var pv; mb = "__mochibot__"; mbc = "mochibot.com"; g = (_global ? (_global) : (_level0._root)); if (g[mb + swfid]) { return(g[mb + swfid]); } s = System.security; x = mc._root.getSWFVersion; fv = (x ? (mc.getSWFVersion()) : ((_global ? 6 : 5))); if (!s) { s = {}; } sb = s.sandboxType; if (sb == "localWithFile") { return(null); } x = s.allowDomain; if (x) { s.allowDomain(mbc); } x = s.allowInsecureDomain; if (x) { s.allowInsecureDomain(mbc); } pv = ((fv == 5) ? (getVersion()) : (System.capabilities.version)); u = (((((((((((("http://" + mbc) + "/my/core.swf?mv=8&fv=") + fv) + "&v=") + escape(pv)) + "&swfid=") + escape(swfid)) + "&l=") + lv) + "&f=") + mc) + (sb ? ("&sb=" + sb) : "")) + (trk ? "&t=1" : ""); lv = ((fv > 6) ? (mc.getNextHighestDepth()) : ((g[mb + "level"] ? (g[mb + "level"] + 1) : (lv)))); g[mb + "level"] = lv; if (fv == 5) { res = "_level" + lv; if (!eval (res)) { loadMovieNum (u, lv); } } else { res = mc.createEmptyMovieClip(mb + swfid, lv); res.loadMovie(u); } return(res); } Stage.showMenu = false; stop(); stepp = 0; __com_mochibot__("8b9696ed", this, 10301, true);
Instance of Symbol 60 MovieClip "loaderbar" in Frame 1
onClipEvent (enterFrame) { _parent.loaderbar.gotoAndStop(_parent.stepp); if ((_root.getBytesLoaded() / _root.getBytesTotal()) > (_parent.stepp / 100)) { _parent.stepp++; } if (_parent.stepp >= 100) { _root.gotoAndPlay("Setup"); } }
Frame 3
Stage.showMenu = false; this._lockroot = true; var CH = 32.05; var CW = 20.8; var Decrypt = "![],1234567890AXYBLRTSCEolcnvitar=;h- "; var Encrypt = "!_-do2qp84ram51vwijnzfghetyusklxcb.?| "; var ImportCode = ""; var mainTimeLine = this; trace("mainTimeLine: " + mainTimeLine); var LevUnlock = new Array(0, 1E16, 1E16, 1E16, 1E16, 1E16, 1E16); var LevUnlockT = new Array("0", "5:00.00", "4:00.00", "3:00.00", "1:45.00", "2:00.00", "2:30.00"); var ReqTimeE = new Array("0", "5:00.00", "4:00.00", "3:00.00", "1:45.00", "2:00.00", "2:30.00"); var ReqTimeM = new Array("0", "1:15.00", "2:00.00", "1:30.00", "00:45.00", "00:43.00", "1:25.00"); var ReqTimeH = new Array("0", "0:45.00", "0:58.00", "0:45.00", "00:26.00", "00:26.00", "00:58.00"); var ReqTimeG = new Array("0", "0:34.50", "0:38.00", "0:28.45", "00:18.00", "00:18.50", "00:45.00"); var BestTime = new Array(); var BestTimeT = new Array(); i = 0; while (i <= 6) { BestTime[i] = 1E16; BestTimeT[i] = "99:59.99"; i++; } var AimS = 5; keys = new Object(); keys.Left = 65; keys.Right = 68; keys.Jump = 87; keys.Kunai = 32; VolBG = -100; VolSFX = -100; Slide2YVal = 135; SlideYVal = 135; M = true; SFX = true; trace("M: " + M); trace("SFX: " + SFX); trace("BTB4: " + BestTime[4]); SavedGame = SharedObject.getLocal("NinjaSave"); if (SavedGame.data.Controls != undefined) { keys = SavedGame.data.Controls; } if (SavedGame.data.AimerSens != undefined) { AimS = SavedGame.data.AimerSens; } if (SavedGame.data.TimesNum != undefined) { BestTime = SavedGame.data.TimesNum; } if (SavedGame.data.TimesString != undefined) { BestTimeT = SavedGame.data.TimesString; } if (SavedGame.data.Vol2 != undefined) { VolBG = SavedGame.data.Vol2; } if (SavedGame.data.VolY != undefined) { SlideYVal = SavedGame.data.VolY; } if (SavedGame.data.Vol != undefined) { VolSFX = SavedGame.data.Vol; } if (SavedGame.data.VolY2 != undefined) { Slide2YVal = SavedGame.data.VolY2; } if (VolBG >= 0) { M = false; } if (VolSFX >= 0) { SFX = false; } trace("M: " + M); trace("SFX: " + SFX); trace(SavedGame.data.Vol2); trace(SavedGame.data.Vol); i = 0; while (i <= 6) { trace((("BT" + i) + ": ") + BestTime[i]); trace((("BT" + i) + ": ") + BestTimeT[i]); i++; } make_sound = function (mc_name, depth, volume, name) { mc = mainTimeLine.createEmptyMovieClip(mc_name, depth); snd = new Sound(mc); snd.setVolume(volume); snd.attachSound(name); return(snd); }; CS = make_sound("CS", 20, VolSFX / 4, "CS"); GS = make_sound("GS", 21, VolSFX * 2, "GS"); MS = make_sound("MS", 23, VolBG / 2, "MS"); LS = make_sound("LevelBG", 22, VolBG * 4, "LevelBG"); HS = make_sound("Hit", 24, VolSFX * 2, "Hit2"); LBS = make_sound("BuildBG", 25, VolBG, "BuildBG"); WS = make_sound("WinBG", 26, VolBG, "WinBG"); GoS = make_sound("LoseBG", 27, VolBG, "LoseBG"); ThrRopS = make_sound("TRS", 28, VolSFX * 2, "Throw Rope Sound"); StpS = make_sound("StepS", 29, VolSFX / 1.2, "Step Sound"); JmpS = make_sound("JS", 30, VolSFX * 2, "Jump Sound"); KBatS = make_sound("KBS", 31, VolSFX * 2, "Kill Bat Sound"); ThrKunS = make_sound("TKS", 32, VolSFX * 2, "Throw Kunai Sound"); var PlayingMenu = false; var TileSize = 50; var ChRad = 8100; var ChHeadRad = 400; var ChBodyRad = 144; var ChLegRad = 144; var SoRad = 8100; var SoHeadRad = 400; var SoBodyRad = 160; var SoLegRad = 160; var SoH = 28; var CoinRad = 361; var TIY = 14; var TIX = 16; var MA = -90; var MXA = 90; var MK = 25; var Map = [[]]; var MapPieces = new Array(); var EnemyS = 2.5; var EnemySi = 80000; var BatHeadRad = 60; var BatWingRad = 60; var DogHeadRad = 155; var DogBodyRad = 90; var DogNum = 58; var BatNum = 59; var SpikeUNum = 54; var RatNum = 60; var SoldierNum = 61; var ArcherNum = 62; var SpikeDNum = 55; var SpikeLNum = 56; var SpikeRNum = 57; var TorchNum = 32; var WT = 10; var BT = 25; var AS = 26; var ES = 54; var TT = 61; var BitMapArray = ["", "Tile1A", "Tile2A", "Tile3A", "Tile4A", "Tile5A", "Tile22A", "Tile23A", "Tile24A", "Tile25A", "Tile14A", "Tile7A", "Tile8A", "Tile9A", "Tile10A", "Tile11A", "Tile12A", "Tile13A", "Tile6A", "Tile15A", "Tile18A", "Tile19A", "Tile20A", "Tile21A", "Tile55A", "Tile56A", "Tile16A", "Tile26A", "Tile27A", "Tile17A", "Tile28A", "Tile29A", "Tile30A", "Tile31A", "Tile32A", "Tile33A", "Tile34A", "Tile35A", "Tile36A", "Tile37A", "Tile38A", "Tile39A", "Tile40A", "Tile59A", "Tile42A", "Tile57A", "Tile43A", "Tile44A", "Tile45A", "Tile46A", "Tile47A", "Tile48A", "Tile58A", "Tile41A", "Tile51A", "Tile60A", "Tile61A", "Tile62A", "Tile49A", "Tile50A", "Tile52A", "Tile53A", "Tile54A"]; i = 1; while (i <= TT) { mainTimeLine["TileBitmap" + i] = flash.display.BitmapData.loadBitmap(BitMapArray[i]); i++; } var TileBitmap1001 = flash.display.BitmapData.loadBitmap("Tile1001A"); var TileBitmap1002 = flash.display.BitmapData.loadBitmap("Tile1002A"); var TileBitmap1003 = flash.display.BitmapData.loadBitmap("Tile1003A"); var TileBitmap1004 = flash.display.BitmapData.loadBitmap("Tile1004A"); var TileBitmap1000 = (new flash.display.BitmapData(50, 50, false, 0)); i = 0; while (i <= 255) { MapPieces[i] = new flash.display.BitmapData(TileSize, TileSize, false, 0); i++; } var CoinBit = flash.display.BitmapData.loadBitmap("Coin"); var Tike3T = flash.display.BitmapData.loadBitmap("Tike3"); Level = 0; var EnviStartYA = new Array(); var EnviStartXA = new Array(); var CharStartYA = new Array(); var CharStartXA = new Array(); var LRBA = new Array(); var LLBA = new Array(); var LTBA = new Array(); var LBBA = new Array(); var ColLoc0X = new Array(); var ColLoc0Y = new Array(); var AccType0 = new Array(); var AccLoc0X = new Array(); var AccLoc0Y = new Array(); var Acc = new Array(); var LevelCodeValue = new Array(); LevelCodeValue[1] = "!d!d!d!d!dqd2d2-!d!d!d!d!d2doqdp-!d!dqdqd2dqdo2d2do-!d!dqdo2doqdoqdoado2dq-!d!d2doodo2doadoodo2do-!d!d2doodo2doqdoqdoqdq-!d!dqdoodoodoqdoado2d2-!d!d2doqdoqdo2doodoad2-!d!dodo2doqdoadoado2do-!d!dodo2do2do2do2doqdp-!d!dodo2do2do2do2do2dp-!d!dqdoqdoqdoqdo2do2do-!d!dqdoadoqdo2do2do2dqd2dpdododqdqdqdpdqd2dodpdqd2-!d!dpdoqdoqdoqdoqdo2doqdoodoqdoodoadoadoodoqdoqdoqdoqdo2doqdoqdp-!d!dpdoodo2doqdoqdo2doqdoado2doado2do2doodo2doodoqdoadoodoodoqd2-!d!dqdoodo2do2do2do2doqdoodoodoodoqdoqdoqdoqdoado2do2doodoodo2dp-!d!dqd2dqdqdpdqd2d2dqdpdqdod2dpdqdqdo2doadoqdoqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doqdoodoqdo2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoodoqdo2doqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doadoqdoodo-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoodoado2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doado2doqdp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdo2do2doqdood2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dod2dqdo2doqdoqdoodqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doodoodo2doadoqdoqdoqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodo2doqdoodoado2doqdo2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doqdoqdoodoqdoqdo2do2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doqdoodo2doqdoado2doodq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doqdo2doqdoodo2do2doqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoqdo2doqdoqdoqdoqdp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doqdoqdo2do2do2doadp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2dod2do2do2doqdoqdpdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoqdoadoado2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doqdoodoodo2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doqdo2do2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoqdoodo2doodq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoqdoodoado2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoqdoqdoqdo2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdo2doadoqdo2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoadoodoodoodp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoodoqdo2doqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d2d2dodod2doqdoodoqdqd2-!d!d!d!d!d!d!d!d!d!d!d!d!dpdoqdoqdoodo2doqdoodoqdq-!d!d!d!d!d!d!d!d!d!d!d!d!dpdoodoqdoqdoqdoqdo2doadp-!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doqdoado2doadoadoqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doqdo2doqdoqdo2do2dp-!d!d!d!d!d!d!d!d!d!d!d!d!dodoqdoado2doqdoqdoqdoqdq-!d!d!d!d!d!d!d!d!d!d!d!d!dodo2doqdoqdoqdo2doqdoadq-!d!d!d!d!d!d!d!d!d!d!d!d!d2doqdo2doodoqdoqdoqdo2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d2do2do2do2do2doqdoqdoad2-!d!d!d!d!d!d!d!d!d!d!d!d!dodo2do2doqdo2do2doadoqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d2dod2dpdodoadoodoqdqdo-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doadoqdo2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doqdoqdoqdo-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoadoodo2doqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoqdoodo2doadq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoodo2do2doado-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoadoadoqdoqdo-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoodoqdo2doadp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doodoqdoad2-!d!d!d!d!d!d!d!d!d!dqdqd2d2dododod2doadoqdoqdoadq-!d!d!d!d!d!d!d!d!d!dqdo2doqdoadqdo2do2d2doqdoqdoodoad2-!d!d!d!d!d!d!d!d!d!dpdoqdo2doqdqdoqdoadodoadoqdoqdoadq-!d!d!d!d!d!d!d!d!d!dqdo2do2do2d2doqdoad2do2doodo2do2d2-!d!d!d!d!d!d!d!d!d!d2do2doqdo2dqdo2doqdqdo2doado2doqdq-!d!d!d!d!d!d!d!d!d!d2do2doqdo2d2doodoad2doadoodoqdoodo-!d!d!d!d!d!d!d!d!d!dodoodoqdo2dpdoqdo2d2doqdo2doado2dq-!d!d!d!d!d!d!d!d!d!dqdoodoqdo2doqdoqdo2d2do2do2do2doodq-!d!d!d!d!d!d!d!d!d!d2do2doodoqdo2do2do2dodoado2do2doqdq-!d!d!d!d!d!d!d!d!d!dqdoqdoqdo2doodoadoqd2do2doodo2do2dp-!d!d!d!d!d!d!d!d!d!dqdoodo2dood2dodqdodoodoado2do2do-!d!d!d!d!d!d!d!d!d!d2doqdoadoqdodo2doodoodo2doqdoado2do-!d!d!d!d!d!d!d!d!d!d2doado2doqdoadoadoado2doadoodoqdoad2-!d!d!d!d!d!d!d!d!d!dodoado2do2doodo2doqdo2do2do2doqdoqdo-!d!d!d!d!d!d!d!d!d!d2doqdoadoodo2do2doqdoqdoodo2do2doad2-!d!d!d!d!d!d!d!d!d!dqdo2do2doqd2doadoodo2do2doodo2doodp-!d!d!d!d!d!d!d!d!d!dqd2d2d2dqdqdodod2d2dqdod2--2rqd2rqdq2rdq2rd|r4d|22dq2da4dop5d|2r2pd|oqo5d|oqrpd|opqmd|o8opd|o8a2-qq2dqa4dqa4dqq2d45pd45pd45pd45pd45pd|oord8p2d85rdpard854d8qm-|2a5o-|pp5-2r8-228-|44rd|p4md|2amd|o8r2d|o8oad|op4pd|opo5d|oq84d|o8rrd|o82qd|op4md|opo8d|oq4od|oq5rd4qm 8dr8od2prd|2qmd|8mmd|p5od|o88qd|oq88dm8qd|2o84d|2484d|o2mad|oq52d|2qm4d45o-qqadqqadqqadr5odr5odr5odr5odr5odq4mdq4mdq4mdq4mdq4mdq4mdqqo 8dprpdprpdprpdqo2dqo2dp25dp25d4o5d4o5d|amd44qdr5od|4odoq5-8md8md8md8pd8pd8pd8pd8pd88d88d88d88d88d88dppdq2dq2dq2dq2dq2dq2dq2dqodqodqodqod8pd45dq2-"; LevelCodeValue[2] = "!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dod2d2dqd2dqdqd2dodqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoodoodoodo2do2do2do2doqdo2d2d!d!d!d!d!d!d!d!d!dqd2dpdqd2dqdqd2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doqdoodoqdoqdo2do2do2doadood2d!d!d!d!d!d!d!d!d!dqdoqdo2do2doqdoadoado2do-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doado2doadoqdoqdo2do2doodod!d!d!d!d!d!d!d!d!d2do2doqdoqdoadoodoado2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodo2doqdoodoadoado2do2do2doqdqd!d!d!d!d!d!d!d!d!dpdo2doqdoqdo2doado2dood2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2do2doadoqdoqdoodo2doqdo2dod!d!d!d!d!d!d!d!d!dqdoadoqdo2doadoadoadoqdp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2do2do2do2doodo2doadoodo2d2d!d!d!d!d!d!d!d!d!dqdoado2doqdoqdoqdo2doqdp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoqdo2doado2doodo2do2doqdo2dod!d!d!d!d!d!d!d!d!dodoqdo2do2do2doodoodo2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdo2doqdoodo2do2doqdoqdoqdoad2d!d!d!d!d!d!d!d!d!dodoadoadoodo2doqdoadoadq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doqdoqdoodoqdoadoqdo2doadoqdpd!d!d!d!d!d!d!d!d!d2do2do2doqdoqdoqdoqdo2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoqdo2do2do2do2doqdoado2doqd2d!d!d!d!d!d!d!d!d!dqdoqdoqdoodoado2do2doqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdo2do2doqdoodoqdo2do2do2do2dpd!d!d!d!d!d!d!d!d!d2do2do2doodoqdoqdo2do2dq-!d!dqdqd2dqdpd2d!d!d!d!d!d!d!d!dqdoodoadoodoodo2do2doodoqdoqdod!d!d!d!d!d!d!d!d!dqdoodoqdoqdoqdoqdoqdo2dp-!d!d2doqdo2doqdoodod!d!d!d!d!d!d!d!d2doodoodo2do2doqdoodo2doadoodod!d!d!d!d!d!d!d!d!dqdoadoadoqdoodo2do2do2d2-!d!d2do2do2doadoqdqd!d!d!d!d!d!d!d!d2doqdo2doqdoqdoqdoqdoadoadoodod!d!d!d!d!d!d!d!d!dodo2doado2doqdoqdoado2d2-!d!d2doqdoqdoqdo2dpd2d2dod2dqd2dqdpdqdo2doodoqdoodoadoadoodoqdoqd2d2d2d2dpdodqd2d2dqdodoodoqdoadoodo2doqdoqdpdqdqd2dqdpdqdpdpdpdqdqdqd2dpd2d2d2dpd2d2dodqdododqdqdodqdq-!d!dpdo2do2doqdoadoodoqdoadoodoqdo2doqdoqdoodo2doado2doqdo2doqdoodoodo2doodo2do2do2doodoodoadoado2do2do2doodoadoqdoadoqdo2do2doqdoodo2doqdo2doadoqdoadoodoqdo2do2doadoadoqdo2doqdo2do2doqdoqdoqdo2doqdoqdoodoqdo2doado2dq-!d!d2doadoqdoqdoodoqdoqdoodoodoqdoodo2doadoadoado2doadoqdoqdo2doodo2doqdo2do2do2doadoodoadoodoqdo2do2doadoqdo2do2do2doqdoodo2do2do2doqdoado2doado2doqdoodoodoodo2do2doqdoqdoadoadoqdoqdoqdoado2doadoodoado2doadoqdoqdoqdp-!d!dpdo2doadoqdo2doqdoqdo2doadoqdo2doqdo2doqdoadoado2doodo2do2doqdoodo2do2doqdoodoqdoodoqdo2do2doqdoado2do2doqdo2do2doodoqdoadoqdo2doodo2doqdoqdoadoodoodoqdo2doodoodoodoqdoadoqdoqdoodoadoqdoadoodoodoqdoadoadoado2do2d2-!d!d2doqdoadoqdoodqdpdqdod2dqdqd2dpdqdo2doqdoadoqdoqdoodoqdo2doqdodqdodqdqdqdod2d2d2dpdodqd2d2dqdpdqdqdqdpdqd2d2dqdqdqdoadoqdo2do2doqdoado2d2dqd2dqdqdod2dqd2dpd2dqdpdq-!d!dodoqdoodo2doodpd!d!d!d!d!d!d!d!dodoqdo2doqdoqdoqdo2doqdoadoodod!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoqdoadoqdoodoqdoodoqd2-!d!dqdo2doodoadoad2d!d!d!d!d!d!d!d!dodoodoodoqdo2doodoadoqdo2doad2d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoado2do2do2doadoqdoqd2-!d!dpd2dqdpd2dpd!d!d!d!d!d!d!d!dpdo2doqdoqdoadoodoqdo2do2doodod!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoadoadoqdoqdoqdoodo2do-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoqdo2doqdoadoqdo2doodoadoad2d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoado2doodoqdoqdoqdoqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoodoqdo2do2doadoqdoadoqdo2dpd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoqdoqdoqdoqdoadoqdo2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoodoado2doodo2do2do2doodoqdqd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoodoadoqdoqdoqdoqdoadq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoqdoqdoqdoadoqdo2doodood2d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doqdo2doqdo2doodoqdoqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoado2doqdoodoqdo2doodoqdo2dpd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoqdoodoqdoodo2do2doadq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doqdo2do2doqdo2do2doqdo2doad2d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2do2doadoadoadoqdo2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doodoadoqdoqdoadoodoado2doqdod!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdo2doadoqdoqdoqdoqdoodo-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doodoqdo2do2do2do2do2dood2d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoadoodoodo2doqdoodoodo-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoqdo2doodoqdo2doqdoqdo2doqd2d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoadoqdoado2do2doadoadp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoodo2doadoqdo2doqdoodoqdoadpd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodo2do2doqdoqdoqdoodoadp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpd2dqd2d2d2d2dod2d2dqd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoqdoodoqdoqdo2doqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dododqdod2dpdpd2dq-!--poqdormdo28drodq8mdo5rpdo525dm44dap5dra4drq2d|prpd|p25d|q44d|2r4d|222d|o4ad|82qd|p4md|po8d|q28d|2rod|2ordo528dmrodmorda2pdrr5dro4dp4p-|qoomd|qoomd|qoomd|qoomd|qoomd|825d|825d|825d|42ad|42ad|42ad|oqo2d|oqo2d|oqo2d|op25d|op25d|op25d|22o4d|22o4d|22o4d|2q54d|2q54d|2q54d|22o4d|22o4d|22o4d|2qoqd|2qoqd|2qoqd|qoom-|452-|qqmo-2r8-228-288dpord8rdqmdqmmd25od2mmdo5p8d|q2qda2md|q2qdo5prdmmad|882d|852d2mmdppa-|q2oqd|228md|228md|oqrrd|84rdmmdmmd|pqpd|o2q8d|2oq8d|2oq8d|pmod|2omod|2omod|o2modo4od|qop5-q2dq2dq2dq2dq2dq2dq2d4od4od4od4odqrdqrdqrdqrdqrdqr-"; LevelCodeValue[3] = "!d!d!d!d!d!d!d!d!d!d2d2dpd2d2d2dqdpdpdodqd2dqdqdodod2d2d2-!d!d!d!d!d!d!d!d!d!dqdoodo2do2do2do2doodoado2doado2doado2doodoado2doadoqdo-!d!d!d!d!d!d!d!d!d!d2doadoado2do2do2doqdoqdoqdo2do2doadoodoqdo2doodo2doado-!d!d!d!d!d!d!d!d!d!d2doodoqdo2do2do2doodo2doadoqdo2doqdoadoodoqdoadoqdoqd2-!d!dqd2d2d2d2d!d!d!dqdo2do2do2doodoqdo2doadoqdoadoqdoqdoqdoqdoodoqdoqdoad2-!d!d2do2do2do2dqd!d!d!dqdoqdoqdo2do2doadoqdoqdpd2d2dodoqdoodo2do2do2doadq-!d!d2doodo2doqdod!d!d!dqdo2doado2doadoado2doqd2d!d!dqdoqdoadoado2doodoqdodqdqd2-!d!d2do2doqdoad2d!d!d!dqdo2do2doqdoqdo2doqdoqdqd!d!dqdo2doqdoqdoqdoqdoado2doadoadq-!d!dqdo2doodo2d2d!d!d!d2do2doodoadoadoodoadood2d!d!dqdoqdo2do2doqdo2doqdo2do2doqd2-!d!d2do2doodoqd2d!d!d!dodoodoqdoodo2do2doqdoadqd!d!d2doado2doqdoqdoadoado2doqdoad2-!d!d2do2doodo2dpd!d!d!dqdo2doqdoqdoqdoodoodo2d2d!d!d2do2doqdoodoodoadoqdo2doadoado-!d!d2doqdoqdoqdod!d!d!dqdoodoqdoqdo2doodoqdoad2d!d!dpdo2doqdoado2do2doodoado2doqd2-!d!dodo2doodoqd2d!d!d!dqdo2do2doadoadoodoodoqd2d!d!dqdoodo2doodoqdo2do2doqdo2do2dqdqd2d2d2d2dpdpdqdqd2dododpd2-!d!dodoadoadoqdqd!d!d!d2do2doodo2doqdo2dodqdpd!d!dodo2doodoqdoqdo2doadoodoqdoodo2do2doodo2doqdo2doado2doqdoqdoodo2do2doqdo-!d!d2doadoodoqdpdodqdqdqdoqdoodo2doadoqdqd!d!d!d!dqdoodoqdoqdoqdoadoqdoodoqdo2doqdo2doodo2do2do2do2do2doadoodoadoadoqdoad2-!d!dodo2doadoqdoqdo2do2doqdo2doqdoqdoqdo2dood2d!d!d!d!dodo2doado2do2doodoqdoqdoqdo2doqdoodoqdo2doqdo2doqdoadoqdoado2doqdoqdoqdq-!d!d2doodoodoodoadoadoado2doadoqdoqdo2do2do2dod!d!d!d!dpdoodoqdoodo2doqdoqdoqdo2doodo2doadoadoqdo2doado2doado2doqdoqdoodoqdoqd2-!d!d2doqdoqdo2do2do2doqdoodoqdoado2do2doqdoqd2d!d!d!d!d2do2doodoodoodo2do2do2doadoqdoqdoadoadoqdoodoodoado2do2doado2do2doqdoqdq-!d!d2do2doqdoodoodoodoqdoadoqdo2doqdoqdoqdo2dqd!d!d!d!dpdoqdo2doodoqdoqdo2doqdoqdoadoadoqdo2doadoadoqdo2doadoqdo2do2doadoqdoad2-!d!dqdoqdo2do2doqdo2doadoadoqdoqdo2doqdoadoqdqd!d!d!d!dodoqdo2doodoadoqdo2doado2doqdo2doqdo2doqdo2do2doado2doadoqdo2doodoqdo2d2-!d!dqd2d2d2dqdqd2d2d2dqdpdqdpd2d2d!d!d!d!d2dqd2dodqdqdpdqd2dqd2dpd2dpd2d2dpd2do2doqdoodoodo2do2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doqdo2do2doodoad2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doqdoodoqdo2do2doqdpd2dqd2dpdod2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodo2do2do2doqdo2do2doqdoqdoodo2do2do2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doodoado2doqdoodoado2doqdoqdoqdo2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdo2doqdoqdoqdo2doodoodoodoqdoqdo2doqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoado2do2doado2do2doodo2doado2doad2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoqdo2doodo2doqdoqdo2doqdoqdoadoqdo2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoodo2do2doadoodoqdoqdo2doqdoodoadoqdp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doodoodoodo2do2doqdo2doado2do2doodo2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoadoqdo2doadoodo2doqdo2doadoodoodoqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2dodqdpdodoodo2doqdoqdoadoqdoqdoqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdqdqdpdodo2doqdoodoado2doado2doqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdpdodpdodo2do2doqdo2doodo2doadoodq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodqd2dqd2do2do2doodoodoado2doqdood2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoadoqdoodoodoodo2do2doodoqdoodoodo-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doodoadoqdoadoqdoadoqdo2doqdoadoqdoqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doadoodo2do2doqdoodo2doqdo2do2doadq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doadoqdo2do2do2doqdo2doodoqdoqdoadq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoodo2doodoadoadoqdoqdoqdo2doqdo2do2do-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doadoadoadoqdoado2doqdoodo2doodoqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoqdoodoadoqdo2doado2do2doodoqdoodo2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoqdoado2doodo2doqdqdodqd2dod2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoadoadoadoadoqdp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doadoodoqdoqdoadq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoado2doodoqdoqdoadp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoqdoodo2do2doqdo2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoado2do2doodo2doqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doqdoadoadoqdoado-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoqdo2do2doqdoqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoadoadoodoadoodo2do-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doodoadoadoadoqdo2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoqdo2doodo2dood2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoado2doqdoodoqdo2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doadoodo2do2do2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoqdo2doadoodoqdoodo-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doado2do2do2doadoqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoodoado2doadoad2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doqdo2doadoodoodo2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodo2doadoqdo2do2do2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoadoqdoodoodoqdp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoado2doado2doadq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoqdoqdoqdo2doqdo2dpdpdpdqdqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoodo2doado2doqdo2do2do2doqdoadoad2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoqdoado2doqdoqdoqdoodoodoado2do2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doqdo2doadoqdo2doadoqdoado2do2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoodoadoqdoado2do2do2doodo2doodoodo-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doodoqdo2doqdoodoqdoqdo2doado2do-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoadoqdoqdoadoqdoodo2do2doqdo2doadp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoadoadoado2doado2doqdoado2do2doqdp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2do2do2do2do2doado2doodoadoodoad2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doodoado2doodoqdo2doqdoodoadoado-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoadoodo2doadoadoqdo2doodo2do2doqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoqdoado2do2do2doado2doadoodoodoodo-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doadoadoadoodoado2doado2do2do2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2dqdqd2dqd2dqdqd2d2do2doqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoqdoad2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdo2doodp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoodq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoodo2d2dqdod2dodqd2dqd2dpd2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdo2doadoadoado2doado2doodo2doodoqdo2do2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdpdqdpd2dqdod2dodod2d2doadoqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2dood2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoodoadq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoado2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoqdoodq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doodoodq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doqdp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoado2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoado2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doad2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoqdo2dqdodpdqdqdododpdodq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoqdoqdoadoado2do2doadoadoodo2do-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dod2dpdqd2dqdpd2dpdpdo2doqdp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoadoad2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoodoadp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdo2doqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoado2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2do2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoadood2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodo2do2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doodq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdo2do2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoado2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoado2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2do2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2d2dqdq--8orpd8o25d8544d85o2dpm8adpm5pdpa85dprm4dp8rodp8rodp8rodp8rodp8rodp8rodp8rodp8rodp8rodp8rodqmrodqmrodqmrodqmrodqmrodqmrodqmrodqmrodqmrodqmrodqmrodqmrodqmrodqpqodqpa8dq8qmdo82qdo8m8do44rd4pod4m8drpmdq2od8rpdo5ado5ado5ad2qmpd2p44d28qa-qqaqdqqaqdqqaqdqqaqdqqaqdqqaqdqqaqdqqaqdq5q2dq54adqo5pdqop5dqor4dq2o2dq2padq2apdqq25dqq84d2pa2d28oad288pd28m5d2424d2442d24mad2rqpd2rr5d2a54d2ap2d2arad2mopd22q5d22q5d22q5d22q5d22q5d22q5d25a4d25a4d25a4dopa2daq8dmqpdmaado5p2d2o22d2o22d2o22-|8q-|po-2r8-228-8om4dpqp8d8ooodpmordqpmdpm4doo22door4do2q5do2apdoqqadoqm2dopp4do855do88pdo45ado442doro4dorr5doa2pdoaradomq2doma4d282mdq8o4dq2p4d45dom4domam 8doaqpdoprpdo2mpd8mpd2m5d885dqo4mdq2p4dq8aad2o44d2aa4d2824do8qmdo454dar2dq55d224d8prdq2rmdqr2m-qq8md2maqdqpqqdqpqqdao4dop44d2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2oamd2orad2o54d4pado8md2pq5 8d2p44d2p44d2p44d2o4odop8mdao5d2q45d228od228od25ord25ord25ord2o2rd2o24d25oodo2odooamdoqpmd2po4d2po4-qrd8ad8ad8ad4od4od8pd8pd8pd8pd8pd8pd8pd8pd8pd8pd8pd8pd8pd8pd8pd8pd8pd45d8md8md8mdqrdppdq5dq5dq5dqodqodqodqmdq2dq2dq2dq2dq2dq2dq2dq2dq2dq2dq2d4od4o-!d!d!d!d!d!d!d!d!d!d2d2dpd2d2d2dqdpdpdodqd2dqdqdodod2d2d2-!d!d!d!d!d!d!d!d!d!dqdoodo2do2do2do2doodoado2doado2doado2doodoado2doadoqdo-!d!d!d!d!d!d!d!d!d!d2doadoado2do2do2doqdoqdoqdo2do2doadoodoqdo2doodo2doado-!d!d!d!d!d!d!d!d!d!d2doodoqdo2do2do2doodo2doadoqdo2doqdoadoodoqdoadoqdoqd2-!d!dqd2d2d2d2d!d!d!dqdo2do2do2doodoqdo2doadoqdoadoqdoqdoqdoqdoodoqdoqdoad2-!d!d2do2do2do2dqd!d!d!dqdoqdoqdo2do2doadoqdoqdpd2d2dodoqdoodo2do2do2doadq-!d!d2doodo2doqdod!d!d!dqdo2doado2doadoado2doqd2d!d!dqdoqdoadoado2doodoqdodqdqd2-!d!d2do2doqdoad2d!d!d!dqdo2do2doqdoqdo2doqdoqdqd!d!dqdo2doqdoqdoqdoqdoado2doadoadq-!d!dqdo2doodo2d2d!d!d!d2do2doodoadoadoodoadood2d!d!dqdoqdo2do2doqdo2doqdo2do2doqd2-!d!d2do2doodoqd2d!d!d!dodoodoqdoodo2do2doqdoadqd!d!d2doado2doqdoqdoadoado2doqdoad2-!d!d2do2doodo2dpd!d!d!dqdo2doqdoqdoqdoodoodo2d2d!d!d2do2doqdoodoodoadoqdo2doadoado-!d!d2doqdoqdoqdod!d!d!dqdoodoqdoqdo2doodoqdoad2d!d!dpdo2doqdoado2do2doodoado2doqd2-!d!dodo2doodoqd2d!d!d!dqdo2do2doadoadoodoodoqd2d!d!dqdoodo2doodoqdo2do2doqdo2do2dqdqd2d2d2d2dpdpdqdqd2dododpd2-!d!dodoadoadoqdqd!d!d!d2do2doodo2doqdo2dodqdpd!d!dodo2doodoqdoqdo2doadoodoqdoodo2do2doodo2doqdo2doado2doqdoqdoodo2do2doqdo-!d!d2doadoodoqdpdodqdqdqdoqdoodo2doadoqdqd!d!d!d!dqdoodoqdoqdoqdoadoqdoodoqdo2doqdo2doodo2do2do2do2do2doadoodoadoadoqdoad2-!d!dodo2doadoqdoqdo2do2doqdo2doqdoqdoqdo2dood2d!d!d!d!dodo2doado2do2doodoqdoqdoqdo2doqdoodoqdo2doqdo2doqdoadoqdoado2doqdoqdoqdq-!d!d2doodoodoodoadoadoado2doadoqdoqdo2do2do2dod!d!d!d!dpdoodoqdoodo2doqdoqdoqdo2doodo2doadoadoqdo2doado2doado2doqdoqdoodoqdoqd2-!d!d2doqdoqdo2do2do2doqdoodoqdoado2do2doqdoqd2d!d!d!d!d2do2doodoodoodo2do2do2doadoqdoqdoadoadoqdoodoodoado2do2doado2do2doqdoqdq-!d!d2do2doqdoodoodoodoqdoadoqdo2doqdoqdoqdo2dqd!d!d!d!dpdoqdo2doodoqdoqdo2doqdoqdoadoadoqdo2doadoadoqdo2doadoqdo2do2doadoqdoad2-!d!dqdoqdo2do2doqdo2doadoadoqdoqdo2doqdoadoqdqd!d!d!d!dodoqdo2doodoadoqdo2doado2doqdo2doqdo2doqdo2do2doado2doadoqdo2doodoqdo2d2-!d!dqd2d2d2dqdqd2d2d2dqdpdqdpd2d2d!d!d!d!d2dqd2dodqdqdpdqd2dqd2dpd2dpd2d2dpd2do2doqdoodoodo2do2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doqdo2do2doodoad2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doqdoodoqdo2do2doqdpd2dqd2dpdod2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodo2do2do2doqdo2do2doqdoqdoodo2do2do2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doodoado2doqdoodoado2doqdoqdoqdo2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdo2doqdoqdoqdo2doodoodoodoqdoqdo2doqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoado2do2doado2do2doodo2doado2doad2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoqdo2doodo2doqdoqdo2doqdoqdoadoqdo2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoodo2do2doadoodoqdoqdo2doqdoodoadoqdp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doodoodoodo2do2doqdo2doado2do2doodo2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoadoqdo2doadoodo2doqdo2doadoodoodoqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2dodqdpdodoodo2doqdoqdoadoqdoqdoqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdqdqdpdodo2doqdoodoado2doado2doqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdpdodpdodo2do2doqdo2doodo2doadoodq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodqd2dqd2do2do2doodoodoado2doqdood2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoadoqdoodoodoodo2do2doodoqdoodoodo-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doodoadoqdoadoqdoadoqdo2doqdoadoqdoqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doadoodo2do2doqdoodo2doqdo2do2doadq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doadoqdo2do2do2doqdo2doodoqdoqdoadq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoodo2doodoadoadoqdoqdoqdo2doqdo2do2do-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doadoadoadoqdoado2doqdoodo2doodoqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoqdoodoadoqdo2doado2do2doodoqdoodo2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoqdoado2doodo2doqdqdodqd2dod2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoadoadoadoadoqdp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doadoodoqdoqdoadq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoado2doodoqdoqdoadp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoqdoodo2do2doqdo2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoado2do2doodo2doqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doqdoadoadoqdoado-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoqdo2do2doqdoqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoadoadoodoadoodo2do-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doodoadoadoadoqdo2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoqdo2doodo2dood2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoado2doqdoodoqdo2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doadoodo2do2do2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoqdo2doadoodoqdoodo-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doado2do2do2doadoqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoodoado2doadoad2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doqdo2doadoodoodo2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodo2doadoqdo2do2do2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoadoqdoodoodoqdp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoado2doado2doadq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoqdoqdoqdo2doqdo2dpdpdpdqdqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoodo2doado2doqdo2do2do2doqdoadoad2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoqdoado2doqdoqdoqdoodoodoado2do2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doqdo2doadoqdo2doadoqdoado2do2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoodoadoqdoado2do2do2doodo2doodoodo-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doodoqdo2doqdoodoqdoqdo2doado2do-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoadoqdoqdoadoqdoodo2do2doqdo2doadp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoadoadoado2doado2doqdoado2do2doqdp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2do2do2do2do2doado2doodoadoodoad2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doodoado2doodoqdo2doqdoodoadoado-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoadoodo2doadoadoqdo2doodo2do2doqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoqdoado2do2do2doado2doadoodoodoodo-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doadoadoadoodoado2doado2do2do2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2dqdqd2dqd2dqdqd2d2do2doqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoqdoad2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdo2doodp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoodq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoodo2d2dqdod2dodqd2dqd2dpd2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdo2doadoadoado2doado2doodo2doodoqdo2do2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdpdqdpd2dqdod2dodod2d2doadoqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2dood2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoodoadq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoado2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoqdoodq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doodoodq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doqdp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoado2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoado2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doad2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoqdo2dqdodpdqdqdododpdodq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoqdoqdoadoado2do2doadoadoodo2do-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dod2dpdqd2dqdpd2dpdpdo2doqdp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoadoad2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoodoadp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdo2doqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoado2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2do2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoadood2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodo2do2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doodq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdo2do2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoado2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoado2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2do2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2d2dqdq--8orpd8o25d8544d85o2dpm8adpm5pdpa85dprm4dp8rodp8rodp8rodp8rodp8rodp8rodp8rodp8rodp8rodp8rodqmrodqmrodqmrodqmrodqmrodqmrodqmrodqmrodqmrodqmrodqmrodqmrodqmrodqpqodqpa8dq8qmdo82qdo8m8do44rd4pod4m8drpmdq2od8rpdo5ado5ado5ad2qmpd2p44d28qa-qqaqdqqaqdqqaqdqqaqdqqaqdqqaqdqqaqdqqaqdq5q2dq54adqo5pdqop5dqor4dq2o2dq2padq2apdqq25dqq84d2pa2d28oad288pd28m5d2424d2442d24mad2rqpd2rr5d2a54d2ap2d2arad2mopd22q5d22q5d22q5d22q5d22q5d22q5d25a4d25a4d25a4dopa2daq8dmqpdmaado5p2d2o22d2o22d2o22-|8q-|po-2r8-228-8om4dpqp8d8ooodpmordqpmdpm4doo22door4do2q5do2apdoqqadoqm2dopp4do855do88pdo45ado442doro4dorr5doa2pdoaradomq2doma4d282mdq8o4dq2p4d45dom4domam 8doaqpdoprpdo2mpd8mpd2m5d885dqo4mdq2p4dq8aad2o44d2aa4d2824do8qmdo454dar2dq55d224d8prdq2rmdqr2m-qq8md2maqdqpqqdqpqqdao4dop44d2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2oamd2orad2o54d4pado8md2pq5 8d2p44d2p44d2p44d2o4odop8mdao5d2q45d228od228od25ord25ord25ord2o2rd2o24d25oodo2odooamdoqpmd2po4d2po4-qrd8ad8ad8ad4od4od8pd8pd8pd8pd8pd8pd8pd8pd8pd8pd8pd8pd8pd8pd8pd8pd8pd45d8md8md8mdqrdppdq5dq5dq5dqodqodqodqmdq2dq2dq2dq2dq2dq2dq2dq2dq2dq2dq2d4od4o-!d!d!d!d!d!d!d!d!d!d2d2dpd2d2d2dqdpdpdodqd2dqdqdodod2d2d2-!d!d!d!d!d!d!d!d!d!dqdoodo2do2do2do2doodoado2doado2doado2doodoado2doadoqdo-!d!d!d!d!d!d!d!d!d!d2doadoado2do2do2doqdoqdoqdo2do2doadoodoqdo2doodo2doado-!d!d!d!d!d!d!d!d!d!d2doodoqdo2do2do2doodo2doadoqdo2doqdoadoodoqdoadoqdoqd2-!d!dqd2d2d2d2d!d!d!dqdo2do2do2doodoqdo2doadoqdoadoqdoqdoqdoqdoodoqdoqdoad2-!d!d2do2do2do2dqd!d!d!dqdoqdoqdo2do2doadoqdoqdpd2d2dodoqdoodo2do2do2doadq-!d!d2doodo2doqdod!d!d!dqdo2doado2doadoado2doqd2d!d!dqdoqdoadoado2doodoqdodqdqd2-!d!d2do2doqdoad2d!d!d!dqdo2do2doqdoqdo2doqdoqdqd!d!dqdo2doqdoqdoqdoqdoado2doadoadq-!d!dqdo2doodo2d2d!d!d!d2do2doodoadoadoodoadood2d!d!dqdoqdo2do2doqdo2doqdo2do2doqd2-!d!d2do2doodoqd2d!d!d!dodoodoqdoodo2do2doqdoadqd!d!d2doado2doqdoqdoadoado2doqdoad2-!d!d2do2doodo2dpd!d!d!dqdo2doqdoqdoqdoodoodo2d2d!d!d2do2doqdoodoodoadoqdo2doadoado-!d!d2doqdoqdoqdod!d!d!dqdoodoqdoqdo2doodoqdoad2d!d!dpdo2doqdoado2do2doodoado2doqd2-!d!dodo2doodoqd2d!d!d!dqdo2do2doadoadoodoodoqd2d!d!dqdoodo2doodoqdo2do2doqdo2do2dqdqd2d2d2d2dpdpdqdqd2dododpd2-!d!dodoadoadoqdqd!d!d!d2do2doodo2doqdo2dodqdpd!d!dodo2doodoqdoqdo2doadoodoqdoodo2do2doodo2doqdo2doado2doqdoqdoodo2do2doqdo-!d!d2doadoodoqdpdodqdqdqdoqdoodo2doadoqdqd!d!d!d!dqdoodoqdoqdoqdoadoqdoodoqdo2doqdo2doodo2do2do2do2do2doadoodoadoadoqdoad2-!d!dodo2doadoqdoqdo2do2doqdo2doqdoqdoqdo2dood2d!d!d!d!dodo2doado2do2doodoqdoqdoqdo2doqdoodoqdo2doqdo2doqdoadoqdoado2doqdoqdoqdq-!d!d2doodoodoodoadoadoado2doadoqdoqdo2do2do2dod!d!d!d!dpdoodoqdoodo2doqdoqdoqdo2doodo2doadoadoqdo2doado2doado2doqdoqdoodoqdoqd2-!d!d2doqdoqdo2do2do2doqdoodoqdoado2do2doqdoqd2d!d!d!d!d2do2doodoodoodo2do2do2doadoqdoqdoadoadoqdoodoodoado2do2doado2do2doqdoqdq-!d!d2do2doqdoodoodoodoqdoadoqdo2doqdoqdoqdo2dqd!d!d!d!dpdoqdo2doodoqdoqdo2doqdoqdoadoadoqdo2doadoadoqdo2doadoqdo2do2doadoqdoad2-!d!dqdoqdo2do2doqdo2doadoadoqdoqdo2doqdoadoqdqd!d!d!d!dodoqdo2doodoadoqdo2doado2doqdo2doqdo2doqdo2do2doado2doadoqdo2doodoqdo2d2-!d!dqd2d2d2dqdqd2d2d2dqdpdqdpd2d2d!d!d!d!d2dqd2dodqdqdpdqd2dqd2dpd2dpd2d2dpd2do2doqdoodoodo2do2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doqdo2do2doodoad2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doqdoodoqdo2do2doqdpd2dqd2dpdod2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodo2do2do2doqdo2do2doqdoqdoodo2do2do2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doodoado2doqdoodoado2doqdoqdoqdo2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdo2doqdoqdoqdo2doodoodoodoqdoqdo2doqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoado2do2doado2do2doodo2doado2doad2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoqdo2doodo2doqdoqdo2doqdoqdoadoqdo2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoodo2do2doadoodoqdoqdo2doqdoodoadoqdp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doodoodoodo2do2doqdo2doado2do2doodo2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoadoqdo2doadoodo2doqdo2doadoodoodoqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2dodqdpdodoodo2doqdoqdoadoqdoqdoqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdqdqdpdodo2doqdoodoado2doado2doqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdpdodpdodo2do2doqdo2doodo2doadoodq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodqd2dqd2do2do2doodoodoado2doqdood2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoadoqdoodoodoodo2do2doodoqdoodoodo-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doodoadoqdoadoqdoadoqdo2doqdoadoqdoqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doadoodo2do2doqdoodo2doqdo2do2doadq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doadoqdo2do2do2doqdo2doodoqdoqdoadq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoodo2doodoadoadoqdoqdoqdo2doqdo2do2do-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doadoadoadoqdoado2doqdoodo2doodoqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoqdoodoadoqdo2doado2do2doodoqdoodo2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoqdoado2doodo2doqdqdodqd2dod2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoadoadoadoadoqdp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doadoodoqdoqdoadq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoado2doodoqdoqdoadp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoqdoodo2do2doqdo2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoado2do2doodo2doqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doqdoadoadoqdoado-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoqdo2do2doqdoqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoadoadoodoadoodo2do-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doodoadoadoadoqdo2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoqdo2doodo2dood2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoado2doqdoodoqdo2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doadoodo2do2do2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoqdo2doadoodoqdoodo-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doado2do2do2doadoqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoodoado2doadoad2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doqdo2doadoodoodo2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodo2doadoqdo2do2do2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoadoqdoodoodoqdp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoado2doado2doadq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoqdoqdoqdo2doqdo2dpdpdpdqdqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoodo2doado2doqdo2do2do2doqdoadoad2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoqdoado2doqdoqdoqdoodoodoado2do2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doqdo2doadoqdo2doadoqdoado2do2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoodoadoqdoado2do2do2doodo2doodoodo-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doodoqdo2doqdoodoqdoqdo2doado2do-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoadoqdoqdoadoqdoodo2do2doqdo2doadp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoadoadoado2doado2doqdoado2do2doqdp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2do2do2do2do2doado2doodoadoodoad2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doodoado2doodoqdo2doqdoodoadoado-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoadoodo2doadoadoqdo2doodo2do2doqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoqdoado2do2do2doado2doadoodoodoodo-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doadoadoadoodoado2doado2do2do2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2dqdqd2dqd2dqdqd2d2do2doqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoqdoad2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdo2doodp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoodq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoodo2d2dqdod2dodqd2dqd2dpd2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdo2doadoadoado2doado2doodo2doodoqdo2do2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdpdqdpd2dqdod2dodod2d2doadoqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2dood2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoodoadq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoado2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoqdoodq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doodoodq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doqdp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoado2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoado2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doad2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoqdo2dqdodpdqdqdododpdodq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoqdoqdoadoado2do2doadoadoodo2do-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dod2dpdqd2dqdpd2dpdpdo2doqdp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoadoad2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoodoadp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdo2doqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoado2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2do2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoadood2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodo2do2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doodq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdo2do2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoado2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoado2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2do2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2d2dqdq--8orpd8o25d8544d85o2dpm8adpm5pdpa85dprm4dp8rodp8rodp8rodp8rodp8rodp8rodp8rodp8rodp8rodp8rodqmrodqmrodqmrodqmrodqmrodqmrodqmrodqmrodqmrodqmrodqmrodqmrodqmrodqpqodqpa8dq8qmdo82qdo8m8do44rd4pod4m8drpmdq2od8rpdo5ado5ado5ad2qmpd2p44d28qa-qqaqdqqaqdqqaqdqqaqdqqaqdqqaqdqqaqdqqaqdq5q2dq54adqo5pdqop5dqor4dq2o2dq2padq2apdqq25dqq84d2pa2d28oad288pd28m5d2424d2442d24mad2rqpd2rr5d2a54d2ap2d2arad2mopd22q5d22q5d22q5d22q5d22q5d22q5d25a4d25a4d25a4dopa2daq8dmqpdmaado5p2d2o22d2o22d2o22-|8q-|po-2r8-228-8om4dpqp8d8ooodpmordqpmdpm4doo22door4do2q5do2apdoqqadoqm2dopp4do855do88pdo45ado442doro4dorr5doa2pdoaradomq2doma4d282mdq8o4dq2p4d45dom4domam 8doaqpdoprpdo2mpd8mpd2m5d885dqo4mdq2p4dq8aad2o44d2aa4d2824do8qmdo454dar2dq55d224d8prdq2rmdqr2m-qq8md2maqdqpqqdqpqqdao4dop44d2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2pmmd2oamd2orad2o54d4pado8md2pq5 8d2p44d2p44d2p44d2o4odop8mdao5d2q45d228od228od25ord25ord25ord2o2rd2o24d25oodo2odooamdoqpmd2po4d2po4-qrd8ad8ad8ad4od4od8pd8pd8pd8pd8pd8pd8pd8pd8pd8pd8pd8pd8pd8pd8pd8pd8pd45d8md8md8mdqrdppdq5dq5dq5dqodqodqodqmdq2dq2dq2dq2dq2dq2dq2dq2dq2dq2dq2d4od4o-"; LevelCodeValue[4] = "!d!dododqdpd2dqdpdpdqdqdqdodqdpdo-!d!dpdoadoqdoodo2doqdo2doadoodoadoqdo2doqdo2dp-!d!dpd2dqdodpdqd2d2d2dqdo2do2do2doodp-!d!d!d!d!d!d!d!d!d!d!d2do2doodoodoodq-!d!d!d!d!d!d!d!d!d!d!dqdoqdoodoadoodq-!d!d!d!d!d!d!d!d!d!d!dodoodoodoodoqdq-!d!d!d!d!d!d!d!d!d!d!d2do2do2doodoodqd!d!d!d!d2dpdpdpdpd2dqd2d2d2dqdqdodqdqdod2dqdp-!d!d!d!d!d!d!d!d!d!d!d2doodoodoadoqd2d!d!d!d!dodo2doado2d2doqdoqdqdo2do2doodoodo2do2do2doado2do2d2-!d!d!d!d!d!d!d!d!d!d!dodo2do2doodoodqd!d!d!d!dpdoodo2doqd2doqdoodqdoqdoadpdqd2dqdodoodo2do2dq-!d!d!d!d!d!d!d!d!d!d!dpdo2doqdoadoadqd!d!d!d!dqdoqdoodood2do2dood2doodo2d2d!d!d!d2doadoodoodo-!d!d!d!d!d!d!d!d!d!d!d2doadoodoodo2dqd!d!d!d!dqdo2doqdoqd2doqdoodqdoodoadpd!d!d!dpdo2do2do2do-!d!d!d!d!d!d!d!d!d!d!dqdo2do2do2dood2d!d!d!d!dodoodoqdoodoqdoodo2dqdo2dood2d!d!d!dqdo2doodoodo-!d!d!d!d!d!d!d!d!d!d!dodoadoodo2do2dqd!d!d!d!d2do2doodoqdo2doadood2doadoadqd!d!d!dqdo2doodoodqdod2dpd2dp-!d!d!d!d!d!d!d!d!d!d!dqdo2doodoodoad2dqdod2dqdpdoadoqdoodoodoqdoqdo2doqdood2d!d!d!dpdo2doqdoodoodoodoadoodood2-!d!d!d!d!d!d!d!d!d!d!d2doqdo2doqdoado2doodo2doodoadoodoodoado2do2do2do2doadoadoqdpd!d!d!dqdoado2doqdodoodoodoado2d2-!d!d!d!d!d!d!d!d!d!d!d2do2doadoodoado2do2doodoodoodoadoadoodoodoodoodoodo2doodood2d!d!d!dqdoodoadoodqdo2do2doado2do-!d!d!d!d!d!d!d!d!d!d!dqd2d2dpdqdodqdodqdpd2doodoodo2doadoqdoodoodoodo2dod!d!d!dodoadoodo2doodo2doodoodoadq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoadoadoado2doodoqdqdo2do2dpd!d!d!dqdoodoqdo2dodoodoodoadoado-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doado2doqdoqdoadqdoodoodod!d!d!d2doodo2doodpdoodoado2doqdo-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doqdo2dpdo2doododo2doodpd!d!d!d2do2do2doqdoadoodoqdoodood2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoqdoadoadqdoadoqd2doodo2dqd!d!d!dqdoodoqdoodqdo2doqdoodoodq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoqdo2doadodoqdo2dqdo2doqdqd!d!d!dpdoqdo2do2d2do2doqdo2do2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoadoqdoqd2doqdo2d2do2doodod!d!d!dpdoodoodo2doqdo2doqdo2do2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2dqdodqd2d2d2d2d2dpd2d!d!d!dpdoodoadoad2doqdoodoado2do-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doqdo2d2doodo2do2do2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdqd2dpdqdpdqdoodo2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoodoqdp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doadq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoodoado-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoodood2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodo2doodq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoodoqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoodo2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoodoadq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodo2doadq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoqdoqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodpdpdpdoado2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoodoqdoodoqdoqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoqdoodoado2do2do-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doqdoqdoodo2doqdo-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2do2doadoodoqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2dqd2d2dpd2do-!--2rpd2rpd2rpd2rpd2rpd2rpd2rpd2rpd2rpd2rpd2rpd2rpd8r4d8rpdoq2rdoq2rd8r5do2padop52do5mrdmpmd25r8d2524domr4doq24d228p-2a4dq22dq8adqmpdpq5dp44d852d8qad8rpd4o5d4p4d4a2do242dopo2dopo2do24qdo84pdom48dom48dom4pdom4pd2o8ad2o8rd2o8rdo88rd22oo-omm-q8-2r8-228-4q5d4q5d42ado2r4do2a5do2a5d222rd22q5dmqpdo222d4pad4pado254do254dmq5dqoadrq2do2mo 8dap8d2omrd22mmdop85dop85dop85dop2odoqr2dm82doo5qdo28qdop5q-o2p2doqm2do8p2do8p2doqm2do2p2d2oq8d254mdoa8qdoa8qdoqqmdoorrdoorrdoqqmdoppad4m2d4m2do854 8d2oqad25o5d255mdoa45dom5adom8adoaq4doaq4domp2domp2domp2domp2-4od4od4od4od4od4odqrdq2dq2dq2dq2dq2dq2dq2dq2dq2dq2dppdqmd8md8md8rd8rd8rd88d88d4od4od4od4o-"; LevelCodeValue[5] = "!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpd2dpdpdqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doqdoodood2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doqdo2do2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoqdo2doadoadq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoqdoqdo2doqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoado2do2doqdo-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodo2doqdoqdo2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doqdo2do2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdodqdqdpdqdpdod2do2doqdo2doad2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoodoodoodoodoodo2doqdo2doqdo2do2do2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doqdoqdoodoadoqdoqdoqdo2doqdoqdoqdoqdo-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2do2doqdoado2doodoadoqdo2do2do2doqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoqdoqdoado2do2do2do2do2do2do2doodoqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodo2doqdoqdoqdo2dpdpdpdqd2d2dpd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoqdo2doqdoqdo2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doqdo2do2doqdo2do-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdo2doqdoadoqdoqdo-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doqdoqdoodo2do2do-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doodo2doqdoado2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doadoqdoadoqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doqdoodoqdoqdoqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodo2doqdoadoodo2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoqdo2doodo2doqdp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doado2doqdoqdo2dpd2dpdpd2dodpdpdqdpdo-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doodo2doadoadoado2doodoodoqdoqdoqdoado2doqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doodoodo2doadoqdo2doadoqdoqdoqdo2do2doqdoqdoqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoqdoqdoado2do2doodoqdoqdoodo2doado2do2doqdoqdo-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doqdo2do2doodoodoadoqdo2doado2doadoqdoqdo2do2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdpdodpd2dpdodpdod2dpdpdoqdoado2do2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doqdoado2doqdp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doqdoadoqdoqdo-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoqdoqdoado2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doqdoado2do2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodo2do2do2doadq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doqdoodo2do-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doodoqdo2doqdp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2d2d2d2dpd2dqd2dod2dpdpd2doodoodoadoodp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doqdoqdo2doado2do2do2do2do2doqdoqdoqdoqdoqdo2doqdp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoadoqdoqdo2do2doadoado2doqdoqdoqdoqdoqdoqdoado2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoqdoodoodoodo2do2doodoqdoqdo2do2do2doadoado2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodo2doodoqdoqdoqdoodoodoado2doadoodo2doqdo2doqdoodq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodo2doodo2do2do2dod2d2dpdpdpdpdpd2d2dqdo-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doqdoqdo2doqdo2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doqdo2doado2doado-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doqdoqdo2do2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodo2doqdoodo2doqdp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doqdoqdoqdoqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoqdo2doqdoodood2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doqdo2doqdo2doodp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoodo2doodoado2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doodo2doqdoodoodq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoodoqdoqdoqdoqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoado2doqdoqdoqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdo2do2doodoqdoado-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doadoqdoadoqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doodoado2do2doodp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2doqdoqdoodo2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doqdoado2do2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdo2do2doqdo2doqdp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoadoadoqdoodo2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoqdoadoadoad2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doodoqdo2doqdo2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoodoodo2do2doqd2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoodoqdoqdoqdo2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dqdoodoqdoodoodo2dp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdo2doodo2doqdo2d2dpd2d2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doadoqdoqdoadoqd2doqdoqdp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoqdoqdo2doqdoqd2doodood2-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdo2doadoado2do2dqdoqdoodo-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doqdoodoqdoqdood2do2doodq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodo2doqdodo2doqdoado2doqdq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2doqdoadpdo2do2doqdo2do2dq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dodoqdo2dpdoqdoodo2doadoodq-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2do2doodo2do2do2dpdo2doqdp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdoqdoodoqdoqdo2d2do2do2do-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdo2do2doqdoqdo2dodo2doqdp-!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dpdo2doqdoqdo2doqdodoqdoqd2-!d!d!d2dpd2dod2d2d2dpdqdqdpdqdpd2dpdqdpdodqdpdpd2dqdpdpdo2do2d2-!d!d!dqdo2doodoadoqdoodoado2do2do2doodoodoado2do2dpdo2doodo2doqdo2doodo2dpdoqdoqdood2-!d!d!d2doadoado2do2do2doodo2do2doqdo2doqdoqdo2do2dpdoadoqdoqdoqdoqdo2do2dpdo2doodoqdp-!d!d!dpdo2do2doqdoado2doodo2doqdoqdoadoqdoqdo2doodqdo2doqdo2doqdo2doadoqd2doadoadoad2-!d!d!dqdoodoodo2doqdo2do2doado2doado2dpdoado2doqdoodoqdoodoqd2doodoqdo2doodoqdoqdo2d2-!d!d!d2doodoadoqdoqdoqdo2doqdoqdoadoqd2do2doodoqdoodoqdoodoqd2doadoodo2doado2doqdo2d2-!d!d!dqdoadoadoqdoadoado2do2doqdoadoodpdo2doado2doodo2doqdoadodoqdoqdoqdoqdoqdoadoqd2-!d!d!d2doodoadpdqd2d2d2dpdqd2dqdpdpdpdodqdqd2dodqdpd2dqdqdpdqdq-!d!d!dpdoodoadp-!d!d!d2do2doado-!d!d!d2do2do2do-!d!d!dpdo2doqd2-!d!d!dpdo2doqd2-!d!d!dpdoqdo2do-!d!d!dpdo2doqd2-!d!d!dqdoado2do-!d!d!dodo2do2dq-!d!d!dpdoqdo2dp-!d!d!d2doadoadp-!d!d!dpdo2do2dp-!d!d2d2doqdo2d2dpd2dpdp-!d!dodoodoodoadoqdoodoado2d2-!d!dodoqdoodoodoodo2do2doqd2-!d!dpdoadoadoodoadoqdo2do2d2-!d!dpdo2doqdo2doqdo2doodoado-!d!dodo2doado2doodoqdo2doadp-!d!dpdoqdoodoqdoqdoado2doado-!d!d2d2dpdpdqdpdpdqdp--qr4dpq5dpapdo522do5r4dooq5do85ado85ado85ad2o84d2o84d2o84d28aad2445d2rq2dqrr4dqr22dqaq5dp52adqmrpdqm25dq8p2dq4opdq4a4dq82mdq82mdq8aqdq8aqdpo28dpo24dpprrdp8pmdp42od8o2rd8qr4d8qr4d8o2pdpqradpqrr-25pd25pd25pd|2omd|2omd|2omd|2od8odo2qdo2qd8od|2od|288d|288d|288d|q2rd|q2rd|q2rd|o48d|o48d|o48d|o48d|o48d|o48d|opd|4ad|4ad|opd|2o8d|4opd|o2o8d|o2o8d|o2o8d|o5opd|o5oqd|oqomd|oqomd|ao4d|poa-255-|opmo-2r8-228-8q42d8q5ad828pdpq54dpo8pdpqo4dpo8odqraodqmrmdqaopd2p2rdq288doqoodor4odpampd254rdo8mmdoqprd2pad2om5dpqodr5odammdo2m8dommrdo45od22pmd2mqqdq85mdqm2qdp5m4d8or8d82rpdp2podqoo8doa44d84adp5m2dpq82dpq82-|o5q4d|o5q4d|o5q4d|aq4d|4qrd|pqrd|2q8d|qq4d|oamd|qmd|omod|omod|oqrdqr8d|o225d22md22md|2m4do8mdqq2dmqdmqd|2pmd|2pmd2rqd2rqd|q5qd|q5qd|q5qd|q5qd|qq4d|o225d|o2oad|qrd|oamdq8ad2o5d|rqqd|8qpd|mq2-4od4od4od4od4od4od4od4od4od4od4od4od4od8ad8ad8md8md8mdqrdppdq2dq2dq2dq2dq2dq2dq2dq2dq2dq2dq2dq2dq2dqodqodqodqodq2dq2dq2-"; LevelCodeValue[6] = "!d!dqdpdpdpdqd2dqdqd2dod2d2d2dqdqdqdqd2dodpdqdqdodpdpdododododpd2dqdod2dqd2dqdodqdpdqd2dodqdododqd2dqdpdododqd2d2d2dpdpdodod2dod2dod2d2d2d2dqdqdodqdod2d2-!d!d2d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do-!d!dpd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do-!d!dpd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dq-!d!dqd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dq-!d!d2d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dq-!d!dod!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dq-!d!dqd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dq-!d!dpd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dq-!d!dqd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dp-!d!dqd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dq-!d!d2d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dq-!d!d2d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do5d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dp-!d!dpd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do5d!d!do5d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do-!d!d2d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do5d!d!do5d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do-!d!dqd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do5do5do5do5do5do5do5d!d!do5do5do5do5d!d!do5do5do5dqdqdqd2dqdpdqdpdqdqd2dqd2dqdodqd2d!d!d!d!d!d!d!d!d!d!d!d!d!dq-!d!dpd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do5do5d25d2od25d25d25d2od2od8d2pd28d22d28d2qd22dqdoqdo2do2do2doadoqdo2doqdoodo2doqdo2doqdoqdoqdqd!d!d!d!d!d!d!d!d!d!d!d!d!dp-!d!dod!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do5do5d25d25d2od25d25d25d25d8d28d2qd2pd2pd2pd2qdodoqdoodo2doadoqdo2doodo2doado2do2doqdo2do2do2dpd!d!d!d!d!d!d!d!d!d!d!d!d!dq-!d!d2d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do5do5d2od25d2od25d25d2od25d8d22d2qd28d28d2pd2qd2doqdoqdoqdoodoodoqdoodoqdoqdoqdoqdo2doqdoqdo2dpd!d!d!d!d!d!d!d!d!d!d!d!d!do-!d!dqd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do5do5d2od2od2od25d2od2od25d8d2qd2qd22d28d2pd2pdoqdoqdoodoodoadoodoqdoadoadoodoqdo2doodoqdo2doqdod!d!d!d!d!d!d!d!d!d!d!d!d!d2-!d!dqd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do5do5d2od25d25d2od25d2od2od8d2qd2qd22d2pd2qd2qdo2doodoadoqdoqdoqdoqdo2do2do2doadoqdoodo2doqdoodod!d!d!d!d!d!d!d!d!d!d!d!d!dp-!d!d2d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do5do5d2od2od25d2od25d2od25d8d2qd28d22d2qd2pd22do2doado2do2doqdo2do2doqdoadoqdoadoqdo2do2doqdood2d!d!d!d!d!d!d!d!d!d!d!d!d!d2-!d!dqd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do5do5d2od2od2od25d25d2od2od8d2qd2pd2pd2qd2qd28d2doqdoqdoadoodo2d2d2dpdqdodo2doqdoqdo2doqd2d!d!d!d!d!d!d!d!d!d!d!d!d!d2-!d!d2d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do5do5d2od25d25d2od2od25d2od8d2qd22d2pd2qd2qd22dpdoqdoadoadoqdo2d2doodoqdo2dqdoodo2doodoqdo2dpd!d!d!d!d!d!d!d!d!d!d!d!d!d2-!d!dod!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do5d2od2od2od2od2od25d2od8d28d2qd2pd2qd2qd22d2do2doqdoqdo2doqdoqdoadoodoqdpdoodo2doqdo2doqdpd!d!d!d!d!d!d!d!d!d!d!d!d!dq-!d!d2d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do5do5d2od25d25d25d2od2od25d8d2pd2qd2qd2qd2pd22d2doodoado2doqdoodqdo2do2doqdodo2do2doadoado2d2d!d!d!d!d!d!d!d!d!d!d!d!d!d2-!d!dqd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do5do5d2od25d2od2od2od25d25d8d2pd22d2pd2qd28d2qd2doodo2doqdoqdo2dpdodpd2dodo2doadoadoadoqdpd!d!d!d!d!d!d!d!d!d!d!d!d!dq-!d!dod!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do5do5d2od2od2od2od25d25d25d8d2qd2qd22d2qd2pd2pdoqdoqdoadoadoqdoodoqdo2do2doodo2doodoqdo2doqdoqd2d!d!d!d!d!d!d!d!d!d!d!d!d!dq-!d!dqd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do5do5d2od25d25d25d25d2od2od8d2qd2pd2qd2pd2qd2pdoqdo2do2doodoqdoado2doqdoqdo2doadoadoqdoodoqdo2dod!d!d!d!d!d!d!d!d!d!d!d!d!dq-!d!dqd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do5do5d2od25d25d25d2od2od25d8d2qd22d28d28d2pd2pdoqdoqdo2doodo2do2doqdoodo2do2do2do2doodoqdo2do2dqd!d!d!d!d!d!d!d!d!d!d!d!d!dq-!d!dqd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do5do5d25d25d2od25d2od25d25d8d2pd2pd28d2qd2qd28dpdoodo2doodoqdoqdoodoqdoqdoqdo2do2doqdo2doado2dqd!d!d!d!d!d!d!d!d!d!d!d!d!d2-!d!dqd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do5do5d25d2od25d25d25d25d2od8d2pd28d2qd2pd2qd2pdqdoqdoado2doodoqdo2doqdoadoodoodo2doqdoado2do2d2d!d!d!d!d!d!d!d!d!d!d!d!d!dp-!d!dod!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do5do5d25d2od2od25d2od25d25d8d2pd2qd2pd2pd2pd28dqdoadoqdo2doodoado2doqdo2do2doqdoqdoqdo2doodoqdqd!d!d!d!d!d!d!d!d!d!d!d!d!dq-!d!dqd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do5do5do5do5do5do5do5d!d!do5do5do5do5d!d!do5do5do5dqd2dqdqdododqdodqdododpdqdpdod2dqd!d!d!d!d!d!d!d!d!d!d!d!d!dq-!d!d2d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do5d!d!do5d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dp-!d!d2d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do5d!d!do5d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dq-!d!dqd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do5d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dq-!d!d2d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dq-!d!dod!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dq-!d!dod!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dq-!d!dqd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dq-!d!dqd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dp-!d!d2d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do-!d!dqd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dq-!d!d2d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dq-!d!d2d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do-!d!d2d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dq-!d!dqd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2-!d!d2d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do-!d!dpd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dp-!d!dod!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d2-!d!dqd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do-!d!dqd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dp-!d!dod!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!do-!d!dpd!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!d!dq-!d!dqdqdpd2dqdqdpd2d2dod2dqd2d2d2dqd2dqd2dqdpd2dqdqdpdod2d2d2d2dpdodqd2dpdqdpd2dpdqd2dpd2dqdpd2dqdpdpdqdqdod2d2dod2d2dodpdqdpdqdpdod2d2dododpdqdod2d2d2do--2rpd2rpd2rpd2rpd2rpd42pd8rpd|24d|rad|o2md4r4d2r8d25qdqprdorqd22pd2rqdq2rdqrqd|o2ad|o2ad|o2ad|o2ad|o2ad|o2ad|o2ad|o2ad|o2ad4r8d4r8d4r8d4r8d4r8d4r8d4r8d4r8d4r8d|2rd28drpdo2pdorqd224d2r8dq2pdqrpdp2pdprpd8r8d82pd|orrdr2qdo2pdo2pdo2pdo2pdo2pdo2pdp2pdp2pdp2pdp2pdp2pdp2pd2rqd|o28d4rqd4rqd|o28d2rqd2rqd2rqd2rqd2rqd2rqd2rqd2rqd2rqd|oq5d4rrd2rpd252dqp4dpoadoq5d2r2dqppdpo4d255doq2-|o4ad|oo4d|48d|oadqpd|248d|248d|248d|248d|248d|248d|244d|244d|244dqqqdqqqdqqqdqqqdqqpd|25dqpdaadop2dom4d285dq5pdq8adpo2d|omdq8damdopqdomrd28odq58dq8mdpoqd8q2d8qqd8qqd8qqd8qqd8qpd8qpd8qpd8q8d8q8d8q8d8q8d8q8d|pppd|pppdqqqd2rmd228dorodoord4qd42dooqdo4rdqqqd224d2rad|o5oad|m2od|m25d|4o8d|4opd|o5oad|o5oad|o5oad|o5oad|o5oad|o5oad|o5oad|o5oad|o5oad|8oad|8oad|4oqd|4oqd|4oqd|4oqd|4oqd|m22d|m22d|m22d|m22d|m2q-|m82-|28p2-2r8-228-|4md2rqdq4qdp8qd8pqd4qqd2odoood25od|rpd42adq8ad252d|o5adqp2d8mpdo24d|mdp8md|22od|225dr2odr4mdo2d2o5dq8pd8r5-8oqd8oqd8oqd8oqd8oqd8oqd8oqd8oqd8oqd|2a4d|2a4d|2a4d|2a4d|arad|arad|arad|arad|4omd|4omd|o5q4d|ooa4d|ooa8d|o5q8d|o5a4d|o5a4d|o5a4d|o5a4-4od4od4od4od4od4od4od4od4od4od4od4od4od8md8md8md8md8ad8ad4od4od4od4od4od4od4od4o-";
Frame 4
stop(); var OnOne = true; attachMovie("playhubSplash", "SS", getNextHighestDepth(), {_x:282.1, _y:207.3}); SS._x = 284; SS._y = 220; SS.onMouseDown = function () { if (OnOne) { getURL ("http://www.playhub.com/?utm_medium=brandedgames_external&utm_campaign=ninja_plus_2&utm_source=domain.com&utm_content=ingame", "_blank"); } else { getURL ("http://www.fullergames.com", "_blank"); } }; onEnterFrame = function () { if ((SS._x == undefined) && (OnOne)) { attachMovie("MySplashScreen", "SS", getNextHighestDepth(), {_x:282.1, _y:207.3}); SS._x = 282.1; SS._y = 207.3; OnOne = false; } else if ((SS._x == undefined) && (!OnOne)) { delete onEnterFrame; gotoAndPlay ("Menu"); } if (OnOne) { SS._x = 284; SS._y = 220; } else { SS._x = 282.1; SS._y = 207.3; } };
Frame 5
function GoOut() { var _local5 = new mx.transitions.Tween(PlayButton, "_x", mx.transitions.easing.Strong.easeOut, PlayButton._x, 1000, 1, true); var _local3 = new mx.transitions.Tween(LevelBuilderButton, "_x", mx.transitions.easing.Strong.easeOut, LevelBuilderButton._x, 950, 1, true); var _local4 = new mx.transitions.Tween(ImportButton, "_x", mx.transitions.easing.Strong.easeOut, ImportButton._x, 900, 1, true); var _local2 = new mx.transitions.Tween(HowtoPlayButton, "_x", mx.transitions.easing.Strong.easeOut, HowtoPlayButton._x, 850, 1, true); var _local1 = new mx.transitions.Tween(OptionsButton, "_x", mx.transitions.easing.Strong.easeOut, OptionsButton._x, 800, 1, true); var _local7 = new mx.transitions.Tween(MG, "_x", mx.transitions.easing.Strong.easeOut, MG._x, 750, 1, true); var _local6 = new mx.transitions.Tween(Title, "_x", mx.transitions.easing.Strong.easeOut, Title._x, 1000, 1, true); if (Sitelock) { urlStart = _url.indexOf("://") + 3; urlEnd = _url.indexOf("/", urlStart); domain = _url.substring(urlStart, urlEnd); LastDot = domain.lastIndexOf(".") - 1; domEnd = domain.lastIndexOf(".", LastDot) + 1; domain = domain.substring(domEnd, domain.length); sitename = "fullergames.com"; trace("Domain: " + domain); if ((domain != sitename) && (domain != "flashgamelicense.com")) { gotoAndStop ("WrongSite"); } } _local1.onMotionFinished = function () { if (Sitelock) { urlStart = _url.indexOf("://") + 3; urlEnd = _url.indexOf("/", urlStart); domain = _url.substring(urlStart, urlEnd); LastDot = domain.lastIndexOf(".") - 1; domEnd = domain.lastIndexOf(".", LastDot) + 1; domain = domain.substring(domEnd, domain.length); sitename = "fullergames.com"; trace("Domain: " + domain); if ((domain != sitename) && (domain != "flashgamelicense.com")) { gotoAndStop ("WrongSite"); } } delete onMouseUp; gotoAndStop(Where); }; } function ImportLevel(LevelSet, Exception, Ecode) { var _local3 = LevelSet + "X"; var _local2 = LevelSet + "Y"; var _local7 = LevelSet + "X"; var _local6 = LevelSet + "Y"; Decrypted = ""; mainTimeLine[("AccLoc" + LevelSet) + "X"] = new Array(); mainTimeLine[("AccLoc" + LevelSet) + "Y"] = new Array(); mainTimeLine["AccType" + LevelSet] = new Array(); mainTimeLine[("ColLoc" + LevelSet) + "X"] = new Array(); mainTimeLine[("ColLoc" + LevelSet) + "Y"] = new Array(); EnviStartYA[LevelSet] = undefined; EnviStartXA[LevelSet] = undefined; CharStartYA[LevelSet] = undefined; CharStartXA[LevelSet] = undefined; LRBA[LevelSet] = undefined; LLBA[LevelSet] = undefined; LTBA[LevelSet] = undefined; LBBA[LevelSet] = undefined; Map[LevelSet] = []; var _local5 = ""; var _local4 = 0; if ((LevelSet == 0) && (!Exception)) { ImportCode = Import.ImportCodeT.text; } else if ((LevelSet == 0) && (Exception)) { ImportCode = ECode; } else if (LevelSet > 0) { ImportCode = LevelCodeValue[LevelSet]; } else { ImportCode = RandomLevelValue; } i = 0; while (i < ImportCode.length) { _local5 = ImportCode.substr(i, 1); _local4 = Encrypt.indexOf(_local5, 0); Decrypted = Decrypted + Decrypt.substr(_local4, 1); i++; } Start = 0; SingleValue = ""; Value = ""; x = 0; y = 0; if (Decrypted.indexOf("]") == -1) { } else { do { while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == ",") { if (Map[LevelSet][x] == undefined) { Map[LevelSet][x] = new Array(); } Start++; if (Value == "!") { Map[LevelSet][x][y] = undefined; } else { Map[LevelSet][x][y] = parseInt(Value); } Value = ""; y++; } else { if (SingleValue == "]") { if (Map[LevelSet][x] == undefined) { Map[LevelSet][x] = new Array(); } if (Value == "!") { Map[LevelSet][x][y] = undefined; } else { Map[LevelSet][x][y] = parseInt(Value); } Value = ""; y++; break; } Value = Value + SingleValue; Start++; } } x++; y = 0; Start++; SingleValue = Decrypted.substr(Start, 1); } while (SingleValue != "]"); Start++; x = 0; Value = ""; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == ",") { Start++; if (Value == "!") { mainTimeLine["ColLoc" + _local3][x] = undefined; } else { mainTimeLine["ColLoc" + _local3][x] = parseInt(Value); } Value = ""; x++; } else { if (SingleValue == "]") { if (Value == "!") { mainTimeLine["ColLoc" + _local3][x] = undefined; } else { mainTimeLine["ColLoc" + _local3][x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } } Start++; x = 0; Value = ""; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == ",") { Start++; if (Value == "!") { mainTimeLine["ColLoc" + _local2][x] = undefined; } else { mainTimeLine["ColLoc" + _local2][x] = parseInt(Value); } Value = ""; x++; } else { if (SingleValue == "]") { if (Value == "!") { mainTimeLine["ColLoc" + _local2][x] = undefined; } else { mainTimeLine["ColLoc" + _local2][x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } } Start++; Value = ""; x = LevelSet; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == "]") { if (Value == "!") { EnviStartXA[x] = undefined; } else { EnviStartXA[x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } Start++; Value = ""; x = LevelSet; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == "]") { if (Value == "!") { EnviStartYA[x] = undefined; } else { EnviStartYA[x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } Start++; Value = ""; x = LevelSet; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == "]") { if (Value == "!") { CharStartXA[x] = undefined; } else { CharStartXA[x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } Start++; Value = ""; x = LevelSet; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == "]") { if (Value == "!") { CharStartYA[x] = undefined; } else { CharStartYA[x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } Start++; x = 0; Value = ""; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == ",") { Start++; if (Value == "!") { mainTimeLine[("AccLoc" + LevelSet) + "X"][x] = undefined; } else { mainTimeLine[("AccLoc" + LevelSet) + "X"][x] = parseInt(Value); } Value = ""; x++; } else { if (SingleValue == "]") { if (Value == "!") { mainTimeLine[("AccLoc" + LevelSet) + "X"][x] = undefined; } else if (Value != "") { mainTimeLine[("AccLoc" + LevelSet) + "X"][x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } } Start++; x = 0; Value = ""; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == ",") { Start++; if (Value == "!") { mainTimeLine[("AccLoc" + LevelSet) + "Y"][x] = undefined; } else { mainTimeLine[("AccLoc" + LevelSet) + "Y"][x] = parseInt(Value); } Value = ""; x++; } else { if (SingleValue == "]") { if (Value == "!") { mainTimeLine[("AccLoc" + LevelSet) + "Y"][x] = undefined; } else if (Value != "") { mainTimeLine[("AccLoc" + LevelSet) + "Y"][x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } } Start++; x = 0; Value = ""; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == ",") { Start++; if (Value == "!") { mainTimeLine["AccType" + LevelSet][x] = undefined; } else { mainTimeLine["AccType" + LevelSet][x] = parseInt(Value); } Value = ""; x++; } else { if (SingleValue == "]") { if (Value == "!") { mainTimeLine["AccType" + LevelSet][x] = undefined; } else { mainTimeLine["AccType" + LevelSet][x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } } stopMouse(); Import.removeMovieClip(); Level = LevelSet; if (PlayingMenu) { MS.stop(); PlayingMenu = false; } GoOut(); Where = "Game"; } } stop(); if (!PlayingMenu) { MS.start(0, 9999); trace("Hit Menu"); PlayingMenu = true; } Sitelock = false; if (Sitelock) { urlStart = _url.indexOf("://") + 3; urlEnd = _url.indexOf("/", urlStart); domain = _url.substring(urlStart, urlEnd); LastDot = domain.lastIndexOf(".") - 1; domEnd = domain.lastIndexOf(".", LastDot) + 1; domain = domain.substring(domEnd, domain.length); sitename = "fullergames.com"; trace("Domain: " + domain); if ((domain == sitename) || (domain == "flashgamelicense.com")) { gotoAndStop ("Menu"); } else { gotoAndStop ("WrongSite"); } } Where = ""; var PlayTween = (new mx.transitions.Tween(PlayButton, "_x", mx.transitions.easing.Strong.easeOut, -50, PlayButton._x, 1.5, true)); var BuildLevelTween = (new mx.transitions.Tween(LevelBuilderButton, "_x", mx.transitions.easing.Strong.easeOut, -100, LevelBuilderButton._x, 1.5, true)); var LoadTween = (new mx.transitions.Tween(ImportButton, "_x", mx.transitions.easing.Strong.easeOut, -150, ImportButton._x, 1.5, true)); var HowToPlayTween = (new mx.transitions.Tween(HowtoPlayButton, "_x", mx.transitions.easing.Strong.easeOut, -200, HowtoPlayButton._x, 1.5, true)); var OptionsTween = (new mx.transitions.Tween(OptionsButton, "_x", mx.transitions.easing.Strong.easeOut, -250, OptionsButton._x, 1.5, true)); var MGTween = (new mx.transitions.Tween(MG, "_x", mx.transitions.easing.Strong.easeOut, -300, MG._x, 1.5, true)); var TitleTween = (new mx.transitions.Tween(Title, "_x", mx.transitions.easing.Strong.easeOut, -250, Title._x, 0.5, true)); PlayButton.onRelease = function () { GoOut(); Where = "LevelSelect"; }; HowtoPlayButton.onRelease = function () { GoOut(); Where = "HowtoPlay"; }; OptionsButton.onRelease = function () { GoOut(); Where = "Options"; }; LoadLevelButton.onRelease = function () { GoOut(); Where = "LevelLoader"; }; LoadLevelsBtn.onRelease = function () { delete onMouseUp; gotoAndStop ("LevelLoader"); }; LevelBuilderButton.onRelease = function () { GoOut(); Where = "LevelBuilder"; }; FullerLink.onRelease = function () { getURL ("http://www.fullergames.com"); }; ShowLoad = false; var Decrypted = ""; ImportButton.onRelease = function () { if (!ShowLoad) { ShowLoad = true; attachMovie("ImportMC", "Import", mainTimeLine.getNextHighestDepth()); Import._x = 285.9; Import._y = 179.4; } }; onMouseUp = function () { if (Import.ExitImportButton.hitTest(mainTimeLine._xmouse, mainTimeLine._ymouse, true)) { SelectingTiles = false; LevelBuilderMenu.TileMenu.removeMovieClip(); ShowLoad = false; Import.removeMovieClip(); } else { Import.ExitImportButton.gotoAndStop("Neutral"); } if (Import.ImportButtonLoad.hitTest(mainTimeLine._xmouse, mainTimeLine._ymouse, true)) { ImportLevel(0); } else { Import.ImportButtonLoad.gotoAndStop("Neutral"); } };
Frame 6
function time_to_string(time_to_convert) { var _local3 = Math.floor(time_to_convert / 3600000); var _local1 = time_to_convert - (_local3 * 3600000); var _local4 = Math.floor(_local1 / 60000); _local1 = _local1 - (_local4 * 60000); var _local2 = Math.floor(_local1 / 1000); _local1 = _local1 - (_local2 * 1000); var _local5 = Math.floor(_local1 / 10); var _local10 = ((_local3 < 10) ? ("0" + _local3.toString()) : (_local3.toString())); var _local8 = ((_local4 < 10) ? ("0" + _local4.toString()) : (_local4.toString())); var _local6 = ((_local2 < 10) ? ("0" + _local2.toString()) : (_local2.toString())); var _local7 = ((_local5 < 10) ? ("0" + _local5.toString()) : ((hundredths = _local5.toString()))); return((((_local8 + ":") + _local6) + ".") + _local7); } function ImportLevel(LevelSet, Exception, Ecode) { var _local3 = LevelSet + "X"; var _local2 = LevelSet + "Y"; var _local7 = LevelSet + "X"; var _local6 = LevelSet + "Y"; Decrypted = ""; mainTimeLine[("AccLoc" + LevelSet) + "X"] = new Array(); mainTimeLine[("AccLoc" + LevelSet) + "Y"] = new Array(); mainTimeLine["AccType" + LevelSet] = new Array(); mainTimeLine[("ColLoc" + LevelSet) + "X"] = new Array(); mainTimeLine[("ColLoc" + LevelSet) + "Y"] = new Array(); EnviStartYA[LevelSet] = undefined; EnviStartXA[LevelSet] = undefined; CharStartYA[LevelSet] = undefined; CharStartXA[LevelSet] = undefined; LRBA[LevelSet] = undefined; LLBA[LevelSet] = undefined; LTBA[LevelSet] = undefined; LBBA[LevelSet] = undefined; Map[LevelSet] = []; var _local5 = ""; var _local4 = 0; if ((LevelSet == 0) && (!Exception)) { ImportCode = Import.ImportCodeT.text; } else if ((LevelSet == 0) && (Exception)) { ImportCode = ECode; } else if (LevelSet > 0) { ImportCode = LevelCodeValue[LevelSet]; } else { ImportCode = RandomLevelValue; } i = 0; while (i < ImportCode.length) { _local5 = ImportCode.substr(i, 1); _local4 = Encrypt.indexOf(_local5, 0); Decrypted = Decrypted + Decrypt.substr(_local4, 1); i++; } Start = 0; SingleValue = ""; Value = ""; x = 0; y = 0; if (Decrypted.indexOf("]") == -1) { } else { do { while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == ",") { if (Map[LevelSet][x] == undefined) { Map[LevelSet][x] = new Array(); } Start++; if (Value == "!") { Map[LevelSet][x][y] = undefined; } else { Map[LevelSet][x][y] = parseInt(Value); } Value = ""; y++; } else { if (SingleValue == "]") { if (Map[LevelSet][x] == undefined) { Map[LevelSet][x] = new Array(); } if (Value == "!") { Map[LevelSet][x][y] = undefined; } else { Map[LevelSet][x][y] = parseInt(Value); } Value = ""; y++; break; } Value = Value + SingleValue; Start++; } } x++; y = 0; Start++; SingleValue = Decrypted.substr(Start, 1); } while (SingleValue != "]"); Start++; x = 0; Value = ""; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == ",") { Start++; if (Value == "!") { mainTimeLine["ColLoc" + _local3][x] = undefined; } else { mainTimeLine["ColLoc" + _local3][x] = parseInt(Value); } Value = ""; x++; } else { if (SingleValue == "]") { if (Value == "!") { mainTimeLine["ColLoc" + _local3][x] = undefined; } else { mainTimeLine["ColLoc" + _local3][x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } } Start++; x = 0; Value = ""; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == ",") { Start++; if (Value == "!") { mainTimeLine["ColLoc" + _local2][x] = undefined; } else { mainTimeLine["ColLoc" + _local2][x] = parseInt(Value); } Value = ""; x++; } else { if (SingleValue == "]") { if (Value == "!") { mainTimeLine["ColLoc" + _local2][x] = undefined; } else { mainTimeLine["ColLoc" + _local2][x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } } Start++; Value = ""; x = LevelSet; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == "]") { if (Value == "!") { EnviStartXA[x] = undefined; } else { EnviStartXA[x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } Start++; Value = ""; x = LevelSet; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == "]") { if (Value == "!") { EnviStartYA[x] = undefined; } else { EnviStartYA[x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } Start++; Value = ""; x = LevelSet; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == "]") { if (Value == "!") { CharStartXA[x] = undefined; } else { CharStartXA[x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } Start++; Value = ""; x = LevelSet; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == "]") { if (Value == "!") { CharStartYA[x] = undefined; } else { CharStartYA[x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } Start++; x = 0; Value = ""; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == ",") { Start++; if (Value == "!") { mainTimeLine[("AccLoc" + LevelSet) + "X"][x] = undefined; } else { mainTimeLine[("AccLoc" + LevelSet) + "X"][x] = parseInt(Value); } Value = ""; x++; } else { if (SingleValue == "]") { if (Value == "!") { mainTimeLine[("AccLoc" + LevelSet) + "X"][x] = undefined; } else if (Value != "") { mainTimeLine[("AccLoc" + LevelSet) + "X"][x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } } Start++; x = 0; Value = ""; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == ",") { Start++; if (Value == "!") { mainTimeLine[("AccLoc" + LevelSet) + "Y"][x] = undefined; } else { mainTimeLine[("AccLoc" + LevelSet) + "Y"][x] = parseInt(Value); } Value = ""; x++; } else { if (SingleValue == "]") { if (Value == "!") { mainTimeLine[("AccLoc" + LevelSet) + "Y"][x] = undefined; } else if (Value != "") { mainTimeLine[("AccLoc" + LevelSet) + "Y"][x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } } Start++; x = 0; Value = ""; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == ",") { Start++; if (Value == "!") { mainTimeLine["AccType" + LevelSet][x] = undefined; } else { mainTimeLine["AccType" + LevelSet][x] = parseInt(Value); } Value = ""; x++; } else { if (SingleValue == "]") { if (Value == "!") { mainTimeLine["AccType" + LevelSet][x] = undefined; } else { mainTimeLine["AccType" + LevelSet][x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } } stopMouse(); Import.removeMovieClip(); Level = LevelSet; if (PlayingMenu) { MS.stop(); PlayingMenu = false; } gotoAndStop ("Game"); } } function stopMouse() { delete onMouseMove; delete onMouseUp; } if (!PlayingMenu) { MS.start(0, 9999); PlayingMenu = true; } v = 1; while (v <= 6) { if (BestTime[v] < LevUnlock[v]) { mainTimeLine["Level" + v].gotoAndStop("Cleared"); } else if (BestTime[v - 1] < LevUnlock[v - 1]) { mainTimeLine["Level" + v].gotoAndStop("Neutral"); } else if (v == 1) { mainTimeLine["Level" + v].gotoAndStop("Neutral"); } else { mainTimeLine["Level" + v].gotoAndStop("Locked"); } v++; } var MenuTween = (new mx.transitions.Tween(BacktoMenuButton, "_y", mx.transitions.easing.Strong.easeOut, -230, BacktoMenuButton._y, 1.5, true)); MenuTween.onMotionFinished = function () { }; ShowLoad = false; var Decrypted = ""; onMouseMove = function () { if (!ShowLoad) { var _local1 = false; v = 1; while (v <= 6) { if (mainTimeLine["Level" + v].hitTest(mainTimeLine._xmouse, mainTimeLine._ymouse, true)) { Yes = false; if (BestTime[v] < LevUnlock[v]) { mainTimeLine["Level" + v].gotoAndStop("ClearedOver"); Yes = true; } else if (BestTime[v - 1] < LevUnlock[v - 1]) { mainTimeLine["Level" + v].gotoAndStop("RollOver"); Yes = true; } else if (v == 1) { mainTimeLine["Level" + v].gotoAndStop("RollOver"); Yes = true; } else { mainTimeLine["Level" + v].gotoAndStop("Locked"); } } else if (BestTime[v] < LevUnlock[v]) { mainTimeLine["Level" + v].gotoAndStop("Cleared"); } else if (BestTime[v - 1] < LevUnlock[v - 1]) { mainTimeLine["Level" + v].gotoAndStop("Neutral"); } else if (v == 1) { mainTimeLine["Level" + v].gotoAndStop("Neutral"); } else { mainTimeLine["Level" + v].gotoAndStop("Locked"); } v++; } } }; Level1.onRelease = function () { if (!ShowLoad) { stopMouse(); LevelStats.removeMovieClip(); ImportLevel(1); } }; Level2.onRelease = function () { if ((!ShowLoad) && (BestTime[1] < LevUnlock[1])) { stopMouse(); LevelStats.removeMovieClip(); ImportLevel(2); } }; Level3.onRelease = function () { if ((!ShowLoad) && (BestTime[2] < LevUnlock[2])) { stopMouse(); LevelStats.removeMovieClip(); ImportLevel(3); } }; Level4.onRelease = function () { if ((!ShowLoad) && (BestTime[3] < LevUnlock[3])) { stopMouse(); LevelStats.removeMovieClip(); ImportLevel(4); } }; Level5.onRelease = function () { if ((!ShowLoad) && (BestTime[4] < LevUnlock[4])) { stopMouse(); LevelStats.removeMovieClip(); ImportLevel(5); } }; Level6.onRelease = function () { if ((!ShowLoad) && (BestTime[5] < LevUnlock[5])) { stopMouse(); LevelStats.removeMovieClip(); ImportLevel(6); } }; ShowLoad = false; ImportButton.onRelease = function () { if (!ShowLoad) { ShowLoad = true; attachMovie("ImportMC", "Import", mainTimeLine.getNextHighestDepth()); Import._x = 285.9; Import._y = 179.4; } }; onMouseUp = function () { if (Import.ExitImportButton.hitTest(mainTimeLine._xmouse, mainTimeLine._ymouse, true)) { SelectingTiles = false; LevelBuilderMenu.TileMenu.removeMovieClip(); ShowLoad = false; Import.removeMovieClip(); } else { Import.ExitImportButton.gotoAndStop("Neutral"); } if (Import.ImportButtonLoad.hitTest(mainTimeLine._xmouse, mainTimeLine._ymouse, true)) { ImportLevel(0); } else { Import.ImportButtonLoad.gotoAndStop("Neutral"); } }; BacktoMenuButton.onRelease = function () { stopMouse(); gotoAndStop ("Menu"); }; stop();
Frame 7
function FadeS() { TV = TV + 1; LS.setVolume(TV); if (TV >= TVMax) { trace("dONE"); clearInterval(FadeInt); } } function FadeOutSound() { TV = TV - 2; LS.setVolume(TV); if (TV <= 0) { LS.stop(); clearInterval(FadeInt); } } function CreateTile(TileSet, XPos, YPos, XName, YName) { Name = XName + (YName * (TIX + 1)); if (!No) { YVar = YPos; No = true; } Envi.Wall.createEmptyMovieClip(["MapPiece" + Name], Envi.Wall.getNextHighestDepth()); if (((TileSet != undefined) && (TileSet != "!")) && (TileSet != 0)) { Envi.Wall["MapPiece" + Name].attachBitmap(MapPieces[Name], Envi.Wall["MapPiece" + Name].getNextHighestDepth()); MapPieces[Name].copyPixels(mainTimeLine["TileBitmap" + TileSet], new flash.geom.Rectangle(0, 0, 50, 50), new flash.geom.Point(0, 0)); } else { RandomNum = Math.round(Math.random() * 3) + 1; Envi.Wall["MapPiece" + Name].attachBitmap(MapPieces[Name], Envi.Wall["MapPiece" + Name].getNextHighestDepth()); MapPieces[Name].copyPixels(mainTimeLine["TileBitmap100" + RandomNum], new flash.geom.Rectangle(0, 0, 50, 50), new flash.geom.Point(0, 0)); Map[Level][XPos][YPos] = 1000 + RandomNum; } Envi.Wall["MapPiece" + Name]._x = XPos * TileSize; Envi.Wall["MapPiece" + Name]._y = YPos * TileSize; q++; } function SetAnimation() { if (!Dead) { if (OnGround) { if (Direction == 3) { if (JustLanded) { if (ChState != "land-up") { ChState = "land-up"; Char.gotoAndPlay("land-up"); } } else if (ChState != "Stand") { ChState = "Stand"; Char.gotoAndPlay("stand"); } } else if (Direction == 1) { if (CharHit) { if (ChState != "hit-right") { ChState = "hit-right"; Char.gotoAndPlay("hit-right"); } } else if (RopeOut && (vx != 0)) { if (ChState != "rope-right") { ChState = "rope-right"; Char.gotoAndStop("rope-right"); JustLanded = false; } } else if ((!RopeOut) && (vx != 0)) { if (ChState != "move-right") { ChState = "move-right"; Char.gotoAndPlay("move-right"); JustLanded = false; } } else if (JustLanded) { if (ChState != "land-right") { ChState = "land-right"; Char.gotoAndPlay("land-right"); } } else if (vx == 0) { if (ChState != "side-right") { ChState = "side-right"; Char.gotoAndStop("side-right"); } } } else if (Direction == 0) { if (CharHit) { if (ChState != "hit-left") { ChState = "hit-left"; Char.gotoAndPlay("hit-left"); } } else if (RopeOut && (vx != 0)) { if (ChState != "rope-left") { ChState = "rope-left"; Char.gotoAndStop("rope-left"); JustLanded = false; } } else if ((!RopeOut) && (vx != 0)) { if (ChState != "move-left") { ChState = "move-left"; Char.gotoAndPlay("move-left"); JustLanded = false; } } else if (JustLanded) { if (ChState != "land-left") { ChState = "land-left"; Char.gotoAndPlay("land-left"); } } else if (ChState != "side-left") { ChState = "side-left"; Char.gotoAndStop("side-left"); } } } if (!OnGround) { if (Direction == 3) { if (ChState != "jump-up") { ChState = "jump-up"; Char.gotoAndStop("jump-up"); } } else if (Direction == 1) { if (CharHit) { if (ChState != "hit-right") { ChState = "hit-right"; Char.gotoAndPlay("hit-right"); } } else if (JumpingNow) { if (ChState != "JumpSlide") { ChState = "JumpSlide"; if (JumpingOutDir == "right") { Char.gotoAndPlay("wall-jump-right-out"); } else if (JumpingOutDir == "left") { Char.gotoAndPlay("wall-jump-left-out"); } } } else if (WallSlidingLeft && (SlidingNow)) { if (ChState != "Sliding") { ChState = "Sliding"; Char.gotoAndStop("slide-left"); } } else if (WallSlidingLeft) { if (ChState != "SlidingInLeft") { ChState = "SlidingInLeft"; Char.gotoAndPlay("wall-jump-left-in"); } } else if (RopeOut) { if (ChState != "rope-right") { ChState = "rope-right"; Char.gotoAndStop("rope-right"); } } else if (!RopeOut) { if (ChState != "jump-right") { ChState = "jump-right"; Char.gotoAndStop("jump-right"); } } } else if (Direction == 0) { if (CharHit) { if (ChState != "hit-left") { ChState = "hit-left"; Char.gotoAndPlay("hit-left"); } } else if (JumpingNow) { if (ChState != "JumpSlide") { ChState = "JumpSlide"; if (JumpingOutDir == "right") { Char.gotoAndPlay("wall-jump-right-out"); } else if (JumpingOutDir == "left") { Char.gotoAndPlay("wall-jump-left-out"); } } } else if (WallSlidingRight && (SlidingNow)) { if (ChState != "Sliding") { ChState = "Sliding"; Char.gotoAndStop("slide-right"); } } else if (WallSlidingRight) { if (ChState != "SlidingInRight") { ChState = "SlidingInRight"; Char.gotoAndPlay("wall-jump-right-in"); } } else if (RopeOut) { if (ChState != "rope-left") { ChState = "rope-left"; Char.gotoAndStop("rope-left"); } } else if (!RopeOut) { if (ChState != "jump-left") { ChState = "jump-left"; Char.gotoAndStop("jump-left"); } } } } } else if (Dead) { if (OnGround) { if (ChState != "Dead") { ChState = "Dead"; trace("Set"); Char.gotoAndPlay("dead"); } } else if (!OnGround) { if (ChState != "fall-die") { ChState = "fall-die"; Char.gotoAndStop("fall-die"); } } } } function MoveEnemies() { CX = Char._x - Envi._x; CY = Char._y - Envi._y; t = 0; do { if (EnemyType[t] == BatNum) { BatAI(t); } else if (EnemyType[t] == DogNum) { DogAI(t); } else if (EnemyType[t] == RatNum) { RatAI(t); } else if (EnemyType[t] == SoldierNum) { SoldierAI(t); } else if (EnemyType[t] == SpikeUNum) { SpikeUAI(t); } else if (EnemyType[t] == SpikeDNum) { SpikeDAI(t); } else if (EnemyType[t] == SpikeLNum) { SpikeLAI(t); } else if (EnemyType[t] == SpikeRNum) { SpikeRAI(t); } else if (EnemyType[t] == ArcherNum) { ArcherAI(t); } } while ((++t) < EC); } function ArcherAI(t) { if (!EnemyDead[t]) { Rotated = false; AngleCurrently = 100; AngledNeeded = 0; FoundChar = false; EX = Envi.Enemies["Enemy" + t]._x; EY = Envi.Enemies["Enemy" + t]._y; XD = CX - EX; YD = CY - EY; EYT = Math.round((EY - 35) / TileSize); EXT = Math.round((EX - 25) / TileSize); if ((Map[Level][EXT][EYT + 1] > WT) || (Map[Level][EXT][EYT + 1] == undefined)) { Envi.Enemies["Enemy" + t]._y = Envi.Enemies["Enemy" + t]._y + (EnemyS * 2); } else { ECurrTime[t] = getTimer(); if (((XD * XD) + (YD * YD)) < EnemySi) { FoundChar = true; if ((Char._x - Envi._x) > EX) { EDir[t] = 1; Envi.Enemies["Enemy" + t]._xscale = -100; } else { EDir[t] = 0; Envi.Enemies["Enemy" + t]._xscale = 100; } if ((((ECurrTime[t] - ELastShot[t]) >= 900) && (State[t] != "Attacking")) && (State[t] != "Returning")) { ELastShot[t] = getTimer() - 900; State[t] = "Attacking"; Envi.Enemies["Enemy" + t].Enemy.gotoAndPlay("shoot"); } } if (((ECurrTime[t] - ELastShot[t]) >= 2150) && (State[t] == "Attacking")) { ArrowXNum = (Char._x - Envi._x) - Envi.Enemies["Enemy" + t]._x; ArrowYNum = ((Char._y - Envi._y) + 20) - Envi.Enemies["Enemy" + t]._y; ArrowDenom = Math.sqrt((ArrowXNum * ArrowXNum) + (ArrowYNum * ArrowYNum)); Arrowrvx[KIE] = (ArrowXNum * ArrowPower) / ArrowDenom; Arrowrvy[KIE] = (ArrowYNum * ArrowPower) / ArrowDenom; AngleNeeded = ((Math.atan2(Arrowrvy[KIE], Arrowrvx[KIE]) + 1.507) * 180) / Math.PI; AngleCurrently = Envi.Enemies["Enemy" + t].Enemy.Bow._rotation; trace(AngleCurrently + ". Currently"); trace(AngleNeeded + ". Needed"); if ((AngleNeeded > -90) && (AngleNeeded < 90)) { Envi.Enemies["Enemy" + t].Enemy.Bow._rotation = Envi.Enemies["Enemy" + t].Enemy.Bow._rotation + 5; Envi.Enemies["Enemy" + t].Enemy.Arm._rotation = Envi.Enemies["Enemy" + t].Enemy.Arm._rotation + 5; if ((AngleNeeded > -90) && (AngleNeeded < 0)) { AngleNeeded = AngleNeeded + 45; } else if ((AngleNeeded > 0) && (AngleNeeded < 90)) { AngleNeeded = AngleNeeded - 45; } } else if ((AngleNeeded > 90) && (AngleNeeded < 270)) { Envi.Enemies["Enemy" + t].Enemy.Bow._rotation = Envi.Enemies["Enemy" + t].Enemy.Bow._rotation - 5; Envi.Enemies["Enemy" + t].Enemy.Arm._rotation = Envi.Enemies["Enemy" + t].Enemy.Arm._rotation - 5; if ((AngleNeeded > 180) && (AngleNeeded < 270)) { AngleNeeded = AngleNeeded - 270; } else if ((AngleNeeded > 90) && (AngleNeeded < 180)) { AngleNeeded = AngleNeeded - 90; } } if (Math.abs(Math.abs(AngleCurrently) - Math.abs(AngleNeeded)) <= 5) { trace("Close enough"); Rotated = true; } } if ((((ECurrTime[t] - ELastShot[t]) >= 2550) && (State[t] == "Attacking")) || (Rotated)) { EKunHit[KIE] = false; State[t] = "Nothing"; Envi.Enemies["Enemy" + t].Enemy.play(); EKunXPoint[KIE] = Char._x - Envi._x; EKunYPoint[KIE] = (Char._y - Envi._y) + 20; if (EDir[t] == 1) { EKunDrawPointX[KIE] = EX + 15; } else if (EDir[t] == 0) { EKunDrawPointX[KIE] = EX - 15; } EKunDrawPointY[KIE] = EY; EKunOut = true; SetEnemyKunai(t, true); ELastShot[t] = getTimer(); } } } else if ((getTimer() - ELastShot[t]) > 500) { EYT = Math.round((Envi.Enemies["Enemy" + t]._y - 30) / TileSize); EXT = Math.round((Envi.Enemies["Enemy" + t]._x - 30) / TileSize); if ((Map[Level][EXT][EYT + 1] > WT) || (Map[Level][EXT][EYT + 1] == undefined)) { Envi.Enemies["Enemy" + t]._y = Envi.Enemies["Enemy" + t]._y + (EnemyS * 2); } else { Envi.Enemies["Enemy" + t].Enemy.gotoAndStop("dead2"); } } } function SpikeUAI(t) { EX = Envi.Enemies["Enemy" + t]._x; EY = Envi.Enemies["Enemy" + t]._y; XD = CX - EX; YD = CY - EY; if ((((YD >= -60) && (YD <= 0)) && (Math.abs(XD) <= 20)) && (State[t] != "Spiking")) { ELastShot[t] = getTimer(); EnemyDead[t] = false; Envi.Enemies["Enemy" + t].Enemy.gotoAndPlay("spike"); State[t] = "Spiking"; } if (State[t] == "Spiking") { if (Envi.Enemies["Enemy" + t].hitTest(Char) && (!EnemyDead[t])) { EnemyDead[t] = true; CharLoseHP(1); } ECurrTime[t] = getTimer(); if ((ECurrTime[t] - ELastShot[t]) > 2200) { Envi.Enemies["Enemy" + t].Enemy.gotoAndStop("stop"); State[t] = "Idle"; } } } function SpikeDAI(t) { EX = Envi.Enemies["Enemy" + t]._x; EY = Envi.Enemies["Enemy" + t]._y; XD = CX - EX; YD = CY - EY; if ((((YD <= 80) && (YD >= 0)) && (Math.abs(XD) <= 20)) && (State[t] != "Spiking")) { ELastShot[t] = getTimer(); EnemyDead[t] = false; Envi.Enemies["Enemy" + t].Enemy.gotoAndPlay("spike"); State[t] = "Spiking"; } if (State[t] == "Spiking") { if (Envi.Enemies["Enemy" + t].hitTest(Char) && (!EnemyDead[t])) { EnemyDead[t] = true; CharLoseHP(1); } ECurrTime[t] = getTimer(); if ((ECurrTime[t] - ELastShot[t]) > 2200) { Envi.Enemies["Enemy" + t].Enemy.gotoAndStop("stop"); State[t] = "Idle"; } } } function SpikeRAI(t) { EX = Envi.Enemies["Enemy" + t]._x; EY = Envi.Enemies["Enemy" + t]._y; XD = CX - EX; YD = CY - EY; if ((((Math.abs(YD) <= 20) && (XD >= -60)) && (XD <= 0)) && (State[t] != "Spiking")) { ELastShot[t] = getTimer(); EnemyDead[t] = false; Envi.Enemies["Enemy" + t].Enemy.gotoAndPlay("spike"); State[t] = "Spiking"; } if (State[t] == "Spiking") { if (Envi.Enemies["Enemy" + t].hitTest(Char) && (!EnemyDead[t])) { EnemyDead[t] = true; CharLoseHP(1); } ECurrTime[t] = getTimer(); if ((ECurrTime[t] - ELastShot[t]) > 2200) { Envi.Enemies["Enemy" + t].Enemy.gotoAndStop("stop"); State[t] = "Idle"; } } } function SpikeLAI(t) { EX = Envi.Enemies["Enemy" + t]._x; EY = Envi.Enemies["Enemy" + t]._y; XD = CX - EX; YD = CY - EY; if ((((Math.abs(YD) <= 20) && (XD <= 60)) && (XD >= 0)) && (State[t] != "Spiking")) { ELastShot[t] = getTimer(); EnemyDead[t] = false; Envi.Enemies["Enemy" + t].Enemy.gotoAndPlay("spike"); State[t] = "Spiking"; } if (State[t] == "Spiking") { if (Envi.Enemies["Enemy" + t].hitTest(Char) && (!EnemyDead[t])) { EnemyDead[t] = true; CharLoseHP(1); } ECurrTime[t] = getTimer(); if ((ECurrTime[t] - ELastShot[t]) > 2200) { Envi.Enemies["Enemy" + t].Enemy.gotoAndStop("stop"); State[t] = "Idle"; } } } function RatAI(t) { if (!EnemyDead[t]) { EX = Envi.Enemies["Enemy" + t]._x; EY = Envi.Enemies["Enemy" + t]._y; XD = CX - EX; YD = CY - EY; EYT = Math.round(((EY - 37) - 25) / TileSize); EXT = Math.round((EX - 25) / TileSize); if ((Map[Level][EXT][EYT + 1] > WT) || (Map[Level][EXT][EYT + 1] == undefined)) { Envi.Enemies["Enemy" + t]._y = Envi.Enemies["Enemy" + t]._y + (EnemyS * 2); } else { if (!Landed[t]) { Envi.Enemies["Enemy" + t].Enemy.gotoAndPlay("walk"); State[t] = "Walking"; Envi.Enemies["Enemy" + t]._xscale = 100 - (200 * EDir[t]); Landed[t] = true; } FoundChar = false; if (((YD * YD) + (XD * XD)) < (EnemySi / 3)) { FoundChar = true; if ((Char._x - Envi._x) > Envi.Enemies["Enemy" + t]._x) { EDir[t] = 1; Envi.Enemies["Enemy" + t]._xscale = -100; } else { EDir[t] = 0; Envi.Enemies["Enemy" + t]._xscale = 100; } } if ((EDir[t] == 1) && (Map[Level][EXT][EYT + 1] <= WT)) { if (((Map[Level][EXT + 1][EYT] <= WT) || (Map[Level][EXT + 1][EYT + 1] == undefined)) || (Map[Level][EXT + 1][EYT + 1] > WT)) { if (FoundChar) { Envi.Enemies["Enemy" + t]._xscale = -100; } else { EDir[t] = 0; Envi.Enemies["Enemy" + t]._xscale = 100; } } else if (!FoundChar) { if (State[t] != "Walking") { Envi.Enemies["Enemy" + t].Enemy.gotoAndPlay("walk"); State[t] = "Walking"; } Envi.Enemies["Enemy" + t]._x = Envi.Enemies["Enemy" + t]._x + (EnemyS * 1.5); } else if (FoundChar) { if (Math.abs(XD) > 30) { if (State[t] != "Running") { Envi.Enemies["Enemy" + t].Enemy.gotoAndPlay("run"); State[t] = "Running"; } Envi.Enemies["Enemy" + t]._x = Envi.Enemies["Enemy" + t]._x + (EnemyS * 4); } else if (((Math.abs(XD) < 30) && (Math.abs(YD) < 25)) && (State[t] != "Biting")) { State[t] = "Biting"; ELastShot[t] = getTimer(); CharLoseHP(1); Envi.Enemies["Enemy" + t].Enemy.gotoAndPlay("bite"); } else if (Math.abs(XD) < 20) { if (XD < 0) { Envi.Enemies["Enemy" + t]._x = Envi.Enemies["Enemy" + t]._x + EnemyS; } else if (XD > 0) { Envi.Enemies["Enemy" + t]._x = Envi.Enemies["Enemy" + t]._x - EnemyS; } } else if (((Math.abs(XD) < 30) && (Math.abs(YD) < 25)) && (State[t] == "Biting")) { ECurrTime[t] = getTimer(); if ((ECurrTime[t] - ELastShot[t]) > 700) { CharLoseHP(1); ELastShot[t] = getTimer(); } } } } else if ((EDir[t] == 0) && (Map[Level][EXT][EYT + 1] <= WT)) { if (((Map[Level][EXT - 1][EYT] <= WT) || (Map[Level][EXT - 1][EYT + 1] == undefined)) || (Map[Level][EXT - 1][EYT + 1] > WT)) { if (FoundChar) { Envi.Enemies["Enemy" + t]._xscale = 100; } else { EDir[t] = 1; Envi.Enemies["Enemy" + t]._xscale = -100; } } else if (!FoundChar) { if (State[t] != "Walking") { Envi.Enemies["Enemy" + t].Enemy.gotoAndPlay("walk"); State[t] = "Walking"; } Envi.Enemies["Enemy" + t]._x = Envi.Enemies["Enemy" + t]._x - (EnemyS * 1.5); } else if (FoundChar) { if (Math.abs(XD) > 30) { if (State[t] != "Running") { Envi.Enemies["Enemy" + t].Enemy.gotoAndPlay("run"); State[t] = "Running"; } Envi.Enemies["Enemy" + t]._x = Envi.Enemies["Enemy" + t]._x - (EnemyS * 4); } else if (((Math.abs(XD) < 30) && (Math.abs(YD) < 25)) && (State[t] != "Biting")) { State[t] = "Biting"; ELastShot[t] = getTimer(); CharLoseHP(1); Envi.Enemies["Enemy" + t].Enemy.gotoAndPlay("bite"); } else if (Math.abs(XD) < 20) { if (XD < 0) { Envi.Enemies["Enemy" + t]._x = Envi.Enemies["Enemy" + t]._x + EnemyS; } else if (XD > 0) { Envi.Enemies["Enemy" + t]._x = Envi.Enemies["Enemy" + t]._x - EnemyS; } } else if (((Math.abs(XD) < 30) && (Math.abs(YD) < 25)) && (State[t] == "Biting")) { ECurrTime[t] = getTimer(); if ((ECurrTime[t] - ELastShot[t]) > 700) { CharLoseHP(1); ELastShot[t] = getTimer(); } } } } } } else { EYT = Math.round(((Envi.Enemies["Enemy" + t]._y - 37) - 25) / TileSize); EXT = Math.round((Envi.Enemies["Enemy" + t]._x - 25) / TileSize); if ((Map[Level][EXT][EYT + 1] > WT) || (Map[Level][EXT][EYT + 1] == undefined)) { Envi.Enemies["Enemy" + t]._y = Envi.Enemies["Enemy" + t]._y + (EnemyS * 2); } else { Envi.Enemies["Enemy" + t].Enemy.gotoAndStop("dead"); } } } function DogAI(t) { if (!EnemyDead[t]) { EX = Envi.Enemies["Enemy" + t]._x; EY = Envi.Enemies["Enemy" + t]._y; XD = CX - EX; YD = CY - EY; EYT = Math.round(((EY - 25) - 25) / TileSize); EXT = Math.round((EX - 25) / TileSize); if ((Map[Level][EXT][EYT + 1] > WT) || (Map[Level][EXT][EYT + 1] == undefined)) { Envi.Enemies["Enemy" + t]._y = Envi.Enemies["Enemy" + t]._y + (EnemyS * 2); } else { if (!Landed[t]) { Envi.Enemies["Enemy" + t].Enemy.gotoAndPlay("walk"); State[t] = "Walking"; Envi.Enemies["Enemy" + t]._xscale = -100 + (200 * EDir[t]); Landed[t] = true; } FoundChar = false; if (((YD * YD) + (XD * XD)) < (EnemySi / 3)) { FoundChar = true; if ((Char._x - Envi._x) > Envi.Enemies["Enemy" + t]._x) { EDir[t] = 1; Envi.Enemies["Enemy" + t]._xscale = 100; } else { EDir[t] = 0; Envi.Enemies["Enemy" + t]._xscale = -100; } } if ((EDir[t] == 1) && (Map[Level][EXT][EYT + 1] <= WT)) { if (((Map[Level][EXT + 1][EYT] <= WT) || (Map[Level][EXT + 1][EYT + 1] == undefined)) || (Map[Level][EXT + 1][EYT + 1] > WT)) { if (FoundChar) { Envi.Enemies["Enemy" + t]._xscale = 100; } else { EDir[t] = 0; Envi.Enemies["Enemy" + t]._xscale = -100; } } else if (!FoundChar) { if (State[t] != "Walking") { Envi.Enemies["Enemy" + t].Enemy.gotoAndPlay("walk"); State[t] = "Walking"; } Envi.Enemies["Enemy" + t]._x = Envi.Enemies["Enemy" + t]._x + (EnemyS * 1.5); } else if (FoundChar) { if (Math.abs(XD) > 40) { if (State[t] != "Running") { Envi.Enemies["Enemy" + t].Enemy.gotoAndPlay("run"); State[t] = "Running"; } Envi.Enemies["Enemy" + t]._x = Envi.Enemies["Enemy" + t]._x + (EnemyS * 3); } else if (((Math.abs(XD) < 40) && (Math.abs(YD) < 13)) && (State[t] != "Biting")) { State[t] = "Biting"; ELastShot[t] = getTimer(); CharLoseHP(1); Envi.Enemies["Enemy" + t].Enemy.gotoAndPlay("bite"); } else if (Math.abs(XD) < 30) { if (XD < 0) { Envi.Enemies["Enemy" + t]._x = Envi.Enemies["Enemy" + t]._x + EnemyS; } else if (XD > 0) { Envi.Enemies["Enemy" + t]._x = Envi.Enemies["Enemy" + t]._x - EnemyS; } } else if (((Math.abs(XD) < 40) && (Math.abs(YD) < 13)) && (State[t] == "Biting")) { ECurrTime[t] = getTimer(); if ((ECurrTime[t] - ELastShot[t]) > 1000) { CharLoseHP(1); ELastShot[t] = getTimer(); } } } } else if ((EDir[t] == 0) && (Map[Level][EXT][EYT + 1] <= WT)) { if (((Map[Level][EXT - 1][EYT] <= WT) || (Map[Level][EXT - 1][EYT + 1] == undefined)) || (Map[Level][EXT - 1][EYT + 1] > WT)) { if (FoundChar) { Envi.Enemies["Enemy" + t]._xscale = -100; } else { EDir[t] = 1; Envi.Enemies["Enemy" + t]._xscale = 100; } } else if (!FoundChar) { if (State[t] != "Walking") { Envi.Enemies["Enemy" + t].Enemy.gotoAndPlay("walk"); State[t] = "Walking"; } Envi.Enemies["Enemy" + t]._x = Envi.Enemies["Enemy" + t]._x - (EnemyS * 1.5); } else if (FoundChar) { if (Math.abs(XD) > 40) { if (State[t] != "Running") { Envi.Enemies["Enemy" + t].Enemy.gotoAndPlay("run"); State[t] = "Running"; } Envi.Enemies["Enemy" + t]._x = Envi.Enemies["Enemy" + t]._x - (EnemyS * 3); } else if (((Math.abs(XD) < 40) && (Math.abs(YD) < 13)) && (State[t] != "Biting")) { State[t] = "Biting"; ELastShot[t] = getTimer(); CharLoseHP(1); Envi.Enemies["Enemy" + t].Enemy.gotoAndPlay("bite"); } else if (Math.abs(XD) < 30) { if (XD < 0) { Envi.Enemies["Enemy" + t]._x = Envi.Enemies["Enemy" + t]._x + EnemyS; } else if (XD > 0) { Envi.Enemies["Enemy" + t]._x = Envi.Enemies["Enemy" + t]._x - EnemyS; } } else if (((Math.abs(XD) < 40) && (Math.abs(YD) < 13)) && (State[t] == "Biting")) { ECurrTime[t] = getTimer(); if ((ECurrTime[t] - ELastShot[t]) > 1000) { CharLoseHP(1); ELastShot[t] = getTimer(); } } } } } } else { EYT = Math.round(((Envi.Enemies["Enemy" + t]._y - 25) - 25) / TileSize); EXT = Math.round((Envi.Enemies["Enemy" + t]._x - 25) / TileSize); if ((Map[Level][EXT][EYT + 1] > WT) || (Map[Level][EXT][EYT + 1] == undefined)) { Envi.Enemies["Enemy" + t]._y = Envi.Enemies["Enemy" + t]._y + (EnemyS * 2); } else { Envi.Enemies["Enemy" + t].Enemy.gotoAndStop("dead"); } } } function BatAI(t) { if (!EnemyDead[t]) { var _local3 = Envi.Enemies["Enemy" + t]._x; var _local2 = Envi.Enemies["Enemy" + t]._y; XD = CX - _local3; YD = CY - _local2; EYT = Math.round(((_local2 + Batrvy[t]) - 25) / TileSize); EXT = Math.round(((_local3 + Batrvx[t]) - 25) / TileSize); if ((((XD * XD) + (YD * YD)) < (EnemySi / 2)) && (!RetreatingChar[t])) { ECurrTime[t] = getTimer(); if (((ECurrTime[t] - ELastShot[t]) > 2000) || (ELastShot[t] == undefined)) { BatPointY[t] = Char._y - Envi._y; BatPointX[t] = Char._x - Envi._x; BatXNum = BatPointX[t] - _local3; BatYNum = BatPointY[t] - _local2; BatDenom = Math.sqrt((BatXNum * BatXNum) + (BatYNum * BatYNum)); Batrvx[t] = (BatXNum * BatPower) / BatDenom; Batrvy[t] = (BatYNum * BatPower) / BatDenom; ChasingChar[t] = true; if (State[t] != "Diving") { Envi.Enemies["Enemy" + t].Enemy.gotoAndStop("dive"); State[t] = "Diving"; } } } if (ChasingChar[t]) { BatPointY[t] = Char._y - Envi._y; BatPointX[t] = Char._x - Envi._x; BatXNum = BatPointX[t] - _local3; BatYNum = BatPointY[t] - _local2; BatDenom = Math.sqrt((BatXNum * BatXNum) + (BatYNum * BatYNum)); Batrvx[t] = (BatXNum * BatPower) / BatDenom; Batrvy[t] = (BatYNum * BatPower) / BatDenom; Angle = ((Math.atan2(Batrvy[t], Batrvx[t]) + 1.507) * 180) / Math.PI; Envi.Enemies["Enemy" + t]._rotation = Angle; } if ((Map[Level][EXT][EYT] <= WT) && (ChasingChar[t])) { trace("Set A timer"); ChasingChar[t] = false; ELastShot[t] = getTimer(); if (State[t] != "Flying") { Envi.Enemies["Enemy" + t].Enemy.gotoAndPlay("fly"); State[t] = "Flying"; Envi.Enemies["Enemy" + t]._rotation = 0; } } Hit = false; XD = Envi.Enemies["Enemy" + t]._x - (Char._x - Envi._x); YD = Envi.Enemies["Enemy" + t]._y - (Char._y - Envi._y); if ((((XD * XD) + (YD * YD)) < ChRad) && (ChasingChar[t])) { if (((XD * XD) + (YD * YD)) < ChBodyRad) { Hit = true; } if (!Hit) { XD = Envi.Enemies["Enemy" + t]._x - (HeadMarker._x - Envi._x); YD = Envi.Enemies["Enemy" + t]._y - (HeadMarker._y - Envi._y); if (((XD * XD) + (YD * YD)) < ChHeadRad) { Hit = true; } } if (!Hit) { XD = Envi.Enemies["Enemy" + t]._x - (Char._x - Envi._x); YD = Envi.Enemies["Enemy" + t]._y - (((Char._y + CH) - 10) - Envi._y); if (((XD * XD) + (YD * YD)) < ChLegRad) { Hit = true; } } } if ((Map[Level][EXT][EYT] <= WT) || (Hit)) { if (!ChasingChar[t]) { RetreatingChar[t] = false; BatPointX[t] = Envi.Enemies["Enemy" + t]._x + ((Math.random() * 200) - 100); BatPointY[t] = Envi.Enemies["Enemy" + t]._y + ((Math.random() * 200) - 100); BatXNum = BatPointX[t] - _local3; BatYNum = BatPointY[t] - _local2; BatDenom = Math.sqrt((BatXNum * BatXNum) + (BatYNum * BatYNum)); Batrvx[t] = (BatXNum * BatPower) / BatDenom; Batrvy[t] = (BatYNum * BatPower) / BatDenom; } else if (ChasingChar[t]) { ChasingChar[t] = false; RetreatingChar[t] = true; BatPointX[t] = (Math.random() * 200) - 100; BatPointY[t] = (Math.random() * 200) - 100; BatXNum = BatPointX[t] - _local3; BatYNum = BatPointY[t] - _local2; BatDenom = Math.sqrt((BatXNum * BatXNum) + (BatYNum * BatYNum)); Batrvx[t] = (BatXNum * BatPower) / BatDenom; Batrvy[t] = (BatYNum * BatPower) / BatDenom; CharLoseHP(1); if (State[t] != "Flying") { Envi.Enemies["Enemy" + t].Enemy.gotoAndPlay("fly"); State[t] = "Flying"; Envi.Enemies["Enemy" + t]._rotation = 0; } } } else { if (!ChasingChar[t]) { if (State[t] != "Flying") { Envi.Enemies["Enemy" + t].Enemy.gotoAndPlay("fly"); State[t] = "Flying"; Envi.Enemies["Enemy" + t]._rotation = 0; } } Envi.Enemies["Enemy" + t]._y = Envi.Enemies["Enemy" + t]._y + Batrvy[t]; Envi.Enemies["Enemy" + t]._x = Envi.Enemies["Enemy" + t]._x + Batrvx[t]; } } else { EYT = Math.round(((Envi.Enemies["Enemy" + t]._y - 25) - 40) / TileSize); EXT = Math.round((Envi.Enemies["Enemy" + t]._x - 25) / TileSize); if ((Map[Level][EXT][EYT + 1] > WT) || (Map[Level][EXT][EYT + 1] == undefined)) { Envi.Enemies["Enemy" + t]._y = Envi.Enemies["Enemy" + t]._y + (EnemyS * 2); } else { Envi.Enemies["Enemy" + t].Enemy.gotoAndStop("dead"); } } } function SoldierAI(t) { if (!EnemyDead[t]) { FoundChar = false; EX = Envi.Enemies["Enemy" + t]._x; EY = Envi.Enemies["Enemy" + t]._y; XD = CX - EX; YD = CY - EY; EYT = Math.round((EY - 35) / TileSize); EXT = Math.round((EX - 25) / TileSize); if ((Map[Level][EXT][EYT + 1] > WT) || (Map[Level][EXT][EYT + 1] == undefined)) { Envi.Enemies["Enemy" + t]._y = Envi.Enemies["Enemy" + t]._y + (EnemyS * 2); } else { ECurrTime[t] = getTimer(); if (((XD * XD) + (YD * YD)) < (EnemySi / 2)) { FoundChar = true; if ((Char._x - Envi._x) > EX) { EDir[t] = 1; Envi.Enemies["Enemy" + t]._xscale = -100; } else { EDir[t] = 0; Envi.Enemies["Enemy" + t]._xscale = 100; } if (((ECurrTime[t] - ELastShot[t]) >= 900) && (State[t] != "Attacking")) { ELastShot[t] = getTimer() - 900; State[t] = "Attacking"; Envi.Enemies["Enemy" + t].Enemy.gotoAndPlay("attack"); } } if (((ECurrTime[t] - ELastShot[t]) >= 1500) && (State[t] == "Attacking")) { State[t] = "Nothing"; EKunHit[KIE] = false; EKunXPoint[KIE] = Char._x - Envi._x; EKunYPoint[KIE] = (Char._y - Envi._y) + 20; EKunDrawPointX[KIE] = EX; EKunDrawPointY[KIE] = EY - 30; EKunOut = true; SetEnemyKunai(t, false); ELastShot[t] = getTimer(); } if (!FoundChar) { if ((Map[Level][EXT][EYT + 1] <= WT) && (EDir[t] == 1)) { Envi.Enemies["Enemy" + t]._x = Envi.Enemies["Enemy" + t]._x + EnemyS; if ((State[t] != "Walking") && (State[t] != "Attacking")) { State[t] = "Walking"; Envi.Enemies["Enemy" + t].Enemy.gotoAndPlay("walk"); } if (((Map[Level][EXT + 1][EYT] <= WT) || (Map[Level][EXT + 1][EYT + 1] == undefined)) || (Map[Level][EXT + 1][EYT + 1] > WT)) { EDir[t] = 0; Envi.Enemies["Enemy" + t]._xscale = 100; } } else if ((Map[Level][EXT][EYT + 1] <= WT) && (EDir[t] == 0)) { Envi.Enemies["Enemy" + t]._x = Envi.Enemies["Enemy" + t]._x - EnemyS; if ((State[t] != "Walking") && (State[t] != "Attacking")) { State[t] = "Walking"; Envi.Enemies["Enemy" + t].Enemy.gotoAndPlay("walk"); } if (((Map[Level][EXT - 1][EYT] <= WT) || (Map[Level][EXT - 1][EYT + 1] == undefined)) || (Map[Level][EXT - 1][EYT + 1] > WT)) { EDir[t] = 1; Envi.Enemies["Enemy" + t]._xscale = -100; } } } } } else if ((getTimer() - ELastShot[t]) > 500) { EYT = Math.round((Envi.Enemies["Enemy" + t]._y - 30) / TileSize); EXT = Math.round((Envi.Enemies["Enemy" + t]._x - 30) / TileSize); if ((Map[Level][EXT][EYT + 1] > WT) || (Map[Level][EXT][EYT + 1] == undefined)) { Envi.Enemies["Enemy" + t]._y = Envi.Enemies["Enemy" + t]._y + (EnemyS * 2); State[t] = "Dead"; } else { State[t] = "Dead"; } } if (EnemyDead[t]) { State[t] = "Dead"; } } function SetKunai() { Envi.Kunais["Kunai" + KI].removeMovieClip(); Envi.Kunais.attachMovie("Kunai", ["Kunai" + KI], KI); Envi.Kunais["Kunai" + KI]._x = Char._x - Envi._x; Envi.Kunais["Kunai" + KI]._y = Char._y - Envi._y; KunXNum = KunXPoint[KI] - Char._x; KunYNum = KunYPoint[KI] - Char._y; KunDenom = Math.sqrt((KunXNum * KunXNum) + (KunYNum * KunYNum)); Kunrvx[KI] = (KunXNum * KunPower) / KunDenom; Kunrvy[KI] = (KunYNum * KunPower) / KunDenom; Angle = ((Math.atan2(Kunrvy[KI], Kunrvx[KI]) + 1.507) * 180) / Math.PI; Envi.Kunais["Kunai" + KI]._rotation = Angle; ThrKunS.start(0, 1); if ((KI++) > (KIS + MK)) { KI = KIS; } } function SetEnemyKunai(t, Arrow) { Envi.Kunais["Kunai" + KIE].removeMovieClip(); Envi.Kunais["Arrow" + KIE].removeMovieClip(); if (Arrow) { Envi.Kunais.attachMovie("Arrow", ["Kunai" + KIE], KIE); } else { Envi.Kunais.attachMovie("Kunai", ["Kunai" + KIE], KIE); } Envi.Kunais["Kunai" + KIE]._x = Envi.Enemies["Enemy" + t]._x; Envi.Kunais["Kunai" + KIE]._y = Envi.Enemies["Enemy" + t]._y; EKunXNum = EKunXPoint[KIE] - Envi.Enemies["Enemy" + t]._x; EKunYNum = EKunYPoint[KIE] - Envi.Enemies["Enemy" + t]._y; EKunDenom = Math.sqrt((EKunXNum * EKunXNum) + (EKunYNum * EKunYNum)); EKunrvx[KIE] = (EKunXNum * EKunPower) / EKunDenom; EKunrvy[KIE] = (EKunYNum * EKunPower) / EKunDenom; Angle = ((Math.atan2(EKunrvy[KIE], EKunrvx[KIE]) + 1.507) * 180) / Math.PI; Envi.Kunais["Kunai" + KIE]._rotation = Angle; if ((KIE++) > (KIES + MK)) { KIE = KIES; } } function MoveEnemyKunai() { var _local1 = KIES; do { if (!EKunHit[_local1]) { EKunDrawPointX[_local1] = EKunDrawPointX[_local1] + EKunrvx[_local1]; EKunDrawPointY[_local1] = EKunDrawPointY[_local1] + EKunrvy[_local1]; } Envi.Kunais["Kunai" + _local1]._x = EKunDrawPointX[_local1]; Envi.Kunais["Kunai" + _local1]._y = EKunDrawPointY[_local1]; RYT = Math.round((Envi.Kunais["Kunai" + _local1]._y - 25) / TileSize); RXT = Math.round((Envi.Kunais["Kunai" + _local1]._x - 25) / TileSize); if (((Map[Level][RXT][RYT] >= 1) && (Map[Level][RXT][RYT] <= WT)) && (Map[Level][RXT][RYT] != undefined)) { EKunHit[_local1] = true; } XD = Envi.Kunais["Kunai" + _local1]._x - (Char._x - Envi._x); YD = Envi.Kunais["Kunai" + _local1]._y - (Char._y - Envi._y); if ((!EKunHit[_local1]) && (((XD * XD) + (YD * YD)) < ChRad)) { Hit = false; XD = Envi.Kunais["Kunai" + _local1]._x - (Char._x - Envi._x); YD = Envi.Kunais["Kunai" + _local1]._y - (Char._y - Envi._y); if (((XD * XD) + (YD * YD)) < ChBodyRad) { Hit = true; } if (!Hit) { XD = Envi.Kunais["Kunai" + _local1]._x - (HeadMarker._x - Envi._x); YD = Envi.Kunais["Kunai" + _local1]._y - (HeadMarker._y - Envi._y); if (((XD * XD) + (YD * YD)) < ChHeadRad) { Hit = true; } } if (!Hit) { XD = Envi.Kunais["Kunai" + _local1]._x - (Char._x - Envi._x); YD = Envi.Kunais["Kunai" + _local1]._y - (((Char._y - Envi._y) + CH) - 10); if (((XD * XD) + (YD * YD)) < ChLegRad) { Hit = true; } } if (Hit) { CharLoseHP(1); Envi.Kunais["Kunai" + _local1].removeMovieClip(); } } _local1++; } while (_local1 < EKunDrawPointX.length); } function CharLoseHP(HPLoss) { Stats["HP" + CharHP].removeMovieClip(); CharHP = CharHP - 1; HS.start(0.1, 1); if (CharHP <= 0) { Dead = true; RopeOut = false; Grappled = false; Grap._x = -50; Grap._y = -50; Line.clear(); RR = false; trace("In"); } else { CharHit = true; } } function MoveKunai() { var _local3 = KIS; do { if (!KunHit[_local3]) { if (Envi.Kunais["Kunai" + _local3]._x != undefined) { if (Envi.Kunais["Kunai" + _local3]._x == NaN) { trace("OMG ITS NAN YOU FOOL"); } KunDrawPointX[_local3] = KunDrawPointX[_local3] + Kunrvx[_local3]; KunDrawPointY[_local3] = KunDrawPointY[_local3] + Kunrvy[_local3]; Envi.Kunais["Kunai" + _local3]._x = KunDrawPointX[_local3]; Envi.Kunais["Kunai" + _local3]._y = KunDrawPointY[_local3]; RYT = Math.round((KunDrawPointY[_local3] - 25) / TileSize); RXT = Math.round((KunDrawPointX[_local3] - 25) / TileSize); if ((Map[Level][RXT][RYT] <= WT) && (Map[Level][RXT][RYT] != undefined)) { KunHit[_local3] = true; } var _local2 = 0; do { if (!CColl[_local2]) { var _local5 = Envi.Kunais["Kunai" + _local3]._x; var _local4 = Envi.Kunais["Kunai" + _local3]._y; YD = (CCY[_local2] + 15) - _local4; if ((YD < 20) && (YD > -20)) { XD = (CCX[_local2] + 16) - _local5; if ((XD < 20) && (XD > -20)) { Hit = false; XD = (CCX[_local2] + 16) - _local5; YD = (CCY[_local2] + 15) - _local4; if (((XD * XD) + (YD * YD)) < CoinRad) { Hit = true; } if (!Hit) { XD = (CCX[_local2] + 16) - (Envi.Kunais["Kunai" + _local3].Corner1._x - _local5); YD = (CCY[_local2] + 15) - (Envi.Kunais["Kunai" + _local3].Corner1._y - _local4); if (((XD * XD) + (YD * YD)) < CoinRad) { Hit = true; } } if (!Hit) { XD = (CCX[_local2] + 16) - (Envi.Kunais["Kunai" + _local3].Corner2._x + _local5); YD = (CCY[_local2] + 15) - (Envi.Kunais["Kunai" + _local3].Corner2._y + _local4); if (((XD * XD) + (YD * YD)) < CoinRad) { Hit = true; } } if (Hit) { CS.start(0, 1); CurrentOrbs++; CColl[_local2] = true; OrbsText = (("x " + CurrentOrbs) + "/") + TotalOrbs; attachMovie("Collectable", "1" + CurrentOrbs, getNextHighestDepth()); mainTimeLine["1" + CurrentOrbs]._x = (CCX[_local2] + 17) + Envi._x; mainTimeLine["1" + CurrentOrbs]._y = (CCY[_local2] + 17.5) + Envi._y; var _local7 = new mx.transitions.Tween(mainTimeLine["1" + CurrentOrbs], "_alpha", mx.transitions.easing.Strong.easeOut, 100, 0, 1.5, true); var _local8 = new mx.transitions.Tween(mainTimeLine["1" + CurrentOrbs], "_y", mx.transitions.easing.Strong.easeOut, mainTimeLine["1" + CurrentOrbs]._y, 20, 1.5, true); var _local9 = new mx.transitions.Tween(mainTimeLine["1" + CurrentOrbs], "_xscale", mx.transitions.easing.Strong.easeOut, 100, 80, 1.5, true); var _local10 = new mx.transitions.Tween(mainTimeLine["1" + CurrentOrbs], "_x", mx.transitions.easing.Strong.easeOut, mainTimeLine["1" + CurrentOrbs]._x, 290, 1.5, true); var _local6 = new mx.transitions.Tween(mainTimeLine["1" + CurrentOrbs], "_yscale", mx.transitions.easing.Strong.easeOut, 100, 80, 1.5, true); _local6.onMotionFinished = function () { this.obj.removeMovieClip(); }; if (CurrentOrbs == TotalOrbs) { elapsed_time = getTimer() - start_time; Stats.TimerT.text = time_to_string(elapsed_time); if (elapsed_time < mainTimeLine.BestTime[Level]) { BestTime[Level] = elapsed_time; BestTimeT[Level] = time_to_string(BestTime[Level]); } TotalTimeT = Stats.TimerT.text; TotalTime = elapsed_time; CleanUp("Win"); } Envi.Orbs["Orb" + _local2].removeMovieClip(); } } } } _local2++; } while (_local2 < mainTimeLine[("ColLoc" + Level) + "X"].length); _local2 = 0; do { if (!EnemyDead[_local2]) { if (EnemyType[_local2] == BatNum) { XD = Envi.Enemies["Enemy" + _local2]._x - KunDrawPointX[_local3]; YD = Envi.Enemies["Enemy" + _local2]._y - KunDrawPointY[_local3]; if (((XD * XD) + (YD * YD)) < 600) { Hit = false; trace("In"); XD = Envi.Enemies["Enemy" + _local2]._x - KunDrawPointX[_local3]; YD = Envi.Enemies["Enemy" + _local2]._y - KunDrawPointY[_local3]; if (((XD * XD) + (YD * YD)) < BatHeadRad) { Hit = true; } if (!Hit) { XD = Envi.Enemies["Enemy" + _local2]._x - (Envi.Kunais["Kunai" + _local3].CenterPoint._x + Envi.Kunais["Kunai" + _local3]._x); YD = Envi.Enemies["Enemy" + _local2]._y - (Envi.Kunais["Kunai" + _local3].CenterPoint._y + Envi.Kunais["Kunai" + _local3]._y); if (((XD * XD) + (YD * YD)) < BatHeadRad) { Hit = true; } } if (!Hit) { XD = Envi.Enemies["Enemy" + _local2]._x - (Envi.Kunais["Kunai" + _local3].CenterPoint2._x + Envi.Kunais["Kunai" + _local3]._x); YD = Envi.Enemies["Enemy" + _local2]._y - (Envi.Kunais["Kunai" + _local3].CenterPoint2._y + Envi.Kunais["Kunai" + _local3]._y); if (((XD * XD) + (YD * YD)) < BatHeadRad) { Hit = true; } } if (!Hit) { if (State[_local2] != "Swooping") { XD = (Envi.Enemies["Enemy" + _local2]._x - 15) - KunDrawPointX[_local3]; YD = Envi.Enemies["Enemy" + _local2]._y - KunDrawPointY[_local3]; if (((XD * XD) + (YD * YD)) < BatWingRad) { Hit = true; } if (!Hit) { XD = (Envi.Enemies["Enemy" + _local2]._x + 15) - KunDrawPointX[_local3]; YD = Envi.Enemies["Enemy" + _local2]._y - KunDrawPointY[_local3]; if (((XD * XD) + (YD * YD)) < BatWingRad) { Hit = true; } } if (!Hit) { XD = (Envi.Enemies["Enemy" + _local2]._x - 15) - (Envi.Kunais["Kunai" + _local3].CenterPoint._x + Envi.Kunais["Kunai" + _local3]._x); YD = Envi.Enemies["Enemy" + _local2]._y - (Envi.Kunais["Kunai" + _local3].CenterPoint._y + Envi.Kunais["Kunai" + _local3]._y); if (((XD * XD) + (YD * YD)) < BatWingRad) { Hit = true; } } if (!Hit) { XD = (Envi.Enemies["Enemy" + _local2]._x + 15) - (Envi.Kunais["Kunai" + _local3].CenterPoint._x + Envi.Kunais["Kunai" + _local3]._x); YD = Envi.Enemies["Enemy" + _local2]._y - (Envi.Kunais["Kunai" + _local3].CenterPoint._y + Envi.Kunais["Kunai" + _local3]._y); if (((XD * XD) + (YD * YD)) < BatWingRad) { Hit = true; } } } } if (Hit) { BatLoseHP(1, _local2, _local3); } } } else if (EnemyType[_local2] == DogNum) { XD = Envi.Enemies["Enemy" + _local2]._x - KunDrawPointX[_local3]; YD = Envi.Enemies["Enemy" + _local2]._y - KunDrawPointY[_local3]; if (((XD * XD) + (YD * YD)) < 4900) { TempDPX = KunDrawPointX[_local3] - Kunrvx[_local3]; TempDPY = KunDrawPointY[_local3] - Kunrvy[_local3]; do { TempDPX = TempDPX + (Kunrvx[_local3] / 5); TempDPY = TempDPY + (Kunrvy[_local3] / 5); if (EDir[_local2] == 1) { XD = (Envi.Enemies["Enemy" + _local2]._x + 22.2) - TempDPX; } else if (EDir[_local2] == 0) { XD = (Envi.Enemies["Enemy" + _local2]._x - 22.2) - TempDPX; } YD = (Envi.Enemies["Enemy" + _local2]._y - 9.9) - TempDPY; if (((XD * XD) + (YD * YD)) < DogHeadRad) { DogLoseHP(1, _local2, _local3); break; } XD = Envi.Enemies["Enemy" + _local2]._x - TempDPX; YD = (Envi.Enemies["Enemy" + _local2]._y - 3.3) - TempDPY; if (((XD * XD) + (YD * YD)) < DogBodyRad) { DogLoseHP(1, _local2, _local3); break; } if (EDir[_local2] == 1) { XD = (Envi.Enemies["Enemy" + _local2]._x - 14) - TempDPX; } else if (EDir[_local2] == 0) { XD = (Envi.Enemies["Enemy" + _local2]._x + 14) - TempDPX; } YD = (Envi.Enemies["Enemy" + _local2]._y - 3.3) - TempDPY; if (((XD * XD) + (YD * YD)) < DogBodyRad) { DogLoseHP(1, _local2, _local3); break; } XD = (Envi.Enemies["Enemy" + _local2]._x - 14) - TempDPX; YD = (Envi.Enemies["Enemy" + _local2]._y + 9) - TempDPY; if (((XD * XD) + (YD * YD)) < DogBodyRad) { DogLoseHP(1, _local2, _local3); break; } XD = (Envi.Enemies["Enemy" + _local2]._x + 14) - TempDPX; YD = (Envi.Enemies["Enemy" + _local2]._y + 9) - TempDPY; if (((XD * XD) + (YD * YD)) < DogBodyRad) { DogLoseHP(1, _local2, _local3); break; } } while (Math.abs((TempDPX - KunDrawPointX[_local3]) + (TempDPY - KunDrawPointY[_local3])) > 1); } } else if (EnemyType[_local2] == SoldierNum) { XD = Envi.Kunais["Kunai" + _local3]._x - Envi.Enemies["Enemy" + _local2]._x; YD = Envi.Kunais["Kunai" + _local3]._y - Envi.Enemies["Enemy" + _local2]._y; if ((!KunHit[_local3]) && (((XD * XD) + (YD * YD)) < SoRad)) { Hit = false; HeadShot = false; XD = Envi.Kunais["Kunai" + _local3]._x - Envi.Enemies["Enemy" + _local2]._x; YD = Envi.Kunais["Kunai" + _local3]._y - Envi.Enemies["Enemy" + _local2]._y; if (((XD * XD) + (YD * YD)) < SoBodyRad) { Hit = true; trace("Hit body"); } if (!Hit) { XD = Envi.Kunais["Kunai" + _local3]._x - Envi.Enemies["Enemy" + _local2]._x; YD = Envi.Kunais["Kunai" + _local3]._y - (Envi.Enemies["Enemy" + _local2]._y - SoH); if (((XD * XD) + (YD * YD)) < SoHeadRad) { Hit = true; HeadShot = true; trace("Hit head"); } } if (!Hit) { YD = Envi.Kunais["Kunai" + _local3]._y - ((Envi.Enemies["Enemy" + _local2]._y + SoH) - 5); if (((XD * XD) + (YD * YD)) < SoLegRad) { Hit = true; trace("Hit legs"); } } if (Hit) { EnemyHP[_local2] = EnemyHP[_local2] - 1; if (HeadShot) { EnemyHP[_local2] = EnemyHP[_local2] - 10; } if (EnemyHP[_local2] <= 0) { EnemyDead[_local2] = true; State[_local2] = "Dead"; ELastShot[_local3] = getTimer(); Envi.Enemies["Enemy" + _local2].Enemy.gotoAndPlay("dead"); } Envi.Kunais["Kunai" + _local3].removeMovieClip(); break; } } } else if (EnemyType[_local2] == RatNum) { if (Envi.Kunais["Kunai" + _local3].hitTest(Envi.Enemies["Enemy" + _local2])) { EnemyHP[_local2] = EnemyHP[_local2] - 1; if (EnemyHP[_local2] <= 0) { EnemyDead[_local2] = true; Envi.Enemies["Enemy" + _local2].Enemy.gotoAndStop("dead"); } Envi.Kunais["Kunai" + _local3].removeMovieClip(); break; } } } _local2++; } while (_local2 < EC); } } _local3++; } while (_local3 < KunDrawPointX.length); } function BatLoseHP(HP, Bat, Kunai) { EnemyHP[Bat] = EnemyHP[Bat] - 1; KBatS.start(0, 1); if (EnemyHP[Bat] <= 0) { Envi.Enemies["Enemy" + Bat].Enemy.gotoAndStop("fall"); Envi.Enemies["Enemy" + Bat]._rotation = 0; EnemyDead[Bat] = true; } Envi.Kunais["Kunai" + Kunai].removeMovieClip(); } function DogLoseHP(HP, Dog, Kunai) { EnemyHP[Dog] = EnemyHP[Dog] - 1; if (EnemyHP[Dog] <= 0) { Envi.Enemies["Enemy" + Dog].Enemy.gotoAndStop("dead"); EnemyDead[Dog] = true; } Envi.Kunais["Kunai" + Kunai].removeMovieClip(); } function CheckWallCollisions() { var _local9 = false; var _local10 = false; var _local11 = false; var _local12 = false; var _local13 = false; var _local14 = false; var _local3 = (Char._x - Envi._x) - 25; var _local2 = (Char._y - Envi._y) - 25; CTP = Map[Level][Math.round((_local3 + vx) / TileSize)][Math.round(((_local2 + vy) - CH) / TileSize)]; CTRP = Map[Level][Math.round(((_local3 + vx) + CW) / TileSize)][Math.round(((_local2 - CH) + 1) / TileSize)]; CTLP = Map[Level][Math.round(((_local3 + vx) - CW) / TileSize)][Math.round(((_local2 - CH) + 1) / TileSize)]; CBP = Map[Level][Math.round((_local3 + vx) / TileSize)][Math.round(((_local2 + vy) + CH) / TileSize)]; CBRP = Map[Level][Math.round(((_local3 + vx) + CW) / TileSize)][Math.round(((_local2 + CH) - 1) / TileSize)]; CBLP = Map[Level][Math.round(((_local3 + vx) - CW) / TileSize)][Math.round(((_local2 + CH) - 1) / TileSize)]; CLP = Map[Level][Math.round(((_local3 + vx) - CW) / TileSize)][Math.round(_local2 / TileSize)]; CRP = Map[Level][Math.round(((_local3 + vx) + CW) / TileSize)][Math.round(_local2 / TileSize)]; CTRCP = Map[Level][Math.round(((_local3 + CW) - 10) / TileSize)][Math.round((((_local2 + vy) - CH) + 1) / TileSize)]; CTLCP = Map[Level][Math.round(((_local3 - CW) + 10) / TileSize)][Math.round((((_local2 + vy) - CH) + 1) / TileSize)]; CBLCP = Map[Level][Math.round(((_local3 - CW) + 10) / TileSize)][Math.round(((_local2 + vy) + CH) / TileSize)]; CBRCP = Map[Level][Math.round(((_local3 + CW) - 10) / TileSize)][Math.round(((_local2 + vy) + CH) / TileSize)]; if (((CBP <= WT) && (CBP != undefined)) && (!OnGround)) { vy = 0; do { if (Map[Level][Math.round((_local3 + vx) / TileSize)][Math.round(((_local2 + vy) + CH) / TileSize)] <= WT) { break; } vy++; } while (true); WJ = false; if (!Grappled) { Grapped = false; } OnGround = true; JustLanded = true; } else if ((CBP <= WT) && (CBP != undefined)) { vy = 0; } else if (((CBLCP <= WT) && (CBLCP != undefined)) && (!OnGround)) { vy = 0; OnGround = true; do { if (Map[Level][Math.round(((_local3 - CW) + 10) / TileSize)][Math.round(((_local2 + vy) + CH) / TileSize)] <= WT) { break; } vy++; } while (true); WJ = false; if (!Grappled) { Grapped = false; } OnGround = true; JustLanded = true; } else if ((CBLCP <= WT) && (CBLCP != undefined)) { vy = 0; } else if (((CBRCP <= WT) && (CBRCP != undefined)) && (!OnGround)) { vy = 0; OnGround = true; do { if (Map[Level][Math.round(((_local3 + CW) - 10) / TileSize)][Math.round(((_local2 + vy) + CH) / TileSize)] <= WT) { break; } vy++; } while (true); WJ = false; if (!Grappled) { Grapped = false; } OnGround = true; JustLanded = true; } else if ((CBRCP <= WT) && (CBRCP != undefined)) { vy = 0; } else if (OnGround) { OnGround = false; } if ((CBRP <= WT) && (CBRP != undefined)) { _local14 = true; if (vx > 0) { vx = 0; do { if (Map[Level][Math.round(((_local3 + CW) + vx) / TileSize)][Math.round(((_local2 + CH) - 1) / TileSize)] <= WT) { break; } vx++; } while (true); } } if ((CBLP <= WT) && (CBLP != undefined)) { _local11 = true; if (vx < 0) { vx = 0; do { if (Map[Level][Math.round(((_local3 - CW) + vx) / TileSize)][Math.round(((_local2 + CH) - 1) / TileSize)] <= WT) { break; } vx--; } while (true); } } if ((CTP <= WT) && (CTP != undefined)) { vy = 0; do { if (Map[Level][Math.round((_local3 + vx) / TileSize)][Math.round(((_local2 + vy) - CH) / TileSize)] <= WT) { break; } vy--; } while (true); vy++; } else if ((CTRCP <= WT) && (CTRCP != undefined)) { vy = 0; do { if (Map[Level][Math.round(((_local3 + CW) - 10) / TileSize)][Math.round(((_local2 + vy) - CH) / TileSize)] <= WT) { break; } vy--; } while (true); vy++; } else if ((CTLCP <= WT) && (CTLCP != undefined)) { vy = 0; do { if (Map[Level][Math.round(((_local3 - CW) + 10) / TileSize)][Math.round(((_local2 + vy) - CH) / TileSize)] <= WT) { break; } vy--; } while (true); vy++; } if ((CTLP <= WT) && (CTLP != undefined)) { _local9 = true; if (vx < 0) { vx = 0; do { if (Map[Level][Math.round((((_local3 - CW) + vx) + 1) / TileSize)][Math.round(((_local2 - CH) + 1) / TileSize)] <= WT) { break; } vx--; } while (true); } } if ((CTRP <= WT) && (CTRP != undefined)) { _local12 = true; if (vx > 0) { vx = 0; do { if (Map[Level][Math.round((((_local3 + CW) + vx) - 1) / TileSize)][Math.round(((_local2 - CH) + 1) / TileSize)] <= WT) { break; } vx++; } while (true); } } if ((CRP <= WT) && (CRP != undefined)) { _local13 = true; if (vx > 0) { vx = 0; do { if (Map[Level][Math.round(((_local3 + CW) + vx) / TileSize)][Math.round(_local2 / TileSize)] <= WT) { break; } vx++; } while (true); } } if ((CLP <= WT) && (CLP != undefined)) { _local10 = true; if (vx < 0) { vx = 0; do { if (Map[Level][Math.round(((_local3 - CW) + vx) / TileSize)][Math.round(_local2 / TileSize)] <= WT) { break; } vx--; } while (true); } } if ((!OnGround) && (!Grappled)) { if ((_local13 && (_local12)) && (_local14)) { WSC++; if (WSC >= 6) { if (!WallSlidingRight) { } WallSlidingRight = true; WallSlidingLeft = false; Direction = 0; } } else if ((_local10 && (_local9)) && (_local11)) { WSC++; if (WSC >= 6) { if (!WallSlidingLeft) { Changed = true; } WallSlidingLeft = true; WallSlidingRight = false; Direction = 1; } } else { SlidingNow = false; WallSlidingLeft = false; WallSlidingRight = false; } } else { WallSlidingLeft = false; WallSlidingRight = false; WSC = 0; SlidingNow = false; WSOC = 0; } v = 0; do { XD = (Envi.Orbs["Orb" + v]._x + 16) - (Char._x - Envi._x); YD = (Envi.Orbs["Orb" + v]._y + 15) - (Char._y - Envi._y); if (((XD * XD) + (YD * YD)) < ((CH * 2) * (CH * 2))) { Hit = false; XD = (Envi.Orbs["Orb" + v]._x + 16) - (Char._x - Envi._x); YD = (Envi.Orbs["Orb" + v]._y + 15) - (Char._y - Envi._y); if (((XD * XD) + (YD * YD)) < (ChBodyRad + CoinRad)) { Hit = true; } if (!Hit) { XD = (Envi.Orbs["Orb" + v]._x + 16) - (HeadMarker._x - Envi._x); YD = (Envi.Orbs["Orb" + v]._y + 15) - (HeadMarker._y - Envi._y); if (((XD * XD) + (YD * YD)) < (ChHeadRad + CoinRad)) { Hit = true; } } if (!Hit) { XD = (Envi.Orbs["Orb" + v]._x + 16) - (Char._x - Envi._x); YD = (Envi.Orbs["Orb" + v]._y + 15) - (((Char._y - Envi._y) + CH) - 10); if (((XD * XD) + (YD * YD)) < (ChLegRad + CoinRad)) { Hit = true; } } if (Hit) { CurrentOrbs++; CS.start(0, 1); CColl[v] = true; OrbsText = (("x " + CurrentOrbs) + "/") + TotalOrbs; attachMovie("Collectable", "1" + CurrentOrbs, getNextHighestDepth()); mainTimeLine["1" + CurrentOrbs]._x = (Envi.Orbs["Orb" + v]._x + (Envi.Orbs["Orb" + v]._width / 2)) + Envi._x; mainTimeLine["1" + CurrentOrbs]._y = (Envi.Orbs["Orb" + v]._y + (Envi.Orbs["Orb" + v]._height / 2)) + Envi._y; var _local5 = new mx.transitions.Tween(mainTimeLine["1" + CurrentOrbs], "_alpha", mx.transitions.easing.Strong.easeOut, 100, 0, 1.5, true); var _local6 = new mx.transitions.Tween(mainTimeLine["1" + CurrentOrbs], "_y", mx.transitions.easing.Strong.easeOut, mainTimeLine["1" + CurrentOrbs]._y, 20, 1.5, true); var _local7 = new mx.transitions.Tween(mainTimeLine["1" + CurrentOrbs], "_xscale", mx.transitions.easing.Strong.easeOut, 100, 80, 1.5, true); var _local8 = new mx.transitions.Tween(mainTimeLine["1" + CurrentOrbs], "_x", mx.transitions.easing.Strong.easeOut, mainTimeLine["1" + CurrentOrbs]._x, 290, 1.5, true); var _local4 = new mx.transitions.Tween(mainTimeLine["1" + CurrentOrbs], "_yscale", mx.transitions.easing.Strong.easeOut, 100, 80, 1.5, true); _local4.onMotionFinished = function () { this.obj.removeMovieClip(); }; if (CurrentOrbs == TotalOrbs) { elapsed_time = getTimer() - start_time; Stats.TimerT.text = time_to_string(elapsed_time); if (elapsed_time < mainTimeLine.BestTime[Level]) { BestTime[Level] = elapsed_time; BestTimeT[Level] = time_to_string(BestTime[Level]); } TotalTimeT = Stats.TimerT.text; TotalTime = elapsed_time; CleanUp("Win"); } Envi.Orbs["Orb" + v].removeMovieClip(); } } } while ((++v) < mainTimeLine[("ColLoc" + Level) + "X"].length); } function MoveCharacter() { if (OnGround) { if (Direction == 1) { if ((!RopeOut) && (vx != 0)) { HeadMarker._x = Char._x + CHW; } else { HeadMarker._x = Char._x; } } else if (Direction == 0) { if ((!RopeOut) && (vx != 0)) { HeadMarker._x = Char._x - CHW; } else { HeadMarker._x = Char._x; } } } if (!OnGround) { if (Direction == 1) { if (RopeOut) { HeadMarker._x = Char._x; } if (!RopeOut) { HeadMarker._x = Char._x + CHW; } } else if (Direction == 0) { if (RopeOut) { HeadMarker._x = Char._x; } else if (!RopeOut) { HeadMarker._x = Char._x - CHW; } } } HeadMarker._y = (Char._y - CH) + 4; BodyMarker._x = Char._x; BodyMarker._y = Char._y; LegMarker._x = Char._x; LegMarker._y = (Char._y + CH) - 10; var _local3 = vx; var _local2 = vy; var _local1 = 0; Envi._x = Envi._x - _local3; Envi._y = Envi._y - _local2; DrawPointX = DrawPointX - _local3; DrawPointY = DrawPointY - _local2; _local1 = 0; do { if (!CColl[_local1]) { Inny = false; XD = CCX[_local1] + Envi._x; YD = CCY[_local1] + Envi._y; if (XD < 570) { if (XD > -30) { if (YD < 470) { if (YD > -30) { Inny = true; if (!CoinExists[_local1]) { Envi.Orbs.createEmptyMovieClip("Orb" + _local1, _local1); Envi.Orbs["Orb" + _local1].attachBitmap(CoinBitty, 1); Envi.Orbs["Orb" + _local1]._x = CCX[_local1]; Envi.Orbs["Orb" + _local1]._y = CCY[_local1]; CoinExists[_local1] = true; } } } } } if (CoinExists[_local1] && (!Inny)) { Envi.Orbs["Orb" + _local1].removeMovieClip(); CoinExists[_local1] = false; } } _local1++; } while (_local1 < mainTimeLine[("ColLoc" + Level) + "X"].length); b = 0; do { _local1 = AccNumber[b]; Inny = false; XD = CAX[_local1] + Envi._x; YD = CAY[_local1] + Envi._y; if (XD < 555) { if (XD > -155) { if (YD < 455) { if (YD > -250) { Inny = true; if (!AccExists[_local1]) { AccExists[_local1] = true; if (mainTimeLine["AccType" + Level][_local1] != TorchNum) { Envi.Accs.createEmptyMovieClip(["AccH" + _local1], Envi.Accs.getNextHighestDepth()); Envi.Accs["AccH" + _local1].attachBitmap(mainTimeLine["TileBitmap" + mainTimeLine["AccType" + Level][_local1]], Envi.Accs["AccH" + _local1].getNextHighestDepth()); } else { Envi.Accs.createEmptyMovieClip(["AccH" + _local1], Envi.Accs.getNextHighestDepth()); Envi.Accs["AccH" + _local1].attachMovie("TorchMC", "Torch", Envi.Accs["AccH" + _local1].getNextHighestDepth()); Rand = Math.round((Math.random() * 18) + 1); Envi.Accs["AccH" + _local1].Torch.gotoAndPlay(Rand); } Envi.Accs["AccH" + _local1]._x = CAX[_local1]; Envi.Accs["AccH" + _local1]._y = CAY[_local1]; } } } } } if (AccExists[_local1] && (!Inny)) { AccExists[_local1] = false; Envi.Accs["AccH" + _local1].removeMovieClip(); } } while ((++b) < AccNumber.length); b = 0; do { Inny = false; TEC = SpikeNum[b]; XD = CSX[b] + Envi._x; YD = CSY[b] + Envi._y; if (XD > -30) { if (XD < 580) { if (YD > -30) { if (YD < 480) { Inny = true; if (!SpikeExists[b]) { SpikeExists[b] = true; trace("TEC:: " + TEC); Envi.Enemies.createEmptyMovieClip("Enemy" + TEC, TEC); Envi.Enemies["Enemy" + TEC].attachMovie("Enemy" + SpikeUNum, "Enemy", 1); Envi.Enemies["Enemy" + TEC]._x = CSX[b]; Envi.Enemies["Enemy" + TEC]._y = CSY[b]; trace("Y: " + Envi.Enemies["Enemy" + TEC]._y); trace("X: " + Envi.Enemies["Enemy" + TEC]._x); if (EnemyType[TEC] != SpikeUNum) { if (EnemyType[TEC] == SpikeDNum) { Envi.Enemies["Enemy" + TEC]._rotation = Envi.Enemies["Enemy" + TEC]._rotation + 180; } else if (EnemyType[TEC] == SpikeRNum) { Envi.Enemies["Enemy" + TEC]._rotation = Envi.Enemies["Enemy" + TEC]._rotation - 90; } else if (EnemyType[TEC] == SpikeLNum) { Envi.Enemies["Enemy" + TEC]._rotation = Envi.Enemies["Enemy" + TEC]._rotation + 90; } } } } } } } if (SpikeExists[b] && (!Inny)) { trace("Deleted"); SpikeExists[b] = false; Envi.Enemies["Enemy" + TEC].removeMovieClip(); } } while ((++b) < SpikeNum.length); if (CXT != Math.round(((-Envi._x) - 25) / TileSize)) { TYT = Math.round(((-Envi._y) - 25) / TileSize); if (Math.round(((-Envi._x) - 25) / TileSize) > CXT) { CXT = Math.round(((-Envi._x) - 25) / TileSize); MoveTile(CXT, TYT, 0, 1); } else if (Math.round(((-Envi._x) - 25) / TileSize) < CXT) { CXT = Math.round(((-Envi._x) - 25) / TileSize); MoveTile(CXT, TYT, 0, 0); } } if (CYT != Math.round(((-Envi._y) - 25) / TileSize)) { if (Math.round(((-Envi._y) - 25) / TileSize) > CYT) { CYT = Math.round(((-Envi._y) - 25) / TileSize); MoveTile(CXT, CYT, 1, 1); } else if (Math.round(((-Envi._y) - 25) / TileSize) < CYT) { CYT = Math.round(((-Envi._y) - 25) / TileSize); MoveTile(CXT, CYT, 1, 0); } } } function MoveTile(XT, YT, Y, GOR) { if (!Y) { Higher = undefined; TileAtZero = XT - SXT; if (TileAtZero != OldTAZX) { if ((((TileAtZero - OldTAZX) > 1) && (TileAtZero != 16)) && (OldTAZX != 0)) { Higher = true; trace(((("TileAtZero: " + TileAtZero) + ". OldTAZX: ") + OldTAZX) + ". True"); } else if ((((TileAtZero - OldTAZX) < -1) && (TileAtZero != 2)) && (OldTAZX != 18)) { trace(((("TileAtZero: " + TileAtZero) + ". OldTAZX: ") + OldTAZX) + ". False"); Higher = false; } OldTAZX = TileAtZero; if (TileAtZero > 16) { do { TileAtZero = TileAtZero - 17; } while (TileAtZero > 16); } else if (TileAtZero < 0) { do { TileAtZero = TileAtZero + 17; } while (TileAtZero < 0); } if (GOR) { TileAtZero--; if (TileAtZero == -1) { TileAtZero = 16; } XT = XT + 14; v = 0; do { Name = TileAtZero + (v * 17); Envi.Wall["MapPiece" + Name]._x = Envi.Wall["MapPiece" + Name]._x + 850; TileFromEnvi = (Math.round(((Envi._y + Envi.Wall["MapPiece" + Name]._y) - 25) / TileSize) - 1) + YT; Val = Map[Level][XT][YConst + TileFromEnvi]; if (Val != undefined) { MapPieces[Name].copyPixels(mainTimeLine["TileBitmap" + Val], new flash.geom.Rectangle(0, 0, 50, 50), new flash.geom.Point(0, 0)); } else { RandomNum = Math.round(Math.random() * 3) + 1; MapPieces[Name].copyPixels(mainTimeLine["TileBitmap100" + RandomNum], new flash.geom.Rectangle(0, 0, 50, 50), new flash.geom.Point(0, 0)); } } while ((++v) <= 14); } else if (!GOR) { XT = XT - 2; v = 0; do { Name = TileAtZero + (v * 17); Envi.Wall["MapPiece" + Name]._x = Envi.Wall["MapPiece" + Name]._x - 850; TileFromEnvi = (Math.round(((Envi._y + Envi.Wall["MapPiece" + Name]._y) - 25) / TileSize) - 1) + YT; Val = Map[Level][XT][YConst + TileFromEnvi]; if (Val != undefined) { MapPieces[Name].copyPixels(mainTimeLine["TileBitmap" + Val], new flash.geom.Rectangle(0, 0, 50, 50), new flash.geom.Point(0, 0)); } else { RandomNum = Math.round(Math.random() * 3) + 1; MapPieces[Name].copyPixels(mainTimeLine["TileBitmap100" + RandomNum], new flash.geom.Rectangle(0, 0, 50, 50), new flash.geom.Point(0, 0)); } } while ((++v) <= 14); } } } else if (Y) { Higher = undefined; c = 1; TileAtZero = YT - SYT; if (TileAtZero != OldTAZY) { if ((TileAtZero - OldTAZY) > 1) { if ((TileAtZero == 14) && (OldTAZY == 0)) { } else { Higher = true; OTAZY = TileAtZero; OYT = YT; trace(((("TileAtZero: " + TileAtZero) + ". OldTAZY: ") + OldTAZY) + ". True"); } } else if ((TileAtZero - OldTAZY) < -1) { if ((TileAtZero == 2) && (OldTAZY == 16)) { } else { OTAZY = TileAtZero; OYT = YT; trace(((("TileAtZero: " + TileAtZero) + ". OldTAZY: ") + OldTAZY) + ". False"); Higher = false; } } Temp = TileAtZero; do { if (TileAtZero > 14) { do { TileAtZero = TileAtZero - 15; } while (TileAtZero > 14); } else if (TileAtZero < 0) { do { TileAtZero = TileAtZero + 15; } while (TileAtZero < 0); } if (GOR) { TileAtZero--; if (TileAtZero == -1) { TileAtZero = 14; } YT = YT + 12; v = 0; do { Name = v + (TileAtZero * 17); Envi.Wall["MapPiece" + Name]._y = Envi.Wall["MapPiece" + Name]._y + 750; TileFromEnvi = (Math.round(((Envi._x + Envi.Wall["MapPiece" + Name]._x) - 25) / TileSize) - 1) + XT; Val = Map[Level][XConst + TileFromEnvi][YT]; if (Val != undefined) { MapPieces[Name].copyPixels(mainTimeLine["TileBitmap" + Val], new flash.geom.Rectangle(0, 0, 50, 50), new flash.geom.Point(0, 0)); } else { RandomNum = Math.round(Math.random() * 3) + 1; MapPieces[Name].copyPixels(mainTimeLine["TileBitmap100" + RandomNum], new flash.geom.Rectangle(0, 0, 50, 50), new flash.geom.Point(0, 0)); } } while ((++v) <= 16); } else if (!GOR) { YT = YT - 2; v = 0; do { Name = v + (TileAtZero * 17); Envi.Wall["MapPiece" + Name]._y = Envi.Wall["MapPiece" + Name]._y - 750; TileFromEnvi = (Math.round(((Envi._x + Envi.Wall["MapPiece" + Name]._x) - 25) / TileSize) - 1) + XT; Val = Map[Level][XConst + TileFromEnvi][YT]; if (Val != undefined) { MapPieces[Name].copyPixels(mainTimeLine["TileBitmap" + Val], new flash.geom.Rectangle(0, 0, 50, 50), new flash.geom.Point(0, 0)); } else { RandomNum = Math.round(Math.random() * 3) + 1; MapPieces[Name].copyPixels(mainTimeLine["TileBitmap100" + RandomNum], new flash.geom.Rectangle(0, 0, 50, 50), new flash.geom.Point(0, 0)); } } while ((++v) <= 16); } if (Higher) { TileAtZero = OTAZY - c; YT = OYT - c; } else if (!Higher) { TileAtZero = OTAZY + c; YT = OYT + c; } if (Higher != undefined) { trace((("BEFORE LOOPING TileAtZero: " + TileAtZero) + ". YT: ") + YT); } c++; } while (Math.abs(TileAtZero - OldTAZY) < 1); OldTAZY = Temp; } } } function MoveRope() { ThrRopS.start(0, 1); var _local1 = XPoint - Char._x; var _local2 = YPoint - Char._y; var _local3 = Math.sqrt((_local1 * _local1) + (_local2 * _local2)); rvx = (_local1 * RPower) / _local3; rvy = (_local2 * RPower) / _local3; } function DrawRope() { var _local2 = DrawPointX; var _local1 = DrawPointY; if (!Grappled) { _local2 = _local2 + (rvx * Dir); _local1 = _local1 + ((rvy * Dir) + RopeGrav); RopeDistance = ((Char._x - _local2) * (Char._x - _local2)) + ((Char._y - _local1) * (Char._y - _local1)); if (RopeDistance > MaxLen) { Dir = NegDir; RopeGrav = RopeGravity; } } Line.clear(); Line.lineStyle(2, 6697728, 100); if (Direction) { Line.moveTo(-8.3 + Char._x, -10.2 + Char._y); } else { Line.moveTo(8.3 + Char._x, -10.2 + Char._y); } Line.lineTo(_local2, _local1); Grap._x = _local2; Grap._y = _local1; Char.NinjaArm._rotation = Math.atan2(Char._y - _local1, Char._x - _local2) * 57.2957795130823; Char.NinjaArm2._rotation = Char.NinjaArm._rotation; DrawPointX = _local2; DrawPointY = _local1; } function GetRopeForces() { var _local1 = DrawPointX - Char._x; var _local2 = DrawPointY - Char._y; XForce = S * _local1; YForce = S * (_local2 - NormLen); if (YForce > 1.5) { YForce = 1.5; } else if (YForce < -1.5) { YForce = -1.5; } if (XForce > 2) { XForce = 2; } else if (XForce < -2) { XForce = -2; } vy = vy + YForce; vx = vx + XForce; } function SetAimer() { var _local1 = (AimAngle / 180) * Math.PI; Aimer._x = Char._x + (Math.cos(_local1) * AimerRad); Aimer._y = Char._y - (Math.sin(_local1) * AimerRad); } function CleanUp(GOTO) { if (GOTO != "Win") { CleanUpFunc(GOTO); } else { Pause = true; TimeShow = true; t = 0; while (t < EC) { Envi.Enemies["Enemy" + t].Enemy.stop(); t++; } var _local2 = new mx.transitions.Tween(Stats.TimerT, "_y", mx.transitions.easing.Strong.easeOut, Stats.TimerT._y, 150, 1.5, true); var _local5 = new mx.transitions.Tween(Stats.TimerT, "_xscale", mx.transitions.easing.Strong.easeOut, 100, 500, 1.5, true); var _local3 = new mx.transitions.Tween(Stats.TimerT, "_x", mx.transitions.easing.Strong.easeOut, Stats.TimerT._x, 100, 1.5, true); var _local4 = new mx.transitions.Tween(Stats.TimerT, "_yscale", mx.transitions.easing.Strong.easeOut, 100, 500, 1.5, true); var _local1 = new mx.transitions.Tween(States.TimerT, "_height", mx.transitions.easing.Strong.easeOut, Stats.TimerT._height, Stats.TimerT._height, 3, true); _local1.onMotionFinished = function () { CleanUpFunc(GOTO); }; } } function CleanUpFunc(GOTO) { if (GOTO != "QS") { clearInterval(FadeInt); FadeInt = setInterval(FadeOutSound, 20); TV = VolBG; } v = 0; while (v <= TotalOrbs) { mainTimeLine["1" + v].removeMovieClip(); v++; } t = KIS; while (t < KunDrawPointX.length) { Envi.Kunais["Kunai" + t].removeMovieClip(); t++; } v = 0; while (v < mainTimeLine[("ColLoc" + mainTimeLine.Level) + "X"].length) { Envi.Orbs["Orb" + v].removeMovieClip(); v++; } v = 0; while (v < mainTimeLine[("AccLoc" + mainTimeLine.Level) + "X"].length) { Envi.Accs["AccH" + v].removeMovieClip(); v++; } v = 0; while (v < EC) { Envi.Enemies["Enemy" + v].removeMovieClip(); v++; } i = 0; while (i <= 255) { MapPieces[i] = new flash.display.BitmapData(TileSize, TileSize, false, 0); i++; } Pause = false; Key.removeListener(keyListener); delete onMouseUp; delete onMouseDown; delete onMouseMove; Envi.removeMovieClip(); Line.removeMovieClip(); Char.removeMovieClip(); Grap.removeMovieClip(); Aimer.removeMovieClip(); Stats.removeMovieClip(); Mouse.show(); gotoAndStop(GOTO); } function time_to_string(time_to_convert) { var _local3 = Math.floor(time_to_convert / 3600000); var _local1 = time_to_convert - (_local3 * 3600000); var _local4 = Math.floor(_local1 / 60000); _local1 = _local1 - (_local4 * 60000); var _local2 = Math.floor(_local1 / 1000); _local1 = _local1 - (_local2 * 1000); var _local5 = Math.floor(_local1 / 10); var _local10 = ((_local3 < 10) ? ("0" + _local3.toString()) : (_local3.toString())); var _local8 = ((_local4 < 10) ? ("0" + _local4.toString()) : (_local4.toString())); var _local6 = ((_local2 < 10) ? ("0" + _local2.toString()) : (_local2.toString())); var _local7 = ((_local5 < 10) ? ("0" + _local5.toString()) : ((hundredths = _local5.toString()))); return((((_local8 + ":") + _local6) + ".") + _local7); } function GetEnglish(keyCode) { if (keyCode == 8) { return("BackSpace"); } if (keyCode == 19) { return("Pause/Break"); } if (keyCode == 145) { return("ScrollLock"); } if (keyCode == 144) { return("NumLock"); } if (keyCode == 46) { return("Delete"); } if (keyCode == 45) { return("Insert"); } if (keyCode == 40) { return("Down"); } if (keyCode == 39) { return("Right"); } if (keyCode == 38) { return("Up"); } if (keyCode == 37) { return("Left"); } if (keyCode == 9) { return("Tab"); } if (keyCode == 13) { return("Enter"); } if (keyCode == 16) { return("Shift"); } if (keyCode == 17) { return("Ctrl"); } if (keyCode == 20) { return("Caps Lock"); } if (keyCode == 27) { return("Esc"); } if (keyCode == 32) { return("Space"); } if (keyCode == 33) { return("Page Up"); } if (keyCode == 34) { return("Page Down"); } if (keyCode == 35) { return("End"); } if (keyCode == 36) { return("Home"); } return(chr(keyCode)); } Mouse.hide(); TVMax = Math.abs(VolBG); trace("BNG: " + VolBG); trace(LS); MS.stop(); LS.stop(); LS.start(0, 9999); TV = 0; clearInterval(FadeInt); FadeInt = setInterval(FadeS, 20); var Dead = false; var Pause = false; var v = 0; var keydown = Key.isDown; var HeadShot = false; createEmptyMovieClip("Envi", mainTimeLine.getNextHighestDepth()); Envi.createEmptyMovieClip("Wall", Envi.getNextHighestDepth()); Envi.createEmptyMovieClip("Accs", Envi.getNextHighestDepth()); Envi.createEmptyMovieClip("Enemies", Envi.getNextHighestDepth()); Envi.createEmptyMovieClip("Kunais", Envi.getNextHighestDepth()); Envi.createEmptyMovieClip("Orbs", Envi.getNextHighestDepth()); var q = 0; var CharTileX = Math.round(((CharStartXA[Level] - EnviStartXA[Level]) - 25) / TileSize); var CharTileY = Math.round(((CharStartYA[Level] - EnviStartYA[Level]) - 25) / TileSize); var CharRTileX = Math.round(CharStartXA[Level] / TileSize); var CharRTileY = Math.round(CharStartYA[Level] / TileSize); var x = ((CharTileX - CharRTileX) - 2); var XStart = ((CharTileX - CharRTileX) - 2); var XStop = (XStart + TIX); var y = ((CharTileY - CharRTileY) - 2); var YStart = ((CharTileY - CharRTileY) - 2); var YStop = (YStart + TIY); var Q = 0; var W = 0; do { W = 0; do { if (((Map[Level][Q][W] == undefined) || (Map[Level][Q][W] == "!")) || (Map[Level][Q][W] == 0)) { RandomNum = Math.round(Math.random() * 3) + 1; Map[Level][Q][W] = 1000 + RandomNum; } } while ((++W) < Map[Level][Q].length); } while ((++Q) < Map[Level].length); q = 0; do { y = YStart; do { CreateTile(Map[Level][x][y], x, y, x - XStart, y - YStart); } while ((++y) <= YStop); } while ((++x) <= XStop); var CharStartY = CharStartYA[Level]; var CharStartX = CharStartXA[Level]; stop(); createEmptyMovieClip("Line", getNextHighestDepth()); attachMovie("Char", "Char", getNextHighestDepth()); attachMovie("Kunai2", "Grap", getNextHighestDepth()); attachMovie("Target", "Aimer", getNextHighestDepth()); var CoinExists = new Array(mainTimeLine[("ColLoc" + Level) + "X"].length); var CCX = new Array(mainTimeLine[("ColLoc" + Level) + "X"].length); var CCY = new Array(mainTimeLine[("ColLoc" + Level) + "X"].length); var CColl = new Array(mainTimeLine[("ColLoc" + Level) + "X"].length); CoinBitty = new flash.display.BitmapData(32, 30, true, 0); CoinBitty.copyPixels(mainTimeLine.CoinBit, new flash.geom.Rectangle(0, 0, 32, 30), new flash.geom.Point(0, 0)); v = 0; do { CoinExists[v] = false; CColl[v] = false; CCX[v] = (mainTimeLine[("ColLoc" + Level) + "X"][v] - EnviStartXA[Level]) - 17; CCY[v] = (mainTimeLine[("ColLoc" + Level) + "Y"][v] - EnviStartYA[Level]) - 17.5; XD = CCX[v] + EnviStartXA[Level]; YD = (CCY[v] + EnviStartYA[Level]) + 5; if (XD < 570) { if (XD > -20) { if (YD < 470) { if (YD > -20) { Envi.Orbs.createEmptyMovieClip("Orb" + v, v); Envi.Orbs["Orb" + v].attachBitmap(CoinBitty, 1); Envi.Orbs["Orb" + v]._x = CCX[v]; Envi.Orbs["Orb" + v]._y = CCY[v]; CoinExists[v] = true; } } } } } while ((++v) < mainTimeLine[("ColLoc" + Level) + "X"].length); var EnemyType = new Array(); var EDir = new Array(); var EC = 0; var EnemyHP = new Array(); var EnemyDead = new Array(); var ChasingChar = new Array(); var RetreatingChar = new Array(); var BatPointX = new Array(); var BatPointY = new Array(); var Batrvx = new Array(); var Batrvy = new Array(); var BatPower = 3; var State = new Array(); var Landed = new Array(); var Hit = false; var CharHit = false; var Inny = false; var AccNumber = new Array(mainTimeLine[("AccLoc" + Level) + "X"].length); var AccExists = new Array(mainTimeLine[("AccLoc" + Level) + "X"].length); var CAX = new Array(mainTimeLine[("AccLoc" + Level) + "X"].length); var CAY = new Array(mainTimeLine[("AccLoc" + Level) + "X"].length); var SC = 0; var SpikeExists = new Array(); var CSX = new Array(); var CSY = new Array(); var SpikeNum = new Array(); var AccCounter = 0; v = 0; do { if (mainTimeLine["AccType" + Level][v] < ES) { AccNumber[AccCounter] = v; AccCounter++; AccExists[v] = false; CAX[v] = mainTimeLine[("AccLoc" + Level) + "X"][v] - EnviStartXA[Level]; CAY[v] = mainTimeLine[("AccLoc" + Level) + "Y"][v] - EnviStartYA[Level]; XD = CAX[v] + EnviStartXA[Level]; YD = (CAY[v] + EnviStartYA[Level]) + 5; if (XD < 555) { if (XD > -155) { if (YD < 455) { if (YD > -250) { AccExists[v] = true; if (mainTimeLine["AccType" + Level][v] != TorchNum) { Envi.Accs.createEmptyMovieClip(["AccH" + v], Envi.Accs.getNextHighestDepth()); Envi.Accs["AccH" + v].attachBitmap(mainTimeLine["TileBitmap" + mainTimeLine["AccType" + Level][v]], Envi.Accs["AccH" + v].getNextHighestDepth()); } else { Envi.Accs.createEmptyMovieClip(["AccH" + v], Envi.Accs.getNextHighestDepth()); Envi.Accs["AccH" + v].attachMovie("TorchMC", "Torch", Envi.Accs["AccH" + v].getNextHighestDepth()); Rand = Math.round((Math.random() * 18) + 1); Envi.Accs["AccH" + v].Torch.gotoAndPlay(Rand); } Envi.Accs["AccH" + v]._x = CAX[v]; Envi.Accs["AccH" + v]._y = CAY[v]; } } } } } else { EnemyType[EC] = mainTimeLine["AccType" + Level][v]; if ((((mainTimeLine["AccType" + Level][v] == SpikeUNum) || (mainTimeLine["AccType" + Level][v] == SpikeDNum)) || (mainTimeLine["AccType" + Level][v] == SpikeLNum)) || (mainTimeLine["AccType" + Level][v] == SpikeRNum)) { SpikeNum[SC] = EC; SpikeExists[SC] = false; CSX[SC] = mainTimeLine[("AccLoc" + Level) + "X"][v] - EnviStartXA[Level]; CSY[SC] = mainTimeLine[("AccLoc" + Level) + "Y"][v] - EnviStartYA[Level]; XD = CSX[SC] + EnviStartXA[Level]; YD = (CSY[SC] + EnviStartYA[Level]) + 5; if (XD > -30) { if (XD < 580) { if (YD > -30) { if (YD < 480) { trace("EC: " + EC); trace("Y : " + CSY[SC]); trace("X: " + CSX[SC]); SpikeExists[SC] = true; Envi.Enemies.createEmptyMovieClip("Enemy" + EC, EC); Envi.Enemies["Enemy" + EC].attachMovie("Enemy" + SpikeUNum, "Enemy", 1); Envi.Enemies["Enemy" + EC]._x = CSX[SC]; Envi.Enemies["Enemy" + EC]._y = CSY[SC]; if (EnemyType[EC] != SpikeUNum) { if (EnemyType[EC] == SpikeDNum) { Envi.Enemies["Enemy" + EC]._rotation = Envi.Enemies["Enemy" + EC]._rotation + 180; } else if (EnemyType[EC] == SpikeRNum) { Envi.Enemies["Enemy" + EC]._rotation = Envi.Enemies["Enemy" + EC]._rotation - 90; } else if (EnemyType[EC] == SpikeLNum) { Envi.Enemies["Enemy" + EC]._rotation = Envi.Enemies["Enemy" + EC]._rotation + 90; } } } } } } SC++; } else { Envi.Enemies.createEmptyMovieClip("Enemy" + EC, EC); Envi.Enemies["Enemy" + EC].attachMovie("Enemy" + mainTimeLine["AccType" + Level][v], "Enemy", 1); Envi.Enemies["Enemy" + EC]._x = mainTimeLine[("AccLoc" + Level) + "X"][v] - EnviStartXA[Level]; Envi.Enemies["Enemy" + EC]._y = mainTimeLine[("AccLoc" + Level) + "Y"][v] - EnviStartYA[Level]; } if ((mainTimeLine["AccType" + Level][v] == DogNum) || (mainTimeLine["AccType" + Level][v] == RatNum)) { EDir[EC] = Math.round(Math.random()); State[EC] = "Falling"; Landed[EC] = false; if (mainTimeLine["AccType" + Level][v] == DogNum) { EnemyHP[EC] = 2; } else { EnemyHP[EC] = 1; } Envi.Enemies["Enemy" + EC]._xscale = 100 - (200 * EDir[EC]); Envi.Enemies["Enemy" + EC].Enemy.gotoAndStop("FallThing"); } else if (mainTimeLine["AccType" + Level][v] == BatNum) { BatPointX[EC] = Envi.Enemies["Enemy" + EC]._x + ((Math.random() * 200) - 100); BatPointY[EC] = Envi.Enemies["Enemy" + EC]._y + ((Math.random() * 200) - 100); BatXNum = BatPointX[EC] - Envi.Enemies["Enemy" + EC]._x; BatYNum = BatPointY[EC] - Envi.Enemies["Enemy" + EC]._y; BatDenom = Math.sqrt((BatXNum * BatXNum) + (BatYNum * BatYNum)); Batrvx[EC] = (BatXNum * BatPower) / BatDenom; Batrvy[EC] = (BatYNum * BatPower) / BatDenom; EnemyHP[EC] = 1; } else if (mainTimeLine["AccType" + Level][v] == SoldierNum) { EDir[EC] = Math.round(Math.random()); State[EC] = "Falling"; Landed[EC] = false; EnemyHP[EC] = 3; Envi.Enemies["Enemy" + EC]._xscale = 100 - (200 * EDir[EC]); } else if (mainTimeLine["AccType" + Level][v] == ArcherNum) { EDir[EC] = Math.round(Math.random()); State[EC] = "Falling"; Landed[EC] = false; EnemyHP[EC] = 3; Envi.Enemies["Enemy" + EC]._xscale = 100 - (200 * EDir[EC]); } else { EDir[EC] = Math.round(Math.random()); EnemyHP[EC] = 3; } EC++; } } while ((++v) < mainTimeLine[("AccLoc" + Level) + "X"].length); if (Level == 1) { trace("In WEVEE"); Depthy = mainTimeLine[("ColLoc" + Level) + "X"].length + 1; v++; Envi.Orbs.createEmptyMovieClip(["AccH" + v], Depthy); Envi.Orbs["AccH" + v].attachMovie("FirstSpeech", "FS", Envi.Orbs["AccH" + v].getNextHighestDepth()); Envi.Orbs["AccH" + v]._x = 3200; Envi.Orbs["AccH" + v]._y = 575; Envi.Orbs["AccH" + v].FS.FirstSpeechT.htmlText = ((("Move left with " + GetEnglish(keys.Left)) + "<br>Move right with ") + GetEnglish(keys.Right)) + "."; v++; Envi.Orbs.createEmptyMovieClip(["AccH" + v], Envi.Orbs.getNextHighestDepth()); Envi.Orbs["AccH" + v].attachMovie("FirstSpeech", "FS", Envi.Orbs["AccH" + v].getNextHighestDepth()); Envi.Orbs["AccH" + v]._x = 3420; Envi.Orbs["AccH" + v]._y = 650; Envi.Orbs["AccH" + v].FS.FirstSpeechT.htmlText = "You must collect all<br> coins to complete a level."; v++; Envi.Orbs.createEmptyMovieClip(["AccH" + v], Envi.Orbs.getNextHighestDepth()); Envi.Orbs["AccH" + v].attachMovie("FirstSpeech", "FS", Envi.Orbs["AccH" + v].getNextHighestDepth()); Envi.Orbs["AccH" + v]._x = 3350; Envi.Orbs["AccH" + v]._y = 950; Envi.Orbs["AccH" + v].FS.FirstSpeechT.htmlText = ("Press " + GetEnglish(keys.Kunai)) + " to throw a lightning fast Kunai to obliterate your enemies!"; v++; Envi.Orbs.createEmptyMovieClip(["AccH" + v], Envi.Orbs.getNextHighestDepth()); Envi.Orbs["AccH" + v].attachMovie("FirstSpeech", "FS", Envi.Orbs["AccH" + v].getNextHighestDepth()); Envi.Orbs["AccH" + v]._x = 1800; Envi.Orbs["AccH" + v]._y = 950; Envi.Orbs["AccH" + v].FS.FirstSpeechT.htmlText = "Press and hold the left mouse<br> button to fire your rope!"; v++; Envi.Orbs.createEmptyMovieClip(["AccH" + v], Envi.Orbs.getNextHighestDepth()); Envi.Orbs["AccH" + v].attachMovie("FirstSpeech", "FS", Envi.Orbs["AccH" + v].getNextHighestDepth()); Envi.Orbs["AccH" + v]._x = 350; Envi.Orbs["AccH" + v]._y = 250; Envi.Orbs["AccH" + v].FS.FirstSpeechT.htmlText = "You don't always have to collect the coin with your body. <br>Try shooting it!"; v++; Envi.Orbs.createEmptyMovieClip(["AccH" + v], Envi.Orbs.getNextHighestDepth()); Envi.Orbs["AccH" + v].attachMovie("FirstSpeech", "FS", Envi.Orbs["AccH" + v].getNextHighestDepth()); Envi.Orbs["AccH" + v]._x = 860; Envi.Orbs["AccH" + v]._y = 975; Envi.Orbs["AccH" + v].FS.FirstSpeechT.htmlText = ((("Press the " + GetEnglish(keys.Jump)) + " key to jump. <br>Hold against a wall to begin wall sliding. Push the ") + GetEnglish(keys.Jump)) + " key to jump off!"; } else if (Level == 2) { trace("In WEVE6"); Depthy = mainTimeLine[("ColLoc" + Level) + "X"].length + 1; v++; Envi.Orbs.createEmptyMovieClip(["AccH" + v], Depthy); Envi.Orbs["AccH" + v].attachMovie("FirstSpeech", "FS", Envi.Orbs["AccH" + v].getNextHighestDepth()); Envi.Orbs["AccH" + v]._x = 875; Envi.Orbs["AccH" + v]._y = 3450; Envi.Orbs["AccH" + v].FS.FirstSpeechT.htmlText = ("Move against the <br> wall and hold " + GetEnglish(keys.Jump)) + "!"; v++; Envi.Orbs.createEmptyMovieClip(["AccH" + v], Envi.Orbs.getNextHighestDepth()); Envi.Orbs["AccH" + v].attachMovie("FirstSpeech", "FS", Envi.Orbs["AccH" + v].getNextHighestDepth()); Envi.Orbs["AccH" + v]._x = 1075; Envi.Orbs["AccH" + v]._y = 2800; Envi.Orbs["AccH" + v].FS.FirstSpeechT.htmlText = "Head shots are always one hit kills."; v++; Envi.Orbs.createEmptyMovieClip(["AccH" + v], Envi.Orbs.getNextHighestDepth()); Envi.Orbs["AccH" + v].attachMovie("FirstSpeech", "FS", Envi.Orbs["AccH" + v].getNextHighestDepth()); Envi.Orbs["AccH" + v]._x = 875; Envi.Orbs["AccH" + v]._y = 1100; Envi.Orbs["AccH" + v].FS.FirstSpeechT.htmlText = "Continue on up!"; } else if (Level == 6) { trace("In WEVE2"); Depthy = mainTimeLine[("ColLoc" + Level) + "X"].length + 1; v++; Envi.Orbs.createEmptyMovieClip(["AccH" + v], Depthy); Envi.Orbs["AccH" + v].attachMovie("FirstSpeech", "FS", Envi.Orbs["AccH" + v].getNextHighestDepth()); Envi.Orbs["AccH" + v]._x = 1225; Envi.Orbs["AccH" + v]._y = 2575; Envi.Orbs["AccH" + v].FS.FirstSpeechT.htmlText = "They think a cage can hold you?"; v++; Envi.Orbs.createEmptyMovieClip(["AccH" + v], Envi.Orbs.getNextHighestDepth()); Envi.Orbs["AccH" + v].attachMovie("FirstSpeech", "FS", Envi.Orbs["AccH" + v].getNextHighestDepth()); Envi.Orbs["AccH" + v]._x = 1225; Envi.Orbs["AccH" + v]._y = 1450; Envi.Orbs["AccH" + v].FS.FirstSpeechT.htmlText = "Boy, were they ever wrong!"; } attachMovie("HitPoint", "HeadMarker", getNextHighestDepth()); attachMovie("HitPoint", "BodyMarker", getNextHighestDepth()); attachMovie("HitPoint", "LegMarker", getNextHighestDepth()); attachMovie("Stats", "Stats", mainTimeLine.getNextHighestDepth()); if (Level == 0) { Stats.ContEditButton._x = 384; Stats.ContEditButton._y = -43; } else { Stats.ContEditButton._x = -1000; Stats.ContEditButton._y = -1000; Stats.MenuTab.Box._width = 180; } trace("SFX: " + SFX); trace("M : " + M); if (SFX) { Stats.SFXBtn.gotoAndStop("On"); } else { Stats.SFXBtn.gotoAndStop("Off"); } if (M) { Stats.MBtn.gotoAndStop("On"); } else { Stats.MBtn.gotoAndStop("Off"); } s = 3; v = 1; do { SR = Math.round(s); trace(SR + " SR"); Stats.attachMovie(["bar" + SR], "HP" + v, Stats.getNextHighestDepth()); Stats["HP" + v]._x = 165 + (10 * v); Stats["HP" + v]._y = 16; s = s - 0.5; } while ((++v) <= 6); var start_time = getTimer(); var elapsed_time = (getTimer() - start_time); Stats.TimerT.text = time_to_string(elapsed_time); var TotalOrbs = mainTimeLine[("ColLoc" + Level) + "X"].length; var CurrentOrbs = 0; var OrbsText = ((("x " + CurrentOrbs) + "/") + TotalOrbs); Envi._x = EnviStartXA[Level]; Envi._y = EnviStartYA[Level] + 5; Char._x = CharStartX; Char._y = CharStartY + 5; HeadMarker._x = Char._x; Aimer._x = mainTimeLine._xmouse; Aimer._y = mainTimeLine._ymouse; Grap._x = -100; Grap._y = -100; Stats._x = 0; Stats._y = 0; var TileAtZero = 0; var Val = 0; var TileFromEnvi = 0; var CXT = (((-Envi._x) - 25) / TileSize); var SXT = (((-Envi._x) - 25) / TileSize); trace((("XA: " + EnviStartXA[Level]) + ". YA: ") + EnviStartYA[Level]); trace("SXT Before: " + CXT); if (Envi._x > 0) { if (CXT > 0) { CXT = Math.floor(CXT); CXT--; } else if (CXT <= 0) { CXT = Math.ceil(CXT); CXT--; } } else if (Envi._x <= 0) { CXT = Math.floor(CXT); } SXT = CXT; trace((("SXT: " + SXT) + ". EnviX: ") + Envi._x); var TYT = 0; var XConst = 2; var YConst = 2; var CYT = (((-Envi._y) - 25) / TileSize); var SYT = (((-Envi._y) - 25) / TileSize); trace("SYT Before: " + CYT); if (Envi._y > 0) { if (CYT > 0) { CYT = Math.floor(CYT); CYT--; } else if (CYT <= 0) { CYT = Math.ceil(CYT); CYT--; } } else if (Envi._y <= 0) { if (Envi._x > 0) { CYT = Math.round(CYT); } else { CYT = Math.floor(CYT); } } SYT = CYT; trace((("SYT: " + SYT) + ". EnviY: ") + Envi._y); var OldTAZY = 0; var OldTAZX = 0; var KIS = Envi.Kunais.getNextHighestDepth(); var KI = KIS; var KIES = (Envi.Kunais.getNextHighestDepth() + MK); var KIE = KIES; var XD = 0; var YD = 0; var CTP = 0; var CTRP = 0; var CTLP = 0; var CBP = 0; var CBRP = 0; var CBLP = 0; var CLP = 0; var CRP = 0; var CTRCP = 0; var CTLCP = 0; var CBLCP = 0; var CBRCP = 0; var Friction = 0.95; var Gravity = 0.5; var GW = 275; var GH = 200; var CH = ((Char._height / 2) - 3); var CW = (Char._width / 2); var CHW = 15; var AimerRad = 40; var AimerAngle = 0; var AimAngle = 0; var vx = 0; var vy = 0; var JumpHeight = 13; var WalkPower = 10; var GrapPower = 0.55; var Power = WalkPower; var OnGround = false; var Direction = 3; var Changed = false; var RopeGravity = 10; var NormLen = 10; var S = 0.005; var CurrLen = 0; var MaxLen = 280000; var MinLen = 10; var RPower = 35; var RopeOut = false; var Grappled = false; var rvy = 0; var rvx = 0; var PosDir = 1; var NegDir = -1.2; var RXT = 0; var RYT = 0; var CharHP = 6; var KunXPoint = new Array(25); var KunYPoint = new Array(25); var KunDrawPointX = new Array(25); var KunDrawPointY = new Array(25); var Kunrvy = new Array(25); var Kunrvx = new Array(25); var KunOut = false; var KunPower = 35; var KunHit = new Array(25); var EKunXPoint = new Array(25); var EKunYPoint = new Array(25); var EKunDrawPointX = new Array(25); var EKunDrawPointY = new Array(25); var EKunrvy = new Array(25); var EKunrvx = new Array(25); var Arrowrvy = new Array(25); var Arrowrvx = new Array(25); var EKunOut = false; var EKunPower = 10; var ArrowPower = 15; var EKunHit = new Array(25); var ECurrTime = new Array(25); var ELastShot = new Array(25); var FPSVal = 0; var FPSTime = 0; var FPSLast = getTimer(); Stats.FPS.text = 0; var TimeShow = false; var RR = true; var JustLanded = false; var SlidingNow = false; var JumpingNow = false; var JumpingOurDir = ""; var WSC = 0; var WSOC = 0; trace("EnviX: " + EnviStartXA[Level]); trace("Enviy: " + EnviStartYA[Level]); keyListener = new Object(); Key.addListener(keyListener); keyListener.onKeyUp = function () { var _local1 = Key.getCode(); if (_local1 == keys.Rope) { RR = true; } if (_local1 == 80) { if (Pause && (!TimeShow)) { PS.removeMovieClip(); Pause = false; start_time = start_time + (getTimer() - Time); LastShot = LastShot + (getTimer() - Time); v = 0; do { if (mainTimeLine["AccType" + Level][v] < ES) { if (mainTimeLine["AccType" + Level][v] == TorchNum) { Envi.Accs["AccH" + v].Torch.play(); } } } while ((++v) < mainTimeLine[("AccLoc" + Level) + "X"].Length); t = 0; while (t < EC) { if (ELastShot[t] != undefined) { ELastShot[t] = ELastShot[t] + (getTimer() - Time); } trace("State[t]: " + State[t]); if ((State[t] == "Idle") || (State[t] == "Diving")) { Envi.Enemies["Enemy" + t].Enemy.stop(); } else if ((((((State[t] == "Attacking") || (State[t] == "Spiking")) || (State[t] == "Running")) || (State[t] == "Biting")) || (State[t] == "Flying")) || (State[t] == "Walking")) { Envi.Enemies["Enemy" + t].Enemy.play(); } else if (State[t] == "Dead") { Envi.Enemies["Enemy" + t].Enemy.gotoAndStop("deadfinal"); } t++; } } else if (!TimeShow) { attachMovie("PauseScreen", "PS", getNextHighestDepth()); PS.x = 0; PS.y = 0; Pause = true; Time = getTimer(); t = 0; while (t < EC) { Envi.Enemies["Enemy" + t].Enemy.stop(); t++; } v = 0; while (v < mainTimeLine[("AccLoc" + Level) + "X"].length) { if (mainTimeLine["AccType" + Level][v] < ES) { if (mainTimeLine["AccType" + Level][v] == TorchNum) { Envi.Accs["AccH" + v].Torch.stop(); } } v++; } } } if ((_local1 == 27) && (Level == 0)) { CleanUp("LevelBuilder"); } else if ((_local1 == 27) && (Level > 0)) { CleanUp("LevelSelect"); } else if ((_local1 == 27) && (Level == -1)) { CleanUp("LevelLoader"); } if (_local1 == 13) { CleanUp("QS"); } }; Char.onEnterFrame = function () { if ((!Dead) && (!Pause)) { Moving = false; FPSVal++; FPSTime = getTimer(); if ((FPSTime - FPSLast) >= 1000) { Stats.FPS.text = FPSVal + 1; FPSVal = 0; FPSLast = getTimer(); } elapsed_time = getTimer() - start_time; Stats.TimerT.text = time_to_string(elapsed_time); if (keydown(keys.Kunai)) { CurrTime = getTimer(); if ((CurrTime - LastShot) >= 200) { KunOut = true; KunHit[KI] = false; KunXPoint[KI] = Aimer._x; KunYPoint[KI] = Aimer._y; KunDrawPointX[KI] = Char._x - Envi._x; KunDrawPointY[KI] = Char._y - Envi._y; SetKunai(); LastShot = getTimer(); } } if (!OnGround) { if ((!WallSlidingLeft) && (!WallSlidingRight)) { vy = vy + Gravity; } else if (vy > 0) { vy = vy + (Gravity / 5); } else { vy = vy + Gravity; } } if (keydown(keys.Jump)) { if (OnGround) { vy = vy - JumpHeight; JmpS.start(0, 1); } else if (WallSlidingRight || (WallSlidingLeft)) { JmpS.start(0, 1); WJ = true; vy = -JumpHeight; WSC = 0; WSOC = 0; SlidingNow = false; JumpingNow = true; if (WallSlidingLeft) { vx = Power; JumpingOutDir = "left"; WallSlidingLeft = false; } else if (WallSlidingRight) { vx = -Power; JumpingOutDir = "right"; WallSlidingRight = false; } } } if (keydown(keys.Right)) { if ((Direction != 1) || (vx <= 0)) { } Direction = 1; Moving = true; if (Grappled) { vx = vx + GrapPower; } else if (!Grappled) { if (OnGround) { vx = Power; } else if (vx < (Power * 1.1)) { vx = vx + (Power / 15); } } } else if (keydown(keys.Left)) { if ((Direction != 0) || (vx >= 0)) { } Direction = 0; Moving = true; if (Grappled) { vx = vx - GrapPower; } else if (!Grappled) { if (OnGround) { vx = -Power; } else if (vx > ((-Power) * 1.1)) { vx = vx - (Power / 15); } } } if (WallSlidingLeft) { Direction = 1; } else if (WallSlidingRight) { Direction = 0; } if (RopeOut && (!Grappled)) { RYT = Math.round(((Grap._y - Envi._y) - 25) / TileSize); RXT = Math.round(((Grap._x - Envi._x) - 25) / TileSize); if (((Map[Level][RXT][RYT] >= 1) && (Map[Level][RXT][RYT] <= WT)) && (Map[Level][RXT][RYT] != undefined)) { GS.start(0, 1); Grappled = true; Grapped = true; } } if (Grappled) { GetRopeForces(); } if (vx > 18) { vx = 18; } else if (vx < -18) { vx = -18; } if (vy > 18) { vy = 18; } else if (vy < -18) { vy = -18; } if (((((!Grapped) && (!OnGround)) && (!Moving)) && (!WJ)) || (((!Moving) && (!Grappled)) && (OnGround))) { if (vx != 0) { vx = 0; } } if ((!OnGround) || (Grappled)) { vy = vy * 0.995; vx = vx * 0.995; } CheckWallCollisions(); MoveEnemies(); MoveCharacter(); if (RopeOut) { DrawRope(); } if (KunOut) { MoveKunai(); } if (EKunOut) { MoveEnemyKunai(); } SetAnimation(); } else if (Dead) { SetAnimation(); MoveEnemies(); if (!OnGround) { vy = vy + Gravity; CheckWallCollisions(); MoveCharacter(); if (vy > 20) { vy = 20; } else if (vy < -20) { vy = -20; } } else if (OnGround) { ChState = "Dead"; } } }; onMouseMove = function () { Aimer._x = mainTimeLine._xmouse; Aimer._y = mainTimeLine._ymouse; }; onMouseDown = function () { if ((!Dead) && (!Pause)) { GS.start(0.5, 1); if (Direction == 3) { if (Aimer._x > Char._x) { Direction = 1; } else if (Aimer._x < Char._x) { Direction = 0; } } RopeGrav = 0; RopeOut = true; Grappled = false; XPoint = Aimer._x; YPoint = Aimer._y; DrawPointX = Char._x; DrawPointY = Char._y; Dir = PosDir; MoveRope(); RR = false; Grap._x = Char._x; Grap._y = Char._y; } }; onMouseUp = function () { if (RopeOut) { if ((!Dead) && (!Pause)) { RopeOut = false; Grappled = false; Grap._x = -50; Grap._y = -50; Line.clear(); RR = false; } } if (Stats.SFXBtn.hitTest(mainTimeLine._xmouse, mainTimeLine._ymouse, true)) { if (SFX) { Stats.SFXBtn.gotoAndStop("Off"); CS.setVolume(0); GS.setVolume(0); HS.setVolume(0); ThrKunS.setVolume(0); ThrRopS.setVolume(0); StpS.setVolume(0); JmpS.setVolume(0); KBatS.setVolume(0); SFX = false; } else { Stats.SFXBtn.gotoAndStop("On"); CS.setVolume(VolSFX / 4); GS.setVolume(VolSFX * 2); HS.setVolume(VolSFX * 2); ThrKunS.setVolume(VolSFX * 2); ThrRopS.setVolume(VolSFX * 2); StpS.setVolume(VolSFX * 2); JmpS.setVolume(VolSFX * 2); KBatS.setVolume(VolSFX * 2); SFX = true; } } if (Stats.MBtn.hitTest(mainTimeLine._xmouse, mainTimeLine._ymouse, true)) { if (M) { Stats.MBtn.gotoAndStop("Off"); LS.setVolume(0); MS.setVolume(0); GoS.setVolume(0); LBS.setVolume(0); WS.setVolume(0); M = false; } else { Stats.MBtn.gotoAndStop("On"); LS.setVolume(VolBG * 2); MS.setVolume(VolBG / 2); GoS.setVolume(VolBG); LBS.setVolume(VolBG); WS.setVolume(VolBG); M = true; } } };
Frame 8
function LeaveScreen(Where) { if (((Where == "Game") && (BestTime[Level] < LevUnlock[Level])) || (Where != "Game")) { var _local2 = new mx.transitions.Tween(LevelSelectButton, "_y", mx.transitions.easing.Strong.easeOut, LevelSelectButton._y, 650, 1.5, true); var _local1 = new mx.transitions.Tween(TryAgainButton, "_y", mx.transitions.easing.Strong.easeOut, TryAgainButton._y, 650, 1.5, true); var _local3 = new mx.transitions.Tween(NextLevelButton, "_y", mx.transitions.easing.Strong.easeOut, NextLevelButton._y, 650, 1.5, true); var _local4 = new mx.transitions.Tween(MGBtn, "_y", mx.transitions.easing.Strong.easeOut, MGBtn._y, 650, 1.5, true); _local1.onMotionFinished = function () { if (Where == "Game") { ImportLevel(Level + 1); } else { WS.stop(); gotoAndStop(Where); } }; } else { } } function ImportLevel(LevelSet, Exception, Ecode) { var _local3 = LevelSet + "X"; var _local2 = LevelSet + "Y"; var _local7 = LevelSet + "X"; var _local6 = LevelSet + "Y"; Decrypted = ""; mainTimeLine[("AccLoc" + LevelSet) + "X"] = new Array(); mainTimeLine[("AccLoc" + LevelSet) + "Y"] = new Array(); mainTimeLine["AccType" + LevelSet] = new Array(); mainTimeLine[("ColLoc" + LevelSet) + "X"] = new Array(); mainTimeLine[("ColLoc" + LevelSet) + "Y"] = new Array(); EnviStartYA[LevelSet] = undefined; EnviStartXA[LevelSet] = undefined; CharStartYA[LevelSet] = undefined; CharStartXA[LevelSet] = undefined; LRBA[LevelSet] = undefined; LLBA[LevelSet] = undefined; LTBA[LevelSet] = undefined; LBBA[LevelSet] = undefined; Map[LevelSet] = []; var _local5 = ""; var _local4 = 0; if ((LevelSet == 0) && (!Exception)) { ImportCode = Import.ImportCodeT.text; } else if ((LevelSet == 0) && (Exception)) { ImportCode = ECode; } else if (LevelSet > 0) { ImportCode = LevelCodeValue[LevelSet]; } else { ImportCode = RandomLevelValue; } i = 0; while (i < ImportCode.length) { _local5 = ImportCode.substr(i, 1); _local4 = Encrypt.indexOf(_local5, 0); Decrypted = Decrypted + Decrypt.substr(_local4, 1); i++; } Start = 0; SingleValue = ""; Value = ""; x = 0; y = 0; if (Decrypted.indexOf("]") == -1) { } else { do { while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == ",") { if (Map[LevelSet][x] == undefined) { Map[LevelSet][x] = new Array(); } Start++; if (Value == "!") { Map[LevelSet][x][y] = undefined; } else { Map[LevelSet][x][y] = parseInt(Value); } Value = ""; y++; } else { if (SingleValue == "]") { if (Map[LevelSet][x] == undefined) { Map[LevelSet][x] = new Array(); } if (Value == "!") { Map[LevelSet][x][y] = undefined; } else { Map[LevelSet][x][y] = parseInt(Value); } Value = ""; y++; break; } Value = Value + SingleValue; Start++; } } x++; y = 0; Start++; SingleValue = Decrypted.substr(Start, 1); } while (SingleValue != "]"); Start++; x = 0; Value = ""; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == ",") { Start++; if (Value == "!") { mainTimeLine["ColLoc" + _local3][x] = undefined; } else { mainTimeLine["ColLoc" + _local3][x] = parseInt(Value); } Value = ""; x++; } else { if (SingleValue == "]") { if (Value == "!") { mainTimeLine["ColLoc" + _local3][x] = undefined; } else { mainTimeLine["ColLoc" + _local3][x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } } Start++; x = 0; Value = ""; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == ",") { Start++; if (Value == "!") { mainTimeLine["ColLoc" + _local2][x] = undefined; } else { mainTimeLine["ColLoc" + _local2][x] = parseInt(Value); } Value = ""; x++; } else { if (SingleValue == "]") { if (Value == "!") { mainTimeLine["ColLoc" + _local2][x] = undefined; } else { mainTimeLine["ColLoc" + _local2][x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } } Start++; Value = ""; x = LevelSet; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == "]") { if (Value == "!") { EnviStartXA[x] = undefined; } else { EnviStartXA[x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } Start++; Value = ""; x = LevelSet; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == "]") { if (Value == "!") { EnviStartYA[x] = undefined; } else { EnviStartYA[x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } Start++; Value = ""; x = LevelSet; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == "]") { if (Value == "!") { CharStartXA[x] = undefined; } else { CharStartXA[x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } Start++; Value = ""; x = LevelSet; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == "]") { if (Value == "!") { CharStartYA[x] = undefined; } else { CharStartYA[x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } Start++; x = 0; Value = ""; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == ",") { Start++; if (Value == "!") { mainTimeLine[("AccLoc" + LevelSet) + "X"][x] = undefined; } else { mainTimeLine[("AccLoc" + LevelSet) + "X"][x] = parseInt(Value); } Value = ""; x++; } else { if (SingleValue == "]") { if (Value == "!") { mainTimeLine[("AccLoc" + LevelSet) + "X"][x] = undefined; } else if (Value != "") { mainTimeLine[("AccLoc" + LevelSet) + "X"][x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } } Start++; x = 0; Value = ""; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == ",") { Start++; if (Value == "!") { mainTimeLine[("AccLoc" + LevelSet) + "Y"][x] = undefined; } else { mainTimeLine[("AccLoc" + LevelSet) + "Y"][x] = parseInt(Value); } Value = ""; x++; } else { if (SingleValue == "]") { if (Value == "!") { mainTimeLine[("AccLoc" + LevelSet) + "Y"][x] = undefined; } else if (Value != "") { mainTimeLine[("AccLoc" + LevelSet) + "Y"][x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } } Start++; x = 0; Value = ""; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == ",") { Start++; if (Value == "!") { mainTimeLine["AccType" + LevelSet][x] = undefined; } else { mainTimeLine["AccType" + LevelSet][x] = parseInt(Value); } Value = ""; x++; } else { if (SingleValue == "]") { if (Value == "!") { mainTimeLine["AccType" + LevelSet][x] = undefined; } else { mainTimeLine["AccType" + LevelSet][x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } } stopMouse(); Import.removeMovieClip(); Level = LevelSet; WS.stop(); gotoAndStop ("Game"); } } Submitted = false; WS.start(0, 9999); if (Level > 0) { if (Level == 6) { NextLevelButton._x = -1000; NextLevelButton._y = -1000; } var LSTween = (new mx.transitions.Tween(LevelSelectButton, "_y", mx.transitions.easing.Strong.easeOut, -90, LevelSelectButton._y, 1.5, true)); var TATween = (new mx.transitions.Tween(TryAgainButton, "_y", mx.transitions.easing.Strong.easeOut, -90, TryAgainButton._y, 1.5, true)); var NLTween = (new mx.transitions.Tween(NextLevelButton, "_y", mx.transitions.easing.Strong.easeOut, -90, NextLevelButton._y, 1.5, true)); var MGBtnTween = (new mx.transitions.Tween(MGBtn, "_y", mx.transitions.easing.Strong.easeOut, -90, MGBtn._y, 1.5, true)); SavedGame = SharedObject.getLocal("NinjaSave"); SavedGame.data.TimesString = BestTimeT; SavedGame.data.TimesNum = BestTime; Status = SavedGame.flush(); if (Status == true) { Message.text = "Your game was saved."; } else if (Status == false) { Message.text = "There was a problem saving your game."; } else if (Status == "pending") { Message.text = "Please allow space for the game to save."; } SavedGame.flush(); } else if (Level == -1) { NextLevelButton._x = -1000; NextLevelButton._y = -1000; var LSTween = (new mx.transitions.Tween(LevelSelectButton, "_y", mx.transitions.easing.Strong.easeOut, -90, LevelSelectButton._y, 1.5, true)); var TATween = (new mx.transitions.Tween(TryAgainButton, "_y", mx.transitions.easing.Strong.easeOut, -90, TryAgainButton._y, 1.5, true)); var NLTween = (new mx.transitions.Tween(NextLevelButton, "_y", mx.transitions.easing.Strong.easeOut, -90, NextLevelButton._y, 1.5, true)); var MGBtnTween = (new mx.transitions.Tween(MGBtn, "_y", mx.transitions.easing.Strong.easeOut, -90, MGBtn._y, 1.5, true)); } else if (Level == 0) { BTT._x = -1000; BTT._y = -1000; ENT._x = -1000; ENT._y = -1000; LCT._x = -1000; LCT._y = -1000; LCBG._x = -1000; LCBG._y = -1000; SSTBtn._x = -1000; SSTBtn._y = -1000; NextLevelButton._x = -1000; NextLevelButton._y = -1000; LevelSelectButton._x = -1000; LevelSelectButton._y = -1000; TryAgainButton._x = -1000; TryAgainButton._y = -1000; Time0._x = -1000; Time0._y = -1000; Time1._x = -1000; Time1._y = -1000; Time2._x = -1000; Time2._y = -1000; Time3._x = -1000; Time3._y = -1000; Time4._x = -1000; Time4._y = -1000; Time5._x = -1000; Time5._y = -1000; Time6._x = -1000; Time6._y = -1000; Time7._x = -1000; Time7._y = -1000; Time8._x = -1000; Time8._y = -1000; Time9._x = -1000; Time9._y = -1000; YT._x = -1000; YT._y = -1000; TimeHolderT._x = -1000; TimeHolderT._y = -1000; TLBG._x = 274.8; TLBG._y = 200.6; BackButton._x = 144; BackButton._y = 246; MGBtnTL._x = 453; MGBtnTL._y = 246; } BackButton.onRelease = function () { WS.stop(); gotoAndStop ("LevelBuilder"); }; TryAgainButton.onRelease = function () { WS.stop(); gotoAndStop ("Game"); }; LevelSelectButton.onRelease = function () { if (Level > 0) { LeaveScreen("LevelSelect"); } else { LeaveScreen("LevelLoader"); } }; NextLevelButton.onRelease = function () { LeaveScreen("Game"); };
Frame 9
function CreateTile(TileSet, XPos, YPos, Random, Start) { if (Start) { XPos = XPos + TS; YPos = YPos + TS; } MapPiecesLB[q] = new flash.display.BitmapData(mainTimeLine["TileBitmap" + TileSet].width, mainTimeLine["TileBitmap" + TileSet].height, false, 0); MapPiecesLB[q].copyPixels(mainTimeLine["TileBitmap" + TileSet], new flash.geom.Rectangle(0, 0, mainTimeLine["TileBitmap" + TileSet].width, mainTimeLine["TileBitmap" + TileSet].height), new flash.geom.Point(0, 0)); Envi.Wall.createEmptyMovieClip(["MapPiece" + q], Envi.Wall.getNextHighestDepth()); Envi.Wall["MapPiece" + q].attachBitmap(MapPiecesLB[q], Envi.Wall["MapPiece" + q].getNextHighestDepth()); Envi.Wall["MapPiece" + q]._x = XPos * TileSize; Envi.Wall["MapPiece" + q]._y = YPos * TileSize; q++; if (Map[Level][XPos] == undefined) { Map[Level][XPos] = new Array(); } Map[Level][XPos][YPos] = TileSet; } function GetTile(PointX, PointY) { if ((PointX == undefined) && (PointY == undefined)) { var _local1 = (mainTimeLine._xmouse - Envi._x) - 25; var _local2 = (mainTimeLine._ymouse - Envi._y) - 25; } else { var _local1 = (PointX - Envi._x) - 25; var _local2 = (PointY - Envi._y) - 25; } YTile = Math.round(_local2 / TileSize); XTile = Math.round(_local1 / TileSize); if (Map[Level][XTile] == undefined) { Map[Level][XTile] = new Array(); } } function ChangeDragger(Type, MC, Acc) { if (Type == "Bitmap") { Dragger.removeMovieClip(); createEmptyMovieClip("Dragger", getNextHighestDepth()); Dragger._alpha = 50; if (Acc) { AccPlace = true; BitMap = false; } else { AccPlace = false; BitMap = true; } if (PieceArray.length > 1) { RandomNumber = Math.round(Math.random() * (PieceArray.length - 1)); CurrentTile = PieceArray[RandomNumber]; } else { CurrentTile = PieceArray[0]; } Dragger.attachBitmap(mainTimeLine["TileBitmap" + CurrentTile], 1); SetDraggerPos(); } else if (Type == "MC") { Dragger.removeMovieClip(); createEmptyMovieClip("Dragger", getNextHighestDepth()); Dragger._alpha = 50; BitMap = false; Dragger.attachMovie(MC, "Drag", 1); SetDraggerPos(); } } function SetDraggerPos() { if (!LevelBuilderMenu.hitTest(mainTimeLine._xmouse, mainTimeLine._ymouse, true)) { GetTile(); if (BitMap) { Dragger._x = (TileSize * XTile) + Envi._x; Dragger._y = (TileSize * YTile) + Envi._y; } else if (!AccPlace) { Dragger._x = mainTimeLine._xmouse; Dragger._y = mainTimeLine._ymouse; } else if (AccPlace) { Dragger._x = mainTimeLine._xmouse - (mainTimeLine["TileBitmap" + CurrentTile].width / 2); Dragger._y = mainTimeLine._ymouse - (mainTimeLine["TileBitmap" + CurrentTile].height / 2); } } else { Dragger._x = -1000; } } function CheckKeys() { if (Key.isDown(32)) { Deleting = true; OrbPlace = false; CharPlace = false; AccPlace = false; ChangeDragger("MC", "Eraser"); } if (Key.isDown(16)) { AccPlace = false; CharPlace = true; OrbPlace = false; Deleting = false; ChangeDragger("MC", "Char"); } if (Key.isDown(17)) { OrbPlace = true; CharPlace = false; Deleting = false; AccPlace = false; ChangeDragger("MC", "Collectable"); } } function MoveLevel(Prop, Value) { if (Prop == "x") { LeftLine._x = LeftLine._x + Value; RightLine._x = RightLine._x + Value; Envi._x = Envi._x + Value; Char._x = Char._x + Value; x = 0; while (x < mainTimeLine.oi) { mainTimeLine["Orb" + x]._x = mainTimeLine["Orb" + x]._x + Value; x++; } x = 0; while (x < AC) { mainTimeLine["AccH" + x]._x = mainTimeLine["AccH" + x]._x + Value; x++; } } else if (Prop == "y") { TopLine._y = TopLine._y + Value; BottomLine._y = BottomLine._y + Value; Envi._y = Envi._y + Value; Char._y = Char._y + Value; x = 0; while (x < mainTimeLine.oi) { mainTimeLine["Orb" + x]._y = mainTimeLine["Orb" + x]._y + Value; x++; } x = 0; while (x < AC) { mainTimeLine["AccH" + x]._y = mainTimeLine["AccH" + x]._y + Value; x++; } } SetDraggerPos(); } function PrepareLevelVars(Exporting) { Col = 0; Down = true; mainTimeLine[("ColLoc" + mainTimeLine.Level) + "X"] = new Array(); mainTimeLine[("ColLoc" + mainTimeLine.Level) + "Y"] = new Array(); mainTimeLine[("AccLoc" + Level) + "X"] = new Array(); mainTimeLine[("AccLoc" + Level) + "Y"] = new Array(); mainTimeLine["AccType" + Level] = new Array(); if (Char._x != undefined) { var _local2 = Char._x - 275; var _local1 = Char._y - 225; CharStartXA[Level] = Char._x - _local2; CharStartYA[Level] = Char._y - _local1; } else { var _local2 = 0; var _local1 = 0; } EnviStartYA[Level] = Envi._y - _local1; EnviStartXA[Level] = Envi._x - _local2; z = 0; while (z < mainTimeLine.oi) { if ((mainTimeLine["Orb" + z]._x == null) || (mainTimeLine["Orb" + z]._x == undefined)) { Col++; } else { mainTimeLine[("ColLoc" + mainTimeLine.Level) + "X"][z - Col] = mainTimeLine["Orb" + z]._x - _local2; mainTimeLine[("ColLoc" + mainTimeLine.Level) + "Y"][z - Col] = mainTimeLine["Orb" + z]._y - _local1; if (!Exporting) { mainTimeLine["Orb" + z].removeMovieClip(); } } z++; } Col = 0; z = 0; while (z < AC) { if ((mainTimeLine["AccH" + z]._x == null) || (mainTimeLine["AccH" + z]._x == undefined)) { Col++; } else { if (AccTile[z] >= ES) { mainTimeLine[("AccLoc" + Level) + "X"][z - Col] = (mainTimeLine["AccH" + z]._x - _local2) + (mainTimeLine["TileBitmap" + AccTile[z]].width / 2); mainTimeLine[("AccLoc" + Level) + "Y"][z - Col] = (mainTimeLine["AccH" + z]._y - _local1) + (mainTimeLine["TileBitmap" + AccTile[z]].height / 2); } else { mainTimeLine[("AccLoc" + Level) + "X"][z - Col] = mainTimeLine["AccH" + z]._x - _local2; mainTimeLine[("AccLoc" + Level) + "Y"][z - Col] = mainTimeLine["AccH" + z]._y - _local1; } mainTimeLine["AccType" + Level][z - Col] = AccTile[z]; if (!Exporting) { mainTimeLine["AccH" + z].removeMovieClip(); } } z++; } if (!Exporting) { LevelBuilderMenu.removeMovieClip(); } if (!Exporting) { Key.removeListener(keyListener); if (PlayingMenu) { MS.stop(); PlayingMenu = false; } LBS.stop(); delete onEnterFrame; delete onKeyUp; delete onMouseUp; delete onMouseMove; delete onMouseDown; InfoBox.removeMovieClip(); box.removeMovieClip(); Delete.removeMovieClip(); Envi.removeMovieClip(); Char.removeMovieClip(); BottomLine.removeMovieClip(); TopLine.removeMovieClip(); LeftLine.removeMovieClip(); RightLine.removeMovieClip(); Dragger.removeMovieClip(); } } function PrepareLevelCode() { LevelPrint = 1; FirstThingX = -1; FirstThingY = 10000000000; x = 0; while (x < Map[Level].length) { y = 0; while (y < Map[Level][x].length) { if (Map[Level][x][y] != undefined) { if (y < FirstThingY) { FirstThingY = y; } } y++; } x++; } FirstThingY--; Written = false; Found = false; ChangedUnd = false; x = 0; while (x < Map[Level].length) { y = 0; while (y < Map[Level][x].length) { if ((((Map[Level][x][y] >= 0) && (Map[Level][x][y] != undefined)) || (Found)) || (y >= FirstThingY)) { if (Map[Level][x][y] == undefined) { Map[Level][x][y] = "!"; ChangedUnd = true; } if (!Found) { if (FirstThingX == -1) { FirstThingX = x; } if (Written) { mainTimeLine.LevelCode = mainTimeLine.LevelCode + ("" + Map[Level][x][y]); } else if (!Written) { mainTimeLine.LevelCode = mainTimeLine.LevelCode + ("" + Map[Level][x][y]); } Found = true; Written = true; } if (Found) { mainTimeLine.LevelCode = mainTimeLine.LevelCode + ("," + Map[Level][x][y]); } } if (ChangedUnd) { Map[Level][x][y] = undefined; ChangedUnd = false; } y++; } if (Found) { mainTimeLine.LevelCode = mainTimeLine.LevelCode + "]"; } else if ((!Found) && (Written)) { mainTimeLine.LevelCode = mainTimeLine.LevelCode + "!]"; } Found = false; x++; } mainTimeLine.LevelCode = mainTimeLine.LevelCode + "]"; FirstThingY--; EnviStartXCalc = (EnviStartXA[Level] + 100000) + ((FirstThingX - 2000) * 50); EnviStartYCalc = (EnviStartYA[Level] + 100000) + ((FirstThingY - 2000) * 50); if (mainTimeLine[("ColLoc" + mainTimeLine.Level) + "X"].length > 0) { z = 0; while (z < mainTimeLine[("ColLoc" + mainTimeLine.Level) + "X"].length) { if (z != (mainTimeLine[("ColLoc" + mainTimeLine.Level) + "X"].length - 1)) { mainTimeLine.LevelCode = mainTimeLine.LevelCode + (mainTimeLine[("ColLoc" + mainTimeLine.Level) + "X"][z] + ","); } else { mainTimeLine.LevelCode = mainTimeLine.LevelCode + (mainTimeLine[("ColLoc" + mainTimeLine.Level) + "X"][z] + "]"); } z++; } z = 0; while (z < mainTimeLine[("ColLoc" + mainTimeLine.Level) + "Y"].length) { if (z != (mainTimeLine[("ColLoc" + mainTimeLine.Level) + "Y"].length - 1)) { mainTimeLine.LevelCode = mainTimeLine.LevelCode + (mainTimeLine[("ColLoc" + mainTimeLine.Level) + "Y"][z] + ","); } else { mainTimeLine.LevelCode = mainTimeLine.LevelCode + (mainTimeLine[("ColLoc" + mainTimeLine.Level) + "Y"][z] + "]"); } z++; } } else { mainTimeLine.LevelCode = mainTimeLine.LevelCode + "]]"; } mainTimeLine.LevelCode = mainTimeLine.LevelCode + (EnviStartXCalc + "]"); mainTimeLine.LevelCode = mainTimeLine.LevelCode + (EnviStartYCalc + "]"); if (mainTimeLine.CharStartXA[mainTimeLine.Level] != undefined) { mainTimeLine.LevelCode = mainTimeLine.LevelCode + (mainTimeLine.CharStartXA[mainTimeLine.Level] + "]"); mainTimeLine.LevelCode = mainTimeLine.LevelCode + (mainTimeLine.CharStartYA[mainTimeLine.Level] + "]"); } else { mainTimeLine.LevelCode = mainTimeLine.LevelCode + "!]"; mainTimeLine.LevelCode = mainTimeLine.LevelCode + "!]"; } if (mainTimeLine[("AccLoc" + Level) + "X"].length > 0) { z = 0; while (z < mainTimeLine[("AccLoc" + Level) + "X"].length) { if (z != (mainTimeLine[("AccLoc" + Level) + "X"].length - 1)) { mainTimeLine.LevelCode = mainTimeLine.LevelCode + (mainTimeLine[("AccLoc" + Level) + "X"][z] + ","); } else { mainTimeLine.LevelCode = mainTimeLine.LevelCode + (mainTimeLine[("AccLoc" + Level) + "X"][z] + "]"); } z++; } z = 0; while (z < mainTimeLine[("AccLoc" + Level) + "Y"].length) { if (z != (mainTimeLine[("AccLoc" + Level) + "Y"].length - 1)) { mainTimeLine.LevelCode = mainTimeLine.LevelCode + (mainTimeLine[("AccLoc" + Level) + "Y"][z] + ","); } else { mainTimeLine.LevelCode = mainTimeLine.LevelCode + (mainTimeLine[("AccLoc" + Level) + "Y"][z] + "]"); } z++; } z = 0; while (z < mainTimeLine["AccType" + Level].length) { if (z != (mainTimeLine["AccType" + Level].length - 1)) { mainTimeLine.LevelCode = mainTimeLine.LevelCode + (mainTimeLine["AccType" + Level][z] + ","); } else { mainTimeLine.LevelCode = mainTimeLine.LevelCode + (mainTimeLine["AccType" + Level][z] + "]"); } z++; } } else { mainTimeLine.LevelCode = mainTimeLine.LevelCode + "]]]"; } EncryptFunc(); } function EncryptFunc() { var _local2 = ""; var _local1 = 0; i = 0; while (i < mainTimeLine.LevelCode.length) { _local2 = mainTimeLine.LevelCode.substr(i, 1); _local1 = Decrypt.indexOf(_local2, 0); Encrypted = Encrypted + Encrypt.substr(_local1, 1); i++; } } function Allowed(Check) { if (Check == "PrepareLevelVars") { Orb = false; if (oi != 0) { z = 0; while (z < mainTimeLine.oi) { if ((mainTimeLine["Orb" + z]._x != undefined) && (mainTimeLine["Orb" + z]._y != undefined)) { Orb = true; } z++; } } if (!Orb) { attachMovie("LBNotice", "LBNotice", CAWD); CAWD++; LBNotice._x = 275; LBNotice._y = 225; LBNotice.Status.text = "Please place at least one coin!"; return(0); } if (((Char._x != undefined) && (Char._y != undefined)) && (Orb)) { return(1); } attachMovie("LBNotice", "LBNotice", CAWD); CAWD++; LBNotice._x = 275; LBNotice._y = 225; LBNotice.Status.text = "Please place your character!"; return(0); } if (Check == "PlacingChar") { CW = 20.8; CH = 32.05; OXP = mainTimeLine._xmouse; OYP = mainTimeLine._ymouse; XP = OXP; YP = OYP; Okay = false; GetTile(XP, YP); if ((Map[Level][XTile][YTile] > WT) || (Map[Level][XTile][YTile] == undefined)) { XP = OXP + CW; GetTile(XP, YP); if ((Map[Level][XTile][YTile] > WT) || (Map[Level][XTile][YTile] == undefined)) { XP = OXP - CW; GetTile(XP, YP); if ((Map[Level][XTile][YTile] > WT) || (Map[Level][XTile][YTile] == undefined)) { XP = OXP; YP = OYP + CH; GetTile(XP, YP); if ((Map[Level][XTile][YTile] > WT) || (Map[Level][XTile][YTile] == undefined)) { XP = OXP; YP = OYP - CH; GetTile(XP, YP); if ((Map[Level][XTile][YTile] > WT) || (Map[Level][XTile][YTile] == undefined)) { XP = OXP - CW; YP = OYP + CH; GetTile(XP, YP); if ((Map[Level][XTile][YTile] > WT) || (Map[Level][XTile][YTile] == undefined)) { XP = OXP - CW; YP = OYP - CH; GetTile(XP, YP); if ((Map[Level][XTile][YTile] > WT) || (Map[Level][XTile][YTile] == undefined)) { XP = OXP + CW; YP = OYP + CH; GetTile(XP, YP); if ((Map[Level][XTile][YTile] > WT) || (Map[Level][XTile][YTile] == undefined)) { XP = OXP + CW; YP = OYP - CH; GetTile(XP, YP); if ((Map[Level][XTile][YTile] > WT) || (Map[Level][XTile][YTile] == undefined)) { Okay = true; return(1); } } } } } } } } } if (!Okay) { attachMovie("LBNotice", "LBNotice", CAWD); CAWD++; LBNotice._x = 275; LBNotice._y = 225; LBNotice.Status.text = "You cannot place your character there!"; return(0); } } else if (Check == "PlacingEnemy") { if (PieceArray[0] >= ES) { if ((((PieceArray[0] == SpikeUNum) || (PieceArray[0] == SpikeDNum)) || (PieceArray[0] == SpikeLNum)) || (PieceArray[0] == SpikeRNum)) { if (PieceArray[0] == SpikeUNum) { CHF = mainTimeLine["TileBitmap" + PieceArray[0]].height / 2; CHB = -10; CWF = mainTimeLine["TileBitmap" + PieceArray[0]].width / 2; CWF = CWF - 2; CWB = CWF; } else if (PieceArray[0] == SpikeDNum) { CHF = -10; CHB = mainTimeLine["TileBitmap" + PieceArray[0]].height / 2; CWF = mainTimeLine["TileBitmap" + PieceArray[0]].width / 2; CWF = CWF - 2; CWB = CWF; } else if (PieceArray[0] == SpikeLNum) { CHF = mainTimeLine["TileBitmap" + PieceArray[0]].height / 2; CHF = CHF - 2; CHB = CHF; CWF = -10; CWB = mainTimeLine["TileBitmap" + PieceArray[0]].width / 2; } else if (PieceArray[0] == SpikeRNum) { CHF = mainTimeLine["TileBitmap" + PieceArray[0]].height / 2; CHF = CHF - 2; CHB = CHF; CWF = mainTimeLine["TileBitmap" + PieceArray[0]].width / 2; CWB = -10; } OXP = mainTimeLine._xmouse; OYP = mainTimeLine._ymouse; XP = OXP; YP = OYP; Okay = false; XP = OXP; YP = OYP + CHF; GetTile(XP, YP); if ((Map[Level][XTile][YTile] <= WT) && (Map[Level][XTile][YTile] != undefined)) { XP = OXP; YP = OYP - CHB; GetTile(XP, YP); if ((Map[Level][XTile][YTile] <= WT) && (Map[Level][XTile][YTile] != undefined)) { XP = OXP - CWB; YP = OYP + CHF; GetTile(XP, YP); if ((Map[Level][XTile][YTile] <= WT) && (Map[Level][XTile][YTile] != undefined)) { XP = OXP - CWB; YP = OYP - CHB; GetTile(XP, YP); if ((Map[Level][XTile][YTile] <= WT) && (Map[Level][XTile][YTile] != undefined)) { XP = OXP + CWF; YP = OYP + CHF; GetTile(XP, YP); if ((Map[Level][XTile][YTile] <= WT) && (Map[Level][XTile][YTile] != undefined)) { XP = OXP + CWF; YP = OYP - CHB; GetTile(XP, YP); if ((Map[Level][XTile][YTile] <= WT) && (Map[Level][XTile][YTile] != undefined)) { Okay = true; return(1); } } } } } } if (!Okay) { attachMovie("LBNotice", "LBNotice", CAWD); CAWD++; LBNotice._x = 275; LBNotice._y = 225; LBNotice.Status.text = "You cannot place a spike trap there!"; return(0); } } else { CW = mainTimeLine["TileBitmap" + PieceArray[0]].width / 2; CH = mainTimeLine["TileBitmap" + PieceArray[0]].height / 2; OXP = mainTimeLine._xmouse; OYP = mainTimeLine._ymouse; XP = OXP; YP = OYP; Okay = false; GetTile(XP, YP); if ((Map[Level][XTile][YTile] > WT) || (Map[Level][XTile][YTile] == undefined)) { XP = OXP + CW; GetTile(XP, YP); if ((Map[Level][XTile][YTile] > WT) || (Map[Level][XTile][YTile] == undefined)) { XP = OXP - CW; GetTile(XP, YP); if ((Map[Level][XTile][YTile] > WT) || (Map[Level][XTile][YTile] == undefined)) { XP = OXP; YP = OYP + CH; GetTile(XP, YP); if ((Map[Level][XTile][YTile] > WT) || (Map[Level][XTile][YTile] == undefined)) { XP = OXP; YP = OYP - CH; GetTile(XP, YP); if ((Map[Level][XTile][YTile] > WT) || (Map[Level][XTile][YTile] == undefined)) { XP = OXP - CW; YP = OYP + CH; GetTile(XP, YP); if ((Map[Level][XTile][YTile] > WT) || (Map[Level][XTile][YTile] == undefined)) { XP = OXP - CW; YP = OYP - CH; GetTile(XP, YP); if ((Map[Level][XTile][YTile] > WT) || (Map[Level][XTile][YTile] == undefined)) { XP = OXP + CW; YP = OYP + CH; GetTile(XP, YP); if ((Map[Level][XTile][YTile] > WT) || (Map[Level][XTile][YTile] == undefined)) { XP = OXP + CW; YP = OYP - CH; GetTile(XP, YP); if ((Map[Level][XTile][YTile] > WT) || (Map[Level][XTile][YTile] == undefined)) { Okay = true; return(1); } } } } } } } } } if (!Okay) { attachMovie("LBNotice", "LBNotice", CAWD); CAWD++; LBNotice._x = 275; LBNotice._y = 225; LBNotice.Status.text = "You cannot place an enemy there!"; return(0); } } } else { return(1); } } } function OpenTileMenu() { LevelBuilderMenu.attachMovie("TileMenu", "TileMenu", LevelBuilderMenu.getNextHighestDepth()); SelectingTiles = true; LevelBuilderMenu.TileMenu._x = 110; LevelBuilderMenu.TileMenu._y = 90; LevelBuilderMenu.TileMenu.PageMC._x = -1000; LevelBuilderMenu.TileMenu.PageMC._y = -1000; g = 1; if (LastTab == "Wall") { WallTabFunc(); } else if (LastTab == "BG") { BGTabFunc(); } else if (LastTab == "Acc") { AccTabFunc(); } else if (LastTab == "Ene") { EneTabFunc(); } Dragger._x = -1000; } function WallTabFunc() { d = 10000; g = 1; while (g <= TT) { LevelBuilderMenu.TileMenu["Tile" + g].removeMovieClip(); g++; } g = 1; while (g <= WT) { LevelBuilderMenu.TileMenu.createEmptyMovieClip("Tile" + g, d); LevelBuilderMenu.TileMenu["Tile" + g].attachBitmap(mainTimeLine["TileBitmap" + g], LevelBuilderMenu.TileMenu["Tile" + g].getNextHighestDepth()); X = Math.floor((g - 1) / 7); LevelBuilderMenu.TileMenu["Tile" + g]._x = ((58 * g) - 260) - (406 * X); LevelBuilderMenu.TileMenu["Tile" + g]._y = (58 * X) - 10; d++; g++; } o = 1; while (o <= TT) { LevelBuilderMenu.TileMenu["Box" + o].removeMovieClip(); o++; } o = 0; while (o < PieceArray.length) { Ind = PieceArray[o]; if ((PieceArray[o] >= 1) && (PieceArray[o] <= WT)) { LevelBuilderMenu.TileMenu.attachMovie("Box", "Box" + Ind, Ind + 100); LevelBuilderMenu.TileMenu["Box" + Ind]._x = LevelBuilderMenu.TileMenu["Tile" + Ind]._x - 2; LevelBuilderMenu.TileMenu["Box" + Ind]._y = LevelBuilderMenu.TileMenu["Tile" + Ind]._y - 2; LevelBuilderMenu.TileMenu["Box" + Ind]._width = mainTimeLine["TileBitmap" + Ind].width + ((mainTimeLine["TileBitmap" + Ind].width / 50) * 6); LevelBuilderMenu.TileMenu["Box" + Ind]._height = mainTimeLine["TileBitmap" + Ind].height + ((mainTimeLine["TileBitmap" + Ind].width / 50) * 6); } o++; } } function BGTabFunc() { d = 10000; g = 1; while (g <= TT) { LevelBuilderMenu.TileMenu["Tile" + g].removeMovieClip(); g++; } g = WT + 1; while (g <= BT) { LevelBuilderMenu.TileMenu.createEmptyMovieClip("Tile" + g, d); LevelBuilderMenu.TileMenu["Tile" + g].attachBitmap(mainTimeLine["TileBitmap" + g], LevelBuilderMenu.TileMenu["Tile" + g].getNextHighestDepth()); X = Math.floor((g - (WT + 1)) / 7); LevelBuilderMenu.TileMenu["Tile" + g]._x = ((58 * (g - WT)) - 260) - (406 * X); LevelBuilderMenu.TileMenu["Tile" + g]._y = (58 * X) - 10; d++; g++; } o = 1; while (o <= TT) { LevelBuilderMenu.TileMenu["Box" + o].removeMovieClip(); o++; } o = 0; while (o < PieceArray.length) { Ind = PieceArray[o]; if ((PieceArray[o] >= (WT + 1)) && (PieceArray[o] <= BT)) { LevelBuilderMenu.TileMenu.attachMovie("Box", "Box" + Ind, Ind + 100); LevelBuilderMenu.TileMenu["Box" + Ind]._x = LevelBuilderMenu.TileMenu["Tile" + Ind]._x - 2; LevelBuilderMenu.TileMenu["Box" + Ind]._y = LevelBuilderMenu.TileMenu["Tile" + Ind]._y - 2; LevelBuilderMenu.TileMenu["Box" + Ind]._width = mainTimeLine["TileBitmap" + Ind].width + ((mainTimeLine["TileBitmap" + Ind].width / 50) * 6); LevelBuilderMenu.TileMenu["Box" + Ind]._height = mainTimeLine["TileBitmap" + Ind].height + ((mainTimeLine["TileBitmap" + Ind].width / 50) * 6); } o++; } } function AccTabFunc() { d = 10000; LevelBuilderMenu.TileMenu.PageMC._x = 154; LevelBuilderMenu.TileMenu.PageMC._y = 250; g = 1; while (g <= TT) { LevelBuilderMenu.TileMenu["Tile" + g].removeMovieClip(); g++; } if (Page == 1) { g = AS; while (g <= (ES - 9)) { trace(g); LevelBuilderMenu.TileMenu.createEmptyMovieClip("Tile" + g, d); LevelBuilderMenu.TileMenu["Tile" + g].attachBitmap(mainTimeLine["TileBitmap" + g], LevelBuilderMenu.TileMenu["Tile" + g].getNextHighestDepth()); d++; g++; } LevelBuilderMenu.TileMenu.Tile26._x = -202; LevelBuilderMenu.TileMenu.Tile26._y = -10; LevelBuilderMenu.TileMenu.Tile27._x = -144; LevelBuilderMenu.TileMenu.Tile27._y = -10; LevelBuilderMenu.TileMenu.Tile28._x = -86; LevelBuilderMenu.TileMenu.Tile28._y = -10; LevelBuilderMenu.TileMenu.Tile30._x = -28; LevelBuilderMenu.TileMenu.Tile30._y = -10; LevelBuilderMenu.TileMenu.Tile34._x = 30; LevelBuilderMenu.TileMenu.Tile34._y = -10; LevelBuilderMenu.TileMenu.Tile31._x = 88; LevelBuilderMenu.TileMenu.Tile31._y = -10; LevelBuilderMenu.TileMenu.Tile32._x = 146; LevelBuilderMenu.TileMenu.Tile32._y = -10; LevelBuilderMenu.TileMenu.Tile33._x = -202; LevelBuilderMenu.TileMenu.Tile33._y = 48; LevelBuilderMenu.TileMenu.Tile29._x = -144; LevelBuilderMenu.TileMenu.Tile29._y = 48; LevelBuilderMenu.TileMenu.Tile35._x = -86; LevelBuilderMenu.TileMenu.Tile35._y = 48; LevelBuilderMenu.TileMenu.Tile36._x = -28; LevelBuilderMenu.TileMenu.Tile36._y = 48; LevelBuilderMenu.TileMenu.Tile37._x = 30; LevelBuilderMenu.TileMenu.Tile37._y = 48; LevelBuilderMenu.TileMenu.Tile38._x = 88; LevelBuilderMenu.TileMenu.Tile38._y = 48; LevelBuilderMenu.TileMenu.Tile39._x = 146; LevelBuilderMenu.TileMenu.Tile39._y = 48; LevelBuilderMenu.TileMenu.Tile40._x = -202; LevelBuilderMenu.TileMenu.Tile40._y = 106; LevelBuilderMenu.TileMenu.Tile44._x = -144; LevelBuilderMenu.TileMenu.Tile44._y = 150; LevelBuilderMenu.TileMenu.Tile42._x = -76; LevelBuilderMenu.TileMenu.Tile42._y = 166; LevelBuilderMenu.TileMenu.Tile41._x = 142; LevelBuilderMenu.TileMenu.Tile41._y = 152; LevelBuilderMenu.TileMenu.Tile43._x = -18; LevelBuilderMenu.TileMenu.Tile43._y = 164; LevelBuilderMenu.TileMenu.Tile45._x = -202; LevelBuilderMenu.TileMenu.Tile45._y = 212; o = 1; while (o <= TT) { LevelBuilderMenu.TileMenu["Box" + o].removeMovieClip(); o++; } o = 0; while (o < PieceArray.length) { Ind = PieceArray[o]; if ((PieceArray[o] >= AS) && (PieceArray[o] <= (ES - 9))) { LevelBuilderMenu.TileMenu.attachMovie("Box", "Box" + Ind, Ind + 100); LevelBuilderMenu.TileMenu["Box" + Ind]._x = LevelBuilderMenu.TileMenu["Tile" + Ind]._x - 2; LevelBuilderMenu.TileMenu["Box" + Ind]._y = LevelBuilderMenu.TileMenu["Tile" + Ind]._y - 1; LevelBuilderMenu.TileMenu["Box" + Ind]._width = mainTimeLine["TileBitmap" + Ind].width + ((mainTimeLine["TileBitmap" + Ind].width / 50) * 6); LevelBuilderMenu.TileMenu["Box" + Ind]._height = mainTimeLine["TileBitmap" + Ind].height + ((mainTimeLine["TileBitmap" + Ind].width / 50) * 6); } o++; } } else if (Page == 2) { g = ES - 8; while (g <= (ES - 1)) { trace(g); LevelBuilderMenu.TileMenu.createEmptyMovieClip("Tile" + g, d); LevelBuilderMenu.TileMenu["Tile" + g].attachBitmap(mainTimeLine["TileBitmap" + g], LevelBuilderMenu.TileMenu["Tile" + g].getNextHighestDepth()); LevelBuilderMenu.TileMenu["Tile" + g]._x = -1000; LevelBuilderMenu.TileMenu["Tile" + g]._y = -1000; d++; g++; } LevelBuilderMenu.TileMenu.Tile51._x = -202; LevelBuilderMenu.TileMenu.Tile51._y = -10; LevelBuilderMenu.TileMenu.Tile46._x = -86; LevelBuilderMenu.TileMenu.Tile46._y = -10; LevelBuilderMenu.TileMenu.Tile47._x = 30; LevelBuilderMenu.TileMenu.Tile47._y = -10; LevelBuilderMenu.TileMenu.Tile48._x = 100; LevelBuilderMenu.TileMenu.Tile48._y = -10; LevelBuilderMenu.TileMenu.Tile49._x = -86; LevelBuilderMenu.TileMenu.Tile49._y = 106; LevelBuilderMenu.TileMenu.Tile50._x = -28; LevelBuilderMenu.TileMenu.Tile50._y = 106; LevelBuilderMenu.TileMenu.Tile52._x = 155; LevelBuilderMenu.TileMenu.Tile52._y = 106; LevelBuilderMenu.TileMenu.Tile53._x = 70; LevelBuilderMenu.TileMenu.Tile53._y = 106; o = 1; while (o <= TT) { LevelBuilderMenu.TileMenu["Box" + o].removeMovieClip(); o++; } o = 0; while (o < PieceArray.length) { Ind = PieceArray[o]; if ((PieceArray[o] >= (ES - 8)) && (PieceArray[o] <= (ES - 1))) { LevelBuilderMenu.TileMenu.attachMovie("Box", "Box" + Ind, Ind + 100); LevelBuilderMenu.TileMenu["Box" + Ind]._x = LevelBuilderMenu.TileMenu["Tile" + Ind]._x - 2; LevelBuilderMenu.TileMenu["Box" + Ind]._y = LevelBuilderMenu.TileMenu["Tile" + Ind]._y - 1; LevelBuilderMenu.TileMenu["Box" + Ind]._width = mainTimeLine["TileBitmap" + Ind].width + ((mainTimeLine["TileBitmap" + Ind].width / 50) * 6); LevelBuilderMenu.TileMenu["Box" + Ind]._height = mainTimeLine["TileBitmap" + Ind].height + ((mainTimeLine["TileBitmap" + Ind].width / 50) * 6); } o++; } } } function EneTabFunc() { d = 10000; g = 1; while (g <= TT) { LevelBuilderMenu.TileMenu["Tile" + g].removeMovieClip(); g++; } g = ES; while (g <= TT) { LevelBuilderMenu.TileMenu.createEmptyMovieClip("Tile" + g, d); LevelBuilderMenu.TileMenu["Tile" + g].attachBitmap(mainTimeLine["TileBitmap" + g], LevelBuilderMenu.TileMenu["Tile" + g].getNextHighestDepth()); X = Math.floor((g - ES) / 5); LevelBuilderMenu.TileMenu["Tile" + g]._x = ((75 * ((g - ES) + 1)) - 270) - (378 * X); LevelBuilderMenu.TileMenu["Tile" + g]._y = (75 * X) - 10; d++; g++; } o = 1; while (o <= TT) { LevelBuilderMenu.TileMenu["Box" + o].removeMovieClip(); o++; } o = 0; while (o < PieceArray.length) { Ind = PieceArray[o]; if ((PieceArray[o] >= ES) && (PieceArray[o] <= TT)) { LevelBuilderMenu.TileMenu.attachMovie("Box", "Box" + Ind, Ind + 100); LevelBuilderMenu.TileMenu["Box" + Ind]._x = LevelBuilderMenu.TileMenu["Tile" + Ind]._x - 2; LevelBuilderMenu.TileMenu["Box" + Ind]._y = LevelBuilderMenu.TileMenu["Tile" + Ind]._y - 1; LevelBuilderMenu.TileMenu["Box" + Ind]._width = mainTimeLine["TileBitmap" + Ind].width + ((mainTimeLine["TileBitmap" + Ind].width / 50) * 6); LevelBuilderMenu.TileMenu["Box" + Ind]._height = mainTimeLine["TileBitmap" + Ind].height + ((mainTimeLine["TileBitmap" + Ind].width / 50) * 6); } o++; } } MS.stop(); PlayingMenu = false; LBS.start(0, 9999); var Page = 1; trace("Depth: " + _root.getNextHighestDepth()); LBBG._x = 0; LBBG._y = 0; CAWD = _root.getNextHighestDepth(); var LastTab = "Wall"; var TS = 500; var DungeonStart = 1; var DungeonEnd = 4; var RoomEnd = 5; var BGEnd = 8; var EnemyEnd = 8; var PieceArray = [1]; var SS = 6; var AC = 0; var AccTile = new Array(); var CurrentTile = 1; var SelectingTiles = false; var ShowingHelp = false; var XTile = 0; var YTile = 0; var Level = 0; var LevelCode = ""; var Encrypted = ""; var oi = 0; var q = 0; var BitMap = true; createEmptyMovieClip("Envi", CAWD); CAWD++; Envi.createEmptyMovieClip("Wall", Envi.getNextHighestDepth()); attachMovie("LevelBuilderMenu", "LevelBuilderMenu", 1000000000); LevelBuilderMenu._x = 170; LevelBuilderMenu._y = 20; attachMovie("Bin", "Delete", mainTimeLine.getNextHighestDepth()); Delete._x = 520; Delete._y = 420; createEmptyMovieClip("Dragger", mainTimeLine.getNextHighestDepth()); Dragger.attachBitmap(TileBitmap1, 1); Dragger._alpha = 25; var MapPiecesLB = new Array(); var Acc = new Array(); var TempMap = [[]]; if (Map[Level].length > 0) { ForX = Map[Level].length; x = 0; while (x < ForX) { y = 0; while (y < Map[Level][x].length) { if (TempMap[x] == undefined) { TempMap[x] = new Array(); } if ((((Map[Level][x][y] == 1001) || (Map[Level][x][y] == 1002)) || (Map[Level][x][y] == 1003)) || (Map[Level][x][y] == 1004)) { Map[Level][x][y] = undefined; } TempMap[x][y] = Map[Level][x][y]; y++; } x++; } var Map = [[]]; x = 0; while (x < TempMap.length) { y = 0; while (y < TempMap[x].length) { if ((TempMap[x][y] != 0) && (TempMap[x][y] != undefined)) { CreateTile(TempMap[x][y], x, y, false, true); } y++; } x++; } Envi._x = EnviStartXA[Level] - (50 * TS); Envi._y = EnviStartYA[Level] - (50 * TS); } else { Envi._x = -100000; Envi._y = -100000; } var CharStartY = CharStartYA[Level]; var CharStartX = CharStartXA[Level]; var LRB = LRBA[Level]; var LLB = LLBA[Level]; var LTB = LTBA[Level]; var LBB = LBBA[Level]; if (CharStartYA[Level] != undefined) { attachMovie("Char", "Char", 1000000); Char._x = CharStartX; Char._y = CharStartY; } if (mainTimeLine[("AccLoc" + Level) + "X"].length > 0) { v = 0; while (v < mainTimeLine[("AccLoc" + Level) + "X"].length) { trace(mainTimeLine["AccType" + Level][v]); Acc[v] = new flash.display.BitmapData(mainTimeLine["TileBitmap" + mainTimeLine["AccType" + Level][v]].width, mainTimeLine["TileBitmap" + mainTimeLine["AccType" + Level][v]].height, true, 0); Acc[v].copyPixels(mainTimeLine["TileBitmap" + mainTimeLine["AccType" + Level][v]], new flash.geom.Rectangle(0, 0, mainTimeLine["TileBitmap" + mainTimeLine["AccType" + Level][v]].width, mainTimeLine["TileBitmap" + mainTimeLine["AccType" + Level][v]].height), new flash.geom.Point(0, 0)); createEmptyMovieClip(["AccH" + v], CAWD); CAWD++; mainTimeLine["AccH" + v].attachBitmap(Acc[v], mainTimeLine["AccH" + v].getNextHighestDepth()); if (mainTimeLine["AccType" + Level][v] >= ES) { mainTimeLine["AccH" + v]._x = mainTimeLine[("AccLoc" + Level) + "X"][v] - (mainTimeLine["TileBitmap" + mainTimeLine["AccType" + Level][v]].width / 2); mainTimeLine["AccH" + v]._y = mainTimeLine[("AccLoc" + Level) + "Y"][v] - (mainTimeLine["TileBitmap" + mainTimeLine["AccType" + Level][v]].height / 2); } else { mainTimeLine["AccH" + v]._x = mainTimeLine[("AccLoc" + Level) + "X"][v]; mainTimeLine["AccH" + v]._y = mainTimeLine[("AccLoc" + Level) + "Y"][v]; } AccTile[v] = mainTimeLine["AccType" + Level][v]; v++; } AC = mainTimeLine[("AccLoc" + Level) + "X"].length; } if (mainTimeLine[("ColLoc" + Level) + "X"].length > 0) { v = 0; while (v < mainTimeLine[("ColLoc" + Level) + "X"].length) { attachMovie("Collectable", ["Orb" + v], CAWD); CAWD++; mainTimeLine["Orb" + v]._x = mainTimeLine[("ColLoc" + Level) + "X"][v]; mainTimeLine["Orb" + v]._y = mainTimeLine[("ColLoc" + Level) + "Y"][v]; v++; } oi = mainTimeLine[("ColLoc" + Level) + "X"].length; } var AccPlace = false; var OrbPlace = false; var CharPlace = false; var Deleting = false; var Down = false; var Playing = false; var On = false; createEmptyMovieClip("box", CAWD); CAWD++; box.lineStyle(1, 0, 0, true); box.moveTo(0, 0); box.beginFill(0, 0); box.lineTo(550, 0); box.lineTo(550, 450); box.lineTo(0, 450); box.lineTo(0, 0); box.endFill(); box.useHandCursor = false; box.onRollOut = function () { trace("Off"); On = false; }; box.onRollOver = function () { trace("On"); On = true; }; trace("Depth After: " + _root.getNextHighestDepth()); SetDraggerPos(); onMouseDown = function () { if (((!Playing) && (!SelectingTiles)) && (!ShowingHelp)) { if ((!LevelBuilderMenu.hitTest(mainTimeLine._xmouse, mainTimeLine._ymouse, true)) && (!Delete.hitTest(mainTimeLine._xmouse, mainTimeLine._ymouse, true))) { if (((((!Down) && (!CharPlace)) && (!OrbPlace)) && (!AccPlace)) && (!Deleting)) { GetTile(); FoundArr = false; r = 0; while (r < PieceArray.length) { if (Map[Level][XTile][YTile] == PieceArray[r]) { FoundArr = true; break; } r++; } if (!FoundArr) { Map[Level][XTile][YTile] = CurrentTile; CreateTile(Map[Level][XTile][YTile], XTile, YTile, true, false); ChangeDragger("Bitmap"); } Down = true; } if (AccPlace) { if (Allowed("PlacingEnemy")) { Acc[AC] = new flash.display.BitmapData(mainTimeLine["TileBitmap" + PieceArray[0]].width, mainTimeLine["TileBitmap" + PieceArray[0]].height, true, 0); Acc[AC].copyPixels(mainTimeLine["TileBitmap" + PieceArray[0]], new flash.geom.Rectangle(0, 0, mainTimeLine["TileBitmap" + PieceArray[0]].width, mainTimeLine["TileBitmap" + PieceArray[0]].height), new flash.geom.Point(0, 0)); createEmptyMovieClip(["AccH" + AC], CAWD); CAWD++; mainTimeLine["AccH" + AC].attachBitmap(Acc[AC], mainTimeLine["AccH" + AC].getNextHighestDepth()); mainTimeLine["AccH" + AC]._x = mainTimeLine._xmouse - (mainTimeLine["TileBitmap" + PieceArray[0]].width / 2); mainTimeLine["AccH" + AC]._y = mainTimeLine._ymouse - (mainTimeLine["TileBitmap" + PieceArray[0]].height / 2); AccTile[AC] = PieceArray[0]; AC++; } ChangeDragger("Bitmap", "", true); } if (CharPlace) { if (Allowed("PlacingChar")) { attachMovie("Char", "Char", 1000000); Char._x = mainTimeLine._xmouse; Char._y = mainTimeLine._ymouse; } if (PieceArray[0] >= AS) { ChangeDragger("Bitmap", "", true); } else { ChangeDragger("Bitmap"); } CheckKeys(); } if (OrbPlace) { attachMovie("Collectable", "Orb" + oi, CAWD); CAWD++; mainTimeLine["Orb" + oi]._x = mainTimeLine._xmouse; mainTimeLine["Orb" + oi]._y = mainTimeLine._ymouse; oi++; if (PieceArray[0] >= AS) { ChangeDragger("Bitmap", "", true); } else { ChangeDragger("Bitmap"); } CheckKeys(); } if (Deleting) { if (PieceArray[0] >= AS) { ChangeDragger("Bitmap", "", true); } else { CheckKeys(); ChangeDragger("Bitmap"); CheckKeys(); } Down = true; Hit = false; var _local1 = mainTimeLine._xmouse; var _local2 = mainTimeLine._ymouse; z = 0; while (z < mainTimeLine.oi) { if (mainTimeLine["Orb" + z].hitTest(_local1, _local2, false)) { mainTimeLine["Orb" + z].removeMovieClip(); Hit = true; break; } z++; } if (!Hit) { z = 0; while (z < AC) { if (mainTimeLine["AccH" + z].hitTest(_local1, _local2, true)) { mainTimeLine["AccH" + z].removeMovieClip(); Hit = true; break; } z++; } } if (!Hit) { z = 0; while (z < q) { if (mainTimeLine.Envi.Wall["MapPiece" + z].hitTest(_local1, _local2, true)) { mainTimeLine.Envi.Wall["MapPiece" + z].removeMovieClip(); GetTile(); Map[Level][XTile][YTile] = undefined; break; } z++; } } if (PieceArray[0] >= AS) { ChangeDragger("Bitmap", "", true); } else { ChangeDragger("Bitmap"); } Deleting = false; CheckKeys(); } } } }; onMouseUp = function () { if (!LevelBuilderMenu.ExportButton.hitTest(mainTimeLine._xmouse, mainTimeLine._ymouse, true)) { LevelBuilderMenu.ExportButton.gotoAndStop("Neutral"); } if (!LevelBuilderMenu.TilesButton.hitTest(mainTimeLine._xmouse, mainTimeLine._ymouse, true)) { LevelBuilderMenu.TilesButton.gotoAndStop("Neutral"); } if (!LevelBuilderMenu.MenuButton.hitTest(mainTimeLine._xmouse, mainTimeLine._ymouse, true)) { LevelBuilderMenu.MenuButton.gotoAndStop("Neutral"); } if (((!Playing) && (!SelectingTiles)) && (!ShowingHelp)) { SetDraggerPos(); if (CharPlace) { CharPlace = false; } else if (Deleting) { Deleting = false; Down = false; } else if (OrbPlace) { OrbPlace = false; } else if (((!Test.hitTest(mainTimeLine._xmouse, mainTimeLine._ymouse, false)) && (!Export.hitTest(mainTimeLine._xmouse, mainTimeLine._ymouse, false))) && (Down)) { Down = false; } if (!LevelBuilderMenu.ExportButton.hitTest(mainTimeLine._xmouse, mainTimeLine._ymouse, true)) { LevelBuilderMenu.ExportButton.gotoAndStop("Neutral"); } if (!LevelBuilderMenu.TilesButton.hitTest(mainTimeLine._xmouse, mainTimeLine._ymouse, true)) { LevelBuilderMenu.TilesButton.gotoAndStop("Neutral"); } } else if (ShowingHelp) { if (InfoBox.ContBuildingBtn.hitTest(mainTimeLine._xmouse, mainTimeLine._ymouse, true)) { SetDraggerPos(); CheckKeys(); InfoBox.removeMovieClip(); ShowingHelp = false; Down = false; } else { InfoBox.ContBuildingBtn.gotoAndStop("Neutral"); } if (InfoBox.ContBuildingBtn2.hitTest(mainTimeLine._xmouse, mainTimeLine._ymouse, true)) { SetDraggerPos(); CheckKeys(); InfoBox.removeMovieClip(); ShowingHelp = false; Down = false; } else { InfoBox.ContBuildingBtn2.gotoAndStop("Neutral"); } if (InfoBox.TestOEBtn.hitTest(mainTimeLine._xmouse, mainTimeLine._ymouse, true)) { InfoBox.removeMovieClip(); ShowingHelp = false; Down = false; PrepareLevelVars(); Level = 0; gotoAndStop ("Game"); } else { InfoBox.TestOEBtn.gotoAndStop("Neutral"); } if (InfoBox.CopyButton.hitTest(mainTimeLine._xmouse, mainTimeLine._ymouse, true)) { System.setClipboard(InfoBox.LevelCodeT.text); } else { InfoBox.CopyButton.gotoAndStop("Neutral"); } if (InfoBox.YesBtn.hitTest(mainTimeLine._xmouse, mainTimeLine._ymouse, true)) { PrepareLevelVars(); mainTimeLine[("ColLoc" + mainTimeLine.Level) + "X"] = new Array(); mainTimeLine[("ColLoc" + mainTimeLine.Level) + "Y"] = new Array(); mainTimeLine[("AccLoc" + Level) + "X"] = new Array(); mainTimeLine[("AccLoc" + Level) + "Y"] = new Array(); mainTimeLine["AccType" + Level] = new Array(); CharStartXA[Level] = undefined; CharStartYA[Level] = undefined; EnviStartYA[Level] = undefined; EnviStartXA[Level] = undefined; var _local2 = new Array(); InfoBox.removeMovieClip(); ShowingHelp = false; gotoAndStop ("QS2"); } else { InfoBox.YesBtn.gotoAndStop("Neutral"); } if (InfoBox.NoBtn.hitTest(mainTimeLine._xmouse, mainTimeLine._ymouse, true)) { SetDraggerPos(); CheckKeys(); InfoBox.removeMovieClip(); ShowingHelp = false; Down = false; } else { InfoBox.NoBtn.gotoAndStop("Neutral"); } if (InfoBox.MenuBtn.hitTest(mainTimeLine._xmouse, mainTimeLine._ymouse, true)) { InfoBox.removeMovieClip(); ShowingHelp = false; Down = false; PrepareLevelVars(); gotoAndStop ("Menu"); } else { InfoBox.MenuBtn.gotoAndStop("Neutral"); } if (InfoBox.SaveBtn.hitTest(mainTimeLine._xmouse, mainTimeLine._ymouse, true)) { if ((InfoBox.Submitter.text != "") && (InfoBox.LevelName.text != "")) { vars = new LoadVars(); save_check = new LoadVars(); vars.LevelInfo = InfoBox.LevelCodeT.text; vars.Submitter = InfoBox.Submitter.text; vars.LevelName = InfoBox.LevelName.text; save_check.onLoad = function () { if (this.response == "passed") { InfoBox.Message.text = "Success!"; } else if (this.response == "named") { InfoBox.Message.text = "Level Name is already used."; } else if (this.response == "level") { InfoBox.Message.text = "Level already submitted."; } }; vars.sendAndLoad("http://www.fullergames.com/Ninja/save_level.php", save_check, "POST"); } else if (InfoBox.Submitter.text == "") { InfoBox.Message.text = "You forgot to enter your name!"; } else if (InfoBox.LevelName.text == "") { InfoBox.Message.text = "You forgot to name your level!"; } } else { InfoBox.SaveBtn.gotoAndStop("Neutral"); } } else if (SelectingTiles) { if (LevelBuilderMenu.TileMenu.ExitTileButton.hitTest(mainTimeLine._xmouse, mainTimeLine._ymouse, true)) { SelectingTiles = false; LevelBuilderMenu.TileMenu.removeMovieClip(); } else { LevelBuilderMenu.TileMenu.ExitTileButton.gotoAndStop("Neutral"); } if (LevelBuilderMenu.TileMenu.BGTab.hitTest(mainTimeLine._xmouse, mainTimeLine._ymouse, true)) { LevelBuilderMenu.TileMenu.PageMC._x = -1000; LevelBuilderMenu.TileMenu.PageMC._y = -1000; BGTabFunc(); LastTab = "BG"; } if (LevelBuilderMenu.TileMenu.WallTab.hitTest(mainTimeLine._xmouse, mainTimeLine._ymouse, true)) { LevelBuilderMenu.TileMenu.PageMC._x = -1000; LevelBuilderMenu.TileMenu.PageMC._y = -1000; WallTabFunc(); LastTab = "Wall"; } if (LevelBuilderMenu.TileMenu.EneTab.hitTest(mainTimeLine._xmouse, mainTimeLine._ymouse, true)) { LevelBuilderMenu.TileMenu.PageMC._x = -1000; LevelBuilderMenu.TileMenu.PageMC._y = -1000; EneTabFunc(); LastTab = "Ene"; } if (LevelBuilderMenu.TileMenu.AccTab.hitTest(mainTimeLine._xmouse, mainTimeLine._ymouse, true)) { LevelBuilderMenu.TileMenu.PageMC._x = 154; LevelBuilderMenu.TileMenu.PageMC._y = 250; AccTabFunc(); LastTab = "Acc"; } if (LevelBuilderMenu.TileMenu.PageMC.hitTest(mainTimeLine._xmouse, mainTimeLine._ymouse, true)) { trace("HitPage"); if (Page == 1) { Page = 2; } else if (Page == 2) { Page = 1; } AccTabFunc(); trace(Page); } } }; onMouseMove = function () { if (((!Playing) && (!SelectingTiles)) && (!ShowingHelp)) { SetDraggerPos(); CheckKeys(); if (Down && (Deleting)) { if (PieceArray[0] >= AS) { ChangeDragger("Bitmap", "", true); } else { ChangeDragger("Bitmap"); } Down = true; Hit = false; var _local1 = mainTimeLine._xmouse; var _local2 = mainTimeLine._ymouse; z = 0; while (z < mainTimeLine.oi) { if (mainTimeLine["Orb" + z].hitTest(_local1, _local2, false)) { mainTimeLine["Orb" + z].removeMovieClip(); Hit = true; break; } z++; } if (!Hit) { z = 0; while (z < AC) { if (mainTimeLine["AccH" + z].hitTest(_local1, _local2, true)) { mainTimeLine["AccH" + z].removeMovieClip(); Hit = true; break; } z++; } } if (!Hit) { z = 0; while (z < q) { if (mainTimeLine.Envi.Wall["MapPiece" + z].hitTest(_local1, _local2, true)) { mainTimeLine.Envi.Wall["MapPiece" + z].removeMovieClip(); GetTile(); Map[Level][XTile][YTile] = undefined; break; } z++; } } if (PieceArray[0] >= AS) { ChangeDragger("Bitmap", "", true); } else { ChangeDragger("Bitmap"); } Deleting = false; CheckKeys(); } } }; onEnterFrame = function () { if (((!Playing) && (!SelectingTiles)) && (!ShowingHelp)) { CheckKeys(); if (Down) { if (!Deleting) { GetTile(); FoundArr = false; r = 0; while (r < PieceArray.length) { if (Map[Level][XTile][YTile] == PieceArray[r]) { FoundArr = true; break; } r++; } if (!FoundArr) { Map[Level][XTile][YTile] = CurrentTile; CreateTile(Map[Level][XTile][YTile], XTile, YTile, true, false); ChangeDragger("Bitmap"); } } } } if (!ShowingHelp) { if (On) { if ((mainTimeLine._xmouse > 520) && (mainTimeLine._xmouse < 550)) { MoveLevel("x", -SS); } if ((mainTimeLine._xmouse < 30) && (mainTimeLine._xmouse > 0)) { MoveLevel("x", SS); } if ((mainTimeLine._ymouse < 30) && (mainTimeLine._ymouse > 0)) { MoveLevel("y", SS); } if ((mainTimeLine._ymouse > 420) && (mainTimeLine._ymouse < 450)) { MoveLevel("y", -SS); } } if (Key.isDown(37)) { MoveLevel("x", SS * 3); } if (Key.isDown(39)) { MoveLevel("x", (-SS) * 3); } if (Key.isDown(38)) { MoveLevel("y", SS * 3); } if (Key.isDown(40)) { MoveLevel("y", (-SS) * 3); } } }; keyListener = new Object(); Key.addListener(keyListener); keyListener.onKeyUp = function () { var _local1 = Key.getCode(); if (((_local1 == 32) && (SelectingTiles)) && (!ShowingHelp)) { i = 0; while (i <= PieceArray.length) { LevelBuilderMenu.TileMenu["Box" + PieceArray[i]].removeMovieClip(); i++; } PieceArray.splice(0, PieceArray.length); trace("Array: " + PieceArray); ChangeDragger("Bitmap"); } if (!ShowingHelp) { if (_local1 == 32) { Deleting = false; if (PieceArray[0] >= AS) { ChangeDragger("Bitmap", "", true); } else { ChangeDragger("Bitmap"); } } if (_local1 == 84) { if (Allowed("PrepareLevelVars")) { Playing = true; Level = 0; PrepareLevelVars(); gotoAndStop ("Game"); } } if (_local1 == 69) { if (Allowed("PrepareLevelVars")) { if ((!ShowingHelp) && (!SelectingTiles)) { ShowingHelp = true; attachMovie("InfoBox", "InfoBox", getNextHighestDepth()); InfoBox._x = 275; InfoBox._y = 225; InfoBox.gotoAndStop("Export"); PrepareLevelVars(true); PrepareLevelCode(); InfoBox.LevelCodeT.text = Encrypted; } else if (ShowingHelp && (!SelectingTiles)) { InfoBox.removeMovieClip(); ShowingHelp = false; Down = false; } } } if (_local1 == 77) { if ((!SelectingTiles) && (!ShowingHelp)) { OpenTileMenu(); } else if (SelectingTiles && (!ShowingHelp)) { SelectingTiles = false; LevelBuilderMenu.TileMenu.removeMovieClip(); } } if (_local1 == 72) { if ((!ShowingHelp) && (!SelectingTiles)) { ShowingHelp = true; attachMovie("InfoBox", "InfoBox", getNextHighestDepth()); InfoBox._x = 275; InfoBox._y = 225; InfoBox.gotoAndStop("Instructions"); } else if (ShowingHelp && (!SelectingTiles)) { InfoBox.removeMovieClip(); ShowingHelp = false; } } if (_local1 == 83) { } } }; LevelBuilderMenu.TestButton.onRelease = function () { if (Allowed("PrepareLevelVars")) { Playing = true; Level = 0; PrepareLevelVars(); gotoAndStop ("Game"); } }; LevelBuilderMenu.MenuButton.onRelease = function () { PrepareLevelVars(false); box.removeMovieClip(); gotoAndStop ("Menu"); }; LevelBuilderMenu.ExportButton.onRelease = function () { if (Allowed("PrepareLevelVars")) { if ((!ShowingHelp) && (!SelectingTiles)) { ShowingHelp = true; attachMovie("InfoBox", "InfoBox", getNextHighestDepth()); InfoBox._x = 275; InfoBox._y = 225; InfoBox.gotoAndStop("Export"); PrepareLevelVars(true); PrepareLevelCode(); InfoBox.LevelCodeT.text = Encrypted; } else if (ShowingHelp && (!SelectingTiles)) { InfoBox.removeMovieClip(); ShowingHelp = false; Down = false; } } }; Delete.onRelease = function () { if ((!ShowingHelp) && (!SelectingTiles)) { ShowingHelp = true; attachMovie("InfoBox", "InfoBox", getNextHighestDepth()); InfoBox._x = 275; InfoBox._y = 225; InfoBox.gotoAndStop("AreYouSure"); } }; LevelBuilderMenu.InstructionsButton.onRelease = function () { if ((!ShowingHelp) && (!SelectingTiles)) { ShowingHelp = true; attachMovie("InfoBox", "InfoBox", getNextHighestDepth()); InfoBox._x = 275; InfoBox._y = 225; InfoBox.gotoAndStop("Instructions"); } else if (ShowingHelp && (!SelectingTiles)) { InfoBox.removeMovieClip(); ShowingHelp = false; Down = false; } }; LevelBuilderMenu.TilesButton.onRelease = function () { if ((!SelectingTiles) && (!ShowingHelp)) { OpenTileMenu(); } else if (SelectingTiles && (!ShowingHelp)) { SelectingTiles = false; LevelBuilderMenu.TileMenu.removeMovieClip(); } };
Frame 10
LevelCodeT.text = Encrypted; TestOEButton.onRelease = function () { Level = 0; gotoAndStop ("Game"); }; CopyButton.onRelease = function () { System.setClipboard(LevelCodeT.text); }; BacktoMenuButton.onRelease = function () { gotoAndStop ("Menu"); }; vars = new LoadVars(); save_check = new LoadVars(); SaveBtn.onRelease = function () { vars.LevelInfo = LevelCodeT.text; vars.Submitter = Submitter.text; vars.LevelName = LevelName.text; save_check.onLoad = function () { if (this.response == "passed") { Message.text = "Success!"; } else if ((this.response = "named")) { Message.text = "Level Name is already used."; } else if ((this.response = "level")) { Message.text = "Level already submitted."; } }; vars.sendAndLoad("http://www.fullergames.com/Ninja/save_level.php", save_check, "POST"); };
Frame 11
gotoAndStop ("Game");
Frame 12
stop(); BacktoMenuButton.onRelease = function () { gotoAndStop ("Menu"); };
Frame 13
function SetText() { mainTimeLine[Changing + "Key"].text = GetEnglish(keys["" + Changing]); } function GetEnglish(keyCode) { if (keyCode == 8) { return("BackSpace"); } if (keyCode == 19) { return("Pause/Break"); } if (keyCode == 145) { return("ScrollLock"); } if (keyCode == 144) { return("NumLock"); } if (keyCode == 46) { return("Delete"); } if (keyCode == 45) { return("Insert"); } if (keyCode == 40) { return("Down"); } if (keyCode == 39) { return("Right"); } if (keyCode == 38) { return("Up"); } if (keyCode == 37) { return("Left"); } if (keyCode == 9) { return("Tab"); } if (keyCode == 13) { return("Enter"); } if (keyCode == 16) { return("Shift"); } if (keyCode == 17) { return("Ctrl"); } if (keyCode == 20) { return("Caps Lock"); } if (keyCode == 27) { return("Esc"); } if (keyCode == 32) { return("Space"); } if (keyCode == 33) { return("Page Up"); } if (keyCode == 34) { return("Page Down"); } if (keyCode == 35) { return("End"); } if (keyCode == 36) { return("Home"); } return(chr(keyCode)); } trace("M:" + M); if (!M) { Slide2YVal = SliderBar._y + 100; } if (!SFX) { SlideYVal = SliderBar2._y + 100; } ScrollingOut = true; var OptTextTween = (new mx.transitions.Tween(OptText, "_y", mx.transitions.easing.Strong.easeOut, -400, OptText._y, 1.5, true)); var ChangeLeftTween = (new mx.transitions.Tween(ChangeLeft, "_y", mx.transitions.easing.Strong.easeOut, -200, ChangeLeft._y, 1.5, true)); var ChangeRightTween = (new mx.transitions.Tween(ChangeRight, "_y", mx.transitions.easing.Strong.easeOut, -150, ChangeRight._y, 1.5, true)); var ChangeJumpTween = (new mx.transitions.Tween(ChangeJump, "_y", mx.transitions.easing.Strong.easeOut, -100, ChangeJump._y, 1.5, true)); var ChangeKunaiTween = (new mx.transitions.Tween(ChangeKunai, "_y", mx.transitions.easing.Strong.easeOut, -50, ChangeKunai._y, 1.5, true)); var SliderTween = (new mx.transitions.Tween(Slider, "_y", mx.transitions.easing.Strong.easeOut, -50, SlideYVal, 1.5, true)); var Slider2Tween = (new mx.transitions.Tween(Slider2, "_y", mx.transitions.easing.Strong.easeOut, -50, Slide2YVal, 1.5, true)); var SliderBarTween = (new mx.transitions.Tween(SliderBar, "_y", mx.transitions.easing.Strong.easeOut, -50, SliderBar._y, 1.5, true)); var SliderBar2Tween = (new mx.transitions.Tween(SliderBar2, "_y", mx.transitions.easing.Strong.easeOut, -50, SliderBar2._y, 1.5, true)); var RDBTween = (new mx.transitions.Tween(RDB, "_y", mx.transitions.easing.Strong.easeOut, -50, RDB._y, 1.5, true)); var EDBTween = (new mx.transitions.Tween(EDB, "_y", mx.transitions.easing.Strong.easeOut, -50, EDB._y, 1.5, true)); var BacktoMenuButtonTween = (new mx.transitions.Tween(BacktoMenuButton, "_y", mx.transitions.easing.Strong.easeOut, -50, BacktoMenuButton._y, 1.5, true)); var MessageTween = (new mx.transitions.Tween(Message, "_y", mx.transitions.easing.Strong.easeOut, -50, Message._y, 1.5, true)); var IncreaseQualTween = (new mx.transitions.Tween(IncreaseQual, "_y", mx.transitions.easing.Strong.easeOut, -50, IncreaseQual._y, 1.5, true)); var DecreaseQualTween = (new mx.transitions.Tween(DecreaseQual, "_y", mx.transitions.easing.Strong.easeOut, -50, DecreaseQual._y, 1.5, true)); var QualityDisplayTween = (new mx.transitions.Tween(QualityDisplay, "_y", mx.transitions.easing.Strong.easeOut, -50, QualityDisplay._y, 1.5, true)); var RightKeyTween = (new mx.transitions.Tween(RightKey, "_y", mx.transitions.easing.Strong.easeOut, -110, RightKey._y, 1.5, true)); var LeftKeyTween = (new mx.transitions.Tween(LeftKey, "_y", mx.transitions.easing.Strong.easeOut, -140, LeftKey._y, 1.5, true)); var JumpKeyTween = (new mx.transitions.Tween(JumpKey, "_y", mx.transitions.easing.Strong.easeOut, -80, JumpKey._y, 1.5, true)); var KunaiKeyTween = (new mx.transitions.Tween(KunaiKey, "_y", mx.transitions.easing.Strong.easeOut, -50, KunaiKey._y, 1.5, true)); KunaiKeyTween.onMotionFinished = function () { ScrollingOut = false; }; if (mainTimeLine._quality == "HIGH") { QualityDisplay.text = "High"; } else if (mainTimeLine._quality == "MEDIUM") { QualityDisplay.text = "Medium"; } else if (mainTimeLine._quality == "LOW") { QualityDisplay.text = "Low"; } LeftKey.text = GetEnglish(keys.Left); RightKey.text = GetEnglish(keys.Right); JumpKey.text = GetEnglish(keys.Jump); KunaiKey.text = GetEnglish(keys.Kunai); AimST.text = AimS; stop(); var Changing = ""; BacktoMenuButton.onRelease = function () { trace("CLICKED!"); ScrollingOut = true; Key.removeListener(keyListener); var _local19 = new mx.transitions.Tween(OptText, "_y", mx.transitions.easing.Strong.easeOut, OptText._y, 550, 1.5, true); var _local5 = new mx.transitions.Tween(ChangeLeft, "_y", mx.transitions.easing.Strong.easeOut, ChangeLeft._y, 520, 1.5, true); var _local15 = new mx.transitions.Tween(ChangeRight, "_y", mx.transitions.easing.Strong.easeOut, ChangeRight._y, 520, 1.5, true); var _local18 = new mx.transitions.Tween(ChangeJump, "_y", mx.transitions.easing.Strong.easeOut, ChangeJump._y, 530, 1.5, true); var _local17 = new mx.transitions.Tween(ChangeKunai, "_y", mx.transitions.easing.Strong.easeOut, ChangeKunai._y, 560, 1.5, true); var _local11 = new mx.transitions.Tween(Slider, "_y", mx.transitions.easing.Strong.easeOut, SlideYVal, 520, 1.5, true); var _local10 = new mx.transitions.Tween(Slider2, "_y", mx.transitions.easing.Strong.easeOut, Slide2YVal, 520, 1.5, true); var _local6 = new mx.transitions.Tween(SliderBar, "_y", mx.transitions.easing.Strong.easeOut, SliderBar._y, 520, 1.5, true); var _local13 = new mx.transitions.Tween(SliderBar2, "_y", mx.transitions.easing.Strong.easeOut, SliderBar2._y, 520, 1.5, true); var _local20 = new mx.transitions.Tween(RDB, "_y", mx.transitions.easing.Strong.easeOut, RDB._y, 500, 1.5, true); var _local16 = new mx.transitions.Tween(EDB, "_y", mx.transitions.easing.Strong.easeOut, EDB._y, 500, 1.5, true); var _local14 = new mx.transitions.Tween(IncreaseQual, "_y", mx.transitions.easing.Strong.easeOut, IncreaseQual._y, 520, 1.5, true); var _local9 = new mx.transitions.Tween(DecreaseQual, "_y", mx.transitions.easing.Strong.easeOut, DecreaseQual._y, 520, 1.5, true); var _local7 = new mx.transitions.Tween(QualityDisplay, "_y", mx.transitions.easing.Strong.easeOut, QualityDisplay._y, 520, 1.5, true); var _local3 = new mx.transitions.Tween(RightKey, "_y", mx.transitions.easing.Strong.easeOut, RightKey._y, 520, 1.5, true); var _local12 = new mx.transitions.Tween(LeftKey, "_y", mx.transitions.easing.Strong.easeOut, LeftKey._y, 520, 1.5, true); var _local4 = new mx.transitions.Tween(JumpKey, "_y", mx.transitions.easing.Strong.easeOut, JumpKey._y, 520, 1.5, true); var _local8 = new mx.transitions.Tween(KunaiKey, "_y", mx.transitions.easing.Strong.easeOut, KunaiKey._y, 520, 1.5, true); var _local2 = new mx.transitions.Tween(BacktoMenuButton, "_y", mx.transitions.easing.Strong.easeOut, BacktoMenuButton._y, 500, 1.5, true); var _local1 = new mx.transitions.Tween(Message, "_y", mx.transitions.easing.Strong.easeOut, Message._y, 520, 1.5, true); _local1.onMotionFinished = function () { gotoAndStop ("Menu"); }; }; keyListener = new Object(); Key.addListener(keyListener); keyListener.onKeyUp = function () { var _local1 = Key.getCode(); keys["" + Changing] = _local1; mainTimeLine[Changing + "Key"].text = GetEnglish(_local1); SavedGame = SharedObject.getLocal("NinjaSave"); SavedGame.data.Controls = keys; SavedGame.flush(); Changing = ""; }; ChangeLeft.onRelease = function () { SetText(); Changing = "Left"; mainTimeLine[Changing + "Key"].text = "Press a key!"; }; ChangeRight.onRelease = function () { SetText(); Changing = "Right"; mainTimeLine[Changing + "Key"].text = "Press a key!"; }; ChangeJump.onRelease = function () { SetText(); Changing = "Jump"; mainTimeLine[Changing + "Key"].text = "Press a key!"; }; ChangeRope.onRelease = function () { SetText(); Changing = "Rope"; mainTimeLine[Changing + "Key"].text = "Press a key!"; }; ChangeKunai.onRelease = function () { SetText(); Changing = "Kunai"; mainTimeLine[Changing + "Key"].text = "Press a key!"; }; IncreaseQual.onRelease = function () { if (mainTimeLine._quality == "HIGH") { mainTimeLine._quality = "LOW"; QualityDisplay.text = "Low"; } else if (mainTimeLine._quality == "MEDIUM") { mainTimeLine._quality = "HIGH"; QualityDisplay.text = "High"; } else if (mainTimeLine._quality == "LOW") { mainTimeLine._quality = "MEDIUM"; QualityDisplay.text = "Medium"; } }; DecreaseQual.onRelease = function () { if (mainTimeLine._quality == "HIGH") { mainTimeLine._quality = "MEDIUM"; QualityDisplay.text = "Medium"; } else if (mainTimeLine._quality == "MEDIUM") { mainTimeLine._quality = "LOW"; QualityDisplay.text = "Low"; } else if (mainTimeLine._quality == "LOW") { mainTimeLine._quality = "HIGH"; QualityDisplay.text = "High"; } }; EDB.onRelease = function () { SavedGame = SharedObject.getLocal("NinjaSave"); SavedGame.data.TimesNum = eval (undefined)(); SavedGame.data.TimesString = eval (undefined)(); i = 0; while (i <= 6) { BestTime[i] = 1E16; BestTimeT[i] = "99:59.99"; i++; } Message.text = "Saved data erased."; }; RDB.onRelease = function () { keys.Left = 65; keys.Right = 68; keys.Jump = 87; keys.Kunai = 32; AimS = 5; SavedGame = SharedObject.getLocal("NinjaSave"); SavedGame.data.Controls = keys; SavedGame.data.AimerSens = AimS; SavedGame.flush(); LeftKey.text = GetEnglish(keys.Left); RightKey.text = GetEnglish(keys.Right); JumpKey.text = GetEnglish(keys.Jump); RopeKey.text = GetEnglish(keys.Rope); KunaiKey.text = GetEnglish(keys.Kunai); AimST.text = AimS; Message.text = "Defaults restored."; }; onMouseUp = function () { Slider.stopDrag(); Slider2.stopDrag(); }; Slider2.onPress = function () { Slider2.startDrag(true, 413.5, SliderBar2._y, 413.5, SliderBar2._y + 100); }; Slider2.onMouseMove = function () { if (!ScrollingOut) { newPoint = new Object(); newPoint.x = this._x; newPoint.y = this._y; SliderBar2.globalToLocal(newPoint); Vol = (SliderBar2._height - ((SliderBar2._height + SliderBar2._y) - Slider2._y)) / SliderBar2._height; Vol = Vol * -100; Vol = -100 - Vol; Vol = Vol + 1.5; LS.setVolume(Vol * 2); MS.setVolume(Vol / 2); GoS.setVolume(Vol); LBS.setVolume(Vol); WS.setVolume(Vol); VolBG = Vol; if (VolBG > 0) { M = false; } else { M = true; } Slide2YVal = Slider2._y; SavedGame = SharedObject.getLocal("NinjaSave"); SavedGame.data.Vol2 = Vol; SavedGame.data.VolY2 = Slide2YVal; SavedGame.flush(); } }; Slider.onPress = function () { Slider.startDrag(true, 475.5, SliderBar._y, 475.5, SliderBar._y + 100); }; Slider.onMouseMove = function () { if (!ScrollingOut) { newPoint = new Object(); newPoint.x = this._x; newPoint.y = this._y; SliderBar.globalToLocal(newPoint); Vol = (SliderBar._height - ((SliderBar._height + SliderBar._y) - Slider._y)) / SliderBar._height; Vol = Vol * -100; Vol = -100 - Vol; Vol = Vol + 1.5; SlideYVal = Slider._y; SavedGame = SharedObject.getLocal("NinjaSave"); VolSFX = Vol; if (VolSFX > 0) { SFX = false; } else { SFX = true; } CS.setVolume(VolSFX / 4); GS.setVolume(VolSFX * 2); HS.setVolume(VolSFX * 2); ThrKunS.setVolume(VolSFX * 2); ThrRopS.setVolume(VolSFX * 2); StpS.setVolume(VolSFX * 2); JmpS.setVolume(VolSFX * 2); KBatS.setVolume(VolSFX * 2); SavedGame.data.Vol = Vol; SavedGame.data.VolY = SlideYVal; SavedGame.flush(); } };
Frame 14
GoS.start(0, 9999); mainTimeLine.BestTimeText = mainTimeLine.BestTimeT[Level]; if (Level == 0) { EditGOBtn._x = 485.3; EditGOBtn._y = 144.11; } EditGOBtn.onRelease = function () { GoS.stop(); gotoAndStop ("LevelBuilder"); }; TryAgainButton.onRelease = function () { GoS.stop(); gotoAndStop ("Game"); }; LevelSelectButton.onRelease = function () { GoS.stop(); gotoAndStop ("Menu"); };
Frame 15
function time_to_string(time_to_convert) { var _local3 = Math.floor(time_to_convert / 3600000); var _local1 = time_to_convert - (_local3 * 3600000); var _local4 = Math.floor(_local1 / 60000); _local1 = _local1 - (_local4 * 60000); var _local2 = Math.floor(_local1 / 1000); _local1 = _local1 - (_local2 * 1000); var _local5 = Math.floor(_local1 / 10); var _local10 = ((_local3 < 10) ? ("0" + _local3.toString()) : (_local3.toString())); var _local8 = ((_local4 < 10) ? ("0" + _local4.toString()) : (_local4.toString())); var _local6 = ((_local2 < 10) ? ("0" + _local2.toString()) : (_local2.toString())); var _local7 = ((_local5 < 10) ? ("0" + _local5.toString()) : ((hundredths = _local5.toString()))); return((((_local8 + ":") + _local6) + ".") + _local7); } function SendRating(RateNum) { if (LoadedALevel) { vars = new LoadVars(); save_check = new LoadVars(); vars.Rating = RateNum; vars.LevelInfo = LevelInfoT.text; vars.Submitter = SubmitterT.text; vars.LevelName = LevelNameT.text; save_check.onLoad = function () { if (this.response == "passed") { Message.text = "Success!"; RatingT.text = Math.round(this.Rate * 100) / 100; } else if (this.response == "voted") { Message.text = "You have already voted once."; } else { Message.text = "Failed"; } }; vars.sendAndLoad("http://www.fullergames.com/Ninja/rate_level.php", save_check, "POST"); } else { Message.text = "Please load a level."; } } function ImportLevel(LevelSet, Exception, Ecode) { trace("Called"); var _local3 = LevelSet + "X"; var _local2 = LevelSet + "Y"; var _local7 = LevelSet + "X"; var _local6 = LevelSet + "Y"; Decrypted = ""; mainTimeLine[("AccLoc" + LevelSet) + "X"] = new Array(); mainTimeLine[("AccLoc" + LevelSet) + "Y"] = new Array(); mainTimeLine["AccType" + LevelSet] = new Array(); mainTimeLine[("ColLoc" + LevelSet) + "X"] = new Array(); mainTimeLine[("ColLoc" + LevelSet) + "Y"] = new Array(); EnviStartYA[LevelSet] = undefined; EnviStartXA[LevelSet] = undefined; CharStartYA[LevelSet] = undefined; CharStartXA[LevelSet] = undefined; LRBA[LevelSet] = undefined; LLBA[LevelSet] = undefined; LTBA[LevelSet] = undefined; LBBA[LevelSet] = undefined; Map[LevelSet] = []; var _local5 = ""; var _local4 = 0; if ((LevelSet == 0) && (!Exception)) { ImportCode = Import.ImportCodeT.text; } else if ((LevelSet == 0) && (Exception)) { ImportCode = ECode; } else if (LevelSet > 0) { ImportCode = LevelCodeValue[LevelSet]; } else { ImportCode = RandomLevelValue; } i = 0; while (i < ImportCode.length) { _local5 = ImportCode.substr(i, 1); _local4 = Encrypt.indexOf(_local5, 0); Decrypted = Decrypted + Decrypt.substr(_local4, 1); i++; } Start = 0; SingleValue = ""; Value = ""; x = 0; y = 0; if (Decrypted.indexOf("]") == -1) { } else { do { while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == ",") { if (Map[LevelSet][x] == undefined) { Map[LevelSet][x] = new Array(); } Start++; if (Value == "!") { Map[LevelSet][x][y] = undefined; } else { Map[LevelSet][x][y] = parseInt(Value); } Value = ""; y++; } else { if (SingleValue == "]") { if (Map[LevelSet][x] == undefined) { Map[LevelSet][x] = new Array(); } if (Value == "!") { Map[LevelSet][x][y] = undefined; } else { Map[LevelSet][x][y] = parseInt(Value); } Value = ""; y++; break; } Value = Value + SingleValue; Start++; } } x++; y = 0; Start++; SingleValue = Decrypted.substr(Start, 1); } while (SingleValue != "]"); Start++; x = 0; Value = ""; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == ",") { Start++; if (Value == "!") { mainTimeLine["ColLoc" + _local3][x] = undefined; } else { mainTimeLine["ColLoc" + _local3][x] = parseInt(Value); } Value = ""; x++; } else { if (SingleValue == "]") { if (Value == "!") { mainTimeLine["ColLoc" + _local3][x] = undefined; } else { mainTimeLine["ColLoc" + _local3][x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } } Start++; x = 0; Value = ""; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == ",") { Start++; if (Value == "!") { mainTimeLine["ColLoc" + _local2][x] = undefined; } else { mainTimeLine["ColLoc" + _local2][x] = parseInt(Value); } Value = ""; x++; } else { if (SingleValue == "]") { if (Value == "!") { mainTimeLine["ColLoc" + _local2][x] = undefined; } else { mainTimeLine["ColLoc" + _local2][x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } } Start++; Value = ""; x = LevelSet; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == "]") { if (Value == "!") { EnviStartXA[x] = undefined; } else { EnviStartXA[x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } Start++; Value = ""; x = LevelSet; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == "]") { if (Value == "!") { EnviStartYA[x] = undefined; } else { EnviStartYA[x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } Start++; Value = ""; x = LevelSet; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == "]") { if (Value == "!") { CharStartXA[x] = undefined; } else { CharStartXA[x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } Start++; Value = ""; x = LevelSet; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == "]") { if (Value == "!") { CharStartYA[x] = undefined; } else { CharStartYA[x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } Start++; x = 0; Value = ""; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == ",") { Start++; if (Value == "!") { mainTimeLine[("AccLoc" + LevelSet) + "X"][x] = undefined; } else { mainTimeLine[("AccLoc" + LevelSet) + "X"][x] = parseInt(Value); } Value = ""; x++; } else { if (SingleValue == "]") { if (Value == "!") { mainTimeLine[("AccLoc" + LevelSet) + "X"][x] = undefined; } else if (Value != "") { mainTimeLine[("AccLoc" + LevelSet) + "X"][x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } } Start++; x = 0; Value = ""; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == ",") { Start++; if (Value == "!") { mainTimeLine[("AccLoc" + LevelSet) + "Y"][x] = undefined; } else { mainTimeLine[("AccLoc" + LevelSet) + "Y"][x] = parseInt(Value); } Value = ""; x++; } else { if (SingleValue == "]") { if (Value == "!") { mainTimeLine[("AccLoc" + LevelSet) + "Y"][x] = undefined; } else if (Value != "") { mainTimeLine[("AccLoc" + LevelSet) + "Y"][x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } } Start++; x = 0; Value = ""; while (true) { SingleValue = Decrypted.substr(Start, 1); if (SingleValue == ",") { Start++; if (Value == "!") { mainTimeLine["AccType" + LevelSet][x] = undefined; } else { mainTimeLine["AccType" + LevelSet][x] = parseInt(Value); } Value = ""; x++; } else { if (SingleValue == "]") { if (Value == "!") { mainTimeLine["AccType" + LevelSet][x] = undefined; } else { mainTimeLine["AccType" + LevelSet][x] = parseInt(Value); } Value = ""; x++; break; } Value = Value + SingleValue; Start++; } } stopMouse(); Import.removeMovieClip(); Level = LevelSet; if (PlayingMenu) { MS.stop(); PlayingMenu = false; } gotoAndStop ("Game"); } } stop(); if (!PlayingMenu) { PlayingMenu = true; MS.start(0, 9999); } LoadedALevel = false; LevelCounter.text = "Loading.."; LoadedLevels = new LoadVars(); LoadedLevels.onLoad = function () { LevelCounter.text = ("There are currently " + LoadedLevels.LevelAmount) + " levels in the database!"; }; LoadedLevels.load("http://www.fullergames.com/Ninja/get_levelnumbers.php"); BacktoMenuButton.onRelease = function () { gotoAndStop ("Menu"); }; LoadedLevel = true; myData = new LoadVars(); LRLBtn.onRelease = function () { if (LoadedLevel) { myData = new LoadVars(); LoadedLevel = false; Message.text = "Loading.."; myData.onLoad = function () { LoadedLevel = true; trace("Time0: " + myData.Time0); placeTheDataIntoTheRightPlace(); Message.text = "Loaded!"; LoadedALevel = true; }; myData.load("http://www.fullergames.com/Ninja/load_vars.php"); } else { Message.text = "Please wait, loading. If not loading, check your security settings or internet connection."; } }; placeTheDataIntoTheRightPlace = function () { RandomLevelValue = myData.LIRet; LevelNameVariable = myData.LNRet; SubmitterVariable = myData.NameRet; LevelInfoT.text = RandomLevelValue; if (myData.Time0 != "---") { Time0L.text = (time_to_string(myData.Time0) + " by ") + myData.TimeName0; } else { Time0L.text = "---"; } if (myData.Time1 != "---") { Time1L.text = (time_to_string(myData.Time1) + " by ") + myData.TimeName1; } else { Time1L.text = "---"; } if (myData.Time2 != "---") { Time2L.text = (time_to_string(myData.Time2) + " by ") + myData.TimeName2; } else { Time2L.text = "---"; } trace(myData.Rating); if (myData.Rating == "Be the first to rate this level!") { RatingT.text = "Be the first!"; } else { RatingT.text = Math.round(myData.Rating * 100) / 100; } LevelNameT.text = myData.LNRet; SubmitterT.text = myData.NameRet; }; PlayBtn.onRelease = function () { trace("Wee"); if (LoadedALevel) { ImportLevel(-1); } else { Message.text = "Please load a level!"; } }; vars = new LoadVars(); save_check = new LoadVars(); SSTBtn.onRelease = function () { vars.Time = TimeTestT.text; vars.TimeHolder = TimeHolderTestT.text; vars.Submitter = SubmitterT.text; vars.LevelInfo = LevelInfoT.text; vars.LevelName = LevelNameT.text; trace(vars.Time); trace(vars.TimeHolder); trace(vars.Submitter); trace(vars.LevelInfo); trace(vars.LevelName); save_check.onLoad = function () { if (this.response == "passed") { Message.text = "Success!"; } else { Message.text = "Fail!"; } }; vars.sendAndLoad("http://www.fullergames.com/Ninja/save_time.php", save_check, "POST"); trace(vars.Stringt); }; vars = new LoadVars(); save_check = new LoadVars(); Rate1.onRelease = function () { SendRating(1); }; Rate2.onRelease = function () { SendRating(2); }; Rate3.onRelease = function () { SendRating(3); }; Rate4.onRelease = function () { SendRating(4); }; Rate5.onRelease = function () { SendRating(5); };
Frame 16
stop(); Link.onPress = function () { getURL ("http://www.FullerGames.com"); };
Frame 17
gotoAndStop ("LevelBuilder");
Symbol 7 MovieClip [weaponSCARLogo] Frame 1
stop();
Symbol 25 MovieClip [armSCARF] Frame 1
stop();
Symbol 25 MovieClip [armSCARF] Frame 3
gotoAndStop ("idle");
Symbol 25 MovieClip [armSCARF] Frame 35
gotoAndStop ("idle");
Symbol 28 MovieClip [armM4B] Frame 1
stop();
Symbol 28 MovieClip [armM4B] Frame 3
gotoAndStop ("idle");
Symbol 28 MovieClip [armM4B] Frame 35
gotoAndStop ("idle");
Symbol 65 Button
on (release) { getURL ("http://www.playhub.com/?utm_medium=brandedgames_external&utm_campaign=ninja_plus_2&utm_source=domain.com&utm_content=ingame", "_blank"); }
Symbol 1137 MovieClip [__Packages.mx.transitions.OnEnterFrameBeacon] Frame 0
class mx.transitions.OnEnterFrameBeacon { function OnEnterFrameBeacon () { } static function init() { var _local4 = _global.MovieClip; if (!_root.__OnEnterFrameBeacon) { mx.transitions.BroadcasterMX.initialize(_local4); var _local3 = _root.createEmptyMovieClip("__OnEnterFrameBeacon", 9876); _local3.onEnterFrame = function () { _global.MovieClip.broadcastMessage("onEnterFrame"); }; } } static var version = "1.1.0.52"; }
Symbol 1138 MovieClip [__Packages.mx.transitions.BroadcasterMX] Frame 0
class mx.transitions.BroadcasterMX { var _listeners; function BroadcasterMX () { } static function initialize(o, dontCreateArray) { if (o.broadcastMessage != undefined) { delete o.broadcastMessage; } o.addListener = mx.transitions.BroadcasterMX.prototype.addListener; o.removeListener = mx.transitions.BroadcasterMX.prototype.removeListener; if (!dontCreateArray) { o._listeners = new Array(); } } function addListener(o) { removeListener(o); if (broadcastMessage == undefined) { broadcastMessage = mx.transitions.BroadcasterMX.prototype.broadcastMessage; } return(_listeners.push(o)); } function removeListener(o) { var _local2 = _listeners; var _local3 = _local2.length; while (_local3--) { if (_local2[_local3] == o) { _local2.splice(_local3, 1); if (!_local2.length) { broadcastMessage = undefined; } return(true); } } return(false); } function broadcastMessage() { var _local5 = String(arguments.shift()); var _local4 = _listeners.concat(); var _local6 = _local4.length; var _local3 = 0; while (_local3 < _local6) { _local4[_local3][_local5].apply(_local4[_local3], arguments); _local3++; } } static var version = "1.1.0.52"; }
Symbol 1139 MovieClip [__Packages.mx.transitions.Tween] Frame 0
class mx.transitions.Tween { var obj, prop, begin, useSeconds, _listeners, addListener, prevTime, _time, looping, _duration, broadcastMessage, isPlaying, _fps, prevPos, _pos, change, _intervalID, _startTime; function Tween (obj, prop, func, begin, finish, duration, useSeconds) { mx.transitions.OnEnterFrameBeacon.init(); if (!arguments.length) { return; } this.obj = obj; this.prop = prop; this.begin = begin; position = (begin); this.duration = (duration); this.useSeconds = useSeconds; if (func) { this.func = func; } this.finish = (finish); _listeners = []; addListener(this); start(); } function set time(t) { prevTime = _time; if (t > duration) { if (looping) { rewind(t - _duration); update(); broadcastMessage("onMotionLooped", this); } else { if (useSeconds) { _time = _duration; update(); } stop(); broadcastMessage("onMotionFinished", this); } } else if (t < 0) { rewind(); update(); } else { _time = t; update(); } //return(time); } function get time() { return(_time); } function set duration(d) { _duration = (((d == null) || (d <= 0)) ? (_global.Infinity) : (d)); //return(duration); } function get duration() { return(_duration); } function set FPS(fps) { var _local2 = isPlaying; stopEnterFrame(); _fps = fps; if (_local2) { startEnterFrame(); } //return(FPS); } function get FPS() { return(_fps); } function set position(p) { setPosition(p); //return(position); } function setPosition(p) { prevPos = _pos; obj[prop] = (_pos = p); broadcastMessage("onMotionChanged", this, _pos); updateAfterEvent(); } function get position() { return(getPosition()); } function getPosition(t) { if (t == undefined) { t = _time; } return(func(t, begin, change, _duration)); } function set finish(f) { change = f - begin; //return(finish); } function get finish() { return(begin + change); } function continueTo(finish, duration) { begin = position; this.finish = (finish); if (duration != undefined) { this.duration = (duration); } start(); } function yoyo() { continueTo(begin, time); } function startEnterFrame() { if (_fps == undefined) { _global.MovieClip.addListener(this); } else { _intervalID = setInterval(this, "onEnterFrame", 1000 / _fps); } isPlaying = true; } function stopEnterFrame() { if (_fps == undefined) { _global.MovieClip.removeListener(this); } else { clearInterval(_intervalID); } isPlaying = false; } function start() { rewind(); startEnterFrame(); broadcastMessage("onMotionStarted", this); } function stop() { stopEnterFrame(); broadcastMessage("onMotionStopped", this); } function resume() { fixTime(); startEnterFrame(); broadcastMessage("onMotionResumed", this); } function rewind(t) { _time = ((t == undefined) ? 0 : (t)); fixTime(); update(); } function fforward() { time = (_duration); fixTime(); } function nextFrame() { if (useSeconds) { time = ((getTimer() - _startTime) / 1000); } else { time = (_time + 1); } } function onEnterFrame() { nextFrame(); } function prevFrame() { if (!useSeconds) { time = (_time - 1); } } function toString() { return("[Tween]"); } function fixTime() { if (useSeconds) { _startTime = getTimer() - (_time * 1000); } } function update() { position = (getPosition(_time)); } static var version = "1.1.0.52"; static var __initBeacon = mx.transitions.OnEnterFrameBeacon.init(); static var __initBroadcaster = mx.transitions.BroadcasterMX.initialize(mx.transitions.Tween.prototype, true); function func(t, b, c, d) { return(((c * t) / d) + b); } }
Symbol 1140 MovieClip [__Packages.mx.transitions.easing.Strong] Frame 0
class mx.transitions.easing.Strong { function Strong () { } static function easeIn(t, b, c, d) { t = t / d; return((((((c * t) * t) * t) * t) * t) + b); } static function easeOut(t, b, c, d) { t = (t / d) - 1; return((c * (((((t * t) * t) * t) * t) + 1)) + b); } static function easeInOut(t, b, c, d) { t = t / (d / 2); if (t < 1) { return(((((((c / 2) * t) * t) * t) * t) * t) + b); } t = t - 2; return(((c / 2) * (((((t * t) * t) * t) * t) + 2)) + b); } static var version = "1.1.0.52"; }
Symbol 1141 MovieClip [__Packages.mochi.as2.MochiSync] Frame 0
class mochi.as2.MochiSync { var _syncContainer; function MochiSync () { _syncContainer = {}; } function getProp(name) { return(_syncContainer[name]); } function setProp(name, value) { if (_syncContainer[name] == value) { return(undefined); } _syncContainer[name] = value; mochi.as2.MochiServices.send("sync_propUpdate", {name:name, value:value}); } function triggerEvent(eventType, args) { switch (eventType) { case SYNC_REQUEST : mochi.as2.MochiServices.send("sync_syncronize", _syncContainer); break; case SYNC_PROPERTY : _syncContainer[args.name] = args.value; } } static var SYNC_REQUEST = "SyncRequest"; static var SYNC_PROPERTY = "UpdateProperty"; }
Symbol 1142 MovieClip [__Packages.mochi.as2.MochiServices] Frame 0
class mochi.as2.MochiServices { static var _id, _container, _clip, _sendChannelName, __get__comChannelName, onError, _listenChannel, _sendChannel; function MochiServices () { } static function get id() { return(_id); } static function get clip() { return(_container); } static function get childClip() { return(_clip); } static function getVersion() { return("3.3 as2"); } static function allowDomains(server) { var _local1 = server.split("/")[2].split(":")[0]; if (System.security) { if (System.security.allowDomain) { System.security.allowDomain("*"); System.security.allowDomain(_local1); } if (System.security.allowInsecureDomain) { System.security.allowInsecureDomain("*"); System.security.allowInsecureDomain(_local1); } } return(_local1); } static function get isNetworkAvailable() { if (System.security) { var _local1 = System.security; if (_local1.sandboxType == "localWithFile") { return(false); } } return(true); } static function set comChannelName(val) { if (val != undefined) { if (val.length > 3) { _sendChannelName = val + "_fromgame"; initComChannels(); } } //return(__get__comChannelName()); } static function get connected() { return(_connected); } static function connect(id, clip, onError) { warnID(id, false); if ((!_connected) && (_clip == undefined)) { trace("MochiServices Connecting..."); _connecting = true; init(id, clip); } if (onError != undefined) { mochi.as2.MochiServices.onError = onError; } else if (mochi.as2.MochiServices.onError == undefined) { mochi.as2.MochiServices.onError = function (errorCode) { trace(errorCode); }; } } static function disconnect() { if (_connected || (_connecting)) { _connecting = (_connected = false); flush(true); if (_clip != undefined) { _clip.removeMovieClip(); delete _clip; } _listenChannel.close(); } } static function init(id, clip) { _id = id; if (clip != undefined) { _container = clip; } else { _container = _root; } loadCommunicator(id, _container); } static function loadCommunicator(id, clip) { var _local6 = "_mochiservices_com_" + id; var _local5 = new MovieClipLoader(); var _local3 = {}; if (_clip != null) { return(_clip); } if (!isNetworkAvailable) { return(null); } if (urlOptions().servURL) { _servURL = urlOptions().servURL; } var _local4 = _servURL + _services; if (urlOptions().servicesURL) { _local4 = urlOptions().servicesURL; } allowDomains(_local4); _clip = clip.createEmptyMovieClip(_local6, 10336, false); _listenChannelName = _listenChannelName + ((Math.floor(new Date().getTime()) + "_") + Math.floor(Math.random() * 99999)); listen(); if (_local3.waitInterval != null) { clearInterval(_local3.waitInterval); } _local3.onLoadError = loadError; _local3.onLoadStart = function (target_mc) { this.isLoading = true; }; _local3.startTime = getTimer(); _local3.wait = function () { if ((getTimer() - this.startTime) > 10000) { if (!this.isLoading) { mochi.as2.MochiServices.disconnect(); mochi.as2.MochiServices.onError.apply(null, ["IOError"]); } clearInterval(this.waitInterval); } }; _local3.waitInterval = setInterval(_local3, "wait", 1000); _local5.addListener(_local3); _local5.loadClip((((((_local4 + "?listenLC=") + _listenChannelName) + "&mochiad_options=") + escape(_root.mochiad_options)) + "&api_version=") + getVersion(), _clip); _sendChannel = new LocalConnection(); _sendChannel._queue = []; return(_clip); } static function loadError(target_mc, errorCode, httpStatus) { trace("MochiServices could not load."); disconnect(); onError.apply(null, [errorCode]); } static function onStatus(infoObject) { if (!(infoObject.level === "error")) { } else { _connected = false; _listenChannel.connect(_listenChannelName); } } static function listen() { _listenChannel = new LocalConnection(); _listenChannel.handshake = function (args) { mochi.as2.MochiServices.__set__comChannelName(args.newChannel); }; _listenChannel.allowDomain = function (d) { return(true); }; _listenChannel.allowInsecureDomain = _listenChannel.allowDomain; _listenChannel._nextcallbackID = 0; _listenChannel._callbacks = {}; _listenChannel.connect(_listenChannelName); trace("Waiting for MochiAds services to connect..."); } static function initComChannels() { if (!_connected) { _sendChannel.onStatus = function (infoObject) { mochi.as2.MochiServices.onStatus(infoObject); }; _sendChannel.send(_sendChannelName, "onReceive", {methodName:"handshakeDone"}); _sendChannel.send(_sendChannelName, "onReceive", {methodName:"registerGame", id:_id, clip:_clip, version:getVersion()}); _listenChannel.onStatus = function (infoObject) { mochi.as2.MochiServices.onStatus(infoObject); }; _listenChannel.onReceive = function (pkg) { var _local5 = pkg.callbackID; var _local4 = this._callbacks[_local5]; if (!_local4) { return(undefined); } var _local2 = _local4.callbackMethod; var _local3 = _local4.callbackObject; if (_local3 && (typeof(_local2) == "string")) { _local2 = _local3[_local2]; } if (_local2 != undefined) { _local2.apply(_local3, pkg.args); } delete this._callbacks[_local5]; }; _listenChannel.onEvent = function (pkg) { switch (pkg.target) { case "events" : mochi.as2.MochiEvents.triggerEvent(pkg.event, pkg.args); break; case "coins" : mochi.as2.MochiCoins.triggerEvent(pkg.event, pkg.args); break; case "sync" : mochi.as2.MochiServices.servicesSync.triggerEvent(pkg.event, pkg.args); } }; _listenChannel.onError = function () { mochi.as2.MochiServices.onError.apply(null, ["IOError"]); }; trace("[SERVICES_API] connected!"); _connecting = false; _connected = true; while (_sendChannel._queue.length > 0) { _sendChannel.send(_sendChannelName, "onReceive", _sendChannel._queue.shift()); } } } static function flush(error) { var _local1; var _local2; while (_sendChannel._queue.length > 0) { _local1 = _sendChannel._queue.shift(); if (_local1.callbackID != null) { _local2 = _listenChannel._callbacks[_local1.callbackID]; } delete _listenChannel._callbacks[_local1.callbackID]; if (error) { handleError(_local1.args, _local2.callbackObject, _local2.callbackMethod); } } } static function handleError(args, callbackObject, callbackMethod) { if (args != null) { if (args.onError != null) { args.onError.apply(null, ["NotConnected"]); } if ((args.options != null) && (args.options.onError != null)) { args.options.onError.apply(null, ["NotConnected"]); } } if (callbackMethod != null) { args = {}; args.error = true; args.errorCode = "NotConnected"; if ((callbackObject != null) && (typeof(callbackMethod) == "string")) { callbackObject[callbackMethod](args); } else if (callbackMethod != null) { callbackMethod.apply(args); } } } static function send(methodName, args, callbackObject, callbackMethod) { if (_connected) { _sendChannel.send(_sendChannelName, "onReceive", {methodName:methodName, args:args, callbackID:_listenChannel._nextcallbackID}); } else { if ((_clip == undefined) || (!_connecting)) { trace("Error: MochiServices not connected. Please call MochiServices.connect(). Function: " + methodName); handleError(args, callbackObject, callbackMethod); flush(true); return(undefined); } _sendChannel._queue.push({methodName:methodName, args:args, callbackID:_listenChannel._nextcallbackID}); } _listenChannel._callbacks[_listenChannel._nextcallbackID] = {callbackObject:callbackObject, callbackMethod:callbackMethod}; _listenChannel._nextcallbackID++; } static function urlOptions() { var _local5 = {}; var _local6; if (_root._url.indexOf("mochiad_options") != -1) { var _local2 = (_root._url.indexOf("mochiad_options") + "mochiad_options".length) + 1; _local6 = _root._url.substr(_local2, _root._url.length); } else if (_root.mochiad_options) { _local6 = _root.mochiad_options; } if (_local6) { var _local4 = _root.mochiad_options.split("&"); var _local2 = 0; while (_local2 < _local4.length) { var _local3 = _local4[_local2].split("="); _local5[unescape(_local3[0])] = unescape(_local3[1]); _local2++; } } return(_local5); } static function warnID(bid, leaderboard) { bid = bid.toLowerCase(); if (bid.length != 16) { trace(("WARNING: " + (leaderboard ? "board" : "game")) + " ID is not the appropriate length"); return(undefined); } if (bid == "1e113c7239048b3f") { if (leaderboard) { trace("WARNING: Using testing board ID"); } else { trace("WARNING: Using testing board ID as game ID"); } return(undefined); } if (bid == "84993a1de4031cd8") { if (leaderboard) { trace("WARNING: Using testing game ID as board ID"); } else { trace("WARNING: Using testing game ID"); } return(undefined); } var _local1 = 0; while (_local1 < bid.length) { switch (bid.charAt(_local1)) { case "0" : case "1" : case "2" : case "3" : case "4" : case "5" : case "6" : case "7" : case "8" : case "9" : case "a" : case "b" : case "c" : case "d" : case "e" : case "f" : break; default : trace("WARNING: Board ID contains illegal characters: " + bid); return(undefined); } _local1++; } } static function addLinkEvent(url, burl, btn, onClick) { var timeout = 1500; var t0 = getTimer(); var _local2 = new Object(); _local2.mav = getVersion(); _local2.swfv = btn.getSWFVersion() || 6; _local2.swfurl = btn._url; _local2.fv = System.capabilities.version; _local2.os = System.capabilities.os; _local2.lang = System.capabilities.language; _local2.scres = (System.capabilities.screenResolutionX + "x") + System.capabilities.screenResolutionY; var s = "?"; var _local3 = 0; for (var _local6 in _local2) { if (_local3 != 0) { s = s + "&"; } _local3++; s = ((s + _local6) + "=") + escape(_local2[_local6]); } if (!(netupAttempted || (_connected))) { var ping = btn.createEmptyMovieClip("ping", 777); var _local7 = btn.createEmptyMovieClip("nettest", 778); netupAttempted = true; ping.loadMovie("http://x.mochiads.com/linkping.swf?t=" + getTimer()); _local7.onEnterFrame = function () { if ((ping._totalframes > 0) && (ping._totalframes == ping._framesloaded)) { delete this.onEnterFrame; } else if ((getTimer() - t0) > timeout) { delete this.onEnterFrame; mochi.as2.MochiServices.netup = false; } }; } var _local4 = btn.createEmptyMovieClip("clk", 1001); _local4._alpha = 0; _local4.beginFill(1044735); _local4.moveTo(0, 0); _local4.lineTo(0, btn._height); _local4.lineTo(btn._width, btn._height); _local4.lineTo(btn._width, 0); _local4.lineTo(0, 0); _local4.endFill(); _local4.onRelease = function () { if (mochi.as2.MochiServices.netup) { getURL (url + s, "_blank"); } else { getURL (burl, "_blank"); } if (onClick != undefined) { onClick(); } }; } static function setContainer(clip) { } static function stayOnTop(clip) { } static var _servURL = "http://www.mochiads.com/static/lib/services/"; static var _services = "services.swf"; static var _mochiLC = "MochiLC.swf"; static var _listenChannelName = "__ms_"; static var _connecting = false; static var _connected = false; static var netup = true; static var netupAttempted = false; static var servicesSync = new mochi.as2.MochiSync(); }
Symbol 1143 MovieClip [__Packages.mochi.as2.MochiEventDispatcher] Frame 0
class mochi.as2.MochiEventDispatcher { var eventTable; function MochiEventDispatcher () { eventTable = {}; } function buildDelegate(thisObject, thatObject) { var _local2 = {thisObject:thisObject, thatObject:thatObject}; if (thatObject != undefined) { var funct = ((typeof(thatObject) == "string") ? (thisObject[thatObject]) : (thatObject)); _local2.delegate = function (args) { funct.call(thisObject, args); }; } else { _local2.delegate = thisObject; } return(_local2); } function compareDelegate(d_A, d_B) { if ((d_A.thisObject != d_B.thisObject) || (d_A.thatObject != d_B.thatObject)) { return(false); } return(true); } function addEventListener(event, thisObject, thatObject) { removeEventListener(event, thisObject, thatObject); eventTable[event].push(buildDelegate(thisObject, thatObject)); } function removeEventListener(event, thisObject, thatObject) { var _local3 = buildDelegate(thisObject, thatObject); if (eventTable[event] == undefined) { eventTable[event] = []; return(undefined); } for (var _local4 in eventTable[event]) { if (!compareDelegate(eventTable[event][_local4], _local3)) { continue; } eventTable[event].splice(Number(_local4), 1); } } function triggerEvent(event, args) { if (eventTable[event] == undefined) { return(undefined); } for (var _local4 in eventTable[event]) { eventTable[event][_local4].delegate(args); } } }
Symbol 1144 MovieClip [__Packages.mochi.as2.MochiEvents] Frame 0
class mochi.as2.MochiEvents { static var gameStart, levelStart; function MochiEvents () { } static function getVersion() { return(mochi.as2.MochiServices.getVersion()); } static function startSession(achievementID) { mochi.as2.MochiServices.send("events_beginSession", {achievementID:achievementID}, null, null); } static function trigger(kind, obj) { if (obj == undefined) { obj = {}; } else if (obj.kind != undefined) { trace("WARNING: optional arguements package contains key 'id', it will be overwritten"); obj.kind = kind; } mochi.as2.MochiServices.send("events_triggerEvent", {eventObject:obj}, null, null); } static function setNotifications(clip, style) { var _local2 = {}; for (var _local3 in style) { _local2[_local3] = style[_local3]; } _local2.clip = clip; mochi.as2.MochiServices.send("events_setNotifications", _local2, null, null); } static function addEventListener(eventType, thisObject, thatObject) { _dispatcher.addEventListener(eventType, thisObject, thatObject); } static function triggerEvent(eventType, args) { _dispatcher.triggerEvent(eventType, args); } static function removeEventListener(eventType, thisObject, thatObject) { _dispatcher.removeEventListener(eventType, thisObject, thatObject); } static function startGame() { gameStart = new Date().getTime(); trigger("start_game"); } static function endGame() { var _local1 = new Date().getTime() - gameStart; trigger("end_game", {time:_local1}); } static function startLevel() { levelStart = new Date().getTime(); trigger("start_level"); } static function endLevel() { var _local1 = new Date().getTime() - levelStart; trigger("end_level", {time:_local1}); } static var ACHIEVEMENT_RECEIVED = "AchievementReceived"; static var ALIGN_TOP_LEFT = "ALIGN_TL"; static var ALIGN_TOP = "ALIGN_T"; static var ALIGN_TOP_RIGHT = "ALIGN_TR"; static var ALIGN_LEFT = "ALIGN_L"; static var ALIGN_CENTER = "ALIGN_C"; static var ALIGN_RIGHT = "ALIGN_R"; static var ALIGN_BOTTOM_LEFT = "ALIGN_BL"; static var ALIGN_BOTTOM = "ALIGN_B"; static var ALIGN_BOTTOM_RIGHT = "ALIGN_BR"; static var FORMAT_SHORT = "ShortForm"; static var FORMAT_LONG = "LongForm"; static var _dispatcher = new mochi.as2.MochiEventDispatcher(); }
Symbol 1145 MovieClip [__Packages.mochi.as2.MochiCoins] Frame 0
class mochi.as2.MochiCoins { function MochiCoins () { } static function getVersion() { return(mochi.as2.MochiServices.getVersion()); } static function showStore(options) { mochi.as2.MochiServices.send("coins_showStore", {options:options}, null, null); } static function showItem(options) { if ((options == undefined) || (typeof(options.item) != "string")) { trace("ERROR: showItem call must pass an Object with an item key"); return(undefined); } mochi.as2.MochiServices.send("coins_showItem", {options:options}, null, null); } static function showVideo(options) { if ((options == undefined) || (typeof(options.item) != "string")) { trace("ERROR: showVideo call must pass an Object with an item key"); return(undefined); } mochi.as2.MochiServices.send("coins_showVideo", {options:options}, null, null); } static function showLoginWidget(options) { mochi.as2.MochiServices.setContainer(); mochi.as2.MochiServices.stayOnTop(); mochi.as2.MochiServices.send("coins_showLoginWidget", {options:options}); } static function hideLoginWidget() { mochi.as2.MochiServices.send("coins_hideLoginWidget"); } static function getStoreItems() { mochi.as2.MochiServices.send("coins_getStoreItems"); } static function getUserInfo() { mochi.as2.MochiServices.send("coins_getUserInfo"); } static function saveUserProperties(properties) { mochi.as2.MochiServices.send("coins_saveUserProperties", properties); } static function addEventListener(eventType, delegate) { _dispatcher.addEventListener(eventType, delegate); } static function triggerEvent(eventType, args) { _dispatcher.triggerEvent(eventType, args); } static function removeEventListener(eventType, delegate) { _dispatcher.removeEventListener(eventType, delegate); } static var LOGGED_IN = "LoggedIn"; static var LOGGED_OUT = "LoggedOut"; static var LOGIN_SHOW = "LoginShow"; static var LOGIN_HIDE = "LoginHide"; static var STORE_SHOW = "StoreShow"; static var STORE_HIDE = "StoreHide"; static var PROFILE_SHOW = "ProfileShow"; static var PROFILE_HIDE = "ProfileHide"; static var PROPERTIES_SAVED = "PropertySaved"; static var WIDGET_LOADED = "WidgetLoaded"; static var ITEM_OWNED = "ItemOwned"; static var ITEM_NEW = "ItemNew"; static var STORE_ITEMS = "StoreItems"; static var USER_INFO = "UserInfo"; static var ERROR = "Error"; static var IO_ERROR = "IOError"; static var NO_USER = "NoUser"; static var PROPERTIES_SIZE = "PropertiesSize"; static var _dispatcher = new mochi.as2.MochiEventDispatcher(); }
Symbol 70 Button
on (release) { getURL ("http://www.arcadebomb.com", "_blank"); }
Symbol 75 MovieClip [ABSplashScreen] Frame 115
this.removeMovieClip();
Symbol 84 MovieClip [Enemy60] Frame 4
gotoAndPlay ("run");
Symbol 84 MovieClip [Enemy60] Frame 13
gotoAndPlay ("bite");
Symbol 90 MovieClip [Enemy59] Frame 4
gotoAndPlay ("fly");
Symbol 115 MovieClip [Enemy58] Frame 16
gotoAndPlay ("run");
Symbol 115 MovieClip [Enemy58] Frame 31
gotoAndPlay ("bite");
Symbol 115 MovieClip [Enemy58] Frame 64
gotoAndPlay ("walk");
Symbol 119 MovieClip [Enemy54] Frame 1
stop();
Symbol 119 MovieClip [Enemy54] Frame 77
gotoAndStop ("stop");
Symbol 151 MovieClip [Enemy62] Frame 1
stop();
Symbol 151 MovieClip [Enemy62] Frame 38
stop();
Symbol 151 MovieClip [Enemy62] Frame 45
gotoAndStop (1);
Symbol 151 MovieClip [Enemy62] Frame 60
stop();
Symbol 176 MovieClip [Enemy61] Frame 1
stop();
Symbol 176 MovieClip [Enemy61] Frame 13
gotoAndPlay (2);
Symbol 176 MovieClip [Enemy61] Frame 40
gotoAndStop (1);
Symbol 176 MovieClip [Enemy61] Frame 60
stop();
Symbol 236 MovieClip [MySplashScreen] Frame 1
var Ready = false; var numPart = 100; var maxSpeed = 20; var minSpeed = 0.1; var xLoc = 124.3; var yLoc = 261.4; var Once2 = new Array(numPart); var Once = new Array(numPart); x = 1; while (x <= numPart) { myParticle2 = _root.attachMovie("Particle", "Particle" + x, _root.getNextHighestDepth()); myParticle2.Angle = Math.random() * 360; myParticle2.Speed = (Math.random() * maxSpeed) + minSpeed; myParticle2.XNum = x; myParticle2._alpha = (Math.random() * 50) + 50; myParticle2._x = -100; myParticle2._y = -100; myParticle2.onEnterFrame = function () { if (Ready) { if (Once2[this.XNum] == undefined) { Once2[this.XNum] = 1; this._x = xLoc; this._y = yLoc; } this.xSpeed = Math.cos(this.Angle) * this.Speed; this.ySpeed = Math.sin(this.Angle) * this.Speed; this._x = this._x + this.xSpeed; this._y = this._y + this.ySpeed; this.Speed = this.Speed * 2; if ((((this._x > Stage.width) || (this._y > Stage.height)) || (this._x < -10)) || (this._y < -10)) { this.removeMovieClip(); } } }; x++; } x = 1; while (x <= numPart) { myParticle = _root.attachMovie("Particle", "Particle" + x, _root.getNextHighestDepth()); myParticle.Angle = Math.random() * 360; myParticle.Speed = (Math.random() * maxSpeed) + minSpeed; myParticle.XNum = x; myParticle._alpha = (Math.random() * 50) + 50; myParticle._x = -100; myParticle._y = -100; myParticle.onEnterFrame = function () { if (Ready) { if (Once[this.XNum] == undefined) { Once[this.XNum] = 1; this._x = xLoc; this._y = yLoc; } this.xSpeed = Math.cos(this.Angle) * this.Speed; this.ySpeed = Math.sin(this.Angle) * this.Speed; this._x = this._x + this.xSpeed; this._y = this._y + this.ySpeed; this.Speed = this.Speed * 1; this._alpha = this._alpha - 10; if (this._alpha <= 0) { this.removeMovieClip(); } } }; x++; }
Instance of Symbol 187 MovieClip in Symbol 236 MovieClip [MySplashScreen] Frame 1
on (release) { getURL ("http://www.fullergames.com", "_blank"); }
Symbol 236 MovieClip [MySplashScreen] Frame 139
Ready = true;
Symbol 236 MovieClip [MySplashScreen] Frame 205
this.removeMovieClip();
Symbol 248 MovieClip Frame 1
stop(); this.onRollOver = function () { gotoAndStop ("RollOver"); };
Symbol 248 MovieClip Frame 2
stop(); this.onRollOut = function () { gotoAndStop ("Neutral"); };
Symbol 262 MovieClip Frame 1
stop(); this.onRollOver = function () { gotoAndStop ("RollOver"); };
Symbol 262 MovieClip Frame 2
this.onRollOut = function () { gotoAndStop ("Neutral"); };
Symbol 267 MovieClip Frame 1
stop(); this.onRollOver = function () { gotoAndStop ("RollOver"); };
Symbol 267 MovieClip Frame 2
stop(); this.onRollOut = function () { gotoAndStop ("Neutral"); };
Symbol 272 MovieClip Frame 1
stop(); this.onRollOver = function () { gotoAndStop ("RollOver"); };
Symbol 272 MovieClip Frame 2
stop(); this.onRollOut = function () { gotoAndStop ("Neutral"); };
Symbol 279 MovieClip Frame 1
stop(); this.onRollOver = function () { this.gotoAndStop("RollOver"); };
Symbol 279 MovieClip Frame 2
stop(); this.onRollOut = function () { gotoAndStop ("Neutral"); };
Symbol 284 MovieClip Frame 1
stop(); this.onRollOver = function () { this.gotoAndStop("RollOver"); };
Symbol 284 MovieClip Frame 2
stop(); stop(); this.onRollOut = function () { this.gotoAndStop("Neutral"); };
Symbol 285 MovieClip [InfoBox] Frame 1
stop(); ContBuildingBtn.onRollOver = function () { ContBuildingBtn.useHandCursor = true; };
Symbol 285 MovieClip [InfoBox] Frame 2
stop(); MenuBtn.onRollOver = function () { MenuBtn.useHandCursor = true; }; TestOEBtn.onRollOver = function () { TestOEBtn.useHandCursor = true; }; CopyButton.onRollOver = function () { CopyButton.useHandCursor = true; }; ContBuildingBtn.onRollOver = function () { ContBuildingBtn.useHandCursor = true; };
Symbol 285 MovieClip [InfoBox] Frame 3
YesBtn.onRollOver = function () { YesBtn.useHandCursor = true; }; NoBtn.onRollOver = function () { NoBtn.useHandCursor = true; };
Symbol 291 MovieClip [LBNotice] Frame 1
var Time = getTimer(); var TimeN = 0; onEnterFrame = function () { TimeN = getTimer(); if ((TimeN - Time) >= 3000) { this.removeMovieClip(); } };
Symbol 296 MovieClip Frame 1
stop(); this.onRollOver = function () { gotoAndStop ("RollOver"); };
Symbol 296 MovieClip Frame 2
stop(); this.onRollOut = function () { gotoAndStop ("Neutral"); };
Symbol 310 MovieClip Frame 1
stop(); this.onRollOver = function () { gotoAndStop ("RollOver"); };
Symbol 310 MovieClip Frame 2
stop(); this.onRollOut = function () { gotoAndStop ("Neutral"); };
Symbol 314 MovieClip Frame 1
stop(); this.onRollOver = function () { gotoAndStop ("RollOver"); };
Symbol 314 MovieClip Frame 2
stop(); this.onRollOut = function () { gotoAndStop ("Neutral"); };
Symbol 316 MovieClip [LevelBuilderMenu] Frame 1
onMouseUp = function () { var _local2 = false; var _local3 = 0; o = 0; while (o <= _root.TT) { if (TileMenu["Tile" + o].hitTest(_root._xmouse, _root._ymouse, false)) { TileMenu.attachMovie("Box", "Box" + o, o + 100); TileMenu["Box" + o]._x = TileMenu["Tile" + o]._x - 2; TileMenu["Box" + o]._y = TileMenu["Tile" + o]._y - 2; TileMenu["Box" + o]._width = _root["TileBitmap" + o].width + ((mainTimeLine["TileBitmap" + o].width / 50) * 6); TileMenu["Box" + o]._height = _root["TileBitmap" + o].height + ((mainTimeLine["TileBitmap" + o].width / 50) * 6); trace(_root["TileBitmap" + o].height); if (Key.isDown(16) && (o < _root.AS)) { e = 0; while (e < _root.PieceArray.length) { if (_root.PieceArray[e] == o) { _local2 = true; _local3 = e; } if (_root.PieceArray[e] >= _root.AS) { TileMenu["Box" + _root.PieceArray[e]].removeMovieClip(); _root.PieceArray.splice(e, 1); } e++; } if (!_local2) { _root.PieceArray.push(o); _root.ChangeDragger("Bitmap"); } else if (_local2) { TileMenu["Box" + _root.PieceArray[_local3]].removeMovieClip(); _root.PieceArray.splice(_local3, 1); _root.ChangeDragger("Bitmap"); } break; } _root.CurrentTile = o; _root.PieceArray.splice(0, _root.PieceArray.length); _root.PieceArray[0] = _root.CurrentTile; if (o >= _root.AS) { _root.ChangeDragger("Bitmap", "", true); } else { _root.ChangeDragger("Bitmap"); } _root.SelectingTiles = false; TileMenu.removeMovieClip(); break; } o++; } };
Symbol 332 MovieClip Frame 1
stop(); this.onRollOver = function () { gotoAndStop ("RollOver"); };
Symbol 332 MovieClip Frame 2
stop(); this.onRollOut = function () { gotoAndStop ("Neutral"); };
Symbol 336 MovieClip [TileMenu] Frame 1
ExitTileButton.onRollOver = function () { ExitTileButton.useHandCursor = true; }; WallTab.onRollOver = function () { DungeonTab.useHandCursor = true; }; BGTab.onRollOver = function () { BGTab.useHandCursor = true; }; AccTab.onRollOver = function () { Room.useHandCursor = true; }; EneTab.onRollOver = function () { Enemies.useHandCursor = true; }; PageMC.onRollOver = function () { PageMC.useHandCursor = true; };
Symbol 343 MovieClip Frame 1
stop(); this.onRollOver = function () { gotoAndStop ("RollOver"); };
Symbol 343 MovieClip Frame 2
stop(); this.onRollOut = function () { gotoAndStop ("Neutral"); };
Symbol 344 MovieClip [ImportMC] Frame 1
ImportButtonLoad.onRollOver = function () { ImportButtonLoad.useHandCursor = true; }; ExitImportButton.onRollOver = function () { ExitImportButton.useHandCursor = true; };
Symbol 472 MovieClip [Char] Frame 1
stop();
Symbol 472 MovieClip [Char] Frame 20
_root.JustLanded = false;
Symbol 472 MovieClip [Char] Frame 38
_root.JustLanded = false; gotoAndStop ("side-left");
Symbol 472 MovieClip [Char] Frame 62
_root.JustLanded = false; gotoAndStop ("side-right");
Symbol 472 MovieClip [Char] Frame 71
_root.SlidingNow = true;
Symbol 472 MovieClip [Char] Frame 101
gotoAndStop ("slide-left");
Symbol 472 MovieClip [Char] Frame 121
gotoAndStop ("slide-right");
Symbol 472 MovieClip [Char] Frame 132
_root.JumpingNow = false; gotoAndStop ("jump-right");
Symbol 472 MovieClip [Char] Frame 145
_root.SlidingNow = true;
Symbol 472 MovieClip [Char] Frame 167
_root.JumpingNow = false; gotoAndStop ("jump-left");
Symbol 472 MovieClip [Char] Frame 180
_root.StpS.start(0, 1);
Symbol 472 MovieClip [Char] Frame 186
_root.StpS.start(0, 1);
Symbol 472 MovieClip [Char] Frame 194
gotoAndPlay ("move-right");
Symbol 472 MovieClip [Char] Frame 200
_root.StpS.start(0, 1);
Symbol 472 MovieClip [Char] Frame 206
_root.StpS.start(0, 1);
Symbol 472 MovieClip [Char] Frame 214
gotoAndPlay ("move-left");
Symbol 472 MovieClip [Char] Frame 248
_root.CharHit = false; gotoAndStop (1);
Symbol 472 MovieClip [Char] Frame 258
_root.CharHit = false; gotoAndStop (1);
Symbol 472 MovieClip [Char] Frame 263
stop(); _root.CleanUp("GameOver");
Symbol 472 MovieClip [Char] Frame 297
_root.CleanUp("GameOver");
Symbol 472 MovieClip [Char] Frame 396
gotoAndPlay ("move-right-armout");
Symbol 472 MovieClip [Char] Frame 416
gotoAndPlay ("move-right-armout");
Symbol 472 MovieClip [Char] Frame 468
function TimeFall() { Count++; if (Count > 150) { _root.CleanUp("GameOver"); clearInterval(FallTimer); } } Count = 0; FallTimer = setInterval(TimeFall, 25);
Symbol 481 MovieClip [TorchMC] Frame 19
gotoAndPlay (1);
Symbol 553 MovieClip Frame 1
stop(); this.onRollOver = function () { gotoAndStop ("RollOver"); };
Symbol 553 MovieClip Frame 2
this.onRollOut = function () { gotoAndStop ("Neutral"); };
Symbol 558 MovieClip Frame 1
stop(); this.onRollOver = function () { gotoAndStop ("RollOver"); };
Symbol 558 MovieClip Frame 2
stop(); this.onRollOut = function () { gotoAndStop ("Neutral"); };
Symbol 563 MovieClip Frame 1
stop(); this.onRollOver = function () { gotoAndStop ("RollOver"); };
Symbol 563 MovieClip Frame 2
stop(); this.onRollOut = function () { gotoAndStop ("Neutral"); };
Symbol 568 MovieClip [musique] Frame 1
stop();
Symbol 568 MovieClip [musique] Frame 2
stop();
Symbol 571 MovieClip [musique2] Frame 1
stop();
Symbol 571 MovieClip [musique2] Frame 2
stop();
Symbol 572 MovieClip [Stats] Frame 1
var Scroll = false; var Delay = 0; onMouseMove = function () { if (Scroll && (!MenuTab.hitTest(_root._xmouse, _root._ymouse, true))) { Scroll = false; var _local2 = new mx.transitions.Tween(MenuTab, "_y", mx.transitions.easing.Strong.easeOut, MenuTab._y, -58, 1, true); var _local5 = new mx.transitions.Tween(MenuButton, "_y", mx.transitions.easing.Strong.easeOut, MenuButton._y, -43, 1, true); var _local4 = new mx.transitions.Tween(ContEditButton, "_y", mx.transitions.easing.Strong.easeOut, ContEditButton._y, -43, 1, true); var _local3 = new mx.transitions.Tween(RestartButton, "_y", mx.transitions.easing.Strong.easeOut, RestartButton._y, -43, 1, true); _local2.onMotionFinished = function () { Delay = 0; }; } }; onEnterFrame = function () { if ((!Scroll) && (MenuTab.hitTest(_root._xmouse, _root._ymouse, true))) { Delay++; if (Delay >= 15) { Scroll = true; var _local2 = new mx.transitions.Tween(MenuTab, "_y", mx.transitions.easing.Strong.easeOut, MenuTab._y, -3, 1, true); var _local5 = new mx.transitions.Tween(MenuButton, "_y", mx.transitions.easing.Strong.easeOut, MenuButton._y, 5, 1, true); var _local4 = new mx.transitions.Tween(ContEditButton, "_y", mx.transitions.easing.Strong.easeOut, ContEditButton._y, 5, 1, true); var _local3 = new mx.transitions.Tween(RestartButton, "_y", mx.transitions.easing.Strong.easeOut, RestartButton._y, 5, 1, true); } } };
Symbol 585 MovieClip Frame 1
stop();
Symbol 585 MovieClip Frame 2
stop();
Symbol 586 MovieClip Frame 1
head.gotoAndStop("attack");
Symbol 625 MovieClip Frame 1
stop();
Symbol 627 MovieClip [playhubSplash] Frame 278
this.removeMovieClip();
Symbol 642 MovieClip Frame 1
stop();
Symbol 688 MovieClip Frame 35
stop();
Symbol 714 MovieClip Frame 10
stop();
Symbol 733 Button
on (release) { getURL ("http://www.playhub.com/?utm_medium=brandedgames_external&utm_campaign=ninja_plus_2&utm_source=domain.com&utm_content=ingame", "_blank"); }
Symbol 747 MovieClip Frame 1
stop();
Symbol 759 MovieClip Frame 1
stop();
Symbol 769 MovieClip Frame 1
stop();
Symbol 786 MovieClip Frame 1
stop();
Symbol 796 MovieClip Frame 1
stop();
Symbol 806 MovieClip Frame 1
stop();
Symbol 849 MovieClip Frame 1
stop();
Symbol 926 MovieClip Frame 10
stop();
Symbol 927 Button
on (release) { getURL ("http://www.playhub.com/?utm_medium=brandedgames_external&utm_campaign=ninja_plus_2&utm_source=domain.com&utm_content=ingame", "_blank"); }
Symbol 939 MovieClip Frame 10
stop();
Symbol 942 Button
on (release) { getURL ("http://www.playhub.com/?utm_medium=brandedgames_external&utm_campaign=ninja_plus_2&utm_source=domain.com&utm_content=ingame", "_blank"); }
Symbol 983 MovieClip Frame 10
stop();
Symbol 1084 Button
on (release) { getURL ("http://www.playhub.com/?utm_medium=brandedgames_external&utm_campaign=ninja_plus_2&utm_source=domain.com&utm_content=ingame", "_blank"); mochi.as2.MochiServices.addLinkEvent("http://x.mochiads.com/link/ff8a0e5b4b31b20e", "http://www.playhub.com/?utm_medium=brandedgames_external&utm_campaign=ninja_plus_2&utm_source=domain.com&utm_content=ingame", MG); }

Library Items

Symbol 1 Sound [handGunHitBody]
Symbol 2 Sound [Step Sound]Used by:642
Symbol 3 GraphicUsed by:7 25
Symbol 4 GraphicUsed by:7 25
Symbol 5 GraphicUsed by:7 25
Symbol 6 GraphicUsed by:7
Symbol 7 MovieClip [weaponSCARLogo]Uses:3 4 5 6
Symbol 8 FontUsed by:9
Symbol 9 TextUses:8Used by:14
Symbol 10 GraphicUsed by:11 70 119
Symbol 11 MovieClipUses:10Used by:14
Symbol 12 FontUsed by:13 241 245 247 276 278 281 283 650 651 654 655 658 659 662 663 665 672 673 740 742 744 749 751 753 755 761 763 765 767 778 780 782 784 788 790 792 794 798 800 802 804 823 865 866 869 870 873 874 877 879 888 891 892 893 894 895 896 897 898 911 912 977 1022 1091 1092 1095 1096 1108 1117 1118 1121 1122 1125 1126 1135
Symbol 13 TextUses:12Used by:14
Symbol 14 MovieClip [PauseScreen]Uses:9 11 13Used by:Timeline
Symbol 15 GraphicUsed by:16
Symbol 16 MovieClipUses:15Used by:25 28
Symbol 17 GraphicUsed by:18
Symbol 18 MovieClipUses:17Used by:25 28 586 610
Symbol 19 GraphicUsed by:20
Symbol 20 MovieClipUses:19Used by:25 28
Symbol 21 GraphicUsed by:22
Symbol 22 MovieClipUses:21Used by:25
Symbol 23 GraphicUsed by:25
Symbol 24 GraphicUsed by:25
Symbol 25 MovieClip [armSCARF]Uses:3 4 5 16 18 20 22 23 24Used by:610
Symbol 26 GraphicUsed by:27
Symbol 27 MovieClip [magM4]Uses:26Used by:28
Symbol 28 MovieClip [armM4B]Uses:16 18 20 27Used by:610
Symbol 29 GraphicUsed by:30
Symbol 30 MovieClip [blindsClip]Uses:29Used by:627
Symbol 31 GraphicUsed by:187  Timeline
Symbol 32 GraphicUsed by:33
Symbol 33 MovieClipUses:32Used by:Timeline
Symbol 34 FontUsed by:35
Symbol 35 EditableTextUses:34Used by:Timeline
Symbol 36 FontUsed by:37 234 685 686 689 690
Symbol 37 TextUses:36Used by:Timeline
Symbol 38 GraphicUsed by:54
Symbol 39 BitmapUsed by:40
Symbol 40 GraphicUses:39Used by:41
Symbol 41 MovieClipUses:40Used by:51
Symbol 42 BitmapUsed by:43
Symbol 43 GraphicUses:42Used by:44
Symbol 44 MovieClipUses:43Used by:51
Symbol 45 BitmapUsed by:46
Symbol 46 GraphicUses:45Used by:47
Symbol 47 MovieClipUses:46Used by:51
Symbol 48 BitmapUsed by:49
Symbol 49 GraphicUses:48Used by:50
Symbol 50 MovieClipUses:49Used by:51
Symbol 51 MovieClipUses:41 44 47 50Used by:54
Symbol 52 GraphicUsed by:53
Symbol 53 MovieClipUses:52Used by:54
Symbol 54 MovieClipUses:38 51 53Used by:Timeline
Symbol 55 GraphicUsed by:Timeline
Symbol 56 GraphicUsed by:60
Symbol 57 GraphicUsed by:60
Symbol 58 ShapeTweeningUsed by:60
Symbol 59 GraphicUsed by:60
Symbol 60 MovieClipUses:56 57 58 59Used by:Timeline
Symbol 61 BitmapUsed by:62
Symbol 62 GraphicUses:61Used by:Timeline
Symbol 63 GraphicUsed by:64 65
Symbol 64 MovieClipUses:63Used by:65
Symbol 65 ButtonUses:64 63Used by:Timeline
Symbol 1137 MovieClip [__Packages.mx.transitions.OnEnterFrameBeacon]
Symbol 1138 MovieClip [__Packages.mx.transitions.BroadcasterMX]
Symbol 1139 MovieClip [__Packages.mx.transitions.Tween]
Symbol 1140 MovieClip [__Packages.mx.transitions.easing.Strong]
Symbol 1141 MovieClip [__Packages.mochi.as2.MochiSync]
Symbol 1142 MovieClip [__Packages.mochi.as2.MochiServices]
Symbol 1143 MovieClip [__Packages.mochi.as2.MochiEventDispatcher]
Symbol 1144 MovieClip [__Packages.mochi.as2.MochiEvents]
Symbol 1145 MovieClip [__Packages.mochi.as2.MochiCoins]
Symbol 66 GraphicUsed by:Timeline
Symbol 67 GraphicUsed by:642
Symbol 68 GraphicUsed by:69
Symbol 69 MovieClip [LBBG]Uses:68Used by:642
Symbol 70 ButtonUses:10Used by:75
Symbol 71 GraphicUsed by:74
Symbol 72 FontUsed by:73
Symbol 73 TextUses:72Used by:74
Symbol 74 MovieClipUses:71 73Used by:75
Symbol 75 MovieClip [ABSplashScreen]Uses:70 74Used by:642
Symbol 76 FontUsed by:77 252 256 257 259 261 264 266 269 271 274 293 295 302 304 312 313 315 319 322 325 328 334 340 342 546 547 548 550 552 555 557 560 562 821 826 827 855 856 857 858 862 863 876 947 948 986 987 988 989 990 991 993 994 996 997 998 1001 1003 1004 1006 1008 1009 1018 1019 1020 1021 1023 1024 1025 1026 1048 1049 1050 1051 1059 1086 1088 1089 1099 1100 1101 1102 1103 1104 1105 1106 1109 1110 1111 1112 1113 1114 1115 1116
Symbol 77 EditableTextUses:76Used by:78
Symbol 78 MovieClip [FirstSpeech]Uses:77Used by:642  Timeline
Symbol 79 GraphicUsed by:84
Symbol 80 GraphicUsed by:84
Symbol 81 GraphicUsed by:84
Symbol 82 GraphicUsed by:84
Symbol 83 GraphicUsed by:84
Symbol 84 MovieClip [Enemy60]Uses:79 80 81 82 83Used by:642
Symbol 85 GraphicUsed by:90
Symbol 86 GraphicUsed by:90
Symbol 87 GraphicUsed by:90
Symbol 88 GraphicUsed by:90
Symbol 89 GraphicUsed by:90
Symbol 90 MovieClip [Enemy59]Uses:85 86 87 88 89Used by:642
Symbol 91 GraphicUsed by:115
Symbol 92 GraphicUsed by:115
Symbol 93 GraphicUsed by:115
Symbol 94 GraphicUsed by:115
Symbol 95 GraphicUsed by:115
Symbol 96 GraphicUsed by:115
Symbol 97 GraphicUsed by:115
Symbol 98 GraphicUsed by:115
Symbol 99 GraphicUsed by:115
Symbol 100 GraphicUsed by:115
Symbol 101 GraphicUsed by:115
Symbol 102 GraphicUsed by:115
Symbol 103 GraphicUsed by:115
Symbol 104 GraphicUsed by:115
Symbol 105 GraphicUsed by:115
Symbol 106 GraphicUsed by:115
Symbol 107 GraphicUsed by:115
Symbol 108 GraphicUsed by:115
Symbol 109 GraphicUsed by:115
Symbol 110 GraphicUsed by:115
Symbol 111 GraphicUsed by:115
Symbol 112 GraphicUsed by:115
Symbol 113 GraphicUsed by:115
Symbol 114 GraphicUsed by:115
Symbol 115 MovieClip [Enemy58]Uses:91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114Used by:642
Symbol 116 GraphicUsed by:119
Symbol 117 GraphicUsed by:118
Symbol 118 MovieClipUses:117Used by:119
Symbol 119 MovieClip [Enemy54]Uses:116 10 118Used by:642
Symbol 120 GraphicUsed by:135 145 151
Symbol 121 GraphicUsed by:151
Symbol 122 GraphicUsed by:151
Symbol 123 GraphicUsed by:151
Symbol 124 GraphicUsed by:151
Symbol 125 GraphicUsed by:151
Symbol 126 GraphicUsed by:135 151
Symbol 127 GraphicUsed by:151
Symbol 128 GraphicUsed by:135 151
Symbol 129 GraphicUsed by:134 151
Symbol 130 GraphicUsed by:131
Symbol 131 MovieClipUses:130Used by:151
Symbol 132 GraphicUsed by:145 151
Symbol 133 GraphicUsed by:151
Symbol 134 MovieClipUses:129Used by:135
Symbol 135 MovieClipUses:134 120 126 128Used by:151
Symbol 136 GraphicUsed by:151
Symbol 137 GraphicUsed by:151
Symbol 138 GraphicUsed by:151
Symbol 139 GraphicUsed by:151
Symbol 140 GraphicUsed by:151
Symbol 141 GraphicUsed by:151
Symbol 142 GraphicUsed by:145 151
Symbol 143 GraphicUsed by:145
Symbol 144 GraphicUsed by:145
Symbol 145 MovieClipUses:142 132 120 143 144Used by:151
Symbol 146 GraphicUsed by:151
Symbol 147 GraphicUsed by:151
Symbol 148 GraphicUsed by:151
Symbol 149 GraphicUsed by:151
Symbol 150 GraphicUsed by:151
Symbol 151 MovieClip [Enemy62]Uses:120 121 122 123 124 125 126 127 128 129 131 132 133 135 136 137 138 139 140 141 142 145 146 147 148 149 150Used by:642
Symbol 152 GraphicUsed by:176
Symbol 153 GraphicUsed by:154
Symbol 154 MovieClipUses:153Used by:176
Symbol 155 GraphicUsed by:156
Symbol 156 MovieClipUses:155Used by:176
Symbol 157 GraphicUsed by:176
Symbol 158 GraphicUsed by:176
Symbol 159 GraphicUsed by:176
Symbol 160 GraphicUsed by:176
Symbol 161 GraphicUsed by:176
Symbol 162 GraphicUsed by:176
Symbol 163 GraphicUsed by:176
Symbol 164 GraphicUsed by:176
Symbol 165 GraphicUsed by:176
Symbol 166 GraphicUsed by:176
Symbol 167 GraphicUsed by:176
Symbol 168 GraphicUsed by:176
Symbol 169 GraphicUsed by:170 368
Symbol 170 MovieClipUses:169Used by:176
Symbol 171 GraphicUsed by:176
Symbol 172 GraphicUsed by:176
Symbol 173 GraphicUsed by:176
Symbol 174 GraphicUsed by:176
Symbol 175 GraphicUsed by:176
Symbol 176 MovieClip [Enemy61]Uses:152 154 156 157 158 159 160 161 162 163 164 165 166 167 168 170 171 172 173 174 175Used by:642
Symbol 177 Bitmap [Tile51A]Used by:186
Symbol 178 Bitmap [Tile62A]Used by:186
Symbol 179 Bitmap [Tile61A]Used by:186
Symbol 180 Bitmap [Tile60A]Used by:186
Symbol 181 Bitmap [Tile53A]Used by:186
Symbol 182 Bitmap [Tile49A]Used by:186
Symbol 183 Bitmap [Tile52A]Used by:186
Symbol 184 Bitmap [Tile50A]Used by:186
Symbol 185 Bitmap [Tile54A]Used by:186
Symbol 186 GraphicUses:177 178 179 180 181 182 183 184 185Used by:642
Symbol 187 MovieClipUses:31Used by:236
Symbol 188 GraphicUsed by:189
Symbol 189 MovieClipUses:188Used by:236
Symbol 190 GraphicUsed by:191
Symbol 191 MovieClipUses:190Used by:236 683 688
Symbol 192 GraphicUsed by:236
Symbol 193 GraphicUsed by:194
Symbol 194 MovieClipUses:193Used by:236
Symbol 195 GraphicUsed by:196
Symbol 196 MovieClipUses:195Used by:236
Symbol 197 SoundUsed by:236
Symbol 198 GraphicUsed by:199
Symbol 199 MovieClipUses:198Used by:236
Symbol 200 GraphicUsed by:201
Symbol 201 MovieClipUses:200Used by:236
Symbol 202 GraphicUsed by:203
Symbol 203 MovieClipUses:202Used by:236
Symbol 204 GraphicUsed by:205
Symbol 205 MovieClipUses:204Used by:236
Symbol 206 GraphicUsed by:207
Symbol 207 MovieClipUses:206Used by:236
Symbol 208 SoundUsed by:236
Symbol 209 GraphicUsed by:236
Symbol 210 GraphicUsed by:236
Symbol 211 GraphicUsed by:236
Symbol 212 GraphicUsed by:236
Symbol 213 GraphicUsed by:236
Symbol 214 GraphicUsed by:236
Symbol 215 GraphicUsed by:236
Symbol 216 GraphicUsed by:236
Symbol 217 SoundUsed by:236
Symbol 218 GraphicUsed by:236
Symbol 219 SoundUsed by:236
Symbol 220 GraphicUsed by:236
Symbol 221 SoundUsed by:236
Symbol 222 SoundUsed by:236
Symbol 223 GraphicUsed by:236
Symbol 224 GraphicUsed by:225
Symbol 225 MovieClipUses:224Used by:236
Symbol 226 GraphicUsed by:227
Symbol 227 MovieClipUses:226Used by:236
Symbol 228 GraphicUsed by:229
Symbol 229 MovieClipUses:228Used by:236
Symbol 230 GraphicUsed by:231
Symbol 231 MovieClipUses:230Used by:236
Symbol 232 GraphicUsed by:233
Symbol 233 MovieClipUses:232Used by:236
Symbol 234 TextUses:36Used by:235
Symbol 235 MovieClipUses:234Used by:236
Symbol 236 MovieClip [MySplashScreen]Uses:187 189 191 192 194 196 197 199 201 203 205 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 225 227 229 231 233 235Used by:642
Symbol 237 GraphicUsed by:238
Symbol 238 MovieClip [Particle]Uses:237Used by:642
Symbol 239 GraphicUsed by:240
Symbol 240 MovieClipUses:239Used by:285 336 344
Symbol 241 TextUses:12Used by:285
Symbol 242 FontUsed by:243 251 273 338 945
Symbol 243 TextUses:242Used by:285
Symbol 244 GraphicUsed by:248
Symbol 245 TextUses:12Used by:248
Symbol 246 GraphicUsed by:248
Symbol 247 TextUses:12Used by:248
Symbol 248 MovieClipUses:244 245 246 247Used by:285
Symbol 249 FontUsed by:250 317 337 944
Symbol 250 EditableTextUses:249Used by:285
Symbol 251 TextUses:242Used by:285
Symbol 252 EditableTextUses:76Used by:285
Symbol 253 FontUsed by:254 255 307 309 771 772 773 774 775 776 812 813 814 815 816 817 818 819 859 861 900 901 902 903 904 905 906 907 908 909 959 960 961 967 968 969 970 971 972 973 974 975 976 1017
Symbol 254 TextUses:253Used by:285
Symbol 255 TextUses:253Used by:285
Symbol 256 EditableTextUses:76Used by:285
Symbol 257 EditableTextUses:76Used by:285
Symbol 258 GraphicUsed by:262
Symbol 259 TextUses:76Used by:262 300 943
Symbol 260 GraphicUsed by:262
Symbol 261 TextUses:76Used by:262 300 943
Symbol 262 MovieClipUses:258 259 260 261Used by:285
Symbol 263 GraphicUsed by:267
Symbol 264 TextUses:76Used by:267
Symbol 265 GraphicUsed by:267
Symbol 266 TextUses:76Used by:267
Symbol 267 MovieClipUses:263 264 265 266Used by:285
Symbol 268 GraphicUsed by:272
Symbol 269 TextUses:76Used by:272 951
Symbol 270 GraphicUsed by:272
Symbol 271 TextUses:76Used by:272 951
Symbol 272 MovieClipUses:268 269 270 271Used by:285
Symbol 273 TextUses:242Used by:285
Symbol 274 TextUses:76Used by:285
Symbol 275 GraphicUsed by:279
Symbol 276 TextUses:12Used by:279
Symbol 277 GraphicUsed by:279
Symbol 278 TextUses:12Used by:279
Symbol 279 MovieClipUses:275 276 277 278Used by:285
Symbol 280 GraphicUsed by:284
Symbol 281 TextUses:12Used by:284
Symbol 282 GraphicUsed by:284
Symbol 283 TextUses:12Used by:284
Symbol 284 MovieClipUses:280 281 282 283Used by:285
Symbol 285 MovieClip [InfoBox]Uses:240 241 243 248 250 251 252 254 255 256 257 262 267 272 273 274 279 284Used by:642
Symbol 286 Bitmap [Coin]Used by:287
Symbol 287 GraphicUses:286Used by:288 572
Symbol 288 MovieClip [Collectable]Uses:287Used by:642
Symbol 289 FontUsed by:290 345 346 347 348 349 350 351 352 353 354 355 356 357 738 770 881 882 883 884 885 886 952 953 954 955 956
Symbol 290 EditableTextUses:289Used by:291
Symbol 291 MovieClip [LBNotice]Uses:290Used by:642
Symbol 292 GraphicUsed by:296
Symbol 293 TextUses:76Used by:296
Symbol 294 GraphicUsed by:296
Symbol 295 TextUses:76Used by:296
Symbol 296 MovieClipUses:292 293 294 295Used by:316
Symbol 297 GraphicUsed by:300 943
Symbol 298 GraphicUsed by:300 943
Symbol 299 GraphicUsed by:300 943
Symbol 300 ButtonUses:297 298 259 299 261Used by:316
Symbol 301 GraphicUsed by:305
Symbol 302 TextUses:76Used by:305
Symbol 303 GraphicUsed by:305
Symbol 304 TextUses:76Used by:305
Symbol 305 ButtonUses:301 302 303 304Used by:316
Symbol 306 GraphicUsed by:310
Symbol 307 TextUses:253Used by:310
Symbol 308 GraphicUsed by:310
Symbol 309 TextUses:253Used by:310
Symbol 310 MovieClipUses:306 307 308 309Used by:316
Symbol 311 GraphicUsed by:314
Symbol 312 TextUses:76Used by:314
Symbol 313 TextUses:76Used by:314
Symbol 314 MovieClipUses:311 312 313Used by:316
Symbol 315 TextUses:76Used by:316
Symbol 316 MovieClip [LevelBuilderMenu]Uses:296 300 305 310 314 315Used by:642
Symbol 317 TextUses:249Used by:336
Symbol 318 GraphicUsed by:320
Symbol 319 TextUses:76Used by:320
Symbol 320 MovieClipUses:318 319Used by:336
Symbol 321 GraphicUsed by:323
Symbol 322 TextUses:76Used by:323
Symbol 323 MovieClipUses:321 322Used by:336
Symbol 324 GraphicUsed by:326
Symbol 325 TextUses:76Used by:326
Symbol 326 MovieClipUses:324 325Used by:336
Symbol 327 GraphicUsed by:329
Symbol 328 TextUses:76Used by:329
Symbol 329 MovieClipUses:327 328Used by:336
Symbol 330 GraphicUsed by:332
Symbol 331 GraphicUsed by:332
Symbol 332 MovieClipUses:330 331Used by:336 344
Symbol 333 GraphicUsed by:335
Symbol 334 TextUses:76Used by:335
Symbol 335 MovieClip [PageChange]Uses:333 334Used by:336
Symbol 336 MovieClip [TileMenu]Uses:240 317 320 323 326 329 332 335Used by:642
Symbol 337 EditableTextUses:249Used by:344
Symbol 338 TextUses:242Used by:344
Symbol 339 GraphicUsed by:343
Symbol 340 TextUses:76Used by:343
Symbol 341 GraphicUsed by:343
Symbol 342 TextUses:76Used by:343
Symbol 343 MovieClipUses:339 340 341 342Used by:344
Symbol 344 MovieClip [ImportMC]Uses:240 337 338 332 343Used by:642
Symbol 345 TextUses:289Used by:358
Symbol 346 TextUses:289Used by:358
Symbol 347 EditableTextUses:289Used by:358
Symbol 348 EditableTextUses:289Used by:358
Symbol 349 TextUses:289Used by:358
Symbol 350 TextUses:289Used by:358
Symbol 351 TextUses:289Used by:358
Symbol 352 TextUses:289Used by:358
Symbol 353 TextUses:289Used by:358
Symbol 354 EditableTextUses:289Used by:358
Symbol 355 EditableTextUses:289Used by:358
Symbol 356 EditableTextUses:289Used by:358
Symbol 357 EditableTextUses:289Used by:358
Symbol 358 MovieClip [LevelStats]Uses:345 346 347 348 349 350 351 352 353 354 355 356 357Used by:642
Symbol 359 GraphicUsed by:360
Symbol 360 MovieClip [Kunai2]Uses:359Used by:642
Symbol 361 MovieClip [HitPoint]Used by:368 642
Symbol 362 GraphicUsed by:363
Symbol 363 MovieClip [HPBar]Uses:362Used by:642
Symbol 364 GraphicUsed by:365
Symbol 365 MovieClip [Marker]Uses:364Used by:642
Symbol 366 GraphicUsed by:367
Symbol 367 MovieClip [Target]Uses:366Used by:642
Symbol 368 MovieClip [Kunai]Uses:169 361Used by:642
Symbol 369 GraphicUsed by:370
Symbol 370 MovieClip [bar1]Uses:369Used by:642
Symbol 371 GraphicUsed by:372
Symbol 372 MovieClip [bar2]Uses:371Used by:642
Symbol 373 GraphicUsed by:374
Symbol 374 MovieClip [bar3]Uses:373Used by:642
Symbol 375 GraphicUsed by:472
Symbol 376 GraphicUsed by:472
Symbol 377 GraphicUsed by:472
Symbol 378 GraphicUsed by:472
Symbol 379 GraphicUsed by:472
Symbol 380 GraphicUsed by:472
Symbol 381 GraphicUsed by:472
Symbol 382 GraphicUsed by:472
Symbol 383 GraphicUsed by:472
Symbol 384 GraphicUsed by:472
Symbol 385 GraphicUsed by:472
Symbol 386 GraphicUsed by:472
Symbol 387 GraphicUsed by:472
Symbol 388 GraphicUsed by:389
Symbol 389 MovieClipUses:388Used by:472
Symbol 390 GraphicUsed by:472
Symbol 391 GraphicUsed by:392
Symbol 392 MovieClipUses:391Used by:472
Symbol 393 GraphicUsed by:394
Symbol 394 MovieClipUses:393Used by:472
Symbol 395 GraphicUsed by:472
Symbol 396 GraphicUsed by:472
Symbol 397 GraphicUsed by:472
Symbol 398 GraphicUsed by:472
Symbol 399 GraphicUsed by:472
Symbol 400 GraphicUsed by:472
Symbol 401 GraphicUsed by:472
Symbol 402 GraphicUsed by:472
Symbol 403 GraphicUsed by:472
Symbol 404 GraphicUsed by:472
Symbol 405 GraphicUsed by:472
Symbol 406 GraphicUsed by:472
Symbol 407 GraphicUsed by:472
Symbol 408 GraphicUsed by:472
Symbol 409 GraphicUsed by:472
Symbol 410 GraphicUsed by:472
Symbol 411 GraphicUsed by:472
Symbol 412 GraphicUsed by:472
Symbol 413 GraphicUsed by:472
Symbol 414 GraphicUsed by:472
Symbol 415 GraphicUsed by:472
Symbol 416 GraphicUsed by:472
Symbol 417 GraphicUsed by:472
Symbol 418 GraphicUsed by:472
Symbol 419 GraphicUsed by:472
Symbol 420 GraphicUsed by:472
Symbol 421 GraphicUsed by:472
Symbol 422 GraphicUsed by:472
Symbol 423 GraphicUsed by:472
Symbol 424 GraphicUsed by:472
Symbol 425 GraphicUsed by:426
Symbol 426 MovieClipUses:425Used by:472
Symbol 427 GraphicUsed by:472
Symbol 428 GraphicUsed by:429
Symbol 429 MovieClipUses:428Used by:472
Symbol 430 GraphicUsed by:431
Symbol 431 MovieClipUses:430Used by:472
Symbol 432 GraphicUsed by:433
Symbol 433 MovieClipUses:432Used by:472
Symbol 434 GraphicUsed by:472
Symbol 435 GraphicUsed by:472
Symbol 436 GraphicUsed by:472
Symbol 437 GraphicUsed by:472
Symbol 438 GraphicUsed by:472
Symbol 439 GraphicUsed by:472
Symbol 440 GraphicUsed by:472
Symbol 441 GraphicUsed by:472
Symbol 442 GraphicUsed by:472
Symbol 443 GraphicUsed by:472
Symbol 444 GraphicUsed by:472
Symbol 445 GraphicUsed by:472
Symbol 446 GraphicUsed by:472
Symbol 447 GraphicUsed by:472
Symbol 448 GraphicUsed by:472
Symbol 449 GraphicUsed by:472
Symbol 450 GraphicUsed by:472
Symbol 451 GraphicUsed by:472
Symbol 452 GraphicUsed by:472
Symbol 453 GraphicUsed by:454
Symbol 454 MovieClipUses:453Used by:472
Symbol 455 GraphicUsed by:472
Symbol 456 GraphicUsed by:472
Symbol 457 GraphicUsed by:472
Symbol 458 GraphicUsed by:472
Symbol 459 GraphicUsed by:472
Symbol 460 GraphicUsed by:472
Symbol 461 GraphicUsed by:472
Symbol 462 GraphicUsed by:472
Symbol 463 GraphicUsed by:472
Symbol 464 GraphicUsed by:472
Symbol 465 GraphicUsed by:472
Symbol 466 GraphicUsed by:472
Symbol 467 GraphicUsed by:472
Symbol 468 GraphicUsed by:472
Symbol 469 GraphicUsed by:472
Symbol 470 GraphicUsed by:472
Symbol 471 GraphicUsed by:472
Symbol 472 MovieClip [Char]Uses:375 376 377 378 379 380 381 382 383 384 385 386 387 389 390 392 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 426 427 429 431 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471Used by:642
Symbol 473 GraphicUsed by:481
Symbol 474 GraphicUsed by:481
Symbol 475 GraphicUsed by:481
Symbol 476 GraphicUsed by:481
Symbol 477 GraphicUsed by:481
Symbol 478 GraphicUsed by:481
Symbol 479 GraphicUsed by:481
Symbol 480 GraphicUsed by:481
Symbol 481 MovieClip [TorchMC]Uses:473 474 475 476 477 478 479 480Used by:642
Symbol 482 Bitmap [Tile1001A]Used by:539
Symbol 483 Bitmap [Tile1002A]Used by:539
Symbol 484 Bitmap [Tile1003A]Used by:539
Symbol 485 Bitmap [Tile1004A]Used by:539
Symbol 486 Bitmap [Tile10A]Used by:539
Symbol 487 Bitmap [Tile11A]Used by:539
Symbol 488 Bitmap [Tile12A]Used by:539
Symbol 489 Bitmap [Tile13A]Used by:539
Symbol 490 Bitmap [Tile14A]Used by:539
Symbol 491 Bitmap [Tile15A]Used by:539
Symbol 492 Bitmap [Tile16A]Used by:539
Symbol 493 Bitmap [Tile17A]Used by:539
Symbol 494 Bitmap [Tile18A]Used by:539
Symbol 495 Bitmap [Tile19A]Used by:539
Symbol 496 Bitmap [Tile1A]Used by:539
Symbol 497 Bitmap [Tile20A]Used by:539
Symbol 498 Bitmap [Tile21A]Used by:539
Symbol 499 Bitmap [Tile22A]Used by:539
Symbol 500 Bitmap [Tile23A]Used by:539
Symbol 501 Bitmap [Tile24A]Used by:539
Symbol 502 Bitmap [Tile25A]Used by:539
Symbol 503 Bitmap [Tile26A]Used by:539
Symbol 504 Bitmap [Tile27A]Used by:539
Symbol 505 Bitmap [Tile28A]Used by:539
Symbol 506 Bitmap [Tile29A]Used by:539
Symbol 507 Bitmap [Tile2A]Used by:539
Symbol 508 Bitmap [Tile30A]Used by:539
Symbol 509 Bitmap [Tile31A]Used by:539
Symbol 510 Bitmap [Tile32A]Used by:539
Symbol 511 Bitmap [Tile33A]Used by:539
Symbol 512 Bitmap [Tile34A]Used by:539
Symbol 513 Bitmap [Tile35A]Used by:539
Symbol 514 Bitmap [Tile36A]Used by:539
Symbol 515 Bitmap [Tile37A]Used by:539
Symbol 516 Bitmap [Tile38A]Used by:539
Symbol 517 Bitmap [Tile39A]Used by:539
Symbol 518 Bitmap [Tile3A]Used by:539
Symbol 519 Bitmap [Tile40A]Used by:539
Symbol 520 Bitmap [Tile41A]Used by:539
Symbol 521 Bitmap [Tile42A]Used by:539
Symbol 522 Bitmap [Tile43A]Used by:539
Symbol 523 Bitmap [Tile44A]Used by:539
Symbol 524 Bitmap [Tile45A]Used by:539
Symbol 525 Bitmap [Tile46A]Used by:539
Symbol 526 Bitmap [Tile47A]Used by:539
Symbol 527 Bitmap [Tile48A]Used by:539
Symbol 528 Bitmap [Tile4A]Used by:539
Symbol 529 Bitmap [Tile55A]Used by:539
Symbol 530 Bitmap [Tile56A]Used by:539
Symbol 531 Bitmap [Tile57A]Used by:539
Symbol 532 Bitmap [Tile58A]Used by:539
Symbol 533 Bitmap [Tile59A]Used by:539
Symbol 534 Bitmap [Tile5A]Used by:539
Symbol 535 Bitmap [Tile6A]Used by:539
Symbol 536 Bitmap [Tile7A]Used by:539
Symbol 537 Bitmap [Tile8A]Used by:539
Symbol 538 Bitmap [Tile9A]Used by:539
Symbol 539 GraphicUses:482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538Used by:642
Symbol 540 GraphicUsed by:541
Symbol 541 MovieClip [Eraser]Uses:540Used by:642
Symbol 542 GraphicUsed by:543
Symbol 543 MovieClip [Box]Uses:542Used by:642
Symbol 544 GraphicUsed by:545
Symbol 545 MovieClip [Bin]Uses:544Used by:642
Symbol 546 EditableTextUses:76Used by:572
Symbol 547 EditableTextUses:76Used by:572
Symbol 548 TextUses:76Used by:572
Symbol 549 GraphicUsed by:553
Symbol 550 TextUses:76Used by:553
Symbol 551 GraphicUsed by:553
Symbol 552 TextUses:76Used by:553
Symbol 553 MovieClipUses:549 550 551 552Used by:572
Symbol 554 GraphicUsed by:558
Symbol 555 TextUses:76Used by:558
Symbol 556 GraphicUsed by:558
Symbol 557 TextUses:76Used by:558
Symbol 558 MovieClipUses:554 555 556 557Used by:572
Symbol 559 GraphicUsed by:563
Symbol 560 TextUses:76Used by:563
Symbol 561 GraphicUsed by:563
Symbol 562 TextUses:76Used by:563
Symbol 563 MovieClipUses:559 560 561 562Used by:572
Symbol 564 FontUsed by:565
Symbol 565 TextUses:564Used by:572
Symbol 566 GraphicUsed by:568
Symbol 567 GraphicUsed by:568
Symbol 568 MovieClip [musique]Uses:566 567Used by:572
Symbol 569 GraphicUsed by:571
Symbol 570 GraphicUsed by:571
Symbol 571 MovieClip [musique2]Uses:569 570Used by:572
Symbol 572 MovieClip [Stats]Uses:546 547 548 287 553 558 563 565 568 571Used by:642
Symbol 573 GraphicUsed by:586 610
Symbol 574 GraphicUsed by:575
Symbol 575 MovieClipUses:574Used by:586 627
Symbol 576 GraphicUsed by:577
Symbol 577 MovieClipUses:576Used by:586 627
Symbol 578 GraphicUsed by:579
Symbol 579 MovieClipUses:578Used by:586 627
Symbol 580 GraphicUsed by:581
Symbol 581 MovieClipUses:580Used by:586
Symbol 582 GraphicUsed by:585
Symbol 583 GraphicUsed by:585
Symbol 584 GraphicUsed by:585
Symbol 585 MovieClipUses:582 583 584Used by:586
Symbol 586 MovieClipUses:573 18 575 577 579 581 585Used by:627
Symbol 587 GraphicUsed by:588
Symbol 588 MovieClipUses:587Used by:627
Symbol 589 GraphicUsed by:590
Symbol 590 MovieClipUses:589Used by:626 627
Symbol 591 GraphicUsed by:627
Symbol 592 GraphicUsed by:627
Symbol 593 GraphicUsed by:594
Symbol 594 MovieClipUses:593Used by:627
Symbol 595 GraphicUsed by:627
Symbol 596 GraphicUsed by:627
Symbol 597 GraphicUsed by:598
Symbol 598 MovieClipUses:597Used by:610
Symbol 599 GraphicUsed by:609
Symbol 600 GraphicUsed by:607
Symbol 601 GraphicUsed by:607
Symbol 602 GraphicUsed by:607
Symbol 603 GraphicUsed by:607
Symbol 604 GraphicUsed by:607
Symbol 605 GraphicUsed by:607
Symbol 606 GraphicUsed by:607
Symbol 607 MovieClipUses:600 601 602 603 604 605 606Used by:609
Symbol 608 GraphicUsed by:609
Symbol 609 MovieClipUses:599 607 608Used by:610
Symbol 610 MovieClipUses:573 18 598 28 609 25Used by:627
Symbol 611 GraphicUsed by:612
Symbol 612 MovieClipUses:611Used by:626
Symbol 613 GraphicUsed by:614
Symbol 614 MovieClipUses:613Used by:626
Symbol 615 GraphicUsed by:616
Symbol 616 MovieClipUses:615Used by:626
Symbol 617 GraphicUsed by:618
Symbol 618 MovieClipUses:617Used by:626
Symbol 619 GraphicUsed by:620
Symbol 620 MovieClipUses:619Used by:626
Symbol 621 GraphicUsed by:622
Symbol 622 MovieClipUses:621Used by:626
Symbol 623 GraphicUsed by:625
Symbol 624 GraphicUsed by:625
Symbol 625 MovieClipUses:623 624Used by:626
Symbol 626 MovieClipUses:590 612 614 616 618 620 622 625Used by:627
Symbol 627 MovieClip [playhubSplash]Uses:30 586 588 590 591 592 594 595 575 577 579 596 610 626 SS1Used by:642
Symbol 628 Sound [Throw Kunai Sound]Used by:642
Symbol 629 Sound [Kill Bat Sound]Used by:642
Symbol 630 Sound [Jump Sound]Used by:642
Symbol 631 Sound [BuildBG]Used by:642
Symbol 632 Sound [CS]Used by:642
Symbol 633 Sound [GOS]Used by:642
Symbol 634 Sound [GS]Used by:642
Symbol 635 Sound [Hit2]Used by:642
Symbol 636 SoundUsed by:642
Symbol 637 Sound [LoseBG]Used by:642
Symbol 638 Sound [MS]Used by:642
Symbol 639 Sound [WinBG]Used by:642
Symbol 640 Sound [Throw Rope Sound]Used by:642
Symbol 641 Sound [LevelBG]Used by:642
Symbol 642 MovieClipUses:67 69 75 78 84 90 115 119 151 176 186 236 238 285 288 291 316 336 344 358 360 361 363 365 367 368 370 372 374 472 481 539 541 543 545 572 627 628 2 629 630 631 632 633 634 635 636 637 638 639 640 641Used by:Timeline
Symbol 643 GraphicUsed by:Timeline
Symbol 644 GraphicUsed by:647
Symbol 645 FontUsed by:646 1060 1065 1066 1069 1070 1073 1074
Symbol 646 TextUses:645Used by:647
Symbol 647 ButtonUses:644 646Used by:Timeline
Symbol 648 GraphicUsed by:Timeline
Symbol 649 GraphicUsed by:652
Symbol 650 TextUses:12Used by:652
Symbol 651 TextUses:12Used by:652
Symbol 652 ButtonUses:649 650 651Used by:Timeline
Symbol 653 GraphicUsed by:656
Symbol 654 TextUses:12Used by:656
Symbol 655 TextUses:12Used by:656
Symbol 656 ButtonUses:653 654 655Used by:Timeline
Symbol 657 GraphicUsed by:660
Symbol 658 TextUses:12Used by:660
Symbol 659 TextUses:12Used by:660
Symbol 660 ButtonUses:657 658 659Used by:Timeline
Symbol 661 GraphicUsed by:664
Symbol 662 TextUses:12Used by:664
Symbol 663 TextUses:12Used by:664
Symbol 664 ButtonUses:661 662 663Used by:Timeline
Symbol 665 TextUses:12Used by:Timeline
Symbol 666 FontUsed by:667 693
Symbol 667 TextUses:666Used by:670
Symbol 668 GraphicUsed by:669
Symbol 669 MovieClipUses:668Used by:670
Symbol 670 MovieClipUses:667 669Used by:Timeline
Symbol 671 GraphicUsed by:675
Symbol 672 TextUses:12Used by:675
Symbol 673 TextUses:12Used by:675
Symbol 674 GraphicUsed by:675
Symbol 675 ButtonUses:671 672 673 674Used by:Timeline
Symbol 676 GraphicUsed by:683 688
Symbol 677 GraphicUsed by:683 688
Symbol 678 GraphicUsed by:683 688
Symbol 679 GraphicUsed by:683 688
Symbol 680 GraphicUsed by:683 688
Symbol 681 GraphicUsed by:683
Symbol 682 GraphicUsed by:683
Symbol 683 MovieClipUses:676 677 191 678 679 680 681 682Used by:692
Symbol 684 GraphicUsed by:692
Symbol 685 TextUses:36Used by:692
Symbol 686 TextUses:36Used by:692
Symbol 687 GraphicUsed by:688
Symbol 688 MovieClipUses:676 677 191 678 679 680 687Used by:692
Symbol 689 TextUses:36Used by:692
Symbol 690 TextUses:36Used by:692
Symbol 691 GraphicUsed by:692
Symbol 692 ButtonUses:683 684 685 686 688 689 690 691Used by:Timeline
Symbol 693 TextUses:666Used by:694
Symbol 694 MovieClipUses:693Used by:697
Symbol 695 GraphicUsed by:696
Symbol 696 MovieClipUses:695Used by:697
Symbol 697 MovieClipUses:694 696Used by:Timeline
Symbol 698 GraphicUsed by:701
Symbol 699 GraphicUsed by:700
Symbol 700 MovieClipUses:699Used by:701 725
Symbol 701 MovieClipUses:698 700Used by:Timeline
Symbol 702 GraphicUsed by:703 715 717 719 721 723 727 728 729 731 733 735 853 923 927 929 931 937 940 942 982 984 1037 1039 1040 1041 1042 1043 1082 1083 1084
Symbol 703 MovieClipUses:702Used by:715 717 719 721 723 727 728 729 731 733 735 736 853 1037 1039 1040 1041 1042 1043 1082 1083 1084  Timeline
Symbol 704 GraphicUsed by:705
Symbol 705 MovieClipUses:704Used by:736  Timeline
Symbol 706 GraphicUsed by:715
Symbol 707 GraphicUsed by:714 926 939 983
Symbol 708 GraphicUsed by:714 926 939 983
Symbol 709 GraphicUsed by:714 926 939 983
Symbol 710 GraphicUsed by:714 926 939 983
Symbol 711 GraphicUsed by:714 926 939 983
Symbol 712 GraphicUsed by:714
Symbol 713 GraphicUsed by:714 926 939 983
Symbol 714 MovieClipUses:707 708 709 710 711 712 713Used by:715 717 719 721 723 727 728 729 731 733 735 853 1037 1039 1040 1041 1042 1043 1082 1083 1084
Symbol 715 ButtonUses:703 706 714 702Used by:Timeline
Symbol 716 GraphicUsed by:717 728
Symbol 717 ButtonUses:703 716 714 702Used by:Timeline
Symbol 718 GraphicUsed by:719 729
Symbol 719 ButtonUses:703 718 714 702Used by:Timeline
Symbol 720 GraphicUsed by:721
Symbol 721 ButtonUses:703 720 714 702Used by:Timeline
Symbol 722 GraphicUsed by:723
Symbol 723 ButtonUses:703 722 714 702Used by:Timeline
Symbol 724 GraphicUsed by:725
Symbol 725 MovieClipUses:724 700Used by:Timeline
Symbol 726 GraphicUsed by:727
Symbol 727 ButtonUses:703 726 714 702Used by:Timeline
Symbol 728 ButtonUses:703 716 714 702Used by:Timeline
Symbol 729 ButtonUses:703 718 714 702Used by:Timeline
Symbol 730 GraphicUsed by:731
Symbol 731 ButtonUses:703 730 714 702Used by:Timeline
Symbol 732 GraphicUsed by:733 1084
Symbol 733 ButtonUses:703 732 714 702Used by:Timeline
Symbol 734 GraphicUsed by:735
Symbol 735 ButtonUses:703 734 714 702Used by:Timeline
Symbol 736 MovieClipUses:703 705Used by:Timeline
Symbol 737 GraphicUsed by:Timeline
Symbol 738 TextUses:289Used by:Timeline
Symbol 739 GraphicUsed by:747
Symbol 740 TextUses:12Used by:747
Symbol 741 GraphicUsed by:747
Symbol 742 TextUses:12Used by:747
Symbol 743 GraphicUsed by:747
Symbol 744 TextUses:12Used by:747
Symbol 745 GraphicUsed by:746
Symbol 746 MovieClipUses:745Used by:747 759 769 786 796 806
Symbol 747 MovieClipUses:739 740 741 742 743 744 746Used by:Timeline
Symbol 748 GraphicUsed by:759
Symbol 749 TextUses:12Used by:759
Symbol 750 GraphicUsed by:759
Symbol 751 TextUses:12Used by:759
Symbol 752 GraphicUsed by:759
Symbol 753 TextUses:12Used by:759
Symbol 754 GraphicUsed by:759
Symbol 755 TextUses:12Used by:759
Symbol 756 GraphicUsed by:757
Symbol 757 MovieClipUses:756Used by:759 769 786 796 806
Symbol 758 GraphicUsed by:759
Symbol 759 MovieClipUses:748 749 750 751 752 753 746 754 755 757 758Used by:Timeline
Symbol 760 GraphicUsed by:769
Symbol 761 TextUses:12Used by:769
Symbol 762 GraphicUsed by:769
Symbol 763 TextUses:12Used by:769
Symbol 764 GraphicUsed by:769
Symbol 765 TextUses:12Used by:769
Symbol 766 GraphicUsed by:769
Symbol 767 TextUses:12Used by:769
Symbol 768 GraphicUsed by:769
Symbol 769 MovieClipUses:760 761 762 763 764 765 746 766 757 767 768Used by:Timeline
Symbol 770 TextUses:289Used by:Timeline
Symbol 771 EditableTextUses:253Used by:Timeline
Symbol 772 EditableTextUses:253Used by:Timeline
Symbol 773 EditableTextUses:253Used by:Timeline
Symbol 774 EditableTextUses:253Used by:Timeline
Symbol 775 EditableTextUses:253Used by:Timeline
Symbol 776 EditableTextUses:253Used by:Timeline
Symbol 777 GraphicUsed by:786
Symbol 778 TextUses:12Used by:786
Symbol 779 GraphicUsed by:786
Symbol 780 TextUses:12Used by:786
Symbol 781 GraphicUsed by:786
Symbol 782 TextUses:12Used by:786
Symbol 783 GraphicUsed by:786
Symbol 784 TextUses:12Used by:786
Symbol 785 GraphicUsed by:786
Symbol 786 MovieClipUses:777 778 779 780 781 782 746 783 784 757 785Used by:Timeline
Symbol 787 GraphicUsed by:796
Symbol 788 TextUses:12Used by:796
Symbol 789 GraphicUsed by:796
Symbol 790 TextUses:12Used by:796
Symbol 791 GraphicUsed by:796
Symbol 792 TextUses:12Used by:796
Symbol 793 GraphicUsed by:796
Symbol 794 TextUses:12Used by:796
Symbol 795 GraphicUsed by:796
Symbol 796 MovieClipUses:787 788 789 790 791 792 746 793 757 794 795Used by:Timeline
Symbol 797 GraphicUsed by:806
Symbol 798 TextUses:12Used by:806
Symbol 799 GraphicUsed by:806
Symbol 800 TextUses:12Used by:806
Symbol 801 GraphicUsed by:806
Symbol 802 TextUses:12Used by:806
Symbol 803 GraphicUsed by:806
Symbol 804 TextUses:12Used by:806
Symbol 805 GraphicUsed by:806
Symbol 806 MovieClipUses:797 798 799 800 801 802 746 803 757 804 805Used by:Timeline
Symbol 807 GraphicUsed by:811
Symbol 808 FontUsed by:809 810 1107 1130 1131
Symbol 809 TextUses:808Used by:811
Symbol 810 TextUses:808Used by:811
Symbol 811 ButtonUses:807 809 810Used by:Timeline
Symbol 812 TextUses:253Used by:820
Symbol 813 TextUses:253Used by:820
Symbol 814 TextUses:253Used by:820
Symbol 815 TextUses:253Used by:820
Symbol 816 TextUses:253Used by:820
Symbol 817 TextUses:253Used by:820
Symbol 818 TextUses:253Used by:820
Symbol 819 TextUses:253Used by:820
Symbol 820 MovieClipUses:812 813 814 815 816 817 818 819Used by:Timeline
Symbol 821 TextUses:76Used by:822
Symbol 822 MovieClipUses:821Used by:Timeline
Symbol 823 TextUses:12Used by:824
Symbol 824 MovieClipUses:823Used by:Timeline
Symbol 825 GraphicUsed by:828
Symbol 826 TextUses:76Used by:828
Symbol 827 TextUses:76Used by:828
Symbol 828 ButtonUses:825 826 827Used by:Timeline
Symbol 829 GraphicUsed by:833
Symbol 830 GraphicUsed by:831
Symbol 831 MovieClipUses:830Used by:833
Symbol 832 GraphicUsed by:833
Symbol 833 MovieClipUses:829 831 832Used by:Timeline
Symbol 834 GraphicUsed by:849
Symbol 835 GraphicUsed by:836
Symbol 836 ButtonUses:835Used by:849
Symbol 837 GraphicUsed by:849
Symbol 838 GraphicUsed by:839
Symbol 839 MovieClipUses:838Used by:849
Symbol 840 GraphicUsed by:845
Symbol 841 GraphicUsed by:845
Symbol 842 GraphicUsed by:845
Symbol 843 GraphicUsed by:845
Symbol 844 GraphicUsed by:845
Symbol 845 MovieClipUses:840 841 842 843 844Used by:849
Symbol 846 GraphicUsed by:847
Symbol 847 ButtonUses:846Used by:848 849
Symbol 848 MovieClipUses:847Used by:849
Symbol 849 MovieClipUses:834 836 837 839 845 847 848Used by:Timeline
Symbol 850 GraphicUsed by:851
Symbol 851 MovieClipUses:850Used by:Timeline
Symbol 852 GraphicUsed by:853 984 1037
Symbol 853 ButtonUses:703 852 714 702Used by:Timeline
Symbol 854 GraphicUsed by:860
Symbol 855 TextUses:76Used by:860
Symbol 856 TextUses:76Used by:860
Symbol 857 TextUses:76Used by:860
Symbol 858 TextUses:76Used by:860
Symbol 859 TextUses:253Used by:860
Symbol 860 MovieClipUses:854 855 856 857 858 859Used by:Timeline
Symbol 861 EditableTextUses:253Used by:Timeline
Symbol 862 EditableTextUses:76Used by:Timeline
Symbol 863 EditableTextUses:76Used by:Timeline
Symbol 864 GraphicUsed by:867
Symbol 865 TextUses:12Used by:867
Symbol 866 TextUses:12Used by:867
Symbol 867 ButtonUses:864 865 866Used by:Timeline
Symbol 868 GraphicUsed by:871
Symbol 869 TextUses:12Used by:871
Symbol 870 TextUses:12Used by:871
Symbol 871 ButtonUses:868 869 870Used by:Timeline
Symbol 872 GraphicUsed by:875
Symbol 873 TextUses:12Used by:875
Symbol 874 TextUses:12Used by:875
Symbol 875 ButtonUses:872 873 874Used by:Timeline
Symbol 876 EditableTextUses:76Used by:Timeline
Symbol 877 TextUses:12Used by:878
Symbol 878 MovieClipUses:877Used by:Timeline
Symbol 879 TextUses:12Used by:880
Symbol 880 MovieClipUses:879Used by:Timeline
Symbol 881 TextUses:289Used by:Timeline
Symbol 882 EditableTextUses:289Used by:Timeline
Symbol 883 EditableTextUses:289Used by:Timeline
Symbol 884 EditableTextUses:289Used by:Timeline
Symbol 885 TextUses:289Used by:Timeline
Symbol 886 EditableTextUses:289Used by:Timeline
Symbol 887 GraphicUsed by:889
Symbol 888 TextUses:12Used by:889
Symbol 889 MovieClipUses:887 888Used by:Timeline
Symbol 890 GraphicUsed by:899
Symbol 891 TextUses:12Used by:899
Symbol 892 TextUses:12Used by:899
Symbol 893 TextUses:12Used by:899
Symbol 894 TextUses:12Used by:899
Symbol 895 TextUses:12Used by:899
Symbol 896 TextUses:12Used by:899
Symbol 897 TextUses:12Used by:899
Symbol 898 TextUses:12Used by:899
Symbol 899 ButtonUses:890 891 892 893 894 895 896 897 898Used by:Timeline
Symbol 900 EditableTextUses:253Used by:Timeline
Symbol 901 EditableTextUses:253Used by:Timeline
Symbol 902 EditableTextUses:253Used by:Timeline
Symbol 903 EditableTextUses:253Used by:Timeline
Symbol 904 EditableTextUses:253Used by:Timeline
Symbol 905 EditableTextUses:253Used by:Timeline
Symbol 906 EditableTextUses:253Used by:Timeline
Symbol 907 EditableTextUses:253Used by:Timeline
Symbol 908 EditableTextUses:253Used by:Timeline
Symbol 909 EditableTextUses:253Used by:Timeline
Symbol 910 GraphicUsed by:914
Symbol 911 TextUses:12Used by:914
Symbol 912 TextUses:12Used by:914
Symbol 913 GraphicUsed by:914
Symbol 914 ButtonUses:910 911 912 913Used by:Timeline
Symbol 915 GraphicUsed by:922
Symbol 916 GraphicUsed by:917
Symbol 917 MovieClipUses:916Used by:922
Symbol 918 GraphicUsed by:922
Symbol 919 GraphicUsed by:922
Symbol 920 GraphicUsed by:921
Symbol 921 MovieClipUses:920Used by:922
Symbol 922 MovieClipUses:915 917 918 919 921Used by:Timeline
Symbol 923 MovieClipUses:702Used by:927 929 931
Symbol 924 GraphicUsed by:927
Symbol 925 GraphicUsed by:926 939 983
Symbol 926 MovieClipUses:707 708 709 710 711 925 713Used by:927 929 931
Symbol 927 ButtonUses:923 924 926 702Used by:Timeline
Symbol 928 GraphicUsed by:929 1082
Symbol 929 ButtonUses:923 928 926 702Used by:Timeline
Symbol 930 GraphicUsed by:931 1083
Symbol 931 ButtonUses:923 930 926 702Used by:Timeline
Symbol 932 GraphicUsed by:936
Symbol 933 GraphicUsed by:934
Symbol 934 MovieClipUses:933Used by:936
Symbol 935 GraphicUsed by:936
Symbol 936 MovieClipUses:932 934 935Used by:Timeline
Symbol 937 MovieClipUses:702Used by:940 942
Symbol 938 GraphicUsed by:940
Symbol 939 MovieClipUses:707 708 709 710 711 925 713Used by:940 942
Symbol 940 ButtonUses:937 938 939 702Used by:Timeline
Symbol 941 GraphicUsed by:942
Symbol 942 ButtonUses:937 941 939 702Used by:Timeline
Symbol 943 MovieClipUses:297 298 259 299 261Used by:Timeline
Symbol 944 EditableTextUses:249Used by:Timeline
Symbol 945 TextUses:242Used by:Timeline
Symbol 946 GraphicUsed by:949
Symbol 947 EditableTextUses:76Used by:949
Symbol 948 EditableTextUses:76Used by:949
Symbol 949 ButtonUses:946 947 948Used by:Timeline
Symbol 950 GraphicUsed by:951
Symbol 951 ButtonUses:950 269 271Used by:Timeline
Symbol 952 EditableTextUses:289Used by:Timeline
Symbol 953 EditableTextUses:289Used by:Timeline
Symbol 954 EditableTextUses:289Used by:Timeline
Symbol 955 EditableTextUses:289Used by:Timeline
Symbol 956 EditableTextUses:289Used by:Timeline
Symbol 957 GraphicUsed by:Timeline
Symbol 958 GraphicUsed by:978
Symbol 959 TextUses:253Used by:978
Symbol 960 TextUses:253Used by:978
Symbol 961 TextUses:253Used by:978
Symbol 962 BitmapUsed by:966
Symbol 963 BitmapUsed by:966
Symbol 964 BitmapUsed by:966
Symbol 965 BitmapUsed by:966
Symbol 966 GraphicUses:962 963 964 965Used by:978
Symbol 967 TextUses:253Used by:978
Symbol 968 TextUses:253Used by:978
Symbol 969 TextUses:253Used by:978
Symbol 970 TextUses:253Used by:978
Symbol 971 TextUses:253Used by:978
Symbol 972 TextUses:253Used by:978
Symbol 973 TextUses:253Used by:978
Symbol 974 TextUses:253Used by:978
Symbol 975 TextUses:253Used by:978
Symbol 976 TextUses:253Used by:978
Symbol 977 TextUses:12Used by:978
Symbol 978 MovieClipUses:958 959 960 961 966 967 968 969 970 971 972 973 974 975 976 977Used by:Timeline
Symbol 979 BitmapUsed by:980
Symbol 980 GraphicUses:979Used by:981
Symbol 981 MovieClipUses:980Used by:Timeline
Symbol 982 MovieClipUses:702Used by:984
Symbol 983 MovieClipUses:707 708 709 710 711 925 713Used by:984
Symbol 984 ButtonUses:982 852 983 702Used by:Timeline
Symbol 985 GraphicUsed by:Timeline
Symbol 986 TextUses:76Used by:Timeline
Symbol 987 TextUses:76Used by:Timeline
Symbol 988 TextUses:76Used by:Timeline
Symbol 989 EditableTextUses:76Used by:Timeline
Symbol 990 EditableTextUses:76Used by:Timeline
Symbol 991 EditableTextUses:76Used by:Timeline
Symbol 992 GraphicUsed by:995
Symbol 993 EditableTextUses:76Used by:995
Symbol 994 EditableTextUses:76Used by:995
Symbol 995 ButtonUses:992 993 994Used by:Timeline
Symbol 996 TextUses:76Used by:Timeline
Symbol 997 EditableTextUses:76Used by:Timeline
Symbol 998 EditableTextUses:76Used by:Timeline
Symbol 999 GraphicUsed by:1000
Symbol 1000 MovieClipUses:999Used by:Timeline
Symbol 1001 EditableTextUses:76Used by:Timeline
Symbol 1002 GraphicUsed by:1005
Symbol 1003 TextUses:76Used by:1005
Symbol 1004 TextUses:76Used by:1005
Symbol 1005 ButtonUses:1002 1003 1004Used by:Timeline
Symbol 1006 EditableTextUses:76Used by:Timeline
Symbol 1007 GraphicUsed by:1010
Symbol 1008 TextUses:76Used by:1010
Symbol 1009 TextUses:76Used by:1010
Symbol 1010 ButtonUses:1007 1008 1009Used by:Timeline
Symbol 1011 GraphicUsed by:1012 1013
Symbol 1012 MovieClipUses:1011Used by:Timeline
Symbol 1013 MovieClipUses:1011Used by:Timeline
Symbol 1014 GraphicUsed by:1015 1016
Symbol 1015 MovieClipUses:1014Used by:Timeline
Symbol 1016 MovieClipUses:1014Used by:Timeline
Symbol 1017 TextUses:253Used by:1027
Symbol 1018 TextUses:76Used by:1027
Symbol 1019 TextUses:76Used by:1027
Symbol 1020 TextUses:76Used by:1027
Symbol 1021 TextUses:76Used by:1027
Symbol 1022 TextUses:12Used by:1027
Symbol 1023 TextUses:76Used by:1027
Symbol 1024 TextUses:76Used by:1027
Symbol 1025 TextUses:76Used by:1027
Symbol 1026 TextUses:76Used by:1027
Symbol 1027 MovieClipUses:1017 1018 1019 1020 1021 1022 1023 1024 1025 1026Used by:Timeline
Symbol 1028 GraphicUsed by:1029
Symbol 1029 MovieClipUses:1028Used by:1036
Symbol 1030 GraphicUsed by:1036
Symbol 1031 GraphicUsed by:1032
Symbol 1032 MovieClipUses:1031Used by:1036
Symbol 1033 GraphicUsed by:1036
Symbol 1034 GraphicUsed by:1035
Symbol 1035 MovieClipUses:1034Used by:1036
Symbol 1036 MovieClipUses:1029 1030 1032 1033 1035Used by:Timeline
Symbol 1037 ButtonUses:703 852 714 702Used by:Timeline
Symbol 1038 GraphicUsed by:1039
Symbol 1039 ButtonUses:703 1038 714 702Used by:Timeline
Symbol 1040 ButtonUses:703 714 702Used by:Timeline
Symbol 1041 ButtonUses:703 714 702Used by:Timeline
Symbol 1042 ButtonUses:703 714 702Used by:Timeline
Symbol 1043 ButtonUses:703 714 702Used by:Timeline
Symbol 1044 GraphicUsed by:1045
Symbol 1045 ButtonUses:1044Used by:Timeline
Symbol 1046 GraphicUsed by:1047
Symbol 1047 ButtonUses:1046Used by:Timeline
Symbol 1048 EditableTextUses:76Used by:Timeline
Symbol 1049 EditableTextUses:76Used by:Timeline
Symbol 1050 EditableTextUses:76Used by:Timeline
Symbol 1051 EditableTextUses:76Used by:Timeline
Symbol 1052 GraphicUsed by:1053
Symbol 1053 MovieClipUses:1052Used by:Timeline
Symbol 1054 GraphicUsed by:1055
Symbol 1055 MovieClipUses:1054Used by:Timeline
Symbol 1056 GraphicUsed by:1057
Symbol 1057 MovieClipUses:1056Used by:1058
Symbol 1058 MovieClipUses:1057Used by:Timeline
Symbol 1059 EditableTextUses:76Used by:Timeline
Symbol 1060 TextUses:645Used by:Timeline
Symbol 1061 GraphicUsed by:1062
Symbol 1062 MovieClipUses:1061Used by:Timeline
Symbol 1063 FontUsed by:1064
Symbol 1064 TextUses:1063Used by:Timeline
Symbol 1065 TextUses:645Used by:1068
Symbol 1066 TextUses:645Used by:1068
Symbol 1067 GraphicUsed by:1068
Symbol 1068 ButtonUses:1065 1066 1067Used by:Timeline
Symbol 1069 TextUses:645Used by:1072
Symbol 1070 TextUses:645Used by:1072
Symbol 1071 GraphicUsed by:1072
Symbol 1072 ButtonUses:1069 1070 1071Used by:Timeline
Symbol 1073 TextUses:645Used by:1075
Symbol 1074 TextUses:645Used by:1075
Symbol 1075 ButtonUses:1073 1074Used by:Timeline
Symbol 1076 GraphicUsed by:1081
Symbol 1077 GraphicUsed by:1078
Symbol 1078 MovieClipUses:1077Used by:1081
Symbol 1079 GraphicUsed by:1080
Symbol 1080 MovieClipUses:1079Used by:1081
Symbol 1081 MovieClipUses:1076 1078 1080Used by:Timeline
Symbol 1082 ButtonUses:703 928 714 702Used by:Timeline
Symbol 1083 ButtonUses:703 930 714 702Used by:Timeline
Symbol 1084 ButtonUses:703 732 714 702Used by:Timeline
Symbol 1085 GraphicUsed by:Timeline
Symbol 1086 EditableTextUses:76Used by:Timeline
Symbol 1087 GraphicUsed by:1090
Symbol 1088 TextUses:76Used by:1090
Symbol 1089 TextUses:76Used by:1090
Symbol 1090 ButtonUses:1087 1088 1089Used by:Timeline
Symbol 1091 TextUses:12Used by:1094
Symbol 1092 TextUses:12Used by:1094
Symbol 1093 GraphicUsed by:1094
Symbol 1094 ButtonUses:1091 1092 1093Used by:Timeline
Symbol 1095 TextUses:12Used by:1098
Symbol 1096 TextUses:12Used by:1098
Symbol 1097 GraphicUsed by:1098
Symbol 1098 ButtonUses:1095 1096 1097Used by:Timeline
Symbol 1099 EditableTextUses:76Used by:Timeline
Symbol 1100 EditableTextUses:76Used by:Timeline
Symbol 1101 EditableTextUses:76Used by:Timeline
Symbol 1102 TextUses:76Used by:Timeline
Symbol 1103 TextUses:76Used by:Timeline
Symbol 1104 TextUses:76Used by:Timeline
Symbol 1105 TextUses:76Used by:Timeline
Symbol 1106 EditableTextUses:76Used by:Timeline
Symbol 1107 TextUses:808Used by:Timeline
Symbol 1108 TextUses:12Used by:Timeline
Symbol 1109 TextUses:76Used by:Timeline
Symbol 1110 TextUses:76Used by:Timeline
Symbol 1111 TextUses:76Used by:Timeline
Symbol 1112 EditableTextUses:76Used by:Timeline
Symbol 1113 EditableTextUses:76Used by:Timeline
Symbol 1114 EditableTextUses:76Used by:Timeline
Symbol 1115 EditableTextUses:76Used by:Timeline
Symbol 1116 TextUses:76Used by:Timeline
Symbol 1117 TextUses:12Used by:1120
Symbol 1118 TextUses:12Used by:1120
Symbol 1119 GraphicUsed by:1120
Symbol 1120 ButtonUses:1117 1118 1119Used by:Timeline
Symbol 1121 TextUses:12Used by:1124
Symbol 1122 TextUses:12Used by:1124
Symbol 1123 GraphicUsed by:1124
Symbol 1124 ButtonUses:1121 1122 1123Used by:Timeline
Symbol 1125 TextUses:12Used by:1128
Symbol 1126 TextUses:12Used by:1128
Symbol 1127 GraphicUsed by:1128
Symbol 1128 ButtonUses:1125 1126 1127Used by:Timeline
Symbol 1129 GraphicUsed by:1132
Symbol 1130 EditableTextUses:808Used by:1132
Symbol 1131 EditableTextUses:808Used by:1132
Symbol 1132 ButtonUses:1129 1130 1131Used by:Timeline
Symbol 1133 GraphicUsed by:Timeline
Symbol 1134 GraphicUsed by:1136
Symbol 1135 TextUses:12Used by:1136
Symbol 1136 MovieClipUses:1134 1135Used by:Timeline
Streaming Sound 1Used by:Symbol 627 MovieClip [playhubSplash]

Instance Names

"PercentTxt"Frame 1Symbol 35 EditableText
"loaderbar"Frame 1Symbol 60 MovieClip
"LoadLevelsBtn"Frame 5Symbol 647 Button
"FullerLink"Frame 5Symbol 692 Button
"PlayButton"Frame 5Symbol 727 Button
"LevelBuilderButton"Frame 5Symbol 728 Button
"ImportButton"Frame 5Symbol 729 Button
"OptionsButton"Frame 5Symbol 731 Button
"MG"Frame 5Symbol 733 Button
"HowtoPlayButton"Frame 5Symbol 735 Button
"Title"Frame 5Symbol 736 MovieClip
"BestTimeEver"Frame 6Symbol 771 EditableText
"AwardTimeMT"Frame 6Symbol 772 EditableText
"AwardTimeHT"Frame 6Symbol 773 EditableText
"BestTimeTextLS"Frame 6Symbol 774 EditableText
"AwardTimeET"Frame 6Symbol 775 EditableText
"AwardTimeGT"Frame 6Symbol 776 EditableText
"BottomText"Frame 6Symbol 820 MovieClip
"TopText"Frame 6Symbol 822 MovieClip
"SL"Frame 6Symbol 824 MovieClip
"ImportButton"Frame 6Symbol 828 Button
"Level1"Frame 6Symbol 849 MovieClip
"Level2"Frame 6Symbol 849 MovieClip
"Level3"Frame 6Symbol 849 MovieClip
"Level4"Frame 6Symbol 849 MovieClip
"Level5"Frame 6Symbol 849 MovieClip
"Level6"Frame 6Symbol 849 MovieClip
"BacktoMenuButton"Frame 6Symbol 853 Button
"LCBG"Frame 8Symbol 860 MovieClip
"TimeHolderT"Frame 8Symbol 861 EditableText
"YT"Frame 8Symbol 862 EditableText
"BTT"Frame 8Symbol 863 EditableText
"SSTBtn"Frame 8Symbol 867 Button
"TryAgainButton"Frame 8Symbol 871 Button
"Message"Frame 8Symbol 876 EditableText
"LCT"Frame 8Symbol 878 MovieClip
"ENT"Frame 8Symbol 880 MovieClip
"BTL"Frame 8Symbol 884 EditableText
"Time3"Frame 8Symbol 900 EditableText
"Time4"Frame 8Symbol 901 EditableText
"Time5"Frame 8Symbol 902 EditableText
"Time6"Frame 8Symbol 903 EditableText
"Time7"Frame 8Symbol 904 EditableText
"Time8"Frame 8Symbol 905 EditableText
"Time9"Frame 8Symbol 906 EditableText
"Time0"Frame 8Symbol 907 EditableText
"Time1"Frame 8Symbol 908 EditableText
"Time2"Frame 8Symbol 909 EditableText
"MGBtn"Frame 8Symbol 927 Button
"LevelSelectButton"Frame 8Symbol 929 Button
"NextLevelButton"Frame 8Symbol 931 Button
"TLBG"Frame 8Symbol 936 MovieClip
"BackButton"Frame 8Symbol 940 Button
"MGBtnTL"Frame 8Symbol 942 Button
"TestOEButton"Frame 10Symbol 943 MovieClip
"LevelCodeT"Frame 10Symbol 944 EditableText
"CopyButton"Frame 10Symbol 949 Button
"BacktoMenuButton4"Frame 10Symbol 811 Button
"SaveBtn"Frame 10Symbol 951 Button
"Message"Frame 10Symbol 952 EditableText
"Submitter"Frame 10Symbol 955 EditableText
"LevelName"Frame 10Symbol 956 EditableText
"InsText"Frame 12Symbol 978 MovieClip
"BacktoMenuButton"Frame 12Symbol 984 Button
"UpKey"Frame 13Symbol 989 EditableText
"DownKey"Frame 13Symbol 990 EditableText
"RopeKey"Frame 13Symbol 991 EditableText
"ChangeUp"Frame 13Symbol 995 Button
"ChangeRope"Frame 13Symbol 995 Button
"ChangeDown"Frame 13Symbol 995 Button
"AimST"Frame 13Symbol 997 EditableText
"Increase"Frame 13Symbol 1000 MovieClip
"Decrease"Frame 13Symbol 1000 MovieClip
"EDB"Frame 13Symbol 1005 Button
"Message"Frame 13Symbol 1006 EditableText
"OptText"Frame 13Symbol 1027 MovieClip
"BacktoMenuButton"Frame 13Symbol 1037 Button
"RDB"Frame 13Symbol 1039 Button
"ChangeLeft"Frame 13Symbol 1040 Button
"ChangeRight"Frame 13Symbol 1041 Button
"ChangeJump"Frame 13Symbol 1042 Button
"ChangeKunai"Frame 13Symbol 1043 Button
"IncreaseQual"Frame 13Symbol 1045 Button
"DecreaseQual"Frame 13Symbol 1047 Button
"LeftKey"Frame 13Symbol 1048 EditableText
"RightKey"Frame 13Symbol 1049 EditableText
"JumpKey"Frame 13Symbol 1050 EditableText
"KunaiKey"Frame 13Symbol 1051 EditableText
"SliderBar2"Frame 13Symbol 1053 MovieClip
"SliderBar"Frame 13Symbol 1055 MovieClip
"Slider"Frame 13Symbol 1058 MovieClip
"Slider2"Frame 13Symbol 1058 MovieClip
"QualityDisplay"Frame 13Symbol 1059 EditableText
"EditGOBtn"Frame 14Symbol 728 Button
"LevelSelectButton"Frame 14Symbol 1082 Button
"TryAgainButton"Frame 14Symbol 1083 Button
"MG"Frame 14Symbol 1084 Button
"LevelCounter"Frame 15Symbol 1086 EditableText
"LRLBtn"Frame 15Symbol 1090 Button
"Rate2"Frame 15Symbol 1094 Button
"Rate1"Frame 15Symbol 1098 Button
"LevelInfoT"Frame 15Symbol 1099 EditableText
"LevelNameT"Frame 15Symbol 1100 EditableText
"SubmitterT"Frame 15Symbol 1101 EditableText
"RatingT"Frame 15Symbol 1106 EditableText
"Time0L"Frame 15Symbol 1112 EditableText
"Time2L"Frame 15Symbol 1113 EditableText
"Time1L"Frame 15Symbol 1114 EditableText
"Message"Frame 15Symbol 1115 EditableText
"BacktoMenuButton"Frame 15Symbol 811 Button
"Rate3"Frame 15Symbol 1120 Button
"Rate4"Frame 15Symbol 1124 Button
"Rate5"Frame 15Symbol 1128 Button
"PlayBtn"Frame 15Symbol 1132 Button
"Link"Frame 16Symbol 1136 MovieClip
"bulletOut"Symbol 25 MovieClip [armSCARF] Frame 1Symbol 22 MovieClip
"shellOut"Symbol 25 MovieClip [armSCARF] Frame 1Symbol 22 MovieClip
"magOut"Symbol 25 MovieClip [armSCARF] Frame 1Symbol 22 MovieClip
"FirstSpeechT"Symbol 78 MovieClip [FirstSpeech] Frame 1Symbol 77 EditableText
"arrow-rotate"Symbol 135 MovieClip Frame 1Symbol 134 MovieClip
"arm-rotate"Symbol 151 MovieClip [Enemy62] Frame 30Symbol 131 MovieClip
"fore-rotate"Symbol 151 MovieClip [Enemy62] Frame 30Symbol 135 MovieClip
"Arm"Symbol 151 MovieClip [Enemy62] Frame 38Symbol 131 MovieClip
"Bow"Symbol 151 MovieClip [Enemy62] Frame 38Symbol 145 MovieClip
"ContBuildingBtn"Symbol 285 MovieClip [InfoBox] Frame 1Symbol 248 MovieClip
"LevelCodeT"Symbol 285 MovieClip [InfoBox] Frame 2Symbol 250 EditableText
"Message"Symbol 285 MovieClip [InfoBox] Frame 2Symbol 252 EditableText
"Submitter"Symbol 285 MovieClip [InfoBox] Frame 2Symbol 256 EditableText
"LevelName"Symbol 285 MovieClip [InfoBox] Frame 2Symbol 257 EditableText
"TestOEBtn"Symbol 285 MovieClip [InfoBox] Frame 2Symbol 262 MovieClip
"CopyButton"Symbol 285 MovieClip [InfoBox] Frame 2Symbol 267 MovieClip
"SaveBtn"Symbol 285 MovieClip [InfoBox] Frame 2Symbol 272 MovieClip
"ContBuildingBtn2"Symbol 285 MovieClip [InfoBox] Frame 2Symbol 248 MovieClip
"YesBtn"Symbol 285 MovieClip [InfoBox] Frame 3Symbol 279 MovieClip
"NoBtn"Symbol 285 MovieClip [InfoBox] Frame 3Symbol 284 MovieClip
"Status"Symbol 291 MovieClip [LBNotice] Frame 1Symbol 290 EditableText
"TilesButton"Symbol 316 MovieClip [LevelBuilderMenu] Frame 1Symbol 296 MovieClip
"TestButton"Symbol 316 MovieClip [LevelBuilderMenu] Frame 1Symbol 300 Button
"InstructionsButton"Symbol 316 MovieClip [LevelBuilderMenu] Frame 1Symbol 305 Button
"ExportButton"Symbol 316 MovieClip [LevelBuilderMenu] Frame 1Symbol 310 MovieClip
"MenuButton"Symbol 316 MovieClip [LevelBuilderMenu] Frame 1Symbol 314 MovieClip
"AccTab"Symbol 336 MovieClip [TileMenu] Frame 1Symbol 320 MovieClip
"BGTab"Symbol 336 MovieClip [TileMenu] Frame 1Symbol 323 MovieClip
"WallTab"Symbol 336 MovieClip [TileMenu] Frame 1Symbol 326 MovieClip
"EneTab"Symbol 336 MovieClip [TileMenu] Frame 1Symbol 329 MovieClip
"ExitTileButton"Symbol 336 MovieClip [TileMenu] Frame 1Symbol 332 MovieClip
"PageMC"Symbol 336 MovieClip [TileMenu] Frame 1Symbol 335 MovieClip [PageChange]
"ImportCodeT"Symbol 344 MovieClip [ImportMC] Frame 1Symbol 337 EditableText
"ExitImportButton"Symbol 344 MovieClip [ImportMC] Frame 1Symbol 332 MovieClip
"ImportButtonLoad"Symbol 344 MovieClip [ImportMC] Frame 1Symbol 343 MovieClip
"Tip"Symbol 368 MovieClip [Kunai] Frame 1Symbol 361 MovieClip [HitPoint]
"Corner1"Symbol 368 MovieClip [Kunai] Frame 1Symbol 361 MovieClip [HitPoint]
"Corner2"Symbol 368 MovieClip [Kunai] Frame 1Symbol 361 MovieClip [HitPoint]
"CenterPoint"Symbol 368 MovieClip [Kunai] Frame 1Symbol 361 MovieClip [HitPoint]
"CenterPoint2"Symbol 368 MovieClip [Kunai] Frame 1Symbol 361 MovieClip [HitPoint]
"NinjaArm"Symbol 472 MovieClip [Char] Frame 303Symbol 426 MovieClip
"kunai-rope"Symbol 472 MovieClip [Char] Frame 312Symbol 431 MovieClip
"kunai-rope"Symbol 472 MovieClip [Char] Frame 314Symbol 433 MovieClip
"NinjaArm"Symbol 472 MovieClip [Char] Frame 326Symbol 426 MovieClip
"kunai-rope"Symbol 472 MovieClip [Char] Frame 335Symbol 431 MovieClip
"kunai-rope"Symbol 472 MovieClip [Char] Frame 336Symbol 433 MovieClip
"grab-kunai"Symbol 472 MovieClip [Char] Frame 344Symbol 431 MovieClip
"grab-kunai"Symbol 472 MovieClip [Char] Frame 360Symbol 431 MovieClip
"TimerT"Symbol 572 MovieClip [Stats] Frame 1Symbol 547 EditableText
"RestartButton"Symbol 572 MovieClip [Stats] Frame 1Symbol 553 MovieClip
"MenuButton"Symbol 572 MovieClip [Stats] Frame 1Symbol 558 MovieClip
"ContEditButton"Symbol 572 MovieClip [Stats] Frame 1Symbol 563 MovieClip
"MBtn"Symbol 572 MovieClip [Stats] Frame 1Symbol 568 MovieClip [musique]
"SFXBtn"Symbol 572 MovieClip [Stats] Frame 1Symbol 571 MovieClip [musique2]
"head"Symbol 586 MovieClip Frame 1Symbol 585 MovieClip
"shadow"Symbol 626 MovieClip Frame 1Symbol 590 MovieClip
"bodyZombie"Symbol 626 MovieClip Frame 1Symbol 625 MovieClip

Special Tags

FileAttributes (69)Timeline Frame 1Access local files only, Metadata not present, AS1/AS2.
ExportAssets (56)Timeline Frame 1Symbol 1 as "handGunHitBody"
ExportAssets (56)Timeline Frame 1Symbol 2 as "Step Sound"
ExportAssets (56)Timeline Frame 1Symbol 7 as "weaponSCARLogo"
ExportAssets (56)Timeline Frame 1Symbol 14 as "PauseScreen"
ExportAssets (56)Timeline Frame 1Symbol 25 as "armSCARF"
ExportAssets (56)Timeline Frame 1Symbol 27 as "magM4"
ExportAssets (56)Timeline Frame 1Symbol 28 as "armM4B"
ExportAssets (56)Timeline Frame 1Symbol 30 as "blindsClip"
ExportAssets (56)Timeline Frame 1Symbol 1137 as "__Packages.mx.transitions.OnEnterFrameBeacon"
ExportAssets (56)Timeline Frame 1Symbol 1138 as "__Packages.mx.transitions.BroadcasterMX"
ExportAssets (56)Timeline Frame 1Symbol 1139 as "__Packages.mx.transitions.Tween"
ExportAssets (56)Timeline Frame 1Symbol 1140 as "__Packages.mx.transitions.easing.Strong"
ExportAssets (56)Timeline Frame 1Symbol 1141 as "__Packages.mochi.as2.MochiSync"
ExportAssets (56)Timeline Frame 1Symbol 1142 as "__Packages.mochi.as2.MochiServices"
ExportAssets (56)Timeline Frame 1Symbol 1143 as "__Packages.mochi.as2.MochiEventDispatcher"
ExportAssets (56)Timeline Frame 1Symbol 1144 as "__Packages.mochi.as2.MochiEvents"
ExportAssets (56)Timeline Frame 1Symbol 1145 as "__Packages.mochi.as2.MochiCoins"
ExportAssets (56)Timeline Frame 2Symbol 69 as "LBBG"
ExportAssets (56)Timeline Frame 2Symbol 75 as "ABSplashScreen"
ExportAssets (56)Timeline Frame 2Symbol 78 as "FirstSpeech"
ExportAssets (56)Timeline Frame 2Symbol 84 as "Enemy60"
ExportAssets (56)Timeline Frame 2Symbol 90 as "Enemy59"
ExportAssets (56)Timeline Frame 2Symbol 115 as "Enemy58"
ExportAssets (56)Timeline Frame 2Symbol 119 as "Enemy54"
ExportAssets (56)Timeline Frame 2Symbol 151 as "Enemy62"
ExportAssets (56)Timeline Frame 2Symbol 176 as "Enemy61"
ExportAssets (56)Timeline Frame 2Symbol 177 as "Tile51A"
ExportAssets (56)Timeline Frame 2Symbol 178 as "Tile62A"
ExportAssets (56)Timeline Frame 2Symbol 179 as "Tile61A"
ExportAssets (56)Timeline Frame 2Symbol 180 as "Tile60A"
ExportAssets (56)Timeline Frame 2Symbol 181 as "Tile53A"
ExportAssets (56)Timeline Frame 2Symbol 182 as "Tile49A"
ExportAssets (56)Timeline Frame 2Symbol 183 as "Tile52A"
ExportAssets (56)Timeline Frame 2Symbol 184 as "Tile50A"
ExportAssets (56)Timeline Frame 2Symbol 185 as "Tile54A"
ExportAssets (56)Timeline Frame 2Symbol 236 as "MySplashScreen"
ExportAssets (56)Timeline Frame 2Symbol 238 as "Particle"
ExportAssets (56)Timeline Frame 2Symbol 285 as "InfoBox"
ExportAssets (56)Timeline Frame 2Symbol 286 as "Coin"
ExportAssets (56)Timeline Frame 2Symbol 288 as "Collectable"
ExportAssets (56)Timeline Frame 2Symbol 291 as "LBNotice"
ExportAssets (56)Timeline Frame 2Symbol 316 as "LevelBuilderMenu"
ExportAssets (56)Timeline Frame 2Symbol 335 as "PageChange"
ExportAssets (56)Timeline Frame 2Symbol 336 as "TileMenu"
ExportAssets (56)Timeline Frame 2Symbol 344 as "ImportMC"
ExportAssets (56)Timeline Frame 2Symbol 358 as "LevelStats"
ExportAssets (56)Timeline Frame 2Symbol 360 as "Kunai2"
ExportAssets (56)Timeline Frame 2Symbol 361 as "HitPoint"
ExportAssets (56)Timeline Frame 2Symbol 363 as "HPBar"
ExportAssets (56)Timeline Frame 2Symbol 365 as "Marker"
ExportAssets (56)Timeline Frame 2Symbol 367 as "Target"
ExportAssets (56)Timeline Frame 2Symbol 368 as "Kunai"
ExportAssets (56)Timeline Frame 2Symbol 370 as "bar1"
ExportAssets (56)Timeline Frame 2Symbol 372 as "bar2"
ExportAssets (56)Timeline Frame 2Symbol 374 as "bar3"
ExportAssets (56)Timeline Frame 2Symbol 472 as "Char"
ExportAssets (56)Timeline Frame 2Symbol 481 as "TorchMC"
ExportAssets (56)Timeline Frame 2Symbol 482 as "Tile1001A"
ExportAssets (56)Timeline Frame 2Symbol 483 as "Tile1002A"
ExportAssets (56)Timeline Frame 2Symbol 484 as "Tile1003A"
ExportAssets (56)Timeline Frame 2Symbol 485 as "Tile1004A"
ExportAssets (56)Timeline Frame 2Symbol 486 as "Tile10A"
ExportAssets (56)Timeline Frame 2Symbol 487 as "Tile11A"
ExportAssets (56)Timeline Frame 2Symbol 488 as "Tile12A"
ExportAssets (56)Timeline Frame 2Symbol 489 as "Tile13A"
ExportAssets (56)Timeline Frame 2Symbol 490 as "Tile14A"
ExportAssets (56)Timeline Frame 2Symbol 491 as "Tile15A"
ExportAssets (56)Timeline Frame 2Symbol 492 as "Tile16A"
ExportAssets (56)Timeline Frame 2Symbol 493 as "Tile17A"
ExportAssets (56)Timeline Frame 2Symbol 494 as "Tile18A"
ExportAssets (56)Timeline Frame 2Symbol 495 as "Tile19A"
ExportAssets (56)Timeline Frame 2Symbol 496 as "Tile1A"
ExportAssets (56)Timeline Frame 2Symbol 497 as "Tile20A"
ExportAssets (56)Timeline Frame 2Symbol 498 as "Tile21A"
ExportAssets (56)Timeline Frame 2Symbol 499 as "Tile22A"
ExportAssets (56)Timeline Frame 2Symbol 500 as "Tile23A"
ExportAssets (56)Timeline Frame 2Symbol 501 as "Tile24A"
ExportAssets (56)Timeline Frame 2Symbol 502 as "Tile25A"
ExportAssets (56)Timeline Frame 2Symbol 503 as "Tile26A"
ExportAssets (56)Timeline Frame 2Symbol 504 as "Tile27A"
ExportAssets (56)Timeline Frame 2Symbol 505 as "Tile28A"
ExportAssets (56)Timeline Frame 2Symbol 506 as "Tile29A"
ExportAssets (56)Timeline Frame 2Symbol 507 as "Tile2A"
ExportAssets (56)Timeline Frame 2Symbol 508 as "Tile30A"
ExportAssets (56)Timeline Frame 2Symbol 509 as "Tile31A"
ExportAssets (56)Timeline Frame 2Symbol 510 as "Tile32A"
ExportAssets (56)Timeline Frame 2Symbol 511 as "Tile33A"
ExportAssets (56)Timeline Frame 2Symbol 512 as "Tile34A"
ExportAssets (56)Timeline Frame 2Symbol 513 as "Tile35A"
ExportAssets (56)Timeline Frame 2Symbol 514 as "Tile36A"
ExportAssets (56)Timeline Frame 2Symbol 515 as "Tile37A"
ExportAssets (56)Timeline Frame 2Symbol 516 as "Tile38A"
ExportAssets (56)Timeline Frame 2Symbol 517 as "Tile39A"
ExportAssets (56)Timeline Frame 2Symbol 518 as "Tile3A"
ExportAssets (56)Timeline Frame 2Symbol 519 as "Tile40A"
ExportAssets (56)Timeline Frame 2Symbol 520 as "Tile41A"
ExportAssets (56)Timeline Frame 2Symbol 521 as "Tile42A"
ExportAssets (56)Timeline Frame 2Symbol 522 as "Tile43A"
ExportAssets (56)Timeline Frame 2Symbol 523 as "Tile44A"
ExportAssets (56)Timeline Frame 2Symbol 524 as "Tile45A"
ExportAssets (56)Timeline Frame 2Symbol 525 as "Tile46A"
ExportAssets (56)Timeline Frame 2Symbol 526 as "Tile47A"
ExportAssets (56)Timeline Frame 2Symbol 527 as "Tile48A"
ExportAssets (56)Timeline Frame 2Symbol 528 as "Tile4A"
ExportAssets (56)Timeline Frame 2Symbol 529 as "Tile55A"
ExportAssets (56)Timeline Frame 2Symbol 530 as "Tile56A"
ExportAssets (56)Timeline Frame 2Symbol 531 as "Tile57A"
ExportAssets (56)Timeline Frame 2Symbol 532 as "Tile58A"
ExportAssets (56)Timeline Frame 2Symbol 533 as "Tile59A"
ExportAssets (56)Timeline Frame 2Symbol 534 as "Tile5A"
ExportAssets (56)Timeline Frame 2Symbol 535 as "Tile6A"
ExportAssets (56)Timeline Frame 2Symbol 536 as "Tile7A"
ExportAssets (56)Timeline Frame 2Symbol 537 as "Tile8A"
ExportAssets (56)Timeline Frame 2Symbol 538 as "Tile9A"
ExportAssets (56)Timeline Frame 2Symbol 541 as "Eraser"
ExportAssets (56)Timeline Frame 2Symbol 543 as "Box"
ExportAssets (56)Timeline Frame 2Symbol 545 as "Bin"
ExportAssets (56)Timeline Frame 2Symbol 568 as "musique"
ExportAssets (56)Timeline Frame 2Symbol 571 as "musique2"
ExportAssets (56)Timeline Frame 2Symbol 572 as "Stats"
ExportAssets (56)Timeline Frame 2Symbol 627 as "playhubSplash"
ExportAssets (56)Timeline Frame 2Symbol 628 as "Throw Kunai Sound"
ExportAssets (56)Timeline Frame 2Symbol 629 as "Kill Bat Sound"
ExportAssets (56)Timeline Frame 2Symbol 630 as "Jump Sound"
ExportAssets (56)Timeline Frame 2Symbol 631 as "BuildBG"
ExportAssets (56)Timeline Frame 2Symbol 632 as "CS"
ExportAssets (56)Timeline Frame 2Symbol 633 as "GOS"
ExportAssets (56)Timeline Frame 2Symbol 634 as "GS"
ExportAssets (56)Timeline Frame 2Symbol 635 as "Hit2"
ExportAssets (56)Timeline Frame 2Symbol 637 as "LoseBG"
ExportAssets (56)Timeline Frame 2Symbol 638 as "MS"
ExportAssets (56)Timeline Frame 2Symbol 639 as "WinBG"
ExportAssets (56)Timeline Frame 2Symbol 640 as "Throw Rope Sound"
ExportAssets (56)Timeline Frame 2Symbol 641 as "LevelBG"

Labels

"HolderFrameForExport"Frame 2
"Setup"Frame 3
"SplashScreen"Frame 4
"Menu"Frame 5
"LevelSelect"Frame 6
"Game"Frame 7
"Win"Frame 8
"LevelBuilder"Frame 9
"LevelCode"Frame 10
"QS"Frame 11
"HowtoPlay"Frame 12
"Options"Frame 13
"GameOver"Frame 14
"LevelLoader"Frame 15
"WrongSite"Frame 16
"QS2"Frame 17
"idle"Symbol 25 MovieClip [armSCARF] Frame 1
"shoot"Symbol 25 MovieClip [armSCARF] Frame 2
"reload"Symbol 25 MovieClip [armSCARF] Frame 4
"idle"Symbol 28 MovieClip [armM4B] Frame 1
"shoot"Symbol 28 MovieClip [armM4B] Frame 2
"reload"Symbol 28 MovieClip [armM4B] Frame 4
"run"Symbol 84 MovieClip [Enemy60] Frame 1
"bite"Symbol 84 MovieClip [Enemy60] Frame 10
"dead"Symbol 84 MovieClip [Enemy60] Frame 19
"fly"Symbol 90 MovieClip [Enemy59] Frame 1
"fall"Symbol 90 MovieClip [Enemy59] Frame 10
"dead"Symbol 90 MovieClip [Enemy59] Frame 18
"dive"Symbol 90 MovieClip [Enemy59] Frame 23
"run"Symbol 115 MovieClip [Enemy58] Frame 1
"bite"Symbol 115 MovieClip [Enemy58] Frame 22
"dead"Symbol 115 MovieClip [Enemy58] Frame 40
"walk"Symbol 115 MovieClip [Enemy58] Frame 47
"sit"Symbol 115 MovieClip [Enemy58] Frame 70
"stop"Symbol 119 MovieClip [Enemy54] Frame 1
"spike"Symbol 119 MovieClip [Enemy54] Frame 2
"stand"Symbol 151 MovieClip [Enemy62] Frame 1
"shoot"Symbol 151 MovieClip [Enemy62] Frame 2
"rotate"Symbol 151 MovieClip [Enemy62] Frame 38
"dead"Symbol 151 MovieClip [Enemy62] Frame 55
"still"Symbol 176 MovieClip [Enemy61] Frame 1
"walk"Symbol 176 MovieClip [Enemy61] Frame 2
"attack"Symbol 176 MovieClip [Enemy61] Frame 14
"dead"Symbol 176 MovieClip [Enemy61] Frame 55
"deadfinal"Symbol 176 MovieClip [Enemy61] Frame 60
"Neutral"Symbol 248 MovieClip Frame 1
"RollOver"Symbol 248 MovieClip Frame 2
"Neutral"Symbol 262 MovieClip Frame 1
"RollOver"Symbol 262 MovieClip Frame 2
"Neutral"Symbol 267 MovieClip Frame 1
"RollOver"Symbol 267 MovieClip Frame 2
"Neutral"Symbol 272 MovieClip Frame 1
"RollOver"Symbol 272 MovieClip Frame 2
"Neutral"Symbol 279 MovieClip Frame 1
"RollOver"Symbol 279 MovieClip Frame 2
"Neutral"Symbol 284 MovieClip Frame 1
"RollOver"Symbol 284 MovieClip Frame 2
"Instructions"Symbol 285 MovieClip [InfoBox] Frame 1
"Export"Symbol 285 MovieClip [InfoBox] Frame 2
"AreYouSure"Symbol 285 MovieClip [InfoBox] Frame 3
"Neutral"Symbol 296 MovieClip Frame 1
"RollOver"Symbol 296 MovieClip Frame 2
"Neutral"Symbol 310 MovieClip Frame 1
"RollOver"Symbol 310 MovieClip Frame 2
"Neutral"Symbol 314 MovieClip Frame 1
"RollOver"Symbol 314 MovieClip Frame 2
"Neutral"Symbol 332 MovieClip Frame 1
"RollOver"Symbol 332 MovieClip Frame 2
"Neutral"Symbol 343 MovieClip Frame 1
"RollOver"Symbol 343 MovieClip Frame 2
"stand"Symbol 472 MovieClip [Char] Frame 1
"jump-up"Symbol 472 MovieClip [Char] Frame 7
"land-up"Symbol 472 MovieClip [Char] Frame 15
"jump-left"Symbol 472 MovieClip [Char] Frame 25
"land-left"Symbol 472 MovieClip [Char] Frame 33
"jump-right"Symbol 472 MovieClip [Char] Frame 47
"land-right"Symbol 472 MovieClip [Char] Frame 56
"wall-jump-left-in"Symbol 472 MovieClip [Char] Frame 68
"slide-left"Symbol 472 MovieClip [Char] Frame 79
"slide-throw-left"Symbol 472 MovieClip [Char] Frame 88
"rotate1"Symbol 472 MovieClip [Char] Frame 95
"slide-throw-right"Symbol 472 MovieClip [Char] Frame 107
"rotate2"Symbol 472 MovieClip [Char] Frame 114
"wall-jump-left-out"Symbol 472 MovieClip [Char] Frame 129
"wall-jump-right-in"Symbol 472 MovieClip [Char] Frame 142
"slide-right"Symbol 472 MovieClip [Char] Frame 154
"wall-jump-right-out"Symbol 472 MovieClip [Char] Frame 164
"move-right"Symbol 472 MovieClip [Char] Frame 180
"move-left"Symbol 472 MovieClip [Char] Frame 200
"side-left"Symbol 472 MovieClip [Char] Frame 230
"side-right"Symbol 472 MovieClip [Char] Frame 237
"hit-left"Symbol 472 MovieClip [Char] Frame 245
"hit-right"Symbol 472 MovieClip [Char] Frame 255
"dead"Symbol 472 MovieClip [Char] Frame 266
"rope-left"Symbol 472 MovieClip [Char] Frame 303
"grab-kunai-left"Symbol 472 MovieClip [Char] Frame 304
"rotate3"Symbol 472 MovieClip [Char] Frame 314
"rope-right"Symbol 472 MovieClip [Char] Frame 326
"grab-kunai-right"Symbol 472 MovieClip [Char] Frame 327
"rotate4"Symbol 472 MovieClip [Char] Frame 336
"grab-kunai-left-stand"Symbol 472 MovieClip [Char] Frame 344
"grab-kunai-right-stand"Symbol 472 MovieClip [Char] Frame 360
"move-right-armout"Symbol 472 MovieClip [Char] Frame 381
"move-left-armout"Symbol 472 MovieClip [Char] Frame 401
"move-right-kunaiarm"Symbol 472 MovieClip [Char] Frame 424
"move-left-kunaiarm"Symbol 472 MovieClip [Char] Frame 444
"fall-die"Symbol 472 MovieClip [Char] Frame 468
"Neutral"Symbol 553 MovieClip Frame 1
"RollOver"Symbol 553 MovieClip Frame 2
"Neutral"Symbol 558 MovieClip Frame 1
"RollOver"Symbol 558 MovieClip Frame 2
"Neutral"Symbol 563 MovieClip Frame 1
"RollOver"Symbol 563 MovieClip Frame 2
"On"Symbol 568 MovieClip [musique] Frame 1
"Off"Symbol 568 MovieClip [musique] Frame 2
"On"Symbol 571 MovieClip [musique2] Frame 1
"Off"Symbol 571 MovieClip [musique2] Frame 2
"idle"Symbol 585 MovieClip Frame 1
"attack"Symbol 585 MovieClip Frame 2
"walk"Symbol 586 MovieClip Frame 1
"female"Symbol 598 MovieClip Frame 1
"run"Symbol 610 MovieClip Frame 1
"live"Symbol 625 MovieClip Frame 1
"dead"Symbol 625 MovieClip Frame 2
"Neutral"Symbol 747 MovieClip Frame 1
"RollOver"Symbol 747 MovieClip Frame 2
"Cleared"Symbol 747 MovieClip Frame 3
"ClearedOver"Symbol 747 MovieClip Frame 4
"Neutral"Symbol 759 MovieClip Frame 1
"RollOver"Symbol 759 MovieClip Frame 2
"Cleared"Symbol 759 MovieClip Frame 3
"Locked"Symbol 759 MovieClip Frame 4
"ClearedOver"Symbol 759 MovieClip Frame 5
"Neutral"Symbol 769 MovieClip Frame 1
"RollOver"Symbol 769 MovieClip Frame 2
"Cleared"Symbol 769 MovieClip Frame 3
"Locked"Symbol 769 MovieClip Frame 4
"ClearedOver"Symbol 769 MovieClip Frame 5
"Neutral"Symbol 786 MovieClip Frame 1
"RollOver"Symbol 786 MovieClip Frame 2
"Cleared"Symbol 786 MovieClip Frame 3
"Locked"Symbol 786 MovieClip Frame 4
"ClearedOver"Symbol 786 MovieClip Frame 5
"Neutral"Symbol 796 MovieClip Frame 1
"RollOver"Symbol 796 MovieClip Frame 2
"Cleared"Symbol 796 MovieClip Frame 3
"Locked"Symbol 796 MovieClip Frame 4
"ClearedOver"Symbol 796 MovieClip Frame 5
"Neutral"Symbol 806 MovieClip Frame 1
"RollOver"Symbol 806 MovieClip Frame 2
"Cleared"Symbol 806 MovieClip Frame 3
"Locked"Symbol 806 MovieClip Frame 4
"ClearedOver"Symbol 806 MovieClip Frame 5
"Locked"Symbol 849 MovieClip Frame 1
"Neutral"Symbol 849 MovieClip Frame 2
"RollOver"Symbol 849 MovieClip Frame 3
"Cleared"Symbol 849 MovieClip Frame 4
"ClearedOver"Symbol 849 MovieClip Frame 5

Dynamic Text Variables

_root.BestTimeTextSymbol 347 EditableText"<p align="left"></p>"
_root.UnlockNextSymbol 348 EditableText"<p align="left"></p>"
_root.AwardTimeETSymbol 354 EditableText""
_root.AwardTimeMTSymbol 355 EditableText""
_root.AwardTimeHTSymbol 356 EditableText""
_root.AwardTimeGTSymbol 357 EditableText""
_root.OrbsTextSymbol 546 EditableText"<p align="left"></p>"
_root.TotalTimeTSymbol 862 EditableText"<p align="center"><font face="Arial Black" size="25" color="#251f1b" letterSpacing="0.000000" kerning="1">00:00</font></p>"
_root.BestTimeTextSymbol 863 EditableText"<p align="center"><font face="Arial Black" size="25" color="#251f1b" letterSpacing="0.000000" kerning="1">00:00</font></p>"




http://swfchan.com/19/93584/info.shtml
Created: 26/3 -2019 15:58:46 Last modified: 26/3 -2019 15:58:46 Server time: 05/05 -2024 00:16:07