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

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

fat_cat.swf

This is the info page for
Flash #233102

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


Text
GAME IS LOADING

PLAY GAMES  ON  WWW.Y8.COM

??

Neko loves cake.
Feed him and press Space

stage 20

level select

level select

next level

next level

try again

try again

submit score

submit score

quit

quit

continue

continue

back

back

play

play

<p align="right"><font face="minimium_22pt_st" size="22" color="#000000" letterSpacing="0.000000" kerning="1">0</font></p>

PRESS 'SPACE' TO
CONTINUE

LEVEL SCORE

TOTAL SCORE

well done

game over

PRESS 'SPACE' TO
try again

the game is
'paused'

w

s

d

a

use the arrow keys or w, a, s, d to move
the cat. move the owl with the mouse.

d

a

w

s

hold down the mouse button to shoot with
the owl. feed the cat cake and press space
or Ctrl to fire the mega-laser.

the owl can press buttons, switch lasers and
drag blocks. he can even drag cakes
and the cat.

help

100.

name

4444444444

next

next

previous

previous

loading

scores are
available at
nitrome.com

click to play at
nitrome.com

submit

submit

clear

clear

a

your score is 280000

This game has been URL-Locked!
If you are reading this message then this
version of the game has been stolen and
hosted on a site without the prior permission
of Nitrome!
For licencing information please contact: enquiries@nitrome.com

INFO

PRESS SPACE
TO DESTROY

PRESS THIS BUTTON
WITH THE OWL

DRAG THIS
WITH THE OWL

WARNING!
DEADLY LASER

DO NOT
TOUCH!

Free Games AND ShowS

credits

dave cowen

aaron steed

simon hunter

artwork

programming

music

game by nitrome
www.nitrome.com

help

high scores

submit score

choose level

well done!
you finally reached the
intergalactic picnic area
and saved the
universe along the way.

your score is 0

0000000000

dsadfasfasdfasdfasdfasdfasfasdfasdfasdfasdfasdfasfasdfasdfasfasdfasdfasdfasdfasfasfasfasfasfasdfasfasfasfasdfasdfasdfasdfasdfasdfasdfasdfas

press space / ctrl

bonus

chain x 2

loading

test

test

test

ActionScript [AS3]

Section 1
//Facebook (com.nitrome.distribution.Facebook) package com.nitrome.distribution { import flash.display.*; import flash.events.*; import flash.net.*; public class Facebook extends SimpleButton { public function Facebook(){ this.addEventListener(MouseEvent.CLICK, onClick); } public function onClick(_arg1:MouseEvent){ navigateToURL(new URLRequest("http://www.facebook.com/Nitrome"), "_blank"); } } }//package com.nitrome.distribution
Section 2
//MoreGames (com.nitrome.distribution.MoreGames) package com.nitrome.distribution { import flash.display.*; import flash.events.*; import flash.net.*; public class MoreGames extends SimpleButton { public function MoreGames(){ this.addEventListener(MouseEvent.CLICK, onClick); } public function onClick(_arg1:MouseEvent){ navigateToURL(new URLRequest("http://www.flashgamelicense.com/view_account.php?username=nitromemat"), "_blank"); } } }//package com.nitrome.distribution
Section 3
//NitromeGamesIcon (com.nitrome.distribution.NitromeGamesIcon) package com.nitrome.distribution { import flash.display.*; import flash.events.*; import flash.geom.*; public class NitromeGamesIcon extends MovieClip { protected const PAUSE:Number = 90; protected var numFrames:Number; protected var counter:Number;// = 0 protected var gameFrame:Number;// = 0 protected var fadeAlpha:Number;// = 0 protected var bitmapData:BitmapData; protected var bitmap:Bitmap; protected var fading:Boolean; protected var fadeIn:Boolean; protected var nitromeIcon:Boolean; public function NitromeGamesIcon(){ init(); addEventListener(Event.ENTER_FRAME, onEnterFrame); addEventListener(Event.REMOVED_FROM_STAGE, onRemove); } private function onRemove(_arg1:Event):void{ removeEventListener(Event.REMOVED_FROM_STAGE, onRemove); removeEventListener(Event.ENTER_FRAME, onEnterFrame); } protected function init():void{ numFrames = totalFrames; gameFrame = numFrames; gotoAndStop(1); bitmapData = new BitmapData(width, height, true, 0xFFFFFF); bitmapData.draw(this); var _local1:Rectangle = bitmapData.rect; _local1.inflate(-3, -3); bitmapData.colorTransform(_local1, new ColorTransform(2, 2, 2, 1, 0xFF, 0xFF, 0xFF, 0)); addChild((bitmap = new Bitmap(bitmapData))); bitmap.alpha = fadeAlpha; } protected function onEnterFrame(_arg1:Event):void{ if (counter >= PAUSE){ updateIcon(); } else { counter++; }; } private function updateIcon():void{ if (fading){ changeVisuals(); } else { if (currentFrame != 1){ nitromeIcon = true; changeVisuals(); } else { if ((gameFrame + 1) >= numFrames){ gameFrame = 2; } else { gameFrame++; }; }; fading = true; fadeIn = true; }; } private function changeVisuals():void{ if (fadeIn){ fadeAlpha = (fadeAlpha + 0.1); } else { fadeAlpha = (fadeAlpha - 0.1); }; if (fadeAlpha > 1){ if (nitromeIcon){ gotoAndStop(1); nitromeIcon = false; } else { gotoAndStop(gameFrame); }; fadeIn = false; fadeAlpha = 1; } else { if (fadeAlpha < 0){ fading = false; counter = 0; fadeAlpha = 0; }; }; bitmap.alpha = fadeAlpha; } } }//package com.nitrome.distribution
Section 4
//Twitter (com.nitrome.distribution.Twitter) package com.nitrome.distribution { import flash.display.*; import flash.events.*; import flash.net.*; public class Twitter extends SimpleButton { public function Twitter(){ this.addEventListener(MouseEvent.CLICK, onClick); } public function onClick(_arg1:MouseEvent){ navigateToURL(new URLRequest("http://www.twitter.com/Nitrome"), "_blank"); } } }//package com.nitrome.distribution
Section 5
//Clip (com.nitrome.engine.Clip) package com.nitrome.engine { import flash.display.*; public class Clip { public var mc:Sprite; public var tile_id:int; public var map_x:int; public var map_y:int; public var init_x:int; public var init_y:int; public var g:Game; public var layer:int; public var block:Boolean;// = false public var force_field:Boolean;// = false public var encounter:Boolean;// = false public function Clip(_arg1:Sprite, _arg2:Game){ this.mc = _arg1; this.g = _arg2; } public function remove():void{ mc.parent.removeChild(mc); g.scroller.map_array_layers[layer][map_y][map_x] = tile_id; } } }//package com.nitrome.engine
Section 6
//Dot (com.nitrome.engine.Dot) package com.nitrome.engine { public class Dot { public var x:Number; public var y:Number; public var ix:Number; public var iy:Number; public function Dot(_arg1:Number=0, _arg2:Number=0){ this.x = (ix = _arg1); this.y = (iy = _arg2); } public function mul(_arg1:Number){ x = (x * _arg1); y = (y * _arg1); } public function pin():void{ x = ix; y = iy; } } }//package com.nitrome.engine
Section 7
//Encounter (com.nitrome.engine.Encounter) package com.nitrome.engine { import flash.display.*; import com.nitrome.engine_specific.*; public class Encounter extends Clip { public var active:Boolean; public var x:Number; public var y:Number; public var free:Boolean; public var has_main:Boolean; public var has_collision:Boolean; public var kill_on_collision:Boolean; public var skip:Boolean; public var spawned:Boolean;// = false public var reward:HiddenInt; public var monster:Boolean;// = false public function Encounter(_arg1:Sprite, _arg2:Game, _arg3:Boolean){ super(_arg1, _arg2); this.free = _arg3; encounter = true; x = _arg1.x; y = _arg1.y; active = true; has_main = false; has_collision = true; kill_on_collision = false; skip = false; _arg2.addEncounter(this); } public function intersects(_arg1:Rect):Boolean{ return (false); } public function contains(_arg1:Number, _arg2:Number):Boolean{ return (false); } public function resolvePlayerCollision(_arg1:Player):void{ } public function resolveWeaponCollision():void{ } public function unpause():void{ } public function debug():void{ } override public function remove():void{ var _local1:int; var _local2:int; if (active){ active = false; if (!free){ g.scroller.map_array_layers[layer][init_y][init_x] = tile_id; } else { _local1 = ((x * Game.SCALE) >> 0); _local2 = ((y * Game.SCALE) >> 0); if ((((g.scroller.map_array_layers[layer][_local2][_local1] == 0)) || ((g.scroller.map_array_layers[layer][_local2][_local1] == null)))){ g.scroller.map_array_layers[layer][_local2][_local1] = tile_id; } else { g.scroller.map_array_layers[layer][init_y][init_x] = tile_id; }; }; }; } } }//package com.nitrome.engine
Section 8
//HiddenInt (com.nitrome.engine.HiddenInt) package com.nitrome.engine { public class HiddenInt { private var _value:int; private var r:int; public function HiddenInt(_arg1:int=0){ r = (int((Math.random() * 2000000)) - 1000000); _value = (r + _arg1); } public function set value(_arg1:int):void{ r = (int((Math.random() * 2000000)) - 1000000); _value = (r + _arg1); } public function get value():int{ return ((_value - r)); } } }//package com.nitrome.engine
Section 9
//HiddenNumber (com.nitrome.engine.HiddenNumber) package com.nitrome.engine { public class HiddenNumber { private var _value:Number; private var r:Number; public function HiddenNumber(_arg1:Number=0){ r = (int((Math.random() * 2000000)) - 1000000); _value = (r + _arg1); } public function set value(_arg1:Number):void{ r = (int((Math.random() * 2000000)) - 1000000); _value = (r + _arg1); } public function get value():Number{ return ((_value - r)); } } }//package com.nitrome.engine
Section 10
//Line (com.nitrome.engine.Line) package com.nitrome.engine { import flash.display.*; public class Line { public var a:Dot; public var b:Dot; public var vx:Number; public var vy:Number; public var len:Number; public var dx:Number; public var dy:Number; public var rx:Number; public var ry:Number; public var lx:Number; public var ly:Number; public var theta:Number; public function Line(_arg1:Dot, _arg2:Dot){ this.a = _arg1; this.b = _arg2; updateLine(); } public function updateLine():void{ vx = (b.x - a.x); vy = (b.y - a.y); len = Math.sqrt(((vx * vx) + (vy * vy))); if (len > 0){ dx = (vx / len); dy = (vy / len); } else { dx = 0; dy = 0; }; rx = -(dy); ry = dx; lx = dy; ly = -(dx); } public function rotateA(_arg1:Number):void{ _arg1 = (_arg1 + atan2()); theta = _arg1; b.x = (a.x + (Math.cos(_arg1) * len)); b.y = (a.y + (Math.sin(_arg1) * len)); updateLine(); } public function rotateB(_arg1:Number):void{ _arg1 = (_arg1 + atan2()); theta = _arg1; a.x = (b.x + (Math.cos(_arg1) * len)); a.y = (b.y + (Math.sin(_arg1) * len)); updateLine(); } public function atan2():Number{ theta = Math.atan2(vy, vx); return (theta); } public function lerp(_arg1:Number):Object{ return ({x:(b.x + ((a.x - b.x) * _arg1)), y:(b.y + ((a.y - b.y) * _arg1))}); } public function toString():String{ return ((((((((("a:(" + a.x) + ",") + a.y) + ") b:(") + b.x) + ",") + b.y) + ")")); } public function draw(_arg1:Graphics):void{ _arg1.moveTo(a.x, a.y); _arg1.lineTo(b.x, b.y); } public function copy():Line{ return (new Line(new Dot(a.x, a.y), new Dot(b.x, b.y))); } public function proximity(_arg1:Number, _arg2:Number, _arg3:Number){ var _local10:Number; var _local11:Number; var _local12:Number; var _local13:*; var _local4:Dot = new Dot(_arg1, _arg2); var _local5:Line = this; var _local6:Number = (_local4.x - a.x); var _local7:Number = (_local4.y - a.y); var _local8:Number = dot(_local5, _local5); var _local9:Number = ((_local6 * _local5.vx) + (_local7 * _local5.vy)); if (_local9 < 0){ if (Util.proximity(a.x, a.y, _local4.x, _local4.y, _arg3)){ return (true); }; } else { if (_local9 > _local8){ if (Util.proximity(b.x, b.y, _local4.x, _local4.y, _arg3)){ return (true); }; } else { if ((((_local9 >= 0)) && ((_local9 <= _local8)))){ _local10 = ((_local6 * -(_local5.lx)) + (_local7 * -(_local5.ly))); _local11 = (_local10 * _local5.lx); _local12 = (_local10 * _local5.ly); _local13 = ((_local11 * _local11) + (_local12 * _local12)); if (((_arg3 * _arg3) - _local13) >= 0){ return (true); }; }; }; }; return (false); } public static function projection(_arg1:Line, _arg2:Line):Line{ var _local3:* = Line.dot(_arg1, _arg2); return (new Line(new Dot(0, 0), new Dot((_arg1.dx * _local3), (_arg1.dy * _local3)))); } public static function perP(_arg1:Object, _arg2:Object):Number{ var _local3:* = ((_arg1.vx * _arg2.vy) - (_arg1.vy * _arg2.vx)); return (_local3); } public static function miniPerP(_arg1:Object, _arg2:Object):Number{ var _local3:* = ((_arg1.dx * _arg2.dy) - (_arg1.dy * _arg2.dx)); return (_local3); } public static function intersectionPoint(_arg1:Object, _arg2:Object):Object{ var _local3:* = {vx:(_arg2.a.x - _arg1.a.x), vy:(_arg2.a.y - _arg1.a.y)}; var _local4:* = (perP(_local3, _arg2) / perP(_arg1, _arg2)); var _local5:* = {}; _local5.x = (_arg1.a.x + (_arg1.vx * _local4)); _local5.y = (_arg1.a.y + (_arg1.vy * _local4)); return (_local5); } public static function intersects(_arg1:Object, _arg2:Object):Boolean{ var _local3:* = {vx:(_arg2.a.x - _arg1.a.x), vy:(_arg2.a.y - _arg1.a.y)}; var _local4:* = perP(_local3, _arg2); var _local5:* = perP(_arg1, _arg2); var _local6:* = (_local4 / _local5); var _local7:* = (_local5 / _local4); return ((((((((_local6 >= 0)) && ((_local6 <= 1)))) && ((_local7 >= 0)))) && ((_local7 <= 1)))); } public static function dot(_arg1:Object, _arg2:Object):Number{ return (((_arg1.vx * _arg2.vx) + (_arg1.vy * _arg2.vy))); } public static function normal(_arg1:Object, _arg2:Object):Object{ var _local3:* = {x:(_arg1.x - _arg2.x), y:(_arg1.y - _arg2.y)}; var _local4:* = _local3.length; _local3.x = (_local3.x / _local4); _local3.y = (_local3.y / _local4); return (_local3); } } }//package com.nitrome.engine
Section 11
//LZW (com.nitrome.engine.LZW) package com.nitrome.engine { public class LZW { private static var xmlsafe:Boolean = true; public function compress(_arg1:String):String{ var _local4:Number; var _local11:String; var _local2:Array = new Array(); var _local3:Number = (xmlsafe) ? 5 : 0; _local4 = 0; while (_local4 < 0x0100) { _local2[String.fromCharCode(_local4)] = _local4; _local4++; }; if (xmlsafe){ _local2["<"] = 0x0100; _local2[">"] = 0x0101; _local2["&"] = 258; _local2["\""] = 259; _local2["'"] = 260; }; var _local5 = ""; var _local6:String = _arg1; var _local7:Array = _local6.split(""); var _local8:Number = _local7.length; var _local9:Number = (0x0100 + _local3); var _local10 = ""; _local4 = 0; while (_local4 <= _local8) { _local11 = _local7[_local4]; if (_local2[(_local10 + _local11)] !== undefined){ _local10 = (_local10 + _local11); } else { _local5 = (_local5 + String.fromCharCode(_local2[_local10])); _local2[(_local10 + _local11)] = _local9; _local9++; _local10 = _local11; }; _local4++; }; return (_local5); } public function numerate(_arg1:String):String{ var _local2:Array = _arg1.split(""); var _local3:int; while (_local3 < _local2.length) { _local2[_local3] = _local2[_local3].charCodeAt(0); _local2[_local3] = _local2[_local3].toString(16); _local3++; }; return (_local2.toString()); } public function denumerate(_arg1:String):String{ var _local2:Array = _arg1.split(","); var _local3 = ""; var _local4:int; while (_local4 < _local2.length) { _local3 = (_local3 + String.fromCharCode(parseInt(_local2[_local4], 16))); _local4++; }; return (_local3); } public function decompress(_arg1:String):String{ var _local4:Number; var _local12:String; var _local13:Number; var _local14:String; var _local2:Array = new Array(); var _local3:Number = (xmlsafe) ? 5 : 0; _local4 = 0; while (_local4 < 0x0100) { _local12 = String.fromCharCode(_local4); _local2[_local4] = _local12; _local4++; }; if (xmlsafe){ _local2[0x0100] = "<"; _local2[0x0101] = ">"; _local2[258] = "&"; _local2[259] = "\""; _local2[260] = "'"; }; var _local5:String = _arg1; var _local6:Array = _local5.split(""); var _local7:Number = _local6.length; var _local8:Number = (0x0100 + _local3); var _local9 = ""; var _local10 = ""; var _local11 = ""; _local4 = 0; while (_local4 < _local7) { _local13 = _local5.charCodeAt(_local4); _local14 = _local2[_local13]; if (_local9 == ""){ _local9 = _local14; _local11 = (_local11 + _local14); } else { if (_local13 <= (0xFF + _local3)){ _local11 = (_local11 + _local14); _local10 = (_local9 + _local14); _local2[_local8] = _local10; _local8++; _local9 = _local14; } else { _local10 = _local2[_local13]; if (_local10 == null){ _local10 = (_local9 + _local9.slice(0, 1)); }; _local11 = (_local11 + _local10); _local2[_local8] = (_local9 + _local10.slice(0, 1)); _local8++; _local9 = _local10; }; }; _local4++; }; return (_local11); } } }//package com.nitrome.engine
Section 12
//Particle (com.nitrome.engine.Particle) package com.nitrome.engine { public class Particle extends Dot { public var px:Number; public var py:Number; public var temp_x:Number; public var temp_y:Number; public function Particle(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); px = (temp_x = _arg1); py = (temp_y = _arg2); } public function verlet(_arg1:Number, _arg2:Number, _arg3:Number):void{ temp_x = x; temp_y = y; x = (x + ((_arg3 * (x - px)) + _arg1)); y = (y + ((_arg3 * (y - py)) + _arg2)); px = temp_x; py = temp_y; } public function setPosition(_arg1:Number, _arg2:Number):void{ this.x = (px = (temp_x = (ix = _arg1))); this.y = (py = (temp_y = (iy = _arg2))); } override public function pin():void{ x = (px = (temp_x = ix)); y = (py = (temp_y = iy)); } public function pinTo(_arg1:Number, _arg2:Number):void{ this.x = (ix = (px = (temp_x = _arg1))); this.y = (iy = (py = (temp_y = _arg2))); } public function getLine():Line{ return (new Line(new Dot(px, py), this)); } public function speed():Number{ return (Math.sqrt((((x - px) * (x - px)) + ((y - py) * (y - py))))); } public function yspeed():Number{ return ((y - py)); } public function xspeed():Number{ return ((x - px)); } public function addVelocity(_arg1:Number, _arg2:Number):void{ px = (px - _arg1); py = (py - _arg2); } public function copy():Particle{ var _local1:* = new Particle(x, y); _local1.px = px; _local1.py = py; return (_local1); } public function reverse(_arg1:Number):void{ var _local2:Number = (px - x); var _local3:Number = (py - y); addVelocity((_local2 * _arg1), (_local3 * _arg1)); } public function toString():String{ return (((((((("(" + x) + ",") + y) + ") ") + x) + ",") + y)); } } }//package com.nitrome.engine
Section 13
//Rect (com.nitrome.engine.Rect) package com.nitrome.engine { import flash.display.*; public class Rect { public var x:Number; public var y:Number; public var cx:Number; public var cy:Number; public var width:Number; public var height:Number; public var stacked:int;// = 0 public static const UP:int = 1; public static const RIGHT:int = 2; public static const DOWN:int = 4; public static const LEFT:int = 8; public function Rect(_arg1:Number=0, _arg2:Number=0, _arg3:Number=0, _arg4:Number=0){ this.x = _arg1; this.y = _arg2; this.width = _arg3; this.height = _arg4; } public function resize(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number){ this.x = _arg1; this.y = _arg2; this.width = _arg3; this.height = _arg4; } public function intersects(_arg1:Rect):Boolean{ return (!((((((((this.x > (_arg1.x + (_arg1.width - 1)))) || (((this.x + (this.width - 1)) < _arg1.x)))) || ((this.y > (_arg1.y + (_arg1.height - 1)))))) || (((this.y + (this.height - 1)) < _arg1.y))))); } public function contains(_arg1:Number, _arg2:Number):Boolean{ return ((((((((_arg1 >= this.x)) && ((_arg2 >= this.y)))) && ((_arg1 < (this.x + width))))) && ((_arg2 < (this.y + height))))); } public function inside(_arg1:Rect){ return (((((((((x + (width - 1)) < (_arg1.x + _arg1.width))) && (((y + (height - 1)) < (_arg1.y + _arg1.height))))) && ((x >= _arg1.x)))) && ((y >= _arg1.y)))); } public function intersection(_arg1:Rect):Rect{ return (new Rect(Math.max(x, _arg1.x), Math.max(y, _arg1.y), Math.abs((Math.max(x, _arg1.x) - Math.min((x + width), (_arg1.x + _arg1.width)))), Math.abs((Math.max(y, _arg1.y) - Math.min((y + height), (_arg1.y + _arg1.height)))))); } public function intersectsCircle(_arg1:Number, _arg2:Number, _arg3:Number):Boolean{ var _local4:Number = _arg1; var _local5:Number = _arg2; if (_local4 < x){ _local4 = x; }; if (_local4 > ((x + width) - 1)){ _local4 = ((x + width) - 1); }; if (_local5 < y){ _local5 = y; }; if (_local5 > ((y + height) - 1)){ _local5 = ((y + height) - 1); }; return (((((_arg1 - _local4) * (_arg1 - _local4)) + ((_arg2 - _local5) * (_arg2 - _local5))) < (_arg3 * _arg3))); } public function sideOf(_arg1:Number, _arg2:Number):int{ cx = (this.x + (width * 0.5)); cy = (this.y + (height * 0.5)); if ((((_arg1 == cx)) && ((_arg2 == cy)))){ return (2); }; var _local3:Number = (_arg1 - cx); var _local4:Number = (_arg2 - cy); if ((((((_arg1 > cx)) && ((_arg2 > cy)))) && ((Math.abs(_local4) < Math.abs(_local3))))){ return (2); }; if ((((((_arg1 > cx)) && ((_arg2 > cy)))) && ((Math.abs(_local4) > Math.abs(_local3))))){ return (4); }; if ((((((_arg1 < cx)) && ((_arg2 > cy)))) && ((Math.abs(_local4) > Math.abs(_local3))))){ return (4); }; if ((((((_arg1 < cx)) && ((_arg2 > cy)))) && ((Math.abs(_local4) < Math.abs(_local3))))){ return (8); }; if ((((((_arg1 < cx)) && ((_arg2 < cy)))) && ((Math.abs(_local4) < Math.abs(_local3))))){ return (8); }; if ((((((_arg1 < cx)) && ((_arg2 < cy)))) && ((Math.abs(_local4) > Math.abs(_local3))))){ return (1); }; if ((((((_arg1 > cx)) && ((_arg2 < cy)))) && ((Math.abs(_local4) > Math.abs(_local3))))){ return (1); }; if ((((((_arg1 > cx)) && ((_arg2 < cy)))) && ((Math.abs(_local4) < Math.abs(_local3))))){ return (2); }; if ((((_arg2 == cy)) && ((_arg1 > cx)))){ return (2); }; if ((((_arg1 == cx)) && ((_arg2 > cy)))){ return (4); }; if ((((_arg2 == cy)) && ((_arg1 < cx)))){ return (8); }; if ((((_arg1 == cx)) && ((_arg2 < cy)))){ return (1); }; if ((((_local3 == Math.abs(_local3))) && ((_local4 == -(Math.abs(_local4)))))){ return (2); }; if ((((_local4 == Math.abs(_local4))) && ((_local3 == Math.abs(_local3))))){ return (4); }; if ((((_local4 == Math.abs(_local4))) && ((_local3 == -(Math.abs(_local3)))))){ return (8); }; if ((((_local4 == -(Math.abs(_local4)))) && ((_local3 == -(Math.abs(_local3)))))){ return (1); }; return (0); } public function getCorners(_arg1:Array):Array{ _arg1[0].x = x; _arg1[0].y = y; _arg1[1].x = ((x + width) - 1); _arg1[1].y = y; _arg1[2].x = ((x + width) - 1); _arg1[2].y = ((y + height) - 1); _arg1[3].x = x; _arg1[3].y = ((y + height) - 1); return (_arg1); } public function toString():String{ return ((((((((("(x:" + x) + " y:") + y) + " width:") + width) + " height:") + height) + ")")); } public function draw(_arg1:Graphics):void{ _arg1.drawRect(x, y, width, height); } public static function boundingBox(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Rect{ return (new Rect(Math.min(_arg1, _arg3), Math.min(_arg2, _arg4), Math.abs((_arg1 - _arg3)), Math.abs((_arg2 - _arg4)))); } public static function oppositeSide(_arg1:Number):Number{ if (_arg1 == UP){ return (DOWN); }; if (_arg1 == RIGHT){ return (LEFT); }; if (_arg1 == DOWN){ return (UP); }; if (_arg1 == LEFT){ return (RIGHT); }; return (0); } } }//package com.nitrome.engine
Section 14
//Scroller (com.nitrome.engine.Scroller) package com.nitrome.engine { import flash.display.*; import com.nitrome.engine_specific.*; public class Scroller { public var tile_maker:TileMaker; public var map_array:Array; public var map_array_layers:Array; public var map_rows:Array; public var map_rows_layers:Array; public var map_rows_index:Array; public var map_rows_index_layers:Array; public var map_cols_index:Array; public var map_cols_index_layers:Array; public var tile_layers:Array; public var tile_layers_behind:Array; public var signage:Array; public var tiles:Sprite; public var tile_holder:Sprite; public var layers:int; public var current_layer:int; public var stage:Sprite; public var scroll_x:Boolean; public var scroll_y:Boolean; public var scale:Number; public var width:int; public var height:int; public var stage_width:int; public var stage_height:int; public var border_x:Array; public var border_y:Array; public var tiles_width:int; public var tiles_height:int; public var last_stage_x:int; public var last_stage_y:int; public var update_layer:Array; public var scroll_topleft_x:int; public var scroll_topleft_y:int; public var scroll_bottomright_x:int; public var scroll_bottomright_y:int; public var master_layer:int; public var map_rect:Rect; public var SCALE:Number; public static const BLOCK_LAYER:int = 1; public static const ENCOUNTER_LAYER:int = 1; public function Scroller(_arg1:Game, _arg2:Sprite, _arg3:Sprite, _arg4:Number, _arg5:int, _arg6:int, _arg7:int, _arg8:int){ this.stage = _arg2; this.tile_holder = _arg3; this.scale = _arg4; SCALE = (1 / _arg4); this.width = _arg5; this.height = _arg6; this.stage_width = _arg7; this.stage_height = _arg8; tile_maker = new TileMaker(_arg1, this); scroll_x = false; scroll_y = true; border_x = new Array(2, 6, 2); border_y = new Array(2, 6, 2); tiles_width = Math.ceil((_arg7 / _arg4)); tiles_height = Math.ceil((_arg8 / _arg4)); tile_layers = new Array(); tile_layers_behind = new Array(); map_array_layers = new Array(); map_rows_layers = new Array(); map_rows_index_layers = new Array(); map_cols_index_layers = new Array(); update_layer = new Array(); current_layer = 0; layers = 0; master_layer = BLOCK_LAYER; scroll_topleft_x = 0; scroll_topleft_y = 0; scroll_bottomright_x = 0; scroll_bottomright_y = 0; map_rect = new Rect(0, 0, (_arg5 * _arg4), (_arg6 * _arg4)); } public function addLayer(_arg1:Array):void{ var _local2:Sprite; if (tile_layers.length == layers){ _local2 = new Sprite(); tile_holder.addChild(_local2); tile_layers.push(_local2); }; map_array_layers.push(_arg1); map_rows_layers.push(new Array()); map_rows_index_layers.push(new Array()); map_cols_index_layers.push(new Array()); update_layer.push(true); layers++; } public function addTileLayer(_arg1:Sprite){ tile_layers.push(_arg1); } public function setSignage(_arg1:Array):void{ this.signage = _arg1; } public function changeLayer(_arg1:int):void{ tiles = tile_layers[_arg1]; map_array = map_array_layers[_arg1]; map_rows = map_rows_layers[_arg1]; map_rows_index = map_rows_index_layers[_arg1]; map_cols_index = map_cols_index_layers[_arg1]; current_layer = _arg1; } public function setLayerUpdate(_arg1:int, _arg2:Boolean):void{ update_layer[_arg1] = _arg2; } public function layerToBitmap(_arg1:int, _arg2:BitmapData):void{ var _local4:int; changeLayer(_arg1); tiles.visible = false; var _local3:int; while (_local3 < map_array.length) { _local4 = 0; while (_local4 < map_array[_local3].length) { tile_maker.mapElement(_local4, _local3); _local4++; }; _local3++; }; _arg2.draw(tiles); } public function renderLayer(_arg1:int):void{ var _local3:int; changeLayer(_arg1); var _local2:int; while (_local2 < map_array.length) { _local3 = 0; while (_local3 < map_array[_local2].length) { tile_maker.mapElement(_local3, _local2); _local3++; }; _local2++; }; } public function removeTile(_arg1:int, _arg2:int, _arg3:int):void{ map_array_layers[_arg1][_arg3][_arg2] = 0; } public function addTile(_arg1:int, _arg2:int, _arg3:int, _arg4:int):void{ map_array_layers[_arg1][_arg3][_arg2] = _arg4; } public function debug(_arg1:Graphics):void{ _arg1.moveTo(scroll_topleft_x, scroll_topleft_y); _arg1.lineTo(scroll_bottomright_x, scroll_topleft_y); _arg1.lineTo(scroll_bottomright_x, scroll_bottomright_y); _arg1.lineTo(scroll_topleft_x, scroll_bottomright_y); _arg1.lineTo(scroll_topleft_x, scroll_topleft_y); _arg1.moveTo(-(stage.x), -(stage.y)); _arg1.lineTo((-(stage.x) + stage_width), -(stage.y)); _arg1.lineTo((-(stage.x) + stage_width), (-(stage.y) + stage_height)); _arg1.lineTo(-(stage.x), (-(stage.y) + stage_height)); _arg1.lineTo(-(stage.x), -(stage.y)); } public function debug2(_arg1:Graphics):void{ _arg1.moveTo(scroll_topleft_x, scroll_topleft_y); _arg1.lineTo(scroll_bottomright_x, scroll_topleft_y); _arg1.lineTo(scroll_bottomright_x, scroll_bottomright_y); _arg1.lineTo(scroll_topleft_x, scroll_bottomright_y); _arg1.lineTo(scroll_topleft_x, scroll_topleft_y); _arg1.moveTo((-(stage.x) * 0.5), (-(stage.y) * 0.5)); _arg1.lineTo(((-(stage.x) * 0.5) + stage_width), (-(stage.y) * 0.5)); _arg1.lineTo(((-(stage.x) * 0.5) + stage_width), ((-(stage.y) * 0.5) + stage_height)); _arg1.lineTo((-(stage.x) * 0.5), ((-(stage.y) * 0.5) + stage_height)); _arg1.lineTo((-(stage.x) * 0.5), (-(stage.y) * 0.5)); _arg1.moveTo(0, 0); _arg1.lineTo((width * scale), 0); _arg1.lineTo((width * scale), (height * scale)); _arg1.lineTo(0, (height * scale)); _arg1.lineTo(0, 0); } public function contains(_arg1:Number, _arg2:Number):Boolean{ return ((((((((_arg1 < (scroll_bottomright_x - 1))) && ((_arg1 >= scroll_topleft_x)))) && ((_arg2 < (scroll_bottomright_y - 1))))) && ((_arg2 >= scroll_topleft_y)))); } public function intersects(_arg1:Rect):Boolean{ return (!((((((((scroll_topleft_x > (_arg1.x + (_arg1.width - 1)))) || (((scroll_bottomright_x - 1) < _arg1.x)))) || ((scroll_topleft_y > (_arg1.y + (_arg1.height - 1)))))) || (((scroll_bottomright_y - 1) < _arg1.y))))); } public function reset():void{ last_stage_x = ((stage.x * SCALE) >> 0); last_stage_y = ((stage.y * SCALE) >> 0); } public function rezBeginning(_arg1:int, _arg2:int):void{ var _local9:int; var _local10:int; map_rows_index = new Array(); map_cols_index = new Array(); map_rows = new Array(); var _local3:* = Math.round((tiles_width * 0.5)); var _local4:* = Math.round((tiles_height * 0.5)); stage.x = -(((_arg1 - _local3) * scale)); stage.y = -(((_arg2 - _local4) * scale)); last_stage_x = ((stage.x / scale) >> 0); last_stage_y = ((stage.y / scale) >> 0); var _local5:* = ((_arg1 - _local3) - (border_x[master_layer] * 2)); var _local6:* = ((_arg2 - _local4) - (border_y[master_layer] * 2)); var _local7:* = ((_local5 + tiles_width) + (border_x[master_layer] * 4)); var _local8:* = ((_local6 + tiles_height) + (border_y[master_layer] * 4)); if (_local5 < 0){ _local5 = 0; }; if (_local6 < 0){ _local6 = 0; }; if (_local7 > width){ _local7 = width; }; if (_local8 > height){ _local8 = height; }; scroll_topleft_x = (_local5 * scale); scroll_topleft_y = (_local6 * scale); scroll_bottomright_x = (_local7 * scale); scroll_bottomright_y = (_local8 * scale); var _local11:int; while (_local11 < layers) { changeLayer(_local11); if (update_layer[_local11]){ _local9 = _local5; while (_local9 < _local7) { map_cols_index.push(_local9); _local9++; }; _local10 = _local6; while (_local10 < _local8) { pushRow(_local10); _local10++; }; }; _local11++; }; } public function clipManager():void{ var _local3:int; var _local1 = (((stage.x * SCALE) * 0.5) >> 0); var _local2 = (((stage.y * SCALE) * 0.5) >> 0); var _local4:int; while (_local4 < layers) { changeLayer(_local4); if (update_layer[_local4]){ if (scroll_x){ if (-(_local1) > last_stage_x){ if ((((map_cols_index[0] > 0)) && ((map_cols_index[0] > (-(_local1) - border_x[_local4]))))){ _local3 = (map_cols_index[0] - (-(_local1) - border_x[_local4])); while (_local3 > 0) { unshiftCol((map_cols_index[0] - 1)); if (_local4 == master_layer){ scroll_topleft_x = (scroll_topleft_x - scale); }; _local3--; if (map_cols_index[0] == 0){ break; }; }; }; if (map_cols_index[(map_cols_index.length - 1)] > ((-(_local1) + tiles_width) + border_x[_local4])){ _local3 = (map_cols_index[(map_cols_index.length - 1)] - ((-(_local1) + tiles_width) + border_x[_local4])); while (_local3 > 0) { popCol(); if (_local4 == master_layer){ scroll_bottomright_x = (scroll_bottomright_x - scale); }; _local3--; }; }; }; if (_local1 < last_stage_x){ if ((((map_cols_index[(map_cols_index.length - 1)] < (width - 1))) && ((map_cols_index[(map_cols_index.length - 1)] < ((-(_local1) + tiles_width) + border_x[_local4]))))){ _local3 = (((-(_local1) + tiles_width) + border_x[_local4]) - map_cols_index[(map_cols_index.length - 1)]); while (_local3 > 0) { pushCol((map_cols_index[(map_cols_index.length - 1)] + 1)); if (_local4 == master_layer){ scroll_bottomright_x = (scroll_bottomright_x + scale); }; _local3--; if (map_cols_index[(map_cols_index.length - 1)] == (width - 1)){ break; }; }; }; if (map_cols_index[0] < (-(_local1) - border_x[_local4])){ _local3 = ((-(_local1) - border_x[_local4]) - map_cols_index[0]); while (_local3 > 0) { shiftCol(); if (_local4 == master_layer){ scroll_topleft_x = (scroll_topleft_x + scale); }; _local3--; }; }; }; }; if (scroll_y){ if (_local2 > last_stage_y){ if ((((map_rows_index[0] > 0)) && ((map_rows_index[0] > (-(_local2) - border_y[_local4]))))){ _local3 = (map_rows_index[0] - (-(_local2) - border_y[_local4])); while (_local3 > 0) { unshiftRow((map_rows_index[0] - 1)); if (_local4 == master_layer){ scroll_topleft_y = (scroll_topleft_y - scale); }; _local3--; if (map_rows_index[0] == 0){ break; }; }; }; if (map_rows_index[(map_rows_index.length - 1)] > ((-(_local2) + tiles_height) + border_y[_local4])){ _local3 = (map_rows_index[(map_rows_index.length - 1)] - ((-(_local2) + tiles_height) + border_y[_local4])); while (_local3 > 0) { popRow(); if (_local4 == master_layer){ scroll_bottomright_y = (scroll_bottomright_y - scale); }; _local3--; }; }; }; if (_local2 < last_stage_y){ if ((((map_rows_index[(map_rows_index.length - 1)] < (height - 1))) && ((map_rows_index[(map_rows_index.length - 1)] < ((-(_local2) + tiles_height) + border_y[_local4]))))){ _local3 = (((-(_local2) + tiles_height) + border_y[_local4]) - map_rows_index[(map_rows_index.length - 1)]); while (_local3 > 0) { pushRow((map_rows_index[(map_rows_index.length - 1)] + 1)); if (_local4 == master_layer){ scroll_bottomright_y = (scroll_bottomright_y + scale); }; _local3--; if (map_rows_index[(map_rows_index.length - 1)] == (height - 1)){ break; }; }; }; if (map_rows_index[0] < (-(_local2) - border_y[_local4])){ _local3 = ((-(_local2) - border_y[_local4]) - map_rows_index[0]); while (_local3 > 0) { shiftRow(); if (_local4 == master_layer){ scroll_topleft_y = (scroll_topleft_y + scale); }; _local3--; }; }; }; }; }; _local4++; }; last_stage_x = _local1; last_stage_y = _local2; } protected function pushCol(_arg1:Number):void{ map_cols_index.push(_arg1); var _local2:int; while (_local2 < map_rows_index.length) { map_rows[_local2].push(tile_maker.mapElement(_arg1, (_local2 + map_rows_index[0]))); _local2++; }; } protected function unshiftCol(_arg1:Number):void{ map_cols_index.unshift(_arg1); var _local2:int; while (_local2 < map_rows_index.length) { map_rows[_local2].unshift(tile_maker.mapElement(_arg1, (_local2 + map_rows_index[0]))); _local2++; }; } protected function popCol():void{ var _local1:int; while (_local1 < map_rows_index.length) { if (map_rows[_local1][(map_cols_index.length - 1)] != null){ map_rows[_local1][(map_cols_index.length - 1)].remove(); }; map_rows[_local1].pop(); _local1++; }; map_cols_index.pop(); } protected function shiftCol():void{ var _local1:int; while (_local1 < map_rows_index.length) { if (map_rows[_local1][0] != null){ map_rows[_local1][0].remove(); }; map_rows[_local1].shift(); _local1++; }; map_cols_index.shift(); } protected function pushRow(_arg1:int):void{ map_rows.push(new Array()); map_rows_index.push(_arg1); var _local2:int; while (_local2 < map_cols_index.length) { map_rows[(map_rows.length - 1)].push(tile_maker.mapElement((_local2 + map_cols_index[0]), _arg1)); _local2++; }; } protected function unshiftRow(_arg1:int):void{ map_rows.unshift(new Array()); map_rows_index.unshift(_arg1); var _local2:int; while (_local2 < map_cols_index.length) { map_rows[0].push(tile_maker.mapElement((_local2 + map_cols_index[0]), _arg1)); _local2++; }; } protected function popRow():void{ var _local1:int; while (_local1 < map_cols_index.length) { if (map_rows[(map_rows.length - 1)][_local1] != null){ map_rows[(map_rows.length - 1)][_local1].remove(); }; _local1++; }; map_rows.pop(); map_rows_index.pop(); } protected function shiftRow():void{ var _local1:int; while (_local1 < map_cols_index.length) { if (map_rows[0][_local1] != null){ map_rows[0][_local1].remove(); }; _local1++; }; map_rows.shift(); map_rows_index.shift(); } } }//package com.nitrome.engine
Section 15
//Trig (com.nitrome.engine.Trig) package com.nitrome.engine { public class Trig { public static const DEGREES:Number = 57.2957795130823; public static const cos:Array = [1, 0.999847695156391, 0.999390827019096, 0.998629534754574, 0.997564050259824, 0.996194698091746, 0.994521895368273, 0.992546151641322, 0.99026806874157, 0.987688340595138, 0.984807753012208, 0.981627183447664, 0.978147600733806, 0.974370064785235, 0.970295726275996, 0.965925826289068, 0.961261695938319, 0.956304755963035, 0.951056516295154, 0.945518575599317, 0.939692620785908, 0.933580426497202, 0.927183854566787, 0.92050485345244, 0.913545457642601, 0.90630778703665, 0.898794046299167, 0.891006524188368, 0.882947592858927, 0.874619707139396, 0.866025403784438, 0.857167300702112, 0.848048096156426, 0.838670567945424, 0.829037572555042, 0.819152044288992, 0.809016994374947, 0.798635510047293, 0.788010753606722, 0.777145961456971, 0.766044443118978, 0.754709580222772, 0.743144825477394, 0.73135370161917, 0.719339800338651, 0.707106781186547, 0.694658370458997, 0.681998360062498, 0.669130606358858, 0.656059028990507, 0.642787609686539, 0.629320391049837, 0.615661475325658, 0.601815023152048, 0.587785252292472, 0.573576436351045, 0.559192903470746, 0.544639035015026, 0.529919264233204, 0.515038074910053, 0.499999999999999, 0.484809620246336, 0.46947156278589, 0.453990499739546, 0.438371146789076, 0.422618261740698, 0.406736643075799, 0.390731128489273, 0.374606593415911, 0.358367949545299, 0.342020143325668, 0.325568154457155, 0.309016994374946, 0.292371704722735, 0.275637355816998, 0.258819045102519, 0.241921895599666, 0.224951054343864, 0.207911690817758, 0.190808995376543, 0.173648177666929, 0.156434465040229, 0.139173100960064, 0.121869343405146, 0.104528463267652, 0.0871557427476566, 0.0697564737441237, 0.0523359562429422, 0.0348994967024993, 0.0174524064372818, -1.71512449944288E-15, -0.0174524064372853, -0.0348994967025027, -0.0523359562429456, -0.0697564737441271, -0.08715574274766, -0.104528463267655, -0.121869343405149, -0.139173100960067, -0.156434465040233, -0.173648177666932, -0.190808995376547, -0.207911690817761, -0.224951054343867, -0.24192189559967, -0.258819045102523, -0.275637355817001, -0.292371704722739, -0.309016994374949, -0.325568154457159, -0.342020143325671, -0.358367949545302, -0.374606593415914, -0.390731128489276, -0.406736643075802, -0.422618261740701, -0.438371146789079, -0.453990499739548, -0.469471562785892, -0.484809620246338, -0.500000000000001, -0.515038074910055, -0.529919264233206, -0.544639035015028, -0.559192903470747, -0.573576436351046, -0.587785252292473, -0.601815023152048, -0.615661475325658, -0.629320391049837, -0.642787609686539, -0.656059028990506, -0.669130606358857, -0.681998360062497, -0.694658370458996, -0.707106781186546, -0.71933980033865, -0.731353701619169, -0.743144825477393, -0.75470958022277, -0.766044443118976, -0.777145961456969, -0.78801075360672, -0.798635510047291, -0.809016994374945, -0.81915204428899, -0.829037572555039, -0.838670567945422, -0.848048096156424, -0.85716730070211, -0.866025403784436, -0.874619707139393, -0.882947592858924, -0.891006524188365, -0.898794046299164, -0.906307787036647, -0.913545457642598, -0.920504853452438, -0.927183854566785, -0.933580426497199, -0.939692620785906, -0.945518575599315, -0.951056516295151, -0.956304755963033, -0.961261695938317, -0.965925826289066, -0.970295726275995, -0.974370064785233, -0.978147600733804, -0.981627183447662, -0.984807753012207, -0.987688340595136, -0.990268068741569, -0.992546151641321, -0.994521895368272, -0.996194698091745, -0.997564050259824, -0.998629534754573, -0.999390827019095, -0.999847695156391, -1, -0.999847695156391, -0.999390827019096, -0.998629534754574, -0.997564050259825, -0.996194698091747, -0.994521895368275, -0.992546151641324, -0.990268068741572, -0.98768834059514, -0.98480775301221, -0.981627183447666, -0.978147600733808, -0.974370064785238, -0.970295726276, -0.965925826289072, -0.961261695938323, -0.95630475596304, -0.951056516295158, -0.945518575599322, -0.939692620785913, -0.933580426497207, -0.927183854566793, -0.920504853452446, -0.913545457642607, -0.906307787036657, -0.898794046299174, -0.891006524188375, -0.882947592858935, -0.874619707139404, -0.866025403784447, -0.857167300702121, -0.848048096156435, -0.838670567945433, -0.829037572555052, -0.819152044289002, -0.809016994374958, -0.798635510047304, -0.788010753606733, -0.777145961456983, -0.76604444311899, -0.754709580222784, -0.743144825477407, -0.731353701619184, -0.719339800338665, -0.707106781186561, -0.694658370459012, -0.681998360062513, -0.669130606358873, -0.656059028990523, -0.642787609686555, -0.629320391049854, -0.615661475325675, -0.601815023152065, -0.58778525229249, -0.573576436351064, -0.559192903470765, -0.544639035015046, -0.529919264233224, -0.515038074910073, -0.50000000000002, -0.484809620246357, -0.469471562785911, -0.453990499739568, -0.438371146789098, -0.422618261740721, -0.406736643075822, -0.390731128489296, -0.374606593415934, -0.358367949545323, -0.342020143325692, -0.32556815445718, -0.309016994374971, -0.292371704722761, -0.275637355817024, -0.258819045102545, -0.241921895599693, -0.22495105434389, -0.207911690817785, -0.190808995376571, -0.173648177666957, -0.156434465040257, -0.139173100960092, -0.121869343405174, -0.104528463267681, -0.0871557427476857, -0.069756473744153, -0.0523359562429718, -0.0348994967025292, -0.0174524064373119, -2.86054064502761E-14, 0.0174524064372547, 0.034899496702472, 0.0523359562429147, 0.069756473744096, 0.0871557427476287, 0.104528463267624, 0.121869343405118, 0.139173100960036, 0.156434465040201, 0.1736481776669, 0.190808995376515, 0.207911690817729, 0.224951054343835, 0.241921895599637, 0.25881904510249, 0.275637355816969, 0.292371704722706, 0.309016994374917, 0.325568154457126, 0.342020143325638, 0.35836794954527, 0.374606593415881, 0.390731128489243, 0.40673664307577, 0.422618261740669, 0.438371146789047, 0.453990499739517, 0.469471562785861, 0.484809620246307, 0.49999999999997, 0.515038074910024, 0.529919264233175, 0.544639035014998, 0.559192903470717, 0.573576436351017, 0.587785252292444, 0.60181502315202, 0.61566147532563, 0.629320391049809, 0.642787609686511, 0.65605902899048, 0.669130606358831, 0.681998360062471, 0.69465837045897, 0.707106781186521, 0.719339800338625, 0.731353701619145, 0.743144825477369, 0.754709580222747, 0.766044443118953, 0.777145961456946, 0.788010753606698, 0.798635510047269, 0.809016994374924, 0.819152044288969, 0.82903757255502, 0.838670567945402, 0.848048096156405, 0.857167300702092, 0.866025403784418, 0.874619707139376, 0.882947592858908, 0.891006524188349, 0.898794046299149, 0.906307787036632, 0.913545457642584, 0.920504853452424, 0.927183854566772, 0.933580426497187, 0.939692620785894, 0.945518575599303, 0.95105651629514, 0.956304755963023, 0.961261695938307, 0.965925826289057, 0.970295726275986, 0.974370064785225, 0.978147600733796, 0.981627183447656, 0.9848077530122, 0.987688340595131, 0.990268068741564, 0.992546151641317, 0.994521895368269, 0.996194698091742, 0.997564050259821, 0.998629534754572, 0.999390827019094, 0.99984769515639]; public static const sin:Array = [0, 0.0174524064372835, 0.034899496702501, 0.0523359562429438, 0.0697564737441253, 0.0871557427476582, 0.104528463267653, 0.121869343405147, 0.139173100960065, 0.156434465040231, 0.17364817766693, 0.190808995376545, 0.207911690817759, 0.224951054343865, 0.241921895599668, 0.258819045102521, 0.275637355816999, 0.292371704722737, 0.309016994374947, 0.325568154457157, 0.342020143325669, 0.3583679495453, 0.374606593415912, 0.390731128489274, 0.4067366430758, 0.4226182617407, 0.438371146789078, 0.453990499739547, 0.469471562785891, 0.484809620246337, 0.5, 0.515038074910054, 0.529919264233205, 0.544639035015027, 0.559192903470747, 0.573576436351046, 0.587785252292473, 0.601815023152049, 0.615661475325659, 0.629320391049838, 0.64278760968654, 0.656059028990508, 0.669130606358859, 0.681998360062499, 0.694658370458998, 0.707106781186548, 0.719339800338652, 0.731353701619171, 0.743144825477395, 0.754709580222772, 0.766044443118979, 0.777145961456971, 0.788010753606722, 0.798635510047293, 0.809016994374948, 0.819152044288992, 0.829037572555042, 0.838670567945424, 0.848048096156427, 0.857167300702113, 0.866025403784439, 0.874619707139396, 0.882947592858927, 0.891006524188368, 0.898794046299167, 0.90630778703665, 0.913545457642601, 0.920504853452441, 0.927183854566788, 0.933580426497202, 0.939692620785909, 0.945518575599317, 0.951056516295154, 0.956304755963036, 0.961261695938319, 0.965925826289069, 0.970295726275997, 0.974370064785236, 0.978147600733806, 0.981627183447664, 0.984807753012208, 0.987688340595138, 0.99026806874157, 0.992546151641322, 0.994521895368274, 0.996194698091746, 0.997564050259824, 0.998629534754574, 0.999390827019096, 0.999847695156391, 1, 0.999847695156391, 0.999390827019096, 0.998629534754574, 0.997564050259824, 0.996194698091745, 0.994521895368273, 0.992546151641322, 0.99026806874157, 0.987688340595137, 0.984807753012208, 0.981627183447664, 0.978147600733805, 0.974370064785235, 0.970295726275996, 0.965925826289068, 0.961261695938318, 0.956304755963035, 0.951056516295153, 0.945518575599316, 0.939692620785908, 0.933580426497201, 0.927183854566787, 0.920504853452439, 0.9135454576426, 0.906307787036649, 0.898794046299166, 0.891006524188367, 0.882947592858926, 0.874619707139395, 0.866025403784438, 0.857167300702112, 0.848048096156426, 0.838670567945424, 0.829037572555042, 0.819152044288992, 0.809016994374947, 0.798635510047293, 0.788010753606722, 0.777145961456971, 0.766044443118979, 0.754709580222773, 0.743144825477395, 0.731353701619171, 0.719339800338652, 0.707106781186549, 0.694658370458999, 0.6819983600625, 0.66913060635886, 0.656059028990509, 0.642787609686541, 0.62932039104984, 0.615661475325661, 0.601815023152051, 0.587785252292476, 0.573576436351049, 0.55919290347075, 0.544639035015031, 0.529919264233209, 0.515038074910058, 0.500000000000004, 0.484809620246341, 0.469471562785895, 0.453990499739552, 0.438371146789082, 0.422618261740705, 0.406736643075806, 0.390731128489279, 0.374606593415918, 0.358367949545306, 0.342020143325675, 0.325568154457163, 0.309016994374954, 0.292371704722744, 0.275637355817006, 0.258819045102528, 0.241921895599676, 0.224951054343873, 0.207911690817768, 0.190808995376553, 0.173648177666939, 0.15643446504024, 0.139173100960075, 0.121869343405157, 0.104528463267663, 0.0871557427476679, 0.0697564737441353, 0.052335956242954, 0.0348994967025113, 0.0174524064372941, 1.07806057163162E-14, -0.0174524064372725, -0.0348994967024898, -0.0523359562429325, -0.0697564737441138, -0.0871557427476465, -0.104528463267642, -0.121869343405135, -0.139173100960053, -0.156434465040218, -0.173648177666918, -0.190808995376532, -0.207911690817746, -0.224951054343852, -0.241921895599655, -0.258819045102507, -0.275637355816986, -0.292371704722723, -0.309016994374934, -0.325568154457143, -0.342020143325655, -0.358367949545286, -0.374606593415898, -0.39073112848926, -0.406736643075786, -0.422618261740685, -0.438371146789063, -0.453990499739532, -0.469471562785876, -0.484809620246323, -0.499999999999986, -0.51503807491004, -0.52991926423319, -0.544639035015013, -0.559192903470732, -0.573576436351032, -0.587785252292459, -0.601815023152034, -0.615661475325644, -0.629320391049823, -0.642787609686525, -0.656059028990493, -0.669130606358844, -0.681998360062484, -0.694658370458983, -0.707106781186534, -0.719339800338637, -0.731353701619157, -0.743144825477381, -0.754709580222759, -0.766044443118965, -0.777145961456958, -0.788010753606709, -0.79863551004728, -0.809016994374935, -0.819152044288979, -0.829037572555029, -0.838670567945412, -0.848048096156414, -0.857167300702101, -0.866025403784427, -0.874619707139385, -0.882947592858916, -0.891006524188357, -0.898794046299157, -0.90630778703664, -0.913545457642591, -0.920504853452431, -0.927183854566778, -0.933580426497193, -0.9396926207859, -0.945518575599309, -0.951056516295146, -0.956304755963028, -0.961261695938312, -0.965925826289062, -0.97029572627599, -0.974370064785229, -0.9781476007338, -0.981627183447659, -0.984807753012203, -0.987688340595134, -0.990268068741567, -0.992546151641319, -0.994521895368271, -0.996194698091743, -0.997564050259822, -0.998629534754572, -0.999390827019095, -0.999847695156391, -1, -0.999847695156392, -0.999390827019097, -0.998629534754575, -0.997564050259826, -0.996194698091748, -0.994521895368276, -0.992546151641326, -0.990268068741574, -0.987688340595142, -0.984807753012213, -0.98162718344767, -0.978147600733812, -0.974370064785242, -0.970295726276004, -0.965925826289076, -0.961261695938328, -0.956304755963045, -0.951056516295164, -0.945518575599327, -0.93969262078592, -0.933580426497214, -0.9271838545668, -0.920504853452453, -0.913545457642615, -0.906307787036664, -0.898794046299182, -0.891006524188383, -0.882947592858943, -0.874619707139413, -0.866025403784456, -0.85716730070213, -0.848048096156444, -0.838670567945443, -0.829037572555061, -0.819152044289012, -0.809016994374968, -0.798635510047314, -0.788010753606744, -0.777145961456994, -0.766044443119002, -0.754709580222796, -0.743144825477419, -0.731353701619196, -0.719339800338677, -0.707106781186574, -0.694658370459024, -0.681998360062526, -0.669130606358887, -0.656059028990536, -0.642787609686569, -0.629320391049868, -0.615661475325689, -0.601815023152079, -0.587785252292505, -0.573576436351078, -0.55919290347078, -0.544639035015061, -0.529919264233239, -0.515038074910089, -0.500000000000035, -0.484809620246373, -0.469471562785927, -0.453990499739583, -0.438371146789115, -0.422618261740737, -0.406736643075838, -0.390731128489312, -0.374606593415951, -0.35836794954534, -0.342020143325709, -0.325568154457197, -0.309016994374988, -0.292371704722778, -0.275637355817041, -0.258819045102563, -0.24192189559971, -0.224951054343908, -0.207911690817802, -0.190808995376588, -0.173648177666974, -0.156434465040275, -0.13917310096011, -0.121869343405192, -0.104528463267698, -0.0871557427477034, -0.0697564737441708, -0.0523359562429896, -0.034899496702547, -0.0174524064373297]; } }//package com.nitrome.engine
Section 16
//Util (com.nitrome.engine.Util) package com.nitrome.engine { import flash.display.*; import flash.geom.*; public class Util { public static const UP:Number = 1; public static const RIGHT:Number = 2; public static const DOWN:Number = 4; public static const LEFT:Number = 8; public static const UP_ROTATION:Number = 0; public static const UP_RIGHT_ROTATION:Number = 45; public static const RIGHT_ROTATION:Number = 90; public static const DOWN_RIGHT_ROTATION:Number = 135; public static const DOWN_ROTATION:Number = 180; public static const DOWN_LEFT_ROTATION:Number = 225; public static const LEFT_ROTATION:Number = 270; public static const UP_LEFT_ROTATION:Number = 315; public static function thetaLerp(_arg1:Number, _arg2:Number, _arg3:Number):Number{ _arg1 = (_arg1 + ((Math.abs((_arg2 - _arg1)))>Math.PI) ? ((_arg1)<_arg2) ? (Math.PI * 2) : -((Math.PI * 2)) : 0); return ((_arg1 + ((_arg2 - _arg1) * _arg3))); } public static function degreeLerp(_arg1:Number, _arg2:Number, _arg3:Number):Number{ _arg1 = (_arg1 + ((Math.abs((_arg2 - _arg1)))>180) ? ((_arg1)<_arg2) ? 360 : -(360) : 0); return ((_arg1 + ((_arg2 - _arg1) * _arg3))); } public static function lerp(_arg1:Number, _arg2:Number, _arg3:Number):Number{ return ((_arg1 + ((_arg2 - _arg1) * _arg3))); } public static function wrapLerp(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):Number{ var _local6:Number = Math.abs((_arg4 - _arg5)); _arg1 = (_arg1 + ((Math.abs((_arg2 - _arg1)))>(_local6 * 0.5)) ? ((_arg1)<_arg2) ? _local6 : -(_local6) : 0); return (lerp(_arg1, _arg2, _arg3)); } public static function localToLocal(_arg1:Point, _arg2:DisplayObject, _arg3:DisplayObject):Point{ _arg1.x = (_arg1.y = 0); _arg1 = _arg2.localToGlobal(_arg1); _arg1 = _arg3.globalToLocal(_arg1); return (_arg1); } public static function stopClips(_arg1:DisplayObjectContainer):void{ var _local2:int; while (_local2 < _arg1.numChildren) { if ((_arg1.getChildAt(_local2) is MovieClip)){ (_arg1.getChildAt(_local2) as MovieClip).stop(); }; if ((_arg1.getChildAt(_local2) is DisplayObjectContainer)){ stopClips((_arg1.getChildAt(_local2) as DisplayObjectContainer)); }; _local2++; }; } public static function startClips(_arg1:DisplayObjectContainer):void{ var _local2:int; while (_local2 < _arg1.numChildren) { if ((_arg1.getChildAt(_local2) is MovieClip)){ (_arg1.getChildAt(_local2) as MovieClip).gotoAndPlay((_arg1.getChildAt(_local2) as MovieClip).currentFrame); }; if ((_arg1.getChildAt(_local2) is DisplayObjectContainer)){ startClips((_arg1.getChildAt(_local2) as DisplayObjectContainer)); }; _local2++; }; } public static function onScreen(_arg1:Number, _arg2:Number, _arg3:Game, _arg4:Number):Boolean{ return (((((((((_arg1 + _arg4) >= -(_arg3.canvas.x))) && (((_arg2 + _arg4) >= -(_arg3.canvas.y))))) && (((_arg1 - _arg4) < (-(_arg3.canvas.x) + Game.width))))) && (((_arg2 - _arg4) < (-(_arg3.canvas.y) + Game.height))))); } public static function onScreen2(_arg1:Number, _arg2:Number, _arg3:Game, _arg4:Number):Boolean{ return (((((((((_arg1 + _arg4) >= -((_arg3.canvas.x * 2)))) && (((_arg2 + _arg4) >= -((_arg3.canvas.y * 2)))))) && (((_arg1 - _arg4) < (-((_arg3.canvas.x * 2)) + Game.width))))) && (((_arg2 - _arg4) < (-((_arg3.canvas.y * 2)) + Game.height))))); } public static function getRotation(_arg1:int):Number{ var _local2:int; switch (_arg1){ case UP: _local2 = UP_ROTATION; break; case RIGHT: _local2 = RIGHT_ROTATION; break; case DOWN: _local2 = DOWN_ROTATION; break; case LEFT: _local2 = LEFT_ROTATION; break; }; return (_local2); } public static function sideToString(_arg1:int):String{ if (_arg1 == UP){ return ("UP"); }; if (_arg1 == RIGHT){ return ("RIGHT"); }; if (_arg1 == DOWN){ return ("DOWN"); }; if (_arg1 == LEFT){ return ("LEFT"); }; return ("null"); } public static function mcToString(_arg1:Sprite):String{ return ((((("(" + _arg1.x) + " ") + _arg1.y) + ")")); } public static function mcToString2(_arg1:Sprite, _arg2:Sprite):String{ var _local3:Point = new Point(); _local3 = Util.localToLocal(_local3, _arg1, _arg2); return ((((("pos.x = " + _local3.x) + ";\npos.y = ") + _local3.y) + ";")); } public static function circleOverlap(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number):Boolean{ return (((((_arg4 - _arg1) * (_arg4 - _arg1)) + ((_arg5 - _arg2) * (_arg5 - _arg2))) <= ((_arg3 + _arg6) * (_arg3 + _arg6)))); } public static function circleInside(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number):Boolean{ return (((((_arg4 - _arg1) * (_arg4 - _arg1)) + ((_arg5 - _arg2) * (_arg5 - _arg2))) <= ((_arg6 - _arg3) * (_arg6 - _arg3)))); } public static function proximity(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):Boolean{ return (((((_arg3 - _arg1) * (_arg3 - _arg1)) + ((_arg4 - _arg2) * (_arg4 - _arg2))) <= (_arg5 * _arg5))); } public static function rectContains(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number):Boolean{ return ((((((((_arg5 >= _arg1)) && ((_arg6 >= _arg2)))) && ((_arg5 < (_arg1 + _arg3))))) && ((_arg6 < (_arg2 + _arg4))))); } public static function circlePolyCollision(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Array){ var _local5:Number = Number.MAX_VALUE; var _local6:Number = Number.MAX_VALUE; var _local7:Number = Number.MIN_VALUE; var _local8:Number = Number.MIN_VALUE; var _local9:Number = 0; while (_local9 < _arg4.length) { if (_arg4[_local9].x < _local5){ _local5 = _arg4[_local9].x; }; if (_arg4[_local9].y < _local6){ _local6 = _arg4[_local9].y; }; if (_arg4[_local9].x > _local7){ _local7 = _arg4[_local9].x; }; if (_arg4[_local9].y > _local8){ _local8 = _arg4[_local9].y; }; _local9++; }; if ((((((((_local5 > (_arg1 + ((_arg3 * 2) - 1)))) || (((_local5 + (_local7 - 1)) < _arg1)))) || ((_local6 > (_arg2 + ((_arg3 * 2) - 1)))))) || (((_local6 + (_local8 - 1)) < _arg2)))){ return (false); }; return (false); } } }//package com.nitrome.engine
Section 17
//BitmapSprite (com.nitrome.engine_specific.BitmapSprite) package com.nitrome.engine_specific { import flash.display.*; import flash.geom.*; public class BitmapSprite { public var p:Point; public var x:int; public var y:int; public var width:int; public var height:int; public var dx:int; public var dy:int; public var frames:Array; public var total_frames:int; public var rect:Rectangle; public var test:BitmapData; public static var p:Point; public function BitmapSprite(_arg1:MovieClip){ x = (y = 0); frames = new Array(); var _local2:Rectangle = _arg1.getBounds(_arg1); var _local3:int; while (_local3 < _arg1.totalFrames) { _arg1.gotoAndStop((_local3 + 1)); frames[_local3] = new BitmapData(Math.ceil(_local2.width), Math.ceil(_local2.height), true, 0); frames[_local3].draw(_arg1, new Matrix(1, 0, 0, 1, -(_local2.left), -(_local2.top))); _local3++; }; total_frames = _arg1.totalFrames; width = _local2.width; height = _local2.height; dx = _local2.left; dy = _local2.top; rect = new Rectangle(0, 0, Math.ceil(_local2.width), Math.ceil(_local2.height)); p = new Point(); } public function addFrame(_arg1:Rectangle):void{ frames.push(_arg1); } public function addFrames(_arg1:Array):void{ frames = frames.concat(_arg1); } public function render(_arg1:BitmapData, _arg2:int):void{ p.x = (x + dx); p.y = (y + dy); _arg1.copyPixels(frames[_arg2], rect, p, null, null, true); } } }//package com.nitrome.engine_specific
Section 18
//Block (com.nitrome.engine_specific.Block) package com.nitrome.engine_specific { import com.nitrome.engine.*; public class Block extends Rect { public var active:Boolean; public var attachable:Boolean; public var block:Boolean;// = true public var force_field:Boolean;// = false public var moving_block:Boolean;// = false public function Block(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number){ super(_arg1, _arg2, _arg3, _arg4); stacked = 0; attachable = true; active = true; } public function stack(_arg1:int):void{ stacked = (stacked | _arg1); } } }//package com.nitrome.engine_specific
Section 19
//BlockClip (com.nitrome.engine_specific.BlockClip) package com.nitrome.engine_specific { import com.nitrome.engine.*; import flash.display.*; public class BlockClip extends Clip { public var b:Block; public var spawn:Boolean;// = false public function BlockClip(_arg1:Sprite, _arg2:Game){ super(_arg1, _arg2); block = true; } public function debug():void{ b.draw(g.debug); if (b.stacked > 0){ if ((b.stacked & Rect.UP)){ g.debug.moveTo((b.x + (b.width * 0.5)), (b.y + (b.height * 0.5))); g.debug.lineTo((b.x + (b.width * 0.5)), b.y); }; if ((b.stacked & Rect.RIGHT)){ g.debug.moveTo((b.x + (b.width * 0.5)), (b.y + (b.height * 0.5))); g.debug.lineTo((b.x + b.width), (b.y + (b.height * 0.5))); }; if ((b.stacked & Rect.DOWN)){ g.debug.moveTo((b.x + (b.width * 0.5)), (b.y + (b.height * 0.5))); g.debug.lineTo((b.x + (b.width * 0.5)), (b.y + b.height)); }; if ((b.stacked & Rect.LEFT)){ g.debug.moveTo((b.x + (b.width * 0.5)), (b.y + (b.height * 0.5))); g.debug.lineTo(b.x, (b.y + (b.height * 0.5))); }; }; } } }//package com.nitrome.engine_specific
Section 20
//BlockTile (com.nitrome.engine_specific.BlockTile) package com.nitrome.engine_specific { import flash.display.*; public class BlockTile extends Tile { public function BlockTile(_arg1:Sprite, _arg2:Sprite, _arg3:Game){ super(_arg1, _arg2, _arg3, ((SMALL | STATIC) | BLOCK)); _arg3.tile_front_holder.addChild(_arg1); } } }//package com.nitrome.engine_specific
Section 21
//BossExplosions (com.nitrome.engine_specific.BossExplosions) package com.nitrome.engine_specific { import com.nitrome.engine.*; import flash.display.*; public class BossExplosions extends Encounter { public var count:int;// = 0 public var zone:Rect; public static const DELAY:int = 250; public static const GAME_OVER_DELAY:int = 125; public static const NEXT_BANG_DELAY:int = 3; public function BossExplosions(_arg1:Rect, _arg2:Game){ super(new Sprite(), _arg2, true); _arg2.cake_holder.addChild(mc); this.zone = _arg1; has_main = true; has_collision = false; } public function main():void{ if (count <= DELAY){ count++; if ((count % NEXT_BANG_DELAY) == 0){ x = (zone.x + (Math.random() * zone.width)); y = (zone.y + (Math.random() * zone.height)); g.addSmoke(x, y); g.addSmoke(x, y); g.addSmoke(x, y); g.shake_count = 1; g.addFX(x, y, g.large_bang_bitmap); if (Math.random() > 0.4){ NitromeGame.sound_manager.playSound("big_bang"); } else { NitromeGame.sound_manager.playSound("medium_bang"); }; }; if (count == GAME_OVER_DELAY){ g.levelComplete(); g.finish_line = (g.scroller.height * Game.scale); }; } else { active = false; }; } } }//package com.nitrome.engine_specific
Section 22
//BreakTile (com.nitrome.engine_specific.BreakTile) package com.nitrome.engine_specific { import flash.display.*; public class BreakTile extends Tile { public function BreakTile(_arg1:Sprite, _arg2:Sprite, _arg3:Game){ super(_arg1, _arg2, _arg3, ((Tile.SMALL | Tile.STATIC) | Tile.BREAK)); } } }//package com.nitrome.engine_specific
Section 23
//Bullet (com.nitrome.engine_specific.Bullet) package com.nitrome.engine_specific { import com.nitrome.engine.*; public class Bullet extends Dot { public var vx:Number; public var vy:Number; public var px:Number; public var py:Number; public var speed:Number; public var bitmap:BitmapSprite; public var hit_bitmap:BitmapSprite; public var bitmap_frame:int; public var radius:Number;// = 6 public var g:Game; public var type:int;// = 0 public var active;// = true public var track:Line; public var homing_count:int; public var collision_rect:Rect; public static const HOMING_DELAY:int = 12; public static const MAGNET_SPEED:Number = 5; public static const SMALL_GREEN:int = 0; public static const SMALL_RED:int = 1; public static const SMALL_BLUE:int = 2; public static const BIG:int = 3; public static const HOMING:int = 4; public static const PLAYER:int = 5; public static const PLAYER_SPECIAL:int = 6; public static const CASH:int = 7; public static const NAPALM:int = 8; public function Bullet(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:BitmapSprite, _arg6:BitmapSprite, _arg7:int, _arg8:Number, _arg9:Game){ super(_arg1, _arg2); this.g = _arg9; this.vx = _arg3; this.vy = _arg4; this.bitmap = _arg5; this.hit_bitmap = _arg6; this.type = _arg7; this.speed = _arg8; bitmap_frame = 0; if (_arg7 == HOMING){ track = new Line(this, _arg9.player); homing_count = HOMING_DELAY; } else { if ((((((_arg7 == PLAYER)) || ((_arg7 == NAPALM)))) || ((_arg7 == PLAYER_SPECIAL)))){ collision_rect = new Rect(0, 0, (_arg5.width - 4), (_arg5.height - 4)); }; }; } public function main():void{ px = x; py = y; if ((((((g.probe.magnet_count.value > 0)) || (g.probe.magnet_blasting))) && (!((((((type == PLAYER)) || ((type == PLAYER_SPECIAL)))) || ((type == NAPALM))))))){ if (track == null){ track = new Line(this, g.probe); } else { if (track.b != g.probe){ track.b = g.probe; } else { track.updateLine(); vx = (track.dx * MAGNET_SPEED); vy = (track.dy * MAGNET_SPEED); x = (x + vx); y = (y + vy); }; }; } else { if (type == HOMING){ if (homing_count > 0){ homing_count--; x = (x + vx); y = (y + vy); } else { if (track.b != g.player){ track.b = g.player; }; if (g.player.active){ track.updateLine(); }; x = (x + (track.dx * speed)); y = (y + (track.dy * speed)); }; } else { x = (x + vx); y = (y + vy); }; }; if ((((((type == PLAYER)) || ((type == NAPALM)))) || ((type == PLAYER_SPECIAL)))){ collision_rect.x = ((x + bitmap.dx) + 2); collision_rect.y = ((y + bitmap.dy) + 2); }; bitmap.x = (-(g.screen.x) + x); bitmap.y = (-(g.screen.y) + y); } public function toString():String{ return ((((("(" + x) + ",") + y) + ")")); } public function resolve(_arg1:Rect):void{ if (vy == 0){ if (vx > 0){ x = _arg1.x; } else { x = ((_arg1.x + _arg1.width) - 1); }; bitmap.x = (-(g.screen.x) + x); bitmap.y = (-(g.screen.y) + y); return; } else { if (vx == 0){ if (vy > 0){ y = _arg1.y; } else { y = ((_arg1.y + _arg1.height) - 1); }; bitmap.x = (-(g.screen.x) + x); bitmap.y = (-(g.screen.y) + y); return; }; }; var _local2:int = _arg1.sideOf(x, y); if (_local2 == Rect.UP){ y = _arg1.y; } else { if (_local2 == Rect.RIGHT){ x = ((_arg1.x + _arg1.width) - 1); } else { if (_local2 == Rect.DOWN){ y = ((_arg1.y + _arg1.height) - 1); } else { if (_local2 == Rect.LEFT){ x = _arg1.x; }; }; }; }; bitmap.x = (-(g.screen.x) + x); bitmap.y = (-(g.screen.y) + y); } } }//package com.nitrome.engine_specific
Section 24
//Cake (com.nitrome.engine_specific.Cake) package com.nitrome.engine_specific { import com.nitrome.engine.*; import flash.display.*; import flash.geom.*; public class Cake extends Encounter { public var collision_rect:Rect; public var dx:Number; public var dy:Number; public var collected:Boolean; public static const COLLISION_BORDER:Number = 2; public function Cake(_arg1, _arg2){ super(_arg1, _arg2, true); has_main = false; var _local3:Rectangle = _arg1.getBounds(_arg1); dx = (_local3.left + COLLISION_BORDER); dy = (_local3.top + COLLISION_BORDER); collision_rect = new Rect((x + dx), (y + dy), (Math.ceil(_local3.width) - COLLISION_BORDER), (Math.ceil(_local3.height) - COLLISION_BORDER)); _arg2.addCake(this); _arg2.cake_count++; _arg2.scroller.tile_maker.synchro((_arg1 as MovieClip)); if ((_arg2.cake_count % 2) == 0){ (_arg1 as MovieClip).gotoAndPlay((((_arg1.currentFrame + 8) % _arg1.totalFrames) + 1)); }; } public function main():void{ if (mc.alpha > 0){ mc.alpha = (mc.alpha - 0.2); } else { active = false; }; } override public function resolvePlayerCollision(_arg1:Player):void{ if (((!(active)) || (collected))){ return; }; _arg1.addCake(); collected = true; has_main = true; g.removeCake(this); } public function kill():void{ if (((!(active)) || (collected))){ return; }; collected = true; has_main = true; g.removeCake(this); } } }//package com.nitrome.engine_specific
Section 25
//Finish (com.nitrome.engine_specific.Finish) package com.nitrome.engine_specific { import com.nitrome.engine.*; import flash.display.*; public class Finish extends Clip { public function Finish(_arg1:Sprite, _arg2:Game){ super(_arg1, _arg2); _arg2.finish_line = (_arg1.y + Tile.tile_scale); } } }//package com.nitrome.engine_specific
Section 26
//FX (com.nitrome.engine_specific.FX) package com.nitrome.engine_specific { import com.nitrome.engine.*; public class FX extends Dot { public var bitmap:BitmapSprite; public var g:Game; public var frame:int; public var active:Boolean; public function FX(_arg1:Number, _arg2:Number, _arg3:BitmapSprite, _arg4:Game){ super(_arg1, _arg2); this.bitmap = _arg3; this.g = _arg4; frame = 0; active = true; } public function main():void{ bitmap.x = (-(g.screen.x) + x); bitmap.y = (-(g.screen.y) + y); bitmap.render(g.screenfxdata, frame++); if (frame == bitmap.total_frames){ active = false; }; } } }//package com.nitrome.engine_specific
Section 27
//HotTile (com.nitrome.engine_specific.HotTile) package com.nitrome.engine_specific { import flash.display.*; public class HotTile extends Tile { public function HotTile(_arg1:Sprite, _arg2:Sprite, _arg3:Game){ super(_arg1, _arg2, _arg3, (Tile.SMALL | Tile.STATIC)); } } }//package com.nitrome.engine_specific
Section 28
//InterfaceBackground (com.nitrome.engine_specific.InterfaceBackground) package com.nitrome.engine_specific { import flash.display.*; import flash.events.*; public class InterfaceBackground extends MovieClip { public var top:MovieClip; public var bottom:MovieClip; public function InterfaceBackground(){ addFrameScript(0, frame1); addEventListener(Event.ENTER_FRAME, onEnterFrame, false, 0, true); } public function onEnterFrame(_arg1:Event):void{ top.y = (top.y + 1); bottom.y = (bottom.y + 0.5); if (top.y > 0){ top.y = (top.y - (top.height * 0.5)); }; if (bottom.y > 0){ bottom.y = (bottom.y - (bottom.height * 0.5)); }; } function frame1(){ stop(); } } }//package com.nitrome.engine_specific
Section 29
//Laser (com.nitrome.engine_specific.Laser) package com.nitrome.engine_specific { import com.nitrome.engine.*; import flash.display.*; public class Laser extends Clip { public var front_mc:Sprite; public var collision_array:Array; public var dir:int; public var laser_dir:int; public var grid_x:int; public var grid_y:int; public var to_x:int; public var to_y:int; public var beam:Rect; public var strength:Number; public var active:Boolean; public var frame2:Boolean; private var tile; private var hit_active_tile:Boolean; public var collision_rect:Rect; public static const tile_scale:int = 24; public static const TILE_SCALE:Number = 0.0416666666666667; public static const WARM_UP_STEP:Number = 0.1; public static const UP:int = 1; public static const RIGHT:int = 2; public static const DOWN:int = 4; public static const LEFT:int = 8; public function Laser(_arg1:Sprite, _arg2:Sprite, _arg3:Game){ super(_arg1, _arg3); this.front_mc = _arg2; dir = (laser_dir = RIGHT); grid_x = (to_x = (_arg1.x * TILE_SCALE)); grid_y = (to_y = (_arg1.y * TILE_SCALE)); _arg3.tile_map[grid_y][grid_x] = this; _arg3.lasers.push(this); strength = 0; collision_rect = new Rect(_arg1.x, _arg1.y, tile_scale, tile_scale); _arg3.tile_top_holder.addChildAt(_arg1, 0); active = true; } public function main():void{ var _local1:int; var _local2:int; var _local3:int; var _local4:Sprite; var _local5:MovieClip; var _local6:MovieClip; to_x = grid_x; to_y = grid_y; collision_array = new Array(); laser_dir = dir; createBeam(); _local1 = 0; while (_local1 < 100) { if (laser_dir == UP){ to_y--; beam.y = (beam.y - tile_scale); beam.height = (beam.height + tile_scale); } else { if (laser_dir == RIGHT){ to_x++; beam.width = (beam.width + tile_scale); } else { if (laser_dir == DOWN){ to_y++; beam.height = (beam.height + tile_scale); } else { if (laser_dir == LEFT){ to_x--; beam.x = (beam.x - tile_scale); beam.width = (beam.width + tile_scale); }; }; }; }; if ((((((((((((to_x < g.tile_width)) && ((to_y < g.tile_height)))) && ((to_x > -1)))) && ((to_y > -1)))) && (!((g.tile_map[to_y][to_x] == null))))) && ((g.tile_map[to_y][to_x] is Mirror)))){ tile = g.tile_map[to_y][to_x]; if (laser_dir == UP){ beam.y = (beam.y + (tile_scale + 6)); beam.height = (beam.height - (tile_scale - 6)); if (tile.state == Mirror.A){ laser_dir = LEFT; } else { laser_dir = RIGHT; }; createBeam(); } else { if (laser_dir == RIGHT){ beam.width = (beam.width - tile_scale); if (tile.state == Mirror.A){ laser_dir = DOWN; } else { laser_dir = UP; }; createBeam(); } else { if (laser_dir == DOWN){ beam.height = (beam.height - (tile_scale + 6)); if (tile.state == Mirror.A){ laser_dir = RIGHT; } else { laser_dir = LEFT; }; createBeam(); } else { if (laser_dir == LEFT){ beam.x = (beam.x + tile_scale); beam.width = (beam.width - tile_scale); if (tile.state == Mirror.A){ laser_dir = UP; } else { laser_dir = DOWN; }; createBeam(); }; }; }; }; } else { if (((!((((((((to_x < g.tile_width)) && ((to_y < g.tile_height)))) && ((to_x > -1)))) && ((to_y > -1))))) || (((!((g.tile_map[to_y][to_x] == null))) && (!((g.tile_map[to_y][to_x] is BlockTile))))))){ if (laser_dir == UP){ beam.y = (beam.y + (tile_scale + 6)); beam.height = (beam.height - (tile_scale - 6)); } else { if (laser_dir == RIGHT){ beam.width = (beam.width - tile_scale); } else { if (laser_dir == DOWN){ beam.height = (beam.height - (tile_scale + 6)); } else { if (laser_dir == LEFT){ beam.x = (beam.x + tile_scale); beam.width = (beam.width - tile_scale); }; }; }; }; break; }; }; hit_active_tile = false; if (((!((g.probe.item == null))) && ((g.probe.item is Tile)))){ tile = g.probe.item; if (!tile.on_grid_pos){ if ((((((((to_x >= tile.grid_x)) && ((to_y >= tile.grid_y)))) && ((to_x <= (tile.grid_x + tile.width))))) && ((to_y <= (tile.grid_y + tile.height))))){ if ((((laser_dir == LEFT)) || ((laser_dir == RIGHT)))){ _local2 = ((tile_scale >> 1) + (to_y * tile_scale)); if ((((_local2 >= tile.collision_rect.y)) && ((_local2 < ((tile.collision_rect.y + tile.collision_rect.height) - 1))))){ if (laser_dir == RIGHT){ beam.width = (tile.collision_rect.x - beam.x); break; } else { if (laser_dir == LEFT){ beam.width = (beam.width - ((tile.collision_rect.x + tile.collision_rect.width) - beam.x)); beam.x = (tile.collision_rect.x + tile.collision_rect.width); break; }; }; }; } else { if ((((laser_dir == UP)) || ((laser_dir == DOWN)))){ _local3 = ((tile_scale >> 1) + (to_x * tile_scale)); if ((((_local3 >= tile.collision_rect.x)) && ((_local3 < ((tile.collision_rect.x + tile.collision_rect.width) - 1))))){ if (laser_dir == DOWN){ beam.height = ((tile.collision_rect.y - beam.y) + 6); break; } else { if (laser_dir == UP){ beam.height = (beam.height - ((6 + (tile.collision_rect.y + tile.collision_rect.height)) - beam.y)); beam.y = ((tile.collision_rect.y + tile.collision_rect.height) + 6); break; }; }; }; }; }; }; } else { if ((((((((to_x >= tile.grid_x)) && ((to_y >= tile.grid_y)))) && ((to_x <= ((tile.grid_x + tile.width) - 1))))) && ((to_y <= ((tile.grid_y + tile.height) - 1))))){ if (laser_dir == UP){ beam.y = (beam.y + (tile_scale + 6)); beam.height = (beam.height - (tile_scale - 6)); } else { if (laser_dir == RIGHT){ beam.width = (beam.width - tile_scale); } else { if (laser_dir == DOWN){ beam.height = (beam.height - (tile_scale + 6)); } else { if (laser_dir == LEFT){ beam.x = (beam.x + tile_scale); beam.width = (beam.width - tile_scale); }; }; }; }; break; }; }; }; _local1++; }; frame2 = ((g.frame_count % 2) == 0); _local1 = 0; while (_local1 < collision_array.length) { beam = collision_array[_local1]; if (!(((beam.width == 0)) || ((beam.height == 0)))){ _local4 = new Sprite(); _local4.alpha = strength; g.laser_holder.addChild(_local4); _local4.graphics.lineStyle(0, 0, 0); if ((((beam.stacked == UP)) || ((beam.stacked == DOWN)))){ _local4.graphics.beginBitmapFill((frame2) ? g.front_lazer_data : g.front_lazer_data2); if (beam.height > 0){ _local5 = new FrontLaserHitMC(); _local5.x = -3; _local5.y = -8; _local4.addChild(_local5); _local5.gotoAndStop((frame2) ? 1 : 2); }; } else { _local4.graphics.beginBitmapFill((frame2) ? g.side_lazer_data : g.side_lazer_data2); if (beam.width > 0){ _local5 = new SideLaserHitMC(); _local6 = new SideLaserHitMC(); _local5.y = 12; _local6.x = beam.width; _local6.y = 12; _local6.rotation = 180; _local4.addChild(_local5); _local4.addChild(_local6); _local5.gotoAndStop((frame2) ? 1 : 2); _local6.gotoAndStop((frame2) ? 1 : 2); }; }; _local4.x = beam.x; _local4.y = beam.y; _local4.graphics.drawRect(0, 0, beam.width, beam.height); _local4.graphics.endFill(); }; _local1++; }; if (((active) && ((strength < 1)))){ strength = (strength + WARM_UP_STEP); } else { if (strength > 0){ strength = (strength - WARM_UP_STEP); } else { active = false; }; }; } public function createBeam():void{ if (laser_dir == UP){ collision_array.push(new Rect(((to_x * tile_scale) + 1), (to_y * tile_scale), 22, 0)); collision_array[(collision_array.length - 1)].stacked = UP; } else { if (laser_dir == RIGHT){ collision_array.push(new Rect(((to_x + 1) * tile_scale), ((to_y * tile_scale) + 2), 0, 24)); collision_array[(collision_array.length - 1)].stacked = RIGHT; } else { if (laser_dir == DOWN){ collision_array.push(new Rect(((to_x * tile_scale) + 1), (((to_y + 1) * tile_scale) + 6), 22, 0)); collision_array[(collision_array.length - 1)].stacked = DOWN; } else { if (laser_dir == LEFT){ collision_array.push(new Rect((to_x * tile_scale), ((to_y * tile_scale) + 2), 0, 24)); collision_array[(collision_array.length - 1)].stacked = LEFT; }; }; }; }; beam = collision_array[(collision_array.length - 1)]; } override public function remove():void{ super.remove(); active = false; } } }//package com.nitrome.engine_specific
Section 30
//Mirror (com.nitrome.engine_specific.Mirror) package com.nitrome.engine_specific { import flash.display.*; public class Mirror extends Switch { public var front_mc:Sprite; public static const A:int = 1; public static const B:int = 2; public function Mirror(_arg1:Sprite, _arg2:Sprite, _arg3:Game, _arg4:int){ super(_arg1, _arg3, 0); this.front_mc = _arg2; this.state = _arg4; if (_arg4 == A){ (_arg1 as MovieClip).gotoAndStop("a"); } else { (_arg1 as MovieClip).gotoAndStop("b"); }; } override public function activate():void{ NitromeGame.sound_manager.playSound("laser_switch"); if (state == A){ state = B; (mc as MovieClip).gotoAndStop("b"); } else { state = A; (mc as MovieClip).gotoAndStop("a"); }; } } }//package com.nitrome.engine_specific
Section 31
//Monster (com.nitrome.engine_specific.Monster) package com.nitrome.engine_specific { import com.nitrome.engine.*; import flash.display.*; import flash.geom.*; public class Monster extends Encounter { public var path:Array; public var path_index:int; public var start_index:int; public var count:int; public var r:int; public var speed:int; public var delay:int; public var subroutines:Array; public var turrets:Array; public var collision_rect:Rect; protected var sub_index:int; public var health:HiddenInt; public var total_health:int; public var dx:Number; public var dy:Number; public var hit_white:int;// = 0 public var properties:int; public var size:int; public var skin:int; public var pause_scroll:Boolean;// = false private var i:int; public static const COLLISION_BORDER:Number = 8; public static const ID:int = 0; public static const HEALTH:int = 1; public static const PROPERTIES:int = 2; public static const DEACTIVATION_Y = 100; public static const DEACTIVATION_X = 100; public static const HIT_COL:ColorTransform = new ColorTransform(1, 1, 1, 1, 100, -50, -200, 0); public static const NORM_COL:ColorTransform = new ColorTransform(); public static const PASS_OVER:int = 1; public static const SCROLL_WITH:int = 2; public static const PAUSE_SCROLL:int = 4; public static const BOSS:int = 8; public static const CAKE:int = 16; public static const NO_HIT:int = 32; public static const SMALL:int = 0; public static const MEDIUM:int = 1; public static const LARGE:int = 2; public function Monster(_arg1:Array, _arg2:Sprite, _arg3:Array, _arg4:int, _arg5:Game){ super(_arg2, _arg5, true); this.path = _arg1; this.subroutines = _arg3; this.size = _arg4; has_main = true; has_collision = true; monster = true; skin = _arg1[ID]; health = new HiddenInt(_arg1[HEALTH]); total_health = _arg1[HEALTH]; properties = _arg1[PROPERTIES]; if ((properties & PASS_OVER)){ _arg5.non_monster_holder.addChild(_arg2); has_collision = false; }; if ((properties & BOSS)){ if (_arg5.boss_count == 0){ NitromeGame.sound_manager.playSound("boss_alarm"); }; _arg5.boss_count++; }; if ((properties & PAUSE_SCROLL)){ pause_scroll = true; }; var _local6:Rectangle = (_arg2 as MovieClip).collision_box.getBounds(_arg2); dx = _local6.left; dy = _local6.top; collision_rect = new Rect((x + dx), (y + dy), Math.ceil(_local6.width), Math.ceil(_local6.height)); turrets = new Array(); path_index = (start_index = 3); count = 0; speed = 0; this.subroutines = _arg3; if (_arg1.length > 0){ readPath(); }; } public function main():void{ x = (x + (speed * Trig.cos[r])); y = (y + (speed * Trig.sin[r])); if (!(properties & SCROLL_WITH)){ y = (y - g.level_scroll_speed); }; if (pause_scroll){ if ((-(g.canvas.y) * 0.5) < collision_rect.y){ g.pause_scroll++; g.boss_bang_zone = collision_rect; pause_scroll = false; }; }; collision_rect.x = (x + dx); collision_rect.y = (y + dy); map_x = (x * Tile.TILE_SCALE); map_y = (y * Tile.TILE_SCALE); count++; if ((((count >= delay)) && ((path.length > 0)))){ readPath(); }; i = 0; while (i < turrets.length) { if (turrets[i].active){ turrets[i].main(); }; i++; }; updateMC(); if (y <= 0){ active = false; }; if (y >= (((-(g.canvas.y) * 0.5) + Game.height) + DEACTIVATION_Y)){ active = false; }; if (x >= (((-(g.canvas.x) * 0.5) + Game.width) + DEACTIVATION_X)){ active = false; }; if (x <= ((-(g.canvas.x) * 0.5) - DEACTIVATION_X)){ active = false; }; if ((((map_y < g.tile_height)) && ((map_y >= 0)))){ if (((!((g.tile_map[map_y][map_x] == null))) && (!((g.tile_map[map_y][map_x] is BlockTile))))){ if (g.tile_map[map_y][map_x].collision_rect.intersects(collision_rect)){ kill(false); }; }; }; } override public function resolvePlayerCollision(_arg1:Player):void{ if (!active){ return; }; _arg1.hit(); if (_arg1.shield_count.value > 0){ hit(1); hit_white++; }; } public function hit(_arg1:int):void{ if ((properties & NO_HIT)){ return; }; health.value = (health.value - _arg1); mc.transform.colorTransform = HIT_COL; hit_white++; if (health.value <= 0){ kill(); }; g.enemy = this; } public function kill(_arg1:Boolean=true):void{ var _local2:BitmapSprite; var _local3:int; var _local4:MovieClip; var _local5:*; var _local6:BossExplosions; if (!active){ return; }; if (size == SMALL){ _local2 = g.small_bang_bitmap; if (g.small_bang_count <= 0){ g.small_bang_count = Game.SMALL_BANG_DELAY; NitromeGame.sound_manager.playSound("small_bang"); }; } else { if (size == MEDIUM){ _local2 = g.medium_bang_bitmap; if (g.medium_bang_count <= 0){ g.medium_bang_count = Game.MEDIUM_BANG_DELAY; NitromeGame.sound_manager.playSound("medium_bang"); }; if (Math.random() > 0.6){ g.addSmoke(x, y); }; } else { if (size == LARGE){ if (g.big_bang_count <= 0){ g.big_bang_count = Game.BIG_BANG_DELAY; NitromeGame.sound_manager.playSound("big_bang"); }; _local2 = g.large_bang_bitmap; g.addSmoke(x, y); g.addSmoke(x, y); g.addSmoke(x, y); g.shake_count = 1; }; }; }; if ((properties & CAKE)){ _local3 = (36 + (Math.random() * 8)); _local4 = new (g.scroller.tile_maker.class_names[_local3]); _local4.x = (x >> 0); _local4.y = (y >> 0); _local5 = new Cake(_local4, g); g.cake_holder.addChild(_local4); }; g.addFX(mc.x, mc.y, _local2); if (_arg1){ if (size == SMALL){ g.addScore(50); } else { if (size == MEDIUM){ g.addScore(200); } else { if (size == LARGE){ g.addScore(500); }; }; }; if ((properties & BOSS)){ g.addScore(100000); }; if (g.last_killed.value == skin){ g.addChain(); } else { g.killChain(); }; g.last_killed.value = skin; }; if ((properties & BOSS)){ g.boss_count--; if (g.boss_count <= 0){ _local6 = new BossExplosions(g.boss_bang_zone, g); g.player.shield_count.value = Player.SHIELD_DELAY; }; }; health.value = 0; active = false; } public function readPath():void{ i = 0; while (i < 100) { if (path[path_index] == "F"){ path_index++; speed = path[path_index]; path_index++; } else { if (path[path_index] == "T"){ path_index++; sub_index = path[path_index]; if (((!((turrets[sub_index] == null))) && (!(turrets[sub_index].active)))){ turrets[sub_index].activate(); } else { if (turrets[sub_index] == null){ turrets[sub_index] = new Turret(subroutines[sub_index], this, g); }; }; path_index++; } else { if (path[path_index] == "S"){ path_index++; sub_index = path[path_index]; g.createMonster(subroutines[sub_index], x, y, subroutines); path_index++; } else { if (path[path_index] == "D"){ path_index++; sub_index = path[path_index]; if (turrets[sub_index] != null){ turrets[sub_index].deactivate(); }; path_index++; } else { if (path[path_index] == "R"){ path_index++; r = path[path_index]; while (r >= 360) { r = (r - 360); }; while (r <= -1) { r = (r + 360); }; path_index++; } else { if (path[path_index] == "W"){ path_index++; delay = path[path_index]; count = 0; break; } else { if (path[path_index] == "X"){ start_index = (path_index + 1); path_index = start_index; } else { path_index++; }; }; }; }; }; }; }; if (path_index >= path.length){ path_index = start_index; }; i++; }; if (path_index >= path.length){ path_index = start_index; }; } public function updateMC():void{ mc.x = (x >> 0); mc.y = (y >> 0); if (hit_white){ hit_white--; if (hit_white == 0){ mc.transform.colorTransform = NORM_COL; }; }; } } }//package com.nitrome.engine_specific
Section 32
//Player (com.nitrome.engine_specific.Player) package com.nitrome.engine_specific { import com.nitrome.engine.*; import flash.display.*; import flash.geom.*; import com.nitrome.game.*; import flash.ui.*; public class Player extends Particle { public var g:Game; public var mc:MovieClip; public var health:HiddenInt; public var collision_rect:Rect; public var grab_rect:Rect; public var map_rect:Rect; public var last_mc_x:Number; public var last_mc_y:Number; public var map_x:int; public var map_y:int; public var scroll_target_x:Number; public var scroll_target_y:Number; public var last_canvas_x:Number; public var last_canvas_y:Number; public var scroll_x:Number; public var scroll_y:Number; public var scroll_rect:Rect; public var back:MovieClip; public var beam:MovieClip; public var beam_mask:Shape; public var beam_blast:MovieClip; public var beam_halo:Sprite; public var beam_hit:MovieClip; public var beam_rect:Rect; public var shield_mc:MovieClip; public var player_mc:MovieClip; public var drop_ship_mc:MovieClip; public var drop_ship_blur:Number; public var line:Line; public var collision_array:Array; public var block:Rect; public var veer:int; public var veer_count:int; public var burp_count:int;// = 0 private var i:int; public var state:int; public var anim_state:int; public var hurt_count:int; public var ouch_count:int; public var collisions:int; public var hurt:Boolean; public var ouch:Boolean; public var active:Boolean; public var colliding:Boolean; public var level_completed:Boolean; public var carried:Boolean; public var bulimia:Boolean; public var puke:HiddenNumber; public var beaming:Boolean; public var shield_count:HiddenInt; public var key_pressed:Boolean; public var drop_ship:Boolean; public var drop_ship_top_speed:Number; public var drop_ship_bottom_speed:Number; public static const scale:int = 12; public static const SCALE:Number = 0.0833333333333333; public static const width:int = 16; public static const height:int = 22; public static const grab_width:int = 22; public static const grab_height:int = 28; public static const HURT_DELAY:int = 50; public static const OUCH_DELAY:int = 10; public static const OUCH_DEATH_DELAY:int = 20; public static const SPEED:Number = 3; public static const UP:int = 1; public static const RIGHT:int = 2; public static const DOWN:int = 4; public static const LEFT:int = 8; public static const UP_RIGHT:int = 16; public static const DOWN_RIGHT:int = 32; public static const DOWN_LEFT:int = 64; public static const UP_LEFT:int = 128; public static const CAKE_VALUE:Number = 0.1; public static const BEAM_HEIGHT:Number = 296; public static const BEAM_WIDTH:Number = 40; public static const BEAM_EXPAND_RATE:Number = 0.25; public static const BEAM_VALUE:Number = 0.01; public static const SHIELD_DELAY:int = 200; public static const BURP_DELAY:int = 50; public function Player(_arg1:MovieClip, _arg2:int, _arg3:int, _arg4:Game){ super(_arg2, _arg3); colliding = false; anim_state = 0; active = true; carried = false; bulimia = false; puke = new HiddenNumber(); shield_count = new HiddenInt(); veer = 0; veer_count = 0; key_pressed = false; drop_ship = (NitromeGame.selected_level == 1); this.g = _arg4; this.mc = _arg1; player_mc = (_arg1.getChildAt(0) as MovieClip); shield_mc = new ShieldMC(); _arg1.addChild(shield_mc); shield_mc.alpha = 0; _arg1.x = (last_mc_x = (_arg2 >> 0)); _arg1.y = (last_mc_y = (_arg3 >> 0)); map_x = ((_arg2 * SCALE) >> 0); map_y = ((_arg3 * SCALE) >> 0); health = new HiddenInt(3); NitromeGame.timeline.health_panel.gotoAndStop("_3"); collision_rect = new Rect(); grab_rect = new Rect(); updateCollisionRect(); collision_array = new Array(); map_rect = _arg4.scroller.map_rect; _arg4.canvas.x = (-((_arg4.scroller.width * Game.scale)) + Game.width); _arg4.canvas.y = ((-(_arg1.y) * 2) + Game.height); _arg4.canvas.y = Math.max((((-(_arg4.scroller.height) * Game.scale) * 2) + (Game.height * 2)), _arg4.canvas.y); back = NitromeGame.timeline.background; back.scaleX = 2; back.scaleY = 2; _arg4.scroller.reset(); line = new Line(new Dot(), this); block = new Rect(0, 0, Tile.tile_scale, Tile.tile_scale); Key.forceClearKeys(); beam = new BeamMC(); beam_blast = new BeamBlastMC(); beam_halo = new BeamHaloMC(); beam_mask = new Shape(); beam_hit = new BeamHitMC(); _arg1.addChildAt(beam_blast, 0); _arg1.addChildAt(beam_mask, 0); _arg1.addChildAt(beam, 0); _arg1.addChild(beam_halo); _arg1.addChild(beam_hit); beam.mask = beam_mask; beam_rect = new Rect((_arg2 - (BEAM_WIDTH * 0.5)), (_arg3 - BEAM_HEIGHT), BEAM_WIDTH, BEAM_HEIGHT); beam.scaleX = BEAM_EXPAND_RATE; beam_hit.scaleX = (beam_blast.scaleX = (beam_rect.width = (beam_halo.alpha = 0))); beaming = false; NitromeGame.timeline.cake_meter.bar_mask.scaleX = (puke.value = 0); NitromeGame.timeline.cake_meter.press_space.visible = (bulimia = true); if (drop_ship){ _arg1.visible = false; drop_ship_mc = new DropShipMC(); _arg4.drop_ship_holder.addChild(drop_ship_mc); drop_ship_mc.x = ((-(_arg4.canvas.x) * 0.5) + (Game.width * 0.5)); drop_ship_mc.y = (((-(_arg4.canvas.y) * 0.5) + Game.height) + (drop_ship_mc.height * 0.5)); drop_ship_blur = 32; drop_ship_bottom_speed = 16; drop_ship_top_speed = 32; }; } public function main():void{ if (!drop_ship){ checkHit(); if (!active){ return; }; if (!g.completed){ checkKeys(); }; collision(); updateCollisionRect(); updateBeam(); if (burp_count > 0){ burp_count--; if (burp_count == 1){ NitromeGame.sound_manager.playSound("burp"); }; }; }; updateMC(); } public function hit():void{ if (((((((((ouch) || (hurt))) || (!(active)))) || (g.god_mode))) || ((shield_mc.alpha > 0)))){ return; }; ouch = true; ouch_count = 0; hurt_count = 0; health.value--; NitromeGame.timeline.health_panel.gotoAndStop(("_" + health.value)); NitromeGame.sound_manager.playSound("ow"); } public function tidyUp():void{ collision_rect = new Rect(); mc.visible = false; g.mouse_pressed = false; map_x = (map_y = 0); } public function checkHit():void{ if (!active){ return; }; if (ouch){ ouch_count++; if ((((health.value > 0)) && ((ouch_count >= OUCH_DELAY)))){ ouch = false; hurt = true; } else { if (ouch_count >= OUCH_DEATH_DELAY){ ouch = false; hurt = true; }; }; }; if (hurt){ if (health.value <= 0){ death(); } else { hurt_count++; player_mc.visible = !(player_mc.visible); if (hurt_count >= HURT_DELAY){ hurt = false; player_mc.visible = true; }; }; }; } public function death():void{ if (((g.god_mode) || (!(active)))){ return; }; g.probe.death(); active = false; g.addFX(mc.x, mc.y, g.medium_bang_bitmap); g.shake_count = 1; var _local1:MovieClip = new CatDeathMC(); _local1.x = mc.x; _local1.y = mc.y; g.tile_front_holder.addChildAt(_local1, 0); NitromeGame.sound_manager.playSound("death"); NitromeGame.sound_manager.playSound("medium_bang"); tidyUp(); g.gameOver(); } public function levelComplete():void{ if (((!(active)) || (level_completed))){ return; }; level_completed = true; } public function debug():void{ collision_rect.draw(g.debug); grab_rect.draw(g.debug); } public function collide(_arg1:Encounter):Boolean{ return (_arg1.intersects(collision_rect)); } public function collision():void{ var _local1:Rect; var _local2:int; collisions = 0; updateCollisionRect(); if (y <= g.finish_line){ g.levelComplete(); shield_count.value = SHIELD_DELAY; g.probe.drop(); }; if (map_y >= (g.tile_height - 1)){ map_y = (g.tile_height - 2); }; collision_array[0] = g.tile_map[map_y][map_x]; collision_array[1] = g.tile_map[map_y][(map_x + 1)]; collision_array[2] = g.tile_map[(map_y + 1)][map_x]; collision_array[3] = g.tile_map[(map_y + 1)][(map_x + 1)]; collision_array[4] = ((g.probe.item is Tile)) ? g.probe.item : null; i = 0; while (i < collision_array.length) { if (((!((collision_array[i] == null))) && (!((collision_array[i] is BlockTile))))){ block = collision_array[i].collision_rect; if (block.intersects(collision_rect)){ if ((((i == 4)) || ((collision_array[i] is HotTile)))){ hit(); }; _local1 = block.intersection(collision_rect); if (_local1.width < _local1.height){ if (x < (block.x + (block.width * 0.5))){ x = ((block.x - (collision_rect.width * 0.5)) - 1); px = x; collisions = (collisions | RIGHT); } else { x = (((block.x + block.width) - 1) + (collision_rect.width * 0.5)); px = x; collisions = (collisions | LEFT); }; } else { if (_local1.height < _local1.width){ if (y < (block.y + (block.height * 0.5))){ y = ((block.y - (collision_rect.height * 0.5)) - 1); py = y; collisions = (collisions | DOWN); } else { y = (((block.y + block.height) - 1) + (collision_rect.height * 0.5)); py = y; collisions = (collisions | UP); }; } else { if (_local1.height == _local1.width){ _local2 = block.sideOf(x, y); if (_local2 == UP){ y = ((block.y - (collision_rect.height * 0.5)) - 1); py = y; collisions = (collisions | DOWN); } else { if (_local2 == RIGHT){ x = (((block.x + block.width) - 1) + (collision_rect.width * 0.5)); px = x; collisions = (collisions | LEFT); } else { if (_local2 == DOWN){ y = (((block.y + block.height) - 1) + (collision_rect.height * 0.5)); py = y; collisions = (collisions | UP); } else { if (_local2 == LEFT){ x = ((block.x - (collision_rect.width * 0.5)) - 1); px = x; collisions = (collisions | RIGHT); }; }; }; }; }; }; }; if (carried){ if (collision_rect.contains(g.probe.x, g.probe.y)){ g.probe.grab_x = (g.probe.x - x); g.probe.grab_y = (g.probe.y - y); } else { g.probe.drop(); g.probe.state = Probe.MOUSEPRESSED; }; }; updateCollisionRect(); }; }; i++; }; if ((((((collisions & LEFT)) && ((collisions & RIGHT)))) || ((((collisions & UP)) && ((collisions & DOWN)))))){ death(); }; } public function resolveCollision(_arg1:Rect):void{ var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local2:int = _arg1.sideOf(x, y); var _local3:Rect = collision_rect.intersection(_arg1); if (_local3.width < _local3.height){ if (x < (_arg1.x + (_arg1.width * 0.5))){ x = (_arg1.x - (width >> 1)); px = x; collisions = (collisions | RIGHT); } else { x = ((_arg1.x + _arg1.width) + (width >> 1)); px = x; collisions = (collisions | LEFT); }; } else { if (_local3.height < _local3.width){ if (y < (_arg1.y + (_arg1.height * 0.5))){ y = (_arg1.y - (height >> 1)); collisions = (collisions | DOWN); } else { y = ((_arg1.y + _arg1.height) + (height >> 1)); collisions = (collisions | UP); }; } else { if (_local3.width == _local3.height){ _local4 = (_arg1.x + _arg1.width); _local5 = (_arg1.y + _arg1.height); _local6 = x; _local7 = (y - height); if ((((_local6 > _local4)) && ((_local7 > _local5)))){ x = ((_arg1.x + _arg1.width) + (width >> 1)); y = ((_arg1.y + _arg1.height) + (height >> 1)); px = x; py = y; collisions = (collisions | RIGHT); collisions = (collisions | UP); } else { if ((((_local6 < _local4)) && ((_local7 > _local5)))){ y = ((_arg1.y + _arg1.height) + (height >> 1)); x = (_arg1.x - (width >> 1)); px = x; py = y; collisions = (collisions | LEFT); collisions = (collisions | UP); } else { if ((((_local6 < _local4)) && ((_local7 < _local5)))){ x = (_arg1.x - (width >> 1)); y = (_arg1.y - (height >> 1)); px = x; py = y; collisions = (collisions | LEFT); collisions = (collisions | DOWN); } else { if ((((_local6 > _local4)) && ((_local7 < _local5)))){ x = ((_arg1.x + _arg1.width) + (width >> 1)); y = (_arg1.y + (height >> 1)); px = x; py = y; collisions = (collisions | RIGHT); collisions = (collisions | DOWN); }; }; }; }; }; }; }; updateCollisionRect(); } public function updateCollisionRect():void{ collision_rect.x = (x - (width >> 1)); collision_rect.y = (y - (height >> 1)); collision_rect.width = width; collision_rect.height = height; grab_rect.x = (x - (grab_width >> 1)); grab_rect.y = (y - (grab_height >> 1)); grab_rect.width = grab_width; grab_rect.height = grab_height; } public function updateBeam():void{ var _local1:int; var _local2:int; var _local3:int; var _local4:int; var _local5:int; var _local6:int; var _local7:Number; if (beaming){ NitromeGame.sound_manager.playLoopFadeIn(SoundManager.BEAM); beam_blast.visible = true; beam_halo.visible = true; beam.visible = true; beam_hit.visible = true; beam_rect.y = (y - BEAM_HEIGHT); beam_rect.height = BEAM_HEIGHT; if (beam.scaleX < 1){ beam.scaleX = (beam.scaleX + BEAM_EXPAND_RATE); beam_hit.scaleX = (beam_hit.scaleX + BEAM_EXPAND_RATE); beam_blast.scaleX = (beam_blast.scaleX + BEAM_EXPAND_RATE); beam_rect.width = (BEAM_WIDTH * beam.scaleX); beam_halo.alpha = beam.scaleX; }; removeCake(); } else { if (beam.scaleX > 0){ NitromeGame.sound_manager.stopLoopFadeOut(SoundManager.BEAM); beam_rect.y = (y - BEAM_HEIGHT); beam_rect.height = BEAM_HEIGHT; beam.scaleX = (beam.scaleX - BEAM_EXPAND_RATE); beam_hit.scaleX = (beam_hit.scaleX - BEAM_EXPAND_RATE); beam_blast.scaleX = (beam_blast.scaleX - BEAM_EXPAND_RATE); beam_rect.width = (BEAM_WIDTH * beam.scaleX); beam_halo.alpha = beam.scaleX; }; }; if (beam.scaleX > 0){ beam_rect.x = (x - (beam_rect.width * 0.5)); _local1 = (beam_rect.x * Tile.TILE_SCALE); _local2 = (beam_rect.y * Tile.TILE_SCALE); _local3 = (beam_rect.height * Tile.TILE_SCALE); _local4 = ((beam_rect.width * Tile.TILE_SCALE) + 1); _local6 = ((_local2 + _local3) - 1); while (_local6 > Math.max(-1, _local2)) { _local5 = _local1; while (_local5 < ((_local1 + _local4) + 1)) { if (((((!((g.tile_map[_local6][_local5] == null))) && (!((g.tile_map[_local6][_local5] is BlockTile))))) && (g.tile_map[_local6][_local5].collision_rect.intersects(beam_rect)))){ if (beam_rect.y < y){ beam_rect.y = (g.tile_map[_local6][_local5].collision_rect.y + g.tile_map[_local6][_local5].collision_rect.height); beam_rect.height = (y - beam_rect.y); if ((g.tile_map[_local6][_local5] is BreakTile)){ g.tile_map[_local6][_local5].remove(); g.addFX(((_local5 * Tile.tile_scale) + (Tile.tile_scale >> 1)), ((_local6 * Tile.tile_scale) + Tile.tile_scale), g.small_bang_bitmap); }; break; }; }; _local5++; }; _local6--; }; if (((!((g.probe.item == null))) && ((g.probe.item is Tile)))){ if (beam_rect.intersects(g.probe.item.collision_rect)){ beam_rect.y = (g.probe.item.collision_rect.y + g.probe.item.collision_rect.height); beam_rect.height = (y - beam_rect.y); }; }; i = 0; while (i < g.encounters.length) { if (((g.encounters[i].has_collision) && (g.encounters[i].monster))){ if (g.encounters[i].collision_rect.intersects(beam_rect)){ g.encounters[i].hit(10); g.encounters[i].hit_white = 2; _local7 = (g.encounters[i].collision_rect.y + g.encounters[i].collision_rect.height); if (_local7 > beam_rect.y){ beam_rect.y = (g.encounters[i].collision_rect.y + g.encounters[i].collision_rect.height); beam_rect.height = (y - beam_rect.y); }; }; }; i++; }; beam_hit.y = (-(beam_rect.height) + 10); beam_mask.graphics.clear(); beam_mask.graphics.lineStyle(0, 0, 0); beam_mask.graphics.beginFill(0xFFFFFF); beam_mask.graphics.drawRect((-((BEAM_WIDTH * 0.5)) - 30), (-(beam_rect.height) + 10), (BEAM_WIDTH + 60), beam_rect.height); beam_mask.graphics.endFill(); } else { beam_blast.visible = false; beam_halo.visible = false; beam.visible = false; beam_hit.visible = false; }; } public function updateAnimState(_arg1:MovieClip):void{ if (!ouch){ }; } public function addCake():void{ if (puke.value < 1){ puke.value = (puke.value + CAKE_VALUE); if (puke.value > 1){ puke.value = 1; if (burp_count == 0){ burp_count = BURP_DELAY; }; }; }; var _local1:int = (1 + (Math.random() * 3)); NitromeGame.sound_manager.playSound(("cake" + _local1)); } public function removeCake():void{ if (puke.value > 0){ puke.value = (puke.value - BEAM_VALUE); if (puke.value <= 0){ puke.value = 0; }; }; } public function checkKeys():void{ px = x; py = y; if (!carried){ if (((((Key.isDown(Keyboard.LEFT)) || (Key.isDown(Key.A)))) && (!(((Key.isDown(Keyboard.RIGHT)) || (Key.isDown(Key.D))))))){ x = (x - SPEED); }; if (((((Key.isDown(Keyboard.RIGHT)) || (Key.isDown(Key.D)))) && (!(((Key.isDown(Keyboard.LEFT)) || (Key.isDown(Key.A))))))){ x = (x + SPEED); }; if (((((Key.isDown(Keyboard.UP)) || (Key.isDown(Key.W)))) && (!(((Key.isDown(Keyboard.DOWN)) || (Key.isDown(Key.S))))))){ y = (y - SPEED); } else { if (((((Key.isDown(Keyboard.DOWN)) || (Key.isDown(Key.S)))) && (!(((Key.isDown(Keyboard.UP)) || (Key.isDown(Key.W))))))){ y = (y + SPEED); }; }; if (((((((((Key.isDown(Keyboard.SPACE)) || (Key.isDown(Keyboard.CONTROL)))) && ((puke.value > 0)))) && (!(ouch)))) && (!(hurt)))){ if (!beaming){ beaming = true; NitromeGame.sound_manager.playSound("laser_start"); }; veer = 0; } else { beaming = false; }; } else { beaming = false; }; x = Math.min((((-(g.canvas.x) * 0.5) + Game.width) - (collision_rect.width * 0.5)), x); if ((((y > (((-(g.canvas.y) * 0.5) + Game.height) - (collision_rect.height * 0.5)))) && ((collisions & UP)))){ death(); }; if (!g.completed){ y = Math.min((((-(g.canvas.y) * 0.5) + Game.height) - (collision_rect.height * 0.5)), y); }; x = Math.max(((-(g.canvas.x) * 0.5) + (collision_rect.width * 0.5)), x); y = Math.max(((-(g.canvas.y) * 0.5) + (collision_rect.height * 0.5)), y); map_x = (collision_rect.x * Tile.TILE_SCALE); map_y = (collision_rect.y * Tile.TILE_SCALE); } public function updateMC():void{ if (!carried){ last_mc_x = mc.x; last_mc_y = mc.y; mc.x = x; mc.y = y; }; if (last_mc_x < mc.x){ if (veer < 2){ veer++; veer_count = 3; }; } else { if (last_mc_x > mc.x){ if (veer > -2){ veer--; veer_count = 3; }; } else { if (veer_count > 0){ veer_count--; } else { if (veer < 0){ veer++; } else { if (veer > 0){ veer--; }; }; }; }; }; if (ouch){ if (player_mc.currentLabel != "ouch"){ player_mc.gotoAndStop("ouch"); }; } else { if (carried){ player_mc.gotoAndStop((veer + 8)); } else { if (beam.scaleX <= 0){ player_mc.gotoAndStop((veer + 3)); } else { if (beam.scaleX > 0){ if (beam.scaleX < 0.3){ player_mc.gotoAndStop(11); } else { if (beam.scaleX < 0.6){ player_mc.gotoAndStop(12); } else { if (player_mc.currentFrame == 12){ player_mc.gotoAndStop(13); } else { if (player_mc.currentFrame == 13){ player_mc.gotoAndStop(14); } else { if (player_mc.currentFrame == 14){ player_mc.gotoAndStop(15); } else { if (player_mc.currentFrame == 15){ player_mc.gotoAndStop(16); } else { if (player_mc.currentFrame == 16){ player_mc.gotoAndStop(13); }; }; }; }; }; }; }; }; }; }; }; if (shield_count.value > 0){ if (shield_mc.alpha < 1){ shield_mc.alpha = (shield_mc.alpha + 0.2); }; if (!g.completed){ shield_count.value--; }; } else { if (shield_mc.alpha > 0){ shield_mc.alpha = (shield_mc.alpha - 0.05); }; }; scrolling(); g.scroller.clipManager(); } public function scrolling():void{ var _local2:Point; if (back.top != null){ if (!drop_ship){ back.top.y = (back.top.y + 0.5); back.bottom.y = (back.bottom.y + 0.25); if (back.top.y > 0){ back.top.y = (back.top.y - (back.top.height * 0.5)); }; if (back.bottom.y > 0){ back.bottom.y = (back.bottom.y - (back.bottom.height * 0.5)); }; } else { if (((!(mc.visible)) && ((drop_ship_mc.y > (((-(g.canvas.y) * 0.5) + Game.height) - (drop_ship_mc.height * 0.5)))))){ } else { if (!mc.visible){ _local2 = new Point(); _local2 = Util.localToLocal(_local2, drop_ship_mc.player, g.canvas); mc.x = (x = _local2.x); mc.y = (y = _local2.y); drop_ship_mc.player.visible = false; player_mc.gotoAndStop(3); mc.visible = true; } else { if (drop_ship_top_speed > 0.5){ drop_ship_top_speed = (drop_ship_top_speed * 0.95); drop_ship_bottom_speed = (drop_ship_bottom_speed * 0.95); drop_ship_blur = (drop_ship_blur * 0.95); g.probe.boost_mc.alpha = (g.probe.boost_mc.alpha * 0.95); } else { g.probe.boost_mc.visible = false; g.screen.filters = []; drop_ship = false; NitromeGame.timeline.msg_panel.setMsg(g.start_msg); }; }; }; back.top.y = (back.top.y + drop_ship_top_speed); back.bottom.y = (back.bottom.y + drop_ship_bottom_speed); if (back.top.y > 0){ back.top.y = (back.top.y - (back.top.height * 0.5)); }; if (back.bottom.y > 0){ back.bottom.y = (back.bottom.y - (back.bottom.height * 0.5)); }; }; }; if (drop_ship_mc != null){ if (drop_ship_mc){ drop_ship_mc.y = (drop_ship_mc.y - (g.level_scroll_speed * 2)); } else { drop_ship_mc.y = (drop_ship_mc.y - (g.level_scroll_speed * 4)); }; }; if (((((!(drop_ship)) && ((g.canvas.y < 0)))) && ((g.pause_scroll == 0)))){ g.canvas.y = (g.canvas.y + (g.level_scroll_speed * 2)); y = (y - g.level_scroll_speed); }; if (g.completed){ y = (y - g.level_scroll_speed); }; var _local1:int = ((((-(g.canvas.y) * 0.5) + Game.height) + (scale * 6)) * Tile.TILE_SCALE); if (_local1 < g.tile_height){ i = 0; while (i < g.tile_width) { if ((((((((g.tile_map[_local1][i] is Tile)) && (g.tile_map[_local1][i].slide_vert))) && ((_local1 == g.tile_map[_local1][i].grid_y)))) && ((g.tile_map[_local1][i].grid_x == i)))){ g.tile_map[_local1][i].remove(); }; i++; }; }; } override public function toString():String{ return (super.toString()); } } }//package com.nitrome.engine_specific
Section 33
//Probe (com.nitrome.engine_specific.Probe) package com.nitrome.engine_specific { import com.nitrome.engine.*; import flash.display.*; public class Probe extends Dot { public var mc:MovieClip; public var owl_mc:MovieClip; public var magnet_mc:MovieClip; public var blast_mc:MovieClip; public var boost_mc:MovieClip; public var g:Game; public var collision_rect:Rect; public var item; public var grab_x:int; public var grab_y:int; public var player:Player; public var state:int; public var bullet_count:int; public var napalm_count:HiddenInt; public var magnet_count:HiddenInt; public var magnet_bullet_count:int; public var magnet_blasting:Boolean; public var magnet_blast_angle:int; public var dot:Dot; public var player_drag_line:Line; public var veer:int; public var veer_count:int; public var active:Boolean; public var drag_beam:Array; public var drag_beam_count:int;// = 0 public var tile_cx:Number; public var tile_cy:Number; public var drag_dx:Number; public var drag_dy:Number; public static const DRAG_BEAM_DELAY = 3; public static const MAGNET_ANGLE_STEP:int = 22; public static const BULLET_SPEED:Number = 18; public static const FIRING_WIDTH:Number = 7.5; public static const BULLET_DELAY:int = 3; public static const MAGNET_DELAY:int = 100; public static const NAPALM_DELAY:int = 150; public static const MAGNET_BLAST_SPEED:Number = 5; public static const CARRYING:int = 1; public static const FIRING:int = 2; public static const NONE:int = 0; public static const MOUSEPRESSED:int = 4; public static const width:int = 14; public static const height:int = 18; public function Probe(_arg1:MovieClip, _arg2:Player, _arg3:Game){ super(_arg1.x, _arg1.y); this.mc = _arg1; owl_mc = (_arg1.getChildAt(0) as MovieClip); this.g = _arg3; this.player = _arg2; collision_rect = new Rect(); bullet_count = 0; napalm_count = new HiddenInt(); magnet_count = new HiddenInt(); magnet_bullet_count = 0; magnet_blasting = false; magnet_blast_angle = 270; drag_beam = new Array(); magnet_mc = new MagnetiseMC(); magnet_mc.visible = false; _arg1.addChild(magnet_mc); blast_mc = new ProbeBlastMC(); blast_mc.visible = false; if (NitromeGame.selected_level == 1){ boost_mc = new ProbeJetMC(); _arg1.addChildAt(boost_mc, 0); }; _arg1.addChildAt(blast_mc, 0); player_drag_line = new Line(_arg2, new Dot()); veer = 0; veer_count = 0; owl_mc.gotoAndStop((veer + 3)); active = true; } public function main():void{ var _local1:*; updateCollisionRect(); if (!g.completed){ checkKeys(); }; updateMC(); if (item != null){ if (item == player){ player_drag_line.b.x = (x - grab_x); player_drag_line.b.y = (y - grab_y); player_drag_line.updateLine(); dot = RayCast.cast(player_drag_line, g.tile_map); if (dot != null){ player.x = dot.x; player.y = dot.y; player.collision(); } else { player.last_mc_x = player.mc.x; player.last_mc_y = player.mc.y; player.x = (player.mc.x = (mc.x - grab_x)); player.y = (player.mc.y = (mc.y - grab_y)); }; } else { if ((item is Cake)){ item.x = (item.mc.x = (mc.x - grab_x)); item.y = (item.mc.y = (mc.y - grab_y)); item.collision_rect.x = (item.x + item.dx); item.collision_rect.y = (item.y + item.dy); }; }; }; if (magnet_count.value > 0){ magnet_count.value--; if (magnet_count.value == 0){ magnet_blasting = true; }; }; if (magnet_blasting){ _local1 = 0; while (_local1 < 18) { g.createBullet(x, y, (Trig.cos[magnet_blast_angle] * MAGNET_BLAST_SPEED), (Trig.sin[magnet_blast_angle] * MAGNET_BLAST_SPEED), Bullet.PLAYER_SPECIAL, MAGNET_BLAST_SPEED); magnet_blast_angle = (magnet_blast_angle + MAGNET_ANGLE_STEP); if (magnet_blast_angle >= 360){ magnet_blast_angle = (magnet_blast_angle - 360); }; magnet_bullet_count--; _local1++; }; if (magnet_bullet_count <= 0){ magnet_bullet_count = 0; magnet_blasting = false; }; }; if (napalm_count.value > 0){ g.createBullet(x, y, 0, 0, Bullet.NAPALM, 0); napalm_count.value--; }; active = true; } public function updateCollisionRect():void{ collision_rect.x = (mc.x - (width >> 1)); collision_rect.y = (mc.y - (height >> 1)); collision_rect.width = width; collision_rect.height = height; } public function checkKeys():void{ var _local1:Cake; if (((!(g.right_pressed)) && (g.mouse_pressed))){ if (state == NONE){ _local1 = gotCake(); if (player.grab_rect.contains(mc.x, mc.y)){ if (!player.collision_rect.contains(mc.x, mc.y)){ if (mc.x < player.collision_rect.x){ player.x = (player.x + (mc.x - player.collision_rect.x)); }; if (mc.y < player.collision_rect.y){ player.y = (player.y + (mc.y - player.collision_rect.y)); }; if (mc.x >= (player.collision_rect.x + player.collision_rect.width)){ player.x = (player.x + (mc.x - ((player.collision_rect.width + player.collision_rect.x) - 1))); }; if (mc.y >= (player.collision_rect.y + player.collision_rect.height)){ player.y = (player.y + (mc.y - ((player.collision_rect.height + player.collision_rect.y) - 1))); }; }; item = player; grab_x = (mc.x - player.x); grab_y = (mc.y - player.y); player.carried = true; state = CARRYING; } else { if ((((g.tile_map[g.tile_grid_mouse_y][g.tile_grid_mouse_x] is Tile)) && (!((g.tile_map[g.tile_grid_mouse_y][g.tile_grid_mouse_x] is BlockTile))))){ if (!(g.tile_map[g.tile_grid_mouse_y][g.tile_grid_mouse_x].type & Tile.STATIC)){ item = g.tile_map[g.tile_grid_mouse_y][g.tile_grid_mouse_x]; item.startDrag(g.tile_grid_mouse_x, g.tile_grid_mouse_y); g.addTile((item as Tile)); state = CARRYING; }; } else { if ((g.tile_map[g.tile_grid_mouse_y][g.tile_grid_mouse_x] is Switch)){ g.tile_map[g.tile_grid_mouse_y][g.tile_grid_mouse_x].activate(); state = MOUSEPRESSED; } else { if (_local1 != null){ item = _local1; grab_x = (mc.x - _local1.x); grab_y = (mc.y - _local1.y); state = CARRYING; } else { state = FIRING; g.createBullet((mc.x + FIRING_WIDTH), (mc.y - 10), 0, -(BULLET_SPEED), Bullet.PLAYER, BULLET_SPEED); g.createBullet(((mc.x - FIRING_WIDTH) + 1), (mc.y - 10), 0, -(BULLET_SPEED), Bullet.PLAYER, BULLET_SPEED); bullet_count = BULLET_DELAY; }; }; }; }; } else { if (state == FIRING){ if (bullet_count == 0){ g.createBullet((mc.x + FIRING_WIDTH), (mc.y - 10), 0, -(BULLET_SPEED), Bullet.PLAYER, BULLET_SPEED); g.createBullet(((mc.x - FIRING_WIDTH) + 1), (mc.y - 10), 0, -(BULLET_SPEED), Bullet.PLAYER, BULLET_SPEED); bullet_count = BULLET_DELAY; }; bullet_count--; }; }; } else { if (g.mouse_pressed){ g.right_pressed = false; } else { drop(); if (state == MOUSEPRESSED){ state = NONE; }; }; }; } public function gotCake():Cake{ var _local1:int; while (_local1 < g.cakes.length) { if (g.cakes[_local1].collision_rect.contains(mc.x, mc.y)){ return (g.cakes[_local1]); }; _local1++; }; return (null); } public function drop():void{ if (item == player){ player.carried = false; player.veer = 0; } else { if ((item is Tile)){ item.stopDrag(); }; }; item = null; state = NONE; } public function updateMC():void{ if ((((g.canvas.mouseX >= (mc.x + 3))) && ((veer <= 1)))){ veer++; veer_count = 5; } else { if ((((g.canvas.mouseX <= (mc.x - 3))) && ((veer >= -1)))){ veer--; veer_count = 5; } else { if (veer != 0){ if (veer_count > 0){ veer_count--; } else { if (veer < 0){ veer++; } else { if (veer > 0){ veer--; }; }; }; }; }; }; mc.x = g.canvas.mouseX; if (!g.completed){ mc.y = g.canvas.mouseY; mc.y = Math.min((((-(g.canvas.y) * 0.5) + Game.height) - (collision_rect.height * 0.5)), mc.y); mc.y = Math.max(((-(g.canvas.y) * 0.5) + (collision_rect.height * 0.5)), mc.y); } else { mc.y = (mc.y - (g.level_scroll_speed * 2)); }; mc.x = Math.min((((-(g.canvas.x) * 0.5) + Game.width) - (collision_rect.width * 0.5)), mc.x); mc.x = Math.max(((-(g.canvas.x) * 0.5) + (collision_rect.width * 0.5)), mc.x); x = mc.x; y = mc.y; owl_mc.gotoAndStop((veer + 3)); if (magnet_count.value > 0){ magnet_mc.visible = true; } else { if (magnet_mc.visible){ magnet_mc.visible = false; }; }; if (state == FIRING){ blast_mc.visible = true; } else { if (blast_mc.visible){ blast_mc.visible = false; }; }; updateDragBeam(); } public function death():void{ active = false; mc.visible = false; g.drag_holder.graphics.clear(); g.addFX(mc.x, mc.y, g.small_bang_bitmap); drop(); napalm_count.value = 0; magnet_count.value = 0; magnet_bullet_count = 0; magnet_blasting = false; } public function updateDragBeam():void{ g.drag_holder.graphics.clear(); if ((item is Tile)){ if (drag_beam_count <= 0){ tile_cx = (item.collision_rect.x + (item.collision_rect.width * 0.5)); tile_cy = (item.collision_rect.y + (item.collision_rect.height * 0.5)); drag_beam.unshift(new Rect(item.collision_rect.x, item.collision_rect.y, item.collision_rect.width, item.collision_rect.height)); drag_dx = ((g.canvas.mouseX - tile_cx) * item._1_over_width); drag_dy = ((g.canvas.mouseY - tile_cy) * item._1_over_height); drag_beam_count = DRAG_BEAM_DELAY; }; drag_beam_count--; g.drag_holder.graphics.lineStyle(3, 3407871, 0.2); g.drag_holder.graphics.drawRect(item.collision_rect.x, item.collision_rect.y, item.collision_rect.width, item.collision_rect.height); g.drag_holder.graphics.lineStyle(1, 3407871, 0.2); g.drag_holder.graphics.drawRect(item.collision_rect.x, item.collision_rect.y, item.collision_rect.width, item.collision_rect.height); } else { if (drag_beam_count > 0){ drag_beam_count = 0; }; }; var _local1:int; while (_local1 < drag_beam.length) { drag_beam[_local1].width = (drag_beam[_local1].width - 4); drag_beam[_local1].height = (drag_beam[_local1].height - 4); drag_beam[_local1].x = ((g.canvas.mouseX - (drag_beam[_local1].width * 0.5)) - (drag_dx * drag_beam[_local1].width)); drag_beam[_local1].y = ((g.canvas.mouseY - (drag_beam[_local1].height * 0.5)) - (drag_dy * drag_beam[_local1].height)); g.drag_holder.graphics.lineStyle(3, 3407871, 0.2); g.drag_holder.graphics.drawRect(drag_beam[_local1].x, drag_beam[_local1].y, drag_beam[_local1].width, drag_beam[_local1].height); g.drag_holder.graphics.lineStyle(1, 3407871, 0.2); g.drag_holder.graphics.drawRect(drag_beam[_local1].x, drag_beam[_local1].y, drag_beam[_local1].width, drag_beam[_local1].height); if ((drag_beam[_local1].width + drag_beam[_local1].height) < 10){ drag_beam.splice(_local1, 1); _local1--; }; _local1++; }; } } }//package com.nitrome.engine_specific
Section 34
//RayCast (com.nitrome.engine_specific.RayCast) package com.nitrome.engine_specific { import com.nitrome.engine.*; public class RayCast { public static const UP:int = 1; public static const RIGHT:int = 2; public static const DOWN:int = 4; public static const LEFT:int = 8; public static var g:Game; public static var DX:Number; public static var DY:Number; public static var map_x:int; public static var map_y:int; public static var map_x1:int; public static var map_y1:int; public static var dir_x:int; public static var dir_y:int; public static var px:Number; public static var py:Number; public static var tx:Number; public static var ty:Number; public static var dist:Number; public static var next_x:Number; public static var next_y:Number; public static var found:Boolean; public static var i:int; public static var j:int; public static var vx:Number; public static var vy:Number; public static var dot:Dot; public static var line:Line; public static var num_corners_inside:int; public static function init(_arg1:Game):void{ g = _arg1; dot = new Dot(); } public static function cast(_arg1:Line, _arg2:Array):Dot{ found = false; if (_arg1.len <= 10){ return (null); }; map_x = ((_arg1.a.x * Tile.TILE_SCALE) >> 0); map_y = ((_arg1.a.y * Tile.TILE_SCALE) >> 0); if (((!((_arg2[map_y][map_x] == null))) && (!((_arg2[map_y][map_x] is BlockTile))))){ }; if (_arg1.dx != 0){ DX = (1 / _arg1.dx); } else { DX = 0; }; if (_arg1.dy != 0){ DY = (1 / _arg1.dy); } else { DY = 0; }; dir_x = ((_arg1.dx < 0)) ? -1 : 1; dir_y = ((_arg1.dy < 0)) ? -1 : 1; px = (_arg1.a.x - (map_x * Tile.tile_scale)); py = (_arg1.a.y - (map_y * Tile.tile_scale)); tx = ((_arg1.dx)<0) ? 0 : Tile.tile_scale; ty = ((_arg1.dy)<0) ? 0 : Tile.tile_scale; dist = 0; i = 0; while (i < 100) { next_x = Math.abs(((px - tx) * DX)); next_y = Math.abs(((py - ty) * DY)); if ((((((next_x < next_y)) || ((_arg1.vy == 0)))) && (!((_arg1.vx == 0))))){ g.debug.moveTo(((map_x * Tile.tile_scale) + px), ((map_y * Tile.tile_scale) + py)); map_x = (map_x + dir_x); dist = (dist + next_x); if ((((((((((dist > _arg1.len)) || ((map_x < 0)))) || ((map_y < 0)))) || ((map_x >= _arg2[0].length)))) || ((map_y >= _arg2.length)))){ return (null); }; px = (px + (_arg1.dx * next_x)); py = (py + (_arg1.dy * next_x)); px = (px - (dir_x * Tile.tile_scale)); if (((!((_arg2[map_y][map_x] == null))) && (!((_arg2[map_y][map_x] is BlockTile))))){ dot.x = ((map_x * Tile.tile_scale) + px); dot.y = ((map_y * Tile.tile_scale) + py); return (dot); }; } else { g.debug.moveTo(((map_x * Tile.tile_scale) + px), ((map_y * Tile.tile_scale) + py)); map_y = (map_y + dir_y); dist = (dist + next_y); if ((((((((((dist > _arg1.len)) || ((map_x < 0)))) || ((map_y < 0)))) || ((map_x >= _arg2[0].length)))) || ((map_y >= _arg2.length)))){ return (null); }; px = (px + (_arg1.dx * next_y)); py = (py + (_arg1.dy * next_y)); py = (py - (dir_y * Tile.tile_scale)); if (((!((_arg2[map_y][map_x] == null))) && (!((_arg2[map_y][map_x] is BlockTile))))){ dot.x = ((map_x * Tile.tile_scale) + px); dot.y = ((map_y * Tile.tile_scale) + py); return (dot); }; }; i++; }; return (null); } } }//package com.nitrome.engine_specific
Section 35
//SkipStoryButton (com.nitrome.engine_specific.SkipStoryButton) package com.nitrome.engine_specific { import flash.display.*; public dynamic class SkipStoryButton extends Sprite { } }//package com.nitrome.engine_specific
Section 36
//Smoke (com.nitrome.engine_specific.Smoke) package com.nitrome.engine_specific { import com.nitrome.engine.*; public class Smoke extends Particle { public const DELAY:int = 75; public var count:int; public var g:Game; public var active:Boolean; public function Smoke(_arg1:Number, _arg2:Number, _arg3:Game){ super(_arg1, _arg2); count = DELAY; this.g = _arg3; active = true; } public function main():void{ var _local1:BitmapSprite; verlet(0, 0.1, 0.99); var _local2:int = (Math.random() * 4); if (_local2 == 0){ _local1 = g.burn_bitmap1; } else { if (_local2 == 1){ _local1 = g.burn_bitmap2; } else { if (_local2 == 2){ _local1 = g.burn_bitmap3; } else { if (_local2 == 3){ _local1 = g.burn_bitmap4; }; }; }; }; g.addFX(x, y, _local1); count--; if (count <= 0){ active = false; }; } } }//package com.nitrome.engine_specific
Section 37
//Switch (com.nitrome.engine_specific.Switch) package com.nitrome.engine_specific { import com.nitrome.engine.*; import flash.display.*; public class Switch extends Clip { public var state:int; public var type:int; public var collision_rect:Rect; public static const UP:int = 1; public static const DOWN:int = 2; public static const OFF:int = 4; public static const NAPALM:int = 1; public static const SHIELD:int = 2; public static const MAGNET:int = 4; public static const CASH:int = 8; public static const tile_scale:int = 24; public static const TILE_SCALE:Number = 0.0416666666666667; public function Switch(_arg1:Sprite, _arg2:Game, _arg3:int){ super(_arg1, _arg2); this.type = _arg3; map_x = (_arg1.x * TILE_SCALE); map_y = (_arg1.y * TILE_SCALE); _arg2.tile_map[map_y][map_x] = this; collision_rect = new Rect(_arg1.x, _arg1.y, tile_scale, tile_scale); _arg2.tile_top_holder.addChildAt(_arg1, 0); } public function activate():void{ if ((((state == OFF)) || ((state == DOWN)))){ return; }; state = OFF; if (type == NAPALM){ g.probe.napalm_count.value = Probe.NAPALM_DELAY; NitromeGame.sound_manager.playSound("napalm"); } else { if (type == SHIELD){ g.player.shield_count.value = Player.SHIELD_DELAY; NitromeGame.sound_manager.playSound("shield"); } else { if (type == MAGNET){ g.probe.magnet_count.value = Probe.MAGNET_DELAY; NitromeGame.sound_manager.playSound("magnet"); } else { if (type == CASH){ g.cashConvertBullets(); NitromeGame.sound_manager.playSound("cash"); }; }; }; }; (mc as MovieClip).gotoAndStop("off"); } public function unpause():void{ if (state == DOWN){ (mc as MovieClip).gotoAndStop("down"); } else { if (state == OFF){ (mc as MovieClip).gotoAndStop("off"); } else { (mc as MovieClip).gotoAndStop("up"); }; }; } } }//package com.nitrome.engine_specific
Section 38
//Tile (com.nitrome.engine_specific.Tile) package com.nitrome.engine_specific { import com.nitrome.engine.*; import flash.display.*; public class Tile extends Clip { public var front_mc:Sprite; public var to_x:int; public var to_y:int; public var grid_x:int; public var grid_y:int; public var next_x:int; public var next_y:int; public var grab_x:int; public var grab_y:int; public var dest_x:Number; public var dest_y:Number; public var width:int; public var height:int; public var collision_rect:Rect; public var slide_horiz:Boolean;// = true public var slide_vert:Boolean;// = true public var rotates:Boolean;// = false public var start_drag_x:int; public var start_drag_y:int; public var speed:int;// = 12 public var active_tile:Boolean; public var squares:Array; public var dest_rotation:Number; public var speed_rotation:Number; public var drag_angle:Number; public var angle:Number; public var type:int; public var _1_over_width:Number; public var _1_over_height:Number; public var moving:Boolean;// = false public var on_grid_pos:Boolean;// = true public var laser_count:int;// = 0 public static const tile_scale:int = 24; public static const TILE_SCALE:Number = 0.0416666666666667; public static const _1_OVER_24:Number = 0.0416666666666667; public static const _1_OVER_48:Number = 0.0208333333333333; public static const SMALL:int = 1; public static const BIG:int = 2; public static const TURN:int = 4; public static const STATIC:int = 8; public static const HORIZ:int = 16; public static const VERT:int = 32; public static const BLOCK:int = 64; public static const BREAK:int = 128; public function Tile(_arg1:Sprite, _arg2:Sprite, _arg3:Game, _arg4:int=1){ super(_arg1, _arg3); this.type = _arg4; this.front_mc = _arg2; dest_x = _arg1.x; dest_y = _arg1.y; next_x = (grid_x = (to_x = (_arg1.x * TILE_SCALE))); next_y = (grid_y = (to_y = (_arg1.y * TILE_SCALE))); grab_x = (grab_y = 0); if ((_arg4 & SMALL)){ width = (height = 1); squares = [new Square(0, 0)]; _1_over_width = (_1_over_height = _1_OVER_24); }; if ((_arg4 & BIG)){ width = (height = 2); squares = [new Square(0, 0), new Square(1, 0), new Square(1, 1), new Square(0, 1)]; _1_over_width = (_1_over_height = _1_OVER_48); }; if ((_arg4 & TURN)){ width = (height = 1); rotates = true; slide_horiz = false; slide_vert = false; angle = (_arg1 as MovieClip).mirror.rotation; squares = [new Square(0, 0)]; _1_over_width = (_1_over_height = _1_OVER_24); }; if ((_arg4 & HORIZ)){ slide_vert = false; }; if ((_arg4 & VERT)){ slide_horiz = false; }; if ((_arg4 & STATIC)){ slide_horiz = (slide_vert = false); }; var _local5:int; while (_local5 < squares.length) { if (_arg3.tile_map[(squares[_local5].y + grid_y)][(squares[_local5].x + grid_x)] == null){ _arg3.tile_map[(squares[_local5].y + grid_y)][(squares[_local5].x + grid_x)] = this; }; _local5++; }; collision_rect = new Rect(_arg1.x, _arg1.y, (tile_scale * width), (tile_scale * height)); active_tile = false; } public function move():void{ var _local1:int; var _local2:int; var _local3:int; if (((slide_horiz) || (slide_vert))){ if (((((active_tile) && (on_grid_pos))) && (((!((grid_x == to_x))) || (!((grid_y == to_y))))))){ next_x = grid_x; next_y = grid_y; _local1 = 0; _local2 = 0; if (slide_horiz){ if ((((to_x < grid_x)) && ((grid_x > 0)))){ next_x = (grid_x - 1); _local1 = -1; }; if ((((to_x > grid_x)) && (((grid_x + width) < g.tile_width)))){ next_x = (grid_x + 1); _local1 = 1; }; }; if (slide_vert){ if ((((to_y < grid_y)) && ((grid_y > 0)))){ next_y = (grid_y - 1); _local2 = -1; }; if ((((to_y > grid_y)) && (((grid_y + height) < g.tile_height)))){ next_y = (grid_y + 1); _local2 = 1; }; }; _local3 = 0; while (_local3 < squares.length) { if (g.tile_map[((grid_y + _local2) + squares[_local3].y)][(grid_x + squares[_local3].x)] != null){ next_y = grid_y; }; if (g.tile_map[(grid_y + squares[_local3].y)][((grid_x + _local1) + squares[_local3].x)] != null){ next_x = grid_x; }; if ((((((g.tile_map[((grid_y + _local2) + squares[_local3].y)][(grid_x + squares[_local3].x)] == null)) && ((g.tile_map[(grid_y + squares[_local3].y)][((grid_x + _local1) + squares[_local3].x)] == null)))) && (!((g.tile_map[((grid_y + _local2) + squares[_local3].y)][((grid_x + _local1) + squares[_local3].x)] == null))))){ next_x = grid_x; next_y = grid_y; }; _local3++; }; if (((!((next_x == grid_x))) || (!((next_y == grid_y))))){ dest_x = (next_x * tile_scale); dest_y = (next_y * tile_scale); on_grid_pos = false; }; }; if (((slide_horiz) || (slide_vert))){ if (dest_x > mc.x){ mc.x = (mc.x + speed); }; if (dest_x < mc.x){ mc.x = (mc.x - speed); }; if (dest_y > mc.y){ mc.y = (mc.y + speed); }; if (dest_y < mc.y){ mc.y = (mc.y - speed); }; if ((((mc.x == dest_x)) && ((mc.y == dest_y)))){ on_grid_pos = true; }; collision_rect.x = mc.x; collision_rect.y = mc.y; front_mc.x = mc.x; front_mc.y = (mc.y + collision_rect.height); }; grid_x = (mc.x * TILE_SCALE); grid_y = (mc.y * TILE_SCALE); } else { if (rotates){ if (!on_grid_pos){ (mc as MovieClip).mirror.rotation = dest_rotation; angle = (mc as MovieClip).mirror.rotation; on_grid_pos = true; }; }; }; } public function setDestination(_arg1:int, _arg2:int):void{ var _local3:Number; var _local4:Number; var _local5:Number; if (((slide_horiz) || (slide_vert))){ to_x = (grab_x + _arg1); to_y = (grab_y + _arg2); } else { if (rotates){ _local3 = (g.canvas.mouseX - (collision_rect.x + (collision_rect.width * 0.5))); _local4 = (g.canvas.mouseY - (collision_rect.y + (collision_rect.height * 0.5))); _local5 = (Trig.DEGREES * Math.atan2(_local4, _local3)); _local5 = (_local5 - drag_angle); if (_local5 < -180){ _local5 = (_local5 + 360); }; if (_local5 >= 180){ _local5 = (_local5 - 360); }; if (_local5 > 45){ drag_angle = (drag_angle + 90); if (drag_angle >= 360){ drag_angle = (drag_angle - 360); }; dest_rotation = (dest_rotation + 90); on_grid_pos = false; while (dest_rotation > 180) { dest_rotation = (dest_rotation - 360); }; } else { if (_local5 < -45){ drag_angle = (drag_angle - 90); if (drag_angle < 0){ drag_angle = (drag_angle + 360); }; dest_rotation = (dest_rotation - 90); on_grid_pos = false; while (dest_rotation < -180) { dest_rotation = (dest_rotation + 360); }; }; }; }; }; } public function startDrag(_arg1:int, _arg2:int):void{ var _local3:int; if (((slide_horiz) || (slide_vert))){ grab_x = (grid_x - _arg1); grab_y = (grid_y - _arg2); _local3 = 0; while (_local3 < squares.length) { g.tile_map[(grid_y + squares[_local3].y)][(grid_x + squares[_local3].x)] = null; _local3++; }; } else { if (rotates){ start_drag_x = (g.canvas.mouseX - (collision_rect.x + (collision_rect.width * 0.5))); start_drag_y = (g.canvas.mouseY - (collision_rect.y + (collision_rect.height * 0.5))); drag_angle = (Trig.DEGREES * Math.atan2(start_drag_y, start_drag_x)); angle = (mc as MovieClip).mirror.rotation; dest_rotation = (mc as MovieClip).mirror.rotation; }; }; active_tile = true; } public function stopDrag():void{ var _local1:int; if (((slide_horiz) || (slide_vert))){ _local1 = 0; while (_local1 < squares.length) { g.tile_map[(next_y + squares[_local1].y)][(next_x + squares[_local1].x)] = this; _local1++; }; grid_x = (mc.x * TILE_SCALE); grid_y = (mc.y * TILE_SCALE); }; active_tile = false; } override public function remove():void{ super.remove(); var _local1:int; while (_local1 < squares.length) { g.tile_map[(squares[_local1].y + grid_y)][(squares[_local1].x + grid_x)] = null; _local1++; }; if (front_mc != null){ front_mc.parent.removeChild(front_mc); }; } } }//package com.nitrome.engine_specific class Square { private var x:int; private var y:int; private function Square(_arg1:int, _arg2:int){ this.x = _arg1; this.y = _arg2; } }
Section 39
//TileMaker (com.nitrome.engine_specific.TileMaker) package com.nitrome.engine_specific { import com.nitrome.engine.*; import flash.display.*; import flash.utils.*; public class TileMaker { public var g:Game; public var s:Scroller; public var class_names:Array; public var fixed:Boolean; private var i:int; private static const UP:int = 1; private static const RIGHT:int = 2; private static const DOWN:int = 4; private static const LEFT:int = 8; private static const IN_PLAY:int = 2; private static const EMPTY:int = 1; public function TileMaker(_arg1:Game, _arg2:Scroller){ this.g = _arg1; this.s = _arg2; class_names = new Array("", "", "MonsterMC1", "MonsterMC2", "MonsterMC3", "FreeTileMC", "LaserMC", "LaserMC", "LaserMC", "LaserMC", "MirrorTileMC", "MirrorTileMC", "HorizTileMC", "BigHorizTileMC", "VertTileMC", "BigVertTileMC", "StaticTileMC", "BigStaticTileMC", "KillTileMC", "BigFreeTileMC", "NoThruTileMC", "MonsterMC4", "MonsterMC5", "MonsterMC6", "MonsterMC7", "MonsterMC8", "MonsterMC9", "MonsterMC10", "MonsterMC11", "MonsterMC12", "MonsterMC13", "MonsterMC14", "MonsterMC15", "MonsterMC16", "MonsterMC17", "MonsterMC18", "CakeMC1", "CakeMC2", "CakeMC3", "CakeMC4", "CakeMC5", "CakeMC6", "CakeMC7", "CakeMC8", "BlockTileMC", "BreakTileMC1", "BreakTileMC2", "SwitchMC1", "SwitchMC2", "SwitchMC3", "SwitchMC4", "MoveTileMC1", "MoveTileMC2", "MoveTileMC3", "MoveTileMC4", "MoveTileMC5", "MoveTileMC6", "MoveTileMC7", "MoveTileMC8", "MoveTileMC9", "MoveTileMC10", "MoveTileMC11", "MoveTileMC12", "StaticTileMC1", "StaticTileMC2", "StaticTileMC3", "StaticTileMC4", "StaticTileMC5", "StaticTileMC6", "StaticTileMC7", "StaticTileMC8", "StaticTileMC9", "StaticTileMC10", "StaticTileMC11", "StaticTileMC12", "StaticTileMC13", "StaticTileMC14", "StaticTileMC15", "StaticTileMC16", "StaticTileMC17", "StaticTileMC18", "StaticTileMC19", "StaticTileMC20", "StaticTileMC21", "StaticTileMC22", "StaticTileMC23", "StaticTileMC24", "StaticTileMC25", "StaticTileMC26", "StaticTileMC27", "StaticTileMC28", "StaticTileMC29", "StaticTileMC30", "StaticTileMC31", "StaticTileMC32", "HotTileMC", "BossBackMC1", "BossBackMC2", "BossBackMC3", "BossMonsterMC1", "BossMonsterMC2", "BossMonsterMC3", "BossMonsterMC4", "BossMonsterMC5", "BossMonsterMC6", "BossMonsterMC7", "FinishMC", "MonsterMC19", "HelpTileMC1", "HelpTileMC2", "HelpTileMC3", "HelpTileMC4", "HelpTileMC5", "HelpMC1", "HelpMC2", "HelpMC3", "HelpMC4", "HelpMC5"); i = 0; while (i < class_names.length) { if (class_names[i] != ""){ class_names[i] = (getDefinitionByName(class_names[i]) as Class); }; i++; }; } public function mapElement(_arg1:int, _arg2:int):Clip{ var _local4:*; var _local5:Sprite; var _local6:Sprite; var _local7:int; var _local8:int; var _local3:int = (_arg1 + (_arg2 * s.width)); fixed = true; if (s.map_array[_arg2][_arg1] >= 1){ _local5 = new (class_names[s.map_array[_arg2][_arg1]]); }; if (_local5 != null){ _local5.x = (_arg1 * s.scale); _local5.y = (_arg2 * s.scale); s.tiles.addChildAt(_local5, 0); }; if (s.map_array[_arg2][_arg1] == 1){ i = 0; while (i < s.signage.length) { if ((((s.signage[i].n == _local3)) && ((s.signage[i].layer == s.current_layer)))){ break; }; i++; }; } else { if ((s.map_array[_arg2][_arg1] is Array)){ _local7 = s.map_array[_arg2][_arg1][0][0]; _local8 = 0; if ((((_local7 >= 22)) && ((_local7 <= 29)))){ _local8 = 1; } else { if (_local7 >= 30){ _local8 = 2; }; }; _local5 = new (class_names[_local7]); _local5.x = ((s.scale >> 1) + (_arg1 * s.scale)); _local5.y = ((s.scale >> 1) + (_arg2 * s.scale)); s.tiles.addChildAt(_local5, 0); _local4 = new Monster(s.map_array[_arg2][_arg1][0], _local5, s.map_array[_arg2][_arg1][1], _local8, g); fixed = false; } else { if ((((((s.map_array[_arg2][_arg1] == 5)) || ((s.map_array[_arg2][_arg1] == 56)))) || ((s.map_array[_arg2][_arg1] == 59)))){ if (s.map_array[_arg2][_arg1] == 56){ _local6 = new FrontTileMC10(); } else { if (s.map_array[_arg2][_arg1] == 59){ _local6 = new FrontTileMC13(); }; }; if (_local6 != null){ _local6.x = _local5.x; _local6.y = (_local5.y + Tile.tile_scale); g.tile_front_holder.addChild(_local6); }; _local4 = new Tile(_local5, _local6, g); fixed = false; } else { if ((((s.map_array[_arg2][_arg1] >= 6)) && ((s.map_array[_arg2][_arg1] <= 9)))){ _local6 = new FrontTileMC14(); _local6.x = _local5.x; _local6.y = (_local5.y + Tile.tile_scale); g.tile_front_holder.addChild(_local6); _local4 = new Laser(_local5, _local6, g); if (s.map_array[_arg2][_arg1] == 6){ _local4.dir = Laser.UP; } else { if (s.map_array[_arg2][_arg1] == 7){ _local4.dir = Laser.RIGHT; } else { if (s.map_array[_arg2][_arg1] == 8){ _local4.dir = Laser.DOWN; } else { if (s.map_array[_arg2][_arg1] == 9){ _local4.dir = Laser.LEFT; }; }; }; }; fixed = true; } else { if (s.map_array[_arg2][_arg1] == 10){ _local6 = new FrontTileMC14(); _local6.x = _local5.x; _local6.y = (_local5.y + Tile.tile_scale); g.tile_front_holder.addChild(_local6); _local4 = new Mirror(_local5, _local6, g, Mirror.A); fixed = true; } else { if (s.map_array[_arg2][_arg1] == 11){ _local6 = new FrontTileMC14(); _local6.x = _local5.x; _local6.y = (_local5.y + Tile.tile_scale); g.tile_front_holder.addChild(_local6); _local4 = new Mirror(_local5, _local6, g, Mirror.B); fixed = true; } else { if ((((((s.map_array[_arg2][_arg1] == 12)) || ((s.map_array[_arg2][_arg1] == 54)))) || ((s.map_array[_arg2][_arg1] == 57)))){ if (s.map_array[_arg2][_arg1] == 54){ _local6 = new FrontTileMC10(); } else { if (s.map_array[_arg2][_arg1] == 57){ _local6 = new FrontTileMC13(); }; }; if (_local6 != null){ _local6.x = _local5.x; _local6.y = (_local5.y + Tile.tile_scale); g.tile_front_holder.addChild(_local6); }; _local4 = new Tile(_local5, _local6, g, (Tile.SMALL | Tile.HORIZ)); fixed = true; } else { if ((((((s.map_array[_arg2][_arg1] == 13)) || ((s.map_array[_arg2][_arg1] == 52)))) || ((s.map_array[_arg2][_arg1] == 61)))){ if (s.map_array[_arg2][_arg1] == 52){ _local6 = new FrontTileMC9(); } else { if (s.map_array[_arg2][_arg1] == 61){ _local6 = new FrontTileMC11(); }; }; if (_local6 != null){ _local6.x = _local5.x; _local6.y = (_local5.y + (Tile.tile_scale * 2)); g.tile_front_holder.addChild(_local6); }; _local4 = new Tile(_local5, _local6, g, (Tile.BIG | Tile.HORIZ)); fixed = true; } else { if ((((((s.map_array[_arg2][_arg1] == 14)) || ((s.map_array[_arg2][_arg1] == 55)))) || ((s.map_array[_arg2][_arg1] == 58)))){ if (s.map_array[_arg2][_arg1] == 55){ _local6 = new FrontTileMC10(); } else { if (s.map_array[_arg2][_arg1] == 58){ _local6 = new FrontTileMC13(); }; }; if (_local6 != null){ _local6.x = _local5.x; _local6.y = (_local5.y + Tile.tile_scale); g.tile_front_holder.addChild(_local6); }; _local4 = new Tile(_local5, _local6, g, (Tile.SMALL | Tile.VERT)); fixed = false; } else { if ((((((s.map_array[_arg2][_arg1] == 15)) || ((s.map_array[_arg2][_arg1] == 53)))) || ((s.map_array[_arg2][_arg1] == 60)))){ if (s.map_array[_arg2][_arg1] == 53){ _local6 = new FrontTileMC9(); } else { if (s.map_array[_arg2][_arg1] == 60){ _local6 = new FrontTileMC11(); }; }; if (_local6 != null){ _local6.x = _local5.x; _local6.y = (_local5.y + (Tile.tile_scale * 2)); g.tile_front_holder.addChild(_local6); }; _local4 = new Tile(_local5, _local6, g, (Tile.BIG | Tile.VERT)); fixed = false; } else { if ((((((((((s.map_array[_arg2][_arg1] == 16)) || ((((s.map_array[_arg2][_arg1] >= 63)) && ((s.map_array[_arg2][_arg1] <= 89)))))) || ((s.map_array[_arg2][_arg1] == 92)))) || ((s.map_array[_arg2][_arg1] == 93)))) || ((((s.map_array[_arg2][_arg1] >= 108)) && ((s.map_array[_arg2][_arg1] <= 112)))))){ if (s.map_array[_arg2][_arg1] == 93){ _local6 = new FrontTileMC10(); } else { if (s.map_array[_arg2][_arg1] == 92){ _local6 = new FrontTileMC13(); } else { if (s.map_array[_arg2][_arg1] == 66){ _local6 = new FrontTileMC7(); } else { if (s.map_array[_arg2][_arg1] == 65){ _local6 = new FrontTileMC6(); } else { if (s.map_array[_arg2][_arg1] == 64){ _local6 = new FrontTileMC8(); } else { if (s.map_array[_arg2][_arg1] == 63){ _local6 = new FrontTileMC5(); } else { if (s.map_array[_arg2][_arg1] == 80){ _local6 = new FrontTileMC4(); } else { if (s.map_array[_arg2][_arg1] == 78){ _local6 = new FrontTileMC3(); } else { if (s.map_array[_arg2][_arg1] == 79){ _local6 = new FrontTileMC2(); } else { if (s.map_array[_arg2][_arg1] == 77){ _local6 = new FrontTileMC1(); } else { if ((((s.map_array[_arg2][_arg1] == 108)) || ((s.map_array[_arg2][_arg1] == 109)))){ _local6 = new HelpTileFrontMC1(); } else { if (s.map_array[_arg2][_arg1] == 110){ _local6 = new HelpTileFrontMC2(); } else { if ((((s.map_array[_arg2][_arg1] == 111)) || ((s.map_array[_arg2][_arg1] == 112)))){ _local6 = new HelpTileFrontMC3(); }; }; }; }; }; }; }; }; }; }; }; }; }; if (_local6 != null){ _local6.x = _local5.x; _local6.y = (_local5.y + Tile.tile_scale); g.tile_front_holder.addChild(_local6); }; _local4 = new Tile(_local5, _local6, g, (Tile.SMALL | Tile.STATIC)); fixed = true; } else { if (s.map_array[_arg2][_arg1] == 95){ _local6 = new HotTileFrontMC(); _local6.x = _local5.x; _local6.y = (_local5.y + Tile.tile_scale); g.tile_front_holder.addChild(_local6); _local4 = new HotTile(_local5, _local6, g); fixed = true; } else { if ((((((((s.map_array[_arg2][_arg1] == 17)) || ((s.map_array[_arg2][_arg1] == 90)))) || ((s.map_array[_arg2][_arg1] == 91)))) || ((s.map_array[_arg2][_arg1] == 94)))){ if (s.map_array[_arg2][_arg1] == 90){ _local6 = new FrontTileMC11(); } else { if (s.map_array[_arg2][_arg1] == 91){ _local6 = new FrontTileMC11(); } else { if (s.map_array[_arg2][_arg1] == 94){ _local6 = new FrontTileMC9(); }; }; }; if (_local6 != null){ _local6.x = _local5.x; _local6.y = (_local5.y + (Tile.tile_scale * 2)); g.tile_front_holder.addChild(_local6); }; _local4 = new Tile(_local5, _local6, g, (Tile.BIG | Tile.STATIC)); fixed = true; } else { if (s.map_array[_arg2][_arg1] == 18){ _local4 = new Tile(_local5, _local6, g, (Tile.SMALL | Tile.STATIC)); fixed = true; } else { if ((((((s.map_array[_arg2][_arg1] == 19)) || ((s.map_array[_arg2][_arg1] == 51)))) || ((s.map_array[_arg2][_arg1] == 62)))){ if (s.map_array[_arg2][_arg1] == 51){ _local6 = new FrontTileMC9(); } else { if (s.map_array[_arg2][_arg1] == 62){ _local6 = new FrontTileMC11(); }; }; if (_local6 != null){ _local6.x = _local5.x; _local6.y = (_local5.y + (Tile.tile_scale * 2)); g.tile_front_holder.addChild(_local6); }; _local4 = new Tile(_local5, _local6, g, Tile.BIG); fixed = false; } else { if (s.map_array[_arg2][_arg1] == 20){ _local4 = new Tile(_local5, _local6, g, (Tile.SMALL | Tile.STATIC)); fixed = true; } else { if ((((s.map_array[_arg2][_arg1] >= 36)) && ((s.map_array[_arg2][_arg1] <= 43)))){ _local5.x = (_local5.x + (s.scale >> 1)); _local5.y = (_local5.y + (s.scale >> 1)); _local4 = new Cake(_local5, g); g.cake_holder.addChild(_local5); fixed = true; } else { if (s.map_array[_arg2][_arg1] == 44){ _local4 = new BlockTile(_local5, _local6, g); fixed = true; } else { if ((((s.map_array[_arg2][_arg1] == 45)) || ((s.map_array[_arg2][_arg1] == 46)))){ if (s.map_array[_arg2][_arg1] == 45){ _local6 = new FrontTileMC15(); } else { if (s.map_array[_arg2][_arg1] == 46){ _local6 = new FrontTileMC12(); }; }; if (_local6 != null){ _local6.x = _local5.x; _local6.y = (_local5.y + Tile.tile_scale); g.tile_front_holder.addChild(_local6); }; _local4 = new BreakTile(_local5, _local6, g); fixed = false; } else { if ((((s.map_array[_arg2][_arg1] >= 47)) && ((s.map_array[_arg2][_arg1] <= 50)))){ if (s.map_array[_arg2][_arg1] == 47){ _local4 = new Switch(_local5, g, Switch.NAPALM); } else { if (s.map_array[_arg2][_arg1] == 48){ _local4 = new Switch(_local5, g, Switch.SHIELD); } else { if (s.map_array[_arg2][_arg1] == 49){ _local4 = new Switch(_local5, g, Switch.MAGNET); } else { if (s.map_array[_arg2][_arg1] == 50){ _local4 = new Switch(_local5, g, Switch.CASH); }; }; }; }; fixed = true; } else { if (s.map_array[_arg2][_arg1] == 106){ _local4 = new Finish(_local5, g); fixed = true; } else { if (s.map_array[_arg2][_arg1] != 0){ _local4 = new Clip(_local5, g); }; }; }; }; }; }; }; }; }; }; }; }; }; }; }; }; }; }; }; }; }; }; if (_local4 != null){ _local4.map_x = (_local4.init_x = _arg1); _local4.map_y = (_local4.init_y = _arg2); _local4.tile_id = s.map_array[_arg2][_arg1]; _local4.layer = s.current_layer; if (fixed){ s.map_array[_arg2][_arg1] = _local4; return (_local4); }; s.map_array[_arg2][_arg1] = 0; }; return (null); } public function generateBlock(_arg1:String, _arg2:Sprite, _arg3:Number, _arg4:Number){ var _local5:*; if (g.blocks_in_play[_arg4][_arg3] != IN_PLAY){ _local5 = new Clip(_arg2, g); _local5.block = true; return (_local5); }; if (_arg1 == "static"){ _local5 = new BlockClip(_arg2, g); }; _local5.b = new Block((_arg3 * Game.scale), (_arg4 * Game.scale), Game.scale, Game.scale); if ((((((_arg4 > 0)) && (isBlock(s.map_array[(_arg4 - 1)][_arg3])))) || ((_arg4 == 0)))){ _local5.b.stack(UP); }; if ((((((_arg3 < (s.width - 1))) && (isBlock(s.map_array[_arg4][(_arg3 + 1)])))) || ((_arg3 == (s.width - 1))))){ _local5.b.stack(RIGHT); }; if ((((((_arg4 < (s.height - 1))) && (isBlock(s.map_array[(_arg4 + 1)][_arg3])))) || ((_arg4 == (s.height - 1))))){ _local5.b.stack(DOWN); }; if ((((((_arg3 > 0)) && (isBlock(s.map_array[_arg4][(_arg3 - 1)])))) || ((_arg3 == 0)))){ _local5.b.stack(LEFT); }; return (_local5); } public function generateSign(_arg1:int):Sprite{ return (new Sprite()); } public function synchro(_arg1:MovieClip){ _arg1.gotoAndPlay(((g.frame_count % _arg1.totalFrames) + 1)); } public static function isBlock(_arg1):Boolean{ return (((((((isNaN(_arg1)) && (_arg1.block))) && (!(_arg1.force_field)))) || (((isFinite(_arg1)) && ((_arg1 == 2)))))); } } }//package com.nitrome.engine_specific
Section 40
//Turret (com.nitrome.engine_specific.Turret) package com.nitrome.engine_specific { import com.nitrome.engine.*; public class Turret { public var g:Game; public var monster:Monster; public var speed:Number; public var r:int; public var type:int; public var count:int; public var path:Array; public var path_index:int; public var delay:int; public var active:Boolean;// = true private var i:int; public static const SMALL_GREEN:int = 0; public static const SMALL_RED:int = 1; public static const SMALL_BLUE:int = 2; public static const BIG:int = 3; public static const HOMING:int = 4; public static const ID:int = 0; public function Turret(_arg1:Array, _arg2:Monster, _arg3:Game){ this.monster = _arg2; this.g = _arg3; this.path = _arg1; speed = 1; r = 0; type = _arg1[ID]; path_index = 3; count = 0; } public function readPath():void{ var _local1:Number; i = 0; while (i < 100) { if (path[path_index] == "F"){ path_index++; speed = path[path_index]; path_index++; g.createBullet(monster.x, monster.y, (Trig.cos[r] * Number(speed)), (Trig.sin[r] * Number(speed)), type, speed); } else { if (path[path_index] == "T"){ path_index++; speed = path[path_index]; path_index++; _local1 = Math.atan2((g.player.y - monster.mc.y), (g.player.x - monster.mc.x)); g.createBullet(monster.x, monster.y, (Math.cos(_local1) * Number(speed)), (Math.sin(_local1) * Number(speed)), type, speed); } else { if (path[path_index] == "R"){ path_index++; r = path[path_index]; while (r >= 360) { r = (r - 360); }; while (r <= -1) { r = (r + 360); }; path_index++; } else { if (path[path_index] == "W"){ path_index++; delay = path[path_index]; count = 0; break; } else { if (path[path_index] == "X"){ path.splice(0, (path_index + 1)); path_index = 0; } else { path_index++; }; }; }; }; }; if (path_index >= path.length){ path_index = 3; }; i++; }; if (path_index >= path.length){ path_index = 3; }; } public function main():void{ count++; if ((((count >= delay)) && ((path.length > 0)))){ readPath(); }; } public function activate():void{ active = true; count = 0; path_index = 0; if (path.length > 0){ readPath(); }; } public function deactivate():void{ active = false; } } }//package com.nitrome.engine_specific
Section 41
//BackButton (com.nitrome.game.BackButton) package com.nitrome.game { import flash.events.*; public class BackButton extends SimpleButton { public function BackButton(){ addFrameScript(0, frame1); } override public function onClick(_arg1:MouseEvent):void{ NitromeGame.transition.doTween("title_screen"); } function frame1(){ stop(); } } }//package com.nitrome.game
Section 42
//ContinueEndButton (com.nitrome.game.ContinueEndButton) package com.nitrome.game { import flash.events.*; public class ContinueEndButton extends SimpleButton { public function ContinueEndButton(){ addFrameScript(0, frame1); } override public function onClick(_arg1:MouseEvent):void{ if (!NitromeGame.timeline.popup_holder.key_pressed){ doStuff(); }; } function doStuff():void{ NitromeGame.timeline.game.clearListeners(); NitromeGame.timeline.popup_holder.key_pressed = true; NitromeGame.timeline.popup_holder.hidePopUp(); NitromeGame.transition.doTween("congrats"); NitromeGame.sound_manager.crossFade(SoundManager.MENU); } function frame1(){ stop(); } } }//package com.nitrome.game
Section 43
//ContinueGameButton (com.nitrome.game.ContinueGameButton) package com.nitrome.game { import flash.events.*; public class ContinueGameButton extends SimpleButton { public function ContinueGameButton(){ addFrameScript(0, frame1); } override public function onClick(_arg1:MouseEvent):void{ NitromeGame.timeline.game.pauseGame(); } function frame1(){ stop(); } } }//package com.nitrome.game
Section 44
//ContinueGameHelpButton (com.nitrome.game.ContinueGameHelpButton) package com.nitrome.game { import flash.events.*; public class ContinueGameHelpButton extends SimpleButton { public function ContinueGameHelpButton(){ addFrameScript(0, frame1); } override public function onClick(_arg1:MouseEvent):void{ NitromeGame.timeline.game.pauseGame(); } function frame1(){ stop(); } } }//package com.nitrome.game
Section 45
//CreditsButton (com.nitrome.game.CreditsButton) package com.nitrome.game { import flash.events.*; public class CreditsButton extends SimpleButton { public function CreditsButton(){ addFrameScript(0, frame1); } override public function onClick(_arg1:MouseEvent):void{ NitromeGame.transition.doTween("credits"); } function frame1(){ stop(); } } }//package com.nitrome.game
Section 46
//FxToggle (com.nitrome.game.FxToggle) package com.nitrome.game { import flash.events.*; public class FxToggle extends SimpleButton { public function FxToggle(){ addFrameScript(0, frame1, 9, frame10, 19, frame20, 29, frame30); if (!NitromeGame.sfx){ gotoAndStop("_off_up"); } else { gotoAndStop("_on_up"); }; addEventListener(MouseEvent.CLICK, onClick); } override protected function updateGraphic():void{ if (over){ if (NitromeGame.sound_manager.sfx){ gotoAndStop("_on_over"); } else { if (!NitromeGame.sound_manager.sfx){ gotoAndStop("_off_over"); }; }; } else { if (NitromeGame.sound_manager.sfx){ gotoAndStop("_on_up"); } else { if (!NitromeGame.sound_manager.sfx){ gotoAndStop("_off_up"); }; }; }; } override public function onClick(_arg1:MouseEvent):void{ NitromeGame.sound_manager.toggleSfx(); updateGraphic(); } function frame1(){ stop(); } function frame10(){ stop(); } function frame20(){ stop(); } function frame30(){ stop(); } } }//package com.nitrome.game
Section 47
//GameHelpButton (com.nitrome.game.GameHelpButton) package com.nitrome.game { import flash.events.*; public class GameHelpButton extends SimpleButton { public function GameHelpButton(){ addFrameScript(0, frame1, 9, frame10); } override public function onClick(_arg1:MouseEvent):void{ NitromeGame.timeline.game.pauseGame(true); } function frame1(){ stop(); } function frame10(){ stop(); } } }//package com.nitrome.game
Section 48
//HelpArrowButtonLeft (com.nitrome.game.HelpArrowButtonLeft) package com.nitrome.game { import flash.display.*; import flash.events.*; public class HelpArrowButtonLeft extends SimpleButton { public function HelpArrowButtonLeft(){ addFrameScript(0, frame1); } override public function onClick(_arg1:MouseEvent):void{ (parent as MovieClip).gotoAndStop((((parent as MovieClip).currentFrame == 1)) ? (parent as MovieClip).totalFrames : ((parent as MovieClip).currentFrame - 1)); } function frame1(){ stop(); } } }//package com.nitrome.game
Section 49
//HelpArrowButtonRight (com.nitrome.game.HelpArrowButtonRight) package com.nitrome.game { import flash.display.*; import flash.events.*; public class HelpArrowButtonRight extends SimpleButton { public function HelpArrowButtonRight(){ addFrameScript(0, frame1); } override public function onClick(_arg1:MouseEvent):void{ (parent as MovieClip).gotoAndStop((((parent as MovieClip).currentFrame == (parent as MovieClip).totalFrames)) ? 1 : ((parent as MovieClip).currentFrame + 1)); } function frame1(){ stop(); } } }//package com.nitrome.game
Section 50
//HelpButton (com.nitrome.game.HelpButton) package com.nitrome.game { import flash.events.*; public class HelpButton extends SimpleButton { public function HelpButton(){ addFrameScript(0, frame1); } override public function onClick(_arg1:MouseEvent):void{ NitromeGame.transition.doTween("help"); } function frame1(){ stop(); } } }//package com.nitrome.game
Section 51
//Key (com.nitrome.game.Key) package com.nitrome.game { import flash.display.*; import flash.events.*; public class Key { public static const NUMBER_0:uint = 48; public static const NUMBER_1:uint = 49; public static const NUMBER_2:uint = 50; public static const NUMBER_3:uint = 51; public static const NUMBER_4:uint = 52; public static const NUMBER_5:uint = 53; public static const NUMBER_6:uint = 54; public static const NUMBER_7:uint = 55; public static const NUMBER_8:uint = 56; public static const NUMBER_9:uint = 57; public static const A:uint = 65; public static const B:uint = 66; public static const C:uint = 67; public static const D:uint = 68; public static const E:uint = 69; public static const F:uint = 70; public static const G:uint = 71; public static const H:uint = 72; public static const I:uint = 73; public static const J:uint = 74; public static const K:uint = 75; public static const L:uint = 76; public static const M:uint = 77; public static const N:uint = 78; public static const O:uint = 79; public static const P:uint = 80; public static const Q:uint = 81; public static const R:uint = 82; public static const S:uint = 83; public static const T:uint = 84; public static const U:uint = 85; public static const V:uint = 86; public static const W:uint = 87; public static const X:uint = 88; public static const Y:uint = 89; public static const Z:uint = 90; private static var initialized:Boolean = false; private static var keysDown:Array = new Array(); public static var stage:Stage; public static var key_pressed:Boolean = false; public static function init(_arg1:Stage){ if (!initialized){ stage = _arg1; stage.addEventListener(KeyboardEvent.KEY_DOWN, keyPressed); stage.addEventListener(KeyboardEvent.KEY_UP, keyReleased); stage.addEventListener(Event.DEACTIVATE, clearKeys); initialized = true; }; } public static function isDown(_arg1:uint):Boolean{ if (!initialized){ throw (new Error("Key class has yet been initialized.")); }; return (Boolean(keysDown[_arg1])); } private static function keyPressed(_arg1:KeyboardEvent):void{ keysDown[_arg1.keyCode] = true; key_pressed = true; } private static function keyReleased(_arg1:KeyboardEvent):void{ keysDown[_arg1.keyCode] = false; key_pressed = false; } private static function clearKeys(_arg1:Event):void{ keysDown = new Array(); key_pressed = false; } public static function forceClearKeys():void{ keysDown = new Array(); key_pressed = false; } } }//package com.nitrome.game
Section 52
//LevelChooserButton (com.nitrome.game.LevelChooserButton) package com.nitrome.game { import flash.events.*; import flash.text.*; public class LevelChooserButton extends SimpleButton { public var level_num:TextField; private var id:int; private var active:Boolean; public var num:String; public static const up_col:int = 0; public static const over_col:int = 0x666666; public function LevelChooserButton(){ id = int(name.slice(6)); if (NitromeGame.getLevelUnlocked(id)){ active = true; useHandCursor = true; } else { active = false; useHandCursor = false; }; updateGraphic(); } override protected function updateGraphic():void{ var _local1:String; if (active){ if (over){ level_num.textColor = over_col; } else { level_num.textColor = up_col; }; _local1 = String(id); if (id < 10){ _local1 = ("0" + _local1); }; level_num.text = _local1; } else { level_num.text = "??"; }; } override public function onClick(_arg1:MouseEvent):void{ if (active){ NitromeGame.selected_level = id; Score.value = 0; NitromeGame.timeline.tt.doTween("game"); }; updateGraphic(); } } }//package com.nitrome.game
Section 53
//LevelSelectButton (com.nitrome.game.LevelSelectButton) package com.nitrome.game { import flash.events.*; public class LevelSelectButton extends SimpleButton { public function LevelSelectButton(){ addFrameScript(0, frame1); } override public function onClick(_arg1:MouseEvent):void{ NitromeGame.timeline.popup_holder.hidePopUp(); NitromeGame.timeline.game.clearListeners(); NitromeGame.transition.doTween("choose_level"); NitromeGame.sound_manager.crossFade(SoundManager.MENU); } function frame1(){ stop(); } } }//package com.nitrome.game
Section 54
//MiniclipLogo (com.nitrome.game.MiniclipLogo) package com.nitrome.game { import flash.events.*; import flash.net.*; public class MiniclipLogo extends SimpleButton { public function MiniclipLogo(){ addEventListener(MouseEvent.CLICK, onClick, false, 0, true); } override public function onClick(_arg1:MouseEvent):void{ navigateToURL(new URLRequest("http://www.miniclip.com"), "_blank"); } } }//package com.nitrome.game
Section 55
//MsgPanel (com.nitrome.game.MsgPanel) package com.nitrome.game { import flash.display.*; import flash.events.*; import flash.text.*; public class MsgPanel extends MovieClip { public var msg:TextField; public var tt:Transition; public var stagemsg:TextField; public var back:MovieClip; public var count:int; public var state:int; public var step:Number; public static const VISIBLE:int = 1; public static const FADE_IN:int = 2; public static const FADE_OUT:int = 4; public static const HIDDEN:int = 8; public static const VISIBLE_DELAY:int = 50; public static const FADE_DELAY:int = 25; public function MsgPanel(){ addFrameScript(0, frame1); visible = false; alpha = 0; state = HIDDEN; count = 0; step = (1 / FADE_DELAY); } public function setMsg(_arg1:String):void{ msg.text = _arg1; var _local2:String = ("stage " + NitromeGame.selected_level); var _local3:Number = ((1 * NitromeGame.selected_level) / 7); if (_local3 == (_local3 >> 0)){ _local2 = ("boss " + _local3); }; stagemsg.text = _local2; state = FADE_IN; addEventListener(Event.ENTER_FRAME, onEnterFrame, false, 0, true); count = 0; visible = true; } public function onEnterFrame(_arg1:Event):void{ if (state == FADE_IN){ alpha = (alpha + step); if (alpha >= 1){ state = VISIBLE; }; } else { if (state == VISIBLE){ count++; if (count >= VISIBLE_DELAY){ state = FADE_OUT; }; } else { if (state == FADE_OUT){ alpha = (alpha - step); if (alpha <= 0){ state = HIDDEN; removeEventListener(Event.ENTER_FRAME, onEnterFrame); visible = false; }; }; }; }; } function frame1(){ stop(); } } }//package com.nitrome.game
Section 56
//MusicToggle (com.nitrome.game.MusicToggle) package com.nitrome.game { import flash.events.*; public class MusicToggle extends SimpleButton { public function MusicToggle(){ addFrameScript(0, frame1, 9, frame10, 19, frame20, 29, frame30); if (!NitromeGame.music){ gotoAndStop("_off_up"); } else { gotoAndStop("_on_up"); }; addEventListener(MouseEvent.CLICK, onClick); } override protected function updateGraphic():void{ if (over){ if (NitromeGame.sound_manager.music){ gotoAndStop("_on_over"); } else { if (!NitromeGame.sound_manager.music){ gotoAndStop("_off_over"); }; }; } else { if (NitromeGame.sound_manager.music){ gotoAndStop("_on_up"); } else { if (!NitromeGame.sound_manager.music){ gotoAndStop("_off_up"); }; }; }; } override public function onClick(_arg1:MouseEvent):void{ NitromeGame.sound_manager.toggleMusic(); updateGraphic(); } function frame1(){ stop(); } function frame10(){ stop(); } function frame20(){ stop(); } function frame30(){ stop(); } } }//package com.nitrome.game
Section 57
//NextLevelButton (com.nitrome.game.NextLevelButton) package com.nitrome.game { import flash.events.*; public class NextLevelButton extends SimpleButton { public function NextLevelButton(){ addFrameScript(0, frame1); } override public function onClick(_arg1:MouseEvent):void{ if (!NitromeGame.timeline.popup_holder.key_pressed){ doStuff(); }; } function doStuff():void{ NitromeGame.timeline.game.clearListeners(); NitromeGame.selected_level++; NitromeGame.timeline.popup_holder.hidePopUp(); NitromeGame.transition.doTween("game_reset"); } function frame1(){ stop(); } } }//package com.nitrome.game
Section 58
//NitromeButton (com.nitrome.game.NitromeButton) package com.nitrome.game { import flash.events.*; import flash.net.*; public class NitromeButton extends SimpleButton { public function NitromeButton(){ addEventListener(MouseEvent.CLICK, onClick, false, 0, true); } override public function onClick(_arg1:MouseEvent):void{ navigateToURL(new URLRequest("http://www.nitrome.com"), "_blank"); } } }//package com.nitrome.game
Section 59
//PauseButton (com.nitrome.game.PauseButton) package com.nitrome.game { import flash.events.*; public class PauseButton extends SimpleButton { public function PauseButton(){ addFrameScript(0, frame1, 9, frame10); } override public function onClick(_arg1:MouseEvent):void{ NitromeGame.timeline.game.pauseGame(); } function frame1(){ stop(); } function frame10(){ stop(); } } }//package com.nitrome.game
Section 60
//PlayButton (com.nitrome.game.PlayButton) package com.nitrome.game { import flash.events.*; public class PlayButton extends SimpleButton { public function PlayButton(){ addFrameScript(0, frame1); } override public function onClick(_arg1:MouseEvent):void{ NitromeGame.transition.doTween("choose_level"); } function frame1(){ stop(); } } }//package com.nitrome.game
Section 61
//PlayGameButton (com.nitrome.game.PlayGameButton) package com.nitrome.game { import flash.events.*; public class PlayGameButton extends SimpleButton { public function PlayGameButton(){ addFrameScript(0, frame1); } override public function onClick(_arg1:MouseEvent):void{ Score.value = 0; NitromeGame.timeline.tt.doTween("game"); } function frame1(){ stop(); } } }//package com.nitrome.game
Section 62
//PopUpHolder (com.nitrome.game.PopUpHolder) package com.nitrome.game { import flash.display.*; import flash.events.*; import flash.ui.*; public class PopUpHolder extends MovieClip { public var popup_clip:MovieClip; private var popup_id:String; private var action_performed:Boolean; public var key_pressed:Boolean; public function PopUpHolder(){ addFrameScript(0, frame1, 1, frame2, 9, frame10); } public function launchPopUp(_arg1:String):void{ popup_id = _arg1; key_pressed = false; action_performed = false; addEventListener(Event.ENTER_FRAME, onEnterFrame, false, 0, true); gotoAndPlay(2); } public function hidePopUp():void{ action_performed = true; key_pressed = true; removeEventListener(Event.ENTER_FRAME, onEnterFrame); gotoAndPlay("out"); } public function onEnterFrame(_arg1:Event):void{ if ((((((((currentFrame == NitromeGame.POPUP_HOLDER_FRAME)) && (Key.isDown(Keyboard.SPACE)))) && (!(key_pressed)))) && (!(action_performed)))){ key_pressed = true; if (popup_id == "level_complete"){ popup_clip.next_level_button.doStuff(); } else { if (popup_id == "game_over"){ popup_clip.try_again_button.doStuff(); } else { if (popup_id == "final_level_complete"){ popup_clip.continue_end_button.doStuff(); }; }; }; action_performed = true; }; if ((((currentFrame == NitromeGame.POPUP_HOLDER_FRAME)) && (!(Key.isDown(Keyboard.SPACE))))){ key_pressed = false; }; } function frame1(){ popup_clip.gotoAndStop("wait"); stop(); } function frame2(){ popup_clip.gotoAndStop(popup_id); } function frame10(){ stop(); } } }//package com.nitrome.game
Section 63
//QuitGameButton (com.nitrome.game.QuitGameButton) package com.nitrome.game { import flash.events.*; public class QuitGameButton extends SimpleButton { public function QuitGameButton(){ addFrameScript(0, frame1); } override public function onClick(_arg1:MouseEvent):void{ NitromeGame.timeline.game.clearListeners(); NitromeGame.timeline.popup_holder.hidePopUp(); NitromeGame.transition.doTween("choose_level"); NitromeGame.sound_manager.crossFade(SoundManager.MENU); } function frame1(){ stop(); } } }//package com.nitrome.game
Section 64
//Score (com.nitrome.game.Score) package com.nitrome.game { public class Score { private static var _value:int; private static var r:int; private static var hash:String; public static function init():void{ r = (int((Math.random() * 2000000)) - 1000000); _value = r; hash = _value.toString(16); } public static function set value(_arg1:int):void{ var _local2:Boolean = verify(); r = (int((Math.random() * 2000000)) - 1000000); _value = (r + _arg1); if (_local2){ hash = _value.toString(16); }; } public static function get value():int{ return ((_value - r)); } public static function verify():Boolean{ return ((_value.toString(16) == hash)); } } }//package com.nitrome.game
Section 65
//ScoreTicker (com.nitrome.game.ScoreTicker) package com.nitrome.game { import flash.display.*; import flash.events.*; import flash.text.*; public class ScoreTicker extends MovieClip { public var score_text:TextField; private var count_interval:int; private var total:int; private var inc:int; private var val:int; private var next_clip:String; private var next_total:int; private var next_inc:int; private function onFinish():void{ if (next_clip != null){ parent[next_clip].startCount(next_total, next_inc); }; } public function setOnFinish(_arg1:String, _arg2:int, _arg3:int):void{ next_clip = _arg1; next_total = _arg2; next_inc = _arg3; } public function startCount(_arg1:int, _arg2:int):void{ total = _arg1; this.inc = _arg2; val = 0; addEventListener(Event.ENTER_FRAME, doCount, false, 0, true); } private function doCount(_arg1:Event):void{ val = (val + inc); if (val >= total){ val = total; displayScore(); removeEventListener(Event.ENTER_FRAME, doCount); onFinish(); } else { displayScore(); }; } private function displayScore():void{ score_text.text = String(val); } } }//package com.nitrome.game
Section 66
//SimpleButton (com.nitrome.game.SimpleButton) package com.nitrome.game { import flash.display.*; import flash.events.*; public class SimpleButton extends MovieClip { protected var over:Boolean;// = false public var i:int; public function SimpleButton(){ mouseChildren = false; buttonMode = true; addEventListener(MouseEvent.MOUSE_OVER, onMouseOver, false, 0, true); addEventListener(MouseEvent.MOUSE_OUT, onMouseOut, false, 0, true); addEventListener(MouseEvent.CLICK, onClick, false, 0, true); } protected function updateGraphic():void{ if (over){ gotoAndStop("_over"); } else { gotoAndStop("_up"); }; } protected function onMouseOver(_arg1:MouseEvent):void{ over = true; updateGraphic(); } protected function onMouseOut(_arg1:MouseEvent):void{ over = false; updateGraphic(); } public function onClick(_arg1:MouseEvent):void{ } } }//package com.nitrome.game
Section 67
//SoundManager (com.nitrome.game.SoundManager) package com.nitrome.game { import flash.display.*; import flash.media.*; public class SoundManager extends SoundManagerSuper { protected const BEAM_VOLUME:Number = 0.6; protected const MENU_VOLUME:Number = 0.6; protected const GAME_VOLUME:Number = 0.6; public var cake1:MovieClip; public var boss_alarm:MovieClip; public var cake2:MovieClip; public var cake3:MovieClip; public var big_shot:MovieClip; public var ow:MovieClip; public var death:MovieClip; public var laser_start:MovieClip; public var small_shot:MovieClip; public var napalm:MovieClip; public var medium_bang:MovieClip; public var homing_shot:MovieClip; public var cash:MovieClip; public var small_bang:MovieClip; public var player_shot:MovieClip; public var magnet:MovieClip; public var level_complete:MovieClip; public var big_bang:MovieClip; public var laser_switch:MovieClip; public var shield:MovieClip; public var burp:MovieClip; public static const MENU:int = 0; public static const GAME:int = 1; public static const BEAM:int = 0; public function SoundManager(){ NitromeGame.sound_manager = this; music_loops.push(new MenuMusic()); music_loops.push(new GameMusic()); music_transforms.push(new SoundTransform(MENU_VOLUME, 0)); music_transforms.push(new SoundTransform(GAME_VOLUME, 0)); music_channels.push(new SoundChannel()); music_channels.push(new SoundChannel()); music_volumes.push(MENU_VOLUME); music_volumes.push(GAME_VOLUME); music_type = uint.MAX_VALUE; sound_loops.push(new BeamSound()); sound_transforms.push(new SoundTransform(MENU_VOLUME, 0)); sound_channels.push(new SoundChannel()); sound_volumes.push(BEAM_VOLUME); sound_loop_playing.push(false); sound_loop_fade_direction.push(0); } } }//package com.nitrome.game
Section 68
//SoundManagerSuper (com.nitrome.game.SoundManagerSuper) package com.nitrome.game { import flash.display.*; import flash.events.*; public class SoundManagerSuper extends MovieClip { protected const CROSS_FADE_SPEED:Number = 0.05; protected const LOOP_FADE_SPEED:Number = 0.1; protected var sound_clips:Array; protected var sound_loops:Array; protected var sound_loop_playing:Array; protected var sound_channels:Array; protected var sound_transforms:Array; protected var sound_volumes:Array; protected var sound_loop_fade_direction; protected var music_loops:Array; protected var music_channels:Array; protected var music_transforms:Array; protected var music_volumes:Array; protected var fade_from:int; protected var _music:Boolean;// = true protected var _sfx:Boolean;// = true public var fading_music:Boolean;// = false public var fading_sound:Boolean;// = false public var music_type:int; public static const NO_MUSIC:int = -1; public function SoundManagerSuper(){ var _local2:MovieClip; sound_clips = new Array(); sound_loops = new Array(); sound_loop_playing = new Array(); sound_channels = new Array(); sound_transforms = new Array(); sound_volumes = new Array(); sound_loop_fade_direction = new Array(); music_loops = new Array(); music_channels = new Array(); music_transforms = new Array(); music_volumes = new Array(); super(); _music = NitromeGame.music; _sfx = NitromeGame.sfx; var _local1:int; while (_local1 < numChildren) { _local2 = (getChildAt(_local1) as MovieClip); if (_local2 != null){ sound_clips[_local2.name] = _local2; }; _local1++; }; } public function get music():Boolean{ return (_music); } public function set music(_arg1:Boolean):void{ _music = _arg1; } public function get sfx():Boolean{ return (_sfx); } public function set sfx(_arg1:Boolean):void{ _sfx = _arg1; } public function playSound(_arg1:String):void{ if (_sfx){ if (sound_clips[_arg1] != null){ sound_clips[_arg1].gotoAndPlay(2); }; }; } public function playLoop(_arg1:uint):void{ if (_sfx){ if (((!((sound_loops[_arg1] == null))) && (!(sound_loop_playing[_arg1])))){ sound_transforms[_arg1].volume = sound_volumes[_arg1]; sound_channels[_arg1] = sound_loops[_arg1].play(0, int.MAX_VALUE, sound_transforms[_arg1]); }; }; } public function stopLoop(_arg1:uint):void{ if (sound_loops[_arg1] != null){ sound_channels[_arg1].stop(); sound_loop_playing[_arg1] = false; }; } public function playMusic(_arg1:uint, _arg2:Boolean=false):void{ var _local3:uint; if (((_arg2) && ((music_type == NO_MUSIC)))){ return; }; if (((!((music_type == _arg1))) || (_arg2))){ if (_music){ _local3 = 0; while (_local3 < music_loops.length) { if (_local3 == _arg1){ } else { if (music_channels[_local3] != null){ music_channels[_local3].stop(); }; }; _local3++; }; music_transforms[_arg1].volume = music_volumes[_arg1]; music_channels[_arg1] = music_loops[_arg1].play(0, int.MAX_VALUE, music_transforms[_arg1]); }; music_type = _arg1; }; } public function stopMusic():void{ var _local1:uint; while (_local1 < music_channels.length) { if (music_channels[_local1] != null){ music_channels[_local1].stop(); }; _local1++; }; } public function stopLoops():void{ var _local1:int; while (_local1 < sound_loops.length) { if (sound_loops[_local1] != null){ sound_channels[_local1].stop(); }; _local1++; }; } public function startLoops():void{ var _local1:int; while (_local1 < sound_loops.length) { if (((!((sound_loops[_local1] == null))) && (sound_loop_playing[_local1]))){ sound_channels[_local1] = sound_loops[_local1].play(0, int.MAX_VALUE, sound_transforms[_local1]); }; _local1++; }; } public function killLoops():void{ var _local1:int; while (_local1 < sound_loops.length) { stopLoop(_local1); _local1++; }; } public function toggleMusic():void{ if (_music){ turnOffMusic(); } else { turnOnMusic(); }; } public function turnOnMusic():void{ NitromeGame.music = (_music = true); if (music_type != NO_MUSIC){ playMusic(music_type, true); }; } public function turnOffMusic():void{ var _local1:uint; while (_local1 < music_channels.length) { if (music_channels[_local1] != null){ music_channels[_local1].stop(); }; _local1++; }; NitromeGame.music = (_music = false); } public function toggleSfx():void{ if (_sfx){ turnOffSfx(); } else { turnOnSfx(); }; } public function turnOffSfx():void{ NitromeGame.sfx = (_sfx = false); stopLoops(); } public function turnOnSfx():void{ NitromeGame.sfx = (_sfx = true); startLoops(); } public function crossFade(_arg1:int):void{ if (((((!(_music)) || (fading_music))) || ((music_type == _arg1)))){ return; }; fade_from = music_type; music_type = _arg1; music_transforms[_arg1].volume = 0; music_channels[_arg1] = music_loops[_arg1].play(0, int.MAX_VALUE, music_transforms[_arg1]); fading_music = true; addEventListener(Event.ENTER_FRAME, crossFadeAction); } public function playMusicFadeIn(_arg1:int):void{ if (((((!(_music)) || (fading_music))) || ((music_type == _arg1)))){ return; }; music_type = _arg1; music_transforms[_arg1].volume = 0; fading_music = true; music_channels[_arg1] = music_loops[_arg1].play(0, int.MAX_VALUE, music_transforms[_arg1]); addEventListener(Event.ENTER_FRAME, fadeInAction); } public function stopMusicFadeOut():void{ if (((!(_music)) || (fading_music))){ return; }; music_transforms[music_type].volume = music_volumes[music_type]; fading_music = true; addEventListener(Event.ENTER_FRAME, fadeOutAction); } public function playLoopFadeIn(_arg1:int):void{ if ((((sound_loop_fade_direction[_arg1] == 1)) || (!(_sfx)))){ return; }; if (!sound_loop_playing[_arg1]){ sound_transforms[_arg1].volume = 0; sound_loop_playing[_arg1] = true; sound_channels[_arg1] = sound_loops[_arg1].play(0, int.MAX_VALUE, sound_transforms[_arg1]); }; sound_loop_fade_direction[_arg1] = 1; if (!fading_sound){ addEventListener(Event.ENTER_FRAME, fadeSound); fading_sound = true; }; } public function stopLoopFadeOut(_arg1:int):void{ if (((((!(_sfx)) || (!(sound_loop_playing[_arg1])))) || ((sound_loop_fade_direction[_arg1] == -1)))){ return; }; sound_loop_fade_direction[_arg1] = -1; if (!fading_sound){ addEventListener(Event.ENTER_FRAME, fadeSound); fading_sound = true; }; } private function fadeSound(_arg1:Event):void{ var _local2:Boolean; var _local3:int; while (_local3 < sound_loops.length) { if (sound_loop_fade_direction[_local3] != 0){ _local2 = false; if (sound_loop_fade_direction[_local3] > 0){ if (sound_transforms[_local3].volume < sound_volumes[_local3]){ sound_transforms[_local3].volume = (sound_transforms[_local3].volume + LOOP_FADE_SPEED); sound_channels[_local3].soundTransform = sound_transforms[_local3]; } else { if (sound_transforms[_local3].volume >= sound_volumes[_local3]){ sound_transforms[_local3].volume = sound_volumes[_local3]; sound_channels[_local3].soundTransform = sound_transforms[_local3]; sound_loop_fade_direction[_local3] = 0; }; }; } else { if (sound_loop_fade_direction[_local3] < 0){ if (sound_transforms[_local3].volume > 0){ sound_transforms[_local3].volume = (sound_transforms[_local3].volume - LOOP_FADE_SPEED); sound_channels[_local3].soundTransform = sound_transforms[_local3]; } else { if (sound_transforms[_local3].volume <= 0){ sound_loop_fade_direction[_local3] = 0; sound_channels[_local3].stop(); sound_loop_playing[_local3] = false; }; }; }; }; }; _local3++; }; if (_local2){ _arg1.target.removeEventListener(Event.ENTER_FRAME, fadeSound); fading_sound = false; }; } private function crossFadeAction(_arg1:Event):void{ if (music_transforms[fade_from].volume > 0){ music_transforms[fade_from].volume = (music_transforms[fade_from].volume - CROSS_FADE_SPEED); music_channels[fade_from].soundTransform = music_transforms[fade_from]; }; if (music_transforms[music_type].volume < music_volumes[music_type]){ music_transforms[music_type].volume = (music_transforms[music_type].volume + CROSS_FADE_SPEED); music_channels[music_type].soundTransform = music_transforms[music_type]; }; if ((((music_transforms[music_type].volume >= music_volumes[music_type])) && ((music_transforms[fade_from].volume <= 0)))){ music_channels[fade_from].stop(); fading_music = false; _arg1.target.removeEventListener(Event.ENTER_FRAME, crossFadeAction); }; } private function fadeInAction(_arg1:Event):void{ if (music_transforms[music_type].volume < music_volumes[music_type]){ music_transforms[music_type].volume = (music_transforms[music_type].volume + CROSS_FADE_SPEED); music_channels[music_type].soundTransform = music_transforms[music_type]; }; if (music_transforms[music_type].volume >= music_volumes[music_type]){ fading_music = false; _arg1.target.removeEventListener(Event.ENTER_FRAME, fadeInAction); }; } private function fadeOutAction(_arg1:Event):void{ if (music_transforms[music_type].volume > 0){ music_transforms[music_type].volume = (music_transforms[music_type].volume - CROSS_FADE_SPEED); music_channels[music_type].soundTransform = music_transforms[music_type]; }; if (music_transforms[music_type].volume <= 0){ fading_music = false; music_channels[music_type].stop(); music_type = NO_MUSIC; _arg1.target.removeEventListener(Event.ENTER_FRAME, fadeOutAction); }; } } }//package com.nitrome.game
Section 69
//SubmitScoreButton (com.nitrome.game.SubmitScoreButton) package com.nitrome.game { import flash.events.*; public class SubmitScoreButton extends SimpleButton { public function SubmitScoreButton(){ addFrameScript(0, frame1); if (Score.value > NitromeGame.getLastSavedScore()){ visible = true; } else { visible = false; }; } override public function onClick(_arg1:MouseEvent):void{ NitromeGame.timeline.game.clearListeners(); NitromeGame.setLastSavedScore(Score.value); NitromeGame.timeline.popup_holder.hidePopUp(); NitromeGame.transition.doTween("submit_score"); NitromeGame.sound_manager.playMusic(SoundManager.MENU, false); } function frame1(){ stop(); } } }//package com.nitrome.game
Section 70
//Transition (com.nitrome.game.Transition) package com.nitrome.game { import com.nitrome.engine.*; import flash.display.*; import flash.events.*; import flash.geom.*; public class Transition extends MovieClip { public var line:Line; public var bitmaps:Array; public var bitmapdatas:Array; public var xs:Array; public var ys:Array; public var xv:Array; public var yv:Array; public var matrix:Matrix; public var rect:Rectangle; public var bitmapdata:BitmapData; public var count:int; public var step:Number; public var state:int; public var next_frame:String; public var tweening:Boolean; public var shake_array:Array; public var shake_count:int; public var angle:int;// = 0 public var speed:int;// = 5 public static const TWEEN_DELAY:int = 15; public static const NUM_CLIPS:int = 121; public static const DAMPING:Number = 0.99; public static const GRAVITY_Y:Number = 2; public static const spiral:Array = [[315, 320, 325, 330, 335, 340, 345, 350, 355, 0, 45], [270, 315, 321, 327, 333, 339, 345, 351, 357, 45, 50], [265, 270, 315, 324, 333, 342, 351, 0, 45, 51, 55], [260, 261, 270, 315, 330, 345, 0, 45, 54, 57, 60], [0xFF, 0xFF, 261, 270, 315, 0, 45, 60, 63, 63, 65], [250, 249, 252, 0xFF, 270, 0, 90, 75, 72, 69, 70], [245, 243, 243, 240, 225, 180, 135, 90, 81, 75, 75], [240, 237, 234, 225, 180, 165, 150, 135, 90, 81, 80], [235, 231, 225, 180, 171, 162, 153, 144, 135, 90, 85], [230, 225, 180, 171, 165, 159, 153, 147, 141, 135, 90], [225, 180, 175, 170, 165, 160, 155, 150, 145, 140, 135]]; public function Transition(){ shake_array = new Array(0, 6, -6, 4, -4, 2, -2, 1, -1); super(); bitmaps = new Array(NUM_CLIPS); bitmapdatas = new Array(NUM_CLIPS); xs = new Array(NUM_CLIPS); ys = new Array(NUM_CLIPS); xv = new Array(NUM_CLIPS); yv = new Array(NUM_CLIPS); matrix = new Matrix(); rect = new Rectangle(0, 0, 50, 50); count = 0; shake_count = 0; tweening = false; next_frame = ""; } public function doTween(_arg1:String, _arg2:int=0):void{ if (!tweening){ beginTransition(_arg1); } else { next_frame = _arg1; }; } public function beginTransition(_arg1:String):void{ var _local4:int; var _local5:Number; tweening = true; var _local2 = 11; var _local3 = 11; _local4 = 0; while (_local4 < bitmaps.length) { bitmapdatas[_local4] = new BitmapData(50, 50, true, 0xFFFFFF); bitmaps[_local4] = new Bitmap(bitmapdatas[_local4]); bitmaps[_local4].visible = false; addChild(bitmaps[_local4]); _local4++; }; _local4 = 0; while (_local4 < bitmaps.length) { matrix.tx = ((_local4 % _local2) * -50); matrix.ty = (((_local4 / _local2) >> 0) * -50); xs[_local4] = (bitmaps[_local4].x = (-275 + ((_local4 % _local2) * 50))); ys[_local4] = (bitmaps[_local4].y = (-275 + (((_local4 / _local2) >> 0) * 50))); bitmapdatas[_local4].draw(NitromeGame.timeline, matrix); bitmaps[_local4].visible = true; angle = spiral[((_local4 / _local2) >> 0)][(_local4 % _local2)]; _local5 = (1 + Math.sqrt((((xs[_local4] + 25) * (xs[_local4] + 25)) + ((ys[_local4] + 25) * (ys[_local4] + 25))))); speed = (_local5 / 5); if (speed == 0){ speed = 8; }; xv[_local4] = (Trig.cos[angle] * speed); yv[_local4] = (Trig.sin[angle] * speed); _local4++; }; (parent as MovieClip).gotoAndStop(_arg1); count = 0; shake_count = 1; addEventListener(Event.ENTER_FRAME, onEnterFrame, false, 0, true); } private function onEnterFrame(_arg1:Event):void{ var _local3:int; var _local2:Boolean; _local3 = 0; while (_local3 < bitmaps.length) { if (xs[_local3] != null){ _local2 = false; xs[_local3] = (xs[_local3] + xv[_local3]); ys[_local3] = (ys[_local3] + yv[_local3]); bitmaps[_local3].x = (xs[_local3] >> 0); bitmaps[_local3].y = (ys[_local3] >> 0); if ((((((((xs[_local3] > 275)) || ((xs[_local3] < -400)))) || ((ys[_local3] > 275)))) || ((ys[_local3] < -400)))){ xs[_local3] = null; }; }; _local3++; }; if (_local2){ _local3 = 0; while (_local3 < bitmaps.length) { bitmaps[_local3].visible = false; bitmapdatas[_local3].dispose(); removeChild(bitmaps[_local3]); bitmapdatas[_local3] = null; bitmaps[_local3] = null; _local3++; }; removeEventListener(Event.ENTER_FRAME, onEnterFrame); tweening = false; if (next_frame != ""){ beginTransition(next_frame); next_frame = ""; }; }; } } }//package com.nitrome.game
Section 71
//TryAgainButton (com.nitrome.game.TryAgainButton) package com.nitrome.game { import flash.events.*; public class TryAgainButton extends SimpleButton { public function TryAgainButton(){ addFrameScript(0, frame1); } override public function onClick(_arg1:MouseEvent):void{ if (!NitromeGame.timeline.popup_holder.key_pressed){ doStuff(); }; } function doStuff():void{ NitromeGame.timeline.game.clearListeners(); Score.value = 0; NitromeGame.level_score = 0; NitromeGame.timeline.popup_holder.hidePopUp(); NitromeGame.transition.doTween("game_reset"); } function frame1(){ stop(); } } }//package com.nitrome.game
Section 72
//ViewScoresButton (com.nitrome.game.ViewScoresButton) package com.nitrome.game { import flash.events.*; public class ViewScoresButton extends SimpleButton { public function ViewScoresButton(){ addFrameScript(0, frame1); } override public function onClick(_arg1:MouseEvent):void{ NitromeGame.transition.doTween("view_scores"); } function frame1(){ stop(); } } }//package com.nitrome.game
Section 73
//ArrowButton (com.nitrome.highscore.ArrowButton) package com.nitrome.highscore { import flash.events.*; import com.nitrome.game.*; public class ArrowButton extends SimpleButton { var high_score_board:HighScoreBoard; public function ArrowButton(){ high_score_board = (parent as HighScoreBoard); visible = false; } public function hide():void{ visible = false; } public function show():void{ visible = true; } override public function onClick(_arg1:MouseEvent):void{ if (name == "_prev_arrow"){ high_score_board.shiftScoresPrev(); } else { if (name == "_next_arrow"){ high_score_board.shiftScoresNext(); }; }; } } }//package com.nitrome.highscore
Section 74
//ClearButton (com.nitrome.highscore.ClearButton) package com.nitrome.highscore { import flash.events.*; import com.nitrome.game.*; public class ClearButton extends SimpleButton { private var score_submit_panel:ScoreSubmitPanel; public function ClearButton(){ score_submit_panel = (parent as ScoreSubmitPanel); } override public function onClick(_arg1:MouseEvent):void{ score_submit_panel.clearName(); } } }//package com.nitrome.highscore
Section 75
//HighScoreBoard (com.nitrome.highscore.HighScoreBoard) package com.nitrome.highscore { import flash.display.*; import flash.events.*; import flash.net.*; public class HighScoreBoard extends MovieClip { public const MAX_DIGITS:int = 8; public const NUM_LINES:int = 10; private const MAX_RANK:int = 100; public var _score_line_3:ScoreLine; public var _score_line_2:ScoreLine; public var _score_line_1:ScoreLine; public var _prev_arrow:PrevArrow; public var _score_line_7:ScoreLine; public var _score_line_6:ScoreLine; public var _score_line_5:ScoreLine; public var loading_text:MovieClip; public var _score_line_4:ScoreLine; public var _next_arrow:NextArrow; public var _score_line_9:ScoreLine; public var _score_line_8:ScoreLine; public var _score_line_10:ScoreLine; private var _zero_fill:Boolean;// = false private var saved_min_rank:int; private var score_lines:Array; private var prev_arrow:ArrowButton; private var next_arrow:ArrowButton; private var scores_loader:URLLoader; private var scores_vars:URLVariables; private var scores_request:URLRequest; private var loaded:Boolean; public function HighScoreBoard(){ var _local1:int; super(); score_lines = new Array(NUM_LINES); if (NitromeGame.isAtURL(NitromeGame.NITROME)){ _local1 = 0; while (_local1 < score_lines.length) { score_lines[_local1] = (getChildByName(("_score_line_" + (_local1 + 1))) as HighScoreLine); _local1++; }; prev_arrow = (getChildByName("_prev_arrow") as ArrowButton); next_arrow = (getChildByName("_next_arrow") as ArrowButton); loaded = false; addEventListener(Event.ADDED_TO_STAGE, init, false, 0, true); addEventListener(Event.ENTER_FRAME, loadText, false, 0, true); } else { gotoAndStop("hide"); }; } public function get zero_fill():Boolean{ return (_zero_fill); } public function set zero_fill(_arg1:Boolean):void{ _zero_fill = _arg1; } public function loadHighScores(_arg1:int):void{ saved_min_rank = _arg1; scores_loader = new URLLoader(); scores_vars = new URLVariables(); scores_request = new URLRequest(NitromeGame.RETRIEVE_URL); scores_request.method = URLRequestMethod.POST; scores_request.data = scores_vars; scores_loader.dataFormat = URLLoaderDataFormat.VARIABLES; scores_loader.addEventListener(Event.COMPLETE, retrieveSuccessful); scores_loader.addEventListener(IOErrorEvent.IO_ERROR, retrieveFailed); scores_vars.min_rank = String(_arg1); scores_vars.game_name = NitromeGame.game_id; scores_vars.time_based = (NitromeGame.time_based) ? "1" : "0"; scores_loader.load(scores_request); } public function displayHighScores(_arg1:String):void{ var _local2:int; var _local3:Object; if (_arg1 != "0"){ _local2 = 0; while (_local2 < score_lines.length) { _local3 = NitromeGame.getHighScoreLine(_arg1, (_local2 + 1)); if (_local3 == null){ score_lines[_local2].hide(); } else { score_lines[_local2].displayData((saved_min_rank + _local2), _local3.username, _local3.score); }; _local2++; }; if (NitromeGame.displayNextButton(_arg1)){ next_arrow.show(); } else { next_arrow.hide(); }; if (NitromeGame.displayPreviousButton(_arg1)){ prev_arrow.show(); } else { prev_arrow.hide(); }; }; } public function shiftScoresPrev():void{ var _local1:int = (saved_min_rank - 10); if (_local1 < 1){ _local1 = 1; }; loadHighScores(_local1); } public function shiftScoresNext():void{ var _local1:int = (saved_min_rank + 10); loadHighScores(_local1); } public function displayHighScoresMTV(_arg1:Array):void{ var _local2:int; var _local3:String; var _local4:String; if (_arg1.length > 0){ _local2 = 0; while (_local2 <= 9) { _local3 = String(_arg1[_local2].user_name); _local4 = String(_arg1[_local2].score); if ((((_local3 == "")) || ((_local3 == null)))){ score_lines[_local2].hide(); next_arrow.hide(); } else { score_lines[_local2].displayData((saved_min_rank + _local2), _local3, _local4); }; _local2++; }; } else { trace("no leaderboard data"); }; } private function init(_arg1:Event):void{ loadHighScores(1); _arg1.target.removeEventListener(Event.ADDED_TO_STAGE, init); } private function loadText(_arg1:Event):void{ if (((loaded) && ((loading_text.alpha > 0)))){ loading_text.alpha = (loading_text.alpha - 0.1); } else { if (((loaded) && ((loading_text.alpha <= 0)))){ _arg1.target.removeEventListener(Event.ENTER_FRAME, loadText); }; }; } private function retrieveSuccessful(_arg1:Event):void{ var _local2:String = _arg1.target.data.result; displayHighScores(_local2); loaded = true; } private function retrieveFailed(_arg1:IOErrorEvent):void{ trace(("Retrieve scores failed: " + _arg1.text)); } } }//package com.nitrome.highscore
Section 76
//HighScoreLine (com.nitrome.highscore.HighScoreLine) package com.nitrome.highscore { import flash.display.*; import flash.events.*; import flash.text.*; public class HighScoreLine extends Sprite { private const FADE_SPEED:Number = 0.3; public var _rank_text:TextField; public var _name_text:TextField; public var _score_text:TextField; private var score_text:TextField; private var name_text:TextField; private var rank_text:TextField; private var high_score_board:HighScoreBoard; private var hidden:Boolean; private var fade_delay:int; private var fade_count:int; public function HighScoreLine(){ visible = false; hidden = false; score_text = (getChildByName("_score_text") as TextField); name_text = (getChildByName("_name_text") as TextField); rank_text = (getChildByName("_rank_text") as TextField); high_score_board = (parent as HighScoreBoard); } public function displayData(_arg1:int, _arg2:String, _arg3:String):void{ var _local4:int; var _local5:int; var _local6:int; var _local7:int; trace((name + " displayData:")); rank_text.text = String((_arg1 + ".")); name_text.text = _arg2.toUpperCase(); trace(((((_arg1 + ",") + _arg2) + ",") + _arg3)); if (high_score_board.zero_fill){ _local4 = high_score_board.MAX_DIGITS; _local5 = _arg3.length; _local6 = (_local4 - _local5); _local7 = 1; while (_local7 <= _local6) { _arg3 = ("0" + _arg3); _local7++; }; score_text.text = _arg3; } else { score_text.text = _arg3; }; alpha = 0; visible = true; fade_delay = (((_arg1 - 1) % high_score_board.NUM_LINES) * int((1 / FADE_SPEED))); fade_count = 0; addEventListener(Event.ENTER_FRAME, performFade); } public function hide():void{ trace((name + " hide")); visible = false; hidden = true; } private function performFade(_arg1:Event):void{ if (fade_count >= fade_delay){ alpha = (alpha + FADE_SPEED); if (alpha >= 1){ _arg1.target.removeEventListener(Event.ENTER_FRAME, performFade); }; }; fade_count++; } } }//package com.nitrome.highscore
Section 77
//LetterButton (com.nitrome.highscore.LetterButton) package com.nitrome.highscore { import flash.events.*; import flash.text.*; import com.nitrome.game.*; public class LetterButton extends SimpleButton { public var _letter:TextField; private var score_submit_panel:ScoreSubmitPanel; private var letter:TextField; private var letter_text:String; public static const up_col:int = 0; public static const over_col:int = 0x666666; public function LetterButton(){ score_submit_panel = (parent as ScoreSubmitPanel); letter_text = name; letter = (getChildByName("_letter") as TextField); addEventListener(Event.ADDED_TO_STAGE, init); } override protected function updateGraphic():void{ if (over){ letter.textColor = over_col; } else { letter.textColor = up_col; }; } private function init(_arg1:Event):void{ letter.text = letter_text; _arg1.target.removeEventListener(Event.ADDED_TO_STAGE, init); } override public function onClick(_arg1:MouseEvent):void{ score_submit_panel.addLetter(letter_text); } } }//package com.nitrome.highscore
Section 78
//ScoreSubmitPanel (com.nitrome.highscore.ScoreSubmitPanel) package com.nitrome.highscore { import flash.display.*; import flash.events.*; import flash.text.*; import com.nitrome.game.*; import flash.ui.*; import flash.net.*; public class ScoreSubmitPanel extends MovieClip { private const MAX_LENGTH:Number = 10; public var D:LetterButton; public var U:LetterButton; public var E:LetterButton; public var V:LetterButton; public var F:LetterButton; public var W:LetterButton; public var X:LetterButton; public var G:LetterButton; public var H:LetterButton; public var Y:LetterButton; public var loading_black:MovieClip; public var I:LetterButton; public var Z:LetterButton; public var _submit_button:SubmitButton; public var J:LetterButton; public var _clear_button:ClearButton; public var K:LetterButton; public var L:LetterButton; public var M:LetterButton; public var N:LetterButton; public var O:LetterButton; public var P:LetterButton; public var Q:LetterButton; public var _name_text:TextField; public var A:LetterButton; public var R:LetterButton; public var _score_text:TextField; public var B:LetterButton; public var S:LetterButton; public var C:LetterButton; public var T:LetterButton; private var name_text:TextField; private var score_text:TextField; private var submit_button:SubmitButton; private var loading_clip:MovieClip; private var submit_loader:URLLoader; private var submit_vars:URLVariables; private var submit_request:URLRequest; private var submitted:Boolean; public function ScoreSubmitPanel(){ if (NitromeGame.isAtURL(NitromeGame.NITROME)){ submit_button = (getChildByName("_submit_button") as SubmitButton); name_text = (getChildByName("_name_text") as TextField); score_text = (getChildByName("_score_text") as TextField); submitted = false; addEventListener(Event.ADDED_TO_STAGE, init); } else { gotoAndStop("hide"); }; } public function addLetter(_arg1:String):void{ var _local3:String; var _local2:String = name_text.text; if (_local2.length < MAX_LENGTH){ _arg1 = _arg1.toUpperCase(); _local3 = (_local2 + _arg1); name_text.text = _local3; submit_button.enable(); }; } public function clearName():void{ submit_button.disable(); name_text.text = ""; } public function submitScore():void{ stage.removeEventListener(KeyboardEvent.KEY_DOWN, keyPressed); var _local1:String = name_text.text; if (_local1 != ""){ submit_loader = new URLLoader(); submit_vars = new URLVariables(); submit_request = new URLRequest(NitromeGame.SUBMIT_URL); submit_request.method = URLRequestMethod.POST; submit_request.data = submit_vars; submit_loader.addEventListener(Event.COMPLETE, submitSuccessful); submit_loader.addEventListener(IOErrorEvent.IO_ERROR, submitFailed); submit_vars.data_string = NitromeGame.getScoreData(Score.value, _local1); submit_vars.time_based = "0"; submit_request.data = submit_vars; submit_loader.load(submit_request); } else { loading_black.gotoAndPlay(2); }; } private function init(_arg1:Event):void{ score_text.text = ("YOUR SCORE IS " + Score.value); trace(score_text.text); stage.addEventListener(KeyboardEvent.KEY_DOWN, keyPressed); _arg1.target.removeEventListener(Event.ADDED_TO_STAGE, init); } private function keyPressed(_arg1:KeyboardEvent):void{ var _local2:int = _arg1.charCode; if ((((((_local2 >= 65)) && ((_local2 <= 90)))) || ((((_local2 >= 97)) && ((_local2 <= 122)))))){ addLetter(String.fromCharCode(_local2)); }; if ((((_arg1.keyCode == Keyboard.BACKSPACE)) || ((_arg1.keyCode == Keyboard.DELETE)))){ clearName(); }; } private function submitSuccessful(_arg1:Event):void{ trace("Score submitted"); loading_black.gotoAndPlay(2); } private function submitFailed(_arg1:IOErrorEvent):void{ trace(("Submit score failed: " + _arg1.text)); trace(); loading_black.gotoAndPlay(2); } } }//package com.nitrome.highscore
Section 79
//SubmitButton (com.nitrome.highscore.SubmitButton) package com.nitrome.highscore { import flash.events.*; import com.nitrome.game.*; public class SubmitButton extends SimpleButton { private var pressed:Boolean;// = false private var disabled:Boolean;// = true private var score_submit_panel:ScoreSubmitPanel; public function SubmitButton(){ gotoAndStop("_up"); score_submit_panel = (parent as ScoreSubmitPanel); } override protected function updateGraphic():void{ if (((!(over)) || (disabled))){ gotoAndStop("_up"); } else { gotoAndStop("_over"); }; } public function enable():void{ disabled = false; useHandCursor = true; buttonMode = true; updateGraphic(); } public function disable():void{ disabled = true; useHandCursor = false; buttonMode = false; updateGraphic(); } override public function onClick(_arg1:MouseEvent):void{ if (disabled){ gotoAndStop("_up"); } else { if (!pressed){ score_submit_panel.submitScore(); pressed = true; }; }; } } }//package com.nitrome.highscore
Section 80
//Lock (com.nitrome.util.Lock) package com.nitrome.util { import flash.display.*; import flash.net.*; public class Lock extends MovieClip { private static var _url:String; public function Lock(){ addFrameScript(1, frame2); } function frame2(){ stop(); } public static function to(_arg1:Array, _arg2:Stage, _arg3:String):void{ _url = _arg2.loaderInfo.url; if (isGood(_arg1) == true){ } else { _arg2.addChild(new (Lock)); trace("LOCKED"); navigateToURL(new URLRequest(("http://www.nitrome.com/games/" + _arg3))); }; } private static function isGood(_arg1:Array):Boolean{ var _local4:String; var _local5:Array; var _local6:Array; var _local7:Array; var _local8:int; var _local2:String = _url.split("://")[1]; var _local3:int; while (_local3 < _arg1.length) { _local4 = _arg1[_local3]; if (_local4.indexOf("/") != -1){ _local5 = new Array(); if (_local2.indexOf("/") != -1){ _local6 = _local4.split("/"); _local7 = _local2.split("/"); _local8 = 0; while (_local8 < _local6.length) { if (!_local7[_local8]){ return (false); }; if (checkUrls(_local7[_local8], _local6[_local8]) == true){ _local5.push(true); } else { _local5.push(false); }; _local8++; }; if (_local5.indexOf(false) == -1){ return (true); }; } else { return (false); }; } else { if (checkUrls(_local2.split("/")[0], _local4) == true){ return (true); }; }; _local3++; }; return (false); } public static function checkUrls(_arg1:String, _arg2:String):Boolean{ var _local3:Array; var _local4:Array; var _local5:Array; var _local6:int; trace("checking chunks"); if (_arg1 == _arg2){ return (true); }; if (((((!((_arg2.indexOf(".") == -1))) && (!((_arg1.indexOf(".") == -1))))) && ((_arg2.split(".").length == _arg1.split(".").length)))){ _local3 = new Array(); _local4 = _arg2.split("."); _local5 = _arg1.split("."); _local6 = 0; while (_local6 < _local4.length) { if ((((_local5[_local6] == _local4[_local6])) || ((_local4[_local6] == "*")))){ _local3.push(true); } else { _local3.push(false); }; _local6++; }; if (_local3.indexOf(false) == -1){ return (true); }; return (false); } else { if (_arg2 == "*"){ return (true); }; }; return (!NULL!); } private static function isAtURL(... _args):Boolean{ var _local3:Array; var _local4:int; var _local5:String; trace("Locked to:", _args); var _local2:int; while (_local2 < _args.length) { _local3 = _args[_local2]; _local4 = 0; while (_local4 < _local3.length) { _local5 = _local3[_local4]; trace(_local5); if (compareURLTo(_local5, _url)){ return (true); }; _local4++; }; _local2++; }; return (false); } private static function compareURLTo(_arg1:String, _arg2:String):Boolean{ var _local4:int; var _local5:String; var _local10:Number; var _local11:String; var _local12:String; var _local3:Array = ["http://", "https://"]; _local4 = 0; while (_local4 < _local3.length) { if (_arg2.substr(0, _local3[_local4].length) == _local3[_local4]){ _local5 = _local3[_local4]; break; }; _local4++; }; if (_local4 == _local3.length){ return (false); }; var _local6:String = _arg2.substr(_local5.length); _arg1 = _arg1.substr(_local5.length); while (_local6.charAt(0) == "/") { _local6 = _local6.substr(1); }; while (_arg1.charAt(0) == "/") { _arg1 = _arg1.substr(1); }; var _local7:Array = _local6.split("/"); var _local8:Array = _arg1.split("/"); trace(_local7, _local8); var _local9:Number = 0; while (_local9 < _local8.length) { if (_local8[_local9].length < 1){ } else { _local10 = _local8[_local9].indexOf("*"); if (_local10 != -1){ _local11 = _local8[_local9].substr(0, _local10); _local12 = _local8[_local9].substr((_local10 + 1)); if (_local7[_local9].substr(0, _local11.length) != _local11){ return (false); }; if (_local7[_local9].substr(-(_local12.length)) != _local12){ return (false); }; } else { if (_local8[_local9] != _local7[_local9]){ return (false); }; }; }; _local9++; }; return (true); } } }//package com.nitrome.util
Section 81
//background_319 (fatcat_fla.background_319) package fatcat_fla { import flash.display.*; public dynamic class background_319 extends MovieClip { public var top:MovieClip; public var bottom:MovieClip; public function background_319(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package fatcat_fla
Section 82
//beam_sound_holder_295 (fatcat_fla.beam_sound_holder_295) package fatcat_fla { import flash.display.*; public dynamic class beam_sound_holder_295 extends MovieClip { public function beam_sound_holder_295(){ addFrameScript(0, frame1, 1, frame2); } function frame1(){ stop(); } function frame2(){ stop(); } } }//package fatcat_fla
Section 83
//big_bang_293 (fatcat_fla.big_bang_293) package fatcat_fla { import flash.display.*; public dynamic class big_bang_293 extends MovieClip { public function big_bang_293(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package fatcat_fla
Section 84
//big_shot_274 (fatcat_fla.big_shot_274) package fatcat_fla { import flash.display.*; public dynamic class big_shot_274 extends MovieClip { public function big_shot_274(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package fatcat_fla
Section 85
//bonusbars_334 (fatcat_fla.bonusbars_334) package fatcat_fla { import flash.display.*; public dynamic class bonusbars_334 extends MovieClip { public function bonusbars_334(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package fatcat_fla
Section 86
//boss_alarm_275 (fatcat_fla.boss_alarm_275) package fatcat_fla { import flash.display.*; public dynamic class boss_alarm_275 extends MovieClip { public function boss_alarm_275(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package fatcat_fla
Section 87
//burp_276 (fatcat_fla.burp_276) package fatcat_fla { import flash.display.*; public dynamic class burp_276 extends MovieClip { public function burp_276(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package fatcat_fla
Section 88
//cake_bar_anim_330 (fatcat_fla.cake_bar_anim_330) package fatcat_fla { import flash.display.*; public dynamic class cake_bar_anim_330 extends MovieClip { public function cake_bar_anim_330(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package fatcat_fla
Section 89
//cake1_277 (fatcat_fla.cake1_277) package fatcat_fla { import flash.display.*; public dynamic class cake1_277 extends MovieClip { public function cake1_277(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package fatcat_fla
Section 90
//cake2_278 (fatcat_fla.cake2_278) package fatcat_fla { import flash.display.*; public dynamic class cake2_278 extends MovieClip { public function cake2_278(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package fatcat_fla
Section 91
//cake3_279 (fatcat_fla.cake3_279) package fatcat_fla { import flash.display.*; public dynamic class cake3_279 extends MovieClip { public function cake3_279(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package fatcat_fla
Section 92
//cash_280 (fatcat_fla.cash_280) package fatcat_fla { import flash.display.*; public dynamic class cash_280 extends MovieClip { public function cash_280(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package fatcat_fla
Section 93
//catdeathspin_19 (fatcat_fla.catdeathspin_19) package fatcat_fla { import flash.display.*; public dynamic class catdeathspin_19 extends MovieClip { public function catdeathspin_19(){ addFrameScript(34, frame35); } function frame35(){ gotoAndPlay(1); } } }//package fatcat_fla
Section 94
//death_281 (fatcat_fla.death_281) package fatcat_fla { import flash.display.*; public dynamic class death_281 extends MovieClip { public function death_281(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package fatcat_fla
Section 95
//endanim_316 (fatcat_fla.endanim_316) package fatcat_fla { import flash.display.*; public dynamic class endanim_316 extends MovieClip { public function endanim_316(){ addFrameScript(373, frame374); } function frame374(){ stop(); } } }//package fatcat_fla
Section 96
//game_music_holder_272 (fatcat_fla.game_music_holder_272) package fatcat_fla { import flash.display.*; public dynamic class game_music_holder_272 extends MovieClip { public function game_music_holder_272(){ addFrameScript(0, frame1, 1, frame2); } function frame1(){ stop(); } function frame2(){ stop(); } } }//package fatcat_fla
Section 97
//health_panel_327 (fatcat_fla.health_panel_327) package fatcat_fla { import flash.display.*; public dynamic class health_panel_327 extends MovieClip { public function health_panel_327(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package fatcat_fla
Section 98
//help_movie_88 (fatcat_fla.help_movie_88) package fatcat_fla { import flash.display.*; public dynamic class help_movie_88 extends MovieClip { public function help_movie_88(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package fatcat_fla
Section 99
//helpbacking_87 (fatcat_fla.helpbacking_87) package fatcat_fla { import flash.display.*; public dynamic class helpbacking_87 extends MovieClip { public function helpbacking_87(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package fatcat_fla
Section 100
//homing_shot_282 (fatcat_fla.homing_shot_282) package fatcat_fla { import flash.display.*; public dynamic class homing_shot_282 extends MovieClip { public function homing_shot_282(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package fatcat_fla
Section 101
//IDNetsmalllogo_310 (fatcat_fla.IDNetsmalllogo_310) package fatcat_fla { import flash.display.*; import flash.events.*; import flash.net.*; public dynamic class IDNetsmalllogo_310 extends MovieClip { public function IDNetsmalllogo_310(){ addFrameScript(0, frame1); } public function onC(_arg1:MouseEvent):void{ navigateToURL(new URLRequest("http://www.id.net"), "_blank"); } function frame1(){ this.addEventListener(MouseEvent.CLICK, onC); this.buttonMode = true; } } }//package fatcat_fla
Section 102
//laser_start_283 (fatcat_fla.laser_start_283) package fatcat_fla { import flash.display.*; public dynamic class laser_start_283 extends MovieClip { public function laser_start_283(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package fatcat_fla
Section 103
//laser_switch_292 (fatcat_fla.laser_switch_292) package fatcat_fla { import flash.display.*; public dynamic class laser_switch_292 extends MovieClip { public function laser_switch_292(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package fatcat_fla
Section 104
//level_complete_284 (fatcat_fla.level_complete_284) package fatcat_fla { import flash.display.*; public dynamic class level_complete_284 extends MovieClip { public function level_complete_284(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package fatcat_fla
Section 105
//linkydink_10 (fatcat_fla.linkydink_10) package fatcat_fla { import flash.display.*; public dynamic class linkydink_10 extends MovieClip { public function linkydink_10(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package fatcat_fla
Section 106
//loading_black_118 (fatcat_fla.loading_black_118) package fatcat_fla { import flash.display.*; public dynamic class loading_black_118 extends MovieClip { public var loading_text:MovieClip; public function loading_black_118(){ addFrameScript(0, frame1, 9, frame10); } function frame1(){ stop(); } function frame10(){ NitromeGame.timeline.gotoAndStop("view_scores"); } } }//package fatcat_fla
Section 107
//loading_screen_336 (fatcat_fla.loading_screen_336) package fatcat_fla { import flash.display.*; import com.nitrome.game.*; public dynamic class loading_screen_336 extends MovieClip { public var tt:Transition; public function loading_screen_336(){ addFrameScript(0, frame1, 9, frame10); } function frame1(){ stop(); } function frame10(){ this.tt.doTween("clear"); } } }//package fatcat_fla
Section 108
//magnet_285 (fatcat_fla.magnet_285) package fatcat_fla { import flash.display.*; public dynamic class magnet_285 extends MovieClip { public function magnet_285(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package fatcat_fla
Section 109
//MainTimeline (fatcat_fla.MainTimeline) package fatcat_fla { import flash.display.*; import flash.events.*; import com.nitrome.engine_specific.*; import flash.geom.*; import flash.text.*; import com.nitrome.game.*; import flash.media.*; import com.nitrome.util.*; import flash.ui.*; import flash.net.*; import flash.filters.*; import flash.utils.*; import adobe.utils.*; import flash.accessibility.*; import flash.errors.*; import flash.external.*; import flash.printing.*; import flash.profiler.*; import flash.sampler.*; import flash.system.*; import flash.xml.*; public dynamic class MainTimeline extends MovieClip { public var msg_panel:MsgPanel; public var pause_game_button:PauseButton; public var background:MovieClip; public var level_12:LevelChooserButton; public var level_4:LevelChooserButton; public var skip_story_button:SkipStoryButton; public var level_13:LevelChooserButton; public var level_5:LevelChooserButton; public var bonus_meter:MovieClip; public var level_10:LevelChooserButton; public var level_6:LevelChooserButton; public var level_20:LevelChooserButton; public var level_11:LevelChooserButton; public var level_7:LevelChooserButton; public var popup_holder:PopUpHolder; public var level_21:LevelChooserButton; public var level_8:LevelChooserButton; public var music_toggle:MusicToggle; public var loading_clip:MovieClip; public var text_panel:MovieClip; public var score_panel:MovieClip; public var shaker:MovieClip; public var level_9:LevelChooserButton; public var cake_meter:MovieClip; public var chain_panel:MovieClip; public var tt:Transition; public var curves_clip:MovieClip; public var level_18:LevelChooserButton; public var level_19:LevelChooserButton; public var fx_toggle:FxToggle; public var health_panel:MovieClip; public var encounter_num:TextField; public var bullet_num:TextField; public var level_16:LevelChooserButton; public var info:TextField; public var level_17:LevelChooserButton; public var level_1:LevelChooserButton; public var score_text:TextField; public var level_14:LevelChooserButton; public var level_2:LevelChooserButton; public var level_15:LevelChooserButton; public var level_3:LevelChooserButton; public var cm:ContextMenu; public var sound_manager:SoundManager; public var game:Game; public function MainTimeline(){ addFrameScript(2, frame3, 10, frame11, 20, frame21, 30, frame31, 40, frame41, 50, frame51, 60, frame61, 70, frame71, 80, frame81, 90, frame91, 100, frame101, 110, frame111, 121, frame122); } function frame3(){ stop(); } function frame11(){ stop(); NitromeGame.transition = tt; Key.init(stage); Score.init(); NitromeGame.init(this, "fatcat", "cheez_", 21); cm = new ContextMenu(); cm.hideBuiltInItems(); this.contextMenu = cm; sound_manager = new SoundManager(); sound_manager.x = -50; sound_manager.y = -50; addChild(sound_manager); } function frame21(){ Lock.to(["pog.com", "gamepost.com", "dollmania.com", "4fun.com", "y8.com", "*.pog.com", "*.gamepost.com", "*.dollmania.com", "*.4fun.com", "*.y8.com"], stage, NitromeGame.game_id); NitromeGame.sound_manager.playMusic(SoundManager.MENU); NitromeGame.timeline.gotoAndStop("title_screen"); stop(); } function frame31(){ stop(); } function frame41(){ stop(); } function frame51(){ stop(); } function frame61(){ stop(); } function frame71(){ stop(); } function frame81(){ stop(); } function frame91(){ score_text.text = ("your score is " + Score.value); stop(); } function frame101(){ stage.quality = StageQuality.LOW; game = new Game(shaker.canvas, shaker); stop(); } function frame111(){ game.clearAll(); game = null; loading_clip.gotoAndStop("loading"); gotoAndStop("game"); } function frame122(){ stop(); } } }//package fatcat_fla
Section 110
//mcAnimation_297 (fatcat_fla.mcAnimation_297) package fatcat_fla { import flash.display.*; public dynamic class mcAnimation_297 extends MovieClip { public function mcAnimation_297(){ addFrameScript(135, frame136); } function frame136(){ NitromeGame.timeline.gotoAndStop("nitrome"); parent.removeChild(this); stop(); } } }//package fatcat_fla
Section 111
//medium_bang_286 (fatcat_fla.medium_bang_286) package fatcat_fla { import flash.display.*; public dynamic class medium_bang_286 extends MovieClip { public function medium_bang_286(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package fatcat_fla
Section 112
//menu_music_holder_273 (fatcat_fla.menu_music_holder_273) package fatcat_fla { import flash.display.*; public dynamic class menu_music_holder_273 extends MovieClip { public function menu_music_holder_273(){ addFrameScript(0, frame1, 1, frame2); } function frame1(){ stop(); } function frame2(){ stop(); } } }//package fatcat_fla
Section 113
//napalm_287 (fatcat_fla.napalm_287) package fatcat_fla { import flash.display.*; public dynamic class napalm_287 extends MovieClip { public function napalm_287(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package fatcat_fla
Section 114
//nitrome_intro_298 (fatcat_fla.nitrome_intro_298) package fatcat_fla { import flash.display.*; public dynamic class nitrome_intro_298 extends MovieClip { public function nitrome_intro_298(){ addFrameScript(159, frame160); } function frame160(){ NitromeGame.transition.doTween("pre_title_screen"); stop(); } } }//package fatcat_fla
Section 115
//ow_294 (fatcat_fla.ow_294) package fatcat_fla { import flash.display.*; public dynamic class ow_294 extends MovieClip { public function ow_294(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package fatcat_fla
Section 116
//pausebacking_86 (fatcat_fla.pausebacking_86) package fatcat_fla { import flash.display.*; public dynamic class pausebacking_86 extends MovieClip { public function pausebacking_86(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package fatcat_fla
Section 117
//player_shot_288 (fatcat_fla.player_shot_288) package fatcat_fla { import flash.display.*; public dynamic class player_shot_288 extends MovieClip { public function player_shot_288(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package fatcat_fla
Section 118
//popup_clip_82 (fatcat_fla.popup_clip_82) package fatcat_fla { import flash.display.*; import flash.events.*; import flash.geom.*; import flash.text.*; import com.nitrome.game.*; import flash.media.*; import flash.ui.*; import flash.net.*; import flash.filters.*; import flash.utils.*; import adobe.utils.*; import flash.accessibility.*; import flash.errors.*; import flash.external.*; import flash.printing.*; import flash.profiler.*; import flash.sampler.*; import flash.system.*; import flash.xml.*; public dynamic class popup_clip_82 extends MovieClip { public var try_again_button:TryAgainButton; public var continue_end_button:ContinueEndButton; public var ticker_score:ScoreTicker; public var back:MovieClip; public var next_level_button:NextLevelButton; public var step:int; public function popup_clip_82(){ addFrameScript(0, frame1, 1, frame2, 15, frame16, 29, frame30, 45, frame46, 60, frame61); } function frame1(){ stop(); } function frame2(){ back.gotoAndStop(NitromeGame.timeline.background.currentLabel); stop(); } function frame16(){ step = (Score.value / 100); if (step < 10){ step = 10; }; ticker_score.startCount(Score.value, step); back.gotoAndStop(NitromeGame.timeline.background.currentLabel); stop(); } function frame30(){ back.gotoAndStop(NitromeGame.timeline.background.currentLabel); stop(); } function frame46(){ back.gotoAndStop(NitromeGame.timeline.background.currentLabel); stop(); } function frame61(){ back.gotoAndStop(NitromeGame.timeline.background.currentLabel); stop(); } } }//package fatcat_fla
Section 119
//popupbacking_84 (fatcat_fla.popupbacking_84) package fatcat_fla { import flash.display.*; public dynamic class popupbacking_84 extends MovieClip { public function popupbacking_84(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package fatcat_fla
Section 120
//score_counter_clip_85 (fatcat_fla.score_counter_clip_85) package fatcat_fla { import flash.display.*; import com.nitrome.game.*; public dynamic class score_counter_clip_85 extends MovieClip { public var ticker_level:ScoreTicker; public var ticker_score:ScoreTicker; public var step:int; public function score_counter_clip_85(){ addFrameScript(19, frame20); } function frame20(){ step = (Score.value / 100); if (step < 10){ step = 10; }; ticker_level.setOnFinish("ticker_score", Score.value, step); step = (NitromeGame.level_score / 100); if (step < 10){ step = 10; }; ticker_level.startCount(NitromeGame.level_score, step); stop(); } } }//package fatcat_fla
Section 121
//shield_289 (fatcat_fla.shield_289) package fatcat_fla { import flash.display.*; public dynamic class shield_289 extends MovieClip { public function shield_289(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package fatcat_fla
Section 122
//small_bang_290 (fatcat_fla.small_bang_290) package fatcat_fla { import flash.display.*; public dynamic class small_bang_290 extends MovieClip { public function small_bang_290(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package fatcat_fla
Section 123
//small_shot_291 (fatcat_fla.small_shot_291) package fatcat_fla { import flash.display.*; public dynamic class small_shot_291 extends MovieClip { public function small_shot_291(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package fatcat_fla
Section 124
//text_panel_325 (fatcat_fla.text_panel_325) package fatcat_fla { import flash.display.*; public dynamic class text_panel_325 extends MovieClip { public var panel:MovieClip; public function text_panel_325(){ addFrameScript(0, frame1, 14, frame15); } function frame1(){ stop(); } function frame15(){ stop(); } } }//package fatcat_fla
Section 125
//Y8Click_8 (fatcat_fla.Y8Click_8) package fatcat_fla { import flash.display.*; import flash.events.*; import flash.net.*; public dynamic class Y8Click_8 extends MovieClip { public function Y8Click_8(){ addFrameScript(0, frame1); } public function onC(_arg1:MouseEvent):void{ navigateToURL(new URLRequest("http://www.y8.com"), "_blank"); } function frame1(){ this.addEventListener(MouseEvent.CLICK, onC); this.buttonMode = true; } } }//package fatcat_fla
Section 126
//Y8Preloaderas3_2 (fatcat_fla.Y8Preloaderas3_2) package fatcat_fla { import flash.display.*; import flash.events.*; import flash.geom.*; import flash.text.*; import flash.media.*; import flash.ui.*; import flash.net.*; import flash.filters.*; import flash.utils.*; import adobe.utils.*; import flash.accessibility.*; import flash.errors.*; import flash.external.*; import flash.printing.*; import flash.profiler.*; import flash.sampler.*; import flash.system.*; import flash.xml.*; public dynamic class Y8Preloaderas3_2 extends MovieClip { public var ad_loading_text:MovieClip; public var ad_loading_bar:MovieClip; public function Y8Preloaderas3_2(){ addFrameScript(0, frame1); } public function loop(_arg1:Event):void{ var _local2:int = root.stage.loaderInfo.bytesTotal; var _local3:int = root.stage.loaderInfo.bytesLoaded; var _local4:int = Math.round(((_local3 / _local2) * 100)); if (_local4 >= 100){ this.removeEventListener(Event.ENTER_FRAME, loop); MovieClip(root).gotoAndStop("nitrome"); } else { ad_loading_bar.ad_bar.width = ((530 * _local4) / 100); }; } function frame1(){ this.addEventListener(Event.ENTER_FRAME, loop); } } }//package fatcat_fla
Section 127
//Y8smalllogo_309 (fatcat_fla.Y8smalllogo_309) package fatcat_fla { import flash.display.*; import flash.events.*; import flash.net.*; public dynamic class Y8smalllogo_309 extends MovieClip { public function Y8smalllogo_309(){ addFrameScript(0, frame1); } public function onC(_arg1:MouseEvent):void{ navigateToURL(new URLRequest("http://www.y8.com"), "_blank"); } function frame1(){ this.addEventListener(MouseEvent.CLICK, onC); this.buttonMode = true; } } }//package fatcat_fla
Section 128
//y8symbol2_7 (fatcat_fla.y8symbol2_7) package fatcat_fla { import flash.display.*; public dynamic class y8symbol2_7 extends MovieClip { public function y8symbol2_7(){ addFrameScript(134, frame135); } function frame135(){ stop(); } } }//package fatcat_fla
Section 129
//BeamBlastMC (BeamBlastMC) package { import flash.display.*; public dynamic class BeamBlastMC extends MovieClip { } }//package
Section 130
//BeamHaloMC (BeamHaloMC) package { import flash.display.*; public dynamic class BeamHaloMC extends Sprite { } }//package
Section 131
//BeamHitMC (BeamHitMC) package { import flash.display.*; public dynamic class BeamHitMC extends MovieClip { } }//package
Section 132
//BeamMC (BeamMC) package { import flash.display.*; public dynamic class BeamMC extends MovieClip { public function BeamMC(){ addFrameScript(19, frame20); } function frame20(){ gotoAndPlay(1); } } }//package
Section 133
//BeamSound (BeamSound) package { import flash.media.*; public dynamic class BeamSound extends Sound { } }//package
Section 134
//BigBulletHitMC (BigBulletHitMC) package { import flash.display.*; public dynamic class BigBulletHitMC extends MovieClip { } }//package
Section 135
//BigBulletMC (BigBulletMC) package { import flash.display.*; public dynamic class BigBulletMC extends MovieClip { } }//package
Section 136
//BigFreeTileMC (BigFreeTileMC) package { import flash.display.*; public dynamic class BigFreeTileMC extends MovieClip { } }//package
Section 137
//BigHorizTileMC (BigHorizTileMC) package { import flash.display.*; public dynamic class BigHorizTileMC extends MovieClip { } }//package
Section 138
//BigStaticTileMC (BigStaticTileMC) package { import flash.display.*; public dynamic class BigStaticTileMC extends MovieClip { } }//package
Section 139
//BigVertTileMC (BigVertTileMC) package { import flash.display.*; public dynamic class BigVertTileMC extends MovieClip { } }//package
Section 140
//BlockTileMC (BlockTileMC) package { import flash.display.*; public dynamic class BlockTileMC extends MovieClip { } }//package
Section 141
//BossBackMC1 (BossBackMC1) package { import flash.display.*; public dynamic class BossBackMC1 extends MovieClip { public var collision_box:MovieClip; } }//package
Section 142
//BossBackMC2 (BossBackMC2) package { import flash.display.*; public dynamic class BossBackMC2 extends MovieClip { public var collision_box:MovieClip; } }//package
Section 143
//BossBackMC3 (BossBackMC3) package { import flash.display.*; public dynamic class BossBackMC3 extends MovieClip { public var collision_box:MovieClip; } }//package
Section 144
//BossMonsterMC1 (BossMonsterMC1) package { import flash.display.*; public dynamic class BossMonsterMC1 extends MovieClip { public var collision_box:MovieClip; } }//package
Section 145
//BossMonsterMC2 (BossMonsterMC2) package { import flash.display.*; public dynamic class BossMonsterMC2 extends MovieClip { public var collision_box:MovieClip; } }//package
Section 146
//BossMonsterMC3 (BossMonsterMC3) package { import flash.display.*; public dynamic class BossMonsterMC3 extends MovieClip { public var collision_box:MovieClip; } }//package
Section 147
//BossMonsterMC4 (BossMonsterMC4) package { import flash.display.*; public dynamic class BossMonsterMC4 extends MovieClip { public var collision_box:MovieClip; } }//package
Section 148
//BossMonsterMC5 (BossMonsterMC5) package { import flash.display.*; public dynamic class BossMonsterMC5 extends MovieClip { public var collision_box:MovieClip; } }//package
Section 149
//BossMonsterMC6 (BossMonsterMC6) package { import flash.display.*; public dynamic class BossMonsterMC6 extends MovieClip { public var collision_box:MovieClip; } }//package
Section 150
//BossMonsterMC7 (BossMonsterMC7) package { import flash.display.*; public dynamic class BossMonsterMC7 extends MovieClip { public var collision_box:MovieClip; } }//package
Section 151
//BreakTileMC1 (BreakTileMC1) package { import flash.display.*; public dynamic class BreakTileMC1 extends MovieClip { } }//package
Section 152
//BreakTileMC2 (BreakTileMC2) package { import flash.display.*; public dynamic class BreakTileMC2 extends MovieClip { } }//package
Section 153
//BurnMC1 (BurnMC1) package { import flash.display.*; public dynamic class BurnMC1 extends MovieClip { } }//package
Section 154
//BurnMC2 (BurnMC2) package { import flash.display.*; public dynamic class BurnMC2 extends MovieClip { } }//package
Section 155
//BurnMC3 (BurnMC3) package { import flash.display.*; public dynamic class BurnMC3 extends MovieClip { } }//package
Section 156
//BurnMC4 (BurnMC4) package { import flash.display.*; public dynamic class BurnMC4 extends MovieClip { } }//package
Section 157
//CakeMC1 (CakeMC1) package { import flash.display.*; public dynamic class CakeMC1 extends MovieClip { } }//package
Section 158
//CakeMC2 (CakeMC2) package { import flash.display.*; public dynamic class CakeMC2 extends MovieClip { } }//package
Section 159
//CakeMC3 (CakeMC3) package { import flash.display.*; public dynamic class CakeMC3 extends MovieClip { } }//package
Section 160
//CakeMC4 (CakeMC4) package { import flash.display.*; public dynamic class CakeMC4 extends MovieClip { } }//package
Section 161
//CakeMC5 (CakeMC5) package { import flash.display.*; public dynamic class CakeMC5 extends MovieClip { } }//package
Section 162
//CakeMC6 (CakeMC6) package { import flash.display.*; public dynamic class CakeMC6 extends MovieClip { } }//package
Section 163
//CakeMC7 (CakeMC7) package { import flash.display.*; public dynamic class CakeMC7 extends MovieClip { } }//package
Section 164
//CakeMC8 (CakeMC8) package { import flash.display.*; public dynamic class CakeMC8 extends MovieClip { } }//package
Section 165
//CashBulletHitMC (CashBulletHitMC) package { import flash.display.*; public dynamic class CashBulletHitMC extends MovieClip { } }//package
Section 166
//CashBulletMC (CashBulletMC) package { import flash.display.*; public dynamic class CashBulletMC extends MovieClip { } }//package
Section 167
//CatDeathMC (CatDeathMC) package { import flash.display.*; public dynamic class CatDeathMC extends MovieClip { public function CatDeathMC(){ addFrameScript(40, frame41); } function frame41(){ stop(); } } }//package
Section 168
//ClearButton (ClearButton) package { import com.nitrome.highscore.*; public dynamic class ClearButton extends ClearButton { public function ClearButton(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 169
//DropShipMC (DropShipMC) package { import flash.display.*; public dynamic class DropShipMC extends MovieClip { public var player:MovieClip; } }//package
Section 170
//FinishMC (FinishMC) package { import flash.display.*; public dynamic class FinishMC extends MovieClip { } }//package
Section 171
//FreeTileMC (FreeTileMC) package { import flash.display.*; import flash.text.*; public dynamic class FreeTileMC extends MovieClip { public var info:TextField; } }//package
Section 172
//FrontLaserHitMC (FrontLaserHitMC) package { import flash.display.*; public dynamic class FrontLaserHitMC extends MovieClip { } }//package
Section 173
//FrontLazerData (FrontLazerData) package { import flash.display.*; public dynamic class FrontLazerData extends BitmapData { public function FrontLazerData(_arg1:int=22, _arg2:int=32){ super(_arg1, _arg2); } } }//package
Section 174
//FrontLazerData2 (FrontLazerData2) package { import flash.display.*; public dynamic class FrontLazerData2 extends BitmapData { public function FrontLazerData2(_arg1:int=22, _arg2:int=32){ super(_arg1, _arg2); } } }//package
Section 175
//FrontTileMC1 (FrontTileMC1) package { import flash.display.*; public dynamic class FrontTileMC1 extends Sprite { } }//package
Section 176
//FrontTileMC10 (FrontTileMC10) package { import flash.display.*; public dynamic class FrontTileMC10 extends Sprite { } }//package
Section 177
//FrontTileMC11 (FrontTileMC11) package { import flash.display.*; public dynamic class FrontTileMC11 extends Sprite { } }//package
Section 178
//FrontTileMC12 (FrontTileMC12) package { import flash.display.*; public dynamic class FrontTileMC12 extends Sprite { } }//package
Section 179
//FrontTileMC13 (FrontTileMC13) package { import flash.display.*; public dynamic class FrontTileMC13 extends Sprite { } }//package
Section 180
//FrontTileMC14 (FrontTileMC14) package { import flash.display.*; public dynamic class FrontTileMC14 extends Sprite { } }//package
Section 181
//FrontTileMC15 (FrontTileMC15) package { import flash.display.*; public dynamic class FrontTileMC15 extends Sprite { } }//package
Section 182
//FrontTileMC2 (FrontTileMC2) package { import flash.display.*; public dynamic class FrontTileMC2 extends Sprite { } }//package
Section 183
//FrontTileMC3 (FrontTileMC3) package { import flash.display.*; public dynamic class FrontTileMC3 extends Sprite { } }//package
Section 184
//FrontTileMC4 (FrontTileMC4) package { import flash.display.*; public dynamic class FrontTileMC4 extends Sprite { } }//package
Section 185
//FrontTileMC5 (FrontTileMC5) package { import flash.display.*; public dynamic class FrontTileMC5 extends Sprite { } }//package
Section 186
//FrontTileMC6 (FrontTileMC6) package { import flash.display.*; public dynamic class FrontTileMC6 extends Sprite { } }//package
Section 187
//FrontTileMC7 (FrontTileMC7) package { import flash.display.*; public dynamic class FrontTileMC7 extends Sprite { } }//package
Section 188
//FrontTileMC8 (FrontTileMC8) package { import flash.display.*; public dynamic class FrontTileMC8 extends Sprite { } }//package
Section 189
//FrontTileMC9 (FrontTileMC9) package { import flash.display.*; public dynamic class FrontTileMC9 extends Sprite { } }//package
Section 190
//Game (Game) package { import com.nitrome.engine.*; import flash.display.*; import flash.events.*; import com.nitrome.engine_specific.*; import flash.geom.*; import flash.text.*; import com.nitrome.game.*; import flash.ui.*; import flash.filters.*; public class Game { public var canvas:Sprite; public var player:Player; public var probe:Probe; public var scroller:Scroller; public var player_holder:Sprite; public var tile_holder:Sprite; public var tile_front_holder:Sprite; public var non_monster_holder:Sprite; public var monster_holder:Sprite; public var effect_holder:Sprite; public var cake_holder:Sprite; public var debug:Graphics; public var debug_stay:Graphics; public var shaker:Sprite; public var drag_holder:Sprite; public var laser_holder:Sprite; public var tile_top_holder:Sprite; public var info:Sprite; public var info_font:Font; public var drop_ship_holder:Sprite; public var small_green_bullet_bitmap:BitmapSprite; public var small_red_bullet_bitmap:BitmapSprite; public var small_blue_bullet_bitmap:BitmapSprite; public var big_bullet_bitmap:BitmapSprite; public var homing_bullet_bitmap:BitmapSprite; public var player_bullet_bitmap:BitmapSprite; public var napalm_bitmap1:BitmapSprite; public var napalm_bitmap2:BitmapSprite; public var magnet_bullet_bitmap:BitmapSprite; public var cash_bullet_bitmap:BitmapSprite; public var small_green_bullet_hit_bitmap:BitmapSprite; public var small_red_bullet_hit_bitmap:BitmapSprite; public var small_blue_bullet_hit_bitmap:BitmapSprite; public var big_bullet_hit_bitmap:BitmapSprite; public var homing_bullet_hit_bitmap:BitmapSprite; public var player_bullet_hit_bitmap1:BitmapSprite; public var player_bullet_hit_bitmap2:BitmapSprite; public var player_bullet_hit_bitmap3:BitmapSprite; public var magnet_bullet_hit_bitmap:BitmapSprite; public var cash_bullet_hit_bitmap:BitmapSprite; public var burn_bitmap1:BitmapSprite; public var burn_bitmap2:BitmapSprite; public var burn_bitmap3:BitmapSprite; public var burn_bitmap4:BitmapSprite; public var small_bang_bitmap:BitmapSprite; public var medium_bang_bitmap:BitmapSprite; public var large_bang_bitmap:BitmapSprite; public var side_lazer_data:BitmapData; public var front_lazer_data:BitmapData; public var side_lazer_data2:BitmapData; public var front_lazer_data2:BitmapData; public var screendata:BitmapData; public var screenfxdata:BitmapData; public var screen:Bitmap; public var screenfx:Bitmap; public var spritedata:BitmapData; public var screenrect:Rectangle; public var bulletframes:Array; private var p:Point; private var i:int; private var j:int; public var start_x:int; public var start_y:int; public var start_msg:String; public var shake_array:Array; public var block_map:Array; public var encounters:Array; public var bullets:Array; public var player_bullets:Array; public var blocks_in_play:Array; public var tile_map:Array; public var tiles:Array; public var lasers:Array; public var cakes:Array; public var fx:Array; public var smokes:Array; public var state:int; public var god_mode:Boolean; public var game_paused:Boolean; public var mouse_pressed:Boolean; public var show_info:Boolean; public var frame_count:int; public var shake_count:int; public var cake_count:int; public var completed:Boolean; public var right_pressed:Boolean; public var level_scroll_speed:Number; public var tile_width:int; public var tile_height:int; public var tile_grid_mouse_x:int; public var tile_grid_mouse_y:int; public var grid_mouse_x:int; public var grid_mouse_y:int; public var player_bullet_hit_frame:int;// = 1 public var pause_scroll:int; public var smoke_angle:int;// = 0 public var boss_count:int; public var boss_bang_zone:Rect; public var chain:HiddenInt; public var last_killed:HiddenInt; public var enemy:Monster; public var finish_line:Number; public var big_shot_count:int;// = 0 public var small_shot_count:int;// = 0 public var homing_shot_count:int;// = 0 public var player_shot_count:int;// = 0 public var small_bang_count:int;// = 0 public var medium_bang_count:int;// = 0 public var big_bang_count:int;// = 0 public var probe_soak_count:int;// = 0 public static const width:int = 275; public static const height:int = 275; public static const scale:int = 12; public static const SCALE:Number = 0.0833333333333333; public static const BULLET_DEATH_RANGE:int = 50; public static const PLAYER_BULLET_DEATH_RANGE:int = 32; public static const IN_PLAY:int = 2; public static const EMPTY:int = 1; public static const PROBE_SOAK_LIMIT:int = 10000; public static const SKIN_ID:RegExp = /(?<=I) \d+/; public static const SKIN_ID_REPLACE:RegExp = /I \d+/; public static const HEALTH_ID:RegExp = /(?<=H) \d+/; public static const HEALTH_ID_REPLACE:RegExp = /H \d+/; public static const PROPERTY_ID:RegExp = /(?<=P) \d+/; public static const PROPERTY_ID_REPLACE:RegExp = /P \d+/; public static const FORMAT_INSTRUCTIONS:RegExp = /\s*(\d+|\D{1})\s*/g; public static const TURRET_COMMANDS:RegExp = /(?<=T \( )[^\(\)]*(?= \))/g; public static const TURRET_COMMANDS_REPLACE:RegExp = /T \([^\(\)]*\)/g; public static const SPAWN_COMMANDS:RegExp = /(?<=S \( )[^\(\)]*(?= \))/; public static const SPAWN_COMMANDS_REPLACE:RegExp = /S \([^\(\)]*\)/; public static const ANDS:RegExp = /&/; public static const TRIM_WHITESPACE:RegExp = /^[ \t]+|[ \t]+$/g; public static const WAIT_COMMAND_CHECK:RegExp = /W\s*\d+/; public static const BIG_SHOT_DELAY:int = 6; public static const SMALL_SHOT_DELAY:int = 6; public static const HOMING_SHOT_DELAY:int = 6; public static const PLAYER_SHOT_DELAY:int = 6; public static const BIG_BANG_DELAY:int = 8; public static const MEDIUM_BANG_DELAY:int = 8; public static const SMALL_BANG_DELAY:int = 8; public function Game(_arg1:Sprite, _arg2:Sprite){ shake_array = new Array(0, 4, -4, 3, -3, 2, -2, 1, -1); super(); this.canvas = _arg1; _arg1.scaleX = 2; _arg1.scaleY = 2; this.shaker = _arg2; _arg1.addEventListener(Event.ENTER_FRAME, transistionWait, false, 0, true); } public function transistionWait(_arg1:Event):void{ if (!NitromeGame.timeline.tt.tweening){ canvas.removeEventListener(Event.ENTER_FRAME, transistionWait); init(); }; } public function init():void{ info_font = new InfoFont(); tile_holder = new Sprite(); tile_top_holder = new Sprite(); tile_front_holder = new Sprite(); monster_holder = new Sprite(); non_monster_holder = new Sprite(); player_holder = new Sprite(); effect_holder = new Sprite(); drag_holder = new Sprite(); cake_holder = new Sprite(); laser_holder = new Sprite(); drop_ship_holder = new Sprite(); info = new Sprite(); var _local1:Shape = new Shape(); var _local2:Shape = new Shape(); screendata = new BitmapData(width, height, true, 4294967295); screenfxdata = new BitmapData(width, height, true, 4294967295); screen = new Bitmap(screendata); screenfx = new Bitmap(screenfxdata); screenrect = new Rectangle(0, 0, width, height); debug = _local1.graphics; debug_stay = _local2.graphics; debug.lineStyle(2, 0xFF00); debug_stay.lineStyle(1, 0xFF0000); canvas.addChild(tile_front_holder); canvas.addChild(non_monster_holder); canvas.addChild(tile_holder); canvas.addChild(screen); canvas.addChild(laser_holder); canvas.addChild(tile_top_holder); canvas.addChild(monster_holder); canvas.addChild(cake_holder); canvas.addChild(drag_holder); canvas.addChild(drop_ship_holder); canvas.addChild(player_holder); canvas.addChild(effect_holder); canvas.addChild(screenfx); small_green_bullet_bitmap = new BitmapSprite(new SmallBulletMC1()); small_red_bullet_bitmap = new BitmapSprite(new SmallBulletMC2()); small_blue_bullet_bitmap = new BitmapSprite(new SmallBulletMC3()); big_bullet_bitmap = new BitmapSprite(new BigBulletMC()); homing_bullet_bitmap = new BitmapSprite(new HomingBulletMC()); player_bullet_bitmap = new BitmapSprite(new PlayerBulletMC()); napalm_bitmap1 = new BitmapSprite(new NapalmMC1()); napalm_bitmap2 = new BitmapSprite(new NapalmMC2()); magnet_bullet_bitmap = new BitmapSprite(new MagnetBulletMC()); cash_bullet_bitmap = new BitmapSprite(new CashBulletMC()); small_green_bullet_hit_bitmap = new BitmapSprite(new SmallBulletHitMC1()); small_red_bullet_hit_bitmap = new BitmapSprite(new SmallBulletHitMC2()); small_blue_bullet_hit_bitmap = new BitmapSprite(new SmallBulletHitMC3()); big_bullet_hit_bitmap = new BitmapSprite(new BigBulletHitMC()); homing_bullet_hit_bitmap = new BitmapSprite(new HomingBulletHitMC()); player_bullet_hit_bitmap1 = new BitmapSprite(new PlayerBulletHitMC1()); player_bullet_hit_bitmap2 = new BitmapSprite(new PlayerBulletHitMC2()); player_bullet_hit_bitmap3 = new BitmapSprite(new PlayerBulletHitMC3()); magnet_bullet_hit_bitmap = new BitmapSprite(new MagnetBulletHitMC()); cash_bullet_hit_bitmap = new BitmapSprite(new CashBulletHitMC()); burn_bitmap1 = new BitmapSprite(new BurnMC1()); burn_bitmap2 = new BitmapSprite(new BurnMC2()); burn_bitmap3 = new BitmapSprite(new BurnMC3()); burn_bitmap4 = new BitmapSprite(new BurnMC4()); small_bang_bitmap = new BitmapSprite(new SmallBangMC()); medium_bang_bitmap = new BitmapSprite(new MediumBangMC()); large_bang_bitmap = new BitmapSprite(new LargeBangMC()); side_lazer_data = new SideLazerData(32, 24); front_lazer_data = new FrontLazerData(22, 32); side_lazer_data2 = new SideLazerData2(32, 24); front_lazer_data2 = new FrontLazerData2(22, 32); RayCast.init(this); encounters = new Array(); bullets = new Array(); tiles = new Array(); lasers = new Array(); player_bullets = new Array(); fx = new Array(); cakes = new Array(); smokes = new Array(); frame_count = 0; NitromeGame.level_score = 0; cake_count = 0; game_paused = false; god_mode = false; completed = false; right_pressed = false; pause_scroll = 0; show_info = false; boss_count = 0; chain = new HiddenInt(1); last_killed = new HiddenInt(0); finish_line = 0; probe_soak_count = 0; Mouse.hide(); NitromeGame.timeline.score_panel.score.text = scoreString(); NitromeGame.timeline.chain_panel.alpha = 0; loadLevel(); } public function addListeners():void{ canvas.addEventListener(Event.ENTER_FRAME, main, false, 0, true); Key.stage.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown); Key.stage.addEventListener(MouseEvent.MOUSE_UP, mouseUp); Key.stage.addEventListener(KeyboardEvent.KEY_DOWN, debugKey); NitromeGame.timeline.cm.addEventListener(ContextMenuEvent.MENU_SELECT, rightClick); } public function clearAll():void{ clearListeners(); while (canvas.numChildren > 0) { canvas.removeChildAt(0); }; } public function clearListeners():void{ canvas.removeEventListener(Event.ENTER_FRAME, main); Key.stage.removeEventListener(MouseEvent.MOUSE_DOWN, mouseDown); Key.stage.removeEventListener(MouseEvent.MOUSE_UP, mouseUp); Key.stage.removeEventListener(KeyboardEvent.KEY_DOWN, debugKey); NitromeGame.timeline.cm.removeEventListener(ContextMenuEvent.MENU_SELECT, rightClick); NitromeGame.sound_manager.killLoops(); Key.forceClearKeys(); } public function reset():void{ game_paused = true; clearAll(); init(); } private function initPlayer():void{ var _local1:MovieClip = new PlayerMC(); var _local2:MovieClip = new ProbeMC(); var _local3:MovieClip = new MovieClip(); var _local4:MovieClip = new MovieClip(); _local3.addChild(_local1); _local4.addChild(_local2); player_holder.addChild(_local3); player_holder.addChild(_local4); player = new Player(_local3, ((scale >> 1) + (start_x * scale)), ((scale >> 1) + (start_y * scale)), this); probe = new Probe(_local4, player, this); if (NitromeGame.selected_level != 1){ NitromeGame.timeline.msg_panel.setMsg(start_msg); }; } public function main(_arg1:Event):void{ var _local2:Array; var _local3:*; debug.clear(); debug.lineStyle(1, 0xFF00); if (!game_paused){ grid_mouse_x = (probe.mc.x * SCALE); grid_mouse_y = (probe.mc.y * SCALE); tile_grid_mouse_x = (probe.mc.x * Tile.TILE_SCALE); tile_grid_mouse_y = (probe.mc.y * Tile.TILE_SCALE); if (player.active){ player.main(); }; if (probe.active){ probe.main(); }; updateTiles(); updateLasers(); screendata.fillRect(screenrect, 0xFFFFFF); screenfxdata.fillRect(screenrect, 0xFFFFFF); screen.x = (screenfx.x = -((canvas.x * 0.5))); screen.y = (screenfx.y = -((canvas.y * 0.5))); if (player.drop_ship){ _local2 = new Array(); _local3 = new BlurFilter(0, player.drop_ship_blur); screendata.draw(player.back); screen.filters = [_local3]; }; updateEncounters(); updateBullets(); updateSmokes(); updateFX(); updateShaker(); updateBars(); frame_count++; }; if (big_shot_count > 0){ big_shot_count--; }; if (small_shot_count > 0){ small_shot_count--; }; if (homing_shot_count > 0){ homing_shot_count--; }; if (player_shot_count > 0){ player_shot_count--; }; if (small_bang_count > 0){ small_bang_count--; }; if (medium_bang_count > 0){ medium_bang_count--; }; if (big_bang_count > 0){ big_bang_count--; }; NitromeGame.timeline.info.text = ""; NitromeGame.timeline.bullet_num.text = ("BULLETS:" + (bullets.length + player_bullets.length)); NitromeGame.timeline.encounter_num.text = ("OTHER STUFF:" + (((encounters.length + fx.length) + lasers.length) + smokes.length)); } public function updateInfo():void{ var _local4:Rect; var _local6:TextField; while (info.numChildren > 0) { info.removeChildAt(0); }; var _local1:Sprite = new Sprite(); info.addChild(_local1); var _local2:String = info_font.fontName; var _local3:Graphics = info.graphics; _local3.clear(); _local3.lineStyle(1, 0xFF00); var _local5:TextFormat = new TextFormat(_local2, 8, 0xFF00, null, null, null, null, null, TextFormatAlign.CENTER); i = 0; while (i < encounters.length) { if (encounters[i].monster){ _local6 = new TextField(); _local6.embedFonts = true; _local4 = encounters[i].collision_rect; _local6.x = _local4.x; _local6.y = _local4.y; _local6.width = _local4.width; _local6.height = _local4.height; _local6.selectable = false; _local3.beginFill(0, 0.3); _local3.drawRect(_local4.x, _local4.y, _local4.width, _local4.height); _local3.endFill(); _local6.text = ("" + encounters[i].health.value); _local6.setTextFormat(_local5); _local1.addChild(_local6); }; i++; }; player.debug(); probe.collision_rect.draw(debug); } public function bulletBorderDebug():void{ debug.moveTo(((-(canvas.x) * 0.5) - BULLET_DEATH_RANGE), ((-(canvas.y) * 0.5) - BULLET_DEATH_RANGE)); debug.lineTo((((-(canvas.x) * 0.5) + width) + BULLET_DEATH_RANGE), ((-(canvas.y) * 0.5) - BULLET_DEATH_RANGE)); debug.lineTo((((-(canvas.x) * 0.5) + width) + BULLET_DEATH_RANGE), (((-(canvas.y) * 0.5) + height) + BULLET_DEATH_RANGE)); debug.lineTo(((-(canvas.x) * 0.5) - BULLET_DEATH_RANGE), (((-(canvas.y) * 0.5) + height) + BULLET_DEATH_RANGE)); debug.lineTo(((-(canvas.x) * 0.5) - BULLET_DEATH_RANGE), ((-(canvas.y) * 0.5) - BULLET_DEATH_RANGE)); } public function onScreen(_arg1:Number, _arg2:Number, _arg3:Number):Boolean{ return (!((((((((_arg1 < ((-(canvas.x) * 0.5) - _arg3))) || ((_arg2 < ((-(canvas.y) * 0.5) - _arg3))))) || ((_arg1 >= (((-(canvas.x) * 0.5) + width) + _arg3))))) || ((_arg2 >= (((-(canvas.y) * 0.5) + height) + _arg3)))))); } public function gameOver():void{ NitromeGame.timeline.popup_holder.launchPopUp("game_over"); Mouse.show(); } public function levelComplete():void{ if (completed){ return; }; completed = true; NitromeGame.sound_manager.playSound("level_complete"); if (NitromeGame.selected_level >= NitromeGame.total_levels){ NitromeGame.timeline.popup_holder.launchPopUp("final_level_complete"); } else { NitromeGame.timeline.popup_holder.launchPopUp("level_complete"); NitromeGame.setLevelUnlocked((NitromeGame.selected_level + 1)); }; Mouse.show(); } public function addScore(_arg1:int):void{ if (!player.active){ return; }; NitromeGame.level_score = (NitromeGame.level_score + _arg1); Score.value = (Score.value + _arg1); NitromeGame.timeline.score_panel.score.text = scoreString(); } public function addChain():void{ chain.value++; NitromeGame.timeline.chain_panel.chain.text = ("chain x " + chain.value); addScore((100 * chain.value)); NitromeGame.timeline.chain_panel.alpha = 1; } public function killChain():void{ if (chain.value > 1){ NitromeGame.timeline.chain_panel.chain.text = "chain broken!"; NitromeGame.timeline.chain_panel.alpha = 1; }; chain.value = 1; } public function textMessage(_arg1:String):void{ NitromeGame.timeline.text_panel.panel.message_text.text = _arg1; NitromeGame.timeline.text_panel.gotoAndPlay("popup_stay"); } public function hideTextMessage():void{ NitromeGame.timeline.text_panel.gotoAndPlay("hide"); } public function updateBars():void{ if (NitromeGame.timeline.chain_panel.alpha > 0){ NitromeGame.timeline.chain_panel.alpha = (NitromeGame.timeline.chain_panel.alpha - 0.01); }; NitromeGame.timeline.cake_meter.bar_mask.scaleX = player.puke.value; if (player.puke.value > 0){ NitromeGame.timeline.cake_meter.visible = true; } else { NitromeGame.timeline.cake_meter.visible = false; }; if (player.shield_count.value > 0){ NitromeGame.timeline.bonus_meter.visible = true; NitromeGame.timeline.bonus_meter.bar_mask.scaleX = ((1 / Player.SHIELD_DELAY) * player.shield_count.value); NitromeGame.timeline.bonus_meter.txt.text = "shield"; if (NitromeGame.timeline.bonus_meter.bar.currentLabel != "shield"){ NitromeGame.timeline.bonus_meter.bar.gotoAndStop("shield"); }; } else { if (probe.napalm_count.value > 0){ NitromeGame.timeline.bonus_meter.visible = true; NitromeGame.timeline.bonus_meter.bar_mask.scaleX = ((1 / Probe.NAPALM_DELAY) * probe.napalm_count.value); NitromeGame.timeline.bonus_meter.txt.text = "napalm"; if (NitromeGame.timeline.bonus_meter.bar.currentLabel != "napalm"){ NitromeGame.timeline.bonus_meter.bar.gotoAndStop("napalm"); }; } else { if (probe.magnet_count.value > 0){ NitromeGame.timeline.bonus_meter.visible = true; NitromeGame.timeline.bonus_meter.bar_mask.scaleX = ((1 / Probe.MAGNET_DELAY) * probe.magnet_count.value); NitromeGame.timeline.bonus_meter.txt.text = "magnet"; if (NitromeGame.timeline.bonus_meter.bar.currentLabel != "magnet"){ NitromeGame.timeline.bonus_meter.bar.gotoAndStop("magnet"); }; } else { if (((!((enemy == null))) && ((enemy.health.value > 0)))){ NitromeGame.timeline.bonus_meter.visible = true; NitromeGame.timeline.bonus_meter.bar_mask.scaleX = ((1 / enemy.total_health) * enemy.health.value); NitromeGame.timeline.bonus_meter.txt.text = "enemy"; if (NitromeGame.timeline.bonus_meter.bar.currentLabel != "enemy"){ NitromeGame.timeline.bonus_meter.bar.gotoAndStop("enemy"); }; } else { if (NitromeGame.timeline.bonus_meter.bar_mask.scaleX > 0){ NitromeGame.timeline.bonus_meter.bar_mask.scaleX = 0; NitromeGame.timeline.bonus_meter.txt.text = ""; NitromeGame.timeline.bonus_meter.visible = false; }; }; }; }; }; } public function pauseGame(_arg1:Boolean=false):void{ var _local2:int; var _local3:int; var _local4:int; if (!player.active){ return; }; if (!game_paused){ Mouse.show(); Util.stopClips(canvas); NitromeGame.sound_manager.stopLoops(); game_paused = true; if (_arg1){ NitromeGame.timeline.popup_holder.launchPopUp("game_help"); } else { NitromeGame.timeline.popup_holder.launchPopUp("game_paused"); }; } else { Mouse.hide(); Util.startClips(canvas); NitromeGame.sound_manager.startLoops(); _local2 = 0; while (_local2 < encounters.length) { encounters[_local2].unpause(); _local2++; }; _local4 = 0; while (_local4 < tile_height) { _local3 = 0; while (_local3 < tile_width) { if ((tile_map[_local4][_local3] is Switch)){ tile_map[_local4][_local3].unpause(); }; _local3++; }; _local4++; }; NitromeGame.timeline.popup_holder.hidePopUp(); game_paused = false; }; } public function addCake(_arg1:Cake):void{ cakes.push(_arg1); } public function removeCake(_arg1:Cake):void{ var _local2:int; while (_local2 < cakes.length) { if (cakes[_local2] == _arg1){ cakes.splice(_local2, 1); break; }; _local2++; }; } public function updateLasers():void{ var _local1:int; while (laser_holder.numChildren > 0) { laser_holder.removeChildAt(0); }; laser_holder.graphics.clear(); i = 0; while (i < lasers.length) { lasers[i].main(); j = 0; while (j < lasers[i].collision_array.length) { if (lasers[i].strength >= 1){ if (lasers[i].collision_array[j].intersects(player.collision_rect)){ player.hit(); }; _local1 = 0; while (_local1 < encounters.length) { if (((((encounters[_local1].monster) && (encounters[_local1].has_collision))) && (encounters[_local1].collision_rect.intersects(lasers[i].collision_array[j])))){ encounters[_local1].hit(10); encounters[_local1].hit_white = 2; }; _local1++; }; }; j++; }; if (((!(lasers[i].active)) && ((lasers[i].strength <= 0)))){ lasers.splice(i, 1); i--; }; i++; }; } private function updateEncounters():void{ i = 0; while (i < encounters.length) { if (encounters[i].skip){ } else { if (((encounters[i].has_collision) && (encounters[i].collision_rect.intersects(player.collision_rect)))){ encounters[i].resolvePlayerCollision(player); }; if (((((encounters[i].has_collision) && ((probe.item is Tile)))) && (encounters[i].collision_rect.intersects(probe.item.collision_rect)))){ encounters[i].kill(); }; if (encounters[i].has_main){ encounters[i].main(); }; if (!encounters[i].active){ if (encounters[i].monster){ if ((encounters[i].properties & Monster.PAUSE_SCROLL)){ pause_scroll--; }; }; Util.stopClips(encounters[i].mc); encounters[i].mc.parent.removeChild(encounters[i].mc); encounters.splice(i, 1); i--; }; }; i++; }; } public function addEncounter(_arg1:Encounter):void{ encounters.push(_arg1); } public function removeEncounter(_arg1:Encounter):void{ var _local2:int; while (_local2 < encounters.length) { if (encounters[_local2] == _arg1){ encounters.splice(_local2, 1); break; }; _local2++; }; } public function updateTiles():void{ var _local2:Tile; var _local1:int; while (_local1 < tiles.length) { if (tiles[_local1].active_tile){ tiles[_local1].setDestination(tile_grid_mouse_x, tile_grid_mouse_y); }; tiles[_local1].move(); if (!tiles[_local1].active_tile){ _local2 = tiles[_local1]; if (_local2.on_grid_pos){ tiles.splice(_local1, 1); _local1--; }; }; _local1++; }; } public function addTile(_arg1:Tile):void{ tiles.push(_arg1); } public function removeTile(_arg1:Tile):void{ var _local2:int; while (_local2 < tiles.length) { if (tiles[_local2] == _arg1){ tiles.splice(_local2, 1); break; }; _local2++; }; } public function updateBullets():void{ var _local1:int; var _local2:int; var _local3:int; var _local4:int; var _local5:int; var _local7:BitmapSprite; i = 0; while (i < bullets.length) { bullets[i].main(); if (bullets[i].active){ _local1 = (bullets[i].x * Tile.TILE_SCALE); _local2 = (bullets[i].y * Tile.TILE_SCALE); if ((((((((((((_local1 >= 0)) && ((_local2 >= 0)))) && ((_local1 < tile_width)))) && ((_local2 < tile_height)))) && (!((tile_map[_local2][_local1] == null))))) && (!((tile_map[_local2][_local1] is BlockTile))))){ bullets[i].active = false; bullets[i].resolve(tile_map[_local2][_local1].collision_rect); }; }; if (((((bullets[i].active) && ((probe.item is Tile)))) && (probe.item.collision_rect.contains(bullets[i].x, bullets[i].y)))){ bullets[i].active = false; }; if (((bullets[i].active) && ((player.beam.scaleX > 0)))){ if (player.beam_rect.contains(bullets[i].x, bullets[i].y)){ bullets[i].active = false; }; }; j = 0; while (j < lasers.length) { if (lasers[j].strength >= 1){ _local5 = 0; while (_local5 < lasers[j].collision_array.length) { if (lasers[j].collision_array[_local5].intersectsCircle(bullets[i].x, bullets[i].y, bullets[i].radius)){ bullets[i].active = false; }; _local5++; }; }; j++; }; if (((bullets[i].active) && (player.active))){ if (player.collision_rect.contains(bullets[i].x, bullets[i].y)){ bullets[i].active = false; if (bullets[i].type != Bullet.CASH){ player.hit(); } else { addScore(50); }; }; }; if (((((player.active) && (!((((bullets[i].type == Bullet.BIG)) && ((probe.magnet_count.value == 0))))))) && (probe.collision_rect.intersectsCircle(bullets[i].x, bullets[i].y, bullets[i].radius)))){ if (probe.magnet_count.value > 0){ probe.magnet_bullet_count++; }; bullets[i].active = false; if (bullets[i].type != Bullet.CASH){ if (probe_soak_count < PROBE_SOAK_LIMIT){ addScore(1); probe_soak_count++; }; } else { addScore(50); }; if (player.carried){ player.hit(); }; }; if (bullets[i].active){ bullets[i].bitmap.render(screendata, bullets[i].bitmap_frame); bullets[i].bitmap_frame = ((bullets[i].bitmap_frame + 1) % bullets[i].bitmap.total_frames); } else { bullets[i].hit_bitmap.x = bullets[i].bitmap.x; bullets[i].hit_bitmap.y = bullets[i].bitmap.y; bullets[i].hit_bitmap.render(screenfxdata, 0); }; if (((!(bullets[i].active)) || (!(onScreen(bullets[i].x, bullets[i].y, BULLET_DEATH_RANGE))))){ bullets.splice(i, 1); i--; }; i++; }; var _local6:int; i = 0; while (i < player_bullets.length) { player_bullets[i].main(); j = 0; while (j < encounters.length) { if (((((((encounters[j].has_collision) && (encounters[j].monster))) && (encounters[j].active))) && (player_bullets[i].active))){ if (encounters[j].collision_rect.intersects(player_bullets[i].collision_rect)){ if (player_bullets[i].type == Bullet.PLAYER_SPECIAL){ _local6 = 5; } else { if (player_bullets[i].type == Bullet.NAPALM){ if ((player_bullets[i].bitmap_frame % 3) == 0){ _local6 = 1; } else { _local6 = 0; }; } else { _local6 = 1; }; }; encounters[j].hit(_local6); if (player_bullets[i].type != Bullet.NAPALM){ player_bullets[i].active = false; player_bullets[i].resolve(encounters[j].collision_rect); }; }; }; j++; }; j = 0; while (j < lasers.length) { if (lasers[j].strength >= 1){ _local5 = 0; while (_local5 < lasers[j].collision_array.length) { if (lasers[j].collision_array[_local5].intersectsCircle(player_bullets[i].x, player_bullets[i].y, player_bullets[i].radius)){ player_bullets[i].active = false; }; _local5++; }; }; j++; }; if (player_bullets[i].active){ _local1 = (player_bullets[i].x * Tile.TILE_SCALE); _local2 = (player_bullets[i].y * Tile.TILE_SCALE); if ((((((((((((_local1 >= 0)) && ((_local2 >= 0)))) && ((_local1 < tile_width)))) && ((_local2 < tile_height)))) && (!((tile_map[_local2][_local1] == null))))) && (!((tile_map[_local2][_local1] is BlockTile))))){ player_bullets[i].active = false; if (player_bullets[i].type != Bullet.NAPALM){ player_bullets[i].resolve(tile_map[_local2][_local1].collision_rect); }; }; }; if (player_bullets[i].type != Bullet.NAPALM){ player_bullets[i].bitmap.render(screendata, player_bullets[i].bitmap_frame); } else { player_bullets[i].bitmap.render(screenfxdata, player_bullets[i].bitmap_frame); }; player_bullets[i].bitmap_frame = ((player_bullets[i].bitmap_frame + 1) % player_bullets[i].bitmap.total_frames); if ((((player_bullets[i].type == Bullet.NAPALM)) && ((player_bullets[i].bitmap_frame == (player_bullets[i].bitmap.total_frames - 1))))){ player_bullets[i].active = false; }; if (((!(player_bullets[i].active)) || (!(onScreen(player_bullets[i].x, player_bullets[i].y, 0))))){ if (((!(player_bullets[i].active)) && ((player_bullets[i].type == Bullet.PLAYER)))){ if (player_bullet_hit_frame == 1){ player_bullet_hit_frame = 2; _local7 = player_bullet_hit_bitmap1; } else { if (player_bullet_hit_frame == 2){ player_bullet_hit_frame = 3; _local7 = player_bullet_hit_bitmap2; } else { player_bullet_hit_frame = 1; _local7 = player_bullet_hit_bitmap3; }; }; _local7.x = player_bullets[i].bitmap.x; _local7.y = player_bullets[i].bitmap.y; _local7.render(screenfxdata, 0); } else { if (((!(player_bullets[i].active)) && ((player_bullets[i].type == Bullet.PLAYER_SPECIAL)))){ _local7 = magnet_bullet_hit_bitmap; _local7.x = player_bullets[i].bitmap.x; _local7.y = player_bullets[i].bitmap.y; _local7.render(screenfxdata, 0); }; }; player_bullets.splice(i, 1); i--; }; i++; }; } public function createBullet(_arg1:int, _arg2:int, _arg3:Number, _arg4:Number, _arg5:int, _arg6:Number):void{ var _local7:BitmapSprite; var _local8:BitmapSprite; if (!(((((_arg5 == Bullet.PLAYER)) || ((_arg5 == Bullet.PLAYER_SPECIAL)))) || ((_arg5 == Bullet.NAPALM)))){ if (!probe.magnet_blasting){ if (_arg5 == Bullet.SMALL_GREEN){ _local7 = small_green_bullet_bitmap; _local8 = small_green_bullet_hit_bitmap; if (small_shot_count <= 0){ small_shot_count = SMALL_SHOT_DELAY; NitromeGame.sound_manager.playSound("small_shot"); }; } else { if (_arg5 == Bullet.SMALL_RED){ _local7 = small_red_bullet_bitmap; _local8 = small_red_bullet_hit_bitmap; if (small_shot_count <= 0){ small_shot_count = SMALL_SHOT_DELAY; NitromeGame.sound_manager.playSound("small_shot"); }; } else { if (_arg5 == Bullet.SMALL_BLUE){ _local7 = small_blue_bullet_bitmap; _local8 = small_blue_bullet_hit_bitmap; if (small_shot_count <= 0){ small_shot_count = SMALL_SHOT_DELAY; NitromeGame.sound_manager.playSound("small_shot"); }; } else { if (_arg5 == Bullet.BIG){ _local7 = big_bullet_bitmap; _local8 = big_bullet_hit_bitmap; if (big_shot_count <= 0){ big_shot_count = BIG_SHOT_DELAY; NitromeGame.sound_manager.playSound("big_shot"); }; } else { if (_arg5 == Bullet.HOMING){ _local7 = homing_bullet_bitmap; _local8 = homing_bullet_hit_bitmap; if (homing_shot_count <= 0){ homing_shot_count = HOMING_SHOT_DELAY; NitromeGame.sound_manager.playSound("homing_shot"); }; }; }; }; }; }; bullets.push(new Bullet(_arg1, _arg2, _arg3, _arg4, _local7, _local8, _arg5, _arg6, this)); }; } else { if (_arg5 == Bullet.PLAYER){ _local7 = player_bullet_bitmap; if (player_shot_count <= 0){ player_shot_count = PLAYER_SHOT_DELAY; NitromeGame.sound_manager.playSound("player_shot"); }; } else { if (_arg5 == Bullet.PLAYER_SPECIAL){ _local7 = magnet_bullet_bitmap; if (player_shot_count <= 0){ player_shot_count = PLAYER_SHOT_DELAY; NitromeGame.sound_manager.playSound("player_shot"); }; } else { if (_arg5 == Bullet.NAPALM){ if ((frame_count % 2) == 0){ _local7 = napalm_bitmap1; } else { _local7 = napalm_bitmap2; }; }; }; }; player_bullets.push(new Bullet(_arg1, _arg2, _arg3, _arg4, _local7, null, _arg5, _arg6, this)); }; } public function cashConvertBullets():void{ var _local1:Number; var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:int; while (_local6 < bullets.length) { _local1 = bullets[_local6].x; _local2 = bullets[_local6].y; _local3 = bullets[_local6].vx; _local4 = bullets[_local6].vy; _local5 = bullets[_local6].speed; bullets[_local6] = new Bullet(_local1, _local2, _local3, _local4, cash_bullet_bitmap, cash_bullet_hit_bitmap, Bullet.CASH, _local5, this); _local6++; }; _local6 = 0; while (_local6 < encounters.length) { if (((encounters[_local6].monster) && (!((encounters[_local6].properties & Monster.NO_HIT))))){ encounters[_local6].properties = (encounters[_local6].properties | Monster.CAKE); encounters[_local6].kill(); }; _local6++; }; } public function createMonster(_arg1:Array, _arg2:Number, _arg3:Number, _arg4:Array):void{ var _local5:int = _arg1[0]; var _local6:MovieClip = new (scroller.tile_maker.class_names[_local5]); _local6.x = _arg2; _local6.y = _arg3; scroller.tile_layers[1].addChildAt(_local6, 0); var _local7:int; if ((((_local5 >= 22)) && ((_local5 <= 29)))){ _local7 = 1; } else { if (_local5 >= 30){ _local7 = 2; }; }; var _local8:Monster = new Monster(_arg1, _local6, _arg4, _local7, this); } private function updateFX():void{ i = 0; while (i < fx.length) { fx[i].main(); if (((!(fx[i].active)) || (!(onScreen(fx[i].x, fx[i].y, fx[i].bitmap.width))))){ fx.splice(i, 1); i--; }; i++; }; } public function addFX(_arg1:Number, _arg2:Number, _arg3:BitmapSprite):void{ fx.push(new FX(_arg1, _arg2, _arg3, this)); } private function updateSmokes():void{ i = 0; while (i < smokes.length) { smokes[i].main(); if (((!(smokes[i].active)) || (!(onScreen(smokes[i].x, smokes[i].y, 20))))){ smokes.splice(i, 1); i--; }; i++; }; } public function addSmoke(_arg1:Number, _arg2:Number):void{ var _local3:Smoke = new Smoke(_arg1, _arg2, this); smoke_angle = (smoke_angle + (70 + (Math.random() * 50))); smoke_angle = (smoke_angle % 360); _local3.addVelocity((Trig.cos[smoke_angle] * 5), (Trig.sin[smoke_angle] * 5)); smokes.push(_local3); } private function loadLevel():void{ decodeXML(new XML(Levels.levels[(NitromeGame.selected_level - 1)])); } private function loadXML(_arg1:Event):void{ var _local2:XML = new XML(_arg1.target.data); NitromeGame.last_loaded_path = levelPath(); NitromeGame.last_loaded_xml = _local2; decodeXML(_local2); } private function levelPath():String{ var _local1:String = ("" + NitromeGame.selected_level); if (NitromeGame.selected_level < 10){ _local1 = ("0" + NitromeGame.selected_level); }; var _local2 = "levels/"; var _local3 = ".xml"; var _local4:String = ((NitromeGame.getSwfPath() + _local2) + NitromeGame.getLevelName(NitromeGame.selected_level, _local3)); return (_local4); } public function decodeXML(_arg1:XML):void{ var _local4:int; var _local5:int; var _local6:XML; var _local9:String; var _local10:Array; var _local11:Array; var _local12:Array; var _local13:int; var _local14:Array; var _local15:*; var _local16:String; var _local17:int; var _local18:int; var _local19:int; var _local20:int; var _local2:Array = new Array(); var _local3:XML = _arg1.level[0]; scroller = new Scroller(this, canvas, tile_holder, scale, parseInt(_local3.@width), parseInt(_local3.@height), width, height); tile_map = new Array(); tile_width = Math.ceil((scroller.width * 0.5)); tile_height = Math.ceil((scroller.height * 0.5)); NitromeGame.timeline.background.gotoAndStop(("_" + _local3.@background_type)); NitromeGame.timeline.msg_panel.back.gotoAndStop(("_" + _local3.@background_type)); _local4 = 0; while (_local4 < tile_height) { tile_map.push(new Array()); _local5 = 0; while (_local5 < tile_width) { tile_map[_local4].push(null); _local5++; }; _local4++; }; scroller.scroll_x = false; start_x = parseInt(_local3.@start_x); start_y = parseInt(_local3.@start_y); level_scroll_speed = (0.5 * parseInt(_local3.@scroll_speed)); var _local7 = (_local3.@compression == "true"); var _local8:LZW = new LZW(); for each (_local6 in _arg1.tiles) { _local9 = ""; if (_local7){ _local9 = _local8.decompress(_local6.@values); } else { _local9 = _local6.@values; }; _local10 = _local9.split(","); _local11 = new Array(); i = 0; while (i < _local10.length) { if (_local10[i].indexOf(":") < 0){ _local13 = parseInt(_local10[i]); if (isNaN(parseInt(_local10[i]))){ _local11.push(formatPathCommands(_local10[i])); } else { _local11.push(_local13); }; } else { _local14 = _local10[i].split(":"); _local13 = parseInt(_local14[0]); if (isNaN(parseInt(_local14[0]))){ _local15 = formatPathCommands(_local10[i]); } else { _local15 = _local13; }; j = 0; while (j < parseInt(_local14[1])) { _local11.push(_local15); j++; }; }; i++; }; _local12 = new Array(); _local4 = 0; while (_local4 < scroller.height) { _local12.push(new Array()); _local5 = 0; while (_local5 < scroller.width) { _local12[_local4].push(_local11[(_local5 + (_local4 * scroller.width))]); _local5++; }; _local4++; }; scroller.addLayer(_local12); }; for each (_local6 in _arg1.sign) { _local16 = _local6.@text; _local17 = parseInt(_local6.@n); _local18 = parseInt(_local6.@layer); _local19 = parseInt(_local6.@width); _local20 = parseInt(_local6.@height); _local2.push({text:_local16, n:_local17, layer:_local18, width:_local19, height:_local20}); }; scroller.setSignage(_local2); start_msg = _arg1.msg[0].@text; block_map = scroller.map_array_layers[Scroller.BLOCK_LAYER]; scroller.rezBeginning(start_x, start_y); frame_count = 1; initPlayer(); addListeners(); NitromeGame.timeline.loading_clip.gotoAndPlay("fade_out"); if (_local3.@background_type == "0"){ NitromeGame.sound_manager.crossFade(SoundManager.GAME); } else { NitromeGame.sound_manager.playMusic(SoundManager.MENU); }; } public function formatPathCommands(_arg1:String):Array{ var _local6:Array; _arg1 = _arg1.replace(FORMAT_INSTRUCTIONS, "$1 "); _arg1 = _arg1.replace(TRIM_WHITESPACE, ""); var _local2:Array = new Array(); _local2 = _arg1.match(TURRET_COMMANDS); _arg1 = _arg1.replace(TURRET_COMMANDS_REPLACE, "T &"); var _local3:int; while (_arg1.search(ANDS) > -1) { var _temp1 = _local3; _local3 = (_local3 + 1); _arg1 = _arg1.replace(ANDS, ("" + _temp1)); }; do { _local6 = _arg1.match(SPAWN_COMMANDS); if (_local6 != null){ _local2 = _local2.concat(_local6); }; var _temp2 = _local3; _local3 = (_local3 + 1); _arg1 = _arg1.replace(SPAWN_COMMANDS_REPLACE, ("S " + _temp2)); } while (_local6 != null); var _local4:Array = createCommandList(_arg1); var _local5:int; while (_local5 < _local2.length) { _local2[_local5] = createCommandList(_local2[_local5]); _local5++; }; return ([_local4, _local2]); } public function createCommandList(_arg1:String):Array{ var _local6:int; var _local2:Array = new Array(); var _local3:Array = _arg1.match(SKIN_ID); _local2[Monster.ID] = ((_local3 == null)) ? 0 : parseInt(_local3[0]); var _local4:Array = _arg1.match(HEALTH_ID); _local2[Monster.HEALTH] = ((_local4 == null)) ? 0 : parseInt(_local4[0]); var _local5:Array = _arg1.match(PROPERTY_ID); _local2[Monster.PROPERTIES] = ((_local5 == null)) ? 0 : parseInt(_local5[0]); _arg1 = _arg1.replace(SKIN_ID_REPLACE, ""); _arg1 = _arg1.replace(HEALTH_ID_REPLACE, ""); _arg1 = _arg1.replace(PROPERTY_ID_REPLACE, ""); _arg1 = _arg1.replace(TRIM_WHITESPACE, ""); if (_arg1.length > 0){ if (_arg1.match(WAIT_COMMAND_CHECK) == null){ _arg1 = (_arg1 + " W 0"); }; _local2 = _local2.concat(_arg1.split(" ")); } else { _arg1 = "W 0"; _local2 = _local2.concat(_arg1.split(" ")); }; var _local7:int; while (_local7 < _local2.length) { _local6 = parseInt(_local2[_local7]); if (isFinite(_local2[_local7])){ _local2[_local7] = _local6; }; _local7++; }; return (_local2); } private function setBlocksInPlay():void{ var _local5:int; var _local6:Array; var _local7:Array; blocks_in_play = new Array(); var _local1:Array = block_map; var _local2:int; while (_local2 < scroller.height) { blocks_in_play[_local2] = new Array(); _local5 = 0; while (_local5 < scroller.width) { blocks_in_play[_local2].push(0); _local5++; }; _local2++; }; var _local3:Array = floodFillBlocksInPlay(_local1, start_x, start_y, scroller.width, scroller.height); var _local4:int; while (_local4 < (scroller.width * scroller.height)) { _local6 = new Array(); i = 0; while (i < _local3.length) { _local7 = floodFillBlocksInPlay(_local1, _local3[i].x, _local3[i].y, scroller.width, scroller.height); if (_local7.length > 0){ _local6 = _local6.concat(_local7); }; i++; }; _local3 = _local6; if (_local3.length == 0){ break; }; _local4++; }; } private function floodFillBlocksInPlay(_arg1:Array, _arg2:int, _arg3:int, _arg4:int, _arg5:int):Array{ var _local6:Array = new Array(); if (blocks_in_play[_arg3][_arg2] == EMPTY){ return (_local6); }; blocks_in_play[_arg3][_arg2] = EMPTY; if ((((((_arg3 > 0)) && (!(TileMaker.isBlock(_arg1[(_arg3 - 1)][_arg2]))))) && (!((blocks_in_play[(_arg3 - 1)][_arg2] == EMPTY))))){ _local6.push(new Dot(_arg2, (_arg3 - 1))); } else { if ((((_arg3 > 0)) && (TileMaker.isBlock(_arg1[(_arg3 - 1)][_arg2])))){ blocks_in_play[(_arg3 - 1)][_arg2] = IN_PLAY; }; }; if ((((((_arg2 < (_arg4 - 1))) && (!(TileMaker.isBlock(_arg1[_arg3][(_arg2 + 1)]))))) && (!((blocks_in_play[_arg3][(_arg2 + 1)] == EMPTY))))){ _local6.push(new Dot((_arg2 + 1), _arg3)); } else { if ((((_arg2 < (_arg4 - 1))) && (TileMaker.isBlock(_arg1[_arg3][(_arg2 + 1)])))){ blocks_in_play[_arg3][(_arg2 + 1)] = IN_PLAY; }; }; if ((((((_arg3 < (_arg5 - 1))) && (!(TileMaker.isBlock(_arg1[(_arg3 + 1)][_arg2]))))) && (!((blocks_in_play[(_arg3 + 1)][_arg2] == EMPTY))))){ _local6.push(new Dot(_arg2, (_arg3 + 1))); } else { if ((((_arg3 < (_arg5 - 1))) && (TileMaker.isBlock(_arg1[(_arg3 + 1)][_arg2])))){ blocks_in_play[(_arg3 + 1)][_arg2] = IN_PLAY; }; }; if ((((((_arg2 > 0)) && (!(TileMaker.isBlock(_arg1[_arg3][(_arg2 - 1)]))))) && (!((blocks_in_play[_arg3][(_arg2 - 1)] == EMPTY))))){ _local6.push(new Dot((_arg2 - 1), _arg3)); } else { if ((((_arg2 > 0)) && (TileMaker.isBlock(_arg1[_arg3][(_arg2 - 1)])))){ blocks_in_play[_arg3][(_arg2 - 1)] = IN_PLAY; }; }; if ((((((_arg2 < (_arg4 - 1))) && ((_arg3 > 0)))) && (TileMaker.isBlock(_arg1[(_arg3 - 1)][(_arg2 + 1)])))){ blocks_in_play[(_arg3 - 1)][(_arg2 + 1)] = IN_PLAY; }; if ((((((_arg2 < (_arg4 - 1))) && ((_arg3 < (_arg5 - 1))))) && (TileMaker.isBlock(_arg1[(_arg3 + 1)][(_arg2 + 1)])))){ blocks_in_play[(_arg3 + 1)][(_arg2 + 1)] = IN_PLAY; }; if ((((((_arg2 > 0)) && ((_arg3 < (_arg5 - 1))))) && (TileMaker.isBlock(_arg1[(_arg3 + 1)][(_arg2 - 1)])))){ blocks_in_play[(_arg3 + 1)][(_arg2 - 1)] = IN_PLAY; }; if ((((((_arg2 > 0)) && ((_arg3 > 0)))) && (TileMaker.isBlock(_arg1[(_arg3 - 1)][(_arg2 - 1)])))){ blocks_in_play[(_arg3 - 1)][(_arg2 - 1)] = IN_PLAY; }; return (_local6); } private function updateShaker():void{ if (shake_count > 0){ shaker.y = shake_array[shake_count]; if (++shake_count >= shake_array.length){ shaker.y = 0; shake_count = 0; }; }; } private function debugKey(_arg1:KeyboardEvent):void{ if (Key.isDown(Key.P)){ pauseGame(); }; if (Key.isDown(Key.H)){ pauseGame(true); }; } private function mouseDown(_arg1:MouseEvent):void{ mouse_pressed = true; } private function mouseUp(_arg1:MouseEvent):void{ mouse_pressed = false; } private function rightClick(_arg1:ContextMenuEvent):void{ right_pressed = true; mouse_pressed = false; } public function scoreString():String{ var _local1:String = Score.value.toString(); while (_local1.length < 10) { _local1 = ("0" + _local1); }; return (_local1); } } }//package
Section 191
//GameMusic (GameMusic) package { import flash.media.*; public dynamic class GameMusic extends Sound { } }//package
Section 192
//HelpMC1 (HelpMC1) package { import flash.display.*; public dynamic class HelpMC1 extends Sprite { } }//package
Section 193
//HelpMC2 (HelpMC2) package { import flash.display.*; public dynamic class HelpMC2 extends MovieClip { } }//package
Section 194
//HelpMC3 (HelpMC3) package { import flash.display.*; public dynamic class HelpMC3 extends Sprite { } }//package
Section 195
//HelpMC4 (HelpMC4) package { import flash.display.*; public dynamic class HelpMC4 extends MovieClip { } }//package
Section 196
//HelpMC5 (HelpMC5) package { import flash.display.*; public dynamic class HelpMC5 extends Sprite { } }//package
Section 197
//HelpTileFrontMC1 (HelpTileFrontMC1) package { import flash.display.*; public dynamic class HelpTileFrontMC1 extends MovieClip { } }//package
Section 198
//HelpTileFrontMC2 (HelpTileFrontMC2) package { import flash.display.*; public dynamic class HelpTileFrontMC2 extends MovieClip { } }//package
Section 199
//HelpTileFrontMC3 (HelpTileFrontMC3) package { import flash.display.*; public dynamic class HelpTileFrontMC3 extends MovieClip { } }//package
Section 200
//HelpTileMC1 (HelpTileMC1) package { import flash.display.*; public dynamic class HelpTileMC1 extends MovieClip { } }//package
Section 201
//HelpTileMC2 (HelpTileMC2) package { import flash.display.*; public dynamic class HelpTileMC2 extends MovieClip { } }//package
Section 202
//HelpTileMC3 (HelpTileMC3) package { import flash.display.*; public dynamic class HelpTileMC3 extends MovieClip { } }//package
Section 203
//HelpTileMC4 (HelpTileMC4) package { import flash.display.*; public dynamic class HelpTileMC4 extends MovieClip { } }//package
Section 204
//HelpTileMC5 (HelpTileMC5) package { import flash.display.*; public dynamic class HelpTileMC5 extends MovieClip { } }//package
Section 205
//HighScoreBoard (HighScoreBoard) package { import com.nitrome.highscore.*; public dynamic class HighScoreBoard extends HighScoreBoard { public function HighScoreBoard(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 206
//holder (holder) package { import flash.display.*; public dynamic class holder extends Sprite { } }//package
Section 207
//HomingBulletHitMC (HomingBulletHitMC) package { import flash.display.*; public dynamic class HomingBulletHitMC extends MovieClip { } }//package
Section 208
//HomingBulletMC (HomingBulletMC) package { import flash.display.*; public dynamic class HomingBulletMC extends MovieClip { } }//package
Section 209
//HorizTileMC (HorizTileMC) package { import flash.display.*; public dynamic class HorizTileMC extends MovieClip { } }//package
Section 210
//HotTileFrontMC (HotTileFrontMC) package { import flash.display.*; public dynamic class HotTileFrontMC extends MovieClip { } }//package
Section 211
//HotTileMC (HotTileMC) package { import flash.display.*; public dynamic class HotTileMC extends MovieClip { } }//package
Section 212
//InfoFont (InfoFont) package { import flash.text.*; public dynamic class InfoFont extends Font { } }//package
Section 213
//KillTileMC (KillTileMC) package { import flash.display.*; public dynamic class KillTileMC extends MovieClip { } }//package
Section 214
//LargeBangMC (LargeBangMC) package { import flash.display.*; public dynamic class LargeBangMC extends MovieClip { } }//package
Section 215
//LaserMC (LaserMC) package { import flash.display.*; public dynamic class LaserMC extends MovieClip { } }//package
Section 216
//LaserMC1 (LaserMC1) package { import flash.display.*; public dynamic class LaserMC1 extends MovieClip { } }//package
Section 217
//LetterButton (LetterButton) package { import com.nitrome.highscore.*; public dynamic class LetterButton extends LetterButton { public function LetterButton(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 218
//Levels (Levels) package { public class Levels { private static var level1:String = "<root><level width='32' height='231' start_x='16' start_y='228' background_type='0' compression='true' scroll_speed='2'/><tiles values='0:7456' id='0'/><tiles values='0:964,92,0ĊČĎċč:13ďčėđĐ:41ĊĉąĖĒąĕęğē47ęĔĢě45ħġĊĖĤĢĴıĜĪ9ĴĬijĨİ9Ġ:ĭēĥģĸĩīņĮŀłĶŅŏđłʼnĻŐľąįĸńĎřŜİŞĘŝ,ŢŢŇŁĨĺĐţşūšŬŤůŬģĜōēśŭŜ6šźŹŻŮĘŦœũſŽŠƆţżŸīř7Ųķ7ļĥ7ƉŕĎƍŅİ10ż:2İ7ĞƖơ,6Īĵ,7ŪƠĘƫŘĞƭƨƣƥƄƈƴŤƉŢƩƬƣƭĜĞĈƀķ6ķƷƶůƸŬ6ƔǂœČI3H4P2R90F2W18R27ǗǙǛĘǏǑǓǕǠǚǜǞǨǢĎǤǒǔǖǘǩǝǟdzǭ,ǯǦDzǡǪǶǽǣǐǰǧǷǾǬ8ĨǹȂǻȇǵȇȁǥDZȍǫȅȐȃǼǴȔȀǮȋȒȅȎȕȜȑȄǽȠțĜǎ21H1ǦǛǬ0ǜȰȈǮȪȬȮ8ȳRȳǣȶȭǔȯǷȱȻɂȴǹȾȸȺȼȵȫȿRɁǡɃɋɇɍɉɅɄɑɆIɈɀȹɗɓɛɕɝɊɅȽɢɏɞəɘǚȱɦȷɣɟɥɌɯɨɤəĨĖɡɴɐɬȲɲɔɻɩɽɫƚɚɜɵɱɷɳɎɼʅʄɭʋɖɪɠʇʍɒɿɺʌʂʎʔɧʖɾʊʀʚɶɽɮʣʉʥʑɰʓɲĜɹʕʛʗʡʙʒʃʝʁʤʅʦʵʜʘʰʹʐʢʼʲʩ˂ʫʶʾʞʱʠ˅ʴˇʽʳʿʨʺʪʈʬʊʮˆ˖ˈˑˊˀʆ˞˓ˁˎ˛ːˍ˒˗˧ˡ˩˔˚ʟʏˠʸˢ˱ʧˬˣ˨˜˪˲˶ȴĜĉǺǛȤșǿǩȖṔȘ́Ț̅Ȣǒ̈ȓ̄Ǹ̀ǜ̉ȆȡȊǥ̏ȟ̋Ǹƕŗ̡̟̞ļ4ƞ̠ķ̢ǁ̩̍̇̔̐ȏ̫̚ȥ̜ɚȋ̴̛̱̯̘̭̙̻̲̃̎̑̽Ņ79ɇɴ̉1Ġ͆Ɏ͈łȩ͇Ǭ͉Ƚ͐Ƿ͒ą2˿2͔ǡ͖͋Ȍ͕͎͞Ȟ͊͜ɛ͛ǚ͖Ɲ͙ͧ1͓ͦ͌͑ͯͤ͟͝͡Ͱ͠ē͚̂ͭͥ͘͢ͷ͵͗ͻ͍Ͷʹͨł15ǎ̵̷̗̀̓ͼ̖ȧ΋̿ΑȦ̹̬̌Ζ̳ĨȈƓƬƎƬļͅΟđƏ͊ƐĨƿɆǟŶƤƦƊŰƴ6άĎIJƳƮŗ:ŀDŽƸξžΦēμΪ,ͭƣͭζυƚĘ˭βƇŢͭŪψόϋĎƚͅιŧIJϚĔĞϜĢœσρƧ̨ĤɭǺͣΎțΙϩ̫̊͂ϭΒΘϨΛϯϬϵ̯ĜϷ̕Η̒ȝϸΏϿϼΜϰЀϫϴЃϯȨˮˋ˰ʻˏ˄˭ˤ˯ʷ˵˹В˸˦И˫З˷МКО˻Н˴˃ˌЛТРФАЦʐ˙ГЍЕХЎ˕ДˉШБСЖЩЏ˥иЪнЬпе˝зсму˺коɸЌ˟чажъцдѐфђгэ˳яюєќљ˼ћњѝѢЮЙыѣѠѨУѡѩџѫѪлѰѧѮѱѴѳЯўѸѤ8Č3Ɇ3ϘƝ,ҀĘѾ͹ΩΐЉ̸҉̮ЁΕҊȡĔΔ̺ІϳΌҕϾҏҍȧƚƟΨҟ΢παLJƬƉ7ҠƖœϞķφϔωϗҢ4οƅϊχϕυ0Ϙκĝ̦̪κͅϥҽϙŎĸͭŚňϢκņ̧ļ5Ğ̤šļČ4DŽě5ź҄Ď3Ʀ҂ӛ҅ҁӗ҃Ƹơ҂ҼӚƜӡ4ω҆΂Ӭţζ҂̡ϡ΃қϳͿΆϮҋӷϱϽʆͬϲ̒ӻҘӾ΀ϪӶӿӽ΅ӼЄλӊȵԈЄӴ̼ӺԐ϶ͳԋԖԂҐЇԚӵԁԕԔԅӹΏԝԓґ3ĉδ̪:6ƿƉǀϦŵϛӒԒ́ԡӸԀԄԸԉԏԢԹԊԃՀԛԇԾԼԵԆǭĔźԗՁԽԻԑՌՃԟՅՐԥԶԤԠ՘ՔԙՙԜ՝̌Ćκǃ̟θԬƿ͊գĤǞՇԣ՞՛ԷԘհՍլԿՎձ՚Տ՜կ̗ӲŅ͏ջծչղՒԺշցֆՄւոֈՓ֊ևՍŃźƕզƤɆ֓ԭƤԯҪӂκտ֎։֌օճՑԞ֢քՂ֥֨ԦҜȈ֤֣֫֠ՖՈ֦֩նֱ՟֍֪֡՗ȧ֭ԂǗ5W4ׁ̻4ʈׅ3ȄׅɄׁ36׊ׇׂW2ׄב׀ד׆Dz׋Ɂׁ19א׆ח͉נגןךזFׁ7פלבקסשדפחהǝƥױ5׫׭ΊנήՌח׃׬ɞ׈׳ױ׎؂״וװׁ͘؈ױמ؅םי؀ץؑW׫ׯגؓױ؋ײؙ؉׶7׸׺؃W׼ׯ׾ֿ؜؊ؚ׉؟؆׏ؙ׭׵د،؛כإؐصǚطב׭צؔחؘؔ׭ؽ؝Ȟ׋ؠ2׷ׁ׹גا؀͹İˤ؀جمخفذ؎،ج״نגغٙؒٛWـ؜׌ؗ٤ٟ״ؖ׵ًآٍؤחِ؜ةɧٕ٪٘٧ח؇زإش٢ט٤١ٻ؏ٟؿؖك٧م٭٭Ǫٌئٲ׸وׂْͻٸپ؀ٺىٚڙױڀڅضڃ٦ڜ٣ڞׁڤרת٪ڍػٮڐَ׻ڔӄ׿ثٹؖٽلٿٝڟڇعک؝ףڧ٥ډڬڮڎءأُڳةɴژںښڸرېڟڼڢۃڄڥؼ٤ۀ٨ڊظؔۇڮڏٰڑۋ׽͗ٓʇۏڋإӔے٤ڠۚ؍ۘ۝עھח۶ױ۟ؾۮڭځگۥڱإٴׅٶێڶۃۯػڹۭؠڮ۸؏ۺڦ۔ڨۅ܊ۿڡדۤۊڲۨƝ۪܈ׅٖۮڛڪW܍۠ە٭ܑםܓۛۃܯۼ׆ڌۢ܀ܜٱۧبIJڵܣڷ܌ۓ܎ܫܐڣؖۂܕۄػؚܳܙ۳ܸۦܞܻŃڗ܉݈܋ځܩ۽܏܀ܭǚܯ݂݇ܖ݊ۆ܀ۈٯܝ܄ی۩˚۬ܪ؄݀۱ۖڂ۵݆ݝܲݤܚڳ٨܁ݨٳݪݓٔݕݡׂܦ؝ݙܴڻܬ݅ػݠݮ݉ځ݋ܵݥۣۉܹݑّą5ͅށܾ܊ޅ٨އג۲ܧ۴݈ۙܧލݚױݷܘܶݹݏ܃ݾܟʯٷނގݗܚޡسݲޥރާہݶܗݖݍޤްڒٍݿ12ȱ' id='1'/><tiles values='0:3524,113,ą17ċčď:1071ēĎĐĎČĜ:2827' id='2'/><msg text='Feed cake to the cat for a megaburp. Use the owl to block bullets.'/></root>"; private static var level2:String = "<root><level width='32' height='280' start_x='16' start_y='278' background_type='1' compression='true' scroll_speed='2'/><tiles values='0:9024' id='0'/><tiles values='0:922,93,ą4Čċč:77ĊČ0ĖĒ45ęĘđą1Đėĝ:ĢĚ1ĝĤĦĠĜğ:10ĕğ,7ėįČ76čĤďĩij6ĕĠĸĉĞģĮ4Ĩij94Ē1ĭŌąīįĜİĺą2ĭĶ2ʼnĶňľģŀōČ68ĻŊŝŜŦŠŁķ,ŤŪŰĎũĞŐĆşűŷŅħĤ1ųŶŇųĩšąIJĶ9Ĥ2ĺI33H50PńįŌŧĻƃēĤƇƀľŵƚņģ4Ő,ơŸƛĮŽŹ,I4H4ƑR90F2W54R27ƲƴƶĒĉƫƭƯƱƳƵƷƹƻDžŹ:ŞƗġƣƢǀƮ2ưLjƶƸƺDŽƽŗƪƬǒǔǙdžǘƼŌƤźŲŮŬǎǥǜǁǓǃǣǗǕŵƿǝǂDzDZǠǏűNjƁƕǦƩijǥ:ĜǫƦŵĜIśH1ƑĻȉ1ȋȍĘȏȑńƪȊȌȖȔșĒȄƢŇĕțȒȗȐȜȓȘȣȢȚȨƒȞǻŞǾ,5ĨőȀƠƢǫȹȟŨNJřŦŵīȶȯĨȺĻɅĘȂĜĹĻ7ĜĘ7ƢĵǻȳŮťǿůɏĘȵƃļƊƌƎƐƒŌɘĩ7ȭŮƇǦȃʼnɀŮŖŮƢ6ɎŮƟȝȾǿȱĮɔɤijɋɏɳɐɌɵąɻɖƂʆƺĒţŁļƿȬǟ1WɦǸʑʓǃʑ2ƷƲʘǡʛWʙR18ʞʙȎʏʗʒǓLJFʕǮʤʚʬʟʝʱʠʢʯʦȥǶʱʓʫʭʐʲRʯʔˀʶʴŵƔɭɦȝɨȯʎʹʮʻʪǘʾʨʠ˂ʽ˄ʣˆʸȕʿʼ˓ʩʿ˖ˆ˃ʵ˚ʜ˜ș˞˒ʞʖ˂˗ˠ˦ʷąť6ɯ6ɱɳ6ŠɎNjˎ˝ʨ˟˭ːʜˁˤ˘˲˛ȧˏ˫˃ˮˤ˰˂˅˨̋̀̃̎̄ˀ̑ˤ̓ʲōťȂ˻Ǻą̢Ȃ3ƞƥʃɂǿɇ̣̮̦ƚɭIİ7ȑ34T(I0ǟ3ƵƵ)ƾƪ̴̶̸̺̼ǃ̾5̳̀͂ı̹̻̽̿ͅ5́Ǜ̵͎Ȍ̷͈͑Ʋ͚͉͔͖͊͌͗̈́͆͒Ƙ̡Č̰ƂŬȮɈȸͱɆͲͰͳͶǫ̋ĘƗͯȃɷǨˋɉ;ͻ̫΄ɹĶ̧ĊƝȲȴĥΉʊĴɚ΍ʉʄ͹̫ĥΕɜ̭ΚȟˉΑĸΑȰūͷ̯ʹ̣ȃƂȻƖɀIJɭŋƥΩĘ5ƒάΏήĎ;Ǿɫɴε̪ŊŵδȵΆǻ3ɊɯɍɌɑʃŭɽφʀωʊţʈΞͿɪĜβεέŠϒΏƗƌĴɧ6ɩżɁˊʄˌőţ˷˹Ɩνɭ4ɯϯȿμƖϪƖ˺·ƅ̩΀ϰŖΧςĠ0ŌȪ̍˘̛̝̏̅̅ʥ̕˪́ˬˑˢʰ̅̈ƷЊǐʧ̗Ѕ̙ˣГ˱Е˧̞ЌʺʾКБ̆Н̒РЋȤ̖АХ˕ВˀДʡЪЗ̌Ў̘ЦЈ˙˳ЬЍЙˠІ̇̚ОднЃиЯ˯фЩчИЮсЛбʠгЖ˩Уˡъ̐ь̜еї̙̂АаЧвхіТѠЏ˔ыШѝюзр̗ѣл̉̔ΗојѡѫћѭЉўѨЄёкќѾѯЭФ҂ѳ҄м̊ѸѩйҊѽҌ̔ҎҁѲѬѥэҍшѱѢҘєѦѿҕщ҉ҟʳ҅қя҈җѼҙѮҩѰѐҬЇҋѵСңҝѻҴҒҶЫҜҲҞҭҠҚҔҿҫӁһҮҨӅҪљҥӂҧғСѷӆӎҳуҼП҆пӀҺӘӊӒҾӍѺˡґӠҽж҇ӖӈӟӃүӌұӇӞМӧӚҰӪӤтӴӮӋҷӕӹђѤӼӡөӜӲӥҦ˥ӶӰӸѪԈӐԊцӷԆӫӳѓӑӨџҖӬӻԘԋӾӣԎӺԗԑѧҸӝԏӉԃԙ͸ԧԇԣԂԞԒӌȑʢԛԖԱԥҢӿԢԁѴԟӢԵ8ԷԩӭԲԦԼҐԉѕԻ2ՂՄ԰ԿԳԠӱԕՅԝԺюՏҤӗ՘ՌӛѹԽ҃әՓՁȌԶ՜ԜԤ՟ԓաՊԐլԴէՃթԸՒՈԡկԪՇѿӔչњջՙҩ՛ҹ՗իҡՠҏրՆւղPըօՑҵՀԅծ֋՞ֈփճՐԾ֓ե֕֊ӏցձԠքԨ֒դոՕԀգӵ֟ʦ֦ԯ֝֩Ս֫բӦԫְ֛֔յֆԹ֤Ӣֶպ֌׀ɀƇՉ֗ևӄֳּ֥֑֪֮ԍ׃֘׋զ֏մ׎ֹ֭֯Ҁֽ֨אՍֱՖןכבԔָ֬ռ՚׍֧׏ץֵג׉ֿ֙֎֐׭ךתխ֡՝׊ӯ׌ח֜׸֍Քױ֢ׄ״ӓΈ׈؆ה׾ׁ؅׼׳ו֠؁ש؃؏קַՋ؈ؘ֖،׽ӽ؝׻ժؒ؎ؔמ׮׹ԌؙדؠԄԚب؂ׅذיؖسםص؛ؓش׷ض؜اعհؿʊׇտ؟إءـؽغئؼֲزكظًقػُْؾٕԮףةؗيٌٗىَِٛٙ؋ؑշװجײ٨։ؕ٠دٖ٣ٍ٘ٱרٯԬįůΛΣٻ͵پΤͷκϗŗČƋՎİɡ̟ƪ3ڇ0ډƄǤΥ̭ȁΥڔټʹNj͹ϾĶ5ϹϦɺڞڛȝڡɷڙڀٿȅȷΣږڨژŞ̡ǬǞʨ36˃ڴ͍ǵ̙ڴڶϽǴǭʿڻ˘ڷ͗ڹۀڵۂڽڱјہˠۃ:ĉȂگdzɄˇƁǑʺǰʫǣڸڿǯDžǸۛɾɥΰĴɳɽۤʁǧijۗːۙǢljۄ۝ǷۚljϥΐΏΓΒϓ۹Ľ۫ۅ۞ǖ۴ǚۏۊۭ۟܂ŌϥįĨۼڥĜ˶Ÿ˸ܑۦ˼ܑەĤθνܚϺɪΡĒȡۿʞیܢۉ۬ۆڼۜڲܤܨαΌͫΰǼżƇکŻۧŸ۩ĴۨϏڭګ·̱Ϙܜ΄΃ۢζܱιţɱۤܒͺڜNJΈζƜΏɉ̮ɺϟϲԭݕڬΧܴϦ܊Œ3π΍ij5·ȲĶƨξĚŒ1ĕܐܝǽݍϿ΅ϊܞپݛŵǎƦڪϦȂݹȼݚͼݾܵݻݷŢļɬ݀ȵɒłΎĎƇͻŏމ΍ǍŒ4ޏʌړܛɸݿޚƩڃƘ݅ĐܗijŽȴ,ŽɚާİĻİɖͽݳŸޙ݁ιݵۏĨɘѷ݅2ޢōȈʏLj˶ԒƴݮįҀ˅߃ڵ߀ϽϗЃߊ߂W߄ޫЃ߇ߐ߉DŽߑɣŬśɕ޽ҕߎߔߑ߆˚߈̆߈ōߙܩۘ܇ۯ܃ھܪǠ۠۰߅܅ǟۮDzߩ܆܁߬ɱޮnjߚ޷߽޷ߚߴ܀ʳۛ۱߯߶ǹЀࠄ۳߻߸ߵ߫߷ͺޮݏdz޼Ѐ܏Ś޷Ͻ8ϡ' id='1'/><tiles values='0:7430,115,ąč93' id='2'/><msg text='Slide the blocks to clear a path'/></root>"; private static var level3:String = "<root><level width='32' height='274' start_x='15' start_y='269' background_type='0' compression='true' scroll_speed='2'/><tiles values='0:8768' id='0'/><tiles values='0:1668,92,ą21ċčą4đČĎ:ĐĒĘĕě0ĞĞĆ3Ġėğĥ:4ģ9ğą15ċĬĆ1ĖıĮİĘ109Ĥēġ1ĪĽĥľįĹ6Ę2įīĘŀĸŌĦı47ļĘĻłħ4ʼnĽ44Ęį6đąģşĘŒśĎľģI3H4P2RīF1W1ů270ŲŴĽŪŬŮŰŹųŵRŷƁŻĸğŽŭůűƂŶŸźŵŧƊſƍŻƄƐƎĸčłŦĭťŜĦēĢ,ƔƌƆƃƅƑżūƋƀƫƘƨƣĹƥƭƕƲƱƫƓƶƧưƪƚĭŜƞ,ǃDžơDŽLJdžŧNJğƞĨģnjĆƠNjơę3ŜIĐH1ſŹ2Ŵ8R18ǞǠĘņnjLjǔǧƥǚǜůǣǥǣRDzĊĔũǮǝFǟdzDZǻǦąǨLJ6ıǐǕņǙ1ǛſǾǼǡǵĜƜŁȓŧŖƣřȕȔƢșĜĻǎįȟǓąȠǕ5đǩǑȤǫǍljǕŘǪğȄŋȰ:ȪȱȅȴȯȟĠņȱȜȣȹȶȵċȿĠŒɀǎȺȥɄțɍ,ɇɃɉɂʼnɅłɐɂɊŧȲšĤȸłɛ:ȆĜɓġȘɈȮȶȰɪȻȨȭŝčȉȋůǵǢǤǿǣƓǹɳɷǡȍȀǭȊǯǴɼɵȐą9đɱʂɴɾɸƉɺʃȎʅɼɹʁǺʒʍǶ:8ȒŝœɎȖɕȚġĝħŕŁɞʩĜŎ:ʧŝŎɫɮȬʢʴʠȚĨđɐ1ŒţɜijƣĝɐĚʿĜĖʣʡʠıȞLJŗˆʵʟIJɪˍ,ĹǶ,ʽĆŕ˅˔0ʚĚĻĔˎʳąŒŊɜˈʟʤˢȴij˩˨˓ʺʼŠɡ˔ƒˡɏŇđ˄˷˯ˇʨŔ˒ˀ˫˽ȿˑǃ˓˕ɚ˳1˚˷̉ďĖ˛ħɦˮ˾ˏ˓̓ɝȳ˦˴̜ĪŐʬɦȵ˥Śʲ̗̖̕ɍʸġ˟̬̂ˢ̫̄ʶ̨Ť˪˜˖ƴɜǙ4H20Ʒź36ƹų͂Ňǭ̼̾̀̓ͅƿW͆ď͈̽̿ƽ͌̈́͏Ƚę͕͚̻͓͎͒͊͗͐͋͘͞͠ʬʥƳʮ̵̪̞ͩˮɞʷͭĭ̃ȗːͳ˙ͷ̰̌ͺȼ̴ŏ̤̅̅ͳ̧̪˭ˈ̱ͪːĿʀɲʑǠʓȎʕΎʌɶΒʏʖɻʘΖɿʊʗΐʙ˹ľ̶ͫħǸΙΏǽΜʎ΍ʋʄΡΘΔίΫ˖ΞΚΠδ̀Έ͸ͼ̹˵̮ħ̭̒ƣς˼̩΅ġʼ΃đ8ˠ,8˖8ɇϏȽķ˧ƣ΂ͬόįğ8˳ģ8ɋħϙ̶8ģɀʜͿ:Ϥ˓Ǥŧ7˖7ώ7ϓ˨ʚϬπͱȕϺʇϖĨϙɃ̓ʰijŠ˵ĬІŧijЇ̏˜κπχ̲ġͫΉ̅ͼ̘ʷЖЏɕĵĴ̛Ͳ͵ʞɭȫЁПľȢ̝σĸЧĪЩĭŢȸǩЗȳТϽǎ̰ͨɢȷ̵д̝КˣˬЀˁгǕʻ̶ɐйǒΥĽЄЉξĹˠ˴ζΩɽιαήΛʆέΟΪљьğЊЉĺϋċϟːΤŖ˳ĚђΕљѫγѭʐѬʔąϞ̯ъ΢ħΌѮјѳƤѻθʆϫϴ' id='1'/><tiles values='0:6790,114,ą895ċ16ď:13ĔĖą10ć' id='2'/><msg text='Use the lasers to kill the badguys'/></root>"; private static var level4:String = "<root><level width='32' height='281' start_x='15' start_y='279' background_type='1' compression='true' scroll_speed='2'/><tiles values='0:9056' id='0'/><tiles values='0:1732,44,ą21ċčą4đČĎ:ĐĒĘĕěďĖē:ĝėğĞ:39ĞĪĤĦ13īēİĘ37,9đąįķĘ15ĶĸħĿļľ106Ę8ĵĬŋıĤĆįŌĎIJĹŊōŖŒŎĮœœħľ9Ċ0ĶŠśşŒ9šĹŤŨŁťšőšŭŢijĺţűůŲąľů:ŞţŷűŭħŴŘŗŮƅŏśſŠƂŸęĩƁ3ƃďƏƋƑƍ2ƔųƗđIĉHŅ0P2S(I4H4ƢR0F2W12)ƤƦƨƪŧƭƯƱƳƧƩ2R18ƬƮưƲƥƼƪ27ǂƹ)ƹĘĵƐƒƎƍƖƁƘǔǒǗǑƍŚŷŻƙĹǒįŅ8ĘľƝ2Ɵ0ơƣdžƵƾNjDŽƻǯRƷǃƺǮƽƿǁƸDzǹLjNJǽƱǎũĬŧijĦńưȈǛƁǝġźġǠƌȎŐƅŜȓǕƋǚƕǙșȞǘƗȟȢȡƁŕƄȨƆȩƉȗŎǢǒȧŰŵȳŦȴȲȵȸȷȺȥƋȱȬȫǞȭġȯȤȍțȣǖɈɇƍčI25H2ǬƫF1W24Tƥ0ɔƮƾĽƸƾ3Njƾ45ɡR6ɤR7ɧɞǵɫŅɮɗƿɒɨĮɳɟ5ɱ6ɹǻɱ9ɾĐɫ2ɏɨɘʄ5ʂȁɯ28ɾɣɫ3ɠɯƑʒɦɡ)ɚI1R3ʘʕɣɨʓʐǫʇʏʇʌɴɏʂ4ʄʆʍŅɷʁɷǼɯ1ɽɷɻɷ3ɾưɱ0ɾǶɴɭɨɪɨʠɴʢʷɾɤ)ĘʎɅȝ˒ƚɉȼːȓɍɏɑɓƬɖɘʛɜɱʥˈɾˇɯ˅ɯ˃ɟˁɷɶʷʽʺɼʾʶɴ1ʴʱʯʭʉʋʄʨʕʦʕʔˊˋˊˉƱʛʝʟʐ̅ɢ̃ɢ́ʫ˿ʫʪƾʬʇʮʇʰʫʲʷ˸˶˵ɟʹˌɱ˱ʷ˯˶˭˪ɫ˩ɴ˧ɴ̇ʞˣɨˎːǥ˖Ɇ˘˗ąćȿąǐ˓Ŷɂɀ̓Ȫ͆Ŝ̀˕ȶŸ͌ű1͏Œ͏Ũ,͒͑Ņ͑0ǥȻŎ͉ǡǔ̾͠Ɂȩ:͝ȔƋ̽͢ȅɃ̻ęȑȌ́țͮšƴǺǀ˞ɗ4dzƽW0ˏȺĢ,ʹƪͷɘͺƢͼ;ę̷ͱĦɄǖͲ΁LJɟǼ˟͹ǿƮͽȹ΀΂ǰɕ͸ΆΘΉˑΏ΍ͬɏĪΜɿΞ΅ΗΈΚɍΒɔΕΠήď΋ːͲŬͰθΨαͶΫΖΜεɌΑǴ΄ρΒεΊƗιΎȽ̾ƈĬΩογέΙͿΰφπδϗϋȦ͡ͅϠͯ͊ǏĪ͎ȋš͕ϩ͗ϫ͓ŅĩȻƀ̹͋̿Ϣ͇ͩŜώϥͩĆͥȚȈŎΧϴŁЁŽϤͪμЃȖЉλЈďІ͞ǖ΁˛ɒ΃πˡɝ˶ˤɯ̱̯ƾ̭ƾ˫ƿ̪˶̨ɟ̦К˳ʵʀʂ̝ʫ̛̖̙ʍʊʩ˾ʥʒ̏ʞ̍ʞ̇ʚƥ̱̊ʖʣйʑʧ˽ʇдʍвЯЭЬЫɷ̣ЩʼʾЦУ˂̬˦ɫс̳ɯ̵ЅΦГɐЕΝΕИќˊњљɨРɰɷФɟѕɸ˲ѐ˴ю˹̚˻шчʍ̓̐и̌ʗɹоʜмҀузцеѺ̘˺ʇЮɟ̟ΓЪ̤ѓˮˀїѫѪМЛК̴ʙĦЂЍęѡ˜ЖѥɛЙɺʣѩˆјɨТɲҖҕҔʷёҒʳэѸҌҋʍ̕Rʎ҈̂҆ʕн̉҅ʣлʤҫжҊгѹʍаҿҏƿґΪҵʾʻ˰єҗүҮɯОRћʺҞɞˏџЃĊɎѢ˝ЗҨѧ̐˥ҭҙӝѮӛҳђӗя̞ҹӐӏʫщ̔ӌ̀ѿӈҁʙӆ̋ԅ҇Ӌ҉ҽ˼һӽҎѶ̠ғӸ˶ШѰӜ̫ӳӟҬ̀ӣѝҟӧҢөДӬҧIˢԠѨӱԝԜɴҰѯɵ̥ӘԕҷӻԒҺъԏԎԍѨԄʡԆӥԈсӉф̖̑ѽҿҾ̗ԻԺ̜ԓԷ˶ҶƿәԗӶʷԲТѬӠӢˌӤɗӦġҡЇңӪҥѤ͸ѦԫӰқӲ˨Ҙՙ՘՗ѳӹʷ̡ӔӼьԐӿѻ̒ӁˊфӉӅпӇՁԋԃԾ̖ՌԀбҍѷԸշԶՕԴҲղӴհկ̰ҜҪԡӥĭЋϷġϾǢ϶֦Ż֤͍ϳ͋͏ĸ͔Ϭ֯ϮְǤȹĦ֩Ɛ֧ϡϼַͧȾ֨Φύ׀ΥӨׁׄ׃ԤׅɋէѣΪԨԪ՟ԟծԮ֙ԛ̧֗֕ҴՓѵҸԹԑՎӎӍտԌӂԊӄ҂ՄӃցրՉվ̖֍ҿы̖ӑʃל֒Ѵյմחӵ֘˄Қ֛ҫլҩΉǙ׉̺׋ɓϔժӮ؁лНӞ԰ԚХטԖ̢כ֑ՐՏ֎Ҽԁ֊̲Հ̄ՂաרץתףעԽנןջ֐˶ӕοնؔƿԘԳ׻ו׽֚ɥ֜ՕՠƱϣЏׇ؆Ԧƪ؉ˠ؋אԬג̮؏Сؑԙӷɺ֓دحպײӾ׮׭ҿՊхפևצԇօԉٝإ։Ѽ٘Սʫױҿ׳ӓ˷ؖך׸Чճˬձطד׿בҝ֞աؾͭـƓҤ׌لəنٹوٷيԯٌصُؒ֔׷׶̖ؗӓʅٖҿׯljԂԿֈؠʣք҄١ڜٜښ٥סٗռٕםٓӺٯיٱ֖̩ٴП׾ع؀هΝ֟ũΤȮȤ؇كΔ؊ԩҩػٸڴٶڲ׼ٳگڮڭƿՔْҐٔ٪ڕ٧֋ڙѾڛɢփק٠Յ؟ۗڤبսڧےکېګٰؕزٲіۈɬڳӡغй̵ڹϏϼȏټǗڽҷ׎ۂՇԭڈהؐڋَӚ۩ʸٮۦجڨتڦۡ׬ئ̎שɢڞрܒʞՇۖՋԼ٨֏ؘڑӖڬرѲ׺ז܂܁ƾ՝۱ˍҟ۴ϻֺܯ̈́ͣϺϵȆţ͏ֳܹܶϮ0ϰֵ֪ϲե־֢ܱܰ͆ħ݂ͥͣ5đָŎ5șȉݐݎݒȐݔijͳقթمہӯ̲ۿܨًѭܥ܄׹ܢێո٭ۥۤ܌ږ٦ٚՈܗܖڠ̈ۜݲܘ؝ژ؛ؚמܞڪڐܡِڍʿ܃ݢٵ܀ڇխڅڷٻζ͟ȮݘӫҦۀ׏ފݞىݠډޅۉܤݥށذՒ܉ݽ܋ܜݺܚ؝ٛ٣ڡ̆ۛڟ۝ۘ؞ݸ֌ۓ٫Ցܠۨیܣڌݣޚۮظ۰ڵޕ۳Ϟƕ΍ސըβޓ۽غ؎ޙԱ۫޹ޞހ޶չݪڔۣ۔ަ۠ڣީۙءݴޭݶ׫ٙ٦ڗ٩ߖ܊ߔݿ޷ܢسރ޻՛ۯ՞߁ܬ߃ЀɃ߆׌χիڶޖވɩݡߎۊ۪܆ݧ޵״ݼݻۢ܎ߣܐݱؤܓެܕࠏࠎ٤ا؜ةޤࠈӒ޵ۏۍԵނѱ՚ݡܩ߀֝ɴ߂Σ߄ޏڀԧ߉ݝ؍ۯѬࠁޜۋݦ܈ߩޢݫ࠙ࠊࠗࠖ۟ߜкߞ҃ࠒ٢ܑࠍӀڥݭߗ޴׵Ԕڏ߬ߏࠢޙࠤۄۃࠧߴࠩ߶ļ֡Ŝȋۺ߈ݛޔࠦމۅއۇضޛ޺ޝڎޟߓݩߨߧ࠻܍࠽܏ࠕࡆࡅֆآݵࠓӊࡶࠌࠋߘʈؙࠛࡍޠࠞ܆߭ࠡڱ޽ۆ޿ࡕ۲ࡘηЎֹ݅Ŝĝ݀ϱ֬͐ϭֲ͖ܻ͚͌Ŏɦ࢔݄ࢥĦࢣř࡜Żࢨġ6֡:ࢮŜ6Ġ݊Ĵ' id='1'/><tiles values='0:3024,47,ą1465,1ĐĎ:9ċ8ė88ēČė3ĔĖą95ēĕĊĥ,50ĜĞċęąĢĩĜ91ģĪĘıė907' id='2'/><msg text='Buttons activate special powers! Don't press them too early!'/></root>"; private static var level5:String = "<root><level width='32' height='300' start_x='16' start_y='297' background_type='0' compression='true' scroll_speed='2'/><tiles values='0:9600' id='0'/><tiles values='0:1348,44,ą21ċčą4đČĎ:ĐĒĘĕěďĖē:ĝė0ĞĆ7ĞĦĝ9ĥą3,92ĘćİIJĥĬijĨ106Ę29ĵijįıĜ5,8ĽĥĤĩŋōēŌŏŎĎĩ8ŀĔđ8ġĚ8ņą1ņI33H50P18S(I22H8P2R0F2WŨ)Wťľņ8ĶęŘįďĨšţťŧũūŭůűRŨŴŶŸźĭĆįřľŘŝĢŘſśƂƛŇŚƙĜƜĘįƅŤŦŨŪŬŮŰŲƐŷ8ŹŻŞĨ8Ɵŭ,ƨƇƫƊƮƍƏŵƲƴƔŨơƘŇƚĝžljƸƤLjğNJǐǍǒǏŗǑƀǓďčƼƪƉƭƌŲǂƑƳƓijĽǕ:ƧŢƩƈƬƋƯųǃƒƵħŇƟnjƢǛƠǪƞǔǻŜǔƝƁłƻǭƽǠDZƍƱǵƔŀǞǯƿǢdzǥDžĹǙĊȑƾǡDzȍǦǶȐȈǟǰǀưǴȠƔIJȂǘǾȅǘĻĊąŀ6ſ1đȷſĝȱœŒŊġŀȾĩȹǐȼȿȽőɀŐɈœɄĮŀĸĮċʼnɓȽɔńŊɔ4ɗĶɕəɖœɑĢįɛɠɟķſņɘɞɬɥďIJ4ȪĥňĘĨɘǫ,3ȲŁąƷŖƕƻ26H32ƈRĬF1W2ŚƷɊ6đąȚʂʄʆŨʈŴʋʍľǼnjƝʁʃʅʇʉʛġLJǗęŠʕʣʘʥʌʧŽġʫʢʗ8ʙʊʰijŽƚĿʡʖʤʚʺŞƥǖǹŘȁƚĴŬʵˁʹʜƃŇȶȐʬʶʸʦœʩ1Ľˌˀʮ˂ːęčƗǖˊƧ˕ˎ˘ŞIJ˝ʭʷʯˡ1ˣȄǸȀĘ˜˨˟ˏ4ęƦ,5ĨȳǼ˛ʿˮ˗˃ˢ˒Ęŀ̀˷̅˖˰ġˣƹ˸ˍ˺˪Ćˣġ˧̖˯ˠʧƷNj˅ǚʩʾ˭̟̐ijˈɵ̏˩̈į̍̂Ȭʀ̧̮˱đ̵̗̈ş̱̊̂Ćȯęʔ̝̇˱ȫˉijˬ˹̞˻ľĊȮ˵ṷ̺̈̀˱ǩʐʒ̀Ǽ̦͋ͅʧ̣̕˞̘͌˲͑ǽ͈˫͓̈͢2͏ȶƄ̑͜˾ʩǺ̋,ʑ̪ʞͩ͟͝ij̓˶Şʴ͡ͼąʼȃʝ̹ͪ˱͏ˇǙȴ͘ȷ͚̓΂ͱͨ͐ͳ̫΄ͻΔ:Β̆Λǩ̢̤̽Ɵ1͊̈́Λͬ΍Ͷ͘˔Χ̩ɳΡǪ̼Έ΃:ŽΌ7̤́Ɣī˴ɷnj́Ňɻ8ρɴɇχɋɳŖς˙υȲƠ7ϋ7ɻϑœιɌψɂ8ĭ,ϓϖϒϏ4ņŋŬH1ȌʹΥ̇ϪǂʋϪ27˂ΥœϥϧȧϮŲʯϬϛϩŲϰϲɝϵϨϸϫǣϼЄϿϽϴŮ϶dzЄϺІЀRЉϸЋϦЃŷϹВϭЙГϱЊĥЂϷНАƎЇНДЙϘͶμĨϤЌИϪХМϯПЕСаУвЛЧеЀЖЍВгнϾжЪиЗкКϽЦВЩϳшсьуюцѐʁщЎФмѕпχĢɁʧɤ̒ѡȆĤɸIĻ7ЗĈTū1эF3źŹμϣѢĪѥŞѣĜѺʀѧ4ѾĴѧƧѪѬ4Ѯѩѱѳ5ѵŅĦ҃ѤҐѼĔ҂ҔѠғĦ҅0ѫϧѭѯҋѴWѶҙҀҖѹҥҒѧґ˾ѩҜ҇҉ѰǂҌҎĔѷѦҪѸҀҷϙҺɉϘǫɐɝɫӄӃɝɂɂӅɡӆӋƦɶӃdžɐƔŃſ3ӏżɼǫӗďɪӕӛʪәӖɼ,Ɇ˿κǝ2ţĕȒТʸƑ2ŹɱǨӡӟ2ӝӎәӶӴә1ͯӪϧȜйӮЙӱӓӦɍїɷӢɷӺԊӵӷĮӛӤ0ɻ̿ӨӿӬԂʉӯԅӳԎӹԐӚԠӻԌԡԋӇҿҽЫӈԩωĩԊɪԆτ˙συʼn˽ҮҝPҟҊŴҴijĥͷɒɢ3ŀϕĥϞՈϒκˬ҆Ҟ҈ҠԾѴĘ5čȾǷ՗ģԩ՘՛ԋԆՂ̴ՎԻՐҊҳҢϜŕԴύժķƔ5қԺԼҲϼҴң˙ϜՉϝϠǐ՗ӽωƠսЮ՝ɶԲώիɳԷՍүՏұdzԿŞՁ͘ŃӓՆջՊϖՌƻբղ֎Փ΄Ֆ՛վՙĠӀ֢փİ՟ΏհҰҠզҍնϊլŇֆխՔ֫֌֭մէշϖϔ֖ӁԮԬԫԭׂԪǘЯљтќьяЁԂ׊ьдхўјђЏ׋Јі׎׉ѓטШךрбыЄגОהӭאפфצРועЅѱיק׏םב׫׍סъװץ׸ёׯє׌נџ4˧לח׶ѝ׭ר׵ת؉з׮׺؀ײ؊״؇؍؁׳؆ћ؈ؘؚؔл؜ؓ؏؋ؖН׼؂ؐњؠؗآчةשئ׷بؤ؛جןўΜҜ' id='1'/><tiles values='0:9600' id='2'/><msg text='Smash those blocks into the badguys'/></root>"; private static var level6:String = "<root><level width='32' height='318' start_x='15' start_y='315' background_type='1' compression='true' scroll_speed='2'/><tiles values='0:10240' id='0'/><tiles values='0:1220,93,ą21ċčą4đČĎĒĎĆ7ęĊėĔĖ4ĘğĝĆčĤ9ĢĞē:ĕĝįğĦİēĥĮĨĪ:č106Ě1ġĚħĬĶĬĐĵđI24HĉP2R0F2W18RŕőœŕĚ2,ʼnŋōŏřŔŖŘŒŤŜŞŊŌ0ŎŐŧŕŗ8ţśďŪŠŭŢŰťųŻĚĢşŬŮŦŚŖŴ8ũƁšŲƇůƅƉūƋƄŤƎŨŶƊŹƌŻƕŵĭĊƘŮƍƓƝŝƠźƅƚƏƗƑƙƢŽƪ:ƥƬơƛƣƈĔŷƂŏƶƜƷƱƹƒƯƔƇƐŸƃǂűDŽƫdžƻLjƆžą5ĞĸĿĜƦƽƩƖƿǗƮNJǛƳƧƔƶDžƺǘǣƸǗƼǞƲnjǙljǐǟǭǪǰǬǥdzư4ƟǠǦǎǤƋǝǴǀƭƵǽNjǥȀǸȂLJƍǫȊǍȌȁǩǎƽǾƙǷǚ3ƈĩŁċĸĺ0Ʒĥ5įĿŝǓȜțĔĜĨĬȣȬſȫĴʼn1H1ƴœ6ǙĽǺȴȶǡȹƓȻŪȽȷWɀǂɂȳȵɅɇţɉĐɋȿȺĘɊȾƕɍŧɏɄɒɁɔɐɖɎɓȼɑɗɢɃɤɡɝīſĖȲɟɌɦɕɰɪɧɠəɱɯɜɈɞɛɥɴɲɺɎɼɨɷɿɹɾɻɣɶȸɸɽɩʉŇȢijģĴȯɫǑʑĤʀʈʂʊɳʐʛʏʝɵʟʣʡʅʠʇʢəʃʋɆʍʄʌʆʎʨʦʪʵʬʗĭɭʭʥʹʤʁʿʧʲʩʴ˄ʶˆʯʳʱˊ˅ˌɘȸʽˁˑʞ˓Ɇ˒ʜʿıĶȞį4ȣĊ˟Ęˢˡˠ,ˤ˧˦ķȰ˞˦˨˯ˮ˱ʔſȣ6Ĝďđ7Ȧʻ,69ĚȣI3ŋ1ǹŎ̂Ƚ0ŹW8S(ʼnˌćXŔ2̎̐ȾW0))̖̌2ɤ15Ű2̓ć̞ɑ̛̙̝̟̏ɖ3Ŵ̧̤̘̜̬̔̍̚ɤ˟̸̴̷̣̥̪̗̕Ů6̰̼̳Ŏ̶̩͇ŏ7̢Ś̵̱̦͈̫̾͂ŏ9̲͒ͅœ͔̭́ƃ0͎͉͕̔͆͛͟ƻĉ̻͚͖̠ͦ͞3̒ͬͨͮ͋͢ŗǒͫ͑ͭ͝ͷ16Ͳ͐̽ͼ̀;Lj΂͋Ͷ͛ŗ9΁ͤ΄͊΋Đ͙ͻ͵ͽΒ2Ύʹ̨Η͖RŊΔ΃Ζ΅Β5ΚΕΜΤΞ27ΡΉΝͨΟ8Χ΢ΩΑΞ̯ήͥΰɤ3̡ͺε̿ηα3̯πίΪτ̺͏ΏΣ)̓Ċą̡,˺ɬ˽˷Ʊđ6ƾĮ˾ŜϚϜϚ˿˸ϔ˻ϝϘņϕĠ˽ϣϙ˽ϡϗϟϥϖϞϤϛϴϭņϷϫ˶ϲϻƱǖ̃ȵ̆2̈ȵ͈̊ͯʮͳΨς̠ͧδψσνκΐЏɖϋͣΛЎЊ̓ЕώЗŮ͍χλωɤ͘ФЖНƻ͡ЩРЫŗͪόЛ͓Цɖ1ͱЮζСƻ͹гЍеГз΀кМΆПла1΍хсмΟĻэ͜жŮĈБХтѕǹђΊΫΦќμɖάшцΒγѠєŏιѨљѪοпρюаυѤѲͷ̃їΐϐľčϽϤϪ˼ѾϮҀńˣ˲˥҆҉҈ҋ˩Ҋҍʺϧ˘ʫ˔ˀ˙Ҕ˃ˍˈˏʰʮː˗˕ҖҟҕғҢҘҞɚқˋҝɦϿґ϶ϰ҂Ϻϰʖʓʞǯˇ˂ɯҷҙҹɄһҧʽҿɦҴʖ˼΍ģ˪ˠIJӇĞӉϖέ˳ӍѼċ˦ӐҐʼʗӔӓӌҵ˼7đĊӟӈӁǏҸ˔:˿ɲӂɴӜӢӡӠĆƈҘ̯RШœӴƓӴѣŧ̯ſҕӹ0ӵţӴԃԁӻӷϑěӚӒԌʤӫʉĹԋԋԑӪӥҼҔӜԙӊĶӎԍԕҡȻԑԚȜԟҤɂԣԌ:ǒңӼԆέԭǙӴӶWӽǨʇԀΟԯԈƕԲԅľ1ȫԝӨԒӌĭ˿ԨՃՈ̯ĖԝԎԖӀҶՏӃՍԨՎԠҒʸԘՂˢԥՙҥҺՒɪՃ՝Ӧ՟ҾաԐŊՌӣąՇՂ̡ҠԅԂ԰ԸԇԴԉƀԷǂԽ԰ղնԵЀՄӊĉԬԻԳӸջԮԾԶɽԸևԁվԺշľձ԰֏Ա֊ԭӾʛ֎ղ֑֋ĆիԩȮՂ֤լĭ֦ԩչˉӺ֒ֈղ֏֛պ֟ս֖֠ħ՛֫ˌ֭ղ֚֝֌̠։Թֶֿ֞Ć֕Իտԁ־Ԉֲ֍ׂ׊Լԁֱϒ՜ʇԳűնŵҕטŖךƾƲɽם׃ǐלƍןľĽՕՈծլւľǖחק֒כʛףרƫע׳NJצƛ׸ĆĢĿϑ,؂Ę؅ĊĻȡՅ׭؈ć؆Ļ؏؃؇Ć́ײ׾״ȡ׶׻ȑؖƨ׸׽؞ؘľĢĤ6Ī˽ا6ʕӊ،˽ɂئĘذϒױ׺ؗ׼ؚض؜صءط؝Ɣ׿7өŋ4ŮЙΙפƨи͢ه؟Iكمً5وǢйœٌآƟُŏنْןŗٕWٗطٚRٜٓűيŧ٢ץَHلّٛ٧ť٠٫ƪŞ٤٦ٞ٩ٖٝ٘ٷٮِ٪ٽƢٴڃ٬ٸٱٺڅٲɔڈڂٲٟډپ٭ٯ٥ڒڄڗڇڀٰڏڊڙٶڔځټڐٻ١چڠڎڣڞڝ٘ĹقڛږڬژڲښڕٹؘڑڴڨڰڷڳڪړکڦڤڋٍہٵٔڟƖٿڶۉ٨ۄۀڼۍٳےڍۑںۈۗ׵ۆڧۘڿ٣ۖ۞Ƶۏ۟یۙۓۦەۥۡىۣڵڢۂګ۫Șگ۪۰ڸڥۇۚ۠۶ھۼۮڜ۲ێ۔ٙۻ۹ۧ܁ؙۛۃ܃ۋۯ܆ڹ܈۩܎ۜ܂ۨ܄۵܏۸ܔ܉܅ܛܐ۾ڻܘܞܚڌܗܓ܋ܖ܍܀ܠ۝ܬۺܢܨܑą3۴ܧ۱ܮܜܷܰ܆ܒܫܙۭܡܶ۷݀ۊڡܾܣ݄ܯ݂۽ܼܦܱܸ݇ܽڱ܈ܟݍܪݓܸݕܛݒڽۢ܌݆ݘܿݟ܊ܻݛݎݡ݈܃ڮݗݝ۬ݣܝݐݖݠݭܭݲݤ݃ݯܺݸܩݳےݚܥݬݾܤۅݰݥހݽۦݿބݺ݌ݦށމރېތݞݼݷލܥݫވݔޑۤ݋ޔܲޏޛܹ݉ޞݮޕޅݻޠޚݙޜۿݨݱގޫݢާޓަުޖޟݑݧݴܕ޷ިޗދޥݵݦޙ޸޶޺ޡެޣݜނߋ޻ߍݹ߂޽߈޲ݩ޴ߒ܇ߔ߆߃އߛߓݶ޿޹ߠ޵ߜ߁ݏކߦޯߨڭĉչnjT̏1ƚ3ԴԴ߳ߵ3)߰I߲őߴ߿ů߿Դߺ߱פࠂ3ࠆ߸ࠄ߼ճࠇࠍࠊأȎ߻߲Ŧࠎࠕࠊࠓࠁ߸ࠚ߿ࠋ߲ӻࠎࠠ࠘ࠅШࠎࠥࠐą8ؤʕࠬӑԪĜ؉ӑȤ؎ϤƦ࠙ࠗࠀ࠸ࠃ࠙߾ࠛ࠽ࠝ࠙ࠢࠀࡂ࠻ࠤ࠿߶ࠧࠝࠑ࠶ࠅ࠺ࠈࡎࠞࠜ߶ࡇ߹ࡁԯࠡࡗࠣࠌࡉࡈࡔ)Ŝ0Ģ7اࡣĘࡥӡࡤȭϔɂࡧϔࡤ࡯ϴ˦΀رࡲ˪ࡪإࡵࡴࡺϒ͡ŞĻ7ٮȶ̃࠼Fࠀ࠿ࡒࠇ߸ࢊࠇࡑ࠸߷ࡏŽࢉ࢒ࢋࠨƱƥࡿࢁPࢃࠅࢇ࢝ࢅ࢔࢓࢒ࢍ࢑߶ࢎࡎࢠࢨ߹ſә˫ϒŀܳӝ҅ʺՀӝĻ́࢘ĕ࢚4ࢄࢆ࢟ࠈࡔࢩࢠࢣࢇࢦࢤࢡࣁࢪďࢗ0ࢀࢹ࢛ࠌ࢞ࢽࣇ࣓ࡅࠌࣅࣄࣆࣈࣂࢫİǔȮ˝˛ӘϮıΙƲ3ٮŹ߻ЅŏΓŧ4Ό࣯͢ƓࣲфœࣲоWࣱࣴǙࣲьࣶࠋ࣫RѴ࣮ंЙ࣯ţࣷऄφࣶ͸ऄईअࣱ࡟ࡼȚǔՇĸĉױࣧЄ࣪ʼnѐएыࣻࣳŗࣹࣵ͸टतࣲǂࣽऑजѪऋथѸऎऄѯरटࣻएऱࣿϟखľ़ࡼȫ˝࡭ूࡪ7࡬ࡰȧȪب࠲ت̀خोĸˢӅࢴϪϔӰ4č߼࣌ࣨࢺ࣪࢏फ़ࢧࣔࡕ̬ࠜ।ࣀॡऒԊӅࢲĥ॓Ȧॕſक़ࢸŭ࣏ȏࢾय़ࣙॡࣕź࣒ࡓࢾࣚࡊسϳӯϖ॒ȱ࠮ॗࡾग़̆ॴॷࣘ०ࣈऀ॥ॶএ࣓२७ࡦॖӘ६Ĝ॔Ӯĭॱঊॳࢻॣࣗॶॠঐढ़࣑ॽॹࢌװࢱচıগঃĔঠ࣍ঢढ़থ࠹ॸॿ঑পࢿॾবখজ८ঞ५঱আҐ঵ज़ঌহࢥ঻१঩ও৒ব࢕ল९ϫ͍ࡦĬ৖৅র৛ৈʑӮϱঁঝঙৗৣԊ৥঄࠭ঁ४˹Ӡ২ড়০ৢ҂৲ӏৰেįঢ়įौঁ6ԧŃγ' id='1'/><tiles values='0:1996,47,ą5ċčą3569,11ĒĆėęě94ėČĎđĎ:3Ė5' id='2'/><msg text='remember to use the owl to wipe away those bullets '/></root>"; private static var level7:String = "<root><level width='31' height='217' start_x='14' start_y='214' background_type='1' compression='true' scroll_speed='4'/><tiles values='0:4727,I98H100PĊą19ė' id='0'/><tiles values='0:4349,I105H250P26T(I3R180F3WĚ165ğġěĒĦĢ3ĥĠĢ2ĞĮěĎĪR9ıħ7ĭħ6ĸĚ4ĻĚ3ľĨĵńĈŁR3Ńĵ31ʼnŃń28ʼn27Œ5ŕ4Œđĵ2čĵ19Ł),ą11ċčďđēĕėęRńŏōńŀĵĽĵĺĵķšĴIJ1İšĬšĩƀĤšĝšţŞŠIJ2ŝƏśŞřŞŗŞŔŵŇŴIJŋŇŷĮťąş0Ū04ĐĒĔĖĘ1ŲĦ2ŅĠƱŌƳRƠWƱŹƶŻƶŽƶūưěƂǀƄǀƆƹěƈǀƊǀNjljŏĸƱ1džǐDŽǐſljƿljƽljƻljƸƴǒƲƹƢĆ52ċ2H1ĔƯ6WĒǯW0ěƊǰĒŦĆǪǬǮĞǸǵǿǴǶȂǹą4ǼǭƱȅȁFǰǵĜȌǺ3Ǫ1ǽǓǷDZȍȏdzȆǻIşȗȄȎȚdzțȚǺȈȠȖȊȣȀȦȝƥą6ȉǾȤDzȂȐșȞȪǫȭȌȰȑȷȲȟȾȶȯȹȮȨąȔȫȢɂɈȤȧȼȕɏȻȧɓɄȽȬǮɐȥɉȒȳȵȋɃɁɗȩɣȱɦɡɅȢɀɉɞȞɍȡȭɱɘȱɨɎɵɗȰɬɛɖɯɒɸɢȠɮɥɰɧȇɩʁȜɶɹɆɤɑʍʉ:ɳɜȘʌȃɾɕɻʙəʏʗɊȸʂɬȴʅȿʇʂʎʊʧɇɟʪʔȽʆʒȃʫʕʜɝɼɠɃʠʀʩȜʛɺʹʞʃ:ʦʐɪʈˁˈ˄ʶʲʨʴȺɬʖʾˑ˅ɿʝʿʚʼʬɴ˃˚ʟʄˌˠʢɚʋˤˎ˧˖ʶ˔˙˖ˋʡɶɽ˜Ʌ˱ʺʤ˴ˇʳʯʓˋ˻ʣ˽˴ˏʮ̀ʵʔ˭˟˯̂ʸʘˤ˰˕˼˛ȀǺ˺ː̑˒̋ʭʑ̗˥ʏ˿ɷˬ̌˥˳̓˝˶˄̏ˮ̜ʥ˪̜˩̚ˉʰ˾̖̘̥̅ʷ˂̷̍̊˘̫̙̉˞̷̺̠̿̄̕ʱ̵̭̝˝̟ɫ˴̧̩̈͂͊̾͒̀̎˹͉͇̳͎̼͚͆͞ɋ̸̣́ʻ̹ͥ͟˸ͧͤ˲̛̯ͦ͊͢ͅˣ˫͈̰ˍ̢̇ͭͪ̽͑͢ɷ͓Ϳ̤ͯ͠ˊ͍̀ΆͫΈ̲͏ͺ˷ˀ͖͕̻̐ͫ͗΄ͷ˨Ͷʹ̮Κ΋̷́͐ͩΐΔΒ΀Α̪ΓΗΛͲΝ̴͛·ή͡ɲΎ̨Χ͔ΦΤΨθΪΞ̆͜ͱίΊαΉ͢ΡͻΣͽδ͘ιη΃ȞͰ̱ΟωΘ͵οϑξ΍ͨχ̒ϓͬΏϜɔϚϟˡˆ΅Ός͝τϡΫρυϊΖϫἘϝϲΩϏϦϒϫν̶ϝϻ͋ͣϵλϱΥώ˦Ϣε̈́ϸϘϨπβІϬЎȓϯϳЃκЅʽЖͮϷϔΜϖ͸ОΙ˓Г϶ЏЁЗ̦ЄКɄϐПΰϩϧϽσаγЇϋϴЩͼЕύЪ̔ЊϼϺвϹЏϾ̡еϰХиψк΂мˢфέЯт̞сЋϮцДшЙйљлћнМάРϕЮЍϪɄφϣ˗УЂќьўąķ2' id='1'/><tiles values='0:6727' id='2'/><msg text='Destroy King Meka! (Find the safe spot!)'/></root>"; private static var level8:String = "<root><level width='32' height='232' start_x='15' start_y='230' background_type='0' compression='true' scroll_speed='2'/><tiles values='0:7424' id='0'/><tiles values='0:1026,90,ą23ċčąć5ċ2ĎėĎĆ7Ěč9Ęą41ĞĒě1ĖČěđĠěģĞ:ĖćĊĔĩġ:į78ę79ļĝĔđ8ē,ĺļľĢĘI2H1PķĘ44ęŒŔœčŕŘŗ,řŜśř:đŋōŏĮŊŌŎŐŞěŧ4H20ŏT(I0R1ŃF5W2ŷ65źżŷ50ƁŽ13ƀŻƇŰƆŷ0ƊƂČƎ7ƑŽ6ƅƋR4ƖR3ƙƂĨƎƠ2)ųI1RƤƃƎƟƎƜƎƘƔƝƓƚĕƎ1ƍƶƉƸƄƸſƸŹƋ)ěĻŋŮŰŲŴŶŸƫ1ǀƶƾƻƝƹǎƐƎƵƂƕƱƫưƚƮǑƣƆƦŴƩǎƝǠƂǞƂƲƚǛƚǙƇǗƶƺơƼǑǎǐơǂżDŽŚī,ţũŦȁŨťďūĢȅLjű2ƧnjǼƇǺƇǒǶǔǵDzƴƫǯǬǝǨǧǢǃƧǦƽƭȞǜƳǘǖȗǎǷơȕȒǔȑǾĸȋůȍȏŷȑžǔȰŷȮƌȫȪȩƚǭǪȟȥƚƤǤƨƪɉƂǩŽǫƗțȚƸdzơȘȿȽǹȲɋȀŠŢȆķ4ŧŤŪŠƈȉšȅɧĮĤĭğġĥƨ07HģP34ƧƇŹ4Ɏ4WʀƅʀǍFʂʆɿʁʃʍʉȴćȁćɷɹɻɽȺʅʌʄʈʘʈʃʝʛʉʎʃDŽɱĥɱĆĖŋ1ɮčʫʭȅʬȃȈʯʳʱʰʵȇĆœʦĪąđ5đʿĦ˃ˁȀʾɬʨįʨ2ɰɤɢʲȇʷʶŝ˕ş˗ŖŬ˓˒ʹɤœ˝ęˠʮˍʸɣˡ˦ʴ˨ɭʶˢ˛ɳˢĸ˟ˤˬ˳˜˵˯˪Ȃʺɦ˴˥ˑ˸˿˧́ʼnȉ̅ʽķľ̇˙ǿĢĝʽĤ˃9̐ˉķƄȁƟH5ũȏŵR27ƅŽ̡RƓɾ̡ʟ28ƀȔFș̭ŷ9̫ʟƟ̣ƮɁ̯ˍ̧ʀ3Ƣɒ̫ɛ̸2̶̲̻RƲỤ̏24̺ƞưŽǛȱ̸5̓ȴ6Ċ˝̤ƅ3Wʦ˖̋ɫŧ˿͙F͛ˌˣ͢Ɠͥķʑͩ͘͜ŐͧɧͣͪħͱũͳͯŬͶŏ͸ʨͬ˷ͽͰˮ΁͵΃ͮͦΆ͚͹ĔͻŽ·΂ͭΊˊȶljȎNjʝƶȓƃȭȬɗɖǮƝɆ̾Ȧɏ̢ǣȣɎǡǟȧɅɕɃƶɘ̷Ǔƽɝǁɟąʪ΀ΏͺΉͤ΋Ć΍΄ďρλ̌̅͞˩ͨΒ̕œŠĖώĝώɫ5ϑŗıϓϕěϏϖϔϓɫ4ľψχ˘θϣ͟ψĸɰ̓ϙč̚ɠśI33̙ȸŴ3̞̠ξŽ2͂Ϻʝ͛ƇƼЀ͸ΣЃΊŽ̼ƀЀǽˇ̓ϮϒŠϠ,8Ĵ:ϬϦ̌ЖГňϩГϰ˷Ϛˮě͗Рϥˠ̪ɯİˍİˋŐˎЩ8ЮГ˂Н8ϰʓɸŎʖŴ̦ʜʅʟʙʇʉʠʚʣ4ʐľШĢĤбŬьдįжμɵʔкɼмфпʡʠʟтхʢчГĖыЪЯѤʦєйɺїŋљʞћтѝʋњцшЬьв8ѐьϖŰʒɶѪлѭўњʁќʊʙѴѠDŽъеѹѻОˡиʕѬнʡрʜѱ҈оѯѵħщѣНˌѦҢΐғіʗ҄ѯ҆ҚѮѠʎʥɤѸюгазҀҔҩѳҫсɿѲ҉ҝҋҟѢаҏЩ7ŀИɫĨГēҥęćĻğ˂ϓϡϤ͠ФϳɹΖƨɌƩ̥ơǗ2ǚ̷̲ӣɔ̭ǽȹʇӧɎӭǏӥƬӯƾӭ̶ȖөΣӧȴѾŋӚ̛ǥӞͣӯӢӤӸŷƍӭ͇ӪΗӬƂ̧͑ӳԆĨԏƞԔƈӱ͎ЌσĶęʨ̉ɳˊЗ̊φϢŝԣϟđϢѩӛҺӀуҽ҅Ҫүʏ˚ˠ5ķˀԸТʴҧNJ҃һԯҙҾқҗԳDŽϨ3̉ӎĬ˯ԽӜҖʚҬՃҮцʤԵХ:dž՘ŊՎԭҜՁՄҿ՟Օѡʽӎ4ԩӗԥժլ̋ĸՌϧϤ:ӖձԝҲѿѕԾՐ҅԰ҫԲդȴϛěմϥˊҤւԤխЙ͗՝јտѰՓ֏ҞʿĻ̒ŬĬ̓ĕċ̓ĬՋ,Ϯ˅֜˄ˉ֙ɶūΑξĭŕ֨ʹ֫κϋ֧֯֩ő˲ϊֱֳֵֶ֭Ͳλֹ֮͹־ְּׁͷֻֽׅ׃ׇͼυıɲնŬФȌԾȐεǸƸɀԇɂǰήέƯɈΪԎΧǥΩȯΤƚɓ͆לƒךəΜδƿɞǣDžΔϵ̝ʇΙɜחΝΰΟԅםקןץɊעɍȠΫמȨΠίӡ׻ӷז׸ζײĔФ˥ؕ˽ؗťˈɢؖ˶؜˸ʭĆӌˈϝիСإĢքȵԫӿԿԮҘաՄџҰ֣Ţ֍حգ֐ԱՀրϯĮةɪБةԜ׎ϥفӋթҴLJȷͼʇЀ8Ɏ͛ƘϿżٍُʃ՗גнَِWْٖ̩ٓѽ״ٌŹٛΊٞ٥ٔ١ҴɩوĢكشٱ֠ˉؚ֞ѷѥٷʨЗاК;ĤIŮ4׋ΊǏٜ76ϸڄڈٖڇԵځ٤ڄΎڊچڈ̟ړٖ6ѽĊ;ˣגŸٓ٠٧הϺٕ٩ϖʑֆĥ3ӒĜ,ګ׏ѧԠڲڰɴ՛Тԧڸշԣɬѩćű҂ڒʞ7ͣʂۃƓۅW7ۉۉǾڵ̃:͡ɮˌոō0ڿҕۄۉۙۆпۊ۞ی˚ڻЭփԻېۥ֕ںвٺģ' id='1'/><tiles values='0:4360,49,ą3063' id='2'/><msg text='Make cover with the sliding blocks'/></root>"; private static var level9:String = "<root><level width='32' height='320' start_x='15' start_y='318' background_type='1' compression='true' scroll_speed='2'/><tiles values='0:10240' id='0'/><tiles values='0:1220,44,ĊČĎċčďē:9ĒđĐĔęĕ41,7ēĠĢ93ĜĎĖĘĊĥđġĭĝğ9ĕĦĬą1ĴĦīĕ17,106Ĩ2ėĵĆĸĨ45,IJĨŇīĹ,I4H4P2R90F1W24R27ŚŜŞđŒŔŖŘţŝşšūťą2őœŕŗřśŬŠŢŸŰųŨŶůŭŻŤčĵŋŐŌą4Ľ6ŊŏŦŴũŷƄźƁƐſŪżƂƖűžŵƙƔŮƚƗƟƓŹƢƄƇđ6ĝĴij,6ŐĚņĪưŁĺňĦĚĪƴƻƳĞŋƯƾĻƺĢƻƉ:4Ħ7ƲDŽƵ7ƷljŎƪƏǕǔ:ŊƆǚƈǜňğnjĨĽŅǙĹ:ĽǐǞưĽąǢǥǤǡĠŲĶĦI32HĿ0ŖW50S(ŧƟƁǿȁŖȄƑ2W0)ƠŬ))ȇƘƦŞȑŵȕǻȋR18ƁȏȗŗțȃȀȈȟȊȌƨȎȐȣƘȨȔȫȖȯȘȌȝ)XȊĨ1čǵǷǹǻǽȟRȢȅ2ȥșȓ4ȞȱƀƚȟɅȌȡƚɉɃȚȜɌɊɎƕɑȪɓȭ4ɍɊȦɁɚȶĊĶŲ6ǫǦǔƵLJǥƌ8ǩƆIĿ7HǶP34TȀ1T3Ǽ)ȸɰɳ0ɵɷɹɻɳɾʀǗǀɲɴɶ2ɸɺɼʋ5ʁĶʃʐʇʔʊɿʗʍğɨŦʛʒʈʕʟʘĆʚʅʑʓʉɽʩưɰƊʢǫőʥʯʨʌʙʸʭʜʰʖʁ6ʴljʶʤʿʦʝʱʼʫʾʆˊˁʲ˄ǩʣĊʄːʺʞˍțˏʮʧ˛ʠ˔ʵɫ˘˟ˋ˂ʂ˞ˀʻʠŅʎŐ˦ˬˡʪ˝˲ˑ˭ʁ˯ˇ˗ʹˠˌʠʽ˷˚̀˃˅ǀ˖˫˸˴˪̃˿˩ˣˆǪˈ˙̏ʲ̂˾˨˓̇˼:2ʢ̜̓ąDžħědzʳɱḀ̌ĠƷģįđƆĮĊ̲ɫ̴˻ɫǃƫ̭ƍƫƎɫ̼Ċ̷̀̿̾˖:̤̦Ƽķ̨ˤ̟͎̠͆͌̒˕ɩ͏͕̑̈ʢǑ͘ĨƱǗŲIŞHĉPțʰ͡R33Śȉşɹ5FͭɢͲ1ͰͲͫͱWş͵͹şͬͺͩʼnͽ˵ŊǵœćǺ2ǵ5Ǹ4ΉW8Ȅ3ƘͿć)ΐΒƘͼȉΖΘȀΓƟ͸Μ2ΗΑΟƘ΂ΣΥΙƟ6ΕΤΞǵƘ7ͶWΝΦβƥίΫΧƟĿεηάũΈ͹ρνσ3πΰθΠσǽυϋςȠƍϐμισɕΪαύȠ9ϊϖϜŠĿϕϛȬ2ϟϥƟŞλϩũϧϨόȬŻϚϱϪ8ϰϒͩ0Ϭϵũ3ΛζϑχŗͪϼϹͯϕňƅǥ͏Ǩ͍͙DZ˕ЌıǥĐΆǸͤΊω΍ΏϽŗІЃȚϸС΢ЁϠΨУϗŗήϤОRδЭϹŷϴϹοбСτдиωзЪТРо1ϔксϙЦϭϝЩϡ̟рыϧныΎѐȬ5ъϲэȬϷѓΡϻћϾЀφоЅўЄΩЦȸŁ͡œͤͦɼͨьͽȚϞѱɐʹу΀͵ͿͻѷͻцͻѳͭʘǗ͞7Dz̒Ǡű͚̩͝Ħ͆˶ɹИΉ΋МǻЮјξіќѤRѦѡϡЬфϡаҡȒҗσ0ҙσĉқķҩȠϏҤξѷҞΚцҴξҀчЮѰұϮяҽŗϫқϯӃϳҺϹ2њӀϺҦЄѠЂѢХҷϾҝΤЊ̢̞ǟ͛Дł͓ЏӝʡưГ͐˰ę̭4ӧ̾ӨӦӬďөӭċ̷̭ƆӫӮęӪӧӹӰʼnӻӲЕӜďӸӷӽԄԁӻ̈́ӿ̸ԂԆӶԍӱԇԐǕ̒ӴԋċӪԗԃԌԖԑǗ3ǭ̰ǝԚӵԏԎӼԢӺԥԈԠԫ̣ǓǛԙԛԧ԰ԦԤԱԶԴԯԒ̸ͪdžԽ̥ƽԾ͉ɭȸ΅͢Ѭ8ƙΜՈƢՊłőՆǺțՉζՋӆ˝ĶЋǰƳ͋ƳԟԭǗĽƳՅѫՑՈгՔəՍƝѪͣեՓՒՌՔňƼ՞͇Ŏɪ՛͈ɪŅԻŅյŊЎĠǮՠԝշտɫǣքռֆǗրDzưėąǯǬօ֊փˣӘ֓ջǥսɮ֍ֈփվ֢֕։҅ƫ֑ǘ֖ĨՅΓՇͧ0ə;FşŷѽŚ4ŝŠњͻͰͻҨֳѲַֹֽͫϺ׀τŭϣָӎֽҜ׍ҭ׀ĈׂЄ͸şЬּׅӂ׋΁׍аѻ׍ӄ׋ʪĈՏ֭եֱ֯ɢִׅɐכӉ׏׏ֿѿדӌ׀וȚҫ׉ַ׃ͼş΂ͻмŭяכѣז׬Ϗŭђ؄׿Я׏ϔŭѕֳŝ˵Ų։֚֘͆͵ץխͥ8רƢֲ׫ׇɕ׮ֻТׇײׁؒЄѝͮ׬׹Ϣ׻׌׀،א؂״؅Rחпב؊׃،מȚ؏Šؑע̍2צ؝؟Żءƙֶثֺװب׏ѳ؄ح׆ͻذѰ؄׽׎ׇ؁Š؃׃׷ػѹؽزל׀فтנمؓȸՙ֒֠֫ʍĽ͡ىѭɳIְؠתَɔ٨ׯׇױٔظٗ׷׈رِϿ׍ص٠גڋ٤؇יؾѥם؎٭ד҂֥֏ؘ͟؛֮Ѯټٌپֵڀِڂׇּٕٓ׃ڇدי׊׼ڍ׏ڏ٢הׅ٥؈Šڕ٩ş٫كסٯƊ͠و؜ٹ1ٻשׅڦ׭ֹکا־څڋگׇٚڲس׾ڵנڷͩڒڃڔ٨ЈڿژבٮӖ̣֦֟́ɩ֚Ⱥۆڡٺڣׅی׬ؤۏئٝж׳۔ׅڈۗۢٝڎۜظ۟ט٧ڋـۥؐښōŁδĭ̾ܐ̳ԪٲԹ̱֩ܒܚܑōNjğ̳ܟٳԒŊ6̻֡ԡ̵ܡ7ܟնư̾͂Ɔ̪͉ܰԹɬĤŐܲ̽ܺ՟ӴՁĩؗɩė̹ԺǓ݃:ѩǶǸϻȾǾɊɢƄɟɃɡɝɒȈȍȮɃɘȴɀɐݐɗɠɆݛݎɝݑȈɡݝȩɤՎ݀ōő݉ȽȉȿݎɂȤݠȌɇݕҥɖݙݶڧƄݹξɕݞݼݒșݔɛݖݤݟޅȳɣȷٲ֣݃ܳܶԿܤܦٴޑޑ֋քբޔސĕյ֝՚ĕŊ݆ޥޠޒޣޘܾާǰޛ֢ޝަմީǖ҈ܢ,5ܬNj̭޶޹ݭܵցܓĠƎܭܵ͆պޖƫփƳNj֏ܗޢǖ߇ޞߓޙܾߍĭܪ޺ԮԡәБǖޯܨߒȻ݊ΏݲɓݴſɘݸވݺރݵތݾȩݜނŬݥſݓƃ߲ݣ߹ݘ߯ݦșȴݪĶǧ֏ܫߘܝ޷͒ߞܢ߅ܨŅ1Ԁ޷߆̻ĢƬࠈ߆ɩࠐǗ͋ߠԬӘࠚࠏշߐࠌࠚչ͟ğߣȽțǼݍߧݻ߾߷ݡɚɀɇ߶ŵݧߴŞހϘߨȰ߰އɀފބ߿ލݿȵޏĆࠑܱ࠙ğࠦࠝߑܨ߂ܙࠞ҈ƴռ՞ܩࠇܠࠞࠡԝɯ࡚Ġߙࡠࠆ۬ȸࠢࡘࡤࠒŐࡩ̫ܽߕ̫ࡗ͌ࡡࡣࡢ࡛ࡥԲԢԕԸ֜ࡨܡ̱ܵࡾƲࡺԘԩԬ͇࡟ࡶࡳࢉࡩࡩ̉Դԣ࢐ԨԶࡱ߀ࢁࡠܵ࢏ࢄԷ࢚ࡏ̿ʴ࡙ࢋ࢖ࡷԷ࢒࢑԰ܱ࢝Ӿƫܷࢫࠞ͞ՂՁߔࢬܼߜ՜ǎŅѩ۰קڢۋ׀ۍ۷Ӂ۹ڄڬچ۾ڰבۘͩ܂ۛב۝عںۡ܉ڗׇہۧʪʃࢺيࢼٽ۵أځࣂګۼٖࣆۖڱ܁ڴٟ܄ڑڹړ܈؋࣓ןۦ܍ࠃࠤպࠜ֜ߛޘɥ̞ċࣻčࡎࣸࣵ͊շ݂ЌċЌߟǥࣷࡦ͟ٶݯ݋ݱ࠭ݖ࠽Ȇݽ߫࠴औɄݽݨ࠺߬ށङɘࡀ߻ठݽࠁࡈ֓ڟٷۇ؞ࣛڤُࣝإْےࣄ۽׶ࣇ׺ڋࣩ࣋࣍܅࣮࣬۠ؿࣰقڙثࣗڠࢻ۲ࢽآर۸लȚة1ڭجࣦࣤٙहࣨ؀࣪؄܆ؼ؉ۢ܊ࣔॄنԒऋࢴࡔܒĢ߂̴߂Ŀ࢟࡭ࢰ࡮ࢱ࢔ࡑࢢࢠ̸ࢥࢪܔܜԺࡘࢀ࡜࡫ॵ࢙԰۫ॶॳࡔॵॾǖࢦԎ঄࡬֜ėࠖ́ܯࠕওܻӢԳ࢚঍ࡵ͇ėࡕࠥࢱޑচࢆ3ঐ࠙ঝߎঀōথॱॿভउমưࠕলōƌ͕֚ϧݮȼऐࠬɀत߰गݎ࠵ދࡄ߱झ߳াৄढɜ߼ɞৃ࠱ࡅݩࡈࠚࢯࣼप۱ۉ۳׀यڧऱڃ࣡تࣣशࣥࣈࣧش࣌ط࣫׀࣐ीږ٪܋ل̞ࣳؕࡼ޷ঋԵԣ࡝ࡱࢍʷ࢏ࢥܕࡖ৴࢚࢘ং।ࡧࢊ̢৷ॸࢆ॥ࢇ৵ࡺӯਅ࡞ਇࢎި৹ई,তՎਙƝਛĆয̦֛ऌࡱ঑গਠյŲΎՎ਩Ɲਫlj਒࡯֔ਖłďआNJਪЌ৳ਢЕńऊշ4਼ࢆޡʍঝॹ̮̳ࢳ੆ࠌਿƶইࢗ঩ਟǘҊਟࠌ5ࡽ੍֒ƌࠔࢮĕ6ࡊऊšԝ੕' id='1'/><tiles values='0:2060,49,ą5ċčą3Ĉ1đĎ:13ėą287ěČĘ63čĢą1583' id='2'/><msg text='The cat needs feeding to get through those walls'/></root>"; private static var level10:String = "<root><level width='32' height='265' start_x='15' start_y='263' background_type='0' compression='true' scroll_speed='2'/><tiles values='0:8544' id='0'/><tiles values='0:1156,44,0ċčďČĎĆ3ĐĎėĒđ:41,9ĞąĖēą1ģđğġĜ7ęĕĭ45ğ2Ę9ijďĵĔĦIJĴĶĻąĝ,88ļĘ8Ċď10ŇĆĞ89ńďłĔŀ8ĪĖĸĥŗĽŕœĬ8ĽİĘšĒıŤŢťċŨ8ĖĿıŜĢŁĨţũŧŵŦŷŁŪĪ4ĬŘĮž4ŚĘ7Ńď7ŏƆĬřŁďƆƅ,ƇŐ:3ŽĶ:ıžĺŘĩĔŗƍƓƕƝ,I32Hʼn0P18ƤƦƨP2S(I4H4ưR0F1W24ƲƴƶưǀƵƷ2W0)R9ƺƼƾ))DŽǂ2NjǍƽƿƳDžǃǙǓLjNJƫǖǏǑǜdžRǠƻǗǒdžǪưǞR27ǡ4ǐǬǔǰDzǵǵǮDzǐXLjĹƘƖƁľĆŏƛĠƢnjƝơŸųųȇĽȐŐľȄȃƛȎŨȏƖ1ȌƠȔȘŶȄȜȄƔȄȝȆŠșȪƒȥžȝijIƾƶƩƫTƳ1I0R3İFLJǔ33ƺȿȻĈȾƽȻ0ɃɈ285ɇǶDZɐǯ5ɏɄƾɋǶ2ɖɌʼnɓ19ɜǔǧɄ16ɢǦ5əǦ3ɨ12ɫʼnɨnjɓ7ɨ6ɫȽɄɂɟɨə)ȶIȸȺɱɨɼɄɺɈɸɵɳɱ0ɮɰɟɭɽɱɧɟ8ɱɡɓ2ɞɗɛʛ4ɫɛɨǷʛɎɓɂɫ3ɆɻʇɈȼɢ)ĔĊȗȫŸžȭțȌŴȍŨʸȝȣʵȡȚƝȁȓȒķȑˊˇˋˉ˃ʶȤˆŰȠŷȅˑȤʼ˙ţĆıƤ3HɪƪƬƥƧɊǛǁǥǸǤ˧ǚLJljǕǨǢǵ˰ǎǘ˨ˬǝ˯ǧ˵Ǵ˫ɣʘ˱˶˭Ǻ˯ʥ˼ǣ˷ɑ˪̉̄NJǼ)ǾƟƂĢ˒Ɠ˚ː4ŋˁƖɭ˘˔˚̚ȝ̝ʸ̗˃Ňċ̣̜̥̚̕ȍ̧̙Ţ̓̚Ɠ̸̪̭̠̱Ē̯ŋȨ˅̞ŨȱƧƸǖɯ˴Wͅ˻͇̊ǨɯĘ́1̓͌ǔɴƼ͈͕̀͋͘ˌ͛ˎ͝Ȕˈ˗̤ų͏͖͙͎͑͆̈́͊͘ȲʡˢʁʃȻʉɀʮɀʬʯɊʦʤɒɗɕʠʢʟɗʝɈɠɮ̀ɥʖɥɪʒʐʎʍʌɓʋʈʆʅɓɿͰȹƹɽʨɹɷɫɶɓɴɥʏɟʑɥʓΊʕΆʙʤ΃ɚʤʡʛ;ɗͼɌʧɻ͹ɻͷʹʪͳʲďͤǔͩͧ˿σ̆ͫπƮͥ͊τǦ͗όχ͍ῶς͒ύ͉ͅϑĽρΚ͔ͦόϘͪϒƣϊϕϞσϡǯɒ͚ϓ͐ϦόϟͨϖϚͬϔϝϰϨϏϙϫψϤ϶σϱυϳϼϣʿ̿ϵϮϷͅЁώφЄϛϥЊ͓ϹЎͩЈϋЋДЃЖϭИГϖϩϴНϯЙРϺϢАϿϖЌСЏЗФПͦЭМϾЉЀКͦТеОϗЧϪдȱDžȴ8ΘȺʰʨ͵ɅΔʢηɌεǶγɌαʞέάʗΪʔΌΥΎΡΟΞɓͳɉΛɄΗȷΙΕθѠџɄΠɄ΢΄ΤɥΦ΄Ψ΄΋ΈΫɟʚ΂΀ΰʢё͋ɗэɀιʯλȻщчȿοȤʻ͠ҏˍ͟ґƛϜзЦЕ͒ЯВнҘϬȕĞȊŰҔБҖвокҕЫиϐЮУқЬҧҭлаҜЛҙҮҥϠұдңЪϧҗҶҞҩҿҦҝϽƀ˒ҳүҫϻрͭухͲʆ҉҇ʩͺʛяɔѾʛ΁ɝіɥ·΄ΉѶɱѵɣѳɣѱɈѯǔѭʊΝΜѣɈѥʂѧӲ҄ѪΑўѝɟӪӧӥɮѷӢѹɥѻӞӜӛͽͻьыʨӕ҉ξҚҹϲйҲӃϸӀԕӎҾԘӅӁӇЩжҪԙҬԛԢӄҺӆЅȂҠ̒ȔԗХԞԚҷӊԓЂԳҞҽԧԝԩԟϣ԰бԽԸԠԒԣԲԥԴՀҵՃԫœӉՊҰԪԡмՑԾґՐӌШՅԨԔՈԹՓҴՕՌՠӋԤӍԴƀԭȉդԶЍՖ՛Լ՝է՟հԱՂ՞Ͻ՘զ՚ҸՆշճչҤվղռԵփԷոՍŭȟːԺՔՙпՉӏͯѦцѡɁʪӕ҅Ƕ֑҃ԊͿԈʛήǦԆЂѸљΧ΍ӽΏѬѫɈ֗Ѩӳɐʀ֕ΚΊӱΓӺΐѮќѲԀ֨ԃїѺѕ֡ɗѓɌҀ֞ζԍκӓνʱյՁք֑ӂւ՜ֈրԿזձטօթҒȓ̟Ґ͜נĿժҢլևծգבՋ։՗כնדҨױגםהցԜײ׷״׺׶׫ׯ׭բ؁͝ĜՏ׵׮ישח؀؊ȓպՇ؎ωт֔ӵ֖׎Ԏ׌׋ӘѿԉɌӝǶ֣΅ׂ֧Ωњ־֫Ӽֺֹ֭ѩַѤֳӑֱӸحӯֻӫֽ΄ӨɬԁјӠӟԇє֠֟δԌΜؘ֙ɻԑս،г֒׾؉օؐտמԬğԮ֎ա֐׽Ի׻؍ٕ؂ٛԖ؈؃ؒ֌ȡӈԯ٤٢Ԧ֏ջ׸֊ֆٍһُٝ׿َҞ̟˄צٗի١ٯٜٮْؑ٫ڀ٣ِ٥ڄڈ٬ԴٺʾȂ؇ڋچӎؔȵֵҊʯӔؚ֜ԋβ؞ί֢ـׁ֦ئ֩ћةּطǔΒ֯ΔӷֶƽִؖڰɣڮصګӻکΣ֪ڦڥڤ΄ӡɣ֥ǯ֣2ؠǯׇѐڝ҂ڛъш׏ֳٿڃٰ؋לٟ۔ۓۘʽ٨ٖף۟͞٧ۜ؅ŀĤ:ʜįĞۦۨۦćϤ6HƥڂۚϚRȽƼɪؼǨ۹۷W۹Ħɏ۸Ⱥ۽ۿʓ܂۶܁۾Ⱥ܀ۻƟȰ2۰۲ٚړϖ܄܋܆܊܈܍ۺ܇ܖܜܙܞ܌܂Ĕ܏ܑ2۳׳Џܚ܇ܢܠ܉܅ܯ܃ܱܟۼܳܭɪܤۯ۱ܧܓۓ۵ܡܘܵܛܷܲ݃݁݅ܬܹ݇ȱܦܨ׼ܪ݀ܳݑܛݓܝܶ݊ąܥܻݎۗܿݗݒݟݔݡݖ݆ܱ݋ܐݛܽ۴ݐݣܮݥݢݯݤ݉ݦĥ۪ě۬ěۥč݌ݩեܾݬݱݮݳݰރݲܙ݄ݧݍݪܩσݕނއ݇ܫސݠށܸݙϤƵɰˢݾݫލݭ݂ޅޏܰބޓ܍މݽխٸόގޠޥކޣޯܗݴۧܺܒޜތܕޟ݈ޮޢ޲ޤް܊ݧޙу޷ݏޞޕ޻߀ޭߊ߉޾ܣޗݼ޶ީٴͦެߍܴߗ݄ޒߌܹۦݺܤݶĹĞߑܼ߅ݝހޡߋߎ޽ߘߛ߫ޖ޴ߤݜުͅߖ߮߭߶ߖާߒתߴǔ߹޺߷ߚߺߐݨ߼ٳՒࠂޑࠀ߈ࠊ޳ݚࠇۖ߾ࠎ޿߯ߙࠋ޺߻ߥߓࠉࠌߩࠗޔࠟࠚ߳ߔޫࠁࠞ޼ߪߘߢĭݸœߡ߲ދ߆޹ࠍࠨߌࠔߏ߱ࠆ߽ࠛࠥߵࠧࡀ࠵࠙ࠅފߦࠓ࠶ࠖ࠸߬ވࡄި࠽ࠝࡁࠟࡊࠪࡌ࠺ࡅࠜՖࡓࠠࠕ߸ࡃࡖࡎࠈ࡙ࡈ࡝ࡂ߈ࠣ࠲ߧ߇ࡒࡣࠃ࡞ijߞߡݙࡱŌ޵࠼ࡡգ࡚ࡹ࡬ݘ࡟ࠑٞࡇࡑ࡛ࠩޱࠫࡍࡾٷ࠾߿ࢁ࠷ࡻࠏࡵࠤࡐࡥ࡫ࢋࠖࡧࡆࢉࡺ࢔ࡤࠢࢆࡶࠒ࢘ࢍ࡜࡭ࡦ࢝࢐ࡢ࢚ࢣ࢓ࢤࡴ۫ࡳߟࡲ۩࠭ࢮࡳ࠮ټŒőƊŁƏ8ࢹࢷ,ʼnࢻ̯ș̻ȡŎ࠯ŁŖࣈƢů̖8Ųࣃ̹˙ɎĔ5ĖşˏࣘőŬĜōࣉ࣏࣒࣌ࣖࣞࣙťƗࣖȩࣣųūࣇƄƃƈƐƏƑƎ࣮ƃࢹڎࣅ̒ȆƟĬٓ޸וڒݿ٭ࡨ߾ۙࣾ׹ٶّۛٲ࢟Ւअ࠳ࣿईډऊҡĆ܏ڕфڗ֗ښهӗمڞك؟ׄԅԄڿڵֿبڻتɈӮڸӹخѶΖرֵسѢڷRڬӭ֬ѰڼѴؽɟӣڣۂढडठۊ؜झ͸وۏʨًƓݻڅँٵࢦ׬ٌऌկॕࡿࢉऎࡩ॒ःग़क़࢈ऍॠउТĜ̓ऋख़ॢ२ॡॗץ८ۡˈƓࣺƢࣽएइ॓؄५।ڇऑڌऐॸ٦ॵड़ॿफ़४ংऄॣऒ॥ģŋ2ŏсȳؕͱژμؙजیेلђѽڡ׃ؤथɩधغعПثɄसܚयڵऱҋزگщѡনब˰ऩनऽ׀ɣीծणঝق׆؝ঙ؛θॊʭېҋĹĖইय़ॺঊॼঀڊॽܔ঄ࢗআॐޝढ़৔७৊৕ऀৗϬ̖̰ټ॰ғґࣀס̘ŋ3ॳąࣼ৖आךঢ়৯ە३৚৮ॶৰ৑॑৓ࡘ॔ৌॾॷঅ७ৡकޘ঑ږڳঔ҈ৄॉैҁ׈ڟǯۇʜڢ঻ঠĈঢӿڨظڪषӰপɩবڱমد͸मضদਛ঵ণاӤितूঽॄিटञঘৃখ৅ौאĢॏৱ৷৳६৽৛৵ਾঃ਀৙ੂ৶੆৸৏ऊ੃৽ਃ৪ٽŰ੏ॹ੕٦ৣפ۟०৾৒ੇৼॹٙੈ੖੊ঈ੝৺੟ࡏ੄৹৞੩ࡷ੤੅੦ੑ৫̖੗৐੍к੢੠ঁ੥ো੶੎੽ড়੬৲ज़੦੿кਃȃઇৎਁ੉ੱ੾ઁ੫੸Ҳࣆň0Ə˂ۣॲ੓ੵઑ઎ઃਿઅઐએંઓҼ৤ࣩࣥ੒̤ક९ş́ۡࣷৢśƍમࣵŅવƛ7ࣶ̘ࣥ5ō࣯ņʳҠˍࣦਅͮਇওच਋҄نਵਏॅ਑ृਰؿਮসۺশөऺहجڭָरذভळযਞਧफ૛ǦӾǦػ܌ھহਯ֤૓૒૑ʣুڜগ҆ىʯ्Şવ઻ĔŃঐૈघਈોਸ਌ਸ਼юীਲ਼াف΄ۃɤਖԂɣӦ૫ত঴૧૝ࢊ૟ফૡਢૣਤش૞ধڹ਩ऻڧڽਭإۀਔਓׅছ਴ଊ਍ɉૌਊ਺ۑĥŊ੧੭ੌઍੰઠੋੀॻМ:এઞିદ৘੻੷ାؒࣜ଻઄উ৿ϒƗȄ̕˝େ੼તॗ୏લ˙ઙୟۣࣨʼ୏ƛૂ୒ਫ਼ଽ੣੘Ɩڑୀઆ୙օભן͠ઋं୫٠ą୮୉৻੪৽ॱŀ઺Ɗ୕žୗƌƒ஁યĹŞ࣯ƙ୘गӑਉ֘ଇ્ଳʥচǶۉ૳Ѽঞ૕ଫदਬਙਪথଙତਦଢଝֲૢڳऴর֮૜ںଧ૙૘ପਖہ૱਱ڠଌૐ૏૷਷׍ोي਻Ćؓਆ଄૊ૺͶۍɍۋ஼ର଍ءਔ଑૯૗૭ਫணଘர૦ଛਟ҇Ӵͱ஭૥भਨத૚ନষ૮Ǧ঺௓ஸஜௐۈଋଲଉகீਹூସĆčॱ̛ஈૄષĥ૽௽ęః͠୞ٻȟŲݹĬৡ̶ٺ̡ƣɭƧଃƤ1˥ƩLJ8ǀւLJɯ̈Бѯఝచ϶଑డƳБ஗͊)WఙదణɜథϜɲɇరБأజ2ఞ϶ௌళసఫఢЉʮఴణѳూЉମషహీ҅ఝాభЉʉ౅Ƹ௖౑஺఩ిƸʫయఽబϜڬ౔ড఼౉Ƹɘౡ౗কై్ϜӮ౟ɦౚౢॆై౦ӒౡĹଁ఑1ఓʫఖǭ౜ఛౖ౎Ƹఠస౲తಃಀ਎ౌ౽మ౥ಇ૩౮಄Ԇ౟఻౨ಊొಌఱౄಆϜే౿ϜӖಔ౲౐ಚవѵಒӝ౟ౙౡ౩Б౞ಣమɋಒׇನు౛౲౫ಮЉ౭ಗధёನಢοĆĊఌఆ࣐୺௾̺ઢથ୍ୌ୸઀୛੐રȂ̽੔ୱ೎୯ણ೗ೊ್ঋȕıĤץĜે߄ୋۛઝग೛ҭೡఅݹҠࣉƙ१ȈĿʻ୶୊୾؄୕೴୽੯୬Վશ୨੨୪೤॥୘೏ୈೋओનৢࣉ೹ψĮഌЅŻ৭അ୎ĺഏڐఈ஋ఄ۞Šěȣ೟ן೟ۭఋఉʳİ' id='1'/><tiles values='0:2196,48,ą757ċčą38ĒČĎ:453ēĚ108Ğęď0ĘĔ:ĖĤĩ56ĨĚ5ğą69ĬĠķą1289' id='2'/><msg text='Pick up the cat as much as possible'/></root>"; private static var level11:String = "<root><level width='32' height='249' start_x='15' start_y='246' background_type='1' compression='true' scroll_speed='2'/><tiles values='0:8032' id='0'/><tiles values='0:964,4ĉ0ĊČ:17Ď,čċĔ:41,93ĔēąđğěĝąęģĞĖĠĒĩħĥĚĜĨČĢĩĆijIJĬİĮĭěďĝĴ9Ģ9ĽĭĘįĤ:5ğĵĴʼnĹŅĻĹĻ106ė1ņĞőŎ3ŀłėĝŞĠōĤŐď4īďŀĬūŦĝ7ŤŚŤĿĢ5ŇŮŕĺ6ĒčűřŰſžƁżŇʼn68ėĦ6ŀą2Ě72ƈĚźėƍ,ƆƑƖƋ:ƕƏƘƓƌƒƇŹŻ:ŕI32Hœ0P2W50S(I4H4ƭR0F1W24ƲƴƶƭǀƵƷƮ0)R9ƺƼƾ))DŽǂ2NJnjƽƿƳDžǃǘǒWLjR18ǕǎǐǛdžǟǡƻǖǑdžǫƭǝlj27Ǣ4ǏǭǓDZdzǶǶǯƹǩǣXǝŖĉƗƣƔƎƐȅƠ,ƝŹƚƕȄŏƟĐʼnƧƩƫǮưǶǽǍǗǁǬǥǮǞNjǾǴǤȞƸȣȜǺȠLJljǠdzǵȬǧǹȬǻǞǸȤȱȧǷDzȤȫȻǼȰ)ȀčąʼnȌȑȎơƞƤƜȈȑɍȇƞɊƖƢȑŇȏŸŏőŵş,5ɏŷƂȋIJő7ʼnƃĞ7ŦŘąŀ6ŸĻĈɣ6ɨɲɬȋɘƎɚƉɑɕɓȆȋɏɽėƦ3Ƶ14ƬǠTƳ3T3W3LjȁąĒƧʈʊPʌʎʐʒʔɅƥɿȍʁɈʄȊȐʧƛɋȉʫʂŖʆ5ƪʚƮ8ǀ3ǒǽƮ12)Wʶʎʹ15Fʻʽʿʷʹʓ˅WʼʾˀƧʹ4˄ˆˏˉǦ6ƺ˕ˈˁǦɧˌˎ˜ˑǦȣ˛ːʸǦœ˔ˍˇ˧˂2˚ˬ˖˝Ƹ13˫ˡˮ˩ưˠ˭˗˵ɵ˽˳ˣ˵Ǩ˦˿Ǔ19˸˾˴Ƿœ̂ˢ˨Ƹ22̌̃̓Ƿʊ̑˺̔5̗̒ʹȸ̇̎R28̠̝Ǔʓ˱˹̈R3˃̜̯3ˋ̤̫̄˓̂ėʗ˷ʳƬʵ̸̯̭̍ǟ̴̩̘̓˒͇̥˙̳̥˟̷̙ǔ͏ͅ˪͕͓ʼ̡͉˩˷͘˂˼͒˂́͢˩̆˲͜˵̋͟Ǧƍ̛̪̦̖̞̣͛ͬ̔ͥ͌ͨͅͰ̧͸͓̬ͳ̫̲Ͷ̶̫ͻ̴̺˕ʰƖɾʦƒɔʩƒ΍ʃΏʁΑΌʅ,ʘ̿ʛ8ʍƧʞʓʾʡ̽ʙʋΞʝʑ΢ʕʢΎΘʨɖƉΐαΒʥΔƖɺƖɚŜļɞɦɥŤɧɣůĞɠɞɝąŠŭɲɶőɳɩč6ƄƎι7ɼεč̄ǠʺˍʉȳˠʉŖƇϚ8ϟʻϞ̭ϡȐŗΚ̓ϛϩ4ϦϝďǠϭǂϛȯϠϱϰŖϑƋ϶ƷϯϺϲŗϴϣϮϥϹϧϻϺʯĠĚϤϜЅЄϡĠЇϷЉͧГϼĠϑŻЀΝВϞЊϳϢРϸКϨЍϫАЈТϱФЅЦБбЪЋϽƙĞБϰДІЧЙмϼɈϬлЃеодЩЌзНίпЯнгЮчЯʣĐЭИѐчђљєМĐОкЮмћЖяўЫɖфѣцъќЁрЃџœйϙѬЋёѦщсЍујѰњѮѺѓъѕэƟяѤ҂ĐЗҀѨзЬ҉ѭѳҍСҏХ҇ŤхѸѥҌѧ҅ϼɰŖѿСҊҔҟѼьѠĻқϳѹҞѻѲЍŎĦςϐɹυŶɟɡȋɱοσɸϏɲŇɯҾŤɵɴɨŏτȊϖɌΖδѵʮήȒȏӑƊңϭ1ƪ0̀ˢȖƸ͉ǀӠǓ˥˲ӣƪ̅ӢƳӤ̦Ƚ̷ӭ΃ӧӬө̉0̗Ө1ͪӸӴӺǷ̨͕ӭΆˎӹ˵˰̂ԅ̏ӫIԂӝԁӵRΉӳԌԐ˶ӼԔӾͱԗԂӲ̮ӽƸ͎˕ԉ͆ԋӭƾԥԐ̵ͯԣ͑ԓӱͤԮԐ̖ԛԩԒˎėŀӔɾΗӕʬɉζӏΰƞιҢĺɜҺφωҽӀՌҷɫƘŎӅӉՓҷӈĺӌӓϗίʮԼɔԺӐʀӍηȒʼϭȖӝȘƱȲȴȻȶljȩǖȺǙӥլճծϟȜղ˂ǨȪȵȬǼȸչȦճӮյǒշɂɄėƇԼԻӗ՞գ֎ՃΖ՚Žҷ֖Ķɣ֖֘Ęŝӄń˃ĊʡƐʊԸĊĚɆĊɏϵŎĒ3ПҴɇπɪύρŤՉ:ĝψֹՋՎIJ՘μՖɷɴ֟ՅόĞϒşԹŲϴŨɪ՚҈ĴġĬ՝ıŖ׎čɈ˰զӜӞșիȾվɀȢɂȚհƾȿճǼϹւȚ׬ǪעתȷȽ׭ȲցװխտǞ։άכב׍Ģוĕ؀Ĭ՟؃ח؁ӗПŬז؇؎֙؏،ϑ֏кƍԐǕʼ͔Ƽؙׯؙ׷եϙؖԙؘմǩ؜ռˬօئȈΚآӡثؚة؝ȼؤؕӛأذհاؤت؛جԌطدؾرػذ؟ؿخǓؼغ̉ب؞״ˬضؗعؼسؽّءفئذٖهْظكٌոةٟٙٓ٢َٕشثɪգҚىțة٣ِٞؠحٚٲؙٴ٫ٗٷـ٨ٳ٪ؼ٦ٸځٻڃنٶوٹًډكڅڀ١ڂٝٽڑٱڎڕڄڋ٠قڔكٵص٧ړڈښڊڢچڤإڠږڜϑɼĝڒڞڥڬڛڨڲٛ٩ڦڐڮĐڱژٜڵڧ٭ڣڳګزڭڢĘȔۀںۂڼڷۍڟۈڶۄھکۆلٍەؾڝڹۓمېۖ˓ۘ۟ڴ۔ۃ۝ۅۦۇۡ٥ڽ˶ۥٺۭۛ۩٘۲ڙۏۯۊ4ڿڍہ۪ۨۢ۸܀ۮُۑۿێ܁ۻۖ۱ڸ۳ۚ٤܇ۄ܄܊܆٬܃܏۹܋ܓ۪:7ů' id='1'/><tiles values='0:8032' id='2'/><msg text='Take out the big guys quick'/></root>"; private static var level12:String = "<root><level width='32' height='296' start_x='16' start_y='293' background_type='0' compression='true' scroll_speed='2'/><tiles values='0:9536' id='0'/><tiles values='0:1224,4Ċ0ċčď,ĎČĒđēĐĔėĒ:49ĖĆ3ğ45,92ĕĦĨħą1ġĩĎįĥīĜĮĎąġ106ě11ĥĶĜĤį:2ľŃ4ľęĖğĭŋŊęĜʼnč:ġŏĘŗĕŖřŘķĢŒěŅŞğ8,I32HĹ0P2S(I4H8ŬR0F4W15XR9Ŷ1Ź2)W2ĤĬħŐňğšƉşąƌœƊŐƐěƒœƔƏĞŦŨŪŬŮŰŲŴ18ŶŸźżžFƀćƃƅļƎńťŧũ0ūŭůűų2ŵŷŹŻŽſƁƭƆĆŤƍƋưƖŠljưƘőŌĤƛƴƶƟƹŴƥƾƨǁƬƄDŽĤŐƣƲƜƵƞƸơƻƣǘƧǀƪǂǝŠƈƗnjLjŢƓdzǶǵƗǢǓǥƠƺƼƦƿƩƫƂǯĬdžƑǍǍƚƳƝƷǾƢƤƽǫȃǮƮĬȊǹNjȚƏǷDzŢ8ĻĎ7ļĞ8ĞąƊ8ijš8ġȩľ8ȟ8DŽȪȬȱȯǏȲĕȤĬȤ5Ȩ,ȴƕȱī,5ȽĆȤɁȮɄ,7ȽɏļȿɑƤɎžȥĿļ0ɋɆŚĚɠŎŜɢśĪɎɟɊɤȰťƜŬĕIɭɆɰũɮĎɳ1ɵɬɴɲɱɯɽɶɿɺɸɼɻɾʅʀʇĜħɰ1ɴǡʀʍʃɾʑPʏɬʔɼʔʖʌʇʗʎŤʐʝʜɸʛŅʢʦʤʠʞʒȩʈʬʂɹɷʱʁʲʄʯʵʆʷʴʻʧʉ4ʋʨʳʚʪʣ˂ʟʓʧ˃ˈʺˊʡˌˇˎˆʩƕʮʳʽʺ˗˖˘˛˚˝ʶ˞ƕˀˍʫ˒ʕ˄ˁʙːˤ˩˓ˑˬ˦ˋ˥ʥʘ˔ʰ˟˷ʹˠ˕˸˻˹˼˶˾ɧĐŃĞĹěɝɥɫɘĬĞ̋DžťĹ7H4ū34Tů1R27Ŷƻ̞ǬǨȒ2W4̛ȴFǨ5̩RĹ̫Ǩ9̯̥R3Ƶ̵̬̬ć̠Ņ̞̳3ź̬ģ̹3̛̯ƅ̸̩̾ƻ6̠ź̻͈̦̖̔ͅ7ͅ16ͅƅ̲4ƃŀ8Ȉȼě̅ľąȿɁĽijƊ̎1̍ŀ2ŤȊ̛̗̙̝̬̠̓̕Ʃ̢̦͖͖̽ͯ0̴̶͖̱͑ƻ̭͊2̻Ĺ΅̿͂ͅǨ̬̈́Ĉ̴͛Ή̹͌5͏ͽ̴ΑR͕̹͘Δ5͛̇͝͠İij̅ŀɋ̉ǏŊŃ1̈ɠŔȦʪ8ɕȢɩ̎ĵě3Ȥ8ͤŔɂœ6ġȫοǻȎǕǧȀǙǬȄǃļĮɆıŐπɂσψœγIJĕͨƕψijϞȧĕ͟ϧɉϙςϊȻȾɂƆϚϩɎωĬĊǒόǦǿǩȓȂǛȅȗƱɍɫϬŝϮɩɃĎЅĴɂϤρȹȪϛυɓϰϧσ4ϣϊϸǤȏǖ̟ϽǚǭǜЁōЃǏ7ʪ7ɁɐДɖȣЩȨŔȤɟɪедзɣLJǸƉϷ̜ͳŴͻW̵Šɬ̒ǿΡƫ0ȹġɰцŴшŹъфэώ̮Тђŝєϻ΂їȹˀ̒̔р̽уȩнѠƶ̡тͮʀѧP̖ѩѤĠхώѐĹыѳч̫щȹĻњƢќѻКоћѺёȹωѾƻѵјτ҉Π҅Ѷѓ҃ѿҐҌьғǨҀ҆ě҈Ҙҏѝ҂юҊҕѼѸҔҠљҞіҁƇɪ:ȤєѡѯсѱџпҳѣŀĻɨōҎҋѷҾҤěѽҪҚґҩҢ̭ӆҌҽоѡƻҴεϞŊұѨӑ̂ίҗӉҿҡѴӂƏҦҙӟҍӅӣDZίЬӁҨӤӛӣӄӉҫқӈѕӋȹ1ѦпӐҹӝѹӫӚӞӫҶ҄ӾӡӊӣӿӏѰέͰҞӜӳӽҬ:ӯӴԇԅӱӇүԌѭӺ͈ѱӿԐӲӬԀԑԂҧԑԟԦԡԈӖӻȩӧɡǠŕйœ3ηϳЊȢğԫѢԝҺѳԉӗӠŊϦЊθʠвϲІǺӕԼ̤ѱćԿԬԽϧϱЋͬՑՍѪҒԛԊŠЊЎɂАȱВЇϥՕЗЙϯЦБϭϝρէϢЍЭբՉτեկЖձϵĜƲ0HΛŬW0̘Ṷ̋Ȓ3Ƽ3ƾ)Ҝստƶւք̦ϼֈŶ֊ź֌ІմЋϜЭհȩթЈմШȼЫɑи̉жɣЮɏаο̍Вɉō9ВϡȩĤֲδǏִϊֲĮВŇָДŃԵɂɌθκϔ׆ϧ׈ϧλϫ֟նĐŦ̓ǗF֊Čֆ֖̥דű4ז֊36ךחל։W˄מנƄ8פט̦כ͗ɯתП֊΋׮צכĉ׳ו׵Ɓ׸יכŧ׼ן׾֓և׹ץ̔ՔչՊοЏěĤϵƲ׽קי֔ל؄׫ע؀װץשؕ׺׭ؘ؁ץײɶ״ק׷ؤ؞׶םءئͼ؊حтɲةכ؇ظش؋ЊȹؒijϫĶ֥֭ȼɑה؅ؖعسؚ׾؜جקؠوآ؝קاťطץث؈إخٌٕزׯק؃بذטٔظق֤֬ȣ֦؏ɚŝͫłŀξĬђ̎šνٯĆēȯ,ϙٵċقʿ̇ϕɦΪƕɬ3ӹք0Ƽ̤̪͈Έ̽ƻΑƄRΙڏҟڙсӢڑΊړ̭Γڙ͎ڞ̲͗زڣ΄ڙ̼ڞΕڭ͐ګΥڭ͸ګ̨ڙ̵ڠΏڞ3͊ږ͓ڑ֙:Ǒ̿Ǽ2ք֕ڥڧΆڞڕ͋ڠΡڛڠіڣ΋ڥڢږڤڣΣڣ̣ۘڪږڬګ͇ګڰ۠ڲګڴ۠ڶھ·ھ̀ڷڽΈۍہǑ2ڊӏڌڎۘۊ۱RۍڗۏۊڜԆڥەڣ̪ۗےۛۘ۝̰ۊۣۡ۠۠ۥƻ͚ڳڠͿڻۭΈۯھ۽ڿڏہħĽձǠĞϘ̍ϖɆϪɇՇź,ܤڇܲϟķǟŜĆܧԳɛԲțϘδܴɒ̌ɇɑı݅ـгȟܾ݆݀ĕɈəɁ݌ķܼ԰ܺݔ֩֨ݖݙԺ݈ܽȉǴк݉ݞлݢݡӃĭ' id='1'/><tiles values='0:48Ĉ,47,ą2365Ċ8č:2281' id='2'/><msg text='Smash the badguys with movable blocks'/></root>"; private static var level13:String = "<root><level width='32' height='217' start_x='15' start_y='215' background_type='1' compression='true' scroll_speed='1'/><tiles values='0:6944' id='0'/><tiles values='0:1092,44,ą21ċčą4đČĎ:ĐĒĘĕěďĖē:ĝė0ĞĦĤ:9ħēīĘ3Ī8Īĥ88Ď,87Ķ86ĶĨĪĤķIJķĵijĹijļą3Ĺ85ĺđʼnķĬľĦŌŎĮőĮŋ3Ęō8ĊĥćňĆđ8śąŝş:Ŋķĥĥ7ń,7ł7ņĆś8ŭűŰŲĶŴĮĪĉĶƁĥŀƅŒƇĽƈƄĬƃ,ƃŪŋłĴĺņķŢ1ƑĺŰĸĺŢ3ŷōijŏŪŘąƘķơķƣŷġ1čI32Hć0P2S(I4H8ƶR0F4W15XR9ǀ1ǃ2)W2ơĆĵťŜķũƧǓŧǕĘ2śưƲƴƶƸƺƼƾ1ŸǁǃDžLJljNjǍǏĘİŹůŽųŵǗDzŻǵĘ1đǞƳ0ƵƷƹƻƽ2ƿǨDŽdžLjFNJ1njǎǐǯćńĆĪćƂƣǯǾǠȂǣȅRǦǀǂȉǫȌǭȐǻōƕ5ȔƧǼĜśƍƏƧȲǖļțȀǡȃǤȆȢǩȊǬȎǮǐƯƱǿȁǢȄƾȾȤȋȍȏǯąȷɆȜɉȼȠǧȣǪɎȧɑĆĊȓǻȖŹ9șōȸɈȻȟȡȈɛɁɐǐDŽűĶȬǻĹȯĔȱşƎǖĥɨȺȞǥəȿȥɏɃĘļȵȩ,ɿȝɊȽɭɀȦɂȨďōɡƦɣȘǛɓǟȹʎɗɬɚʒʆʕĆčȫȭɷƣ4ɺƂũʝɇʀʏȇʣʅɝǐĹʍɖɫʃɍɯʇďɼʯĜđʘȕ,ȗĥɥ˅ɳĥɵƦĊʻɪʂɌɮʓɰĜˉʬʮˋũǝɔʟʼɋʑʷʔɞ1˝˃ďʱɕ˔Ȇʢʄɜ˧ɱčˇ1ʚˋʬđʩǻɾˡɩʁ˰ʾ˗ʥɞļɸˈ˓̂ʵ˲ˀʦǜ˫˫ĆĹˌʼn݃ƛƕĻŜŋƩ8ƫ̒IĐƳˤ2W6ȥ̧̩ɬ̫R27ǀ̫Ķ̣1̥ʐ̮į̮̭̯̱̑F̳ɾ̤1̴̨̦̺̼̩̰̲̩͇̬̽̽̓ͅǧ̶̸̮͍͓͎͚̪͈͔͖͋̀͂̈́͆͌̾͐̽́͞͞ʌ͏͉͑͗͜͠͡ňͬͤͮͦ͟ͳͲ̵̷ͫȇ̹Ͱͨ͊̿ͫıřķŦ:ōƍͽ͛Ϳ͝ͺͱͪ͘͵;͒͠ɘ͠Γʹ΍ͥΘΒ΄ΔΝͷΟ΂ͻ΢ͭΏͯΑΦΛͣΖͺΥΚΡΜΩΗ΁γ͂͢ƻ2ȁȇNJ3͹πεͶΪ͸ΙͺήijǐūŸŽǹŽƕʊ˞˄ϔϖ̒ƆĺΉįŃƔƚϞŇίΎɯψɏϢˤɏϥNjϧʐϩɬϦ͙ΰϮǧϰΕϣ˘ϪȎϬοNjϹɻΣϼȎϾĺόĪdzŮųϐŮƕЀϤϯϫϱϷϳɯϻЎϴА϶ϨϽЏϺБКЂМϿζϸСЕФЗНΈˍ̜ОϭЛШТυЖДЭЁ̃дЙЮРаЦГ˘нЯиЍЧтУоϵучИщспϋЫĬьлхвфюйжЃегїˊјќшцэѡѕъЩђзїѨњЪĔŤбϲѣыѢѓѪѴѩѤѱѵѹВѲѧѷѬѫХћіѼПѸѳѥѾɻŕѮƥџ҅҉Ѻ҈ѿҊѻҒѽҗЩʹЌҀ҃˛рҚѰҙҔҌΉĝŞҡҥҪѬў҂мˋĺҬҟүєғҁҞҰŬѐҳҺҵѶҖҫ҄Ѧң҇ҸӁӇҷҟΆij̚ƝЫӅкӂҐӄҽҶҤӉӘҟɸӔҋЄŖŐ8ġĝžӃӞӦҢӖӀӊҾҹӗӆҴӮїǘΊǚ̗Ǝ̡ҿ҆ӒәӰӭӈӱԀӿӬӯӼӋǸǴϑȰĭƋƉԎԍԐ̒ϓ̓ύӎӍϠƖɴŰ5ȫԝɴԞij̙ԘƓʼnȪЊźԉЋԟԫˏԛԠ,ԜĺԈЈϏ·ԓԓԱˏԯԹ԰˽ϗԷ˟̡̕ŀ̣ΰ̧ǦȠ35͗ǏΏՈ2ǏՌƩՅϷՇ8ՉՋ̧Ս͌ՏՑ՚ǐĪՔͅՈ˩ՙȐՎ՗ՐզɑͬՆǃ՗եՒը̯՞ʕĦ̖ĢśϙƦպƊĢōջԌւցջտĞ̔ևϺIć7̥34Tƹ1Ώ8ǍŭŪĊĨƧՄ֌֎֐֒ψ̧֕W֗4˒֝̈́֏֑֋֖֔։ĹĨƟʌ֨P֪̼֣֠֗ȯְ֚ƭ֧0֍ֹ֩֟֬͌Į֙ƭ̴ִֶָֽ֮֬Ĕֵֿׁ׃ּׅ֮֓ևֲ֋׀֞֫֓׏֤ǻĠӪӻљԁԄӫӚԃ׫ԅק׬Ӿ׮ѠИĨĝLjŗքƊփ׺ցƏʭ֯շˍƕיŀ׷ӷ؆Ƥ؄ƭɧӲצ׳ҕש؎ґНęӝөӨӓӺҘױюʧ؀؅؂ԏֈ؅֗Ϝ؈սɶ։،Ԃײؓӑׯحӕ˂ؚؐ׭ת؜ؒز؞؊Ƃءԑ6ֺđـ׸ƌֺʺ2μξǬρϪρЦ΀άιͳǛҐِ̻έδ͎ى˕ȦًٌƗčا؟ƭաУْٖͧͼ٦ΐٗ٩ؕ͘у٧͹͕ٙ҄ٲ֡ͩٵǑ׻ԏټԑ׽ʰبąաƻ4ˤ3ǎ՗ȋڈ2հǧڌթ̿ڐ̴څڇډȥڐψڙ͖ړɾڕʐڙڋڗɬڛڒډڔHچڠڗڢڍښڗڜڧڞکږڮڭڎǀڥڹڲʌڟȇڡڻڮڤڰڦڍڨڪڿڬہڸFںۍڼǣۈۋژڣڏۄۋۇڵڊۓۃڮڱۆƦɧھۓڷگ۞ۅŰۑۚ۔ۂۖۧۘڳےۏڶۜۮڑ۰ڽڴګ۴۳یێڝ۹۲ۀ۽ۦ۷۽ۙۻۛ܄۝܆܀۪܉۬۾ۗ܇۱۫ۥ܌Ͳ܎ۣ܄ܗ۶ܙڲӵœ܏ۉۼڙܘ۟۩ܛ܃ܦܞܨ܈ܤ܊ܬۓܮܕܐܝܳۨܯۤ۵ܸ۸ܣܻ܋ܭܑܹܵܰ܅ܟ۠܁ܖܼ܄ܴ݊ܶ݌ۿܠɲܿܜݑܓܚۺܷ݅ݍ݃ݏݛݗۯܔݟ݀ܲݝܾܪۊ݁ܽݣݕܫەݬݙ܂ݪݦݒ݉ݮݴݰݧݭݩܥݺݶȔրġڄݚݥݿݘېݽܱއݢݲ݋ݫݻގݐސހܺݖޔވݷފ݆ܧݞݸݾۭݱމޅޗݵޙܩޤݯޡޑݓۢީݹޫޕ݄ކޱާޖުܒލޣݳޠ޹܍޻ޏަ޺ޚޯ޽݇ݎޟދ޵߃ި޼ߊ޾݈ߍ߁ތ޿۠ܡġ6ڂ:ߙևģ׼׺ٱ٬٨ωٵٕߢٳٹκٰ٫Ϋ٭ߤκߦ߭ߣٴ͢׹آ׶ɻՀĶكŐ6̡ߺϖ:7čَĥࠅ,ࠅţċŦࠋĽΉǦ,߾ŗ߼Ίđࠀ̓ƀ߹ࠚϕĢפٶկ՘ղ՜թյլբ͜դՊࠢ͗՝իՓǟգհࠪ՟ճժՒٚHνКٌЏࠇࠧճձ࠴ࠣմ࠮͎ծࠩ࠮࠵ࠥ࠯ٛ҈ٞٝεࡇ࠲ࡉࡃ࠶՟ࡆՕࠠࡁէࡕࡋُ࡚࠳࡜ࠬࠤࡅԐࠝĦЀ̼Ո4ࡉࡪ՗3DŽ࠷͂;࡮R࡬ղࡵࡰࡥխΎࡵࡷ࠴ࡹࡱࡗŐ࠿ࡾ࡭ͨՈࡺࡲࡼٜՖࡶࢇࡃࢊࢃƤࢅ࢈՗ࡿէࢁࡻ࢕ࡃ࢘Ս࢚ࢋࡩ࢖࢏ࡸࢣ࢒ն׵ࠞپͬࡍϼ࠼Зࠉ،ࢭ࠽̩ٟٽ߶ĔƯ߬χΠ߰ߡ߲ߨ΃ߵރࡨࢻβ߯ٓࠟࣀٸࣂࣉĢȷࣆθࣈ٪ѕٷࢽٓࢸࢫࢿࢼ٘ࢾّ࣑࣓ٯ5˸' id='1'/><tiles values='0:6944' id='2'/><msg text='Wipe those bullets away extra quick'/></root>"; private static var level14:String = "<root><level width='31' height='217' start_x='14' start_y='214' background_type='0' compression='true' scroll_speed='4'/><tiles values='0:4727,I96H100PĊą19ė' id='0'/><tiles values='0:4200,I101H250PčT(I3R90F2R1ĈĝR6ĜĞ75FęčĨĪ3ĬR4įěF4ģĜĵĠķğĮF5ğ0ĨľħĽİŁğ8ĥR2čĢ1ĒĢ2đĩğ9į16ŖļĪňĴŊŌĸŏĵőņ1ŕńŗŤļľʼn33ŬŬŎœ3ıœűęŴęĺŭźźűľųŤņŴ5Wň),ą61ċč0ĐĒĔ0ĖČW1RĜ3ƕRĬƚŌƙƖŶƚġƟŊƜƖŮĩƚŚƚ4ƘƬƦƛƮƖ5ưĤƩƖŘƷR7ƲƻưŜƤ8ưijƤŦƤƍƺīljƞƝơƠƣƝŒLJƨǓư1ƭljŸƝŏLJƴljƶLJƹLJƼljŃLJǀƝǂljDŽƝdžƢĉƺĈưŋƽŋdzǐƖţDZǔƢƫǹǘƤ2ǚǹǜƢǞȁǠƢǢƢǤȁǦƢǨǹǪȁǬǹǮƧǰƤŮư3njƧǎR3ǸȡǒƪǼƧǾȡȀƪȃȡȅƧȇWƼƇą83ċȝHƍĔ8ƓƖƮūƩɁƙɃWƄɇɆɆ)ĚƮňŊȍƅĊą17ȸďȻ1ȽėƠǨľəɀŇɠɟɂɉɈ5ɋǬɎ2ɐňƈ:ŋċ99Əē26ɮ5ɔċŋȺPĞƃȲĸŜɇĞȝŁʁɡĽɆ2ƈɻɗɾŅʊ7ʂĜʄȡžʈɣʄɮ1ȷIɼ1ʐʝʇʓƗʊ5ĞǺƄʥʕʋʍʟʏĞʣʒĵʭʨŊŒʫʵʧʌɓʌʰɽɿʤʔʼʗ˃ʉʛĊˀʡ˂ʴˈʋˆˎʚʮˊ2ˁʦʖʳʺ˘ːʪʁɮ9ɻ˗˓ʷʀʥˤʅʘʓʯʠʢŪʈʶʩʹ˰ʼˬʱĻˇ˱ʸ˹˵ɓ˕˷˦˄ʖʆ˒ʃ˔ʎ˗́ˏʷ̄˛˨˶̉ˇ˨ˑ̎̆ʨˬ˗˺˚˴ʖ˞˫˕̙˅̛ʬ˅̞4ɸˢˌ̋ˍ̕˺̍˟̠̪̯̟̲̓̊̓̈˯̤̝˳̻̇ˋˮ˼̼͂̿˭ʲ̺ʻ̓ˎ˱ɮ8̸ʐ̴̖˩̪̮̒͒̐͑˪͔͙̂̀͞ͅ˽̩ʐ͈̚˜ʷ̧̦̘̪ͤ̈́ͧ̽ą5͢ʲ͒ʑ̭˅̶ͯͲ̫͵ʙʹ͸͖̥́͋ͮͦʽ͏͇ͬ˲Ή΀Έ΂͊˛͌ȵ·ͼ˧;͚̫ΌΔ͛̌Η̏˿̑̅͟Ρ͡ʟ̡˙ͥ˺̢̱ͨͣΨ΃˃̨Υ̲ʹ͘ͷ͚ͩʢδ̃͠ηΟ̹Ή˻Ύ͜ˣήΏ̜σοςͭ΋Β̬̀ͽ΢ͶˉΓεμλψ͐ϗΜϚΆβάΧπΪͺͫϊΊʴα˖γ˺ϕːͿΫͳϫϜ̰̔Γ̣͉˝΄ΑϵυϸόϻϡϹ˽:͎ώΚͻ͸ΘξϙΣϖЌϘϏΕϑϐΤϩϟː϶΅ρʺθĞϤΐίϧͰͺ̳ϲϮУκЎϛСϿϥКχ̗Њ΍Пφ̾аЬгϽϥ͍ϔХΝ͕бІ̵оϺЅϬЪϒͅΦЗϼϋЫϞНέЀΰТяͻц͓юЕϰ˅їϳ̷ЅИΩЁϓѠьϦижѥђкύ͆сΖϜΙѝЈΞмЩјшѩњЙѡРЛϯѼѦЮ̟:ͱѕФѷў͹҇ШѹѸϴѪЭ̦΅ΙѽдϷѺ˷ҖйѨʽЃѶҎҊЉҠГЍҎѲнѱҀОЯѧҐѻҬеҮ҄҆ѻ҈ҡЦҌϱ҉ҹѮқэҝҕ҂ғфҾӃѣ˔ҟхҩѷҨҼуД͝ӏҪϣёҒͮМҁѫѿ҅ЧһҸνӞќӌѿзҭ҃ҘϝӆӛҭӂӬҲлӋӓӍрѳӐѤѮӶӔѕұөӨәӽЙΪӝҺӣӳӥԅʖӺљҚӇϾґҝӨҔрҿҳөӱӹӤҥЏѯВБӑΠӠӻҰӖԑϢӼԥӧԃҵˣҍԛчүԭӟԯҏџӫӗԏԷԦӈҙτӯԗѭӒԢӴҤԟҦԴӎՃҧҫԩҲӿՌϠԸСԄҶԮՆϭӡԉːԋԈԺԪԼӪԍԿԓӦՎӄЂЄԙԇՈӵԚ՗Խ͗ծΛӪъʷԕՏӕՑԻѓՔԲԆՊԱϪտԴҊӮՒӁԔԎѬեӾէˉӊժրկաԡքѴпՅճҢѵԨպ՟ѓչыԿϨվԊղәҷ֖ՙ՞զՠֆջ֋Ԑ֟Ѭ֐Ղ֪ԣֶ֛֓֘Ӳ֒ճԀՍ֍ӘՐ֢և̰սւ֦իԶ֥՛֧։գӅբ׆ӰאהՀֵֺ֕֗גך֚לԠձ׋ֿׄն֊՝յвֳӜԬ׉׎ף֨Ֆן֫דְֈ֌Ԃ֮ז׶ӭ˾֙ЇӷԜ՜լ֡צ֣ąˡ՚˥׏׸ѢԹ׵׫׽:Ǘ׿тҪؓʞׂ֬όؓŋ7' id='1'/><tiles values='0:6727' id='2'/><msg text='Destroy King Kacta!'/></root>"; private static var level15:String = "<root><level width='32' height='233' start_x='15' start_y='231' background_type='1' compression='true' scroll_speed='1'/><tiles values='0:7520' id='0'/><tiles values='0:964,9ĉą19ĊČ:47,4ČĕđďĖ,0ĘĜĒ5Ċ3ĜĐğģěąĚėċĦĢğ41ĮąġĨĆĞijIJĒı9ģĝĨķķĶĿŃīĽĺIJňĵ1ħŅĤļįĻĽʼnđŋŀŏĝŗ:3ďĬąģŝ:1ġŠşŔġ106ğ8ď7ŒŗĹŕŰŰ7Ūąİ,6ĔŘŦĥŞŹ8ŐŹďą2ı72ƂźŎůŒńĤƏľėĿųŒ6ƁŷıƋŘƍƌƞƜƟŀƑŀƈƊƄŁ1ıI2H1P2R0F2W6R9Ʋƴƶ18ƹƵR27ƾŶ,ƫƭƯƱƳƿƸNJƻƽǍǀǂǍĤdžƮưǃƷǘƼǘǁǃƐėƥƙŹŻƨƪƬǖljƺǙǐǛǐǝǓĝǕLjǘnjǪǭǪǯƺǔǧdzǐǵƿǷƿǹƵǟĤƗğ1ĉIŨ7H40P50T(I3TƴŢ)ğ2ŪƛǥDžǼǗǾǚǏǸǒǺDZȢǩNjȥǜȨȄȪLJȣǪǿǎȯǞƒĤǡŇȟŊǦȳȬƶȶRȁƶȃDŽDzȴȭǬȦȂȰɉȫǴȮǮɐȅĝȼŸ6ƧƣƣƕơɟƠɘƉǢȾŔĔĿəƚǤŊɨėȇƅĔȋ0ȍȏȑȓȕȗș5țčģɛɗšɮȆƘȽɬƓʈɗƢʉȺʍŀɰʆƐDŽ4ʓʕʒʗľʖʙʘ,ɪǣʁ1ʃɣȈȊ30HȒPƼW24ȔI4lj3WŨɅ5Fʳʵʦʸʴ0R4ʷʹʾ6Ʋ˂R7ˁʽǫˆŨˉʵ12˅ˊŋˎʾŢ˒ˏ6˕ɅǏˌ9˛Ɔ˘ʾ22ˠȏʼʵ˥ˠǒˆ28˛ʦˢR3Ţ˨ʾ3ʻˆ3ˀ˶ɽšģȖʧʩʫʭʯʱ˲˵˺˲˼ˆ˄˶ˇ˛njˌ0˛ː̈3̕Ȓ̏1˚̛˝˓˟̏ˡ̢˥̢˧˭5˫˲ˮ˰0˲˴˰˹ˊ˻˕˾ːƃʠʢʝɤ:ˑDžʦʨȐ̄ʮư̭̏̇̏̌ˊ̎ˆˈ̏̒˓̛̔ˑ̛̘͇̝̈ˌ̟ˏ̡˭Ṳ̃˦̢̫̩ˬˊ̬̏˱̳̲ͨ̉ʺ͊Ũ˾̾ɦȈ̺ʐȝ̿̂͂8ʬ̈́ʰʲ˓͈ˆͯ˃˲͎ˆ͐ˏ͒ˌ͔ˌ͖ˌ̚ˌ͙˓͛˖ͦ͟͝˭̥˭̧ͦͣ˭ͥ˩˯̮̱̯ͨͪ΃̶ĉʀƅƇ̼Ţ͸́ʪͻ̅ͅͿˏ΁ˊ΃R͌ˊΆˊΈ˖Ί˓Ό˓Ύ΀͘̕ΔɅΖ˩ΘͦΚͦΜ˩ΞͦΠˣ΢̯̊ͫʺͭ˷ΨȜġΫ̽ƚʅƆΰ̃γͽ͆ΏΣ͉˛μʵξʵπɅςˏτˏφηψ̞̈όˣώ˩ϐ˩ϒˣϔ˩ϖǀϘ̳Τ˺ϛ˷ϝ˳ϟčďϢϦͶŪ́ἀ̆ζ˖θʵκϰʾϲʾϴˍ͓̗̙ϼ͚ϾˠЁˣЃˣЅǀЇˣЉͧϙΥͨБ̴˽ʤʟά̻Ȉ̀̀ϨͼН̈РʾТ΅̑̈϶˖ϸ˖ϺПЬΓЮ̢аǀвǀд˪̫ͤЋʺЍ̳Џ˳нГ:ġКчδ;ъϭ΂ϯю͏ѐ̕ѓɅѕʶїˏϊĎЯ̫ѝʭ̢̪͢ѣ˷ѥʺѧ˸Χ̵ȜɫȈďѭͺшεѱ̊Ϯ̏У̐Ѷ̛ёɅѹ˔̛͗ΒѾљ͞҂̢͡жǑѢ̭ϚΦͨГуɥŻšѬцҕѯϫ΀ѲιѶХˋ͑ѸЪҤΑωҨΗҪ̦҅ѡ҇Ұл˺ѩҏĸʞƛϣƀрҔβҖѰ͇ҿСӁ͍яҟӆ͕Ыҥӊ̛Ͽǀћˤҫ̨҆˭҈˳Ҋ˷ҌӕпƅȞƄӚȼĎϧһϪОʶӢьӤνӦ̓Ө΍ӪӉϽӭҁ͠ӎҬӴͦӶͩЎҲ˺ѪЗӿЗϥҹ͹ӞҼԆҌ̋ԊϱԌӅЩөӈ˓Ҧ˖ѿӮ̣ΙӲΝԘΡӒԜмҎӼҸсԀ̼ɚҷϦӘԡϤƊՇέՌȈDZҺԦԅҘЌҚ̍ѵ·ѷԯԏԱ˙Ӭ˞ԔԸԖӳӐӵԽѦԝ̳ѪŨҵȽՊӛҶҐծՆճՉճʐɚɜʌŖƝɢňɡňշą̺ɳɵȐȒʯ1Tʳ6ͱDžȌȎֈɸȋ֌Ƶ֏ֆ֒ɷ֊֖֎Ȝ֐ɴ֚։ȕ֋֍֏Әҷʢ˿մґքƨɿʅպğ֪ŕչƚӿִģ֨ɠվĕʚ־ʜʔׁDŽ̸ֶ֮ŊֺՅ֭:֪Ɓƫ3ȎƮʫ8SȕɒNJː)WהזɁ˵ș2ךלɊӷטסכופ˼נעשȫ̎׬רםǨ͎ױףȫǿיײפШ׶׮מ͔׾׳Ljң؂׼̚؆ȫ̜ʷ؉מɎ׺׷מ̡؍Ḳ̌ؔLjӱצ׭؃ưؚ҄׻ȫѠؗ؝Ȱؐ׿ؕ΢أӷƾئ؜˳ןʴקؑǨҍ؟سLjо׬į֬ՃֹؼΫȡɁɓɍȸǰفǨكǶɎɇɖȲوȤلɕȹ֯ؼŰפىȀًҮنƫ1قِيمȩهǽȵɔȧٓց٪ֽɡկǻٟ٦ّ٨ٜחٱ١ْٴٰɌٷٳ٣Ŀ֙ɶ֣֦֕֟ڀ֓֜ڄƅ֠և֛֤֑֝֘ځ֥֔֗֟փ׌ׅٔәؾׇֻռɝڟǠ׊׆րֽׂʛڨ׀کڧڪձʑڞʊڠڱɯֱֳַŁ׎2אİӞطɋح؇ضاظجزۃư׫ر؛פװۊؠɁ׵ێھǫت׽ےۇҡۅۋ؊͖ە؈ۗخ؋ۂۡ؏ۆۡؓ۠פؖ۩ء̥ت؞ۯͣۯإۦ۪ة۬Ɂͩت̰ۣפصۻۉיػڗؾښ֩ڙڵ׆ژ׈ٕƎڡּܐտցڝ܋Ŕ׉Ғ٤ɋɃ٧ɏٓٗ٠ٙ٢ȱܙɂ۔ܡٸ٣ܟٶܧٽܣܪٻܬܝٹُܫȷܨȱšڶڰɾڮԂܯܛٲܲܩƆٺ݀ټ݂ܮٵܰܶܭɑܴٞ݋˜ܢɑ݅ܦ݌݈ݎݕɄɆٛȩܹڤچڍڃڕĸ܌ښƧ٫ܑڥڳʊřֲܻܤ٘ݗٌܞ݆ܱ݊ݴنřĔܔօݶݖݒܷݙݐݷݳݝܣݻؿƧܿހݜɈٯބލٚޏَ٥ݑގٍŁĴđĔݧސޖޅށݍǻݏޠޒݓޟܚާނƟѫŁޝ܉ȟތݛޓޙ޳ܜݹ݃ݚ޸އDŽřƉݡڂڔ֞ڊĵѬڑڇڎډ܍ݬʎݩܒ٬ƖޱӿŕĵݼڣәߕޜؿҷѬں֚Ƽщʼˑ˾̀ߟɶߡҗߣ0ߥŁߦڻגͻۓۚۏǨذۀȫʻت܁۵ׯߴۓۑ߸Ɂ׹߽מ͒ە؁۸߶۝ࠊ؄۟ࠂ߶̝ەۥۛؒ،ࠍ؝͟ۯۮ࠘ў߿ۘآࠝȃࠐؘ۷ࠤưۺࠝۼۻߺࠪ߼߭ޞܼߖߜфޯڮݯݫߐݪŰڲĝ܆࠵࠳ܔߚڷʐȉȡ߰ڽۘࠟۡࠗࠧץ߻ࡍࠅǨۍࡎࠁࡒLjࠄࠕ߶ࠇ̖ࠝ۽ۜࡑ࡚ࠎࡋ׼ࠒ࡝ࠔߵ؄ۨࡎ۫࡬ࠜ࡬˧۱ࡡࡩؤࡤءࠦࡗࠨΤۻ߷ࡹѨࡶ۹࠯ڷ׏ߠ8Нǭʳߤĭࢄߨࢆε࢈ʬ߬рϢࡃ֮ࡂŌࡄʅśň6܎ߍ࠹ࢠߏŹ޾վŚڹ޻݁޹݉ࢨ݇ࢪݔޑ޴ިޕުࢱެąࢧࢰ޼ޔݱܠކࢻ޷ࢩ޽ީܥࢵޣŷ߀ݿࣅݘࣃݲޢ࣋ࢳࣄࢺ޶ࣉ࣒ȹ:ࢸަ࣊ࢮ࣌ࢽ࣐࣎ࣛ࣍ޘݵࢬݸࣂࣇȡޥࢴࣕٴࣩ࣑ࣁޔšЙ݄ࢹ࣯࣓࣭࣡޵ࣖ4ࣈࣷࣝ࣢࣬ࣤࢾࣱٍࣨँࣦࣞअࣴࢭࣦ:Ĉ5' id='1'/><tiles values='0:7520' id='2'/><msg text='When bullets chase you, pick up the cat to out run them!'/></root>"; private static var level16:String = "<root><level width='31' height='217' start_x='15' start_y='215' background_type='0' compression='true' scroll_speed='1'/><tiles values='0:6727' id='0'/><tiles values='0:1674,ĉ,0ċ5čċĊĎ7ĐĔ3čĆĘ76đĕĞē:3Đ7ĎąěĦĢ,69ę1ě2Ğĩ4ĐĈđ10ĝą11ī8ę3ĭ6Ėīēīń6ņ6ĘĻĘ6ĺŅđŃę7ıI31Hĸ0P2T(I4T3W20)XR0F1ť04R18ūŭŦġ4ĿŗřśŝşšţŮŨűųŬŮŰŴƆę4ĘźŚ0ŜŞŠŢŤŦƂƈŶƃƗůƊŹŘƎƐžƓƁũŲƚƇƅŶƊƌƞżƑſƔŧũƦƙƨƛąŸ,ƍƭơƀƕƤƄŵůŪƵġ1ŖƬƏŽƒƽƱǃǁŰƥDŽƜƹLjƠNjưƂǑǏǎƉƷĝƺlj2R9ū0W36ƼǘĮĽǠƐǣǥǧǩǗƁƊĊŗH3ŝWśRĴF2ǧ3ũǤȀťġLJǹŝǰȆ2ņǸǺǢȅȁȎđȐȋȓȇęǟ3ȊȒūȔȏȝȑȌȡȖȣȘȠȚħǔȞǼƏűģȍ5ȄȪŲęƝȮǽǿȁ3ȃȥȫ:ȉȤșȕĎȗȟȍȢȞɀɆ:ȜɌɅɋɄȪɆȭɔɊŀɗǻǽį5ȳȵȆȷąȹɘȦɇȨȁȻɟȽȿɒŔɛɪȰȼȂɡɧɱȯ0ȱɬťȴɀɣ:7ɸɝȲȔɾșɣɱɍġɥɜɳɼȾɶɁɃȩəɨɑɕɓʕɧɏʊɯʗɦȫʞʙɚɈɹɻɠɿĿɤʃʏȆʑʋęʔɉɷɈʱʠʛɁɐʡɖʶʟʣʖĪʦʄɼ2ʇȶʫ:ʍʴʢ˃ʮɭʒɎʂˎɺɴʰʿ˔ʨʆʒʀ˓ɩʧɞʩʈʫˀʜˋʧ˖ɮʤąʳʱ˙˩ˑȏ2ȝ4ǯɒžɺɕű˅R3˺ɴǢ6˺ĕȍɍű0˼dž˺ˡȔ˻̋Ń̅Ǒ̍19˼2ĸ̅2ˆ̙˵̙5̖ĥ̙8˼˾˺Ř̤˾̅3̀)ʥɩʷ˥Ɂƌ˳H˵ʹȎ˸ǃ̤̓˿˼̂̅̄̍Ʌ̇̉Ŧ̑ʅť̎̑̐̓Ƅ̡̙̘̖̝͓̟̙͓̣̪̓̍̕̚Ə̪1̨̦̬ȧȺȰ̌ɽ˜ˋʷɂʭɺͧˆͩȸ̱ʽ˟ɫʯ˪ˁ˞ͥ˕ʐ͸ʵ͵͈ͦͰʪɰ˙ͯˇɢˤʾ˫ˊͭǾͽ˱̮ͻΏͷΑƷͳġƫʘˁǷ΀ͮ΂ΈɪˉΚȑˠΠͱĻʸɲͼΕͫΝΛʜ˭˘̯ʟͬ΋ΜΎ·ΨĆΪ˨ΐ̳ͫŻPŲͫĐηͿΰɁφ̗Śσ8πιΧ΄ʬχˍδΌΤ̷ȈΘΒʼϛϕɎϙΫ˚ͨϓϜϔΞΔːϐϠġφϗʖϧ:ίϞƊϑ˅ΡǼΣĭ˯οεβ˫ϧϲʻϚͤϵΪϬϩκϓ΍ϭІʎάϫεͺΥͶВЁΆϒˣ΅ЊКˈЏˌɎ˧ЖɵͫЀəϽέ˘̴̶СŢŠ˹̼̑̅̀R͉̿̍́̓ĸ̋ͅ΂͉͊̓͌̒у͓͉͔̜͐͒˺ˆ̠ь̥̪̍ͣ͜͟͡ȬЎЈε̳˴˶ʙ̹̋г̍ез͉йС̈́̑͆̓п͎̏̉͠х̖шǢъ͓͖щ͓͚͘щѐ͉ђё̪̩͠ёіϷˢПјζНϸλͪγΓ˰ͫДАϪХҏЕ΁ҌЌғϣЋЛљΌУˏҖϘΎґεϴЅїϰʜҩҝОΉϝҔҞПΩҦϾΌҮЦЂ҉Чҭ҆˛ЌĸҷЪҥIό1ώυҼҬϊƹӈӊњӀϥҟЍӍɎϯωɎҾ̲ϲӜϡӓ΃ҟϲҢБҤˁϢӋјϲҺҨӡϹʀҎИӗŷϲҜЉӚϟӴͲЩЗθ҉ļӬӯλԁԀәЇĆӟġǟ̚H8NJIбƔ˻Fԓ̩ԓǿԓ̿ԓ̄ԓȅԓмԕу͆ԠȲԠ5ūԠ̐ԠƄԪɟԧԩуԦԣԱǢԡԞԵRԝ͉ԛ͉ԙѾԹҁƔ̭ΗӇ2ԎԐԒуԯՀԢǢԿ́ԹԻɉԠ̈ՎűԤԲՌԶԨ՗ć՛ƴԮ՞՝ԥՠ̊՞ՖԸ՗ՓжԹՐ˽Ձ՛ՄʁӶŖԍԏƮՊ՜՗ԗԾՠԽǢլԟуթԴ՞Գ՜Ձԫуԭу֋։ևզՙԶօՔѥտծՠսջՃʥշՉǃԧռ֙՗րԺՠփ֔֒Ձֈ͊բԬ֊զդ՚՞֓ѨժԜ֘՗կ֛Ԕ֝ҶՆՈչ֡Ջֺֹֻ֣՗ַ֩ֆեգֱ՞֍Զ֏ִ֮ԠֶԷкՒ׈վ׆ֿ֢˂֟׃ձמםԚכ׊Ձ֕՘ֲ֬אְ՞הѭֵ֑ת֨רקׇץ֜ťճųӏՇոџգ׻Δ׹׉ָք֫״԰ױզגűײֳԶ֭էՕ׷իלՏ֚פנǷע؃ןՍԘؚ֧שը؋׎؍֯֌ׯՋ׭׵با؈Լ֤Ԗ؝׽ǬĿ9Ō,ĸˤؼę5ǭؠаׄ׼Ǣֽկ֦ւ׶رتد؎בخ֐ِԶט׫׋լּ֦ظ2ճ̳؁֠ٞհ׺؇֗س؊ُזّجԶؐ՟׏،׍٪؉ցإٝ؄נĘ4ıĎٽ֞٢ףٺأצصؙ٩֪٫ؔ׮ْװٮוڌڋ׌֖ٷ֥ضڅو٠؀ׂءׅط٦ڇشڕڔ׬ٳٕ֎؏ٔڑʨחَٶئ٧؛؅ՂعĻĶׁ؂ن٤يإٍزڮڧڬٱڏکٲٖڦؗډڱڢچىٞڛڹ٣ڄۏڡՑڈڰיٗذثۆۅדڍۈؖٵךۘۍڳڠآٟęϼمԑه־ڙ؆ۧیڤۚۉ٬ڨ۠ٓڎ٭۹۸ڊڰٛژە۪ۑۮպ۱܅ێխۦ۶׫ۣڒ۝ۻ۟ؑۡۿܑڥٚٸ؜۔ճĸĽفٿŐ4ܤܦđܥĞŐ7ؽܩܣܨܧܯĎܢĢĐܴԁŕŒĭĻܡŌܵ,ܴټپ,ڀąĵˤĶ݆,Łđ݌Ȭ݁ܶؽܬđܢܾ݀Ĥ݃ĬقݖݔݒŐ݁ʂݚął݈ʂݣċپĢłܻƹ4̵ȋԵϏ֩ϏǑƔϏ2̡ݶȖݮ4ݰՎɺݳաťݷݹރׄΊݼݾŤdžȌݶނ2ބݱׄćݻݯǢԱŰށݵކݸޒԵņܹĎݢݭޖهݲޒޛސRޝՎވޥԵހިגޑޭއޕݽޗԢތޚ޳ޫޅުԱޔɇމ޹Ťޙ޲ޒެގޟŒϻīܻ:ݤŒݦߑݨĮϋќۓ̻͝д̾̃˼лՖ̓Ѫִ̻Ѯ̑ѰԶцщѳޫ̛ѶьѹщѻѴѽۏ̦ҁё҃ѾіЍЬǖۯѠߜѢߞ̀ߠ̋ߢֆѫ̉՝сѯ̋߫Ѵ߭ѵщѷѴ߲Ѵߴޫ߶հ߸є҄˅ܟĊݢߕޡߏ۬ľŀݫࠨ6ݥࠨޡĚӏߙڃߛё̽̅Ѥږ͂ࠈн͇ࠌߧ͍ࠐѲь߯ࠕ߱ю̢̼ࠞ҂ࠡ͢Įն࠳؃࠵Սࠄ࠸ߟ̅ߡ࠽ࠋвࡀح̑ࠑޫࠓࡅѴࠖޫ࠘޾яࡊѓࡌѕࡎĻıࠤłŐŋࠬˉԅ߄ނŰߊކޒ޼ߌ߃ޥޛތࡻ߀޵ࡾ޺ŐšࢁגɺࢄϏࡽ߈Ԣޮ޸ޏ޴ߋࢆݱݛࢊ࢔ޛࡺ޿࢏࢘޵ީȏࡸࢂ࠙ޞࢡގࢂࢉࢥࢌࡨ޵࢐ࢢ֍࢓ȋީ࢖ࡼࢩރࠬݬĴܨńܮ݄ܱࣁܰࣄٿࢿń࠰݌ޣ9Ιࣃ࣐ܲ࣎ࣀࣀ࣌ɚ࠭ࠪīݗȭ࢔ޘǐ֍4ࢤޯԢǨࡹƧŤࢴ߅ކ࢝ࣥǼࢬ࣡ưࣤه࣠ࣛ޺ٯࣜׄ3࢛݃ފWࣶࣝޘĩĵĺݪĒĞࣈޠࣈؽǸࣳދࣵࣴ޷ࣻࣽࣴ޶ĔܫआअĞܾȷऊࣻތࢦएࣨऑऌओĆĿœޢŊňŊउ˴जऍऌटׄडǼ݈ࣨࡳनŒपĮȹऋळނdžरޘाऴऺ݀࣍ݕछठलࣟी࣢6ࣰԱࣧަॏ࢈ौࣱ࣯࣪ॕऽॗԱࣸख़ॊ࣫˵ɚݕࣔĻί़ࣟࣤख़ࣣज़࢒ख़ު६ދ़࣭Ŧ॓Ɣࣲभॵǧࣹࡸु॰ࣼĩȷेबॉ३ࢀ़५ࣞ࣫॑࢑߆࣫߂ޤॳͮউक़আॸॾढ़কठॹॡĎ̟ॄैऱय़४ॎॾঋࢲࣾ॔ঙه঒নॶख़झওड़ॻ࣮ࣼছঀػ࣍ঠঌࢺপް࢕ओঐখ޽߁ॲऐিࡿॅʲȉॳݴ޳८বࢰ७ঽऒࢶޓ৅চ৕ࡿʝݎĆͺৌ࢕৏ে৒ুࣨরࢨॱफ़ৢমħʂজմğĔइĠगė֞ࡑڻвࠃם̍࠹ئ࠻̑ࠉۛ࠾࡜͋ࠏ࡟ࡃ̙ࡣޫࡥэ͙ࡩ͝ࡋߺࡍȍڛॣܾ4ĽʼnŒऩਛसŒܾĭĜ৴ऄ৵ħĿݎ݋ݬড়ı5ݩߒĔĩŎߔ̗࠲̵ࠀбࡓەࡕৼࡗ৿̓ਁڦ࡛ߦਅߨࡂ͑ࡄ͕ࡇ਎ࡉਐ࡫਒࡭ਔĮ৭݃݅࠱࠰ĵߐģď৳Ĕख੝ੜਜ਼ਥ:ँਞޢňܾਗ਼ਚ੦੥Ň੬दőޢࣙ।Ī݁ĭজ݄Ħ੸đ5Džݑ੒ਵЭࡒׅ࠶ߝࡖࠆࡘ࠼ѩо࠿੄ࡁਇੇਉ੉̞ࡈ͛ࡪҀࠟ߼࡮ɂܽݝઝܳੲؽਖઞݜટŀԌς޹ŵʼnƴપ˲નǜ2ફǚťਚӇύࣹՇӉસષȖહŝઽ઼ɇા઻઺ીૅૂુӏૉશે૊ૅӇયળ઱Ƨભઽ૑ǀ઴૔૙ʲӏયƗલ૘૓૖ષરૠ૟؟યș78ũɴਢૈ઺ɀ૫૭ɼ૯૎ʹ૳ҕ૶ૌ૸૬ૺࢉૃ૲૾૮଀૩Ȫૹ଄ૣ૱૪2Ƥ͈8˲૤ଌ଎ɼଐ૆૸଍Ϥଖ૰ଘଔȆଛ૷ˌŕଞȁଠૐ଒ଇଙͧଖଧ૱૒ફ૧ଊࢵૡରƨ੪ζӐ઩૙બ૛ૂ૞ଶऑ૕ଭ૽૴Ȇૻଁ૪ଃ૵଀ନ୆୊୆ୌଋଇ୏ȁେ୍୕୔Wେଆ୎୅୕ଅୗ୚ପଏ଑୒୆ୣକ୥ଝଚ୪ଢ୨ଟ୭૲୯ଥમୡଣ୬૝૤ଯ૚ૢା୺଴୼ଷϋଡ଼୘୞୚୑ୄ૿ଗଢ୙ୖ୦அஊଜ஌ஆ୛୶஍ୠஏୢତWଦୈ଩஛஝୶୳ஜୱଓ୸ஒ୲஠୵ங୷ଫʌ୹஬஗஋ଂஔஈஓ஑ଡழஸૼஷଉ୾றவଲ୮பள஦ம௅ட஧ஹெ୤ை୧௄ி୫ேϔହ஺ாோ୓ுந୉௚௘ଢ଼஻ஞ௟ௗୃ஽ୋூனொ஼௨௓௞୕ண஡஬௯஥௉௬௤௫்௔஄୚ல௛௙௠஖௝௪௜௿ீ௠௺ଈ௦௑௃௩௡௮ௐ௭சఌ஢ఏం௴௸ர௒௸߾ఇ௼ఐఈ୐௎ஐ௣఍௻ఁతటୟ௧ఃణఇ௲డ఑௵ధమ௽௏ఒ௱ఔ௕ௌ୩۬Ń' id='1'/><tiles values='0:3488,49,ą3238' id='2'/><msg text='Grab all the food you see'/></root>"; private static var level17:String = "<root><level width='32' height='271' start_x='15' start_y='269' background_type='1' compression='true' scroll_speed='1'/><tiles values='0:8736' id='0'/><tiles values='0:1860,44,ĊČĎ,93ĎĆĔēđĐďčą15,106ĕ2ğĚĒĜĆğ9ĩĔĚ:39,7ĜijĔąīķĒĺħħĘĊĿ:ğ7ģĊĴĕ3ŃĊąĔ67đŁ1ŏĿ,68đ7ŋİIJ6IJŀķĆœĺ72ňŏřňŕŏşĕŒĻđŖŘŚıŕŞůĝŢŘťŌŧųŵŐĺI21H1PćR90F2W24ƉƋ1ƎƐƒW12R2řFƓƏRćƖƘđƂƄƆƈƊƌƔƑƝƫƢƙƛƖƟơƭƣěęĵĽĵƥƅƇ8ƬƍƟƩƞƕƵưƜDŽƠ8ƯƤƃƽƨƋǁƐǃƮdžƚLjƫƴƓƶŷŕŗņųŜūİ,ƼƧƿƩǒƬljƯǗƲƐǚƗŻǥǎǧǀƫǔƟǭƱƭƳNjdžƸƤġ7H40P34T(I3ǮFȎƴȎ2ĥȐW8)WŚťIȃȅȇȉȋȍȏȎƋȎ3ĞȖȘȚċƻǵƾǷǂǯRǻǘǾnjĊǦȰǩǸȳȵȳDZƶǤŤŦijžŝũȺǐƪȲǽDžǛLJɀǿɐǍƦȻǑȽɎȴǖǼljɁdzįĦȮɖɋǪǹɏDzȏɞɓDzɕǏǨɘɍǬɜȶǰɬɂōǟɆŭŏȝ0ȄȆȈȊȌȑǿ3ȗșțǥȞʁȡʄɛʇȫŚćŪɉȯɥəɳɐɪǙɷdzɊɰɌǓȾɴɒȸȭĕɢɮǶȼɲǕʛɝʝʧʠȱʣɚȿɚɟũɄĝIJɾʀȠʃȣȒʈȬąȜʌˁȢȥȪʉŭčŨŌſ˒ƂɯʵǫʯɩʱȷȀȹ2˖ʭʶʚ˚ɵNJʧɡʨ˞ˠɱˢ˙Ƙʜ˜ɔ˪ʬˬ˘ǺʥʹʞũűǠɼʋɿȟʂˋ˦ˍˆ:ˈ̀ʍ˂ˌʑˎĝŗŎʖ˫ʢ˶ɨ˯˛ɶʳ˟˴̔ɧɛʰ˥ʺƷĸ˩Ǵ̓ɦʤ̠ʦ˝̨̦̜ʷ˸ɫȸɃŻĆʾˉ̂ʏ˄ʒĤ˿ˀ̹ȣȦ˅ʓģ6ĵ6ŠĔ˕̮ʙˮɑ˹̧͍̚˷̪̬͐˨ħ͋ɗ̝̩ˤ̫˲̭̯͛ˣ̡̗˺˒6ŅŕĭIJŔŔ4ğďͱǝͮĺͯͳͰƀͺą41ijĵ7͉̾́ʎȣƩ̍ˆŷłΊ̈̿΅Ȏ·̓̽ńŘĩƃċŠŮˑǤ̤̑ŁťȆ̽Łğ˼ɻͼōŞ̇ǴȄ8Pƙǔĉ΢ĭĨʩΫHέίƖαņ̵ͽΦΜǣŮΥΛ4Ψ̽Ƃάή˘λΪįčʿ΄̋ʐΒį͊ƛηϊΰŋijν;Λφ̸̤͙Ώ̄Έž˨σŚυʕ˞ɤʡ͎ͣ˰̙̬ʴˡ̟͖̕͞͠ώ΃̼͙̊̃͂ʗϯ͓̖͏̲ϴЃ˗̞ʸЈ͠ʼ:ξϟ˓ǴϮЋͥ͟͝ɭϭ͒ʮ͔ϹЎЛ̥ϐϾ̺ʆΒ˒ЂЖ϶Ќ̱ʲЉЫ˵Э͕СǜϩĕϫΝ΋ϼФˊʏЀˎ˨АВɇΩʪȹϣϒ̻̎ǤϨɺτōǣėͶєͻʹ΂уō͇Šɽщ̃Α̼ˇϽоΆр̆ͪ͆ͅиϞͪ7ͳŇņŠIJΔņѯ΀ŠξзͨǣŜѩ͇ͳ͈ѫϜεɈąIJ5ͪ1ǜĬиōѾŰҀѲїиīγҌĝ;җǤҚ5;ƺạ̏Бʾ̛͢ЅϸЙϺТ͚ʘОІϲ̄͠ҫЄҭҧЇЯұҤҬ˭ПҨеʟҹҳһҮ̘ҰҪӀЗ̰дҷӆНӂҵү̢͡ҺϷЍӋǜҲӈͤҶ˱ӌ͌ҴӕӜӗӇЬИӛϳҸӍӔЮӡϝӒӁӪӊӬǍөгРӖҿӴӥӐͧӮәϱӄӑӘӤӉӶӲ˳ҥӟӫӧӝԈӎӠԋӢӹԄҽӷӳӞԎԊӅԑԗӰԅԐӸԜӵԔԆӽԃӚӻ̳2˞3́ҺȢ0ɛǁƠ5ɌR3ɱRͰԵĉԵѮԵʭƠ0ԴԲƘԸ1ʼnԵĞՆ6ՃƎ̄Մ9ՍưġԵȔՒƚȆՕ5՗ǼԲ28՗ԷԸȨաԷԵȉՒ)ĕ7;ƂԬʁԮȌ԰ՆաԸԺԲԼԲԾԲՀġ՗ՅՉՈՄ5ՋտǿՐ՜Ք՞ȕ՞ՙ՞՛ՕƜ՞ՠէ0գȩԲ3զ֙շƎժʽǴկȇձIճՉյԵ֝ƙչՎջՎսՂՉԪցտքՉՌՉևՎ1ՑՕ֊ՎՖՕ֎׀֐՞֒׀֖֔֙է֘Վ֚գ֪֟ĆϏ2֢ԍԯԱֻ֨Բ֪R֬ƙ֮ιՉֱՄֳՄւךօֹՆֽ՞ֿư֌׀׃ưׅ׀ׇư׉׎׋֙׍ƙ׏էבҍ֡ԭӁטմ֕֩՗ןRסȱՁտצֻרƙՊַֆ׬։Ըׁ֍ؚ׵͏֓յ֗եאթĕңז֤֦փ؈ל؊Ը؍ְؐՆؓԳתՄֺؔ׭׀ׯƚױư׳ƚ؞ȏؠ֕آէ֛׎؁ż؃հ؅ղיؔכՎם؋ذՆפֻؑؔشؕՄָطؘ־ؚؾ՘؝՜׷ƚ׹׾׻׎׽Զو׾يšٌَِ֣֥ԳجٓخԽ՗رֲسֵضֻظƠغՓ٣՜ـĥ٧ؚ٪Զ٬׾ٮ׿֜إĝģծ؄ʵ؆֧ٺƙٔدپٗزִ֧ڃؔڅּؙՕ٤Ə٦֑ڎء׌أ؀ږĆխוښˡڜث׊؉ԻڡԿڣڀڥփڧՏֻڇƚؼ؛ײگ׆ڱمڳهؤɌגՇٴחُ؇ھحۀٽۂףڤקڂؖ׫Չۊƃډׂۏ׶ۑ׊نٰ֙ԶٲƏۙةٸړնټպڢۢۄۤڦۦ٠ۨګ֋ڊۭ؟׈ڲ׼ڴڕۖňژڹٍڛۛڝ۝ٻ۟۽ۡՄ٘ؔٚƠֶٜٞؗ܅٢ڬ܈՚ڍՕڏբۓ۲ەǁגܒبٶتךڞԹۼ֭۾ܝۣؒۥܤۧֈܧ܇۬ܪڰܬ܌٭܎ىڶ2اںˬڼܸܘڟܻנֻܽܞƠܠՇֻٟ݁ڄ١׮۫؜݈ې݊ے܍۔ڵܐĝהܵܕٷۜ׺ڿոہռۃץځ܂݂܄݄ݥܨ݇֏ܫل۰ܯ׎۳ըݯΪڙܔڻܖڽݶ۞ݸ۠ݺۿݼۅש܃ݣܦނ݆ݧޅ݉އ׺۱ފܱ֞и۷ܶ۹ْݗܚܼܜݛܿٛݠؔݢڨݤػݦێݨۮݪވݬܰݮܲΪҘެݳّܷܹڠޗ֯ݻٙݽۆޝ޺ޟ޼ރޢׄކ܋ݫ݌ݭ܏ܲŭğޏٵߊޮߍݘ،ݚؔݜր܁ߔݿޞށߘޡ޾ޣݩޥ٫ާ׾ދٲ1ݱݒʢݔߌݖܺޱݙ޳߭޵ܡ޷Ơ޹ۈع܆׀ڭڋق՝ߝ߂ߟ߄ߡު̏߉ޑݴܗޔܙޖܛޘܾ܀݀ݾݡܥߴڈߙ߷ߛޤ࠙ަމ߽ީ2גߤܓߦࠡߋٹࠆߎࠧߐޙߒޛّۇƴ࠯ۋ޽ؿ܉ك࠵߻࠷ٯ࠹גȜ࠽ۚࠢޓ٫ݷՎٕ߬؏ࠪ޶ࠬ޸࠮ۉࠓװܩ߸߀ߺڐ߼ࡕ߅ܴࠞ̇ࠂǒࠄࡁࠤްࠦ޲ࠨ޴ࡣࠍࡥࠏࡧࠒ݅ࠔ࡫࠳߹ࡒ࡯ࡔڔݎލࡵސݓޒݕࡺࠇࡼࠉࡾࠋࢀݟࢂ1ࠐࡋࡨࢆࡪބࢉ࡭ࢋܮ߃ިࡲ࠺ŭϖݲ࠿ߨࡂߪٖࡆܟߓޜ߲ߖࡌ۪࠱ࡏ޿܊׸݋ڒݍٱڶ࠼ࢰ࢓࡛࢕࡝ޕ࡟ݹࡅࠩޚ߰ࢹ࠭݃ࢢޠࢇࢥ״ߜࣂߞࣄߠ࢏ߢ˔࡙۸ݵ࣏࣍ࠥߏע࣒ࡇࣔࡉߕࠑچࡩؽ࢈ࣜ࠴ࣞࠚ࣠ࠜ࣢ࡳࡘࣉࠃ࢔ࠅ࢖ࡃࡽ࣑ࡿ࣓ࠫ߱ࣖހࣘߵࣚߚࣷࢊࣹ࠶ࢪ࠸ࢬ֟ࠠ࣊ࡀۺ࡞࣐֫࣬ई࣮ऊࣕࡦࣗࢅࣙࢤऑفࣝ٩ࣃԶړ߾թ߇ގࣥޭࣧڐञמठ؎վ࢜ܢࡊک۩یࠕࡐ࠘औࡓखࡱࠝࢭݰचँ࣋ःࣨࡻ࣪ࡄड࢛उࡤऋदऍनएप࠲ऒࢧैࢌॊࢎࣆݯॏࡷंࡹ॓ࢗॕआॗࡢख़ࢁज़ࢃधࣳࢣࣵࣛबࣸमࣟरࣅ۴ݏ४Ɣࡸझ࣎ट࣫ऽ߮ݞीࣱࢡफ़࠰߶ࢿ࡬ࣁॿࣺঁ࣡२ࣣ΋ߥ࡚जޯ९ঊॖঌࠌ࢝ॶ࢟ࢄॹऩॻफڌॾ՟यդছঃލ۶টࣦࠣ८अ࢙इक़णग़थॷढ़বय़মॡॽओঘकࠛࢫौגࢯࡶআ६ঈࣩতॱদिࠎপॸڪॺۍকࢦগলঀ঴ࣼজࡳࠁ࢒ॐডߩࠈ߫ࠊॳুॵৃঢ়৅য়ভৡ٥ࣀࡑ।ࢩৎग৐χशߧस۳ঽৱ࢚৳ࢷࡈصঐूࣴ৻ڮ৽ेৌॉਁो्ࣽवऀ५॑७हউऻঋٿॴন৶ࢠ਑ৠॅਕ٨৥ঙ১৏ਛۗŗহष঻ਢৗਤথਦ৴ਨࣰࢺࣲ৹েਓࠖभਰ্ࣻਲ਼৩्অƏইঢਉࢵ࣭਍࣯ਏੂ঑৆ওऐ৉রো੉ਘੋਂ਴਄ਞ৔ਠ৖॔৘াॲाਧএਖ਼ਫ৺ਭখ৾ਗ॥ਙ१শঝΗ਷ਆਹਈࢴࡡ੯ਿੱऌ߳ऎੜॠৢॢ৤ܭڑচ২੼ࠞ੏˂৮ࢳৰ੔ढ੖तੁઈࢻઊࡍࢾৼ੶ਖ੡੹੣ਚ੍ࡗખੑ৯࢘ਊি਌ݝࢸટड़ઉ঒ણঔથৣ੷ન਀પ੻ތঝࣈ৓੐৕੒ઃ৲અઝূષৄહਜ਼઻੝ઍ৊ॣ੸ુ઒ੌઔਜࣿેગࢲऄો਋્વ਎ٝઠ੃ृࡎઽ઎િઐࡰૃב߇મૉર॰੭৚ੰড়ਪ޻ઋৈ૖੟૘ીઑਲ੤બŭԫૠયઙ઱છী૎৵ૐ৷૒੄଀੆ॆਯ૱ࢍलލਸ਼ਅࢱਇۻચ઄঍શ੘૪ਗ਼ଗ૔ઌ૮૗એ঳ऱࡖ੦ଌ૷଎ૹલ੮ଧ૨ܣପੳ੅ੵાધଜ०ଞ੽ڸ੧ૈ੩૊ଥૌ଼੗૩સડ઺ࢽ઼ਔદଛଲংૄࡳ৒৬ਟઘૣ୎૥୐ઞ଩୓૫਒ୂ૯ୄ୛঵ଢ଼ਜ৫࠾छૢ়૤ળ૦߯୧୒૑୔૓ୖ૕ଯଃ଱০ଳघޫ੿ଢઁତଏଦধઇ୩ଫ૬ત୘ୃ୚ஆଡ଼ي૶ୌ૸੬଺ૻઆ૽ফବ஁ମ஖୭஘਱இਃࣤ୊ૡଣऺࡠ୏ஐண৞ஔୗੇ঱୅੺େࡳҊஜୢ୷୤୹୦૏୨୾୪ਬࣶର૰୯ઓୱגଠய଍ୣஎழ৛࢞૾ߗଘ୬்୮ங୰ٲୟ୴৭୶਺੫਼৙ਾ଒ੀைକ୿஥ॄௌ஄௎௡ௐ௣ு௧ં௄଻வ௚தஸஂந௟ப੊૛ଈ૝ङஊ୵றਣள୥௿঩௛ࢼ௳ॼ௵௠஫சڶƣఌ௦ఎ਻ఐ௅ఒ਩ఁ୫௴ࠗఆ੢ఈફఊǍ௔ଷ௖ହଐ઴୻ே୽௰ொੴనੈ஼ૂாਜ௤ঠ௻஍ళஏ௙ఓదோగ఩ۯఇଇభ௑ի௺ఠ௩ఢ௾ైథஷధౌఽ௏૜౒Ѣఞୡౄல़௬૧୑ାஒୀ௝఼஻౟ఉౡĖ౔஌౦ਥߑ௭஑௉ஓ౜য్߁౏஬੥ĝ૆ୠ੨ூ௨ণ௪ૺ౨శଓ௯ఔઢ஦ଁஃಀ࡮૚౐૳ݏ૟ಇୋಉ௼ௗ఑ౙଔಒ୕ఖ౿౞௷ౠ௹ౣಈ౥ఏ౧౹౩୼౫౼౭ଭಕఄఘప઩బಛষଋಞர౶ಱ౸ࢶ಴షಶహ౽ో಩౰ಫ౲ಭ࡙ॗೄ࡜ಊ੓ేૼఀ౛೎ਫ਼ಗࢨଆಃଉ҆౵೗ಡె௘೛౉ೝ఻ౝ೐చ௢జݑೃ௕௃ಢణತ಑ొ೮೏੠ాಿీۗ୳ృౕಋ౗஡౺ஶ৸ం஧஺೿౱౑۵ೂ௥౤ആ೙೪஢೜ഌ౾೟ಪೱ௸ڶഄ঺೧౅டఴ୺঎ഋଖ഍಺ഏ଄ഀಚം౓ಮಟರడಲೈಏ௮సದ஀ನഞ೰ಂఛލ࢟೦࣌೘୸ౘ೫ౚജೞଂೠ৿ೢൄঝ೴കಯഗൊഉ೉ಐഽ೼ୁ౯ഐ೑ഒݏಆൗശ൙௽൛഻౻ೌಸಔଙਮ౎ఫല଴ąɽଡ఍೅സೇ੕൜഼ೋാ௲૭಻൑૙൓ೲ൅൸ర஝ସധ೚ച೬ൎ೽ുൢഠಬڶ௓ଶඍలඏങഊഛബഝ൐ടൃඉ੽൦അൻౖഹൾ൬ഫ௱ഭ൱୙൳ಾ൵ஈ൷േ॒൉൪ಎപඡනඣಖඥ൴ೣమˇ࢑൧ೖൈ೨ඞಣൌಥൟ౮೯ඖඦഡষඩത෌ദಌ஠඾ନ൞೭ൠුര഑ೀঝඋඛಠොഈෟଽु૿ಹඳ஗ඵಙෆ౳2෉ඪഥ౷਽ಳදව఺෣೾෥ൣ෧୞ూೕ೶඼೸ോඑ്ජ൏සൂළൔிಝ්ซ෍ෝനெ൝ඁිෲ௞಼෵ඈ෗ঝۘവ෋රป෭෿඿ඒฑඔඤดබ෷௣ూේฬ෬තજൿ൭ං඲รආଅ૲ളąαสบ฼ൽ฾฀ัශฒඅහึถਜఝ൹టණഇ฽଑฿ධขීคஅ඗೒జԪයਡอ๝వะฐ๑ำณ෕ตටท๩੪๜ํ๞๏๯๡ยൡฅ๥൤൅0ක೵ఱ೷೩ාฏෑ෢๢ඕກූ඘൅ธ෻ෛ෽௫ฯ෠ภຎ๿෤๤ຒ๦ດഔຖ฻ຘ಍ບ෯ਐ෱൰ใ๔෶๖ਵĮĩ҇;߈ώҞΖູ҂ͮγҟ̣̥຿δ˒ŁξŁŏໂ຿:ŹͼҙͶγȍȅῗČϥW͙4໒ƙ͂36໖໕ЀƤ໙4໓Ȗ՟ໟDžʇെȹ໣໥ʇԪ໨ϓ۶໬໚ϓ˯˄໠Ȗ3ʟ໭໛Ȗϳʇ໹༁ϛҚѓ҂΁ε້ƹ་Ҡ΋ѴБ;кຳࢮУўЦѦϛАƣ4̵՟˓эĩۘϕǞŭΠ༝̐ђ˩౴Ϣ̉Ѥʅ༘ź༥ċ༧༟༓ເįIJ༣˼༐Ϭގ༖́̅ҡ༢ƹ༙ӭ҅༠༔༺ǟ༹̇ʓ༑ǣ΍ϑϿཁ༪གྷʻཆΩ༶ঞϗθϋŚ່ངŰཋѹཐ,ໝ༪༹༌ҡĔу༑ཙཕ༶ѣ̀༯པĊ༻ƣཧˇ༨ũįབ˒཭༟ťཧཽڸωעƓλ༪ɹ҂༒཰༕༭ཱི໖ѡ҃ĝྂŅ̇ːхོ༡ཚྋ˽ŌǢྛҠཨྊྔ྘ζཝϚ༲ГཇདХཀϦྎħ3ū༤ྟś༽ཚཾ̴Ĥܒ྆ཞ̽ྴ౓ྫྷ཯įࡘ྿ྪĝཫྶοŴྍཽ˞࿈κʊླྵ༚൸࿒ƭόΗѪྲྀŠྮ༮ϓЁྜྥͩŰĭœҖĺġཋ࿇ϘࠉǛ0࿟,҈ͻǤψ࿯ࡢ࿱໏ũҚĞྨϊԾ࿻ଊက࢛ဃڗғౢཛྷခԴဇΪ͵ʖ྿ाဎוစৱဎ྾࿹ဓƗ࿲ŭģЂ྿ဂလ࿳࿸ཝဢġ΂ဥဌƵဝໂဪဆဣထယֱနဖရဨཕ࿑࿹࿉व࿙ྈཎဖြ࠼ှWόཀྵئແິ༪ξ༊ྣ၍༷ཪ၉؂͘ĩчлĩ͹ၔ༉ၕ༪լ1' id='1'/><tiles values='0:8736' id='2'/><msg text='Take that draggable block with you!'/></root>"; private static var level18:String = "<root><level width='32' height='330' start_x='15' start_y='328' background_type='0' compression='true' scroll_speed='3'/><tiles values='0:10624' id='0'/><tiles values='0:964,93,0ĊČą17ďčĔą41ĖĖ:ĒĚċč:Ę,4ĉą2ęĤĠĢĩĦĨĥġĮĠħģį3ēğĎĸ,75ĕ7ĥĻĐĜČ76ľĽĎĿĕĺĸĜę10ņĭĞĐ,Ĉĕ6ňŖł1Č6ŒŖŀřŋŕōĶĴIJıėŪ:ijĬİŨĎĬűŴųŶŀŷĕŹŲĵķťŕļľŀŊĹƀƃŕ4ŠƉźƊƍŋĵě3ČŐ9ĕƔŘŚŗĎţƅƘŘƈƎŲơģŒ:ĽŦńŚƄŁźŸƮƭưżƱŵƯʼnŠƁʼnĵńĎąŞēœ68ľƼ:3ƕ6ƕœ72ĠŧƚŖƙłijşŘŢňDžČŌŕŐǂœ11njƝǢŃ,I35H140P18W8S(ǦH4P2R0F2WǠ)ǰDzǴǶǸ15ǻǽ2ǿDZdz3ǵǷR3ǺǼǾȀȌȎǸ4ȆȓȉȕȂȏ6ȒȈȊȁȍȃRļȇȔȋȞǸ9ȡȪȤȗRŐȚȢȝȥȏǠȯȜȫȸȄǧȩȼȱȦȅȻȣȖɄřɁɇȬȳ8ɆȷȲ19ȵȰɈȏħɐȽȲ22ɕɂɗǸ2ǫɋɑȦɞɟɌȾR27ɚɃɘ8ɩɦȏȑɯɡȐȅɥɛȦƒɷɍ3șɋĠņǦǨǪǬǮɴǸɿɫɺțɪȲȑɻɰȘɳɼȟʍȲȨʐʋRȮʔɸȴʡɍȺʤʎɀʝʘȄ5ʚɉʗʕɎʮȹɔʧɜŐʶɧɞʹɘɤʪʱɨʼɢɮ˂ɬɲ˅ɶˈʏȶʫȐʓʿɸʁɩĠǠĞį2ǙƐƨěĽůĝůƧłƒŔŤƱĜēųǚ˥ƽǙſƖ0ǝű˧Ŵǟǡˤđęʆǩǫǭǯˍʳʬˈ̀RʂːɍȠ˅ʜˌʱʠ̆ʎ0ʰʢ2̃ŝ̑ʥʭ˅1Ɋ̎ɒɏ̙ʵ̜ɧʸ̡ɘʻ̤ɢʾ̋ɸˁ̧ɬ˄̭2ˇ̭ˉ̳ˋɖʀˏ̪ʀ̅Ȣ˔Ď˺ʈ˽ʞ̖̔ɫ̷̹ɫ̼͈Ȳ̭̈̊͋Ȧ̺̍̏ͅɒ̙̓ʩ͓ɒ̘̭͕̚Ʉ̢̞̠͚̃͝ɝ͟ʽͦ5ͨ˃̲ͦͤɵ0̃3̶ɠ̸ͳ͊ȉ̾ĻƪƇũĻƷͽǍƻǍŖƿŭęǁǃǍLJljΈĻǡDžēǏƜśͿǔƛǖ΃ĚŻƴ˫,˵ľ΁ΟƫƸĻƃƃ΂ˬΜƵΞǢĚΘšΟΔƙΚƛƙǗˣōnjȬĕI4ȗξȾξπȃςρ̿υǷχφωψǥσώύϐϏοϕϑDžņλǥϊ˶ϖϓϟϋϒϢϜϕϝτϦϩϠϧϣϞϬϥύϙĚΥΪΧΤΨŇΤł4˭ƞηϾβίδǕγϻʅϑϰϤνϭόЊϯЋЉϞЈϡВϪЊϘdžБϨϫЖϮНЛЎПЌУКУġņŅϹƹƂϷЬʼnŚĺƫōϼŖŠЃΙγζǐй˫ϲАДЍОϠГЏфϗТϔМуψDžƕрФяХђёєЏішѕь3ϚƆЪ϶ЫίΥΩϺĪϽϿѧлиЂкǏĺ6ІщСыъЗјцѳѲѵѴЕϱЙљѻРтѹ҂҄ҁ҆ѐїϱǫήŴĺΡƶўбѣѠϳΪΒҌ˩ˮƛжŀѮѬҝŕΕƜĜͲǥɞH̓ȏȡɣTdz0ǹȇ́ǼǸ̹ʖұR͍WǸ̊ȭҫȳ̐ҷʦҳȳ͙ʬҾ͞Ӂ͡Һȳͣɢ̣ӋͧҷɣҾ̬Ӑ̯ӐͯҴͲҷʹȵҴҵȐ̼ȉҭI1ӡӞˎҾӝӜӛӃ̱ӨɭӔͫӒ̩ɢ̦ӐӏȄӍʲӁ̛ӋɅӁӅȳ͗ӃʣӃ͒һӨҹҶӃӠˋʌұ)ʄČIҧҩԐҳ4ӤүӇӨӠӢҸҾҼʟӇӀԅԄӿԂԀԅӾȄӊӺӰӹɬӷ̨ӲӰӗɢәȐӭӋӫԍӠ˒ԑӤӦՁԿӪԏԻӔԺӱӒӳӮӵԳԱӇӻǮӇԭȳ͜ԩӨӂӿԦӋԈȧԊҾԠԎӨҫԒąѯҦǨԗҰԙԛծӿԞգբҷԣՠԆӿԨȿ՛ՙȄ՗ՕӁӻəӒԴɬՐӕͭӒԺ̴ԽՈɾӜӢ)ՃӧӜՀ֏ԼԹԷԶӴӔֆքԅՔԯȳրվӄ՛ջҿӨՠԣԋ̄ճӁզԑԓիҨǬԘҺԚҮձҲԽմҷ֮շԥ֨ӇԪ֦ӈԅ֣ɓՒօӰֈՎӖՊճՇԞՀ֒֔ՅԽ֗ד֋֛Ս׎֞׌֡՛׊֥ׅׄӁ՞ҽնյӃդԝҷէִԕլַֺּIԜֱӬҷԠׁ֫׃Ӂֱ֩̕ՖפՓעӐ֟׏מӮ֌֙ɹוӪחdzՄդכӬגӒԸɬאԵ׍ӒԲ׋Ӊ؆؅ԁרԅתԤ׬׀ֿԍװӃײթԔԖ׶ҫ׸׺ԅְ׮׭Ӌׂשب՚ئԬ؇ւ؉Ӷנן؛ؚدה֖ؓӞ֓ؕ֕ՆӜٌ֘בيՏסء؈ؤӽսק؂؁ԇԢؽԌ־׻رֳسֵխطհذ٩ؼحج٥ـ٣اكӿր׊փԲӑٛٚٙ؎לԍ֏זّטٍَؗםًڃ؟Ӯ֟آ֢إغ٢ԧ٤՟٦ٵٴد٪Ӌز:ժ״ֶҪұظּ՘׼ڟӋ׿ҷոت՜ռٻտمףٝؠڂӮ؞̮٘ӚڍךِՂٓיӟۂہڏӮ؜։ևٜӮڕڸټ١ٺښٸٷӃ֭خٳղױ٬ڤش׵ڨկֻٲӚ׽٧աڱڛȄ؃׆ڗӿپهՑ֝ڑڿۋ־ۉө֑ڊۆڌٖچӘ؍ӐھӓڻӸٞ׉۱ӆۖպۭث۪ۚׯڡָͺ٭ڦٯکٱܕԻ۩ڞؾ؀ۘ܏܎܍لٟڹۑېӐ،ڐڅؙ܁ُ۽ۅӥٔۃܱڎܯی֜ڼ؊۴أ܋٠ڶ֧ٹةܢܒܠ٨ۨغ۟ҳըĜɣͼЮџϳϸѡ;ĎǜΟΝůǎθЄѫЀѮǑΟĺݜįţܙ׶ցۥ׹ګ֘ܟӃڰۙ՝فڵژ݂݁ܩ܉܈ڒ܅܄֚ܰڇؒܳݎڋބރނ܃ܮݿ۶ړܿږݹղڙܤ݆۬ٶگۜ݋۞٫ݎ׳صȹԯڪۧܞڮǸݳڜܣۮޔܦ۔ܨӿٿܫݾɢ܆ۍ؏ۻ֐ԍؔܵۇۼމܹދܻ۷܇ޏںݻԮ܌՘ެԃܐ֬ܓػޜڢ۠ڥޠ߈ܛۦܝԟ۪ؿޖۗԅ۰ޒߖ߇ɬڀ؋ܼڄ߁ۺܸܷ޺۾޼܀޿ߪܺߨ޴ى߅ܪنޯڷ݃؄ߞݵޗ݈ݲޚޥߑܖݏߔۣߢֹܜ݌ڠަԡޘ׫ߝޕقݸܧݺް۴ځܬߧ֊߳ۊ߱ۈޅҺْ߯ވ֎܂ށ߂ڽ߶ܾ߆࠙ߺ֤ەߟݶ֪ࠀܡ݉֯ڭࠅּࠇۢڧࠊҬߘࠍ۝݊ࠐࠁީࠓޫܥߊߡӼߣ֠࠮ܽߵތ߲ࠪࠨܴܲ߭ؖࠧҴٗ۹ࠞލࡓ۵߸ߣݬޮࠖࠕࠔȄتߎ࠹ܔࡄࠆޟࠉࡏࠋࡃ࠼ߚ࠹ߜ߿߾ݷޓࡎࡧ԰࠯وގࡢߴˆ࡙ࠩؑԽ޻࡜ࢋ࡞ࢉӯࡕ؝࠭ࢄࡥ࠰࠘߻ࡩࡾࡋࡊܑ࠸ࠂݱࡅڬޝࠤࡳࡀࡵࡂݮޤࡹࢡࡈࠒࡼ࡫݄࢛࠲࠱݀ݼ߷ࠜ߃޶ࢉԾ߬ࢌ߮ࢎٕࠡՉࡠ۸ࠬࢅ࢖ࢸ࢘۲߉ԫࡪ࢝ࢱࢰԉ࡯ߐֽࡲܘߕࢩޣߙࠃި࣓࠶ࡽࢳࡿࠗ࣍߹ࢗ࣊޳࢔࢓࢒߀࢐࢏ܶӣۿ࡝ࢊ࣮࢈࣬܆ֈڔ܊ࣦࣥޭ࢜ߌު࢟ࣔࢮӋࡰ࠼ڣࠈࢨࢁࣜࡱࠄࡆࣟः࣡ࢲ߽ࣤࡨࣽ࣌ӎ޲ۏࢻۀࣅࣄ޹ࣀࣱ࡛޾ࡘࣶ࣭ࢇێ߄ࡒ࣋ࢂ࢙ࢵࢴक࣑࡬݇ࢠޙࢢޛࣗ࠽ࢧխऌࠌࡸࣞڝݴऴ࣐݅ࡍࣾࢩӌࠚߦझࣆ֍࣯ࣃढކࣰࣳࢾࠠߩࡡࡔࡣࠛचࣧघ࢚खऀڴओ࣠ۛसएࢤߒޞƽƕݧƳ८ƲॱҘįīέҙƖ˕ҐݗݓΦҒўƄҗ॰˷еγεݢҡݟѧоѷѺ҃с҇ѱ҅̿ঌѼ঎ওњю҉খѓচ঒জјঝ҇ϲॾЯݓбϵвѝʼnϻѦѩমΕݣݠম঱ƛѰпхѶহҀগ঻঑ঐЋэটঽѿছৄঞ৆িϬЧ΀ॿҠ্দপݔгŞҜইЀзΰআǣћাѐঔএ৞঺৅য়়Ϣুৈ҈ঠ৪ৃড৩ѽќॼϵধॼৎҔ7ব৙ৗаঈলরৼ঵ĪЇৢে৤ঢ়ѓਅষчѽঙ৫৅৭ূ਎਍঒ণҚݒফĕ5ˢৌথ৶Ǜ˰ΤƷ৵Ƒভ঴ΖąĽα৘ժίѮж৻нκਕŻƦॳ˦˝έ˪ΫਹDž˲਷Ġਾਧ˲ਤˢ੃΅ˠ਽ੈݝ˷ĜЇ2ǩͲǷW0ȁϝҰ1ֹ੔ȗਖ਼ȃ੒)ث੗ɣ))ਜ਼ȏʠ੠4੤2੩੝Ӽ੧੢੩੭੘dzϝ੫0ਫ਼Ռ੮੣ੳɜ˄੧੩ੵਫ਼Ǻ੹X੒˔ৰ৛੉įੀ਴੊਻਱ਰઉਿઑƽੋએઈੇઘઊੂક੅ઔઙ઒ટઔ઎ઝ਼੊Ǧ੎Őַ੒ੰંੲД઀੟ֹ੯੻͑ભɣ੿઴ੑ੶ੱ੡੺Д઼੨હ੪ૂ੬੸લા੕૆ષૂરશ4੢઄Ƽઓϐન੐Ǽ੓ૂ੖મੴૄ઻੦ેੰ૟ોય૝ਫ਼ց੹ੰ૧૛ਗ਼૥۸૨૙૊ુ૤Д੬૎ૐઅઞ˚Қǘકઓઌચઍૻખάਸ਼ਵॱ૿ƳણঃΦ৷Οҏਛਖݔ଍Ďਙ΅ЩҔଊਹযਕਭ৽ݤੁ਩ਯ৛ઝήଈॲਲ਼ੀҍଂતČડଦଯବବ૾ઋઋત̚૔੏પ૘િ૎સ૴૞૶ૈȲૢ૲૜ି૦̞૯િ૪ૣ୆ϝૅ੽ૠ૰୑୍૬େ૚ઽ૑આ૽ମ଴છଙଂଳ૾଱ଡ଼଀୦ઠૺਰଲଢ଼ୣજ୥΅ધହ઺બF੾ૌ૭ୄળિୄା୏઻ୌ૏ୂ͠ଽ୷ୗ૱୺ૉ୔୅ୖ୾ઁ୵ે୚ଇ଩ୱ઩୳૙஄૳஍઱ઽૡ஘୎ȗ੬஀ஈ̝ஞ஌஠઻இஂɘஊ୽஧எઃ૸થ୩ଣ୯ੁ୬ଁ୪ঃନଆ૓ॷழଚଌŕକઔଗ଑Υਞ˱бΣ৶ƺঃҢłਨ৕Ѩਫ௎ਮଞǍਂৃਈ௛ਃি௜਋ਐেਏ২௡৉਒Όਆє௟ৣ௝ৡ௚ঘ௥৮਑৬௧௲ਓѾ௫਄௭ਇ௻௪௰௤ఀ௣ం௵௱১௹௞௽স௯ఋ০Ѿః௴ఐ௳ఒ௢௿ఇ௮௬ఌ௺ఙ௨ఁఄఝ఑ఔ঻ఆఉਊఘదచధజఏఓ௦ఠభబƽઇঃଚఴைݛॶƵġ৥న఼ఈఛగఽ६௱ృటరౄ৭ణి௼ొ௾ౌఊ఍਌మ௶యడె২౉఩ీాౙోౙ১ఫౕౡ౔ౣ౓ూਉѸుౝ౩్౞ఎఞౠ౤ే௵ౘ౫౏౵థ౷౨ప౯౼౒౲ఢ௸త౺ౚ಄౪౛Α౮౾౅ౢ౥౿০ҋংΝҎॹళଜಖǍ˨įಙ९సಜ˦ॵξનۤW6࢟ಥࡧಥՌǼŠԕǩಣಥ͒ಧӊ಩ӗಬಢָರȡಲ಺ࣇತಡ1ಮಸದࡵ಴಺ಿುձಹȇ಻ೋಽಶೀ1ಯೃನ೎ೇ೑ೂಱೄೕ̿ಷ೉೓ಳ೛Ҧೈ಼೙೔ಪಾ೜ೣ್೥ೠ೧ƊॴŬŮ೰Ŵಭ೗ೞ೬಼೮ಡ೪ಫ೟೹ವ೻೶೤಼೦ഀ೜೐೒೸್೺ഇ೼ತ೾ഋആҦഈ೘ഄ೭ഒԕഔ೷ഖ೿ೆ೩ം೫ജ഑ഞೢഠ೽ഊ೽ഌഥഉഢഩഒůಠœů677' id='1'/><tiles values='0:2180,47,ąćċčą36čČĎ:1023đĘ905Ğą8ĐėąĚ3Ģħ:75ĝĬ781ģ:89ĴĬĥĖĒę009' id='2'/><msg text='Quickly! Burn a path to safety!'/></root>"; private static var level19:String = "<root><level width='32' height='500' start_x='16' start_y='498' background_type='1' compression='true' scroll_speed='4'/><tiles values='0:160ĉ' id='0'/><tiles values='0:2372,44,0ċčďČĎĐĎ:9ĕĒđęę:Ĉ,93Ĕ76ģ5ģě7ĢĚĖĘēďĤĦĨģīĠīĞħ68ģďąĢ67Ė1ĿĻİĽĞ,ŀĖğĉĖĹĘď10ĥą11,ōąŏŋŁ6Ŕʼně6ħď6ķŃʼnş6šţʼnķŌş7Ŭ7ĩĵįĜŶŸěŶıİŲŴŜʼnŅŘŇĿŁĒş4ƈƊĔƉƌũƂ7ƄʼnƆĞŁř:śƇƎƛƚƝċŰĊŚʼnŐƕŨĔŪƧŬťƜƟƬƍƞƯƦŤūƧŮƖŰžĴƮƋưƼŘƸijİƶƁļŋƓƻLjƽƧƐƒŊľƖơƘƣljƭNJƞƗƙƥŞƧƴŤŵƾƱǡƾǛƳƩƵŋħġĔǪďǬĶǫǟǔǢƬǮǵĵǶƀŹƌźǼǻǾĬȀŷǽŕĘ3ŔĆċǑ1ĻǺąŁ4ǑĊȆĖĥȍĞĘǸǭǷțǰȝȚȞǯǖȡȡȗȂłȏȃ:1ȅƔĊ4ŇȋȦȎċŇȒƔȕȩ3ȘȜȢșȣȾɀȼȤȺȲȪȨǿȪȅƤȮȊȌȩȏȑ,ɄąȸɈɄɁȠɘȟɛǕɝɚȥȖ1ɇȀɉɒȇȒŅȪɎɈŁ3ɩȒȇɕɤğɚȣdzɜɵɹȼɠȩɢɅȫɒɯċŦɫɤȏķɨȔɅɗɂɺəŵȃȿʍŮĮʑȍȲʘʗȖ4ŗįĆʝđ:ʜĝ2ʠĭħI4H4P2S(ʩʫʭR2ƑF2W15XR90ʷW25)Rʺʿʸ1Ȋďʱʬʮʰʪˍʴʶˈʻʽˇˁ˃˅5˗ˉĖ2ˋːʭʯˌʳʵ˜˕ʾˀ˂˄ˆˀ˝ŕˠʲˎˤ2˒˧ʼ˩ʸ˫˚˜ȑ˱ˍˣˡ˵˦ˮ˨˗˻˭ˈˊ,˴́˲˶̅˸̇˙̉ʹ˾̌̂̎ˑ̄˔̒˪̔˛ˮ̋̍ˏ̜̏ʹ̟̆ˬ̡̊˞˿ˢ̛̥˓̨̞˺̠˽ł̯˳̝̂̐˖̪˼̢̮̘˲̚˥̳ʺ̵˘̸̫˰̱͇̈́̀˷̶̿͌͂ą˟͏̰˴̴̧͔̭͎̤͉̬̖̼̩͕̙͈̽͋́̈̓ͤͦͫͣ͑̃͜͟͡Ͱ̕͠˯Ć̺͆ͷ͓˹ͺͪͼŒ͚̻̦͸͍͊ͩͽ·Ϳͧ͝΂Ό͗Ȫ;ͶΑ͹Δ͢ΎͭΉ΁͖̓ΜΆΞ̲Π̀ͻ̗Υ̷͒̑ͨΕΤ͵ͥΊή΢ͳΝβͮδΓίΣΗγΧͱΩͬιΟέμζ΅οκρ΃΍͙Ϋ΀χΡͲϊΏΘͯ΋˙3Ϗϋφ̾ψϕ̣υΦϓ̀ϜΕϐϤάϠϔσʹͅϘλϔϨΜϪϱπϦς΄ϣϸόϺ͠ϵηϷ͐ϹϭΨϼ̹ϗІ͞ϡЂͼЄ͛ϿЇϻ΍αϾϟЍϴϝЋГКЈЖϞϥДЁМϑΙϚωϽЅОΒЛϩТϬПЕΰбϒФ˻ЏΪϫзгώеНЙЮϧЦмШεϢЊЧϙшкτИУоΛηЗЬтΚϛхѐвудξсёѝХаѠќјЪъцьЎ΍ϜʤʦąʣʞʥĝˉŁыϳРрѸύй΍5ĊѼЀѓϖ҂иљΕҀѥнѢ҄ЫВїЩRюŚҁѪѹўєжчѬ҉ҖћҌѧщϰіѡҢҔƘҟҥѦҒϯʢҪҐҦҒҨҊ҆ђνηųҋҜЯΜҵҗѽҸͼҺҶҍ҈ҾҰΈҲшҮʕǿʙʖӑӏʛˋ2H1ʳʿ6W˛RӚW0˅8ӟ˛ѯĜIʥӗʳȋӤӡӟӮFӛӥɔ̌ӖӘ˵ӭӞӱӠӢӭ˞čӨ1Ӫ˵ӬӻӝӯӺӲŇĥӨԃԉӜӰӛӡԅԊӦŶԁԎԔԐԏԑԐʊԍӷԏԇӻԓӣԆȵԀөԡԚԣԒԢԋӵԎӹԈԬɤѴԗԪӫԦԊԜԯԟӶәԧԽԵӿӵԂԫԻԛԈӾӴԠՁԼԴՉӥѳѰՆԙՒԝԝӳ:ԌՀӸՂՑՌĆԩՇԺԳԤԾՍ՞ԯՃ՘ԖěԘՈէԮբ՝ԲՠըՄ͘դ՗ճӼյԱԡվԥբĢӨ7H8Pȋ̿1W6Ȱ՝ֈ֊֌˩֎֐džձզոմԧԿշՐչծջՖղ֜տ֞ժ֠Պ֢բ2ռ֦֡֝ԕ֪ւ֧ք֩գֲִ֥֛֨՜ցՏ֬Ԯպ:Ļև։֋8֍֏԰׈֔׋֖׍ĖׇԹԄ՘ԽրՎ՟ָֻֽֿ֯חփթ׀כլաֹנ֚עַפնֶםӽֹԩ֓׊׌֘ŕ״׉֕ʿ֗Ňְּ׃־ԞֵׂԭӼׅתזײױךիף؉؀׬؍ֹׯ؆ՙ،؄Ȫŗ׏׶ג׸Ȫҁ؋Եיׁؕל؂מؚ؊եؓة׮اק֭שؙؒ؇՚׎؏׭ؑסضؘ؎֫طؾՅ׫ؾإֿؖبقׅ˝؝׼F׾ł؜أטՋئצֺ֣ؐمؤٖور֮ٙصٝըـװدؼٜٕ٥ٗغױ٩ٔף٦ؗխբŖӵ׵ُّŕآحنؚٞىزׄٚجս׭ٳيؘٰپ٤ֳځ٠ػڅ٣٫ڏ՛ڂ١شؽڎ؃ڗڑٯړڛڕڝعفڋڡ٪ٲ٭ڦٵښکڈګ٧ًڨٱڰٟ٘ڒ٢ڢڪڷٮ٨ڴڍڣظ֟ڲڧںگؔڽڬרןڔڼڐڸڠۇڵۉېھڳۓہۏڞۑڿۙڇەۜۗۆڮ۔دډڃ؈ۀ۠ۧڱٴیثێڶۖۋسۍڻ۳ۢ۵ڄӾʚӒȁ۾ӓʑۈֿۭʌƌŬ4܉܋ʏ܍ɸɻʣǬʟȤܑʈŗܒܕ܎ʒܚȾ֚֌ʿ3̖ײܡͼĢܒʵֻܟFܤ׬ܬłܦţܓ9ܑܱܱѴܳĖܵĔՎܪܬܣηܰǫŬܸǭׁْ݆݂݈݃݅ܽܢԅܮ͘Șܶܗܴݔ˞ݖѱݘĠ݇݊ݝݛ݉ݟݞܞ׋ܠݎԦݐň݄ĆѷԹݍˉܿ΅݁͘ݘʢݴܷݕݡ݌ݤܫݦݥܥݹ݄ހݜނݠݪٷܼݻܾݏЃݒݗݡݵޏݷܹݚށޕރޖޅŬވӺފݧ݀ޑݬӪݮܭєܦǷܱʀݪɗʡݲɥݪ4ޭǩޗ޳ޙ݉ސǵޚ؋ݾޤݿށżȣҺǂȠ޿Ǯ߁ŘķĘڸޝ޻˞ǩެݹߊݽݼ޽ƪnjdžǎȣĺDžľȤ߉غߋߓȑލӕշߠݨݲŘǑƙ߀ߪߝڑߦЃŁ޸ܻߟߒߧݹǤߙƪɂ߹ǮŢǧąߞߥ߶Ѓߎdžށߑݯދߔܜʓࠍ݋ࠉ޼ߢߐߵࠊޞࠌİş߅ſɜ߄ĵ߆Īĭ߯ࠄА߲ާߴࠃࠖߌߜށߚņߗƆߙߖࠬ߈ࠣࠪߡߍĠߏࠈࠕࠒࠇŲ߭ɟǩ࠵ࠑݰࠓ࠼ࠩ࠾ࠬƪࠚĵ߿ǞȠ߹ƨɜƫࠁ࠶ࡊݫȿܱ޲޵ݞޘ࡞݃ǃ9࠻ިߣܔݴީࡡŋࡦ࡟ބࡠ࡝ǒޕʈʨ޺ߡࡆܯޏʺࠔࡉࡷࡋȞĆࡴࡼࠋȊޭࡺࡈֶ߰࠘Ȥ˂ࡗࡽȪޱ࡮ޏ࡜Ƣࡲࠢم޻ࢎ2ࡦࡅࢃ࠿əިޔࡄ࠽࢙࢛ࢣ࢝ࡾɸࢠހࢢࢂࠗࡇ޹ࢭࠫݩࡪ࡯ࢵ࢑࢕ࡖ࢜ࢮ˞ࢥࢱ࠸ࢨƿIJࠝƹࠝĩࣄėࢍࢧĆࢽ࢈ࠤǑߨɵƑࠇࠎɛࣈࢺࢲ࢚ࡻ࣍࠷߷ࢸܛ࢔ࣔ߮ࣗࢿ࣋ࣚՁࢉ࣏߸࠳ň࣒ߜ࣭࣬Ȱٓࢾݨࣙࢇࣧ࣎࢞İȑࢁࣛࡘࣵࢰࣽࢎ࣐࣯࣡ަࠏࢹࢦࢻݑࣦ՟ࣹࣨࣟȤࡃइࣖउࣘ࣌ࣷࣜޟ࠭ũě߾ǝߺǜǦईࣳތऌޜࣸࣀʎ܏ओࠂँ࣊ࣿࠨमऊࢳ࡝ࢷ޴࠙ࣂŘެ߲ࡥ࣪ߛȥކ࡬ࣔƥ࡭ॅष࢒ा࠯͘ֆࡵऎŕħű߃ࣄ߀ࠜद࢘࣊ߨƗࢌࣣݨࡺ࣭߀ƒȾߘࣶऍनऴफࣕѴड़єࠦŎऐ6Őॖࡶक़ࢫ܎ܓ५΅ॐĽॠ࣓ࡑ࠱।धङࢊ࠮ƃ˞ौत΅७࣠ࡑॱঀॗळख़ࣻࣉळࡺࡓߙट߾߻ݠॸࣩ࠭࣫ćওࢲफ़ǀİॕॆছकࣤःॶ४঩ढ़ऒ२࡚݋ঞिɄř९঍ࢪ޾Ǒʣ঄अLJݢ्०࣐ेࡒǝȪࣼघࣾܗ࣡߳ߤलࢲख़তऺƺȄডࣤѴাǍॿऀ৊ंॉঅߜǎɥজގपॲॎ१ߩ८॰łभ৞यŗ৆ढŭনঈঝࡌडŤচ৖৥৖޿॑ࠝࠧু৷ए޾ࡍǁ߇ƀ৚࠰޶ࡦ਌२ॄɻĿহࠢ঻৬Ƥğ৳ࡔਃࣈछࡑৼॄझǷࡤਖ݃࠻ऻ߮ŒɩĘŖǑȻǹۿѵĢʛՕ܁ŕ਴ȹঊŘ॓ਁ৔Žਉ߅Ųķॐ৓șĸऐ১ॢ࠱I3̏এࠫ·ध4ࡆधƂ঄ੇঠ੍੏ॳऊ੒ݥ੔ࢃ੖঳্੥ॾܻ੎ˑ੐ࢿ੟ݼ੡ࢮ੣ࣺবֆ੩ৰਫ਼͜੠੕ݥɩٷ੊੦Ťੌੵ॥ংơ੭ܡ੯࢘੻Njੳ̌ંঁࡊઆWઈࡶઊŕৌइ੉߼ઁੜॎઑઓܾકDŽ਑ਗ਼઎੫ݐઞ੺ݼ੼৲टখࡏŠ৴ঙࠀઍજनન੢ડਛࢋੴવ઄ܻ̼੹સપਖ੿ઙܚਫ८ਮओğɡɣĝѲɽ૎ʞɴࠟࣆ৕ǒ਀ࢴ਼॒૜থࡿ3ॺॽˋથ੝ੑ੸੮઩ܡƂ߅ॻ૬džय़૮ਸ઴੪૥੬૧ઇ૩Wɯŝછ૴ઝ૷઒ૹƐঝķঊৈ૳੶૦ી૨ૂ૪আৡňߘਜ਼૾શ଀ટܢહ࠳ॼ࣮૭ࠟȰ઼ଔા̺੓ଂ˞਻ଓଉ૶ଋ૸଍ૺ૟Ȥଆࡺନઃઐଖଥोર৻ળଳએࡽષੰહजਠୃࡔƪʡއ૤૿ଫଁଭɯગ঱ૈƢ૊঱੾ॶૌ૑ɅૐɈɾȖ૔हࠠ૚ਾ߆ੂ૗੅ह߅Ůর૆ॊݩચ੨ઽଵୋଗݯଙઌ଼દͳିઉૃખ୫ऑ९૽଩ધଶ୍ģઅਖ਼ଠஂ୹஄ୀ୼؛୾૱୭੧ૣ୰ା஌୻଎Ť૫ɻતகࢧ୺ઔஎ੽੿ࡱ୮ஔଡୱવ୳॥੗஛ࡿ஝ந஖୲ଷࣈયમ୆ࡑঘࡎৼଈ଴லபଷƲହߙܖ஽ଽட஗஡ஙਞૅ୕ő0ɩħ୓୫ƥ਷Ӑ܂८ਵௗ܀ਲʞħ௚௖௡ȩ௟ȩ୚ɤଡ଼௥ਸ਼େ૒਩ࠛୟ੄ࣁੀࣃੁ૕ୟਣǨଐआ஧ஊ˯஠ઠ୼ઢ௹ంȾ࣯ŧ୷૵ஃளஅ͘ૼ୯றைఊ஍ங৫࠴८ੇଲ୉କ఑஘ମସি଒ఙଢ௾ଘఀਐଛஒࠝଟெ୸௽௉௿ோܨǮఇ୊ீఋઢௌࡿఘஞ੷ఛொఝĆĿભĵళచవఒఝூখલǥࡔભେ؜డனଔ஫ੱܲĵŖॻౘĔ୑ǒ௓ౚőΆౠౙౡ,౟౥౤౦౩ౡ௕௣௛౮௠౭௢௘௜ޓɅ௤౳౯௩౶౹౸Ȗų1' id='1'/><tiles values='0:160ĉ' id='2'/><msg text='This level is FAST! Pick up the cat to survive.'/></root>"; private static var level20:String = "<root><level width='32' height='335' start_x='15' start_y='333' background_type='0' compression='true' scroll_speed='3'/><tiles values='0:10784' id='0'/><tiles values='0:1412,44,0ċčďČĎĆ3ĐĎėĒđ:Ĉ,9ěĖēď106Ĕ11ęĞě47ęĕį45ĞĖď9ĵĴħĖķĘļĶĵĜĩğĔĻŀ1ŅĽĬĮľ:ĊI31H50P2T(I2R330F2W4śIJşšRŞŠŢ15ťŢŝŭRūŰŨŦ3Ťũ)ĔĮŏőœŕŗřśůũţŬƄŴŪƆŵƈűƊŢƌŶƎŹąĊŌIJĹĿĽņňƙƝŁƘōłņčŏ2ŒŔŖŘŚŜƐŷŦƌŲƄƃŦƱƯŰƑŭƓō,ř3H4ƨƀ0ŧťŚƵƫŴŚƮŚ6ljR7ƊŚ9ǎĤǑű2ǔ3ǖūǔ6Ǜ8ǔ9ǖ2ĤDžR22ǣǀǦǩǣ7ǎ28ǖŝǎŐdzƳƫNjƺŎ3ƦžƩƁƬƷƮƏŰƵŮưƎDŽƲȄǻƼ2ƾǀſŘǃǔdzǎNjRǍǦǐǦǓǦǕȠǘȠǚȠœȠǞȠǠȠǢǬǥŠŚǨǪǰ5ǮǰDzǦǴȹLJƂǵǺĔǼǾǁƪȽȃȊȉƷɈƇɆƹħčŌǤƠ39īńĪĢ:ĖƽƿɃIȕȦȹȘǖțȰǏǖȟɥȡɩȣɩȥɩȧɩȩɩȫɩȭɥǤǰǩǬǫɷȵǬǯǬȸɥȺʃȼȂʃȿąijɛȒȀɟɯɡǦșɤWŚȝɥɨʕű0ǛɬʚŇǛɰʟɲʟɴʟɶʚɸǬɺɷɼʩɾɷʀɷʂʚʄʵʆǸƅDžƺġđĪŃą4ʽħĮɘ1ĦƥƧȓȁƳŮȄȋƴȊˍƍųɌŸɀȏȑɝʏʟȗʒɣǎʗʚʙdžʜȢǙʡǝǟǡǣȯʩʬʩʮȱʰʩʲʩʴLjǵʸȾǑȎˉǿƀƫ˓ƸɋƄȇśɊƶȌƒ˘ʌ˛ːdž˞ɥʓˡɧǔ˦ɫ˨Ȧ˪ȪˬȮɹȳǬ˴ȱ˶ȱ˸̈˺Ƿ˼ʻ̍ǽˊȀ̂ƭɇȆ˒̉ȅ̋ɍąćɗě1˅ʾɘ4ɔ̎ˋ˜̑ʑ̓ˠȜ̖Ƞ̘ʟʞdžɮ˝̜ɳ̞ɷˮȱ˰ȱ˲ǧ̣ǧ̥ģ̌ʶƫ˻ȹʉ:ʋȐɜ̐ͅ˔ʃɢǦʔʖ͌ɩ͎dž͐ű͔͒̑ʥ͖ʩ͘ǧ͚ǧ͜ǭɿȷȗ̩ȹʹ̄ʕƺ1̓ͪʍǂͭʆͰɥͲɦȞ̗ʝ̚ɯͼdžʦdžʨȱ΀ȲɻȴȶʁΈȻ̪ͦ˽̍Α̏Ȗ͈ʚ̔͋Κ͍ΜȤ˩Ȩ˫Ȭ˭̠Χ̢ΩʳΫʅέʈί̺ĩ̈́ʎΔ̒ε͊ɥˢǒΛ˧λ̛ν̝ο̟ʫ̡ɽτ˷φʷψʵͧŎαͬγͯ˟ͱ̕θ͵κɭμɱξɵπϞςϠΆΪɡΉʃ΋ͧ5όϩώϫʵΖʚΘϔRˤʛϲʟͺƍΟűΡűΣǧΥ΂2΄͞2͠DZϣͤϥǹϊͨ˙ͫІɠϬ͉Ϯηʘϖ̙ϘΞϚ͕Ϝ͗ρʭΨϼυϾάΊ̫Ȱƺ8ƤŜ̯́Ʌ̸̅ˑɉ̴˕ъšʼ,3̿ĘĢ̼Ęєɖŏƾ̀Ʉʪ̆ʨŪʦŪʤƉưѦЕưѢƺœѓѕĶĠĪњʊčњɘijїѴͨďżчɄʇŵˏ̶̈юыˎ̌ąĖѷ̀ҍіʾѻɚŐѿˌ̲яьƲ҄Җ˗ʊĩ38љҠďҟҡɀĦǀіďĒҪċҪͨόғўҕ˖̊ҘƋ҆ҵ҈̹ЧřH1ŕЍŴćŢПӂҤѽƦҿϕťӃ͟ӆҢȏҾӀʙӍӅӌӇӑӊӁӌČӎӗҢĜƼ̮Ҳ̱Ҵ̷ҶȈҸӧҺҜүәӓӂӝӖŠŇӐҽӚӔӲ˶ӵĘӷӰӜӄӻӘӾӋӴӺӏĔ5ҠԄӛԆԁԈӈӒԅWӕԂӶӉӿԎӞӴԃԘԓԕԐĆ̓ӣɝӥѐӫͮҷ̳̆ԧΎˈԤˋԦ҂ԬӨ҅ԫҗӬёħΐԒԍԔԇӟӽԞԾԠՁԑӸӱԏՆӯԟՀԜӠǚјĚĔ͂ՌՄՎԔԝԽӹՊՏՂ՛ՉԛՙԗՠԀբӼҊį˃̺ɁҔԲԹԨ̇˓̇қԺҊŻՃ՜է՚Ոզӳգ՟սԚտըՖպքӇƻї֋Ĭĩ֌ҏћչաֈդւԿ՝րՇԙ֗ջ֛֕Յ՞ˁɔɘիӡԌևԖց֟՘օ֧֚֓֩Ս֘ը֦цӤЙѫȊ1ѤűѩǜȆ־ּΏ҉ĜիՒəֆ֯Ԑ׉վְ׌փ׎֮׍ԡԊ׏ֲ֪֜֔֝י՗ֳռ֫מӠΏӢѝԥщԳԸԩөԷ҇ʺӭˇפծָȆѢѪ׀ֺʢѥֺׂѬԻז֠֙׿֬ןךטֱםכʊԋ֒דՋגא׋؏חב،ؐՆӮќײҁհːƉэ׬ҹ׮ն֦ؕؓؑإ؀֭ب؃֞؅ְҼŝؚ̃҃ӪԶԵյ4ѭϨեؖ֡؂סל֨اؼئؗ5ˈثـ؇ق؎ى؉ؿ؉ōѽرַ؛آձ̵صظԮӢ0زظ؝תض؞׭Όعɀً׊ٍلة؄؈؆ِ؆ĜҠ֏Փٶٱؔ٬جف٪ؾؒ٭Ӑٵׇĝڂڂٿٻ٩؍پَٰڇيՒׇŜƼ4ƿӀֻŞ5W57DŽڙڛźڐٵƻڎُڤڍڌٹ֖ڀڡҎѽڔ4ږȫڞڜژښĮąˈگӀڵڛ׶ڳɀƤںΠڼڴFڿڸړڕŚۄھڶĔ؋ٺڏڦکנڥڨԡ̓ۂۍڽۄĔڹۊڝڶۛڷōہ۠ڗۆۢ۝ۈIۚیۨۇ:ېڪڈٸك۴ےۗؗۙۧڲ۪۩ڟ۬ۮ܀ڜ۰ێƔۦڰۃ܄ۡ܁:۟܊܍܅۾܎Լ۸ۖۑܘܗڧܙٲԋۚ܆ۜ܄۞ۉܑۯܔۤМܥڱی۫܏ܫۋ܌ܡۤ۳ەܜܛ۔خ۷ܶدۼܑܳܒܤۭ۠ܧܮܪ݃ܿܨ݁܂݄ܲܨĔܖܼܻܺ٫ܸݓٯدܟ۽ܭܣ݌ܦݎ݆܉ܬ܌ܮܐڻݠݝ۲۶ݕݒݬݔڋܝۣܽܰ݋ܯ݈ݧڳۣۀݳ݀ݥݳ݅ݩݑݯ؁ۓݗٌݰݖؗݚ݉ݜ۱ݦܱݹܳݻݷ܋ݹݾޔܒݺąܵރتݱކٽބۺ֡:ܾݣޖݩޏޙޒ܈ݼ݊ޗ܃ޑݏޭޘݽީݿݨ۱݇ܠޯ޷ޘހ۱هޮލ܇ݶޱۢެͨު޶ގ޸޲ܮ߂޵޽ߍ޿޹߅ߑ޼߄܎ު߀ߗߋߓ߅ߜߖ܎8ދާۿ۱Ҥߕߏݩߥ߃ݤݩߪ߇ڽ߉߮ߒߚ߲ۤݍ߬۱߶ߙ߰ߩߦސ߈޳۲ࠂݴܮߺݟ߼ێɘɑˆЄ5Hǘݧ1Ԕ܋ࠖĉΰࠒࠔܱ࠙࠘ࠗࠛࠓƨDŽࠟ׶ࠟࠢࠝࠥࠗࠧࠡƔȏࠜࠤŞࠦۨࠨ࠯ř࠱ࠕࠬ࠵࠮ڣǩࠣ࠺ĉ࠭ࠚϋڬ֐ٷڅڭࡆڮݛࠀ߅ࠊݸࠄ۝ї࠸ࡀࠞ࠻ȫ࠶࠾࠹ࡗࡂ࠼ࡄ࡛ࡖࠫ࡞࡙࠽Ϩ࡜ࡣࠠࡠࡧࡢ࠳ࡘ࡮࡫࠰࡭F࠴ࡥࡱࡕࠪࡰࡪĊٶĜͩ9HǽPֻӛࠖ3Ħʊȏࢀࢂࢄȟࢆ࢈Ҽ2ࢋ2ࢃ8ࢅWࢇԉࢊࢁ࢔ࢍ࡮࢙ˁϨ࢓࢕ࢗࢠ࢑ࢣ࢞ࡴ࢘࢐ࡿ࢜ࢤࢎࢫ࢚řࢨ࢖ࢰࢦ4؋ࢴࢥࢬ࢛ࢌࢵ࢟ࢼࢳࢮࢩ࢏ࢲ࢒ࣃࢿࢪࢷࢢࣈࢻࠩ࠲ࢪࡤࡺΰࢺࢶ࢐࡬ࡹ࣑ࡻ࣏ࣔ࣍ࣖࡁࣛ࠷ࣇࢾ࣎ˁࢹࣝࣀࣆࣩࣕࢉࣂ࣭ࣣࣤࣞ࢝ࣉࣅࢡࢽࣳࣥࢧࣨ࣊ࣁࣲࢯࣺ࣯࣬ऀࢸࣷࣿࣼ࣪ࣻࣵँࣰࣸऋआऊ4࣌ंइ࣢ࡨࡺࡃࡼ࠾࣫औࡡࣙࡵ࣓࣢छऊ࣐ࣘटࣚࣜओऐࣧऩࢱࣱढभऎࣄरࢭब࣋अलࢦऴऌऀऺएळषࣴरऄ࣮ऻजऽसࣽयहीࣹऑौऍत࣠घनॅणࡲञ࡯धडउर॑࡝࣡चड़ࢷफॕिॄाो१ैईव࢐ॎ४ु३ࣾ५मॢॉॶՔčࡔ࠿क़࣒ग़ॗथख़࠶ঀ॒࡟ࡼ঄य़॓ӈखࣚঊঈࡩ঎ࡸঁॾঃ঒অࡶইখউআՂঌदঃ́֎ࡊࡉࡇࡋࡋəɔľƘį̾ʿĸŌњপɐƢƚݐѓࣗѓӠĊѻĊ˂˘ɓ˘ॎ࠯Ҩą঩যŀɑলŀ঱েіijĒ৏ċ৑Ɨ৐ৎ৖৕৘৒঵ƞ঱ěȐɕլȏڔࣙŠ6׶৥ː˜০ۨ৥֑ৣ࣐২৬W০Ŵ৪১৳৮ࡳৱʦ৴ť৶৲࢐ɚМ৺৳৷৽Š৿ৼ৹৤ਅ਀৩ː৫ਊą7ɏ্Ɲফ৊৛ਘਖЧਙշৠōĻ̽Ϩ৯ݧ৻ŴਇWਉਨ਋ৰ਍ৼਏਨਆਭਦਯਲ৵ਐਲ਼թřਥܱਧť਩ਫੀ਴ਾਸ਼ੀ਱ੇ਀źਕ৛ਝਖਛਚਞ੐ড়ŋ৞ਢħਤ਄਑਷৾ਹ੊਻ਃ਌ਜ਼ੇਸਲ੟׈਼ਗ਼ਆੈਿ৭੠਽ਫ਼ਰ੥੉਒੨੡ਮ੣২ੳ੭৸ਓƕ੏੒ઁ઀ĸڂંń঩ѲŌףɐ̓Ĥ7ڕŶƀ1ԍǗŨȚખȝ3ЏFચʠજRŤચȟŢțŪȣŪȥ5છપȝપŤڙǀΎ֥5৆ਚতٓ۠ࣖӞࣵӢહࣀ઻भઽܑ઺Ӗ઼ŏાࣼીࢠૂӿ࢏૊࢈ૌӋ૎ૅુેૃિ૔ો૖્ࢫ૏Ք঴ਗপࡔȑ૜ࢇ૞સ૗ૉ૙ૐ૛૒૝૫ӽ૤૮૦૰૨૥০૵૑ࢻ૧ૺૄʀ૆૲ૻ૵ƟরƤ઎ઐ4઒ઔĉખɤΙઝ˦ઝȥચડӛતŞદଘ͹Ŭપȡબଜઠଜš0ƺēષįڟїઆڸƜōઍ0એڰઑŘઓɨકşગସઙછ଒ŬଔାଖହଙFનଠଞΙમଢ઱źѹণࡊ૭ଂ૿૕ଁ૾࣬૽૘୒૚୔୘ୖ୐୕औୗ૪୙૬୛ୢଢ଼୥૓ୣ૟੓ফૣૈ୩୧୯૯୪૶૳૸୴ୡ୰ୠ୞ଡ଼୻୨୳ୱ૩୺଀୲૴୴଄োଆରଈଊଶଌସ଎଻ȡଽટକણୂଷ୅ۆફୈଡ۩ୋƔǘįࠏ֍দଧ஧୎୫ॻőӚŤ࠙୷गઞயીࡂ࡮ҬԌமԔர঍ல஺ழࡗஷǤԽஹˇிଛ࣑஻ࠦஶՂ஬Ӏ௄௉࠻ȥள૔வࢪு்NJŬ௓୒࡞௒ா௔ீௌ௃௚௟௜͑௤௅௠ࠫௗ௣ைெ஽௩௦௫௢஭௨ௐ௝௶ெோ؇௏௯௞௱ग௻ȏ௘ஞ௛ற௿௷௡ࡽাřఄ௽௪௰ఉ௳௼௹ఐఈ௺௖לఏ௲఑ఘࠖு௭ఆ஼గ௪ంஸకజత௲దՃఛఇనఁఙఔ௮ఖర঍బడ௥యఴఫలՖమణశொా఍హఀు఼ఱటՔͩఎూ௑౏௕ోӈ౎౉ైఢృ౓ఃెఒఝథౄூ௵ౖ࠴పొਪ௴௎౑௧ౣࠬబౕౘ౐౬౒౧౔౜௾౪ఓ౛ౢ౰௸౲ఊ౺౩౾ே౼౿౅౻఺౗ಈౙ౴ࡾಀ௙ಂ౞ఽౚಆಁ಄ಃಊ౭ౠ౯ಘ౽ಖసಇే౤౸ಟಕಜ౫ಞౠ౶వಂತಏಖ಑౦௬ಠౝ౥షಚಪ఩ಣಷಳ౷ಬౄۂSŘۚք5XԾǩ)Гӌङ९ೀೂ۠ೄೆˤ5೉Ƴࠚಔಮದಗಡಙಓభ౸ರಶೞಛ೜ಝ೚ಭఅ೚ೡಋಲಥ೥ಧ೧಻೮಴಺ೞಸ఻ನೣ೷ಉ೯౹ధಐವ೬౨೙೽೫ೝಌƗ೘೩അഁഇఠ಼ಫ೹౴ಎഋ೴ಾ೶ഐಹഗഓഊీಢഛ೭ഄഖഒഏೳಽതഃകധೱഘദ഑ബജౡമചനࡌ܊ುޘ೑ೇ೔ೊӴೌŎ೎ഹӻ೅഻ೕӂϨ೤ണരഥഢഫ೽౮೻ടവిೠ഍౳ഡപയ൏ೲ്൚ఒ೨ഞ౱൓ഝൕ೵റ൑ൢോഩൡ೦൛౓಍൤ഀ൦ൌ൙ഴ൪౵ങ೸൷ഔ൬೰൮റ൉ൎൟ൜൵ൺൿ൘ൽ೛ඃ೺൹೼උ൧ඍ൒ൻ൱ಯൖಅുೃൃ೒lj഼ֿാՔീۊസ඙ӂൄ೓െೋർ൥ഠచණൣ೟൲ඬళඕ൳තනද൨൭ඏ൴ඉആൗබප඲ൔභඓല൝൶ඇౌඪහ෉൸ളආර൫ථළඁ൞ఞ඀ඹൾෑ෎෇ැ෗ඈී෍෋ශද෕෈ෛ෣೪ඖఓ൰ෆඅඎෟව෪ඵඳෳෂ೿෤ළෙඊ෱෵ഌ෴ස෹෢෸෶මඑ൩ฃ෮ල෫ద඘೐ක൅ഽ࠽ఌช෡෨ค෿෷ต෌ทปขฝ෦ෞ౟ඌා෰รෘงය෽෩นฆลඒฉมฦಒഓ́ਂาะฝ෻඾ಅพฅ෺ษේหธൊฉ฻ฌ಩แ෼ว෠ผใධฟ๏ุจ෨́ඡഷ೏ܑഺටض೗฾อเฯ๔๒็฀ไං๤๊฼೾๟ๅฺ๪่ฤෝำಱෲ๠ั๥ෂডĪඔ฿๸๰๦๭๨์๶๮๩๢สຄො෯ู๏๹෥ຏුຑ๿ຈโຊׅ๼๐๾๯ຕ๋ิ඼ถຎ຀บຓຜ๳ຍຊกປຢຝ๫ൠມຩ๧ූັฎ๚ฐ๜ඞณঢි๎ັຂຳຟຼ๑຾๓ຉແ຋ซກ໅ຖ໇ฬຆໄລງວ๣໐ຣവ෭໑຾໙ໍາ෧ຬ໓ໆ๵෾໏ໜບ๷຦ຌ໔໥໛໢ສ໧ໟ໩໡ೢഈݢ2ඣฏඥඛDž഼ೖൈ໬໳ํໃ໥໋ພ໭๽໯ທ్໿ം່ະ༃་എໂຫຩึ໮໤༆໦༗ༀ຅຃໇ޥ༖༝༘༐඿໣༡༛ఋื༣฽༄ຮలİ༇༚༌໎༦༲༕༰༴༑̺ո༬๱ಌ7ǐ' id='1'/><tiles values='0:2446,48,ą65ċ9Ď:51ēČĔ173ċ7Ĕ641ċčą1ĝ4ğą3ġģĩĔđįī2Ĝ' id='2'/><msg text='The final battle!'/></root>"; private static var level21:String = "<root><level width='31' height='217' start_x='14' start_y='214' background_type='0' compression='true' scroll_speed='4'/><tiles values='0:4727,I97H100PĊą19ė' id='0'/><tiles values='0:4ć8,I103H200P26T(I4WČ0R90F2R1ĐĠR6ğġ75F3Ģ0īĭ13İR4ĴĞF4ĦğĺģļĢijF5ĮīŃĪłĵŅ),ą146ĊČĎĐĒĔĖIĜĨWġ1ī2śR3ŚġĶĠŠħŦĩŞŠĸşŜįũĢĤŮŀūŜ5ţĢ6ŶĢ8Ź19ż2Čű22Ƃ4ŹƇƂ7Ɗ8żŢŹ3ŝű3ŢƕťŮŋō5őčďđēĕėĜ3ƙŠƖƒƔŴƑƅƏƅƍƅ5ƈƊƇƅƄŴƀż1žű1ŻƾŸƾŁƹųŠČżŭŠŇŴŨŴƧġƗƹżţƛ:84ƞ2HŸŕƣIĭƒŹǎŬſdžŷſƽŴƃƊƉưǢƒǒśWŸšDzǑđǯƅǮǫƸLJǪLJǂDžŹNJġǤǸűţWĪŽğ1ĢƱȏƿȎĢǂȒǮȒƗȒĤȒƄȒǹȏĸ1WžĝȔƽȏȑĻFȏȖĵȔȚRȜĮȬRȎȤĜƼȔƀȔŔȵǬȿȳ2ȱ2ȘȲȮĔȽȑȸȲȪ2ȨȲȢšȠšȞšȳƩȵƦȰȮȷžǖ3ɏĊǛ1ēȶF6ǴřɨWȹƽɩŸɣ1HɥġNJŸXʼnŦ7Ő0ɣɴɦɷ0ɹƧɼŌɿɵȦŦɸɺşʆɾIɤʁŚʌʅɽʈʓʋʃʍȋʗʑɳʉʂʄūʏɲʀɶʔʛIJūǘʇʑʧʊşʌʫŦʭʐʒʨʚɹʴşʶʘʹʲʪDŽȤǙʷʰʢŵʵ˅ʦʡʩʻ˃ʭʟʰȺɬǵğɩɫɰɾąŐʯʉ˗ɪɧ˘ȍ˕ʷʠʙˁʣɻʞʸʱɪ˪ʎˬˇˎʜʥ˞˨˯˵˲ˍʺ˺ʮƃ˳˽ʖ˿˧ˀ˹ʼ˄˿́˩ˉʽˋ˷̆ʳː̏˭ˈ̈ʾ̐ˮ̒ʬ̔̅̚˂̜ˌɦ˔˚ˢɭ̦ɱ˜ʿ̨˙̧̤ɪ̢̑ʛ̃ˆ˼̴̫̌ˈ̸̙̺ʤ˻˸ʕ̾̄̋˹̶̛̻͈̀̇̓̊ˊ̵̠͎͋̀͐ˏ̡͓̲͕̱̟͙̯͒̎͛˖ɬ̭̩:˝˭ˠ͡ˣ͠˦̈́́˫͏͘˾͗͜Ͳ̹˴̳͆ͭ͂ͬ͌ͺͯͼ͔̍̉ͳ̖͊΄˴̗̔͹͝΃Ͷ˽Ή̓ͽΌˑ͇̣ɯˡˠͣ˛̫̭ͥͨɮΞ͛̽ͿΎ̷ͻΥͅΧ̼ͷΪ̕άΤ˒Β͵α΁ΐ·ΏΆΨ͍͞η̌ζκ͑μ΢Έ͊δŜΗ̧ͩΡ̪̙Ξ̦Π˥σ̂έ΋γήϓΰϗΦϙϕ̞͆Σ˱ΑειΫθ͖πΓΊβοϥξϤΕͱΐφˤ̥Ι̬ŌΜύ˥Ϗϴ̰ϳϠʝͰʹ͸βЄ΁ІͱϞϝέϟτϧϭ͉ЏϚБ͚Аλ΍ЖρИϰʹϲМͫϼϋϹͧϻ϶ͫϒϛϡνΩϜЅϔЮЭЇЌЋϙЍϦЕГЗ̘йКлϕϬмϩϢϱυПψΟϷόФϵ͢ϽɱϿίЪϨϖдђЙ˰ЁЫͮіМЀ˶ѝЎипϯѣВѥѢϫϯжϮ̡ϳР϶ТͦʰώЦчШЬќѕљѓЈЃЯвеѺџѫДςї΂оѩѦҊѨϣВ҄кǙѮчСϑъѳХэЧѐϘѹаҞҀҠЉѿңҁҟѻҜѬҍфҋҎҫНѤҌ҆Ѡз͞ғѴэѱΝҙͪѶҩѸҨсєҧџ҂̿ҥќҐ;ӉѧҳӍЛӏ҉ҮӎҲЛӊтҷҼϊҖУҘьҽΡҿћӁӆЂўӇѾбӈӁӗϖӭрӑϪӓӐӕӒҬиӯх̞ѯҹӜѲ˟Ӛϐ˚ѷӣӅӄӨӧӦёӤԇуөӌӵӲӷӔӳӶҰҭԓӖӱ͟ҔѰӾһӟ̮ҾҴЩԌҡԦӫԆԧԪԩˬӭЊԑԊҵӴԕԒԗү΅ҏԛәԡΚϸӿɦҸӠϑӢӋԨԏՇԉњՆԬՈ҃ӥ΀ԙԖԹԸѡԔՒԶՔҳӹѭцՂӛԃҗԀԽюՑՎԈԋՍՊѼҤէԎիՅтՋղѓӰԱճ҈̝Ի՞ԁщӝգΘҚԣԯխհӂѽֆՐԄՌԮԛոնԵԲҪ՗Է՛ջӻԝӽատՁսқԤӀժթըҝՉ֣֒֡֍ԍզ՚Դ՘֨ґְнՙՖԚԱԼցˣҺϺդ֟քӪծոֈׂ֧г֫֋մ҇֐֯֏ұֵ֑֬Δ֘՟Ծբֽ֝փ֊҇׃֥֢ם֤ԥՏׇձչֲ׉ӂ׋֮֕תл՜ָ͎ωו֜ġהե׈Ӄԫנ֩צ׸ԭկׄ׷ש֭ՓבִԳ؄؇պַռդֻыֹԢӡ֠ԅ׺ؔ׼לסؕ֌׿ן؜֓׫؃؆؟؈أآֶ֑҅װш؎ӞؐԂϾؓ؛ׅ׀։ףև׆׹؞اؤػئֱ׍Ԙ׬؊ة،خվՀ״֞יضךطش؀כظ׾א؉׼؂؅ٖ׎׌؁Ӻ˓ֺ֙ԟּن־ٍ٥ٌ٧عؙٔغؿյٚقٙفء٬ֳԜ׵ТĞ2' id='1'/><tiles values='0:6727' id='2'/><msg text='Destroy King Shroom!'/></root>"; public static var levels:Array = new Array(level1, level2, level3, level4, level5, level6, level7, level8, level9, level10, level11, level12, level13, level14, level15, level16, level17, level18, level19, level20, level21); } }//package
Section 219
//MagnetBulletHitMC (MagnetBulletHitMC) package { import flash.display.*; public dynamic class MagnetBulletHitMC extends MovieClip { } }//package
Section 220
//MagnetBulletMC (MagnetBulletMC) package { import flash.display.*; public dynamic class MagnetBulletMC extends MovieClip { } }//package
Section 221
//MagnetiseMC (MagnetiseMC) package { import flash.display.*; public dynamic class MagnetiseMC extends MovieClip { } }//package
Section 222
//MD5 (MD5) package { public class MD5 { public static const HEX_FORMAT_LOWERCASE:uint = 0; public static const HEX_FORMAT_UPPERCASE:uint = 1; public static const BASE64_PAD_CHARACTER_DEFAULT_COMPLIANCE:String = ""; public static const BASE64_PAD_CHARACTER_RFC_COMPLIANCE:String = "="; public static var hexcase:uint = 0; public static var b64pad:String = ""; public function hash(_arg1:String):String{ return (hex_md5(_arg1)); } public static function encrypt(_arg1:String):String{ return (hex_md5(_arg1)); } public static function hex_md5(_arg1:String):String{ return (rstr2hex(rstr_md5(str2rstr_utf8(_arg1)))); } public static function b64_md5(_arg1:String):String{ return (rstr2b64(rstr_md5(str2rstr_utf8(_arg1)))); } public static function any_md5(_arg1:String, _arg2:String):String{ return (rstr2any(rstr_md5(str2rstr_utf8(_arg1)), _arg2)); } public static function hex_hmac_md5(_arg1:String, _arg2:String):String{ return (rstr2hex(rstr_hmac_md5(str2rstr_utf8(_arg1), str2rstr_utf8(_arg2)))); } public static function b64_hmac_md5(_arg1:String, _arg2:String):String{ return (rstr2b64(rstr_hmac_md5(str2rstr_utf8(_arg1), str2rstr_utf8(_arg2)))); } public static function any_hmac_md5(_arg1:String, _arg2:String, _arg3:String):String{ return (rstr2any(rstr_hmac_md5(str2rstr_utf8(_arg1), str2rstr_utf8(_arg2)), _arg3)); } public static function md5_vm_test():Boolean{ return ((hex_md5("abc") == "900150983cd24fb0d6963f7d28e17f72")); } public static function rstr_md5(_arg1:String):String{ return (binl2rstr(binl_md5(rstr2binl(_arg1), (_arg1.length * 8)))); } public static function rstr_hmac_md5(_arg1:String, _arg2:String):String{ var _local3:Array = rstr2binl(_arg1); if (_local3.length > 16){ _local3 = binl_md5(_local3, (_arg1.length * 8)); }; var _local4:Array = new Array(16); var _local5:Array = new Array(16); var _local6:Number = 0; while (_local6 < 16) { _local4[_local6] = (_local3[_local6] ^ 909522486); _local5[_local6] = (_local3[_local6] ^ 1549556828); _local6++; }; var _local7:Array = binl_md5(_local4.concat(rstr2binl(_arg2)), (0x0200 + (_arg2.length * 8))); return (binl2rstr(binl_md5(_local5.concat(_local7), (0x0200 + 128)))); } public static function rstr2hex(_arg1:String):String{ var _local4:Number; var _local2:String = (hexcase) ? "0123456789ABCDEF" : "0123456789abcdef"; var _local3 = ""; var _local5:Number = 0; while (_local5 < _arg1.length) { _local4 = _arg1.charCodeAt(_local5); _local3 = (_local3 + (_local2.charAt(((_local4 >>> 4) & 15)) + _local2.charAt((_local4 & 15)))); _local5++; }; return (_local3); } public static function rstr2b64(_arg1:String):String{ var _local6:Number; var _local7:Number; var _local2 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; var _local3 = ""; var _local4:Number = _arg1.length; var _local5:Number = 0; while (_local5 < _local4) { _local6 = (((_arg1.charCodeAt(_local5) << 16) | (((_local5 + 1) < _local4)) ? (_arg1.charCodeAt((_local5 + 1)) << 8) : 0) | (((_local5 + 2) < _local4)) ? _arg1.charCodeAt((_local5 + 2)) : 0); _local7 = 0; while (_local7 < 4) { if (((_local5 * 8) + (_local7 * 6)) > (_arg1.length * 8)){ _local3 = (_local3 + b64pad); } else { _local3 = (_local3 + _local2.charAt(((_local6 >>> (6 * (3 - _local7))) & 63))); }; _local7++; }; _local5 = (_local5 + 3); }; return (_local3); } public static function rstr2any(_arg1:String, _arg2:String):String{ var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Array; var _local3:Number = _arg2.length; var _local4:Array = []; var _local9:Array = new Array((_arg1.length / 2)); _local5 = 0; while (_local5 < _local9.length) { _local9[_local5] = ((_arg1.charCodeAt((_local5 * 2)) << 8) | _arg1.charCodeAt(((_local5 * 2) + 1))); _local5++; }; while (_local9.length > 0) { _local8 = []; _local7 = 0; _local5 = 0; while (_local5 < _local9.length) { _local7 = ((_local7 << 16) + _local9[_local5]); _local6 = Math.floor((_local7 / _local3)); _local7 = (_local7 - (_local6 * _local3)); if ((((_local8.length > 0)) || ((_local6 > 0)))){ _local8[_local8.length] = _local6; }; _local5++; }; _local4[_local4.length] = _local7; _local9 = _local8; }; var _local10 = ""; _local5 = (_local4.length - 1); while (_local5 >= 0) { _local10 = (_local10 + _arg2.charAt(_local4[_local5])); _local5--; }; return (_local10); } public static function str2rstr_utf8(_arg1:String):String{ var _local4:Number; var _local5:Number; var _local2 = ""; var _local3:Number = -1; while (++_local3 < _arg1.length) { _local4 = _arg1.charCodeAt(_local3); _local5 = (((_local3 + 1) < _arg1.length)) ? _arg1.charCodeAt((_local3 + 1)) : 0; if ((((((((0xD800 <= _local4)) && ((_local4 <= 56319)))) && ((0xDC00 <= _local5)))) && ((_local5 <= 57343)))){ _local4 = ((65536 + ((_local4 & 1023) << 10)) + (_local5 & 1023)); _local3++; }; if (_local4 <= 127){ _local2 = (_local2 + String.fromCharCode(_local4)); } else { if (_local4 <= 2047){ _local2 = (_local2 + String.fromCharCode((192 | ((_local4 >>> 6) & 31)), (128 | (_local4 & 63)))); } else { if (_local4 <= 0xFFFF){ _local2 = (_local2 + String.fromCharCode((224 | ((_local4 >>> 12) & 15)), (128 | ((_local4 >>> 6) & 63)), (128 | (_local4 & 63)))); } else { if (_local4 <= 2097151){ _local2 = (_local2 + String.fromCharCode((240 | ((_local4 >>> 18) & 7)), (128 | ((_local4 >>> 12) & 63)), (128 | ((_local4 >>> 6) & 63)), (128 | (_local4 & 63)))); }; }; }; }; }; return (_local2); } public static function str2rstr_utf16le(_arg1:String):String{ var _local2 = ""; var _local3:Number = 0; while (_local3 < _arg1.length) { _local2 = (_local2 + String.fromCharCode((_arg1.charCodeAt(_local3) & 0xFF), ((_arg1.charCodeAt(_local3) >>> 8) & 0xFF))); _local3++; }; return (_local2); } public static function str2rstr_utf16be(_arg1:String):String{ var _local2 = ""; var _local3:Number = 0; while (_local3 < _arg1.length) { _local2 = (_local2 + String.fromCharCode(((_arg1.charCodeAt(_local3) >>> 8) & 0xFF), (_arg1.charCodeAt(_local3) & 0xFF))); _local3++; }; return (_local2); } public static function rstr2binl(_arg1:String):Array{ var _local2:Array = new Array((_arg1.length >> 2)); var _local3:Number = 0; while (_local3 < _local2.length) { _local2[_local3] = 0; _local3++; }; _local3 = 0; while (_local3 < (_arg1.length * 8)) { _local2[(_local3 >> 5)] = (_local2[(_local3 >> 5)] | ((_arg1.charCodeAt((_local3 / 8)) & 0xFF) << (_local3 % 32))); _local3 = (_local3 + 8); }; return (_local2); } public static function binl2rstr(_arg1:Array):String{ var _local2 = ""; var _local3:Number = 0; while (_local3 < (_arg1.length * 32)) { _local2 = (_local2 + String.fromCharCode(((_arg1[(_local3 >> 5)] >>> (_local3 % 32)) & 0xFF))); _local3 = (_local3 + 8); }; return (_local2); } public static function binl_md5(_arg1:Array, _arg2:Number):Array{ var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; _arg1[(_arg2 >> 5)] = (_arg1[(_arg2 >> 5)] | (128 << (_arg2 % 32))); _arg1[((((_arg2 + 64) >>> 9) << 4) + 14)] = _arg2; var _local3:Number = 1732584193; var _local4:Number = -271733879; var _local5:Number = -1732584194; var _local6:Number = 271733878; var _local7:Number = 0; while (_local7 < _arg1.length) { _local8 = _local3; _local9 = _local4; _local10 = _local5; _local11 = _local6; _local3 = md5_ff(_local3, _local4, _local5, _local6, _arg1[(_local7 + 0)], 7, -680876936); _local6 = md5_ff(_local6, _local3, _local4, _local5, _arg1[(_local7 + 1)], 12, -389564586); _local5 = md5_ff(_local5, _local6, _local3, _local4, _arg1[(_local7 + 2)], 17, 606105819); _local4 = md5_ff(_local4, _local5, _local6, _local3, _arg1[(_local7 + 3)], 22, -1044525330); _local3 = md5_ff(_local3, _local4, _local5, _local6, _arg1[(_local7 + 4)], 7, -176418897); _local6 = md5_ff(_local6, _local3, _local4, _local5, _arg1[(_local7 + 5)], 12, 1200080426); _local5 = md5_ff(_local5, _local6, _local3, _local4, _arg1[(_local7 + 6)], 17, -1473231341); _local4 = md5_ff(_local4, _local5, _local6, _local3, _arg1[(_local7 + 7)], 22, -45705983); _local3 = md5_ff(_local3, _local4, _local5, _local6, _arg1[(_local7 + 8)], 7, 1770035416); _local6 = md5_ff(_local6, _local3, _local4, _local5, _arg1[(_local7 + 9)], 12, -1958414417); _local5 = md5_ff(_local5, _local6, _local3, _local4, _arg1[(_local7 + 10)], 17, -42063); _local4 = md5_ff(_local4, _local5, _local6, _local3, _arg1[(_local7 + 11)], 22, -1990404162); _local3 = md5_ff(_local3, _local4, _local5, _local6, _arg1[(_local7 + 12)], 7, 1804603682); _local6 = md5_ff(_local6, _local3, _local4, _local5, _arg1[(_local7 + 13)], 12, -40341101); _local5 = md5_ff(_local5, _local6, _local3, _local4, _arg1[(_local7 + 14)], 17, -1502002290); _local4 = md5_ff(_local4, _local5, _local6, _local3, _arg1[(_local7 + 15)], 22, 1236535329); _local3 = md5_gg(_local3, _local4, _local5, _local6, _arg1[(_local7 + 1)], 5, -165796510); _local6 = md5_gg(_local6, _local3, _local4, _local5, _arg1[(_local7 + 6)], 9, -1069501632); _local5 = md5_gg(_local5, _local6, _local3, _local4, _arg1[(_local7 + 11)], 14, 643717713); _local4 = md5_gg(_local4, _local5, _local6, _local3, _arg1[(_local7 + 0)], 20, -373897302); _local3 = md5_gg(_local3, _local4, _local5, _local6, _arg1[(_local7 + 5)], 5, -701558691); _local6 = md5_gg(_local6, _local3, _local4, _local5, _arg1[(_local7 + 10)], 9, 38016083); _local5 = md5_gg(_local5, _local6, _local3, _local4, _arg1[(_local7 + 15)], 14, -660478335); _local4 = md5_gg(_local4, _local5, _local6, _local3, _arg1[(_local7 + 4)], 20, -405537848); _local3 = md5_gg(_local3, _local4, _local5, _local6, _arg1[(_local7 + 9)], 5, 568446438); _local6 = md5_gg(_local6, _local3, _local4, _local5, _arg1[(_local7 + 14)], 9, -1019803690); _local5 = md5_gg(_local5, _local6, _local3, _local4, _arg1[(_local7 + 3)], 14, -187363961); _local4 = md5_gg(_local4, _local5, _local6, _local3, _arg1[(_local7 + 8)], 20, 1163531501); _local3 = md5_gg(_local3, _local4, _local5, _local6, _arg1[(_local7 + 13)], 5, -1444681467); _local6 = md5_gg(_local6, _local3, _local4, _local5, _arg1[(_local7 + 2)], 9, -51403784); _local5 = md5_gg(_local5, _local6, _local3, _local4, _arg1[(_local7 + 7)], 14, 1735328473); _local4 = md5_gg(_local4, _local5, _local6, _local3, _arg1[(_local7 + 12)], 20, -1926607734); _local3 = md5_hh(_local3, _local4, _local5, _local6, _arg1[(_local7 + 5)], 4, -378558); _local6 = md5_hh(_local6, _local3, _local4, _local5, _arg1[(_local7 + 8)], 11, -2022574463); _local5 = md5_hh(_local5, _local6, _local3, _local4, _arg1[(_local7 + 11)], 16, 1839030562); _local4 = md5_hh(_local4, _local5, _local6, _local3, _arg1[(_local7 + 14)], 23, -35309556); _local3 = md5_hh(_local3, _local4, _local5, _local6, _arg1[(_local7 + 1)], 4, -1530992060); _local6 = md5_hh(_local6, _local3, _local4, _local5, _arg1[(_local7 + 4)], 11, 1272893353); _local5 = md5_hh(_local5, _local6, _local3, _local4, _arg1[(_local7 + 7)], 16, -155497632); _local4 = md5_hh(_local4, _local5, _local6, _local3, _arg1[(_local7 + 10)], 23, -1094730640); _local3 = md5_hh(_local3, _local4, _local5, _local6, _arg1[(_local7 + 13)], 4, 681279174); _local6 = md5_hh(_local6, _local3, _local4, _local5, _arg1[(_local7 + 0)], 11, -358537222); _local5 = md5_hh(_local5, _local6, _local3, _local4, _arg1[(_local7 + 3)], 16, -722521979); _local4 = md5_hh(_local4, _local5, _local6, _local3, _arg1[(_local7 + 6)], 23, 76029189); _local3 = md5_hh(_local3, _local4, _local5, _local6, _arg1[(_local7 + 9)], 4, -640364487); _local6 = md5_hh(_local6, _local3, _local4, _local5, _arg1[(_local7 + 12)], 11, -421815835); _local5 = md5_hh(_local5, _local6, _local3, _local4, _arg1[(_local7 + 15)], 16, 530742520); _local4 = md5_hh(_local4, _local5, _local6, _local3, _arg1[(_local7 + 2)], 23, -995338651); _local3 = md5_ii(_local3, _local4, _local5, _local6, _arg1[(_local7 + 0)], 6, -198630844); _local6 = md5_ii(_local6, _local3, _local4, _local5, _arg1[(_local7 + 7)], 10, 1126891415); _local5 = md5_ii(_local5, _local6, _local3, _local4, _arg1[(_local7 + 14)], 15, -1416354905); _local4 = md5_ii(_local4, _local5, _local6, _local3, _arg1[(_local7 + 5)], 21, -57434055); _local3 = md5_ii(_local3, _local4, _local5, _local6, _arg1[(_local7 + 12)], 6, 1700485571); _local6 = md5_ii(_local6, _local3, _local4, _local5, _arg1[(_local7 + 3)], 10, -1894986606); _local5 = md5_ii(_local5, _local6, _local3, _local4, _arg1[(_local7 + 10)], 15, -1051523); _local4 = md5_ii(_local4, _local5, _local6, _local3, _arg1[(_local7 + 1)], 21, -2054922799); _local3 = md5_ii(_local3, _local4, _local5, _local6, _arg1[(_local7 + 8)], 6, 1873313359); _local6 = md5_ii(_local6, _local3, _local4, _local5, _arg1[(_local7 + 15)], 10, -30611744); _local5 = md5_ii(_local5, _local6, _local3, _local4, _arg1[(_local7 + 6)], 15, -1560198380); _local4 = md5_ii(_local4, _local5, _local6, _local3, _arg1[(_local7 + 13)], 21, 1309151649); _local3 = md5_ii(_local3, _local4, _local5, _local6, _arg1[(_local7 + 4)], 6, -145523070); _local6 = md5_ii(_local6, _local3, _local4, _local5, _arg1[(_local7 + 11)], 10, -1120210379); _local5 = md5_ii(_local5, _local6, _local3, _local4, _arg1[(_local7 + 2)], 15, 718787259); _local4 = md5_ii(_local4, _local5, _local6, _local3, _arg1[(_local7 + 9)], 21, -343485551); _local3 = safe_add(_local3, _local8); _local4 = safe_add(_local4, _local9); _local5 = safe_add(_local5, _local10); _local6 = safe_add(_local6, _local11); _local7 = (_local7 + 16); }; return ([_local3, _local4, _local5, _local6]); } public static function md5_cmn(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number):Number{ return (safe_add(bit_rol(safe_add(safe_add(_arg2, _arg1), safe_add(_arg4, _arg6)), _arg5), _arg3)); } public static function md5_ff(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number):Number{ return (md5_cmn(((_arg2 & _arg3) | (~(_arg2) & _arg4)), _arg1, _arg2, _arg5, _arg6, _arg7)); } public static function md5_gg(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number):Number{ return (md5_cmn(((_arg2 & _arg4) | (_arg3 & ~(_arg4))), _arg1, _arg2, _arg5, _arg6, _arg7)); } public static function md5_hh(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number):Number{ return (md5_cmn(((_arg2 ^ _arg3) ^ _arg4), _arg1, _arg2, _arg5, _arg6, _arg7)); } public static function md5_ii(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number):Number{ return (md5_cmn((_arg3 ^ (_arg2 | ~(_arg4))), _arg1, _arg2, _arg5, _arg6, _arg7)); } public static function safe_add(_arg1:Number, _arg2:Number):Number{ var _local3:Number = ((_arg1 & 0xFFFF) + (_arg2 & 0xFFFF)); var _local4:Number = (((_arg1 >> 16) + (_arg2 >> 16)) + (_local3 >> 16)); return (((_local4 << 16) | (_local3 & 0xFFFF))); } public static function bit_rol(_arg1:Number, _arg2:Number):Number{ return (((_arg1 << _arg2) | (_arg1 >>> (32 - _arg2)))); } } }//package
Section 223
//MediumBangMC (MediumBangMC) package { import flash.display.*; public dynamic class MediumBangMC extends MovieClip { } }//package
Section 224
//MenuMusic (MenuMusic) package { import flash.media.*; public dynamic class MenuMusic extends Sound { } }//package
Section 225
//MiniclipIntro (MiniclipIntro) package { import flash.display.*; public dynamic class MiniclipIntro extends MovieClip { public var mcAnimation:MovieClip; } }//package
Section 226
//MirrorTileMC (MirrorTileMC) package { import flash.display.*; public dynamic class MirrorTileMC extends MovieClip { public function MirrorTileMC(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 227
//MonsterMC1 (MonsterMC1) package { import flash.display.*; public dynamic class MonsterMC1 extends MovieClip { public var collision_box:MovieClip; } }//package
Section 228
//MonsterMC10 (MonsterMC10) package { import flash.display.*; public dynamic class MonsterMC10 extends MovieClip { public var collision_box:MovieClip; } }//package
Section 229
//MonsterMC11 (MonsterMC11) package { import flash.display.*; public dynamic class MonsterMC11 extends MovieClip { public var collision_box:MovieClip; } }//package
Section 230
//MonsterMC12 (MonsterMC12) package { import flash.display.*; public dynamic class MonsterMC12 extends MovieClip { public var collision_box:MovieClip; } }//package
Section 231
//MonsterMC13 (MonsterMC13) package { import flash.display.*; public dynamic class MonsterMC13 extends MovieClip { public var collision_box:MovieClip; } }//package
Section 232
//MonsterMC14 (MonsterMC14) package { import flash.display.*; public dynamic class MonsterMC14 extends MovieClip { public var collision_box:MovieClip; } }//package
Section 233
//MonsterMC15 (MonsterMC15) package { import flash.display.*; public dynamic class MonsterMC15 extends MovieClip { public var collision_box:MovieClip; } }//package
Section 234
//MonsterMC16 (MonsterMC16) package { import flash.display.*; public dynamic class MonsterMC16 extends MovieClip { public var collision_box:MovieClip; } }//package
Section 235
//MonsterMC17 (MonsterMC17) package { import flash.display.*; public dynamic class MonsterMC17 extends MovieClip { public var collision_box:MovieClip; } }//package
Section 236
//MonsterMC18 (MonsterMC18) package { import flash.display.*; public dynamic class MonsterMC18 extends MovieClip { public var collision_box:MovieClip; } }//package
Section 237
//MonsterMC19 (MonsterMC19) package { import flash.display.*; public dynamic class MonsterMC19 extends MovieClip { public var collision_box:MovieClip; } }//package
Section 238
//MonsterMC2 (MonsterMC2) package { import flash.display.*; public dynamic class MonsterMC2 extends MovieClip { public var collision_box:MovieClip; } }//package
Section 239
//MonsterMC3 (MonsterMC3) package { import flash.display.*; public dynamic class MonsterMC3 extends MovieClip { public var collision_box:MovieClip; } }//package
Section 240
//MonsterMC4 (MonsterMC4) package { import flash.display.*; public dynamic class MonsterMC4 extends MovieClip { public var collision_box:MovieClip; } }//package
Section 241
//MonsterMC5 (MonsterMC5) package { import flash.display.*; public dynamic class MonsterMC5 extends MovieClip { public var collision_box:MovieClip; } }//package
Section 242
//MonsterMC6 (MonsterMC6) package { import flash.display.*; public dynamic class MonsterMC6 extends MovieClip { public var collision_box:MovieClip; } }//package
Section 243
//MonsterMC7 (MonsterMC7) package { import flash.display.*; public dynamic class MonsterMC7 extends MovieClip { public var collision_box:MovieClip; } }//package
Section 244
//MonsterMC8 (MonsterMC8) package { import flash.display.*; public dynamic class MonsterMC8 extends MovieClip { public var collision_box:MovieClip; } }//package
Section 245
//MonsterMC9 (MonsterMC9) package { import flash.display.*; public dynamic class MonsterMC9 extends MovieClip { public var collision_box:MovieClip; } }//package
Section 246
//MoveTileMC1 (MoveTileMC1) package { import flash.display.*; public dynamic class MoveTileMC1 extends MovieClip { } }//package
Section 247
//MoveTileMC10 (MoveTileMC10) package { import flash.display.*; public dynamic class MoveTileMC10 extends MovieClip { } }//package
Section 248
//MoveTileMC11 (MoveTileMC11) package { import flash.display.*; public dynamic class MoveTileMC11 extends MovieClip { } }//package
Section 249
//MoveTileMC12 (MoveTileMC12) package { import flash.display.*; public dynamic class MoveTileMC12 extends MovieClip { } }//package
Section 250
//MoveTileMC2 (MoveTileMC2) package { import flash.display.*; public dynamic class MoveTileMC2 extends MovieClip { } }//package
Section 251
//MoveTileMC3 (MoveTileMC3) package { import flash.display.*; public dynamic class MoveTileMC3 extends MovieClip { } }//package
Section 252
//MoveTileMC4 (MoveTileMC4) package { import flash.display.*; public dynamic class MoveTileMC4 extends MovieClip { } }//package
Section 253
//MoveTileMC5 (MoveTileMC5) package { import flash.display.*; public dynamic class MoveTileMC5 extends MovieClip { } }//package
Section 254
//MoveTileMC6 (MoveTileMC6) package { import flash.display.*; public dynamic class MoveTileMC6 extends MovieClip { } }//package
Section 255
//MoveTileMC7 (MoveTileMC7) package { import flash.display.*; public dynamic class MoveTileMC7 extends MovieClip { } }//package
Section 256
//MoveTileMC8 (MoveTileMC8) package { import flash.display.*; public dynamic class MoveTileMC8 extends MovieClip { } }//package
Section 257
//MoveTileMC9 (MoveTileMC9) package { import flash.display.*; public dynamic class MoveTileMC9 extends MovieClip { } }//package
Section 258
//NapalmMC1 (NapalmMC1) package { import flash.display.*; public dynamic class NapalmMC1 extends MovieClip { } }//package
Section 259
//NapalmMC2 (NapalmMC2) package { import flash.display.*; public dynamic class NapalmMC2 extends MovieClip { } }//package
Section 260
//NextArrow (NextArrow) package { import com.nitrome.highscore.*; public dynamic class NextArrow extends ArrowButton { public function NextArrow(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 261
//NitromeButton (NitromeButton) package { import com.nitrome.game.*; public dynamic class NitromeButton extends NitromeButton { } }//package
Section 262
//NitromeGame (NitromeGame) package { import com.nitrome.engine.*; import flash.display.*; import com.nitrome.game.*; import flash.net.*; public class NitromeGame { public static const NITROME_URL:Array = new Array("http://www.nitrome.com/", "http://cdn.nitrome.com/", "http://www.nitrome.co.uk/", "http://www.nitrome.net/", "http://www.nitromegames.com/", "http://www.nitromegames.co.uk/", "http://www.nitrome-games.com/", "http://www.nitrome-games.co.uk/", "http://www.nitromeimages.com/"); public static const CANDYSTAND_URL:Array = new Array("http://www.candystand.com/", "http://candystand.com/"); public static const MINICLIP_URL:Array = new Array("http://www.miniclip.com/", "http://miniclip.com/"); private static const DOMAINS:Array = new Array(".nitrome.com/", ".miniclip.com/", ".candystand.com/"); public static const FGL_URL:Array = ["http://www.flashgamelicense.com/", "https://www.flashgamelicense.com"]; public static const NITROME:uint = 0; public static const MINICLIP:uint = 1; public static const CANDYSTAND:uint = 2; public static const SUBMIT_URL:String = "http://www.nitrome.com/php/submit_score.php"; public static const RETRIEVE_URL:String = "http://www.nitrome.com/php/retrieve_scores.php"; public static const POPUP_HOLDER_FRAME:int = 10; private static var _level_id:String; private static var _total_levels:int; private static var _game_id:String; private static var _url:String; private static var _leading_zero:Boolean = true; private static var _time_based:Boolean = false; private static var _selected_level:HiddenInt; private static var _level_score:HiddenInt; private static var ar_1:Array = new Array("a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "/", ":", ".", "_", "1", "2", "3", "4", "5", "6", "7", "8", "9", "0", "-"); private static var ar_2:Array = new Array("_", "7", "c", "2", "l", "r", "a", "h", "i", ".", "g", "m", "v", "1", "b", "q", "3", "z", "w", "o", "u", "t", "s", "0", "d", "f", "8", "n", "5", "k", ":", "j", "p", "/", "4", "6", "e", "9", "y", "x", "-"); private static var ar_key:String = "ctdngevfaqki8_lb:psoj90ux127hm/4w5y3rz.6-"; private static var adj:Number = 1.75; private static var ff:Array = new Array(); public static var bonus:Object = new Object(); public static var timeline:MovieClip; public static var sound_manager:SoundManager; public static var global:Object = new Object(); public static var transition:Transition; public static var last_loaded_path:String; public static var last_loaded_xml:XML; public static function init(_arg1:MovieClip, _arg2:String, _arg3:String, _arg4:Number):void{ timeline = _arg1; _url = _arg1.loaderInfo.url; _level_id = _arg3; _total_levels = _arg4; _game_id = _arg2.toLowerCase(); _selected_level = new HiddenInt(1); _level_score = new HiddenInt(); } public static function get game_id():String{ return (_game_id); } public static function get level_id():String{ return (_level_id); } public static function get total_levels():int{ return (_total_levels); } public static function get level_score():int{ return (_level_score.value); } public static function set level_score(_arg1:int):void{ _level_score.value = _arg1; } public static function get selected_level():int{ return (_selected_level.value); } public static function set selected_level(_arg1:int):void{ _selected_level.value = _arg1; } public static function get url():String{ return (_url); } public static function get leading_zero():Boolean{ return (_leading_zero); } public static function set leading_zero(_arg1:Boolean):void{ _leading_zero = _arg1; } public static function get time_based():Boolean{ return (_time_based); } public static function set time_based(_arg1:Boolean):void{ _time_based = _arg1; } public static function isAtURL(... _args):Boolean{ var _local3:Array; var _local4:int; var _local5:String; if (_args.length == 0){ _args.push(NITROME_URL); }; var _local2:int; while (_local2 < _args.length) { _local3 = _args[_local2]; _local4 = 0; while (_local4 < _local3.length) { _local5 = _local3[_local4]; if (compareURLTo(_local5, _url)){ return (true); }; _local4++; }; _local2++; }; return (false); } private static function compareURLTo(_arg1:String, _arg2:String):Boolean{ var _local4:int; var _local5:String; var _local10:Number; var _local11:String; var _local12:String; var _local3:Array = ["http://", "https://"]; _local4 = 0; while (_local4 < _local3.length) { if (_arg2.substr(0, _local3[_local4].length) == _local3[_local4]){ _local5 = _local3[_local4]; break; }; _local4++; }; if (_local4 == _local3.length){ return (false); }; var _local6:String = _arg2.substr(_local5.length); _arg1 = _arg1.substr(_local5.length); while (_local6.charAt(0) == "/") { _local6 = _local6.substr(1); }; while (_arg1.charAt(0) == "/") { _arg1 = _arg1.substr(1); }; var _local7:Array = _local6.split("/"); var _local8:Array = _arg1.split("/"); var _local9:Number = 0; while (_local9 < _local8.length) { if (_local8[_local9].length < 1){ } else { _local10 = _local8[_local9].indexOf("*"); if (_local10 != -1){ _local11 = _local8[_local9].substr(0, _local10); _local12 = _local8[_local9].substr((_local10 + 1)); if (_local7[_local9].substr(0, _local11.length) != _local11){ return (false); }; if (_local7[_local9].substr(-(_local12.length)) != _local12){ return (false); }; } else { if (_local8[_local9] != _local7[_local9]){ return (false); }; }; }; _local9++; }; return (true); } public static function getSwfPath():String{ var _local1:String = url; var _local2:int = _local1.length; while (_local2 >= 0) { if (_local1.charAt(_local2) == "/"){ _local1 = _local1.slice(0, (_local2 + 1)); break; }; _local2--; }; return (_local1); } public static function getLevelName(_arg1:Number, _arg2:String=".xml"):String{ var _local3:MD5 = new MD5(); var _local4 = ""; if (leading_zero){ if (_arg1 < 10){ _local4 = "0"; }; }; var _local5:String = _local3.hash(String(((level_id + _local4) + _arg1))); return ((_local5 + _arg2)); } public static function setLevelUnlocked(_arg1:int, _arg2:int=1):void{ var _local6:*; var _local7:Array; var _local8:int; var _local3:String = (("so_" + game_id) + _arg2); var _local4:SharedObject = SharedObject.getLocal(_local3); var _local5:Boolean; for each (_local6 in _local4.data) { _local5 = true; break; }; _local7 = new Array(total_levels); if (!_local5){ _local8 = 0; while (_local8 < _local7.length) { _local7[_local8] = 0; _local8++; }; _local7[0] = 1; } else { if (_local4.data.levels_unlocked == undefined){ _local8 = 0; while (_local8 < _local7.length) { _local7[_local8] = 0; _local8++; }; _local7[0] = 1; } else { _local7 = _local4.data.levels_unlocked; }; }; _local7[(_arg1 - 1)] = 1; _local4.data.levels_unlocked = _local7; _local4.flush(); _local4.close(); } public static function getLevelUnlocked(_arg1:int, _arg2:int=1):Boolean{ var _local6:*; var _local7:Array; var _local8:int; var _local3:String = (("so_" + game_id) + _arg2); var _local4:SharedObject = SharedObject.getLocal(_local3); var _local5:Boolean; for each (_local6 in _local4.data) { _local5 = true; break; }; _local7 = new Array(total_levels); if (!_local5){ _local8 = 0; while (_local8 < _local7.length) { _local7[_local8] = 0; _local8++; }; _local7[0] = 1; _local4.data.levels_unlocked = _local7; _local4.flush(); _local4.close(); if (_arg1 == 1){ return (true); }; return (false); } else { if (_local4.data.levels_unlocked == undefined){ _local8 = 0; while (_local8 < _local7.length) { _local7[_local8] = 0; _local8++; }; _local7[0] = 1; _local4.data.levels_unlocked = _local7; _local4.flush(); _local4.close(); if (_arg1 == 1){ return (true); }; return (false); } else { if (_local4.data.levels_unlocked[(_arg1 - 1)] == 1){ return (true); }; if (_local4.data.levels_unlocked[(_arg1 - 1)] == 0){ return (false); }; }; }; return (false); } public static function lockAllLevels(_arg1:int=1):void{ var _local5:int; var _local2:String = (("so_" + game_id) + _arg1); var _local3:SharedObject = SharedObject.getLocal(_local2); var _local4:Array = new Array(total_levels); _local5 = 0; while (_local5 < _local4.length) { _local4[_local5] = 0; _local5++; }; _local4[0] = 1; _local3.data.levels_unlocked = _local4; _local3.flush(); _local3.close(); } public static function unlockAllLevels(_arg1:int=1):void{ var _local5:int; var _local2:String = (("so_" + game_id) + _arg1); var _local3:SharedObject = SharedObject.getLocal(_local2); var _local4:Array = new Array(total_levels); _local5 = 0; while (_local5 < _local4.length) { _local4[_local5] = 1; _local5++; }; _local3.data.levels_unlocked = _local4; _local3.flush(); _local3.close(); } public static function setLevelScore(_arg1:int, _arg2:int, _arg3:int=1):void{ var _local7:*; var _local4:String = (("so_" + game_id) + _arg3); var _local5:SharedObject = SharedObject.getLocal(_local4); var _local6:Boolean; for each (_local7 in _local5.data) { _local6 = true; break; }; if (!_local6){ _local5.data.level_scores = new Array(); _local5.data.level_scores[_arg2] = _arg1; } else { if (_local5.data.level_scores == undefined){ _local5.data.level_scores = new Array(); _local5.data.level_scores[_arg2] = _arg1; } else { _local5.data.level_scores[_arg2] = _arg1; }; }; _local5.flush(); _local5.close(); } public static function getLevelScore(_arg1:int, _arg2:int=1):int{ var _local6:*; var _local3:String = (("so_" + game_id) + String(_arg2)); var _local4:SharedObject = SharedObject.getLocal(_local3); var _local5:Boolean; for each (_local6 in _local4.data) { _local5 = true; break; }; if (!_local5){ return (0); }; if (_local4.data.level_scores == undefined){ return (0); }; if (_local4.data.level_scores[_arg1] == undefined){ return (0); }; return (_local4.data.level_scores[_arg1]); } public static function getTotalScore(_arg1:int=1):int{ var _local5:*; var _local6:int; var _local7:int; var _local2:String = (("so_" + game_id) + String(_arg1)); var _local3:SharedObject = SharedObject.getLocal(_local2); var _local4:Boolean; for each (_local5 in _local3.data) { _local4 = true; break; }; if (!_local4){ return (0); }; if (_local3.data.level_scores == undefined){ return (0); }; _local6 = 0; _local7 = 0; while (_local7 < _local3.data.level_scores.length) { if (((!((_local3.data.level_scores[_local7] == undefined))) && (!(isNaN(_local3.data.level_scores[_local7]))))){ _local6 = (_local6 + _local3.data.level_scores[_local7]); }; _local7++; }; return (_local6); } public static function getLastSavedScore(_arg1:int=1):int{ var _local5:*; var _local2:String = (("so_" + game_id) + String(_arg1)); var _local3:SharedObject = SharedObject.getLocal(_local2); var _local4:Boolean; for each (_local5 in _local3.data) { _local4 = true; break; }; if (!_local4){ return (0); }; if (_local3.data.last_saved_score == undefined){ return (0); }; return (_local3.data.last_saved_score); } public static function setLastSavedScore(_arg1:int, _arg2:int=1):void{ var _local3:String = (("so_" + game_id) + String(_arg2)); var _local4:SharedObject = SharedObject.getLocal(_local3); _local4.data.last_saved_score = _arg1; _local4.flush(); _local4.close(); } public static function getHighScoreLine(_arg1:String, _arg2:int):Object{ var _local5:Array; var _local6:Object; var _local3:Array = _arg1.split("|"); var _local4:String = _local3[(_arg2 - 1)]; if ((((((((_local4 == "0")) || ((_local4 == "1")))) || ((_local4 == null)))) || ((_local4 == "")))){ return (null); }; _local5 = _local4.split("_"); if ((((_local5[1] == "n")) || ((_local5[2] == "n")))){ return (null); }; _local6 = new Object(); _local6.username = _local5[2]; _local6.score = _local5[1]; _local6.rank = _local5[0]; return (_local6); } public static function displayNextButton(_arg1:String):Boolean{ var _local2:Array = _arg1.split("|"); var _local3:String = _local2[10]; if (_local3 == "1"){ return (true); }; if (_local3 == "0"){ return (false); }; return (false); } public static function displayPreviousButton(_arg1:String):Boolean{ var _local2:Array = _arg1.split("|"); var _local3:String = _local2[11]; if (_local3 == "1"){ return (true); }; if (_local3 == "0"){ return (false); }; return (false); } public static function getScoreData(_arg1:int, _arg2:String):String{ var _local3:String = ((((String(_arg1) + "_") + game_id) + "_") + _arg2.toLowerCase()); trace(("encrypting: " + _local3)); var _local4:String = encryptString(ar_key, _local3); trace(("encrypted: " + _local4)); trace(("decrypted: " + decryptString(ar_key, _local4))); return (_local4); } private static function encryptString(_arg1:String, _arg2:String):String{ var _local6:String; var _local7:int; var _local8:int; var _local9:Number; var _local10:int; var _local11:String; adj = 1.75; ff = convertKey(_arg1); var _local3 = ""; var _local4:Number = 0; var _local5:int; while (_local5 < _arg2.length) { _local6 = _arg2.substr(_local5, 1); _local8 = 0; while (_local8 < ar_1.length) { if (ar_1[_local8] == _local6){ _local7 = _local8; break; }; _local8++; }; adj = applyFudgeFactor(); _local9 = (_local4 + adj); _local10 = (Math.round(_local9) + _local7); _local10 = checkRange(_local10); _local4 = (_local9 + _local10); _local11 = ar_2[_local10]; _local3 = (_local3 + _local11); _local5++; }; return (_local3); } private static function convertKey(_arg1:String):Array{ var _local5:String; var _local6:int; var _local7:int; var _local2:Array = new Array(); _local2.push(_arg1.length); var _local3:int; var _local4:int; while (_local4 < _arg1.length) { _local5 = _arg1.substr(_local4, 1); _local7 = 0; while (_local7 < ar_1.length) { if (ar_1[_local7] == _local5){ _local6 = _local7; break; }; _local7++; }; _local2.push(_local6); _local3 = (_local3 + _local6); _local4++; }; _local2.push(_local3); return (_local2); } private static function applyFudgeFactor():Number{ var _local1:Number = Number(ff.shift()); _local1 = (_local1 + adj); ff.push(_local1); return (_local1); } private static function checkRange(_arg1:int):int{ _arg1 = Math.round(_arg1); var _local2:int = ar_1.length; while (_arg1 >= _local2) { _arg1 = (_arg1 - _local2); }; while (_arg1 < 0) { _arg1 = (_arg1 + _local2); }; return (_arg1); } private static function decryptString(_arg1:String, _arg2:String):String{ var _local6:*; var _local7:int; var _local8:int; var _local9:Number; var _local10:int; var _local11:String; adj = 1.75; ff = convertKey(_arg1); var _local3 = ""; var _local4:Number = 0; var _local5:int; while (_local5 < _arg2.length) { _local6 = _arg2.substr(_local5, 1); _local8 = 0; while (_local8 < ar_2.length) { if (ar_2[_local8] == _local6){ _local7 = _local8; break; }; _local8++; }; adj = applyFudgeFactor(); _local9 = (_local4 + adj); _local10 = (_local7 - Math.round(_local9)); _local10 = checkRange(_local10); _local4 = (_local9 + _local7); _local11 = ar_1[_local10]; _local3 = (_local3 + _local11); _local5++; }; return (_local3); } public static function set music(_arg1:Boolean):void{ var _local2:String = ("so_" + game_id); var _local3:SharedObject = SharedObject.getLocal(_local2); _local3.data.musicon = _arg1; _local3.flush(); _local3.close(); } public static function get music():Boolean{ var _local4:*; var _local1:String = ("so_" + game_id); var _local2:SharedObject = SharedObject.getLocal(_local1); var _local3:Boolean; for each (_local4 in _local2.data) { _local3 = true; break; }; if (_local3){ if (_local2.data.musicon != undefined){ return (_local2.data.musicon); }; return (true); //unresolved jump }; return (true); } public static function set sfx(_arg1:Boolean):void{ var _local2:String = ("so_" + game_id); var _local3:SharedObject = SharedObject.getLocal(_local2); _local3.data.sfxon = _arg1; _local3.flush(); _local3.close(); } public static function get sfx():Boolean{ var _local4:*; var _local1:String = ("so_" + game_id); var _local2:SharedObject = SharedObject.getLocal(_local1); var _local3:Boolean; for each (_local4 in _local2.data) { _local3 = true; break; }; if (_local3){ if (_local2.data.sfxon != undefined){ return (_local2.data.sfxon); }; return (true); //unresolved jump }; return (true); } } }//package
Section 263
//NoThruTileMC (NoThruTileMC) package { import flash.display.*; public dynamic class NoThruTileMC extends MovieClip { } }//package
Section 264
//PlayerBulletHitMC1 (PlayerBulletHitMC1) package { import flash.display.*; public dynamic class PlayerBulletHitMC1 extends MovieClip { } }//package
Section 265
//PlayerBulletHitMC2 (PlayerBulletHitMC2) package { import flash.display.*; public dynamic class PlayerBulletHitMC2 extends MovieClip { } }//package
Section 266
//PlayerBulletHitMC3 (PlayerBulletHitMC3) package { import flash.display.*; public dynamic class PlayerBulletHitMC3 extends MovieClip { } }//package
Section 267
//PlayerBulletMC (PlayerBulletMC) package { import flash.display.*; public dynamic class PlayerBulletMC extends MovieClip { } }//package
Section 268
//PlayerMC (PlayerMC) package { import flash.display.*; public dynamic class PlayerMC extends MovieClip { public function PlayerMC(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 269
//PrevArrow (PrevArrow) package { import com.nitrome.highscore.*; public dynamic class PrevArrow extends ArrowButton { public function PrevArrow(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 270
//ProbeBlastMC (ProbeBlastMC) package { import flash.display.*; public dynamic class ProbeBlastMC extends MovieClip { } }//package
Section 271
//ProbeJetMC (ProbeJetMC) package { import flash.display.*; public dynamic class ProbeJetMC extends MovieClip { } }//package
Section 272
//ProbeMC (ProbeMC) package { import flash.display.*; public dynamic class ProbeMC extends MovieClip { } }//package
Section 273
//ScoreLine (ScoreLine) package { import com.nitrome.highscore.*; public dynamic class ScoreLine extends HighScoreLine { } }//package
Section 274
//ScoreSubmitPanel (ScoreSubmitPanel) package { import com.nitrome.highscore.*; public dynamic class ScoreSubmitPanel extends ScoreSubmitPanel { public function ScoreSubmitPanel(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 275
//ShieldMC (ShieldMC) package { import flash.display.*; public dynamic class ShieldMC extends MovieClip { } }//package
Section 276
//SideLaserHitMC (SideLaserHitMC) package { import flash.display.*; public dynamic class SideLaserHitMC extends MovieClip { } }//package
Section 277
//SideLazerData (SideLazerData) package { import flash.display.*; public dynamic class SideLazerData extends BitmapData { public function SideLazerData(_arg1:int=32, _arg2:int=24){ super(_arg1, _arg2); } } }//package
Section 278
//SideLazerData2 (SideLazerData2) package { import flash.display.*; public dynamic class SideLazerData2 extends BitmapData { public function SideLazerData2(_arg1:int=32, _arg2:int=24){ super(_arg1, _arg2); } } }//package
Section 279
//SmallBangMC (SmallBangMC) package { import flash.display.*; public dynamic class SmallBangMC extends MovieClip { } }//package
Section 280
//SmallBulletHitMC1 (SmallBulletHitMC1) package { import flash.display.*; public dynamic class SmallBulletHitMC1 extends MovieClip { } }//package
Section 281
//SmallBulletHitMC2 (SmallBulletHitMC2) package { import flash.display.*; public dynamic class SmallBulletHitMC2 extends MovieClip { } }//package
Section 282
//SmallBulletHitMC3 (SmallBulletHitMC3) package { import flash.display.*; public dynamic class SmallBulletHitMC3 extends MovieClip { } }//package
Section 283
//SmallBulletMC1 (SmallBulletMC1) package { import flash.display.*; public dynamic class SmallBulletMC1 extends MovieClip { } }//package
Section 284
//SmallBulletMC2 (SmallBulletMC2) package { import flash.display.*; public dynamic class SmallBulletMC2 extends MovieClip { } }//package
Section 285
//SmallBulletMC3 (SmallBulletMC3) package { import flash.display.*; public dynamic class SmallBulletMC3 extends MovieClip { } }//package
Section 286
//StaticTileMC (StaticTileMC) package { import flash.display.*; public dynamic class StaticTileMC extends MovieClip { } }//package
Section 287
//StaticTileMC1 (StaticTileMC1) package { import flash.display.*; public dynamic class StaticTileMC1 extends MovieClip { } }//package
Section 288
//StaticTileMC10 (StaticTileMC10) package { import flash.display.*; public dynamic class StaticTileMC10 extends MovieClip { } }//package
Section 289
//StaticTileMC11 (StaticTileMC11) package { import flash.display.*; public dynamic class StaticTileMC11 extends MovieClip { } }//package
Section 290
//StaticTileMC12 (StaticTileMC12) package { import flash.display.*; public dynamic class StaticTileMC12 extends MovieClip { } }//package
Section 291
//StaticTileMC13 (StaticTileMC13) package { import flash.display.*; public dynamic class StaticTileMC13 extends MovieClip { } }//package
Section 292
//StaticTileMC14 (StaticTileMC14) package { import flash.display.*; public dynamic class StaticTileMC14 extends MovieClip { } }//package
Section 293
//StaticTileMC15 (StaticTileMC15) package { import flash.display.*; public dynamic class StaticTileMC15 extends MovieClip { } }//package
Section 294
//StaticTileMC16 (StaticTileMC16) package { import flash.display.*; public dynamic class StaticTileMC16 extends MovieClip { } }//package
Section 295
//StaticTileMC17 (StaticTileMC17) package { import flash.display.*; public dynamic class StaticTileMC17 extends MovieClip { } }//package
Section 296
//StaticTileMC18 (StaticTileMC18) package { import flash.display.*; public dynamic class StaticTileMC18 extends MovieClip { } }//package
Section 297
//StaticTileMC19 (StaticTileMC19) package { import flash.display.*; public dynamic class StaticTileMC19 extends MovieClip { } }//package
Section 298
//StaticTileMC2 (StaticTileMC2) package { import flash.display.*; public dynamic class StaticTileMC2 extends MovieClip { } }//package
Section 299
//StaticTileMC20 (StaticTileMC20) package { import flash.display.*; public dynamic class StaticTileMC20 extends MovieClip { } }//package
Section 300
//StaticTileMC21 (StaticTileMC21) package { import flash.display.*; public dynamic class StaticTileMC21 extends MovieClip { } }//package
Section 301
//StaticTileMC22 (StaticTileMC22) package { import flash.display.*; public dynamic class StaticTileMC22 extends MovieClip { } }//package
Section 302
//StaticTileMC23 (StaticTileMC23) package { import flash.display.*; public dynamic class StaticTileMC23 extends MovieClip { } }//package
Section 303
//StaticTileMC24 (StaticTileMC24) package { import flash.display.*; public dynamic class StaticTileMC24 extends MovieClip { } }//package
Section 304
//StaticTileMC25 (StaticTileMC25) package { import flash.display.*; public dynamic class StaticTileMC25 extends MovieClip { } }//package
Section 305
//StaticTileMC26 (StaticTileMC26) package { import flash.display.*; public dynamic class StaticTileMC26 extends MovieClip { } }//package
Section 306
//StaticTileMC27 (StaticTileMC27) package { import flash.display.*; public dynamic class StaticTileMC27 extends MovieClip { } }//package
Section 307
//StaticTileMC28 (StaticTileMC28) package { import flash.display.*; public dynamic class StaticTileMC28 extends MovieClip { } }//package
Section 308
//StaticTileMC29 (StaticTileMC29) package { import flash.display.*; public dynamic class StaticTileMC29 extends MovieClip { } }//package
Section 309
//StaticTileMC3 (StaticTileMC3) package { import flash.display.*; public dynamic class StaticTileMC3 extends MovieClip { } }//package
Section 310
//StaticTileMC30 (StaticTileMC30) package { import flash.display.*; public dynamic class StaticTileMC30 extends MovieClip { } }//package
Section 311
//StaticTileMC31 (StaticTileMC31) package { import flash.display.*; public dynamic class StaticTileMC31 extends MovieClip { } }//package
Section 312
//StaticTileMC32 (StaticTileMC32) package { import flash.display.*; public dynamic class StaticTileMC32 extends MovieClip { } }//package
Section 313
//StaticTileMC4 (StaticTileMC4) package { import flash.display.*; public dynamic class StaticTileMC4 extends MovieClip { } }//package
Section 314
//StaticTileMC5 (StaticTileMC5) package { import flash.display.*; public dynamic class StaticTileMC5 extends MovieClip { } }//package
Section 315
//StaticTileMC6 (StaticTileMC6) package { import flash.display.*; public dynamic class StaticTileMC6 extends MovieClip { } }//package
Section 316
//StaticTileMC7 (StaticTileMC7) package { import flash.display.*; public dynamic class StaticTileMC7 extends MovieClip { } }//package
Section 317
//StaticTileMC8 (StaticTileMC8) package { import flash.display.*; public dynamic class StaticTileMC8 extends MovieClip { } }//package
Section 318
//StaticTileMC9 (StaticTileMC9) package { import flash.display.*; public dynamic class StaticTileMC9 extends MovieClip { } }//package
Section 319
//SubmitButton (SubmitButton) package { import com.nitrome.highscore.*; public dynamic class SubmitButton extends SubmitButton { public function SubmitButton(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 320
//SwitchMC1 (SwitchMC1) package { import flash.display.*; public dynamic class SwitchMC1 extends MovieClip { public function SwitchMC1(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 321
//SwitchMC2 (SwitchMC2) package { import flash.display.*; public dynamic class SwitchMC2 extends MovieClip { public function SwitchMC2(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 322
//SwitchMC3 (SwitchMC3) package { import flash.display.*; public dynamic class SwitchMC3 extends MovieClip { public function SwitchMC3(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 323
//SwitchMC4 (SwitchMC4) package { import flash.display.*; public dynamic class SwitchMC4 extends MovieClip { public function SwitchMC4(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 324
//TurnTileMC (TurnTileMC) package { import flash.display.*; public dynamic class TurnTileMC extends MovieClip { public var mirror:MovieClip; } }//package
Section 325
//VertTileMC (VertTileMC) package { import flash.display.*; public dynamic class VertTileMC extends MovieClip { } }//package

Library Items

Symbol 1 Font {InfoFont}Used by:472 1392 1393
Symbol 2 Sound {MenuMusic}Used by:1214
Symbol 3 Sound {GameMusic}Used by:1213
Symbol 4 BitmapUsed by:5
Symbol 5 GraphicUses:4Used by:20
Symbol 6 BitmapUsed by:7
Symbol 7 GraphicUses:6Used by:20
Symbol 8 BitmapUsed by:9
Symbol 9 GraphicUses:8Used by:20
Symbol 10 BitmapUsed by:11
Symbol 11 GraphicUses:10Used by:20
Symbol 12 BitmapUsed by:13
Symbol 13 GraphicUses:12Used by:20
Symbol 14 BitmapUsed by:15
Symbol 15 GraphicUses:14Used by:20
Symbol 16 BitmapUsed by:17
Symbol 17 GraphicUses:16Used by:20
Symbol 18 BitmapUsed by:19
Symbol 19 GraphicUses:18Used by:20
Symbol 20 MovieClip {com.nitrome.distribution.NitromeGamesIcon}Uses:5 7 9 11 13 15 17 19
Symbol 21 BitmapUsed by:22
Symbol 22 GraphicUses:21Used by:25
Symbol 23 BitmapUsed by:24
Symbol 24 GraphicUses:23Used by:25
Symbol 25 Button {com.nitrome.distribution.Twitter}Uses:22 24
Symbol 26 BitmapUsed by:28 30
Symbol 27 BitmapUsed by:28 30
Symbol 28 GraphicUses:26 27Used by:29
Symbol 29 MovieClipUses:28Used by:32
Symbol 30 GraphicUses:26 27Used by:31 32
Symbol 31 MovieClipUses:30Used by:32
Symbol 32 Button {com.nitrome.distribution.MoreGames}Uses:29 31 30
Symbol 33 BitmapUsed by:34
Symbol 34 GraphicUses:33Used by:37
Symbol 35 BitmapUsed by:36
Symbol 36 GraphicUses:35Used by:37
Symbol 37 Button {com.nitrome.distribution.Facebook}Uses:34 36
Symbol 38 Bitmap {SideLazerData2}Used by:1275
Symbol 39 Bitmap {SideLazerData}Used by:1275
Symbol 40 Bitmap {FrontLazerData2}Used by:1275
Symbol 41 Bitmap {FrontLazerData}Used by:1275
Symbol 42 GraphicUsed by:49 1275 1376 1383 1387  Timeline
Symbol 43 MovieClipUsed by:Timeline
Symbol 44 BitmapUsed by:45
Symbol 45 GraphicUses:44Used by:Timeline
Symbol 46 FontUsed by:47
Symbol 47 TextUses:46Used by:48
Symbol 48 MovieClipUses:47Used by:60
Symbol 49 MovieClipUses:42Used by:52
Symbol 50 GraphicUsed by:51
Symbol 51 MovieClipUses:50Used by:52
Symbol 52 MovieClipUses:49 51Used by:60
Symbol 53 GraphicUsed by:60
Symbol 54 GraphicUsed by:57 276 415
Symbol 55 FontUsed by:56
Symbol 56 TextUses:55Used by:57
Symbol 57 MovieClip {fatcat_fla.y8symbol2_7}Uses:54 56Used by:60
Symbol 58 GraphicUsed by:59
Symbol 59 MovieClip {fatcat_fla.Y8Click_8}Uses:58Used by:60
Symbol 60 MovieClip {fatcat_fla.Y8Preloaderas3_2}Uses:48 52 53 57 59Used by:Timeline
Symbol 61 MovieClip {com.nitrome.game.Transition}Used by:198 1275 1388  Timeline
Symbol 62 BitmapUsed by:63
Symbol 63 GraphicUses:62Used by:66
Symbol 64 BitmapUsed by:65
Symbol 65 GraphicUses:64Used by:66
Symbol 66 MovieClipUses:63 65Used by:67 73 1343
Symbol 67 MovieClip {ProbeJetMC}Uses:66Used by:1275
Symbol 68 BitmapUsed by:69 1314
Symbol 69 GraphicUses:68Used by:73 1343
Symbol 70 BitmapUsed by:71
Symbol 71 GraphicUses:70Used by:72 223 304
Symbol 72 MovieClipUses:71Used by:73
Symbol 73 MovieClip {DropShipMC}Uses:69 66 72Used by:1275
Symbol 74 BitmapUsed by:75
Symbol 75 GraphicUses:74Used by:76
Symbol 76 MovieClip {HelpTileFrontMC3}Uses:75Used by:1275
Symbol 77 BitmapUsed by:78
Symbol 78 GraphicUses:77Used by:79
Symbol 79 MovieClip {HelpTileFrontMC2}Uses:78Used by:1275
Symbol 80 BitmapUsed by:81
Symbol 81 GraphicUses:80Used by:82
Symbol 82 MovieClip {HelpTileFrontMC1}Uses:81Used by:1275
Symbol 83 BitmapUsed by:84
Symbol 84 GraphicUses:83Used by:87
Symbol 85 BitmapUsed by:86
Symbol 86 GraphicUses:85Used by:87
Symbol 87 MovieClipUses:84 86Used by:88 223
Symbol 88 MovieClip {fatcat_fla.catdeathspin_19}Uses:87Used by:89
Symbol 89 MovieClip {CatDeathMC}Uses:88Used by:1275
Symbol 90 BitmapUsed by:91
Symbol 91 GraphicUses:90Used by:92
Symbol 92 MovieClip {FrontTileMC15}Uses:91Used by:1275
Symbol 93 BitmapUsed by:94
Symbol 94 GraphicUses:93Used by:95
Symbol 95 MovieClip {FrontTileMC14}Uses:94Used by:1275
Symbol 96 BitmapUsed by:97
Symbol 97 GraphicUses:96Used by:98
Symbol 98 MovieClip {FrontTileMC13}Uses:97Used by:1275
Symbol 99 BitmapUsed by:100
Symbol 100 GraphicUses:99Used by:101
Symbol 101 MovieClip {FrontTileMC12}Uses:100Used by:1275
Symbol 102 BitmapUsed by:103
Symbol 103 GraphicUses:102Used by:104
Symbol 104 MovieClip {FrontTileMC11}Uses:103Used by:1275
Symbol 105 BitmapUsed by:106
Symbol 106 GraphicUses:105Used by:107
Symbol 107 MovieClip {FrontTileMC10}Uses:106Used by:1275
Symbol 108 BitmapUsed by:109
Symbol 109 GraphicUses:108Used by:110
Symbol 110 MovieClip {FrontTileMC9}Uses:109Used by:1275
Symbol 111 BitmapUsed by:112
Symbol 112 GraphicUses:111Used by:113
Symbol 113 MovieClip {FrontTileMC8}Uses:112Used by:1275
Symbol 114 BitmapUsed by:115
Symbol 115 GraphicUses:114Used by:116
Symbol 116 MovieClip {FrontTileMC7}Uses:115Used by:1275
Symbol 117 BitmapUsed by:118
Symbol 118 GraphicUses:117Used by:119
Symbol 119 MovieClip {FrontTileMC6}Uses:118Used by:1275
Symbol 120 BitmapUsed by:121
Symbol 121 GraphicUses:120Used by:122
Symbol 122 MovieClip {FrontTileMC5}Uses:121Used by:1275
Symbol 123 BitmapUsed by:124
Symbol 124 GraphicUses:123Used by:125
Symbol 125 MovieClip {FrontTileMC4}Uses:124Used by:1275
Symbol 126 BitmapUsed by:127
Symbol 127 GraphicUses:126Used by:128
Symbol 128 MovieClip {FrontTileMC3}Uses:127Used by:1275
Symbol 129 BitmapUsed by:130
Symbol 130 GraphicUses:129Used by:131
Symbol 131 MovieClip {FrontTileMC2}Uses:130Used by:1275
Symbol 132 BitmapUsed by:133
Symbol 133 GraphicUses:132Used by:134
Symbol 134 MovieClip {FrontTileMC1}Uses:133Used by:1275
Symbol 135 BitmapUsed by:136
Symbol 136 GraphicUses:135Used by:137
Symbol 137 MovieClipUses:136Used by:138
Symbol 138 MovieClip {ProbeBlastMC}Uses:137Used by:339 1275
Symbol 139 BitmapUsed by:140
Symbol 140 GraphicUses:139Used by:141 142
Symbol 141 MovieClip {MagnetBulletHitMC}Uses:140Used by:1275
Symbol 142 MovieClip {HomingBulletHitMC}Uses:140Used by:1275
Symbol 143 BitmapUsed by:144
Symbol 144 GraphicUses:143Used by:145
Symbol 145 MovieClip {CashBulletHitMC}Uses:144Used by:1275
Symbol 146 BitmapUsed by:147
Symbol 147 GraphicUses:146Used by:148
Symbol 148 MovieClip {BigBulletHitMC}Uses:147Used by:1275
Symbol 149 BitmapUsed by:150
Symbol 150 GraphicUses:149Used by:151
Symbol 151 MovieClip {SmallBulletHitMC2}Uses:150Used by:1275
Symbol 152 BitmapUsed by:153
Symbol 153 GraphicUses:152Used by:154 155
Symbol 154 MovieClip {SmallBulletHitMC1}Uses:153Used by:1275
Symbol 155 MovieClip {SmallBulletHitMC3}Uses:153Used by:1275
Symbol 156 BitmapUsed by:157
Symbol 157 GraphicUses:156Used by:158
Symbol 158 MovieClip {CashBulletMC}Uses:157Used by:1275
Symbol 159 BitmapUsed by:160
Symbol 160 GraphicUses:159Used by:161
Symbol 161 MovieClipUses:160Used by:166 1354
Symbol 162 BitmapUsed by:163
Symbol 163 GraphicUses:162Used by:164
Symbol 164 MovieClipUses:163Used by:165
Symbol 165 MovieClipUses:164Used by:166 1354
Symbol 166 MovieClip {com.nitrome.engine_specific.InterfaceBackground}Uses:161 165Used by:1275  Timeline
Symbol 167 BitmapUsed by:168 174
Symbol 168 GraphicUses:167Used by:175
Symbol 169 BitmapUsed by:170 173
Symbol 170 GraphicUses:169Used by:175
Symbol 171 BitmapUsed by:172
Symbol 172 GraphicUses:171Used by:175 305
Symbol 173 GraphicUses:169Used by:175
Symbol 174 GraphicUses:167Used by:175
Symbol 175 MovieClip {ProbeMC}Uses:168 170 172 173 174Used by:1275
Symbol 176 GraphicUsed by:177
Symbol 177 MovieClip {com.nitrome.engine_specific.SkipStoryButton}Uses:176Used by:1275  Timeline
Symbol 178 GraphicUsed by:181 228 231 234 237 240 243 262 265 266 267 390 393 401 404 406 410
Symbol 179 FontUsed by:180 1345
Symbol 180 EditableTextUses:179Used by:181
Symbol 181 MovieClip {com.nitrome.game.LevelChooserButton}Uses:178 180Used by:1275  Timeline
Symbol 182 GraphicUsed by:183 359 365 375 383
Symbol 183 MovieClip {NitromeButton}Uses:182Used by:398 410 1275
Symbol 184 BitmapUsed by:185
Symbol 185 GraphicUses:184Used by:186
Symbol 186 MovieClip {com.nitrome.game.MiniclipLogo}Uses:185Used by:1275
Symbol 187 BitmapUsed by:188
Symbol 188 GraphicUses:187Used by:191
Symbol 189 BitmapUsed by:190
Symbol 190 GraphicUses:189Used by:191
Symbol 191 MovieClipUses:188 190Used by:198
Symbol 192 BitmapUsed by:193
Symbol 193 GraphicUses:192Used by:198
Symbol 194 FontUsed by:195
Symbol 195 EditableTextUses:194Used by:198
Symbol 196 FontUsed by:197
Symbol 197 EditableTextUses:196Used by:198
Symbol 198 MovieClip {com.nitrome.game.MsgPanel}Uses:191 193 195 197 61Used by:1275  Timeline
Symbol 199 BitmapUsed by:200 204
Symbol 200 GraphicUses:199Used by:223
Symbol 201 BitmapUsed by:202 203
Symbol 202 GraphicUses:201Used by:223
Symbol 203 GraphicUses:201Used by:223
Symbol 204 GraphicUses:199Used by:223
Symbol 205 BitmapUsed by:206 212
Symbol 206 GraphicUses:205Used by:223
Symbol 207 BitmapUsed by:208 211
Symbol 208 GraphicUses:207Used by:223
Symbol 209 BitmapUsed by:210
Symbol 210 GraphicUses:209Used by:223
Symbol 211 GraphicUses:207Used by:223
Symbol 212 GraphicUses:205Used by:223
Symbol 213 BitmapUsed by:214
Symbol 214 GraphicUses:213Used by:223
Symbol 215 BitmapUsed by:216
Symbol 216 GraphicUses:215Used by:223
Symbol 217 BitmapUsed by:218
Symbol 218 GraphicUses:217Used by:223 335
Symbol 219 BitmapUsed by:220
Symbol 220 GraphicUses:219Used by:223 335
Symbol 221 BitmapUsed by:222
Symbol 222 GraphicUses:221Used by:223 335
Symbol 223 MovieClip {PlayerMC}Uses:200 202 71 203 204 206 208 210 211 212 214 216 218 220 222 87Used by:1275
Symbol 224 MovieClip {holder}Used by:1275 1355
Symbol 225 FontUsed by:226 227 229 230 232 233 235 236 238 239 241 242 260 261 263 264 287 288 310 311 312 313 315 316 317 318 351 384 385 386 388 389 391 392 394 396 397 399 400 402 403 405 407 408 1318 1319 1320 1321 1328 1331 1332 1334 1339 1386
Symbol 226 TextUses:225Used by:228
Symbol 227 TextUses:225Used by:228
Symbol 228 MovieClip {com.nitrome.game.LevelSelectButton}Uses:178 226 227Used by:352 1275
Symbol 229 TextUses:225Used by:231
Symbol 230 TextUses:225Used by:231
Symbol 231 MovieClip {com.nitrome.game.NextLevelButton}Uses:178 229 230Used by:352 1275
Symbol 232 TextUses:225Used by:234
Symbol 233 TextUses:225Used by:234
Symbol 234 MovieClip {com.nitrome.game.TryAgainButton}Uses:178 232 233Used by:352 1275
Symbol 235 TextUses:225Used by:237
Symbol 236 TextUses:225Used by:237
Symbol 237 MovieClip {com.nitrome.game.SubmitScoreButton}Uses:178 235 236Used by:1275
Symbol 238 TextUses:225Used by:240
Symbol 239 TextUses:225Used by:240
Symbol 240 MovieClip {com.nitrome.game.QuitGameButton}Uses:178 238 239Used by:352 1275
Symbol 241 TextUses:225Used by:243 266 267
Symbol 242 TextUses:225Used by:243 266 267
Symbol 243 MovieClip {com.nitrome.game.ContinueEndButton}Uses:178 241 242Used by:352 1275
Symbol 244 BitmapUsed by:245
Symbol 245 GraphicUses:244Used by:246
Symbol 246 MovieClipUses:245Used by:247
Symbol 247 MovieClip {com.nitrome.game.PlayButton}Uses:246Used by:1275  Timeline
Symbol 248 BitmapUsed by:249
Symbol 249 GraphicUses:248Used by:250
Symbol 250 MovieClipUses:249Used by:251
Symbol 251 MovieClip {com.nitrome.game.ViewScoresButton}Uses:250Used by:1275  Timeline
Symbol 252 BitmapUsed by:253
Symbol 253 GraphicUses:252Used by:254
Symbol 254 MovieClipUses:253Used by:255
Symbol 255 MovieClip {com.nitrome.game.CreditsButton}Uses:254Used by:1275  Timeline
Symbol 256 BitmapUsed by:257
Symbol 257 GraphicUses:256Used by:258
Symbol 258 MovieClipUses:257Used by:259
Symbol 259 MovieClip {com.nitrome.game.HelpButton}Uses:258Used by:1275  Timeline
Symbol 260 TextUses:225Used by:262
Symbol 261 TextUses:225Used by:262
Symbol 262 MovieClip {com.nitrome.game.BackButton}Uses:178 260 261Used by:1275  Timeline
Symbol 263 TextUses:225Used by:265
Symbol 264 TextUses:225Used by:265
Symbol 265 MovieClip {com.nitrome.game.PlayGameButton}Uses:178 263 264Used by:1275  Timeline
Symbol 266 MovieClip {com.nitrome.game.ContinueGameButton}Uses:178 241 242Used by:352 1275
Symbol 267 MovieClip {com.nitrome.game.ContinueGameHelpButton}Uses:178 241 242Used by:352 1275
Symbol 268 BitmapUsed by:269
Symbol 269 GraphicUses:268Used by:270
Symbol 270 MovieClipUses:269Used by:271 272 319
Symbol 271 MovieClip {com.nitrome.game.HelpArrowButtonLeft}Uses:270Used by:350 1275
Symbol 272 MovieClip {com.nitrome.game.HelpArrowButtonRight}Uses:270Used by:350 1275
Symbol 273 FontUsed by:274 282 289 295 314 340 348 1322 1323 1324 1325
Symbol 274 EditableTextUses:273Used by:275
Symbol 275 MovieClip {com.nitrome.game.ScoreTicker}Uses:274Used by:283 352 1275
Symbol 276 MovieClipUses:54Used by:352
Symbol 277 BitmapUsed by:278
Symbol 278 GraphicUses:277Used by:281
Symbol 279 BitmapUsed by:280
Symbol 280 GraphicUses:279Used by:281
Symbol 281 MovieClip {fatcat_fla.popupbacking_84}Uses:278 280Used by:352
Symbol 282 TextUses:273Used by:352
Symbol 283 MovieClip {fatcat_fla.score_counter_clip_85}Uses:275Used by:352
Symbol 284 FontUsed by:285 286
Symbol 285 TextUses:284Used by:352
Symbol 286 TextUses:284Used by:352
Symbol 287 TextUses:225Used by:352
Symbol 288 TextUses:225Used by:352
Symbol 289 TextUses:273Used by:352
Symbol 290 BitmapUsed by:291
Symbol 291 GraphicUses:290Used by:294
Symbol 292 BitmapUsed by:293
Symbol 293 GraphicUses:292Used by:294
Symbol 294 MovieClip {fatcat_fla.pausebacking_86}Uses:291 293Used by:352
Symbol 295 TextUses:273Used by:352
Symbol 296 BitmapUsed by:297
Symbol 297 GraphicUses:296Used by:300
Symbol 298 BitmapUsed by:299
Symbol 299 GraphicUses:298Used by:300
Symbol 300 MovieClip {fatcat_fla.helpbacking_87}Uses:297 299Used by:352
Symbol 301 BitmapUsed by:302
Symbol 302 GraphicUses:301Used by:350
Symbol 303 GraphicUsed by:319 341 349
Symbol 304 MovieClipUses:71Used by:319
Symbol 305 MovieClipUses:172Used by:308 339
Symbol 306 BitmapUsed by:307
Symbol 307 GraphicUses:306Used by:308
Symbol 308 MovieClipUses:305 307Used by:309 349
Symbol 309 MovieClipUses:308Used by:319
Symbol 310 TextUses:225Used by:319
Symbol 311 TextUses:225Used by:319
Symbol 312 TextUses:225Used by:319
Symbol 313 TextUses:225Used by:319
Symbol 314 TextUses:273Used by:319
Symbol 315 TextUses:225Used by:319
Symbol 316 TextUses:225Used by:319
Symbol 317 TextUses:225Used by:319
Symbol 318 TextUses:225Used by:319
Symbol 319 MovieClipUses:303 304 309 270 310 311 312 313 314 315 316 317 318Used by:350
Symbol 320 GraphicUsed by:324
Symbol 321 BitmapUsed by:322
Symbol 322 GraphicUses:321Used by:323
Symbol 323 MovieClipUses:322Used by:324
Symbol 324 MovieClip {BeamMC}Uses:320 323Used by:335 1275
Symbol 325 BitmapUsed by:326
Symbol 326 GraphicUses:325Used by:331
Symbol 327 BitmapUsed by:328
Symbol 328 GraphicUses:327Used by:331
Symbol 329 BitmapUsed by:330
Symbol 330 GraphicUses:329Used by:331
Symbol 331 MovieClip {BeamBlastMC}Uses:326 328 330Used by:335 1275
Symbol 332 BitmapUsed by:333
Symbol 333 GraphicUses:332Used by:334
Symbol 334 MovieClip {BeamHaloMC}Uses:333Used by:335 1275
Symbol 335 MovieClipUses:324 331 218 334 220 222Used by:341
Symbol 336 BitmapUsed by:337
Symbol 337 GraphicUses:336Used by:338
Symbol 338 MovieClip {PlayerBulletMC}Uses:337Used by:339 1275
Symbol 339 MovieClipUses:338 138 305Used by:341
Symbol 340 TextUses:273Used by:341
Symbol 341 MovieClipUses:303 335 339 340Used by:350
Symbol 342 BitmapUsed by:343
Symbol 343 GraphicUses:342Used by:344
Symbol 344 MovieClip {MoveTileMC4}Uses:343Used by:349 1275
Symbol 345 BitmapUsed by:346
Symbol 346 GraphicUses:345Used by:347
Symbol 347 MovieClip {StaticTileMC31}Uses:346Used by:349 1275
Symbol 348 TextUses:273Used by:349
Symbol 349 MovieClipUses:303 344 347 308 348Used by:350
Symbol 350 MovieClip {fatcat_fla.help_movie_88}Uses:302 319 271 272 341 349Used by:352  Timeline
Symbol 351 TextUses:225Used by:352
Symbol 352 MovieClip {fatcat_fla.popup_clip_82}Uses:276 281 228 231 282 283 285 286 287 234 240 288 275 289 243 294 266 295 300 350 351 267Used by:353
Symbol 353 MovieClip {com.nitrome.game.PopUpHolder}Uses:352Used by:1275  Timeline
Symbol 354 BitmapUsed by:355
Symbol 355 GraphicUses:354Used by:359
Symbol 356 BitmapUsed by:358
Symbol 357 BitmapUsed by:358
Symbol 358 GraphicUses:356 357Used by:359
Symbol 359 MovieClip {com.nitrome.game.PauseButton}Uses:182 355 358Used by:1275  Timeline
Symbol 360 BitmapUsed by:361
Symbol 361 GraphicUses:360Used by:365
Symbol 362 BitmapUsed by:364
Symbol 363 BitmapUsed by:364
Symbol 364 GraphicUses:362 363Used by:365
Symbol 365 MovieClip {com.nitrome.game.GameHelpButton}Uses:182 361 364Used by:1275  Timeline
Symbol 366 BitmapUsed by:367
Symbol 367 GraphicUses:366Used by:375
Symbol 368 BitmapUsed by:370 374
Symbol 369 BitmapUsed by:370 373
Symbol 370 GraphicUses:368 369Used by:375
Symbol 371 BitmapUsed by:372
Symbol 372 GraphicUses:371Used by:375 383
Symbol 373 GraphicUses:369Used by:375
Symbol 374 GraphicUses:368Used by:375
Symbol 375 MovieClip {com.nitrome.game.MusicToggle}Uses:182 367 370 372 373 374Used by:1275  Timeline
Symbol 376 BitmapUsed by:377
Symbol 377 GraphicUses:376Used by:383
Symbol 378 BitmapUsed by:380 382
Symbol 379 BitmapUsed by:380 381
Symbol 380 GraphicUses:378 379Used by:383
Symbol 381 GraphicUses:379Used by:383
Symbol 382 GraphicUses:378Used by:383
Symbol 383 MovieClip {com.nitrome.game.FxToggle}Uses:182 377 380 372 381 382Used by:1275  Timeline
Symbol 384 EditableTextUses:225Used by:387
Symbol 385 EditableTextUses:225Used by:387
Symbol 386 EditableTextUses:225Used by:387
Symbol 387 MovieClip {ScoreLine}Uses:384 385 386Used by:398 1275
Symbol 388 TextUses:225Used by:390
Symbol 389 TextUses:225Used by:390
Symbol 390 MovieClip {NextArrow}Uses:178 388 389Used by:398 1275
Symbol 391 TextUses:225Used by:393
Symbol 392 TextUses:225Used by:393
Symbol 393 MovieClip {PrevArrow}Uses:178 391 392Used by:398 1275
Symbol 394 TextUses:225Used by:395
Symbol 395 MovieClipUses:394Used by:398 409
Symbol 396 TextUses:225Used by:398 410
Symbol 397 TextUses:225Used by:398 410
Symbol 398 MovieClip {HighScoreBoard}Uses:387 390 393 395 396 397 183Used by:1275  Timeline
Symbol 399 TextUses:225Used by:401
Symbol 400 TextUses:225Used by:401
Symbol 401 MovieClip {SubmitButton}Uses:178 399 400Used by:410 1275
Symbol 402 TextUses:225Used by:404
Symbol 403 TextUses:225Used by:404
Symbol 404 MovieClip {ClearButton}Uses:178 402 403Used by:410 1275
Symbol 405 EditableTextUses:225Used by:406
Symbol 406 MovieClip {LetterButton}Uses:178 405Used by:410 1275
Symbol 407 EditableTextUses:225Used by:410
Symbol 408 EditableTextUses:225Used by:410
Symbol 409 MovieClip {fatcat_fla.loading_black_118}Uses:395Used by:410
Symbol 410 MovieClip {ScoreSubmitPanel}Uses:178 407 408 401 404 406 409 396 397 183Used by:1275  Timeline
Symbol 411 FontUsed by:412
Symbol 412 TextUses:411Used by:415
Symbol 413 BitmapUsed by:414
Symbol 414 GraphicUses:413Used by:415
Symbol 415 MovieClip {com.nitrome.util.Lock}Uses:54 412 414Used by:1275
Symbol 416 BitmapUsed by:417
Symbol 417 GraphicUses:416Used by:422
Symbol 418 BitmapUsed by:419
Symbol 419 GraphicUses:418Used by:422
Symbol 420 BitmapUsed by:421
Symbol 421 GraphicUses:420Used by:422
Symbol 422 MovieClip {SmallBulletMC1}Uses:417 419 421Used by:1275
Symbol 423 BitmapUsed by:424
Symbol 424 GraphicUses:423Used by:429
Symbol 425 BitmapUsed by:426
Symbol 426 GraphicUses:425Used by:429
Symbol 427 BitmapUsed by:428
Symbol 428 GraphicUses:427Used by:429
Symbol 429 MovieClip {SmallBulletMC2}Uses:424 426 428Used by:1275
Symbol 430 BitmapUsed by:431
Symbol 431 GraphicUses:430Used by:436
Symbol 432 BitmapUsed by:433
Symbol 433 GraphicUses:432Used by:436
Symbol 434 BitmapUsed by:435
Symbol 435 GraphicUses:434Used by:436
Symbol 436 MovieClip {SmallBulletMC3}Uses:431 433 435Used by:1275
Symbol 437 BitmapUsed by:438
Symbol 438 GraphicUses:437Used by:441
Symbol 439 BitmapUsed by:440
Symbol 440 GraphicUses:439Used by:441
Symbol 441 MovieClip {HomingBulletMC}Uses:438 440Used by:1275
Symbol 442 BitmapUsed by:443
Symbol 443 GraphicUses:442Used by:470
Symbol 444 BitmapUsed by:445
Symbol 445 GraphicUses:444Used by:470
Symbol 446 BitmapUsed by:447
Symbol 447 GraphicUses:446Used by:470
Symbol 448 BitmapUsed by:449
Symbol 449 GraphicUses:448Used by:470
Symbol 450 BitmapUsed by:451
Symbol 451 GraphicUses:450Used by:470
Symbol 452 BitmapUsed by:453
Symbol 453 GraphicUses:452Used by:470
Symbol 454 BitmapUsed by:455
Symbol 455 GraphicUses:454Used by:470
Symbol 456 BitmapUsed by:457
Symbol 457 GraphicUses:456Used by:470
Symbol 458 BitmapUsed by:459
Symbol 459 GraphicUses:458Used by:470
Symbol 460 BitmapUsed by:461
Symbol 461 GraphicUses:460Used by:470
Symbol 462 BitmapUsed by:463
Symbol 463 GraphicUses:462Used by:470
Symbol 464 BitmapUsed by:465
Symbol 465 GraphicUses:464Used by:470
Symbol 466 BitmapUsed by:467
Symbol 467 GraphicUses:466Used by:470
Symbol 468 BitmapUsed by:469
Symbol 469 GraphicUses:468Used by:470
Symbol 470 MovieClip {SmallBangMC}Uses:443 445 447 449 451 453 455 457 459 461 463 465 467 469Used by:1275
Symbol 471 GraphicUsed by:473
Symbol 472 EditableTextUses:1Used by:473
Symbol 473 MovieClip {FreeTileMC}Uses:471 472Used by:1275
Symbol 474 GraphicUsed by:475
Symbol 475 MovieClip {LaserMC1}Uses:474Used by:1275
Symbol 476 GraphicUsed by:477
Symbol 477 MovieClipUses:476Used by:478
Symbol 478 MovieClip {TurnTileMC}Uses:477Used by:1275
Symbol 479 GraphicUsed by:480
Symbol 480 MovieClip {VertTileMC}Uses:479Used by:1275
Symbol 481 GraphicUsed by:482
Symbol 482 MovieClip {StaticTileMC}Uses:481Used by:1275
Symbol 483 GraphicUsed by:484
Symbol 484 MovieClip {BigFreeTileMC}Uses:483Used by:1275
Symbol 485 GraphicUsed by:486
Symbol 486 MovieClip {BigHorizTileMC}Uses:485Used by:1275
Symbol 487 GraphicUsed by:488
Symbol 488 MovieClip {BigVertTileMC}Uses:487Used by:1275
Symbol 489 GraphicUsed by:490
Symbol 490 MovieClip {BigStaticTileMC}Uses:489Used by:1275
Symbol 491 GraphicUsed by:492
Symbol 492 MovieClip {KillTileMC}Uses:491Used by:1275
Symbol 493 GraphicUsed by:494
Symbol 494 MovieClip {HorizTileMC}Uses:493Used by:1275
Symbol 495 GraphicUsed by:496
Symbol 496 MovieClip {NoThruTileMC}Uses:495Used by:1275
Symbol 497 BitmapUsed by:498
Symbol 498 GraphicUses:497Used by:499
Symbol 499 MovieClip {PlayerBulletHitMC3}Uses:498Used by:1275
Symbol 500 BitmapUsed by:501
Symbol 501 GraphicUses:500Used by:502
Symbol 502 MovieClip {PlayerBulletHitMC1}Uses:501Used by:1275
Symbol 503 BitmapUsed by:504
Symbol 504 GraphicUses:503Used by:505
Symbol 505 MovieClip {PlayerBulletHitMC2}Uses:504Used by:1275
Symbol 506 BitmapUsed by:508
Symbol 507 BitmapUsed by:508 512 514 516 544 637 639 641 643
Symbol 508 GraphicUses:506 507Used by:517
Symbol 509 GraphicUsed by:510 1368
Symbol 510 MovieClipUses:509Used by:517 534 543 553 562 571 580 589 598 607 616 621 626 635 644 664 677 690 1126 1129 1132 1137 1142 1147 1154 1159 1164 1171 1184
Symbol 511 BitmapUsed by:512
Symbol 512 GraphicUses:511 507Used by:517
Symbol 513 BitmapUsed by:514
Symbol 514 GraphicUses:513 507Used by:517
Symbol 515 BitmapUsed by:516
Symbol 516 GraphicUses:515 507Used by:517
Symbol 517 MovieClip {MonsterMC10}Uses:508 510 512 514 516Used by:1275
Symbol 518 BitmapUsed by:519
Symbol 519 GraphicUses:518Used by:534
Symbol 520 BitmapUsed by:521
Symbol 521 GraphicUses:520Used by:534
Symbol 522 BitmapUsed by:523
Symbol 523 GraphicUses:522Used by:534
Symbol 524 BitmapUsed by:525
Symbol 525 GraphicUses:524Used by:534
Symbol 526 BitmapUsed by:527
Symbol 527 GraphicUses:526Used by:534
Symbol 528 BitmapUsed by:529
Symbol 529 GraphicUses:528Used by:534
Symbol 530 BitmapUsed by:531
Symbol 531 GraphicUses:530Used by:534
Symbol 532 BitmapUsed by:533
Symbol 533 GraphicUses:532Used by:534
Symbol 534 MovieClip {MonsterMC2}Uses:519 510 521 523 525 527 529 531 533Used by:1275
Symbol 535 BitmapUsed by:536
Symbol 536 GraphicUses:535Used by:543
Symbol 537 BitmapUsed by:538
Symbol 538 GraphicUses:537Used by:543
Symbol 539 BitmapUsed by:540
Symbol 540 GraphicUses:539Used by:543
Symbol 541 BitmapUsed by:542
Symbol 542 GraphicUses:541Used by:543
Symbol 543 MovieClip {MonsterMC5}Uses:536 510 538 540 542Used by:1275
Symbol 544 GraphicUses:507Used by:553
Symbol 545 BitmapUsed by:546
Symbol 546 GraphicUses:545Used by:553
Symbol 547 BitmapUsed by:548
Symbol 548 GraphicUses:547Used by:553
Symbol 549 BitmapUsed by:550
Symbol 550 GraphicUses:549Used by:553
Symbol 551 BitmapUsed by:552
Symbol 552 GraphicUses:551Used by:553
Symbol 553 MovieClip {MonsterMC9}Uses:544 546 510 548 550 552Used by:1275
Symbol 554 BitmapUsed by:555
Symbol 555 GraphicUses:554Used by:562
Symbol 556 BitmapUsed by:557
Symbol 557 GraphicUses:556Used by:562
Symbol 558 BitmapUsed by:559
Symbol 559 GraphicUses:558Used by:562
Symbol 560 BitmapUsed by:561
Symbol 561 GraphicUses:560Used by:562
Symbol 562 MovieClip {MonsterMC6}Uses:555 510 557 559 561Used by:1275
Symbol 563 BitmapUsed by:564
Symbol 564 GraphicUses:563Used by:571
Symbol 565 BitmapUsed by:566
Symbol 566 GraphicUses:565Used by:571
Symbol 567 BitmapUsed by:568
Symbol 568 GraphicUses:567Used by:571
Symbol 569 BitmapUsed by:570
Symbol 570 GraphicUses:569Used by:571
Symbol 571 MovieClip {MonsterMC3}Uses:564 510 566 568 570Used by:1275
Symbol 572 BitmapUsed by:573
Symbol 573 GraphicUses:572Used by:580
Symbol 574 BitmapUsed by:575
Symbol 575 GraphicUses:574Used by:580
Symbol 576 BitmapUsed by:577
Symbol 577 GraphicUses:576Used by:580
Symbol 578 BitmapUsed by:579
Symbol 579 GraphicUses:578Used by:580
Symbol 580 MovieClip {MonsterMC18}Uses:573 510 575 577 579Used by:1275
Symbol 581 BitmapUsed by:582
Symbol 582 GraphicUses:581Used by:589
Symbol 583 BitmapUsed by:584
Symbol 584 GraphicUses:583Used by:589
Symbol 585 BitmapUsed by:586
Symbol 586 GraphicUses:585Used by:589
Symbol 587 BitmapUsed by:588
Symbol 588 GraphicUses:587Used by:589
Symbol 589 MovieClip {MonsterMC17}Uses:582 510 584 586 588Used by:1275
Symbol 590 BitmapUsed by:591
Symbol 591 GraphicUses:590Used by:598
Symbol 592 BitmapUsed by:593
Symbol 593 GraphicUses:592Used by:598
Symbol 594 BitmapUsed by:595
Symbol 595 GraphicUses:594Used by:598
Symbol 596 BitmapUsed by:597
Symbol 597 GraphicUses:596Used by:598
Symbol 598 MovieClip {MonsterMC16}Uses:591 510 593 595 597Used by:1275
Symbol 599 BitmapUsed by:600
Symbol 600 GraphicUses:599Used by:607
Symbol 601 BitmapUsed by:602
Symbol 602 GraphicUses:601Used by:607
Symbol 603 BitmapUsed by:604
Symbol 604 GraphicUses:603Used by:607
Symbol 605 BitmapUsed by:606
Symbol 606 GraphicUses:605Used by:607
Symbol 607 MovieClip {MonsterMC7}Uses:600 510 602 604 606Used by:1275
Symbol 608 BitmapUsed by:609
Symbol 609 GraphicUses:608Used by:616
Symbol 610 BitmapUsed by:611
Symbol 611 GraphicUses:610Used by:616
Symbol 612 BitmapUsed by:613
Symbol 613 GraphicUses:612Used by:616
Symbol 614 BitmapUsed by:615
Symbol 615 GraphicUses:614Used by:616
Symbol 616 MovieClip {MonsterMC15}Uses:609 510 611 613 615Used by:1275
Symbol 617 BitmapUsed by:618
Symbol 618 GraphicUses:617Used by:621
Symbol 619 BitmapUsed by:620
Symbol 620 GraphicUses:619Used by:621
Symbol 621 MovieClip {MonsterMC1}Uses:618 510 620Used by:1275
Symbol 622 BitmapUsed by:623
Symbol 623 GraphicUses:622Used by:626
Symbol 624 BitmapUsed by:625
Symbol 625 GraphicUses:624Used by:626
Symbol 626 MovieClip {MonsterMC4}Uses:623 510 625Used by:1275
Symbol 627 BitmapUsed by:628
Symbol 628 GraphicUses:627Used by:635
Symbol 629 BitmapUsed by:630
Symbol 630 GraphicUses:629Used by:635
Symbol 631 BitmapUsed by:632
Symbol 632 GraphicUses:631Used by:635
Symbol 633 BitmapUsed by:634
Symbol 634 GraphicUses:633Used by:635
Symbol 635 MovieClip {MonsterMC8}Uses:628 510 630 632 634Used by:1275
Symbol 636 BitmapUsed by:637
Symbol 637 GraphicUses:636 507Used by:644
Symbol 638 BitmapUsed by:639
Symbol 639 GraphicUses:638 507Used by:644
Symbol 640 BitmapUsed by:641
Symbol 641 GraphicUses:640 507Used by:644
Symbol 642 BitmapUsed by:643
Symbol 643 GraphicUses:642 507Used by:644
Symbol 644 MovieClip {MonsterMC12}Uses:637 510 639 641 643Used by:1275
Symbol 645 BitmapUsed by:646 651 663
Symbol 646 GraphicUses:645Used by:664
Symbol 647 BitmapUsed by:648
Symbol 648 GraphicUses:647Used by:664
Symbol 649 BitmapUsed by:650
Symbol 650 GraphicUses:649Used by:664
Symbol 651 GraphicUses:645Used by:664
Symbol 652 BitmapUsed by:653
Symbol 653 GraphicUses:652Used by:664
Symbol 654 BitmapUsed by:655
Symbol 655 GraphicUses:654Used by:664
Symbol 656 BitmapUsed by:657
Symbol 657 GraphicUses:656Used by:664
Symbol 658 BitmapUsed by:659
Symbol 659 GraphicUses:658Used by:664
Symbol 660 BitmapUsed by:661
Symbol 661 GraphicUses:660Used by:664
Symbol 662 BitmapUsed by:663
Symbol 663 GraphicUses:662 645Used by:664
Symbol 664 MovieClip {MonsterMC14}Uses:646 648 510 650 651 653 655 657 659 661 663Used by:1275
Symbol 665 BitmapUsed by:666
Symbol 666 GraphicUses:665Used by:677
Symbol 667 BitmapUsed by:668
Symbol 668 GraphicUses:667Used by:677
Symbol 669 BitmapUsed by:670
Symbol 670 GraphicUses:669Used by:677
Symbol 671 BitmapUsed by:672
Symbol 672 GraphicUses:671Used by:677
Symbol 673 BitmapUsed by:674
Symbol 674 GraphicUses:673Used by:677
Symbol 675 BitmapUsed by:676
Symbol 676 GraphicUses:675Used by:677
Symbol 677 MovieClip {MonsterMC11}Uses:666 510 668 670 672 674 676Used by:1275
Symbol 678 BitmapUsed by:679 686 689
Symbol 679 GraphicUses:678Used by:690
Symbol 680 BitmapUsed by:681 687 689
Symbol 681 GraphicUses:680Used by:690
Symbol 682 BitmapUsed by:683 689
Symbol 683 GraphicUses:682Used by:690
Symbol 684 BitmapUsed by:685 688 689
Symbol 685 GraphicUses:684Used by:690
Symbol 686 GraphicUses:678Used by:690
Symbol 687 GraphicUses:680Used by:690
Symbol 688 GraphicUses:684Used by:690
Symbol 689 GraphicUses:684 682 680 678Used by:690
Symbol 690 MovieClip {MonsterMC13}Uses:679 681 683 685 510 686 687 688 689Used by:1275
Symbol 691 BitmapUsed by:692
Symbol 692 GraphicUses:691Used by:693
Symbol 693 MovieClipUses:692Used by:700
Symbol 694 BitmapUsed by:695
Symbol 695 GraphicUses:694Used by:696
Symbol 696 MovieClipUses:695Used by:700
Symbol 697 BitmapUsed by:698
Symbol 698 GraphicUses:697Used by:699
Symbol 699 MovieClipUses:698Used by:700
Symbol 700 MovieClip {BigBulletMC}Uses:693 696 699Used by:1275
Symbol 701 BitmapUsed by:702
Symbol 702 GraphicUses:701Used by:703
Symbol 703 MovieClipUses:702Used by:704
Symbol 704 MovieClip {CakeMC1}Uses:703Used by:1275
Symbol 705 BitmapUsed by:706
Symbol 706 GraphicUses:705Used by:707
Symbol 707 MovieClipUses:706Used by:708
Symbol 708 MovieClip {CakeMC2}Uses:707Used by:1275
Symbol 709 BitmapUsed by:710
Symbol 710 GraphicUses:709Used by:711
Symbol 711 MovieClipUses:710Used by:712
Symbol 712 MovieClip {CakeMC3}Uses:711Used by:1275
Symbol 713 BitmapUsed by:714
Symbol 714 GraphicUses:713Used by:715
Symbol 715 MovieClipUses:714Used by:716
Symbol 716 MovieClip {CakeMC4}Uses:715Used by:1275
Symbol 717 BitmapUsed by:718
Symbol 718 GraphicUses:717Used by:719
Symbol 719 MovieClipUses:718Used by:720
Symbol 720 MovieClip {CakeMC5}Uses:719Used by:1275
Symbol 721 BitmapUsed by:722
Symbol 722 GraphicUses:721Used by:723
Symbol 723 MovieClipUses:722Used by:724
Symbol 724 MovieClip {CakeMC6}Uses:723Used by:1275
Symbol 725 BitmapUsed by:726
Symbol 726 GraphicUses:725Used by:727
Symbol 727 MovieClipUses:726Used by:728
Symbol 728 MovieClip {CakeMC7}Uses:727Used by:1275
Symbol 729 BitmapUsed by:730
Symbol 730 GraphicUses:729Used by:731
Symbol 731 MovieClipUses:730Used by:732
Symbol 732 MovieClip {CakeMC8}Uses:731Used by:1275
Symbol 733 BitmapUsed by:734
Symbol 734 GraphicUses:733Used by:739
Symbol 735 BitmapUsed by:736
Symbol 736 GraphicUses:735Used by:739
Symbol 737 BitmapUsed by:738
Symbol 738 GraphicUses:737Used by:739
Symbol 739 MovieClip {BeamHitMC}Uses:734 736 738Used by:1275
Symbol 740 BitmapUsed by:741 761
Symbol 741 GraphicUses:740Used by:760
Symbol 742 BitmapUsed by:743 762
Symbol 743 GraphicUses:742Used by:760
Symbol 744 BitmapUsed by:745 763
Symbol 745 GraphicUses:744Used by:760
Symbol 746 BitmapUsed by:747 764
Symbol 747 GraphicUses:746Used by:760
Symbol 748 BitmapUsed by:749 765
Symbol 749 GraphicUses:748Used by:760
Symbol 750 BitmapUsed by:751 766
Symbol 751 GraphicUses:750Used by:760
Symbol 752 BitmapUsed by:753 767
Symbol 753 GraphicUses:752Used by:760
Symbol 754 BitmapUsed by:755 768
Symbol 755 GraphicUses:754Used by:760
Symbol 756 BitmapUsed by:757 769
Symbol 757 GraphicUses:756Used by:760
Symbol 758 BitmapUsed by:759 770
Symbol 759 GraphicUses:758Used by:760
Symbol 760 MovieClip {NapalmMC1}Uses:741 743 745 747 749 751 753 755 757 759Used by:1275
Symbol 761 GraphicUses:740Used by:771
Symbol 762 GraphicUses:742Used by:771
Symbol 763 GraphicUses:744Used by:771
Symbol 764 GraphicUses:746Used by:771
Symbol 765 GraphicUses:748Used by:771
Symbol 766 GraphicUses:750Used by:771
Symbol 767 GraphicUses:752Used by:771
Symbol 768 GraphicUses:754Used by:771
Symbol 769 GraphicUses:756Used by:771
Symbol 770 GraphicUses:758Used by:771
Symbol 771 MovieClip {NapalmMC2}Uses:761 762 763 764 765 766 767 768 769 770Used by:1275
Symbol 772 BitmapUsed by:773
Symbol 773 GraphicUses:772Used by:780
Symbol 774 BitmapUsed by:775
Symbol 775 GraphicUses:774Used by:780
Symbol 776 BitmapUsed by:777
Symbol 777 GraphicUses:776Used by:780
Symbol 778 BitmapUsed by:779
Symbol 779 GraphicUses:778Used by:780
Symbol 780 MovieClip {MagnetBulletMC}Uses:773 775 777 779Used by:1275
Symbol 781 BitmapUsed by:782
Symbol 782 GraphicUses:781Used by:793
Symbol 783 BitmapUsed by:784
Symbol 784 GraphicUses:783Used by:793
Symbol 785 BitmapUsed by:786
Symbol 786 GraphicUses:785Used by:793
Symbol 787 BitmapUsed by:788
Symbol 788 GraphicUses:787Used by:793
Symbol 789 BitmapUsed by:790
Symbol 790 GraphicUses:789Used by:793
Symbol 791 BitmapUsed by:792
Symbol 792 GraphicUses:791Used by:793
Symbol 793 MovieClip {MagnetiseMC}Uses:782 784 786 788 790 792Used by:1275
Symbol 794 BitmapUsed by:795
Symbol 795 GraphicUses:794Used by:796
Symbol 796 MovieClipUses:795Used by:810
Symbol 797 BitmapUsed by:798
Symbol 798 GraphicUses:797Used by:809
Symbol 799 BitmapUsed by:800
Symbol 800 GraphicUses:799Used by:809
Symbol 801 BitmapUsed by:802
Symbol 802 GraphicUses:801Used by:809
Symbol 803 BitmapUsed by:804
Symbol 804 GraphicUses:803Used by:809
Symbol 805 BitmapUsed by:806
Symbol 806 GraphicUses:805Used by:809
Symbol 807 BitmapUsed by:808
Symbol 808 GraphicUses:807Used by:809
Symbol 809 MovieClipUses:798 800 802 804 806 808Used by:810
Symbol 810 MovieClip {ShieldMC}Uses:796 809Used by:1275
Symbol 811 BitmapUsed by:812
Symbol 812 GraphicUses:811Used by:835
Symbol 813 BitmapUsed by:814
Symbol 814 GraphicUses:813Used by:835
Symbol 815 BitmapUsed by:816
Symbol 816 GraphicUses:815Used by:835
Symbol 817 BitmapUsed by:818
Symbol 818 GraphicUses:817Used by:835
Symbol 819 BitmapUsed by:820
Symbol 820 GraphicUses:819Used by:835
Symbol 821 BitmapUsed by:822
Symbol 822 GraphicUses:821Used by:835
Symbol 823 BitmapUsed by:824
Symbol 824 GraphicUses:823Used by:835
Symbol 825 BitmapUsed by:826
Symbol 826 GraphicUses:825Used by:835
Symbol 827 BitmapUsed by:828
Symbol 828 GraphicUses:827Used by:835
Symbol 829 BitmapUsed by:830
Symbol 830 GraphicUses:829Used by:835
Symbol 831 BitmapUsed by:832
Symbol 832 GraphicUses:831Used by:835
Symbol 833 BitmapUsed by:834
Symbol 834 GraphicUses:833Used by:835
Symbol 835 MovieClip {LargeBangMC}Uses:812 814 816 818 820 822 824 826 828 830 832 834Used by:1275
Symbol 836 BitmapUsed by:837
Symbol 837 GraphicUses:836Used by:866
Symbol 838 BitmapUsed by:839
Symbol 839 GraphicUses:838Used by:866
Symbol 840 BitmapUsed by:841
Symbol 841 GraphicUses:840Used by:866
Symbol 842 BitmapUsed by:843
Symbol 843 GraphicUses:842Used by:866
Symbol 844 BitmapUsed by:845
Symbol 845 GraphicUses:844Used by:866
Symbol 846 BitmapUsed by:847
Symbol 847 GraphicUses:846Used by:866
Symbol 848 BitmapUsed by:849
Symbol 849 GraphicUses:848Used by:866
Symbol 850 BitmapUsed by:851
Symbol 851 GraphicUses:850Used by:866
Symbol 852 BitmapUsed by:853
Symbol 853 GraphicUses:852Used by:866
Symbol 854 BitmapUsed by:855
Symbol 855 GraphicUses:854Used by:866
Symbol 856 BitmapUsed by:857
Symbol 857 GraphicUses:856Used by:866
Symbol 858 BitmapUsed by:859
Symbol 859 GraphicUses:858Used by:866
Symbol 860 BitmapUsed by:861
Symbol 861 GraphicUses:860Used by:866
Symbol 862 BitmapUsed by:863
Symbol 863 GraphicUses:862Used by:866
Symbol 864 BitmapUsed by:865
Symbol 865 GraphicUses:864Used by:866
Symbol 866 MovieClip {MediumBangMC}Uses:837 839 841 843 845 847 849 851 853 855 857 859 861 863 865Used by:1275
Symbol 867 BitmapUsed by:868 892 917
Symbol 868 GraphicUses:867Used by:891
Symbol 869 BitmapUsed by:870 893 905 918
Symbol 870 GraphicUses:869Used by:891
Symbol 871 BitmapUsed by:872 894 906 919
Symbol 872 GraphicUses:871Used by:891
Symbol 873 BitmapUsed by:874 895 907 920
Symbol 874 GraphicUses:873Used by:891
Symbol 875 BitmapUsed by:876 896 908 921
Symbol 876 GraphicUses:875Used by:891
Symbol 877 BitmapUsed by:878 897 909 922
Symbol 878 GraphicUses:877Used by:891
Symbol 879 BitmapUsed by:880 898 910 923
Symbol 880 GraphicUses:879Used by:891
Symbol 881 BitmapUsed by:882 899 911 924
Symbol 882 GraphicUses:881Used by:891
Symbol 883 BitmapUsed by:884 900 912
Symbol 884 GraphicUses:883Used by:891
Symbol 885 BitmapUsed by:886 901 913
Symbol 886 GraphicUses:885Used by:891
Symbol 887 BitmapUsed by:888 902 914
Symbol 888 GraphicUses:887Used by:891
Symbol 889 BitmapUsed by:890 903 915
Symbol 890 GraphicUses:889Used by:891
Symbol 891 MovieClip {BurnMC1}Uses:868 870 872 874 876 878 880 882 884 886 888 890Used by:1275
Symbol 892 GraphicUses:867Used by:904 916
Symbol 893 GraphicUses:869Used by:904
Symbol 894 GraphicUses:871Used by:904
Symbol 895 GraphicUses:873Used by:904
Symbol 896 GraphicUses:875Used by:904
Symbol 897 GraphicUses:877Used by:904
Symbol 898 GraphicUses:879Used by:904
Symbol 899 GraphicUses:881Used by:904
Symbol 900 GraphicUses:883Used by:904 925
Symbol 901 GraphicUses:885Used by:904 925
Symbol 902 GraphicUses:887Used by:904 925
Symbol 903 GraphicUses:889Used by:904 925
Symbol 904 MovieClip {BurnMC4}Uses:892 893 894 895 896 897 898 899 900 901 902 903Used by:1275
Symbol 905 GraphicUses:869Used by:916
Symbol 906 GraphicUses:871Used by:916
Symbol 907 GraphicUses:873Used by:916
Symbol 908 GraphicUses:875Used by:916
Symbol 909 GraphicUses:877Used by:916
Symbol 910 GraphicUses:879Used by:916
Symbol 911 GraphicUses:881Used by:916
Symbol 912 GraphicUses:883Used by:916
Symbol 913 GraphicUses:885Used by:916
Symbol 914 GraphicUses:887Used by:916
Symbol 915 GraphicUses:889Used by:916
Symbol 916 MovieClip {BurnMC3}Uses:892 905 906 907 908 909 910 911 912 913 914 915Used by:1275
Symbol 917 GraphicUses:867Used by:925
Symbol 918 GraphicUses:869Used by:925
Symbol 919 GraphicUses:871Used by:925
Symbol 920 GraphicUses:873Used by:925
Symbol 921 GraphicUses:875Used by:925
Symbol 922 GraphicUses:877Used by:925
Symbol 923 GraphicUses:879Used by:925
Symbol 924 GraphicUses:881Used by:925
Symbol 925 MovieClip {BurnMC2}Uses:917 918 919 920 921 922 923 924 900 901 902 903Used by:1275
Symbol 926 BitmapUsed by:927
Symbol 927 GraphicUses:926Used by:930
Symbol 928 BitmapUsed by:929
Symbol 929 GraphicUses:928Used by:930
Symbol 930 MovieClip {SideLaserHitMC}Uses:927 929Used by:1275
Symbol 931 BitmapUsed by:932
Symbol 932 GraphicUses:931Used by:935
Symbol 933 BitmapUsed by:934
Symbol 934 GraphicUses:933Used by:935
Symbol 935 MovieClip {FrontLaserHitMC}Uses:932 934Used by:1275
Symbol 936 BitmapUsed by:937
Symbol 937 GraphicUses:936Used by:938
Symbol 938 MovieClip {BreakTileMC2}Uses:937Used by:1275
Symbol 939 BitmapUsed by:940
Symbol 940 GraphicUses:939Used by:941
Symbol 941 MovieClip {BreakTileMC1}Uses:940Used by:1275
Symbol 942 BitmapUsed by:943 944
Symbol 943 GraphicUses:942Used by:945
Symbol 944 GraphicUses:942Used by:945
Symbol 945 MovieClip {MirrorTileMC}Uses:943 944Used by:1275
Symbol 946 BitmapUsed by:947
Symbol 947 GraphicUses:946Used by:948
Symbol 948 MovieClip {LaserMC}Uses:947Used by:1275
Symbol 949 BitmapUsed by:950
Symbol 950 GraphicUses:949Used by:951
Symbol 951 MovieClip {BlockTileMC}Uses:950Used by:1275
Symbol 952 BitmapUsed by:953
Symbol 953 GraphicUses:952Used by:954
Symbol 954 MovieClip {MoveTileMC12}Uses:953Used by:1275
Symbol 955 BitmapUsed by:956
Symbol 956 GraphicUses:955Used by:957
Symbol 957 MovieClip {MoveTileMC11}Uses:956Used by:1275
Symbol 958 BitmapUsed by:959
Symbol 959 GraphicUses:958Used by:960
Symbol 960 MovieClip {MoveTileMC10}Uses:959Used by:1275
Symbol 961 BitmapUsed by:962
Symbol 962 GraphicUses:961Used by:963
Symbol 963 MovieClip {MoveTileMC9}Uses:962Used by:1275
Symbol 964 BitmapUsed by:965
Symbol 965 GraphicUses:964Used by:966
Symbol 966 MovieClip {MoveTileMC8}Uses:965Used by:1275
Symbol 967 BitmapUsed by:968
Symbol 968 GraphicUses:967Used by:969
Symbol 969 MovieClip {MoveTileMC7}Uses:968Used by:1275
Symbol 970 BitmapUsed by:971
Symbol 971 GraphicUses:970Used by:972
Symbol 972 MovieClip {MoveTileMC6}Uses:971Used by:1275
Symbol 973 BitmapUsed by:974
Symbol 974 GraphicUses:973Used by:975
Symbol 975 MovieClip {MoveTileMC5}Uses:974Used by:1275
Symbol 976 BitmapUsed by:977
Symbol 977 GraphicUses:976Used by:978
Symbol 978 MovieClip {MoveTileMC3}Uses:977Used by:1275
Symbol 979 BitmapUsed by:980
Symbol 980 GraphicUses:979Used by:981
Symbol 981 MovieClip {MoveTileMC2}Uses:980Used by:1275
Symbol 982 BitmapUsed by:983
Symbol 983 GraphicUses:982Used by:984
Symbol 984 MovieClip {MoveTileMC1}Uses:983Used by:1275
Symbol 985 BitmapUsed by:986
Symbol 986 GraphicUses:985Used by:987
Symbol 987 MovieClip {StaticTileMC32}Uses:986Used by:1275
Symbol 988 BitmapUsed by:989
Symbol 989 GraphicUses:988Used by:990
Symbol 990 MovieClip {StaticTileMC30}Uses:989Used by:1275
Symbol 991 BitmapUsed by:992
Symbol 992 GraphicUses:991Used by:993
Symbol 993 MovieClip {StaticTileMC29}Uses:992Used by:1275
Symbol 994 BitmapUsed by:995
Symbol 995 GraphicUses:994Used by:996
Symbol 996 MovieClip {StaticTileMC28}Uses:995Used by:1275
Symbol 997 BitmapUsed by:998
Symbol 998 GraphicUses:997Used by:999
Symbol 999 MovieClip {StaticTileMC27}Uses:998Used by:1275
Symbol 1000 BitmapUsed by:1001
Symbol 1001 GraphicUses:1000Used by:1002
Symbol 1002 MovieClip {StaticTileMC26}Uses:1001Used by:1275
Symbol 1003 BitmapUsed by:1004
Symbol 1004 GraphicUses:1003Used by:1005
Symbol 1005 MovieClip {StaticTileMC25}Uses:1004Used by:1275
Symbol 1006 BitmapUsed by:1007
Symbol 1007 GraphicUses:1006Used by:1008
Symbol 1008 MovieClip {StaticTileMC24}Uses:1007Used by:1275
Symbol 1009 BitmapUsed by:1010
Symbol 1010 GraphicUses:1009Used by:1011
Symbol 1011 MovieClip {StaticTileMC23}Uses:1010Used by:1275
Symbol 1012 BitmapUsed by:1013
Symbol 1013 GraphicUses:1012Used by:1014
Symbol 1014 MovieClip {StaticTileMC22}Uses:1013Used by:1275
Symbol 1015 BitmapUsed by:1016
Symbol 1016 GraphicUses:1015Used by:1017
Symbol 1017 MovieClip {StaticTileMC21}Uses:1016Used by:1275
Symbol 1018 BitmapUsed by:1019
Symbol 1019 GraphicUses:1018Used by:1020
Symbol 1020 MovieClip {StaticTileMC20}Uses:1019Used by:1275
Symbol 1021 BitmapUsed by:1022
Symbol 1022 GraphicUses:1021Used by:1023
Symbol 1023 MovieClip {StaticTileMC19}Uses:1022Used by:1275
Symbol 1024 BitmapUsed by:1025
Symbol 1025 GraphicUses:1024Used by:1026
Symbol 1026 MovieClip {StaticTileMC18}Uses:1025Used by:1275
Symbol 1027 BitmapUsed by:1028
Symbol 1028 GraphicUses:1027Used by:1029
Symbol 1029 MovieClip {StaticTileMC17}Uses:1028Used by:1275
Symbol 1030 BitmapUsed by:1031
Symbol 1031 GraphicUses:1030Used by:1032
Symbol 1032 MovieClip {StaticTileMC16}Uses:1031Used by:1275
Symbol 1033 BitmapUsed by:1034
Symbol 1034 GraphicUses:1033Used by:1035
Symbol 1035 MovieClip {StaticTileMC15}Uses:1034Used by:1275
Symbol 1036 BitmapUsed by:1037
Symbol 1037 GraphicUses:1036Used by:1038
Symbol 1038 MovieClip {StaticTileMC14}Uses:1037Used by:1275
Symbol 1039 BitmapUsed by:1040
Symbol 1040 GraphicUses:1039Used by:1041
Symbol 1041 MovieClip {StaticTileMC13}Uses:1040Used by:1275
Symbol 1042 BitmapUsed by:1043
Symbol 1043 GraphicUses:1042Used by:1044
Symbol 1044 MovieClip {StaticTileMC12}Uses:1043Used by:1275
Symbol 1045 BitmapUsed by:1046
Symbol 1046 GraphicUses:1045Used by:1047
Symbol 1047 MovieClip {StaticTileMC11}Uses:1046Used by:1275
Symbol 1048 BitmapUsed by:1049
Symbol 1049 GraphicUses:1048Used by:1050
Symbol 1050 MovieClip {StaticTileMC10}Uses:1049Used by:1275
Symbol 1051 BitmapUsed by:1052 1055
Symbol 1052 GraphicUses:1051Used by:1053
Symbol 1053 MovieClip {StaticTileMC9}Uses:1052Used by:1275
Symbol 1054 BitmapUsed by:1055
Symbol 1055 GraphicUses:1051 1054Used by:1056
Symbol 1056 MovieClip {StaticTileMC8}Uses:1055Used by:1275
Symbol 1057 BitmapUsed by:1058
Symbol 1058 GraphicUses:1057Used by:1059
Symbol 1059 MovieClip {StaticTileMC7}Uses:1058Used by:1275
Symbol 1060 BitmapUsed by:1061
Symbol 1061 GraphicUses:1060Used by:1062
Symbol 1062 MovieClip {StaticTileMC6}Uses:1061Used by:1275
Symbol 1063 BitmapUsed by:1064
Symbol 1064 GraphicUses:1063Used by:1065
Symbol 1065 MovieClip {StaticTileMC5}Uses:1064Used by:1275
Symbol 1066 BitmapUsed by:1067
Symbol 1067 GraphicUses:1066Used by:1068
Symbol 1068 MovieClip {StaticTileMC4}Uses:1067Used by:1275
Symbol 1069 BitmapUsed by:1070
Symbol 1070 GraphicUses:1069Used by:1071
Symbol 1071 MovieClip {StaticTileMC3}Uses:1070Used by:1275
Symbol 1072 BitmapUsed by:1073
Symbol 1073 GraphicUses:1072Used by:1074
Symbol 1074 MovieClip {StaticTileMC2}Uses:1073Used by:1275
Symbol 1075 BitmapUsed by:1076
Symbol 1076 GraphicUses:1075Used by:1077
Symbol 1077 MovieClip {StaticTileMC1}Uses:1076Used by:1275
Symbol 1078 BitmapUsed by:1079
Symbol 1079 GraphicUses:1078Used by:1084
Symbol 1080 BitmapUsed by:1081
Symbol 1081 GraphicUses:1080Used by:1084
Symbol 1082 BitmapUsed by:1083
Symbol 1083 GraphicUses:1082Used by:1084
Symbol 1084 MovieClip {SwitchMC4}Uses:1079 1081 1083Used by:1275
Symbol 1085 BitmapUsed by:1086
Symbol 1086 GraphicUses:1085Used by:1091
Symbol 1087 BitmapUsed by:1088
Symbol 1088 GraphicUses:1087Used by:1091
Symbol 1089 BitmapUsed by:1090
Symbol 1090 GraphicUses:1089Used by:1091
Symbol 1091 MovieClip {SwitchMC3}Uses:1086 1088 1090Used by:1275
Symbol 1092 BitmapUsed by:1093
Symbol 1093 GraphicUses:1092Used by:1098
Symbol 1094 BitmapUsed by:1095
Symbol 1095 GraphicUses:1094Used by:1098
Symbol 1096 BitmapUsed by:1097
Symbol 1097 GraphicUses:1096Used by:1098
Symbol 1098 MovieClip {SwitchMC2}Uses:1093 1095 1097Used by:1275
Symbol 1099 BitmapUsed by:1100
Symbol 1100 GraphicUses:1099Used by:1105
Symbol 1101 BitmapUsed by:1102
Symbol 1102 GraphicUses:1101Used by:1105
Symbol 1103 BitmapUsed by:1104
Symbol 1104 GraphicUses:1103Used by:1105
Symbol 1105 MovieClip {SwitchMC1}Uses:1100 1102 1104Used by:1275
Symbol 1106 BitmapUsed by:1107
Symbol 1107 GraphicUses:1106Used by:1114
Symbol 1108 BitmapUsed by:1109
Symbol 1109 GraphicUses:1108Used by:1114
Symbol 1110 BitmapUsed by:1111
Symbol 1111 GraphicUses:1110Used by:1114
Symbol 1112 BitmapUsed by:1113
Symbol 1113 GraphicUses:1112Used by:1114
Symbol 1114 MovieClip {HotTileMC}Uses:1107 1109 1111 1113Used by:1275
Symbol 1115 BitmapUsed by:1116
Symbol 1116 GraphicUses:1115Used by:1123
Symbol 1117 BitmapUsed by:1118
Symbol 1118 GraphicUses:1117Used by:1123
Symbol 1119 BitmapUsed by:1120
Symbol 1120 GraphicUses:1119Used by:1123
Symbol 1121 BitmapUsed by:1122
Symbol 1122 GraphicUses:1121Used by:1123
Symbol 1123 MovieClip {HotTileFrontMC}Uses:1116 1118 1120 1122Used by:1275
Symbol 1124 BitmapUsed by:1125
Symbol 1125 GraphicUses:1124Used by:1126
Symbol 1126 MovieClip {BossBackMC2}Uses:1125 510Used by:1275
Symbol 1127 BitmapUsed by:1128
Symbol 1128 GraphicUses:1127Used by:1129
Symbol 1129 MovieClip {BossBackMC3}Uses:1128 510Used by:1275
Symbol 1130 BitmapUsed by:1131
Symbol 1131 GraphicUses:1130Used by:1132
Symbol 1132 MovieClip {BossBackMC1}Uses:1131 510Used by:1275
Symbol 1133 BitmapUsed by:1134
Symbol 1134 GraphicUses:1133Used by:1137
Symbol 1135 BitmapUsed by:1136
Symbol 1136 GraphicUses:1135Used by:1137
Symbol 1137 MovieClip {BossMonsterMC1}Uses:1134 510 1136Used by:1275
Symbol 1138 BitmapUsed by:1139
Symbol 1139 GraphicUses:1138Used by:1142
Symbol 1140 BitmapUsed by:1141
Symbol 1141 GraphicUses:1140Used by:1142
Symbol 1142 MovieClip {BossMonsterMC2}Uses:1139 510 1141Used by:1275
Symbol 1143 BitmapUsed by:1144
Symbol 1144 GraphicUses:1143Used by:1147
Symbol 1145 BitmapUsed by:1146
Symbol 1146 GraphicUses:1145Used by:1147
Symbol 1147 MovieClip {BossMonsterMC3}Uses:1144 510 1146Used by:1275
Symbol 1148 BitmapUsed by:1149
Symbol 1149 GraphicUses:1148Used by:1154
Symbol 1150 BitmapUsed by:1151
Symbol 1151 GraphicUses:1150Used by:1154
Symbol 1152 BitmapUsed by:1153
Symbol 1153 GraphicUses:1152Used by:1154
Symbol 1154 MovieClip {BossMonsterMC4}Uses:1149 510 1151 1153Used by:1275
Symbol 1155 BitmapUsed by:1156
Symbol 1156 GraphicUses:1155Used by:1159
Symbol 1157 BitmapUsed by:1158
Symbol 1158 GraphicUses:1157Used by:1159
Symbol 1159 MovieClip {BossMonsterMC5}Uses:1156 510 1158Used by:1275
Symbol 1160 BitmapUsed by:1161
Symbol 1161 GraphicUses:1160Used by:1164
Symbol 1162 BitmapUsed by:1163
Symbol 1163 GraphicUses:1162Used by:1164
Symbol 1164 MovieClip {BossMonsterMC6}Uses:1161 510 1163Used by:1275
Symbol 1165 BitmapUsed by:1166
Symbol 1166 GraphicUses:1165Used by:1171
Symbol 1167 BitmapUsed by:1168
Symbol 1168 GraphicUses:1167Used by:1171
Symbol 1169 BitmapUsed by:1170
Symbol 1170 GraphicUses:1169Used by:1171
Symbol 1171 MovieClip {BossMonsterMC7}Uses:1166 510 1168 1170Used by:1275
Symbol 1172 BitmapUsed by:1179 1180
Symbol 1173 BitmapUsed by:1179 1180
Symbol 1174 BitmapUsed by:1179 1180
Symbol 1175 BitmapUsed by:1179 1180
Symbol 1176 BitmapUsed by:1179 1180
Symbol 1177 BitmapUsed by:1179 1180
Symbol 1178 BitmapUsed by:1179 1180
Symbol 1179 GraphicUses:1172 1173 1174 1175 1176 1177 1178Used by:1181
Symbol 1180 GraphicUses:1172 1173 1174 1175 1176 1177 1178Used by:1181
Symbol 1181 MovieClip {FinishMC}Uses:1179 1180Used by:1275
Symbol 1182 BitmapUsed by:1183
Symbol 1183 GraphicUses:1182Used by:1184
Symbol 1184 MovieClip {MonsterMC19}Uses:1183 510Used by:1275
Symbol 1185 BitmapUsed by:1186
Symbol 1186 GraphicUses:1185Used by:1187
Symbol 1187 MovieClip {HelpTileMC1}Uses:1186Used by:1275
Symbol 1188 BitmapUsed by:1189
Symbol 1189 GraphicUses:1188Used by:1190
Symbol 1190 MovieClip {HelpTileMC2}Uses:1189Used by:1275
Symbol 1191 BitmapUsed by:1192
Symbol 1192 GraphicUses:1191Used by:1193
Symbol 1193 MovieClip {HelpTileMC3}Uses:1192Used by:1275
Symbol 1194 BitmapUsed by:1195
Symbol 1195 GraphicUses:1194Used by:1196
Symbol 1196 MovieClip {HelpTileMC4}Uses:1195Used by:1275
Symbol 1197 BitmapUsed by:1198
Symbol 1198 GraphicUses:1197Used by:1199
Symbol 1199 MovieClip {HelpTileMC5}Uses:1198Used by:1275
Symbol 1200 FontUsed by:1201 1203 1205 1207 1209
Symbol 1201 TextUses:1200Used by:1202
Symbol 1202 MovieClip {HelpMC1}Uses:1201Used by:1275
Symbol 1203 TextUses:1200Used by:1204
Symbol 1204 MovieClip {HelpMC2}Uses:1203Used by:1275
Symbol 1205 TextUses:1200Used by:1206
Symbol 1206 MovieClip {HelpMC3}Uses:1205Used by:1275
Symbol 1207 TextUses:1200Used by:1208
Symbol 1208 MovieClip {HelpMC4}Uses:1207Used by:1275
Symbol 1209 TextUses:1200Used by:1210
Symbol 1210 MovieClip {HelpMC5}Uses:1209Used by:1275
Symbol 1211 GraphicUsed by:1256
Symbol 1212 GraphicUsed by:1213 1214 1255
Symbol 1213 MovieClip {fatcat_fla.game_music_holder_272}Uses:1212 3Used by:1256
Symbol 1214 MovieClip {fatcat_fla.menu_music_holder_273}Uses:1212 2Used by:1256
Symbol 1215 SoundUsed by:1216
Symbol 1216 MovieClip {fatcat_fla.big_shot_274}Uses:1215Used by:1256
Symbol 1217 MovieClip {fatcat_fla.boss_alarm_275}Used by:1256
Symbol 1218 SoundUsed by:1219
Symbol 1219 MovieClip {fatcat_fla.burp_276}Uses:1218Used by:1256
Symbol 1220 SoundUsed by:1221
Symbol 1221 MovieClip {fatcat_fla.cake1_277}Uses:1220Used by:1256
Symbol 1222 SoundUsed by:1223
Symbol 1223 MovieClip {fatcat_fla.cake2_278}Uses:1222Used by:1256
Symbol 1224 SoundUsed by:1225
Symbol 1225 MovieClip {fatcat_fla.cake3_279}Uses:1224Used by:1256
Symbol 1226 SoundUsed by:1227
Symbol 1227 MovieClip {fatcat_fla.cash_280}Uses:1226Used by:1256
Symbol 1228 MovieClip {fatcat_fla.death_281}Used by:1256
Symbol 1229 SoundUsed by:1230
Symbol 1230 MovieClip {fatcat_fla.homing_shot_282}Uses:1229Used by:1256
Symbol 1231 SoundUsed by:1232
Symbol 1232 MovieClip {fatcat_fla.laser_start_283}Uses:1231Used by:1256
Symbol 1233 MovieClip {fatcat_fla.level_complete_284}Used by:1256
Symbol 1234 SoundUsed by:1235
Symbol 1235 MovieClip {fatcat_fla.magnet_285}Uses:1234Used by:1256
Symbol 1236 SoundUsed by:1237
Symbol 1237 MovieClip {fatcat_fla.medium_bang_286}Uses:1236Used by:1256
Symbol 1238 SoundUsed by:1239
Symbol 1239 MovieClip {fatcat_fla.napalm_287}Uses:1238Used by:1256
Symbol 1240 SoundUsed by:1241
Symbol 1241 MovieClip {fatcat_fla.player_shot_288}Uses:1240Used by:1256
Symbol 1242 SoundUsed by:1243
Symbol 1243 MovieClip {fatcat_fla.shield_289}Uses:1242Used by:1256
Symbol 1244 SoundUsed by:1245
Symbol 1245 MovieClip {fatcat_fla.small_bang_290}Uses:1244Used by:1256
Symbol 1246 SoundUsed by:1247
Symbol 1247 MovieClip {fatcat_fla.small_shot_291}Uses:1246Used by:1256
Symbol 1248 SoundUsed by:1249
Symbol 1249 MovieClip {fatcat_fla.laser_switch_292}Uses:1248Used by:1256
Symbol 1250 SoundUsed by:1251
Symbol 1251 MovieClip {fatcat_fla.big_bang_293}Uses:1250Used by:1256
Symbol 1252 SoundUsed by:1253
Symbol 1253 MovieClip {fatcat_fla.ow_294}Uses:1252Used by:1256
Symbol 1254 Sound {BeamSound}Used by:1255
Symbol 1255 MovieClip {fatcat_fla.beam_sound_holder_295}Uses:1212 1254Used by:1256
Symbol 1256 MovieClip {com.nitrome.game.SoundManager}Uses:1211 1213 1214 1216 1217 1219 1221 1223 1225 1227 1228 1230 1232 1233 1235 1237 1239 1241 1243 1245 1247 1249 1251 1253 1255Used by:1275
Symbol 1257 GraphicUsed by:1273
Symbol 1258 GraphicUsed by:1273
Symbol 1259 ShapeTweeningUsed by:1273
Symbol 1260 GraphicUsed by:1273
Symbol 1261 SoundUsed by:1273
Symbol 1262 GraphicUsed by:1273
Symbol 1263 GraphicUsed by:1273
Symbol 1264 BitmapUsed by:1265
Symbol 1265 GraphicUses:1264Used by:1273
Symbol 1266 GraphicUsed by:1273
Symbol 1267 GraphicUsed by:1273
Symbol 1268 GraphicUsed by:1273
Symbol 1269 SoundUsed by:1273
Symbol 1270 FontUsed by:1271
Symbol 1271 TextUses:1270Used by:1273
Symbol 1272 GraphicUsed by:1273
Symbol 1273 MovieClip {fatcat_fla.mcAnimation_297}Uses:1257 1258 1259 1260 1261 1262 1263 1265 1266 1267 1268 1269 1271 1272Used by:1274
Symbol 1274 MovieClip {MiniclipIntro}Uses:1273Used by:1275
Symbol 1275 MovieClip {fatcat_fla.linkydink_10}Uses:42 67 73 76 79 82 89 92 95 98 101 104 107 110 113 116 119 122 125 128 131 134 138 141 142 145 148 151 154 155 158 166 175 177 181 183 186 198 223 224 228 231 234 237 240 243 247 251 255 259 262 265 266 267 271 272 275 353 359 365 375 383 61 387 390 393 398 401 404 406 410 415 422 429 436 441 338 470 473 475 478 480 482 484 486 488 490 492 494 496 499 502 505 517 534 543 553 562 571 580 589 598 607 616 621 626 635 644 664 677 690 700 704 708 712 716 720 724 728 732 324 331 334 739 760 771 780 793 810 835 866 891 904 916 925 930 935 938 941 945 948 951 954 957 960 963 966 969 972 975 344 978 981 984 987 347 990 993 996 999 1002 1005 1008 1011 1014 1017 1020 1023 1026 1029 1032 1035 1038 1041 1044 1047 1050 1053 1056 1059 1062 1065 1068 1071 1074 1077 1084 1091 1098 1105 1114 1123 1126 1129 1132 1137 1142 1147 1154 1159 1164 1171 1181 1184 1187 1190 1193 1196 1199 1202 1204 1206 1208 1210 1256 41 40 39 38 1274Used by:Timeline
Symbol 1276 GraphicUsed by:1304
Symbol 1277 BitmapUsed by:1278
Symbol 1278 GraphicUses:1277Used by:1279
Symbol 1279 MovieClipUses:1278Used by:1304
Symbol 1280 BitmapUsed by:1281
Symbol 1281 GraphicUses:1280Used by:1282
Symbol 1282 MovieClipUses:1281Used by:1304
Symbol 1283 BitmapUsed by:1284
Symbol 1284 GraphicUses:1283Used by:1285
Symbol 1285 MovieClipUses:1284Used by:1304
Symbol 1286 BitmapUsed by:1287
Symbol 1287 GraphicUses:1286Used by:1288
Symbol 1288 MovieClipUses:1287Used by:1304
Symbol 1289 BitmapUsed by:1290
Symbol 1290 GraphicUses:1289Used by:1291
Symbol 1291 MovieClipUses:1290Used by:1304
Symbol 1292 BitmapUsed by:1293
Symbol 1293 GraphicUses:1292Used by:1294
Symbol 1294 MovieClipUses:1293Used by:1304
Symbol 1295 BitmapUsed by:1296
Symbol 1296 GraphicUses:1295Used by:1297
Symbol 1297 MovieClipUses:1296Used by:1304
Symbol 1298 BitmapUsed by:1299
Symbol 1299 GraphicUses:1298Used by:1300
Symbol 1300 MovieClipUses:1299Used by:1304
Symbol 1301 BitmapUsed by:1302
Symbol 1302 GraphicUses:1301Used by:1303
Symbol 1303 MovieClipUses:1302Used by:1304
Symbol 1304 MovieClip {fatcat_fla.nitrome_intro_298}Uses:1276 1279 1282 1285 1288 1291 1294 1297 1300 1303 SS1Used by:Timeline
Symbol 1305 GraphicUsed by:1306
Symbol 1306 MovieClipUses:1305Used by:Timeline
Symbol 1307 BitmapUsed by:1308
Symbol 1308 GraphicUses:1307Used by:Timeline
Symbol 1309 GraphicUsed by:1310
Symbol 1310 MovieClip {fatcat_fla.Y8smalllogo_309}Uses:1309Used by:Timeline
Symbol 1311 GraphicUsed by:1312
Symbol 1312 MovieClip {fatcat_fla.IDNetsmalllogo_310}Uses:1311Used by:Timeline
Symbol 1313 BitmapUsed by:1314
Symbol 1314 GraphicUses:1313 68Used by:1315
Symbol 1315 MovieClipUses:1314Used by:Timeline
Symbol 1316 GraphicUsed by:1317
Symbol 1317 MovieClipUses:1316Used by:Timeline
Symbol 1318 TextUses:225Used by:Timeline
Symbol 1319 TextUses:225Used by:Timeline
Symbol 1320 TextUses:225Used by:Timeline
Symbol 1321 TextUses:225Used by:Timeline
Symbol 1322 TextUses:273Used by:Timeline
Symbol 1323 TextUses:273Used by:Timeline
Symbol 1324 TextUses:273Used by:Timeline
Symbol 1325 TextUses:273Used by:Timeline
Symbol 1326 BitmapUsed by:1327
Symbol 1327 GraphicUses:1326Used by:Timeline
Symbol 1328 TextUses:225Used by:Timeline
Symbol 1329 GraphicUsed by:1330
Symbol 1330 MovieClipUses:1329Used by:Timeline
Symbol 1331 TextUses:225Used by:Timeline
Symbol 1332 TextUses:225Used by:Timeline
Symbol 1333 GraphicUsed by:Timeline
Symbol 1334 TextUses:225Used by:Timeline
Symbol 1335 BitmapUsed by:1336
Symbol 1336 GraphicUses:1335Used by:1337
Symbol 1337 MovieClipUses:1336Used by:1338
Symbol 1338 MovieClipUses:1337Used by:Timeline
Symbol 1339 TextUses:225Used by:1340
Symbol 1340 MovieClipUses:1339Used by:1344
Symbol 1341 BitmapUsed by:1342
Symbol 1342 GraphicUses:1341Used by:1343
Symbol 1343 MovieClipUses:69 66 1342Used by:1344
Symbol 1344 MovieClip {fatcat_fla.endanim_316}Uses:1340 1343Used by:Timeline
Symbol 1345 EditableTextUses:179Used by:Timeline
Symbol 1346 GraphicUsed by:Timeline
Symbol 1347 BitmapUsed by:1348
Symbol 1348 GraphicUses:1347Used by:1349
Symbol 1349 MovieClipUses:1348Used by:1354
Symbol 1350 BitmapUsed by:1351
Symbol 1351 GraphicUses:1350Used by:1352
Symbol 1352 MovieClipUses:1351Used by:1353
Symbol 1353 MovieClipUses:1352Used by:1354
Symbol 1354 MovieClip {fatcat_fla.background_319}Uses:1349 1353 161 165Used by:Timeline
Symbol 1355 MovieClipUses:224Used by:Timeline
Symbol 1356 FontUsed by:1357
Symbol 1357 EditableTextUses:1356Used by:1358
Symbol 1358 MovieClipUses:1357Used by:Timeline
Symbol 1359 FontUsed by:1360
Symbol 1360 EditableTextUses:1359Used by:1361
Symbol 1361 MovieClipUses:1360Used by:1362
Symbol 1362 MovieClip {fatcat_fla.text_panel_325}Uses:1361Used by:Timeline
Symbol 1363 GraphicUsed by:1367
Symbol 1364 GraphicUsed by:1367
Symbol 1365 GraphicUsed by:1367
Symbol 1366 GraphicUsed by:1367
Symbol 1367 MovieClip {fatcat_fla.health_panel_327}Uses:1363 1364 1365 1366Used by:Timeline
Symbol 1368 MovieClipUses:509Used by:1376 1383
Symbol 1369 BitmapUsed by:1370
Symbol 1370 GraphicUses:1369Used by:1371 1381
Symbol 1371 MovieClipUses:1370Used by:1372
Symbol 1372 MovieClip {fatcat_fla.cake_bar_anim_330}Uses:1371Used by:1376
Symbol 1373 FontUsed by:1374 1382 1384
Symbol 1374 TextUses:1373Used by:1375
Symbol 1375 MovieClipUses:1374Used by:1376
Symbol 1376 MovieClipUses:42 1368 1372 1375Used by:Timeline
Symbol 1377 BitmapUsed by:1378
Symbol 1378 GraphicUses:1377Used by:1381
Symbol 1379 BitmapUsed by:1380
Symbol 1380 GraphicUses:1379Used by:1381
Symbol 1381 MovieClip {fatcat_fla.bonusbars_334}Uses:1378 1370 1380Used by:1383
Symbol 1382 EditableTextUses:1373Used by:1383
Symbol 1383 MovieClipUses:42 1368 1381 1382Used by:Timeline
Symbol 1384 EditableTextUses:1373Used by:1385
Symbol 1385 MovieClipUses:1384Used by:Timeline
Symbol 1386 TextUses:225Used by:1387
Symbol 1387 MovieClipUses:42 1386Used by:1388
Symbol 1388 MovieClip {fatcat_fla.loading_screen_336}Uses:1387 61Used by:Timeline
Symbol 1389 GraphicUsed by:Timeline
Symbol 1390 FontUsed by:1391
Symbol 1391 EditableTextUses:1390Used by:Timeline
Symbol 1392 EditableTextUses:1Used by:Timeline
Symbol 1393 EditableTextUses:1Used by:Timeline
Streaming Sound 1Used by:Symbol 1304 MovieClip {fatcat_fla.nitrome_intro_298}

Instance Names

"curves_clip"Frame 1Symbol 43 MovieClip
"tt"Frame 3Symbol 61 MovieClip {com.nitrome.game.Transition}
"music_toggle"Frame 31Symbol 375 MovieClip {com.nitrome.game.MusicToggle}
"fx_toggle"Frame 31Symbol 383 MovieClip {com.nitrome.game.FxToggle}
"level_4"Frame 81Symbol 181 MovieClip {com.nitrome.game.LevelChooserButton}
"level_3"Frame 81Symbol 181 MovieClip {com.nitrome.game.LevelChooserButton}
"level_5"Frame 81Symbol 181 MovieClip {com.nitrome.game.LevelChooserButton}
"level_6"Frame 81Symbol 181 MovieClip {com.nitrome.game.LevelChooserButton}
"level_2"Frame 81Symbol 181 MovieClip {com.nitrome.game.LevelChooserButton}
"level_1"Frame 81Symbol 181 MovieClip {com.nitrome.game.LevelChooserButton}
"level_7"Frame 81Symbol 181 MovieClip {com.nitrome.game.LevelChooserButton}
"level_11"Frame 81Symbol 181 MovieClip {com.nitrome.game.LevelChooserButton}
"level_10"Frame 81Symbol 181 MovieClip {com.nitrome.game.LevelChooserButton}
"level_12"Frame 81Symbol 181 MovieClip {com.nitrome.game.LevelChooserButton}
"level_13"Frame 81Symbol 181 MovieClip {com.nitrome.game.LevelChooserButton}
"level_9"Frame 81Symbol 181 MovieClip {com.nitrome.game.LevelChooserButton}
"level_8"Frame 81Symbol 181 MovieClip {com.nitrome.game.LevelChooserButton}
"level_14"Frame 81Symbol 181 MovieClip {com.nitrome.game.LevelChooserButton}
"level_18"Frame 81Symbol 181 MovieClip {com.nitrome.game.LevelChooserButton}
"level_17"Frame 81Symbol 181 MovieClip {com.nitrome.game.LevelChooserButton}
"level_19"Frame 81Symbol 181 MovieClip {com.nitrome.game.LevelChooserButton}
"level_20"Frame 81Symbol 181 MovieClip {com.nitrome.game.LevelChooserButton}
"level_16"Frame 81Symbol 181 MovieClip {com.nitrome.game.LevelChooserButton}
"level_15"Frame 81Symbol 181 MovieClip {com.nitrome.game.LevelChooserButton}
"level_21"Frame 81Symbol 181 MovieClip {com.nitrome.game.LevelChooserButton}
"score_text"Frame 91Symbol 1345 EditableText
"background"Frame 101Symbol 1354 MovieClip {fatcat_fla.background_319}
"shaker"Frame 101Symbol 1355 MovieClip
"score_panel"Frame 101Symbol 1358 MovieClip
"text_panel"Frame 101Symbol 1362 MovieClip {fatcat_fla.text_panel_325}
"pause_game_button"Frame 101Symbol 359 MovieClip {com.nitrome.game.PauseButton}
"msg_panel"Frame 101Symbol 198 MovieClip {com.nitrome.game.MsgPanel}
"health_panel"Frame 101Symbol 1367 MovieClip {fatcat_fla.health_panel_327}
"cake_meter"Frame 101Symbol 1376 MovieClip
"bonus_meter"Frame 101Symbol 1383 MovieClip
"chain_panel"Frame 101Symbol 1385 MovieClip
"popup_holder"Frame 101Symbol 353 MovieClip {com.nitrome.game.PopUpHolder}
"loading_clip"Frame 101Symbol 1388 MovieClip {fatcat_fla.loading_screen_336}
"info"Frame 101Symbol 1391 EditableText
"bullet_num"Frame 101Symbol 1392 EditableText
"encounter_num"Frame 101Symbol 1393 EditableText
"skip_story_button"Frame 122Symbol 177 MovieClip {com.nitrome.engine_specific.SkipStoryButton}
"ad_bar_background"Symbol 52 MovieClip Frame 1Symbol 49 MovieClip
"ad_bar"Symbol 52 MovieClip Frame 1Symbol 49 MovieClip
"ad_bar_outline"Symbol 52 MovieClip Frame 1Symbol 51 MovieClip
"ad_loading_text"Symbol 60 MovieClip {fatcat_fla.Y8Preloaderas3_2} Frame 1Symbol 48 MovieClip
"ad_loading_bar"Symbol 60 MovieClip {fatcat_fla.Y8Preloaderas3_2} Frame 1Symbol 52 MovieClip
"player"Symbol 73 MovieClip {DropShipMC} Frame 1Symbol 72 MovieClip
"bottom"Symbol 166 MovieClip {com.nitrome.engine_specific.InterfaceBackground} Frame 1Symbol 161 MovieClip
"top"Symbol 166 MovieClip {com.nitrome.engine_specific.InterfaceBackground} Frame 1Symbol 165 MovieClip
"level_num"Symbol 181 MovieClip {com.nitrome.game.LevelChooserButton} Frame 1Symbol 180 EditableText
"back"Symbol 198 MovieClip {com.nitrome.game.MsgPanel} Frame 1Symbol 191 MovieClip
"msg"Symbol 198 MovieClip {com.nitrome.game.MsgPanel} Frame 1Symbol 195 EditableText
"stagemsg"Symbol 198 MovieClip {com.nitrome.game.MsgPanel} Frame 1Symbol 197 EditableText
"tt"Symbol 198 MovieClip {com.nitrome.game.MsgPanel} Frame 1Symbol 61 MovieClip {com.nitrome.game.Transition}
"score_text"Symbol 275 MovieClip {com.nitrome.game.ScoreTicker} Frame 1Symbol 274 EditableText
"ticker_level"Symbol 283 MovieClip {fatcat_fla.score_counter_clip_85} Frame 1Symbol 275 MovieClip {com.nitrome.game.ScoreTicker}
"ticker_score"Symbol 283 MovieClip {fatcat_fla.score_counter_clip_85} Frame 1Symbol 275 MovieClip {com.nitrome.game.ScoreTicker}
"back"Symbol 352 MovieClip {fatcat_fla.popup_clip_82} Frame 1Symbol 281 MovieClip {fatcat_fla.popupbacking_84}
"next_level_button"Symbol 352 MovieClip {fatcat_fla.popup_clip_82} Frame 2Symbol 231 MovieClip {com.nitrome.game.NextLevelButton}
"try_again_button"Symbol 352 MovieClip {fatcat_fla.popup_clip_82} Frame 16Symbol 234 MovieClip {com.nitrome.game.TryAgainButton}
"ticker_score"Symbol 352 MovieClip {fatcat_fla.popup_clip_82} Frame 16Symbol 275 MovieClip {com.nitrome.game.ScoreTicker}
"continue_end_button"Symbol 352 MovieClip {fatcat_fla.popup_clip_82} Frame 30Symbol 243 MovieClip {com.nitrome.game.ContinueEndButton}
"back"Symbol 352 MovieClip {fatcat_fla.popup_clip_82} Frame 46Symbol 294 MovieClip {fatcat_fla.pausebacking_86}
"back"Symbol 352 MovieClip {fatcat_fla.popup_clip_82} Frame 61Symbol 300 MovieClip {fatcat_fla.helpbacking_87}
"popup_clip"Symbol 353 MovieClip {com.nitrome.game.PopUpHolder} Frame 1Symbol 352 MovieClip {fatcat_fla.popup_clip_82}
"_rank_text"Symbol 387 MovieClip {ScoreLine} Frame 1Symbol 384 EditableText
"_name_text"Symbol 387 MovieClip {ScoreLine} Frame 1Symbol 385 EditableText
"_score_text"Symbol 387 MovieClip {ScoreLine} Frame 1Symbol 386 EditableText
"_score_line_1"Symbol 398 MovieClip {HighScoreBoard} Frame 1Symbol 387 MovieClip {ScoreLine}
"_score_line_2"Symbol 398 MovieClip {HighScoreBoard} Frame 1Symbol 387 MovieClip {ScoreLine}
"_score_line_3"Symbol 398 MovieClip {HighScoreBoard} Frame 1Symbol 387 MovieClip {ScoreLine}
"_score_line_4"Symbol 398 MovieClip {HighScoreBoard} Frame 1Symbol 387 MovieClip {ScoreLine}
"_score_line_5"Symbol 398 MovieClip {HighScoreBoard} Frame 1Symbol 387 MovieClip {ScoreLine}
"_score_line_6"Symbol 398 MovieClip {HighScoreBoard} Frame 1Symbol 387 MovieClip {ScoreLine}
"_score_line_7"Symbol 398 MovieClip {HighScoreBoard} Frame 1Symbol 387 MovieClip {ScoreLine}
"_score_line_8"Symbol 398 MovieClip {HighScoreBoard} Frame 1Symbol 387 MovieClip {ScoreLine}
"_score_line_9"Symbol 398 MovieClip {HighScoreBoard} Frame 1Symbol 387 MovieClip {ScoreLine}
"_score_line_10"Symbol 398 MovieClip {HighScoreBoard} Frame 1Symbol 387 MovieClip {ScoreLine}
"_next_arrow"Symbol 398 MovieClip {HighScoreBoard} Frame 1Symbol 390 MovieClip {NextArrow}
"_prev_arrow"Symbol 398 MovieClip {HighScoreBoard} Frame 1Symbol 393 MovieClip {PrevArrow}
"loading_text"Symbol 398 MovieClip {HighScoreBoard} Frame 1Symbol 395 MovieClip
"_letter"Symbol 406 MovieClip {LetterButton} Frame 1Symbol 405 EditableText
"loading_text"Symbol 409 MovieClip {fatcat_fla.loading_black_118} Frame 2Symbol 395 MovieClip
"_score_text"Symbol 410 MovieClip {ScoreSubmitPanel} Frame 1Symbol 407 EditableText
"_name_text"Symbol 410 MovieClip {ScoreSubmitPanel} Frame 1Symbol 408 EditableText
"_submit_button"Symbol 410 MovieClip {ScoreSubmitPanel} Frame 1Symbol 401 MovieClip {SubmitButton}
"_clear_button"Symbol 410 MovieClip {ScoreSubmitPanel} Frame 1Symbol 404 MovieClip {ClearButton}
"C"Symbol 410 MovieClip {ScoreSubmitPanel} Frame 1Symbol 406 MovieClip {LetterButton}
"D"Symbol 410 MovieClip {ScoreSubmitPanel} Frame 1Symbol 406 MovieClip {LetterButton}
"E"Symbol 410 MovieClip {ScoreSubmitPanel} Frame 1Symbol 406 MovieClip {LetterButton}
"B"Symbol 410 MovieClip {ScoreSubmitPanel} Frame 1Symbol 406 MovieClip {LetterButton}
"F"Symbol 410 MovieClip {ScoreSubmitPanel} Frame 1Symbol 406 MovieClip {LetterButton}
"A"Symbol 410 MovieClip {ScoreSubmitPanel} Frame 1Symbol 406 MovieClip {LetterButton}
"J"Symbol 410 MovieClip {ScoreSubmitPanel} Frame 1Symbol 406 MovieClip {LetterButton}
"K"Symbol 410 MovieClip {ScoreSubmitPanel} Frame 1Symbol 406 MovieClip {LetterButton}
"L"Symbol 410 MovieClip {ScoreSubmitPanel} Frame 1Symbol 406 MovieClip {LetterButton}
"I"Symbol 410 MovieClip {ScoreSubmitPanel} Frame 1Symbol 406 MovieClip {LetterButton}
"M"Symbol 410 MovieClip {ScoreSubmitPanel} Frame 1Symbol 406 MovieClip {LetterButton}
"H"Symbol 410 MovieClip {ScoreSubmitPanel} Frame 1Symbol 406 MovieClip {LetterButton}
"Q"Symbol 410 MovieClip {ScoreSubmitPanel} Frame 1Symbol 406 MovieClip {LetterButton}
"R"Symbol 410 MovieClip {ScoreSubmitPanel} Frame 1Symbol 406 MovieClip {LetterButton}
"S"Symbol 410 MovieClip {ScoreSubmitPanel} Frame 1Symbol 406 MovieClip {LetterButton}
"P"Symbol 410 MovieClip {ScoreSubmitPanel} Frame 1Symbol 406 MovieClip {LetterButton}
"T"Symbol 410 MovieClip {ScoreSubmitPanel} Frame 1Symbol 406 MovieClip {LetterButton}
"O"Symbol 410 MovieClip {ScoreSubmitPanel} Frame 1Symbol 406 MovieClip {LetterButton}
"W"Symbol 410 MovieClip {ScoreSubmitPanel} Frame 1Symbol 406 MovieClip {LetterButton}
"X"Symbol 410 MovieClip {ScoreSubmitPanel} Frame 1Symbol 406 MovieClip {LetterButton}
"Y"Symbol 410 MovieClip {ScoreSubmitPanel} Frame 1Symbol 406 MovieClip {LetterButton}
"V"Symbol 410 MovieClip {ScoreSubmitPanel} Frame 1Symbol 406 MovieClip {LetterButton}
"Z"Symbol 410 MovieClip {ScoreSubmitPanel} Frame 1Symbol 406 MovieClip {LetterButton}
"U"Symbol 410 MovieClip {ScoreSubmitPanel} Frame 1Symbol 406 MovieClip {LetterButton}
"G"Symbol 410 MovieClip {ScoreSubmitPanel} Frame 1Symbol 406 MovieClip {LetterButton}
"N"Symbol 410 MovieClip {ScoreSubmitPanel} Frame 1Symbol 406 MovieClip {LetterButton}
"loading_black"Symbol 410 MovieClip {ScoreSubmitPanel} Frame 1Symbol 409 MovieClip {fatcat_fla.loading_black_118}
"info"Symbol 473 MovieClip {FreeTileMC} Frame 1Symbol 472 EditableText
"mirror"Symbol 478 MovieClip {TurnTileMC} Frame 1Symbol 477 MovieClip
"collision_box"Symbol 517 MovieClip {MonsterMC10} Frame 1Symbol 510 MovieClip
"collision_box"Symbol 534 MovieClip {MonsterMC2} Frame 1Symbol 510 MovieClip
"collision_box"Symbol 543 MovieClip {MonsterMC5} Frame 1Symbol 510 MovieClip
"collision_box"Symbol 553 MovieClip {MonsterMC9} Frame 1Symbol 510 MovieClip
"collision_box"Symbol 562 MovieClip {MonsterMC6} Frame 1Symbol 510 MovieClip
"collision_box"Symbol 571 MovieClip {MonsterMC3} Frame 1Symbol 510 MovieClip
"collision_box"Symbol 580 MovieClip {MonsterMC18} Frame 1Symbol 510 MovieClip
"collision_box"Symbol 589 MovieClip {MonsterMC17} Frame 1Symbol 510 MovieClip
"collision_box"Symbol 598 MovieClip {MonsterMC16} Frame 1Symbol 510 MovieClip
"collision_box"Symbol 607 MovieClip {MonsterMC7} Frame 1Symbol 510 MovieClip
"collision_box"Symbol 616 MovieClip {MonsterMC15} Frame 1Symbol 510 MovieClip
"collision_box"Symbol 621 MovieClip {MonsterMC1} Frame 1Symbol 510 MovieClip
"collision_box"Symbol 626 MovieClip {MonsterMC4} Frame 1Symbol 510 MovieClip
"collision_box"Symbol 635 MovieClip {MonsterMC8} Frame 1Symbol 510 MovieClip
"collision_box"Symbol 644 MovieClip {MonsterMC12} Frame 1Symbol 510 MovieClip
"collision_box"Symbol 664 MovieClip {MonsterMC14} Frame 1Symbol 510 MovieClip
"collision_box"Symbol 677 MovieClip {MonsterMC11} Frame 1Symbol 510 MovieClip
"collision_box"Symbol 690 MovieClip {MonsterMC13} Frame 1Symbol 510 MovieClip
"collision_box"Symbol 1126 MovieClip {BossBackMC2} Frame 1Symbol 510 MovieClip
"collision_box"Symbol 1129 MovieClip {BossBackMC3} Frame 1Symbol 510 MovieClip
"collision_box"Symbol 1132 MovieClip {BossBackMC1} Frame 1Symbol 510 MovieClip
"collision_box"Symbol 1137 MovieClip {BossMonsterMC1} Frame 1Symbol 510 MovieClip
"collision_box"Symbol 1142 MovieClip {BossMonsterMC2} Frame 1Symbol 510 MovieClip
"collision_box"Symbol 1147 MovieClip {BossMonsterMC3} Frame 1Symbol 510 MovieClip
"collision_box"Symbol 1154 MovieClip {BossMonsterMC4} Frame 1Symbol 510 MovieClip
"collision_box"Symbol 1159 MovieClip {BossMonsterMC5} Frame 1Symbol 510 MovieClip
"collision_box"Symbol 1164 MovieClip {BossMonsterMC6} Frame 1Symbol 510 MovieClip
"collision_box"Symbol 1171 MovieClip {BossMonsterMC7} Frame 1Symbol 510 MovieClip
"collision_box"Symbol 1184 MovieClip {MonsterMC19} Frame 1Symbol 510 MovieClip
"big_shot"Symbol 1256 MovieClip {com.nitrome.game.SoundManager} Frame 1Symbol 1216 MovieClip {fatcat_fla.big_shot_274}
"boss_alarm"Symbol 1256 MovieClip {com.nitrome.game.SoundManager} Frame 1Symbol 1217 MovieClip {fatcat_fla.boss_alarm_275}
"burp"Symbol 1256 MovieClip {com.nitrome.game.SoundManager} Frame 1Symbol 1219 MovieClip {fatcat_fla.burp_276}
"cake1"Symbol 1256 MovieClip {com.nitrome.game.SoundManager} Frame 1Symbol 1221 MovieClip {fatcat_fla.cake1_277}
"cake2"Symbol 1256 MovieClip {com.nitrome.game.SoundManager} Frame 1Symbol 1223 MovieClip {fatcat_fla.cake2_278}
"cake3"Symbol 1256 MovieClip {com.nitrome.game.SoundManager} Frame 1Symbol 1225 MovieClip {fatcat_fla.cake3_279}
"cash"Symbol 1256 MovieClip {com.nitrome.game.SoundManager} Frame 1Symbol 1227 MovieClip {fatcat_fla.cash_280}
"death"Symbol 1256 MovieClip {com.nitrome.game.SoundManager} Frame 1Symbol 1228 MovieClip {fatcat_fla.death_281}
"homing_shot"Symbol 1256 MovieClip {com.nitrome.game.SoundManager} Frame 1Symbol 1230 MovieClip {fatcat_fla.homing_shot_282}
"laser_start"Symbol 1256 MovieClip {com.nitrome.game.SoundManager} Frame 1Symbol 1232 MovieClip {fatcat_fla.laser_start_283}
"level_complete"Symbol 1256 MovieClip {com.nitrome.game.SoundManager} Frame 1Symbol 1233 MovieClip {fatcat_fla.level_complete_284}
"magnet"Symbol 1256 MovieClip {com.nitrome.game.SoundManager} Frame 1Symbol 1235 MovieClip {fatcat_fla.magnet_285}
"medium_bang"Symbol 1256 MovieClip {com.nitrome.game.SoundManager} Frame 1Symbol 1237 MovieClip {fatcat_fla.medium_bang_286}
"napalm"Symbol 1256 MovieClip {com.nitrome.game.SoundManager} Frame 1Symbol 1239 MovieClip {fatcat_fla.napalm_287}
"player_shot"Symbol 1256 MovieClip {com.nitrome.game.SoundManager} Frame 1Symbol 1241 MovieClip {fatcat_fla.player_shot_288}
"shield"Symbol 1256 MovieClip {com.nitrome.game.SoundManager} Frame 1Symbol 1243 MovieClip {fatcat_fla.shield_289}
"small_bang"Symbol 1256 MovieClip {com.nitrome.game.SoundManager} Frame 1Symbol 1245 MovieClip {fatcat_fla.small_bang_290}
"small_shot"Symbol 1256 MovieClip {com.nitrome.game.SoundManager} Frame 1Symbol 1247 MovieClip {fatcat_fla.small_shot_291}
"laser_switch"Symbol 1256 MovieClip {com.nitrome.game.SoundManager} Frame 1Symbol 1249 MovieClip {fatcat_fla.laser_switch_292}
"big_bang"Symbol 1256 MovieClip {com.nitrome.game.SoundManager} Frame 1Symbol 1251 MovieClip {fatcat_fla.big_bang_293}
"ow"Symbol 1256 MovieClip {com.nitrome.game.SoundManager} Frame 1Symbol 1253 MovieClip {fatcat_fla.ow_294}
"mcAnimation"Symbol 1274 MovieClip {MiniclipIntro} Frame 1Symbol 1273 MovieClip {fatcat_fla.mcAnimation_297}
"bottom"Symbol 1354 MovieClip {fatcat_fla.background_319} Frame 1Symbol 1349 MovieClip
"top"Symbol 1354 MovieClip {fatcat_fla.background_319} Frame 1Symbol 1353 MovieClip
"bottom"Symbol 1354 MovieClip {fatcat_fla.background_319} Frame 10Symbol 161 MovieClip
"top"Symbol 1354 MovieClip {fatcat_fla.background_319} Frame 10Symbol 165 MovieClip
"canvas"Symbol 1355 MovieClip Frame 1Symbol 224 MovieClip {holder}
"score"Symbol 1358 MovieClip Frame 1Symbol 1357 EditableText
"message_text"Symbol 1361 MovieClip Frame 1Symbol 1360 EditableText
"panel"Symbol 1362 MovieClip {fatcat_fla.text_panel_325} Frame 1Symbol 1361 MovieClip
"bar_mask"Symbol 1376 MovieClip Frame 1Symbol 1368 MovieClip
"bar"Symbol 1376 MovieClip Frame 1Symbol 1372 MovieClip {fatcat_fla.cake_bar_anim_330}
"press_space"Symbol 1376 MovieClip Frame 1Symbol 1375 MovieClip
"bar_mask"Symbol 1383 MovieClip Frame 1Symbol 1368 MovieClip
"bar"Symbol 1383 MovieClip Frame 1Symbol 1381 MovieClip {fatcat_fla.bonusbars_334}
"txt"Symbol 1383 MovieClip Frame 1Symbol 1382 EditableText
"chain"Symbol 1385 MovieClip Frame 1Symbol 1384 EditableText
"tt"Symbol 1388 MovieClip {fatcat_fla.loading_screen_336} Frame 1Symbol 61 MovieClip {com.nitrome.game.Transition}

Special Tags

FileAttributes (69)Timeline Frame 1Access local files only, Metadata not present, AS3.

Labels

"preloader"Frame 3
"nitrome"Frame 11
"pre_title_screen"Frame 21
"title_screen"Frame 31
"credits"Frame 41
"help"Frame 51
"view_scores"Frame 61
"submit_score"Frame 71
"choose_level"Frame 81
"congrats"Frame 91
"game"Frame 101
"game_reset"Frame 111
"story"Frame 122
"_0"Symbol 166 MovieClip {com.nitrome.engine_specific.InterfaceBackground} Frame 1
"_1"Symbol 166 MovieClip {com.nitrome.engine_specific.InterfaceBackground} Frame 10
"_0"Symbol 191 MovieClip Frame 1
"_1"Symbol 191 MovieClip Frame 2
"show"Symbol 198 MovieClip {com.nitrome.game.MsgPanel} Frame 1
"hide"Symbol 198 MovieClip {com.nitrome.game.MsgPanel} Frame 10
"roll"Symbol 223 MovieClip {PlayerMC} Frame 1
"pickup"Symbol 223 MovieClip {PlayerMC} Frame 6
"beam"Symbol 223 MovieClip {PlayerMC} Frame 11
"ouch"Symbol 223 MovieClip {PlayerMC} Frame 17
"_up"Symbol 228 MovieClip {com.nitrome.game.LevelSelectButton} Frame 1
"_over"Symbol 228 MovieClip {com.nitrome.game.LevelSelectButton} Frame 10
"_up"Symbol 231 MovieClip {com.nitrome.game.NextLevelButton} Frame 1
"_over"Symbol 231 MovieClip {com.nitrome.game.NextLevelButton} Frame 10
"_up"Symbol 234 MovieClip {com.nitrome.game.TryAgainButton} Frame 1
"_over"Symbol 234 MovieClip {com.nitrome.game.TryAgainButton} Frame 10
"_up"Symbol 237 MovieClip {com.nitrome.game.SubmitScoreButton} Frame 1
"_over"Symbol 237 MovieClip {com.nitrome.game.SubmitScoreButton} Frame 10
"_up"Symbol 240 MovieClip {com.nitrome.game.QuitGameButton} Frame 1
"_over"Symbol 240 MovieClip {com.nitrome.game.QuitGameButton} Frame 10
"_up"Symbol 243 MovieClip {com.nitrome.game.ContinueEndButton} Frame 1
"_over"Symbol 243 MovieClip {com.nitrome.game.ContinueEndButton} Frame 10
"_up"Symbol 247 MovieClip {com.nitrome.game.PlayButton} Frame 1
"_over"Symbol 247 MovieClip {com.nitrome.game.PlayButton} Frame 10
"_up"Symbol 251 MovieClip {com.nitrome.game.ViewScoresButton} Frame 1
"_over"Symbol 251 MovieClip {com.nitrome.game.ViewScoresButton} Frame 10
"_up"Symbol 255 MovieClip {com.nitrome.game.CreditsButton} Frame 1
"_over"Symbol 255 MovieClip {com.nitrome.game.CreditsButton} Frame 10
"_up"Symbol 259 MovieClip {com.nitrome.game.HelpButton} Frame 1
"_over"Symbol 259 MovieClip {com.nitrome.game.HelpButton} Frame 10
"_up"Symbol 262 MovieClip {com.nitrome.game.BackButton} Frame 1
"_over"Symbol 262 MovieClip {com.nitrome.game.BackButton} Frame 10
"_up"Symbol 265 MovieClip {com.nitrome.game.PlayGameButton} Frame 1
"_over"Symbol 265 MovieClip {com.nitrome.game.PlayGameButton} Frame 10
"_up"Symbol 266 MovieClip {com.nitrome.game.ContinueGameButton} Frame 1
"_over"Symbol 266 MovieClip {com.nitrome.game.ContinueGameButton} Frame 10
"_up"Symbol 267 MovieClip {com.nitrome.game.ContinueGameHelpButton} Frame 1
"_over"Symbol 267 MovieClip {com.nitrome.game.ContinueGameHelpButton} Frame 10
"_up"Symbol 271 MovieClip {com.nitrome.game.HelpArrowButtonLeft} Frame 1
"_over"Symbol 271 MovieClip {com.nitrome.game.HelpArrowButtonLeft} Frame 10
"_up"Symbol 272 MovieClip {com.nitrome.game.HelpArrowButtonRight} Frame 1
"_over"Symbol 272 MovieClip {com.nitrome.game.HelpArrowButtonRight} Frame 10
"_0"Symbol 281 MovieClip {fatcat_fla.popupbacking_84} Frame 1
"_1"Symbol 281 MovieClip {fatcat_fla.popupbacking_84} Frame 10
"_0"Symbol 294 MovieClip {fatcat_fla.pausebacking_86} Frame 1
"_1"Symbol 294 MovieClip {fatcat_fla.pausebacking_86} Frame 10
"_0"Symbol 300 MovieClip {fatcat_fla.helpbacking_87} Frame 1
"_1"Symbol 300 MovieClip {fatcat_fla.helpbacking_87} Frame 10
"wait"Symbol 352 MovieClip {fatcat_fla.popup_clip_82} Frame 1
"level_complete"Symbol 352 MovieClip {fatcat_fla.popup_clip_82} Frame 2
"game_over"Symbol 352 MovieClip {fatcat_fla.popup_clip_82} Frame 16
"final_level_complete"Symbol 352 MovieClip {fatcat_fla.popup_clip_82} Frame 30
"game_paused"Symbol 352 MovieClip {fatcat_fla.popup_clip_82} Frame 46
"game_help"Symbol 352 MovieClip {fatcat_fla.popup_clip_82} Frame 61
"out"Symbol 353 MovieClip {com.nitrome.game.PopUpHolder} Frame 11
"_up"Symbol 359 MovieClip {com.nitrome.game.PauseButton} Frame 1
"_over"Symbol 359 MovieClip {com.nitrome.game.PauseButton} Frame 10
"_up"Symbol 365 MovieClip {com.nitrome.game.GameHelpButton} Frame 1
"_over"Symbol 365 MovieClip {com.nitrome.game.GameHelpButton} Frame 10
"_on_up"Symbol 375 MovieClip {com.nitrome.game.MusicToggle} Frame 1
"_on_over"Symbol 375 MovieClip {com.nitrome.game.MusicToggle} Frame 10
"_off_up"Symbol 375 MovieClip {com.nitrome.game.MusicToggle} Frame 20
"_off_over"Symbol 375 MovieClip {com.nitrome.game.MusicToggle} Frame 30
"_on_up"Symbol 383 MovieClip {com.nitrome.game.FxToggle} Frame 1
"_on_over"Symbol 383 MovieClip {com.nitrome.game.FxToggle} Frame 10
"_off_up"Symbol 383 MovieClip {com.nitrome.game.FxToggle} Frame 20
"_off_over"Symbol 383 MovieClip {com.nitrome.game.FxToggle} Frame 30
"_up"Symbol 390 MovieClip {NextArrow} Frame 1
"_over"Symbol 390 MovieClip {NextArrow} Frame 10
"_up"Symbol 393 MovieClip {PrevArrow} Frame 1
"_over"Symbol 393 MovieClip {PrevArrow} Frame 10
"show"Symbol 398 MovieClip {HighScoreBoard} Frame 1
"hide"Symbol 398 MovieClip {HighScoreBoard} Frame 10
"_up"Symbol 401 MovieClip {SubmitButton} Frame 1
"_over"Symbol 401 MovieClip {SubmitButton} Frame 10
"_up"Symbol 404 MovieClip {ClearButton} Frame 1
"_over"Symbol 404 MovieClip {ClearButton} Frame 10
"_up"Symbol 406 MovieClip {LetterButton} Frame 1
"_over"Symbol 406 MovieClip {LetterButton} Frame 10
"hide"Symbol 410 MovieClip {ScoreSubmitPanel} Frame 10
"a"Symbol 945 MovieClip {MirrorTileMC} Frame 1
"b"Symbol 945 MovieClip {MirrorTileMC} Frame 10
"up"Symbol 1084 MovieClip {SwitchMC4} Frame 1
"down"Symbol 1084 MovieClip {SwitchMC4} Frame 10
"off"Symbol 1084 MovieClip {SwitchMC4} Frame 20
"up"Symbol 1091 MovieClip {SwitchMC3} Frame 1
"down"Symbol 1091 MovieClip {SwitchMC3} Frame 10
"off"Symbol 1091 MovieClip {SwitchMC3} Frame 20
"up"Symbol 1098 MovieClip {SwitchMC2} Frame 1
"down"Symbol 1098 MovieClip {SwitchMC2} Frame 10
"off"Symbol 1098 MovieClip {SwitchMC2} Frame 20
"up"Symbol 1105 MovieClip {SwitchMC1} Frame 1
"down"Symbol 1105 MovieClip {SwitchMC1} Frame 10
"off"Symbol 1105 MovieClip {SwitchMC1} Frame 20
"_0"Symbol 1354 MovieClip {fatcat_fla.background_319} Frame 1
"_1"Symbol 1354 MovieClip {fatcat_fla.background_319} Frame 10
"hidden"Symbol 1362 MovieClip {fatcat_fla.text_panel_325} Frame 1
"popup_stay"Symbol 1362 MovieClip {fatcat_fla.text_panel_325} Frame 10
"stay"Symbol 1362 MovieClip {fatcat_fla.text_panel_325} Frame 15
"hide"Symbol 1362 MovieClip {fatcat_fla.text_panel_325} Frame 26
"_3"Symbol 1367 MovieClip {fatcat_fla.health_panel_327} Frame 1
"_2"Symbol 1367 MovieClip {fatcat_fla.health_panel_327} Frame 6
"_1"Symbol 1367 MovieClip {fatcat_fla.health_panel_327} Frame 11
"_0"Symbol 1367 MovieClip {fatcat_fla.health_panel_327} Frame 16
"pre"Symbol 1372 MovieClip {fatcat_fla.cake_bar_anim_330} Frame 1
"full"Symbol 1372 MovieClip {fatcat_fla.cake_bar_anim_330} Frame 10
"napalm"Symbol 1381 MovieClip {fatcat_fla.bonusbars_334} Frame 1
"magnet"Symbol 1381 MovieClip {fatcat_fla.bonusbars_334} Frame 10
"shield"Symbol 1381 MovieClip {fatcat_fla.bonusbars_334} Frame 20
"enemy"Symbol 1381 MovieClip {fatcat_fla.bonusbars_334} Frame 30
"loading"Symbol 1388 MovieClip {fatcat_fla.loading_screen_336} Frame 1
"fade_out"Symbol 1388 MovieClip {fatcat_fla.loading_screen_336} Frame 10
"clear"Symbol 1388 MovieClip {fatcat_fla.loading_screen_336} Frame 20




http://swfchan.com/47/233102/info.shtml
Created: 4/3 -2020 18:33:00 Last modified: 4/3 -2020 18:33:00 Server time: 09/05 -2024 16:49:03