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

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

1218528596702.swf

This is the info page for
Flash #32154

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


Text
world

Congratulations

is cleared

press Space to continue

Floor complete

Steps:

Time:

press Space to continue

0

00:00

Floor complete

select Floor:

world

record

steps:

time:

select Course:

flash

Move:
up, down, left, right

restart floor:
space

change player:
shift

exit Level:
escape

COntrols

press any key

flash

text

ActionScript [AS3]

Section 1
//Box (Box) package { public class Box extends MapObject { public var _boxH:int; public var _boxW:int; public function Box(_arg1, _arg2):void{ _main = _arg1; _isMoveObj = true; _speed = 4; _type = "box"; _id = _arg2.id; _xpos = _arg2.x; _ypos = _arg2.y; _boxW = _arg2.w; _boxH = _arg2.h; draw(); } public function addToObjMap(_arg1):void{ var _local2:*; var _local3:*; if (_active){ _local2 = _ypos; while (_local2 < (_ypos + _boxH)) { _local3 = _xpos; while (_local3 < (_xpos + _boxW)) { _arg1[_local2][_local3] = _id; _local3++; }; _local2++; }; }; } public function draw():void{ var _local1:*; setxy(); _local1 = _main._game._map._tilesize; graphics.clear(); graphics.lineStyle(2, 0); graphics.beginFill(0xFFFF00, 1); graphics.drawRoundRect(0, 0, (_boxW * _local1), (_boxH * _local1), 5, 5); graphics.endFill(); } public function checkPush(){ var _local1:Boolean; var _local2:*; var _local3:*; var _local4:*; _local1 = true; _local2 = (_ypos + _ymod); while (_local2 < ((_ypos + _ymod) + _boxH)) { _local3 = (_xpos + _xmod); while (_local3 < ((_xpos + _xmod) + _boxW)) { if (!_main._game._map.isFreeForBox(_local3, _local2)){ return (false); }; if (_main._game.checkPlayer(_local3, _local2)){ return (false); }; _local4 = _main._game._map.isObject(_local3, _local2); if (_local4){ if (_local4 != this){ return (false); }; }; _local3++; }; _local2++; }; return (true); } public function pushObj(_arg1, _arg2):Boolean{ if (_moving){ return (false); }; _xmod = _arg1; _ymod = _arg2; if (checkPush()){ _xpos = (_xpos + _xmod); _ypos = (_ypos + _ymod); _moving = true; _main._game._map.loadObjMap(); _main._game._sndPush.play(); return (true); }; return (false); } private function remove():void{ _active = false; _main._game._map.loadObjMap(); _main._game._map._obj_layer.removeChild(this); } private function fallDown():void{ var _local1:*; var _local2:*; _local1 = _ypos; while (_local1 < (_ypos + _boxH)) { _local2 = _xpos; while (_local2 < (_xpos + _boxW)) { _main._game._map.setFloor(_local2, _local1); _local2++; }; _local1++; }; remove(); } public function checkFalldown(){ var _local1:*; var _local2:*; _local1 = _ypos; while (_local1 < (_ypos + _boxH)) { _local2 = _xpos; while (_local2 < (_xpos + _boxW)) { if (!_main._game._map.isHole(_local2, _local1)){ return (false); }; _local2++; }; _local1++; }; return (true); } override public function stopAction():void{ if (checkFalldown()){ fallDown(); }; } } }//package
Section 2
//exit (exit) package { import flash.display.*; public dynamic class exit extends MovieClip { } }//package
Section 3
//floor (floor) package { import flash.display.*; public dynamic class floor extends MovieClip { } }//package
Section 4
//hole (hole) package { import flash.display.*; public dynamic class hole extends MovieClip { } }//package
Section 5
//keymenu (keymenu) package { import flash.display.*; public class keymenu extends Sprite { private var _curSel;// = 0 private var _ypos; private var _menuitems; private var _selClip; private var _dist;// = 50 private var _xpos; private var _seldist; public function keymenu(_arg1, _arg2):void{ _curSel = 0; _dist = 50; super(); _menuitems = _arg1; _dist = _arg2.dist; _xpos = _arg2.x; _ypos = _arg2.y; _seldist = _arg2.seldist; drawMenu(); } public function getSel():Object{ return (_menuitems[_curSel].data); } private function setSelector():void{ _selClip.x = _xpos; _selClip.y = (_ypos + (_curSel * _dist)); } public function nextItem(_arg1){ if (((((_curSel + _arg1) >= 0)) && (((_curSel + _arg1) < _menuitems.length)))){ if (!_menuitems[(_curSel + _arg1)].locked){ _curSel = (_curSel + _arg1); setSelector(); }; }; } private function drawMenu(){ var _local1:*; var _local2:*; _curSel = 0; for (_local1 in _menuitems) { _local2 = new menuText(); _local2.t_label.text = _menuitems[_local1].label; _local2.y = (_ypos + (_dist * _local1)); _local2.x = (_xpos + _seldist); if (_menuitems[_local1].locked){ _local2.t_label.textColor = 0x666666; }; addChild(_local2); }; _selClip = new menuSelect(); addChild(_selClip); setSelector(); } } }//package
Section 6
//m_blawars (m_blawars) package { import flash.display.*; import flash.events.*; public class m_blawars extends MovieClip { private var _main:Main; public function m_blawars(_arg1, _arg2):void{ _main = _arg1; _main.stage.addEventListener(KeyboardEvent.KEY_UP, onKeyUp); addEventListener(MouseEvent.CLICK, mClick); } public function mClick(_arg1:MouseEvent):void{ _main.stage.removeEventListener(KeyboardEvent.KEY_UP, onKeyUp); _main._menu.clearScreen(); _main._menu.showScreen("splash", null); } public function onKeyUp(_arg1:KeyboardEvent):void{ _main.stage.removeEventListener(KeyboardEvent.KEY_UP, onKeyUp); _main._menu.clearScreen(); _main._menu.showScreen("splash", null); } } }//package
Section 7
//m_controls (m_controls) package { import flash.display.*; import flash.events.*; public class m_controls extends MovieClip { private var _main:Main; public function m_controls(_arg1, _arg2):void{ _main = _arg1; _main.stage.addEventListener(KeyboardEvent.KEY_UP, onKeyUp); } public function onKeyUp(_arg1:KeyboardEvent):void{ _main.stage.removeEventListener(KeyboardEvent.KEY_UP, onKeyUp); _main._menu.clearScreen(); _main._menu.showScreen("main", null); } } }//package
Section 8
//m_coursecomplete (m_coursecomplete) package { import flash.display.*; import flash.events.*; import flash.text.*; import flash.ui.*; public class m_coursecomplete extends MovieClip { public var t_course:TextField; private var _main:Main; public function m_coursecomplete(_arg1, _arg2):void{ _main = _arg1; t_course.text = _arg2.course; _main.stage.addEventListener(KeyboardEvent.KEY_UP, onKeyUp); } public function onKeyUp(_arg1:KeyboardEvent):void{ if (_arg1.keyCode == Keyboard.SPACE){ _main.stage.removeEventListener(KeyboardEvent.KEY_UP, onKeyUp); _main._menu.clearScreen(); _main._menu.showScreen("courses", null); }; } } }//package
Section 9
//m_courses (m_courses) package { import flash.display.*; import flash.events.*; import flash.ui.*; public class m_courses extends MovieClip { private var _main:Main; private var _keymenu; public function m_courses(_arg1, _arg2):void{ var _local3:*; var _local4:*; var _local5:*; var _local6:*; super(); _main = _arg1; _main.stage.addEventListener(KeyboardEvent.KEY_UP, onKeyUp); _local3 = []; for (_local4 in _main._maps._mapdata) { _local6 = {label:_main._maps._mapdata[_local4].meta.label, data:_local4}; _local3.push(_local6); }; _local5 = {x:160, y:230, dist:40, seldist:25}; _keymenu = new keymenu(_local3, _local5); addChild(_keymenu); } public function onKeyUp(_arg1:KeyboardEvent):void{ var _local2:*; var _local3:*; if (_arg1.keyCode == Keyboard.UP){ _keymenu.nextItem(-1); } else { if (_arg1.keyCode == Keyboard.DOWN){ _keymenu.nextItem(1); } else { if ((((_arg1.keyCode == Keyboard.SPACE)) || ((_arg1.keyCode == Keyboard.ENTER)))){ _local2 = _keymenu.getSel(); _main.stage.removeEventListener(KeyboardEvent.KEY_UP, onKeyUp); _main._menu.clearScreen(); _local3 = {course:_local2}; _main._menu.showScreen("floors", _local3); } else { if (_arg1.keyCode == Keyboard.ESCAPE){ _main.stage.removeEventListener(KeyboardEvent.KEY_UP, onKeyUp); _main._menu.clearScreen(); _main._menu.showScreen("main", null); }; }; }; }; } } }//package
Section 10
//m_floors (m_floors) package { import flash.display.*; import flash.events.*; import flash.text.*; import flash.ui.*; public class m_floors extends MovieClip { public var t_course:TextField; private var _main:Main; private var _course; public var t_steps:TextField; public var t_time:TextField; private var _keymenu; public function m_floors(_arg1, _arg2):void{ var _local3:*; var _local4:*; var _local5:*; var _local6:*; var _local7:*; super(); _main = _arg1; _course = _arg2.course; _local3 = []; for (_local4 in _main._maps._mapdata[_course].floors) { _local6 = _main._progress[_course][_local4].locked; _local7 = {label:("Floor: " + (_local4 + 1)), data:_local4, locked:_local6}; _local3.push(_local7); }; _local5 = {x:120, y:200, dist:30, seldist:25}; _keymenu = new keymenu(_local3, _local5); addChild(_keymenu); t_course.text = _main._maps._mapdata[_course].meta.label; getRecord(); _main.stage.addEventListener(KeyboardEvent.KEY_UP, onKeyUp); } public function getRecord():void{ var _local1:*; _local1 = _keymenu.getSel(); t_steps.text = ("Steps: " + _main._progress[_course][_local1].steps); t_time.text = ("Time: " + _main._progress[_course][_local1].time); } public function onKeyUp(_arg1:KeyboardEvent):void{ var _local2:*; var _local3:*; if (_arg1.keyCode == Keyboard.UP){ _keymenu.nextItem(-1); getRecord(); } else { if (_arg1.keyCode == Keyboard.DOWN){ _keymenu.nextItem(1); getRecord(); } else { if ((((_arg1.keyCode == Keyboard.SPACE)) || ((_arg1.keyCode == Keyboard.ENTER)))){ _local2 = _keymenu.getSel(); _main.stage.removeEventListener(KeyboardEvent.KEY_UP, onKeyUp); _main._menu.clearScreen(); _local3 = {gamemode:"normal", world:_course, floor:_local2}; _main.startGame(_local3); } else { if (_arg1.keyCode == Keyboard.ESCAPE){ _main.stage.removeEventListener(KeyboardEvent.KEY_UP, onKeyUp); _main._menu.clearScreen(); _main._menu.showScreen("courses", null); }; }; }; }; } } }//package
Section 11
//m_main (m_main) package { import flash.display.*; import flash.events.*; import flash.ui.*; public class m_main extends MovieClip { private var _main:Main; private var _keymenu; public function m_main(_arg1, _arg2):void{ var _local3:*; var _local4:*; super(); _main = _arg1; _main.stage.addEventListener(KeyboardEvent.KEY_UP, onKeyUp); _local3 = [{label:"New Game", data:0}, {label:"Controls", data:1}]; _local4 = {x:200, y:260, dist:60, seldist:25}; _keymenu = new keymenu(_local3, _local4); addChild(_keymenu); } public function onKeyUp(_arg1:KeyboardEvent):void{ var _local2:*; if (_arg1.keyCode == Keyboard.UP){ _keymenu.nextItem(-1); } else { if (_arg1.keyCode == Keyboard.DOWN){ _keymenu.nextItem(1); } else { if ((((_arg1.keyCode == Keyboard.SPACE)) || ((_arg1.keyCode == Keyboard.ENTER)))){ _local2 = _keymenu.getSel(); if (_local2 == 0){ _main.stage.removeEventListener(KeyboardEvent.KEY_UP, onKeyUp); _main._menu.clearScreen(); _main._menu.showScreen("courses", null); } else { if (_local2 == 1){ _main.stage.removeEventListener(KeyboardEvent.KEY_UP, onKeyUp); _main._menu.clearScreen(); _main._menu.showScreen("controls", null); }; }; }; }; }; } } }//package
Section 12
//m_nextLevel (m_nextLevel) package { import flash.display.*; import flash.events.*; import flash.text.*; import flash.ui.*; public class m_nextLevel extends MovieClip { public var t_world:TextField; public var t_floor:TextField; private var _main:Main; private var _world; private var _complete; public var t_steps:TextField; public var t_time:TextField; public function m_nextLevel(_arg1, _arg2):void{ _main = _arg1; _world = _arg2.stg; _complete = _arg2.worldcomplete; t_steps.text = _arg2.steps; t_time.text = (_arg2.time + " sek"); t_world.text = _arg2.stg; t_floor.text = ((" Floor " + _arg2.floor) + " complete"); _main.stage.addEventListener(KeyboardEvent.KEY_UP, onKeyUp); } public function onKeyUp(_arg1:KeyboardEvent):void{ var _local2:*; if (_arg1.keyCode == Keyboard.SPACE){ _main.stage.removeEventListener(KeyboardEvent.KEY_UP, onKeyUp); _main._menu.clearScreen(); if (_complete){ _local2 = {course:_world}; _main._menu.showScreen("coursecomplete", _local2); } else { _main._game.init(); }; }; } } }//package
Section 13
//m_splash (m_splash) package { import flash.display.*; import flash.events.*; public class m_splash extends MovieClip { private var _main:Main; public function m_splash(_arg1, _arg2):void{ _main = _arg1; _main.stage.addEventListener(KeyboardEvent.KEY_UP, onKeyUp); } public function onKeyUp(_arg1:KeyboardEvent):void{ _main.stage.removeEventListener(KeyboardEvent.KEY_UP, onKeyUp); _main._menu.clearScreen(); _main._menu.showScreen("main", null); } } }//package
Section 14
//Main (Main) package { import flash.display.*; import flash.events.*; import flash.net.*; import flash.ui.*; public class Main extends Sprite { public var _gameLayer:Sprite; public var _appName:String;// = "puzzleboyflash" public var _so:SharedObject; public var _botLayer:MovieClip; public var _guiLayer:Sprite; public var _menu:Menu; public var _keyUp:Boolean;// = false public var _keyDown:Boolean;// = false public var _keyRight:Boolean;// = false public var _maps:Maps; public var _addLayer:MovieClip; public var _ctrlLock:Boolean;// = false public var _blocks:RotateBlock_prefabs; public var _progress:Array; public var _keyLeft:Boolean;// = false public var _dir:Array; public var _game:PuzzleBoyFlash; public var _pause:Boolean;// = false public function Main():void{ var _local1:Object; _appName = "puzzleboyflash"; _keyUp = false; _keyDown = false; _keyLeft = false; _keyRight = false; _ctrlLock = false; _pause = false; super(); _addLayer = new MovieClip(); addChild(_addLayer); _botLayer = new MovieClip(); addChild(_botLayer); _local1 = {id:"5e2cabd5a544ea25", res:"640x576", clip:_addLayer, ad_finished:startapp, background:16777161, color:0xFF8A00, outline:0, no_bg:false}; MochiAd.showPreGameAd(_local1); MochiBot.track(_addLayer, "d44bfa33"); } public function clearControls():void{ _keyUp = false; _keyDown = false; _keyLeft = false; _keyRight = false; } public function startGame(_arg1){ _game = new PuzzleBoyFlash(this, _arg1); _game.init(); _gameLayer.addChild(_game); } public function startapp(){ var _local1:*; dirs(); _blocks = new RotateBlock_prefabs(); _maps = new Maps(); getProgress(); _gameLayer = new Sprite(); addChild(_gameLayer); _guiLayer = new Sprite(); addChild(_guiLayer); _menu = new Menu(this); _guiLayer.addChild(_menu); _menu.showScreen("blawars", null); _local1 = {gamemode:"normal", world:0, floor:0}; } public function removeGame(){ var _local1:*; var _local2:*; _game.clearLevel(); _local1 = _game._curWorld; _local2 = {course:_local1}; _menu.showScreen("floors", _local2); _gameLayer.removeChild(_game); _game = null; stage.removeEventListener(KeyboardEvent.KEY_DOWN, onKeyDown); stage.removeEventListener(KeyboardEvent.KEY_UP, onKeyUp); } private function dirs(){ _dir = new Array(); _dir["up"] = [0, -1]; _dir["right"] = [1, 0]; _dir["down"] = [0, 1]; _dir["left"] = [-1, 0]; } public function getProgress():void{ _so = SharedObject.getLocal(_appName); if (_so.size == 0){ newProgress(); saveProgress(); } else { _progress = _so.data.progress; }; } public function onKeyDown(_arg1:KeyboardEvent):void{ if (_game._ingame){ if (_arg1.keyCode == Keyboard.RIGHT){ _keyRight = true; } else { if (_arg1.keyCode == Keyboard.LEFT){ _keyLeft = true; } else { if (_arg1.keyCode == Keyboard.UP){ _keyUp = true; } else { if (_arg1.keyCode == Keyboard.DOWN){ _keyDown = true; }; }; }; }; }; } public function saveProgress():void{ _so.data.progress = _progress; _so.flush(); } public function onKeyUp(_arg1:KeyboardEvent):void{ if (_game._ingame){ if (_arg1.keyCode == Keyboard.SHIFT){ _game.togglePlayer(); }; if (_arg1.keyCode == Keyboard.ESCAPE){ removeGame(); }; if (_arg1.keyCode == Keyboard.SPACE){ _game.restartLevel(); }; if (_arg1.keyCode == Keyboard.RIGHT){ _keyRight = false; } else { if (_arg1.keyCode == Keyboard.LEFT){ _keyLeft = false; } else { if (_arg1.keyCode == Keyboard.UP){ _keyUp = false; } else { if (_arg1.keyCode == Keyboard.DOWN){ _keyDown = false; }; }; }; }; }; } public function newProgress():void{ var _local1:*; var _local2:*; var _local3:*; _progress = []; for (_local1 in _maps._mapdata) { _progress[_local1] = []; for (_local2 in _maps._mapdata[_local1].floors) { _local3 = {locked:true, complete:false, time:999, steps:999}; if (_local2 < 5){ _local3.locked = false; }; _progress[_local1].push(_local3); }; }; } } }//package
Section 15
//Map (Map) package { import flash.display.*; import flash.utils.*; public class Map extends Sprite { public var _objMap:Array; public var _tilesize:int;// = 32 private var _mapsize:Object; public var _map_layer:Sprite; public var _tileDef:Object; public var _obj_layer:Sprite; public var _tileMap:Array; public var _main:Main; public var _mapObjects:Array; public var _mapdata:Object; public function Map(_arg1):void{ _tilesize = 32; super(); _main = _arg1; _map_layer = new Sprite(); _obj_layer = new Sprite(); addChild(_map_layer); addChild(_obj_layer); } public function isObject(_arg1, _arg2){ var _local3:*; _local3 = _objMap[_arg2][_arg1]; if (_local3 == -1){ return (false); }; return (_mapObjects[_local3]); } public function isHole(_arg1, _arg2):Boolean{ var _local3:*; _local3 = _tileMap[_arg2][_arg1]; if (_local3 == 2){ return (true); }; return (false); } public function loadObjMap():void{ var _local1:*; var _local2:*; var _local3:*; _objMap = new Array(); _local1 = 0; while (_local1 < _mapsize.y) { _objMap[_local1] = []; _local3 = 0; while (_local3 < _mapsize.x) { _objMap[_local1][_local3] = -1; _local3++; }; _local1++; }; for (_local2 in _mapObjects) { _mapObjects[_local2].addToObjMap(_objMap); }; } public function isExit(_arg1, _arg2):Boolean{ var _local3:*; _local3 = _tileMap[_arg2][_arg1]; if (_local3 == 3){ return (true); }; return (false); } public function drawMap():void{ var _local1:*; var _local2:*; var _local3:*; var _local4:*; _tileMap = new Array(); _local1 = 0; while (_local1 < _mapsize.y) { _tileMap[_local1] = []; _local3 = 0; while (_local3 < _mapsize.x) { _local4 = _mapdata.data.tiles[_local1][_local3]; draw_tile(_local3, _local1, _local4); _local3++; }; _local1++; }; _mapObjects = new Array(); for (_local2 in _mapdata.data.objects) { drawObject(_mapdata.data.objects[_local2]); }; loadObjMap(); } public function loadMap(_arg1, _arg2):void{ _mapdata = _arg1; _tileDef = _arg2; _mapsize = {x:_mapdata.data.tiles[0].length, y:_mapdata.data.tiles.length}; } public function isFreeForBox(_arg1, _arg2):Boolean{ var _local3:*; _local3 = _tileMap[_arg2][_arg1]; if ((((_local3 == 0)) || ((_local3 == 2)))){ return (true); }; return (false); } private function drawObject(_arg1):void{ var _local2:*; var _local3:*; _local2 = _mapObjects.length; _arg1.id = _local2; if (_arg1.type == "Box"){ _local3 = new Box(_main, _arg1); } else { if (_arg1.type == "RotateBlock"){ _local3 = new RotateBlock(_main, _arg1); }; }; _mapObjects.push(_local3); _obj_layer.addChild(_local3); } private function draw_tile(_arg1, _arg2, _arg3):void{ var _local4:*; var _local5:Class; var _local6:*; _tileMap[_arg2][_arg1] = _arg3; _local4 = _tileDef[_arg3].name; _local5 = (getDefinitionByName(_local4) as Class); _local6 = new (_local5); _local6.x = (_arg1 * _tilesize); _local6.y = (_arg2 * _tilesize); _map_layer.addChild(_local6); } public function setFloor(_arg1, _arg2):void{ draw_tile(_arg1, _arg2, 0); } public function isWalkable(_arg1, _arg2):Boolean{ var _local3:*; _local3 = _tileMap[_arg2][_arg1]; if ((((_local3 == 0)) || ((_local3 == 3)))){ return (true); }; return (false); } } }//package
Section 16
//MapObject (MapObject) package { import flash.display.*; import flash.events.*; public class MapObject extends Sprite { public var _type:String; public var _ypos:int; public var _active:Boolean;// = true public var _speed:Number; public var _isMoveObj:Boolean; public var _xmod:Number;// = 0 public var _moving:Boolean; public var _main:Main; public var _id:int; public var _xpos:int; public var _ymod:Number;// = 0 public function MapObject():void{ _xmod = 0; _ymod = 0; _active = true; super(); addEventListener(Event.ENTER_FRAME, onEnterFrame); } public function setxy():void{ x = (_xpos * _main._game._map._tilesize); y = (_ypos * _main._game._map._tilesize); } public function checkStop():void{ var _local1:*; var _local2:*; if (!_moving){ return; }; _local1 = (_xpos * _main._game._map._tilesize); _local2 = (_ypos * _main._game._map._tilesize); if ((((x == _local1)) && ((y == _local2)))){ _xmod = 0; _ymod = 0; _moving = false; stopAction(); }; } public function moveObject():void{ if (_moving){ x = (x + (_xmod * _speed)); y = (y + (_ymod * _speed)); }; } public function onEnterFrame(_arg1:Event):void{ if (((!(_main._pause)) && (_isMoveObj))){ moveObject(); checkStop(); }; } public function stopAction():void{ } } }//package
Section 17
//Maps (Maps) package { public class Maps { public var _mapdata; public var _tileDef:Array; public function Maps(){ _tileDef = new Array(); super(); loadMaps(); loadTileDef(); } public function loadTileDef():void{ _tileDef = [{name:"floor", id:0}, {name:"wall", id:1}, {name:"hole", id:2}, {name:"exit", id:3}]; } public function loadMaps():void{ var _local1:*; _local1 = [{meta:{label:"Easy Course"}, floors:[{meta:{label:"leveltext 1"}, data:{player:[{x:16, y:7, skin:"kwirk"}], objects:[{type:"RotateBlock", x:7, y:7, btype:3, angle:0}, {type:"RotateBlock", x:12, y:7, btype:3, angle:180}], tiles:[[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1], [1, 1, 0, 3, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1], [1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]}}, {meta:{label:"leveltext 2"}, data:{player:[{x:15, y:7, skin:"kwirk"}], objects:[{type:"Box", x:9, y:6, w:2, h:1}, {type:"Box", x:9, y:7, w:2, h:1}, {type:"Box", x:9, y:8, w:2, h:1}], tiles:[[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1], [1, 1, 1, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1], [1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]}}, {meta:{label:"leveltext 3"}, data:{player:[{x:14, y:7, skin:"kwirk"}], objects:[{type:"Box", x:10, y:8, w:2, h:2}, {type:"RotateBlock", x:8, y:9, btype:1, angle:0}], tiles:[[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 0, 3, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]}}, {meta:{label:"leveltext 4"}, data:{player:[{x:16, y:7, skin:"kwirk"}], objects:[{type:"Box", x:11, y:6, w:2, h:3}], tiles:[[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 2, 2, 2, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1], [1, 1, 0, 0, 0, 1, 2, 2, 2, 2, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1], [1, 1, 0, 3, 0, 0, 0, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1], [1, 1, 0, 0, 0, 1, 2, 2, 2, 2, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1], [1, 1, 1, 1, 1, 1, 2, 2, 2, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]}}, {meta:{label:"leveltext 5"}, data:{player:[{x:15, y:8, skin:"kwirk"}], objects:[{type:"Box", x:10, y:8, w:1, h:1}, {type:"RotateBlock", x:9, y:8, btype:2, angle:0}], tiles:[[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1], [1, 1, 1, 0, 3, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1], [1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]}}, {meta:{label:"leveltext 6"}, data:{player:[{x:14, y:7, skin:"kwirk"}, {x:14, y:9, skin:"kwirk"}], objects:[{type:"Box", x:12, y:8, w:1, h:1}], tiles:[[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 0, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 0, 0, 0, 2, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 0, 3, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 0, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]}}, {meta:{label:"leveltext 7"}, data:{player:[{x:14, y:8, skin:"kwirk"}], objects:[{type:"RotateBlock", x:7, y:8, btype:4, angle:0}, {type:"RotateBlock", x:8, y:6, btype:2, angle:0}, {type:"RotateBlock", x:8, y:10, btype:2, angle:0}, {type:"RotateBlock", x:10, y:6, btype:0, angle:270}, {type:"RotateBlock", x:10, y:8, btype:0, angle:270}, {type:"RotateBlock", x:10, y:10, btype:0, angle:270}], tiles:[[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]}}, {meta:{label:"leveltext 8"}, data:{player:[{x:15, y:9, skin:"kwirk"}], objects:[{type:"Box", x:5, y:7, w:1, h:4}, {type:"Box", x:7, y:7, w:1, h:5}, {type:"Box", x:8, y:7, w:1, h:2}, {type:"Box", x:9, y:5, w:1, h:4}, {type:"Box", x:9, y:9, w:1, h:2}, {type:"Box", x:10, y:7, w:1, h:2}, {type:"Box", x:11, y:7, w:1, h:5}, {type:"Box", x:13, y:7, w:1, h:4}], tiles:[[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1], [1, 1, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1], [1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]}}, {meta:{label:"leveltext 9"}, data:{player:[{x:15, y:8, skin:"kwirk"}], objects:[{type:"Box", x:11, y:7, w:1, h:1}, {type:"Box", x:11, y:8, w:1, h:1}, {type:"Box", x:11, y:9, w:1, h:1}, {type:"Box", x:9, y:5, w:1, h:1}, {type:"Box", x:9, y:11, w:1, h:1}, {type:"RotateBlock", x:7, y:8, btype:2, angle:0}, {type:"RotateBlock", x:9, y:9, btype:1, angle:180}, {type:"RotateBlock", x:9, y:7, btype:1, angle:270}], tiles:[[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1], [1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1], [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1], [1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1], [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1], [1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1], [1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]}}, {meta:{label:"leveltext 10"}, data:{player:[{x:15, y:10, skin:"kwirk"}, {x:15, y:7, skin:"kwirk"}], objects:[{type:"RotateBlock", x:10, y:7, btype:1, angle:0}, {type:"RotateBlock", x:11, y:9, btype:1, angle:0}, {type:"RotateBlock", x:8, y:7, btype:1, angle:270}, {type:"RotateBlock", x:9, y:8, btype:1, angle:180}, {type:"RotateBlock", x:10, y:10, btype:1, angle:90}, {type:"RotateBlock", x:8, y:10, btype:1, angle:180}], tiles:[[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1], [1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1], [1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1], [1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1], [1, 1, 1, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1], [1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]}}]}, {meta:{label:"Medium Course"}, floors:[{meta:{label:"leveltext 1"}, data:{player:[{x:9, y:5, skin:"kwirk"}], objects:[{type:"RotateBlock", x:6, y:9, btype:3, angle:90}, {type:"RotateBlock", x:12, y:9, btype:3, angle:90}, {type:"RotateBlock", x:11, y:7, btype:1, angle:90}, {type:"RotateBlock", x:7, y:7, btype:1, angle:180}, {type:"RotateBlock", x:10, y:6, btype:1, angle:270}, {type:"RotateBlock", x:8, y:4, btype:1, angle:90}, {type:"Box", x:8, y:10, w:3, h:1}], tiles:[[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 0, 3, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]}}, {meta:{label:"leveltext 2"}, data:{player:[{x:3, y:1, skin:"kwirk"}], objects:[{type:"Box", x:3, y:5, w:3, h:1}, {type:"Box", x:4, y:7, w:1, h:2}, {type:"Box", x:3, y:7, w:1, h:3}, {type:"Box", x:8, y:3, w:1, h:1}, {type:"Box", x:12, y:1, w:1, h:1}, {type:"Box", x:12, y:7, w:3, h:1}, {type:"Box", x:13, y:11, w:1, h:5}, {type:"RotateBlock", x:9, y:3, btype:3, angle:0}], tiles:[[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1], [1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1], [1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 1, 1], [1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1], [1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 0, 0, 1, 1, 0, 1, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1], [1, 1, 0, 0, 2, 0, 1, 2, 2, 0, 0, 0, 1, 2, 0, 1, 0, 1, 1, 1], [1, 1, 0, 0, 0, 0, 1, 2, 2, 2, 0, 0, 1, 2, 0, 1, 0, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 0, 0, 0, 0, 1, 0, 1, 1, 1], [1, 1, 0, 0, 0, 0, 1, 2, 2, 0, 2, 0, 0, 0, 0, 1, 0, 1, 1, 1], [1, 1, 0, 0, 0, 0, 1, 2, 2, 2, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1], [1, 1, 0, 0, 0, 0, 1, 2, 2, 2, 2, 1, 0, 0, 0, 1, 0, 1, 1, 1], [1, 1, 0, 3, 0, 0, 1, 2, 2, 2, 2, 1, 0, 0, 0, 1, 0, 1, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 2, 2, 2, 1, 0, 0, 0, 0, 0, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]}}, {meta:{label:"leveltext 3"}, data:{player:[{x:14, y:8, skin:"kwirk"}], objects:[{type:"Box", x:8, y:5, w:1, h:1}, {type:"Box", x:9, y:3, w:1, h:3}, {type:"Box", x:9, y:11, w:1, h:3}, {type:"Box", x:8, y:11, w:1, h:1}, {type:"Box", x:11, y:7, w:1, h:3}, {type:"Box", x:12, y:8, w:2, h:1}], tiles:[[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 1, 0, 2, 0, 2, 1, 0, 0, 0, 1, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 1, 2, 2, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1], [1, 1, 1, 1, 3, 0, 0, 2, 2, 2, 2, 0, 0, 0, 0, 1, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 1, 2, 2, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 1, 0, 2, 0, 2, 1, 0, 0, 0, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]}}, {meta:{label:"leveltext 4"}, data:{player:[{x:8, y:3, skin:"kwirk"}], objects:[{type:"Box", x:4, y:3, w:2, h:1}, {type:"Box", x:10, y:4, w:3, h:2}, {type:"Box", x:4, y:6, w:2, h:3}, {type:"Box", x:14, y:4, w:2, h:2}, {type:"Box", x:15, y:9, w:1, h:3}, {type:"Box", x:15, y:13, w:1, h:2}, {type:"Box", x:4, y:14, w:3, h:1}], tiles:[[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 2, 2, 2, 1, 1, 1], [1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1], [1, 1, 1, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1], [1, 1, 1, 1, 1, 1, 2, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1], [1, 1, 1, 0, 0, 0, 2, 2, 0, 0, 2, 2, 2, 1, 2, 2, 2, 1, 1, 1], [1, 1, 1, 0, 0, 0, 2, 2, 2, 0, 2, 2, 0, 0, 0, 0, 0, 1, 1, 1], [1, 1, 1, 0, 0, 0, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1], [1, 1, 1, 0, 0, 0, 2, 2, 2, 0, 0, 0, 2, 2, 2, 0, 0, 1, 1, 1], [1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 1, 1, 1], [1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 2, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 0, 0, 0, 0, 2, 0, 0, 0, 2, 2, 0, 0, 0, 0, 1, 1, 1], [1, 1, 1, 0, 0, 0, 0, 2, 1, 1, 1, 2, 2, 0, 0, 0, 0, 1, 1, 1], [1, 1, 1, 0, 0, 0, 0, 0, 1, 3, 2, 2, 0, 0, 0, 0, 0, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]}}, {meta:{label:"leveltext 5"}, data:{player:[{x:3, y:5, skin:"kwirk"}], objects:[{type:"RotateBlock", x:8, y:4, btype:3, angle:90}, {type:"RotateBlock", x:12, y:9, btype:3, angle:0}, {type:"RotateBlock", x:15, y:10, btype:4, angle:0}, {type:"RotateBlock", x:16, y:5, btype:4, angle:0}, {type:"RotateBlock", x:8, y:9, btype:1, angle:0}, {type:"RotateBlock", x:12, y:5, btype:1, angle:180}, {type:"Box", x:14, y:6, w:1, h:1}], tiles:[[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1], [1, 1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 1], [1, 1, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 0, 1, 1], [1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1], [1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1], [1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1], [1, 1, 0, 0, 0, 1, 1, 0, 1, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1], [1, 1, 0, 3, 0, 2, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 0, 0, 0, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]}}, {meta:{label:"leveltext 6"}, data:{player:[{x:17, y:8, skin:"kwirk"}], objects:[{type:"Box", x:9, y:8, w:1, h:1}, {type:"Box", x:11, y:7, w:1, h:3}, {type:"Box", x:12, y:8, w:3, h:1}, {type:"Box", x:15, y:8, w:1, h:2}, {type:"Box", x:8, y:9, w:1, h:4}, {type:"Box", x:8, y:5, w:1, h:4}], tiles:[[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 2, 0, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 1, 1, 1], [1, 0, 0, 0, 0, 2, 2, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1], [1, 0, 3, 0, 1, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], [1, 0, 0, 0, 0, 2, 2, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1], [1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]}}, {meta:{label:"leveltext 7"}, data:{player:[{x:8, y:8, skin:"kwirk"}], objects:[{type:"RotateBlock", x:7, y:2, btype:3, angle:270}, {type:"RotateBlock", x:6, y:5, btype:3, angle:0}, {type:"RotateBlock", x:7, y:14, btype:3, angle:90}, {type:"RotateBlock", x:6, y:11, btype:3, angle:0}, {type:"RotateBlock", x:12, y:1, btype:1, angle:180}, {type:"RotateBlock", x:14, y:1, btype:1, angle:180}, {type:"RotateBlock", x:12, y:15, btype:1, angle:270}, {type:"RotateBlock", x:14, y:15, btype:1, angle:270}, {type:"RotateBlock", x:14, y:7, btype:1, angle:270}, {type:"Box", x:5, y:8, w:2, h:1}, {type:"Box", x:8, y:3, w:1, h:3}, {type:"Box", x:10, y:3, w:1, h:3}, {type:"Box", x:8, y:11, w:1, h:3}, {type:"Box", x:10, y:11, w:1, h:3}, {type:"Box", x:12, y:12, w:1, h:1}, {type:"Box", x:15, y:12, w:1, h:1}, {type:"Box", x:15, y:4, w:1, h:1}], tiles:[[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 2, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 2, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 3, 2, 2, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1], [1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 2, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]}}, {meta:{label:"leveltext 8"}, data:{player:[{x:17, y:13, skin:"kwirk"}], objects:[{type:"Box", x:10, y:2, w:4, h:1}, {type:"Box", x:13, y:4, w:1, h:1}, {type:"Box", x:14, y:5, w:1, h:1}, {type:"Box", x:13, y:9, w:1, h:1}, {type:"Box", x:13, y:8, w:1, h:1}, {type:"Box", x:13, y:5, w:1, h:3}, {type:"Box", x:5, y:9, w:2, h:1}, {type:"Box", x:7, y:12, w:1, h:1}, {type:"Box", x:11, y:10, w:1, h:1}, {type:"Box", x:10, y:10, w:1, h:2}, {type:"Box", x:11, y:12, w:1, h:1}, {type:"Box", x:10, y:13, w:1, h:1}, {type:"Box", x:12, y:13, w:1, h:1}, {type:"Box", x:13, y:12, w:1, h:1}, {type:"Box", x:13, y:13, w:1, h:2}], tiles:[[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], [1, 0, 0, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 0, 0, 0, 1], [1, 0, 0, 0, 1, 0, 0, 2, 2, 2, 1, 2, 0, 0, 0, 1, 0, 0, 0, 1], [1, 0, 0, 0, 1, 0, 0, 2, 2, 1, 1, 2, 0, 0, 0, 1, 0, 0, 0, 1], [1, 0, 0, 0, 1, 0, 0, 2, 2, 2, 2, 2, 0, 0, 0, 1, 0, 0, 0, 1], [1, 0, 0, 0, 1, 0, 0, 2, 2, 2, 2, 2, 0, 0, 0, 1, 0, 0, 0, 1], [1, 0, 0, 0, 1, 0, 0, 2, 2, 2, 2, 2, 0, 0, 0, 1, 0, 0, 0, 1], [1, 0, 0, 0, 1, 0, 0, 2, 1, 2, 2, 2, 1, 0, 1, 1, 0, 0, 0, 1], [1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1], [1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 1], [1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1], [1, 0, 3, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1], [1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]}}, {meta:{label:"leveltext 9"}, data:{player:[{x:11, y:16, skin:"kwirk"}, {x:15, y:10, skin:"kwirk"}, {x:5, y:16, skin:"kwirk"}], objects:[{type:"Box", x:3, y:6, w:2, h:1}, {type:"Box", x:5, y:7, w:1, h:1}, {type:"Box", x:6, y:6, w:2, h:3}, {type:"Box", x:7, y:9, w:1, h:1}, {type:"Box", x:7, y:12, w:1, h:1}, {type:"Box", x:11, y:11, w:1, h:1}, {type:"Box", x:12, y:10, w:1, h:2}, {type:"Box", x:10, y:3, w:1, h:2}, {type:"Box", x:8, y:5, w:3, h:1}, {type:"Box", x:9, y:6, w:2, h:1}, {type:"Box", x:10, y:7, w:2, h:1}, {type:"Box", x:12, y:7, w:2, h:1}, {type:"Box", x:11, y:8, w:1, h:1}, {type:"Box", x:10, y:9, w:2, h:1}, {type:"RotateBlock", x:12, y:5, btype:1, angle:180}, {type:"RotateBlock", x:8, y:8, btype:1, angle:90}], tiles:[[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 0, 0, 3, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 2, 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1], [1, 1, 1, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]}}, {meta:{label:"leveltext 10"}, data:{player:[{x:9, y:1, skin:"kwirk"}], objects:[{type:"RotateBlock", x:2, y:4, btype:1, angle:270}, {type:"RotateBlock", x:2, y:7, btype:1, angle:90}, {type:"RotateBlock", x:17, y:7, btype:1, angle:180}, {type:"RotateBlock", x:17, y:4, btype:1, angle:0}, {type:"Box", x:3, y:2, w:2, h:2}, {type:"Box", x:5, y:2, w:2, h:2}, {type:"Box", x:8, y:2, w:2, h:2}, {type:"Box", x:10, y:2, w:2, h:2}, {type:"Box", x:13, y:2, w:2, h:2}, {type:"Box", x:15, y:2, w:2, h:2}, {type:"Box", x:9, y:4, w:2, h:2}, {type:"Box", x:11, y:4, w:2, h:1}, {type:"Box", x:7, y:4, w:2, h:1}, {type:"Box", x:5, y:4, w:1, h:2}, {type:"Box", x:14, y:4, w:1, h:2}, {type:"Box", x:4, y:6, w:2, h:2}, {type:"Box", x:14, y:6, w:2, h:2}, {type:"Box", x:5, y:8, w:2, h:2}, {type:"Box", x:4, y:10, w:2, h:2}, {type:"Box", x:13, y:8, w:2, h:2}, {type:"Box", x:14, y:10, w:2, h:2}, {type:"Box", x:9, y:7, w:2, h:2}, {type:"Box", x:10, y:9, w:2, h:2}, {type:"Box", x:8, y:9, w:2, h:2}, {type:"Box", x:11, y:7, w:2, h:1}, {type:"Box", x:7, y:7, w:2, h:1}], tiles:[[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1], [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1], [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], [1, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]}}]}, {meta:{label:"Hard Course"}, floors:[{meta:{label:"leveltext 1"}, data:{player:[{x:7, y:7, skin:"kwirk"}], objects:[{type:"Box", x:7, y:10, w:3, h:1}, {type:"Box", x:10, y:10, w:3, h:1}, {type:"Box", x:9, y:7, w:2, h:1}], tiles:[[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 0, 0, 1, 3, 2, 2, 0, 0, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]}}, {meta:{label:"leveltext 2"}, data:{player:[{x:18, y:8, skin:"kwirk"}], objects:[{type:"Box", x:3, y:7, w:2, h:1}, {type:"Box", x:3, y:8, w:2, h:1}, {type:"Box", x:3, y:9, w:2, h:1}, {type:"Box", x:8, y:4, w:2, h:1}, {type:"Box", x:8, y:12, w:2, h:1}, {type:"RotateBlock", x:13, y:11, btype:1, angle:0}, {type:"RotateBlock", x:13, y:6, btype:1, angle:90}, {type:"RotateBlock", x:18, y:6, btype:1, angle:180}, {type:"RotateBlock", x:18, y:11, btype:1, angle:270}, {type:"Box", x:15, y:7, w:3, h:3}], tiles:[[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1], [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], [1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1], [1, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 1], [1, 3, 0, 0, 0, 2, 2, 2, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 1], [1, 0, 0, 0, 0, 2, 2, 2, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1], [1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1], [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], [1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]}}, {meta:{label:"leveltext 3"}, data:{player:[{x:16, y:8, skin:"kwirk"}], objects:[{type:"Box", x:12, y:4, w:3, h:1}, {type:"Box", x:13, y:6, w:1, h:1}, {type:"Box", x:12, y:7, w:2, h:1}, {type:"Box", x:15, y:12, w:1, h:1}, {type:"Box", x:11, y:12, w:3, h:1}, {type:"Box", x:15, y:10, w:1, h:2}], tiles:[[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 2, 0, 0, 0, 1, 0, 0, 1, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 2, 1, 0, 0, 1, 0, 0, 1, 1, 1], [1, 1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 1, 0, 2, 1, 0, 0, 1, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 2, 0, 0, 1, 0, 0, 0, 1, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 2, 0, 0, 0, 0, 0, 0, 1, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 2, 0, 0, 0, 0, 0, 1, 1, 1], [1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]}}, {meta:{label:"leveltext 4"}, data:{player:[{x:16, y:2, skin:"kwirk"}], objects:[{type:"RotateBlock", x:5, y:3, btype:0, angle:90}, {type:"Box", x:6, y:2, w:1, h:1}, {type:"Box", x:6, y:4, w:1, h:1}, {type:"Box", x:7, y:3, w:2, h:1}, {type:"RotateBlock", x:10, y:4, btype:1, angle:180}, {type:"RotateBlock", x:10, y:2, btype:0, angle:180}, {type:"RotateBlock", x:13, y:3, btype:1, angle:270}, {type:"Box", x:11, y:3, w:1, h:1}, {type:"RotateBlock", x:14, y:4, btype:1, angle:90}, {type:"RotateBlock", x:9, y:13, btype:1, angle:270}, {type:"RotateBlock", x:9, y:10, btype:1, angle:90}, {type:"RotateBlock", x:12, y:10, btype:1, angle:270}, {type:"RotateBlock", x:9, y:15, btype:1, angle:0}, {type:"Box", x:14, y:6, w:1, h:1}, {type:"Box", x:13, y:5, w:1, h:3}, {type:"Box", x:14, y:8, w:1, h:1}, {type:"Box", x:14, y:11, w:1, h:2}, {type:"Box", x:15, y:12, w:1, h:3}, {type:"Box", x:14, y:14, w:1, h:1}, {type:"RotateBlock", x:14, y:13, btype:0, angle:270}, {type:"Box", x:12, y:15, w:1, h:1}, {type:"Box", x:11, y:14, w:2, h:1}, {type:"Box", x:11, y:13, w:1, h:1}, {type:"Box", x:12, y:12, w:1, h:2}, {type:"Box", x:10, y:7, w:2, h:2}, {type:"Box", x:3, y:7, w:2, h:1}, {type:"RotateBlock", x:4, y:8, btype:0, angle:90}, {type:"RotateBlock", x:15, y:7, btype:0, angle:270}, {type:"RotateBlock", x:12, y:5, btype:0, angle:180}, {type:"RotateBlock", x:6, y:10, btype:1, angle:90}, {type:"Box", x:7, y:9, w:1, h:1}, {type:"Box", x:4, y:9, w:1, h:2}], tiles:[[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1], [1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 0, 2, 2, 0, 0, 2, 2, 0, 2, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 0, 2, 2, 2, 0, 0, 0, 2, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 0, 0, 2, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 0, 0, 0, 1, 0, 2, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 2, 1, 0, 1, 1, 1, 1], [1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 0, 1, 1, 1, 1], [1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 2, 2, 2, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 2, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 3, 2, 2, 0, 1, 0, 0, 0, 0, 2, 0, 0, 0, 2, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]}}, {meta:{label:"leveltext 5"}, data:{player:[{x:18, y:8, skin:"kwirk"}], objects:[{type:"RotateBlock", x:3, y:3, btype:1, angle:90}, {type:"RotateBlock", x:6, y:2, btype:1, angle:90}, {type:"RotateBlock", x:8, y:3, btype:1, angle:90}, {type:"RotateBlock", x:3, y:13, btype:1, angle:0}, {type:"RotateBlock", x:6, y:14, btype:1, angle:0}, {type:"RotateBlock", x:8, y:13, btype:1, angle:0}, {type:"Box", x:6, y:4, w:1, h:1}, {type:"Box", x:6, y:12, w:1, h:1}, {type:"Box", x:5, y:5, w:2, h:2}, {type:"Box", x:5, y:10, w:2, h:2}, {type:"Box", x:3, y:9, w:2, h:2}, {type:"Box", x:3, y:6, w:2, h:2}, {type:"Box", x:6, y:7, w:1, h:1}, {type:"Box", x:7, y:8, w:1, h:1}, {type:"Box", x:6, y:9, w:1, h:1}, {type:"Box", x:8, y:7, w:1, h:1}, {type:"Box", x:8, y:8, w:1, h:1}, {type:"Box", x:8, y:9, w:1, h:1}, {type:"Box", x:16, y:6, w:1, h:1}, {type:"Box", x:16, y:10, w:1, h:1}, {type:"Box", x:15, y:9, w:1, h:1}, {type:"Box", x:15, y:8, w:1, h:1}, {type:"Box", x:15, y:7, w:1, h:1}, {type:"RotateBlock", x:8, y:6, btype:1, angle:270}, {type:"RotateBlock", x:8, y:10, btype:1, angle:180}, {type:"RotateBlock", x:10, y:13, btype:0, angle:180}, {type:"RotateBlock", x:12, y:13, btype:0, angle:180}, {type:"RotateBlock", x:10, y:3, btype:0, angle:0}, {type:"RotateBlock", x:12, y:3, btype:0, angle:0}, {type:"RotateBlock", x:14, y:6, btype:1, angle:0}, {type:"RotateBlock", x:14, y:3, btype:1, angle:180}, {type:"RotateBlock", x:14, y:10, btype:1, angle:90}, {type:"RotateBlock", x:14, y:13, btype:1, angle:270}, {type:"RotateBlock", x:13, y:8, btype:0, angle:90}, {type:"RotateBlock", x:12, y:7, btype:1, angle:270}, {type:"RotateBlock", x:12, y:9, btype:1, angle:180}, {type:"RotateBlock", x:10, y:5, btype:3, angle:0}, {type:"RotateBlock", x:10, y:11, btype:3, angle:0}, {type:"RotateBlock", x:10, y:8, btype:3, angle:180}], tiles:[[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1], [1, 3, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1], [1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]}}, {meta:{label:"leveltext 6"}, data:{player:[{x:4, y:2, skin:"kwirk"}], objects:[{type:"RotateBlock", x:5, y:3, btype:0, angle:0}, {type:"RotateBlock", x:5, y:4, btype:0, angle:270}, {type:"Box", x:7, y:2, w:1, h:1}, {type:"Box", x:4, y:6, w:1, h:1}, {type:"Box", x:13, y:3, w:1, h:1}, {type:"Box", x:10, y:2, w:2, h:1}, {type:"Box", x:11, y:5, w:3, h:1}, {type:"Box", x:10, y:5, w:1, h:1}, {type:"Box", x:8, y:6, w:2, h:1}, {type:"Box", x:7, y:9, w:3, h:2}, {type:"RotateBlock", x:5, y:10, btype:3, angle:270}, {type:"RotateBlock", x:12, y:11, btype:3, angle:90}, {type:"RotateBlock", x:7, y:4, btype:1, angle:90}, {type:"Box", x:6, y:5, w:1, h:1}, {type:"Box", x:5, y:12, w:1, h:1}], tiles:[[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 2, 0, 0, 1, 1, 1, 1], [1, 1, 1, 1, 2, 2, 2, 0, 0, 0, 1, 2, 2, 0, 1, 0, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1], [1, 1, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1], [1, 1, 1, 0, 0, 0, 0, 0, 2, 0, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 3, 0, 2, 0, 0, 0, 2, 0, 0, 2, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]}}, {meta:{label:"leveltext 7"}, data:{player:[{x:13, y:4, skin:"kwirk"}], objects:[{type:"RotateBlock", x:7, y:11, btype:0, angle:0}, {type:"Box", x:9, y:11, w:1, h:1}, {type:"Box", x:12, y:10, w:1, h:1}, {type:"Box", x:12, y:8, w:1, h:1}, {type:"Box", x:13, y:5, w:1, h:1}, {type:"Box", x:12, y:4, w:1, h:1}, {type:"Box", x:8, y:4, w:1, h:1}, {type:"Box", x:9, y:6, w:1, h:1}, {type:"RotateBlock", x:10, y:5, btype:0, angle:0}, {type:"RotateBlock", x:10, y:7, btype:0, angle:270}, {type:"RotateBlock", x:12, y:7, btype:1, angle:270}, {type:"RotateBlock", x:7, y:6, btype:3, angle:180}], tiles:[[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], [1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1], [1, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 1], [1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1], [1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1], [1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1], [1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1], [1, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 2, 0, 1, 0, 0, 0, 1], [1, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0, 1], [1, 0, 0, 0, 1, 1, 2, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 1], [1, 0, 0, 0, 1, 1, 2, 0, 0, 0, 2, 0, 0, 0, 1, 1, 0, 0, 0, 1], [1, 0, 0, 0, 1, 1, 2, 1, 1, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 1], [1, 0, 0, 0, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1], [1, 0, 0, 0, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 1], [1, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]}}, {meta:{label:"leveltext 8"}, data:{player:[{x:4, y:8, skin:"kwirk"}, {x:7, y:8, skin:"kwirk"}, {x:10, y:8, skin:"kwirk"}, {x:13, y:8, skin:"kwirk"}], objects:[{type:"Box", x:3, y:13, w:1, h:1}, {type:"Box", x:5, y:3, w:1, h:11}, {type:"Box", x:8, y:4, w:1, h:11}, {type:"Box", x:11, y:3, w:1, h:11}, {type:"RotateBlock", x:9, y:3, btype:1, angle:90}, {type:"RotateBlock", x:12, y:14, btype:1, angle:0}, {type:"RotateBlock", x:6, y:14, btype:1, angle:0}], tiles:[[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 3, 0, 1, 1], [1, 1, 1, 1, 0, 1, 0, 0, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]}}, {meta:{label:"leveltext 9"}, data:{player:[{x:17, y:2, skin:"kwirk"}], objects:[{type:"Box", x:5, y:12, w:2, h:2}, {type:"Box", x:7, y:12, w:1, h:1}, {type:"Box", x:4, y:3, w:1, h:1}, {type:"Box", x:5, y:2, w:1, h:1}, {type:"Box", x:5, y:9, w:1, h:1}, {type:"Box", x:16, y:13, w:1, h:1}, {type:"Box", x:13, y:11, w:1, h:1}, {type:"Box", x:16, y:2, w:1, h:1}, {type:"Box", x:17, y:3, w:1, h:1}, {type:"Box", x:15, y:3, w:2, h:2}, {type:"Box", x:11, y:7, w:1, h:1}, {type:"Box", x:12, y:5, w:1, h:1}, {type:"Box", x:13, y:6, w:2, h:1}, {type:"Box", x:14, y:8, w:1, h:1}, {type:"Box", x:7, y:2, w:2, h:2}, {type:"Box", x:7, y:4, w:2, h:1}, {type:"Box", x:16, y:7, w:1, h:2}, {type:"RotateBlock", x:5, y:7, btype:3, angle:90}, {type:"RotateBlock", x:11, y:5, btype:3, angle:180}, {type:"RotateBlock", x:11, y:3, btype:0, angle:0}, {type:"RotateBlock", x:5, y:5, btype:1, angle:180}, {type:"RotateBlock", x:16, y:5, btype:1, angle:90}], tiles:[[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 1, 1], [1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1], [1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 1, 1], [1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1], [1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 2, 0, 0, 1, 1], [1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1], [1, 1, 1, 1, 0, 0, 0, 1, 0, 1, 1, 2, 1, 1, 0, 0, 0, 0, 1, 1], [1, 1, 1, 1, 2, 0, 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 1, 1], [1, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 2, 0, 1, 0, 1, 1], [1, 1, 1, 1, 0, 0, 1, 2, 0, 0, 1, 1, 1, 0, 2, 0, 2, 2, 1, 1], [1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0, 1, 1], [1, 1, 1, 2, 2, 0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 2, 1, 1], [1, 1, 0, 0, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 3, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]}}, {meta:{label:"leveltext 10"}, data:{player:[{x:17, y:8, skin:"kwirk"}], objects:[{type:"Box", x:10, y:7, w:1, h:1}, {type:"Box", x:10, y:9, w:1, h:1}, {type:"Box", x:13, y:4, w:1, h:1}, {type:"Box", x:13, y:12, w:1, h:1}, {type:"Box", x:15, y:4, w:1, h:1}, {type:"Box", x:15, y:12, w:1, h:1}, {type:"Box", x:15, y:11, w:1, h:1}, {type:"Box", x:14, y:10, w:2, h:1}, {type:"Box", x:15, y:5, w:1, h:1}, {type:"Box", x:14, y:6, w:2, h:1}, {type:"Box", x:15, y:7, w:1, h:3}, {type:"Box", x:17, y:7, w:1, h:1}, {type:"Box", x:17, y:9, w:1, h:1}, {type:"Box", x:11, y:7, w:3, h:1}, {type:"Box", x:11, y:9, w:3, h:1}, {type:"Box", x:11, y:8, w:2, h:1}, {type:"Box", x:12, y:5, w:1, h:2}, {type:"Box", x:12, y:10, w:1, h:2}], tiles:[[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 0, 0, 0, 0, 1, 1, 1], [1, 2, 2, 2, 2, 2, 2, 2, 1, 2, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1], [1, 2, 2, 2, 1, 2, 2, 2, 2, 2, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1], [1, 2, 2, 2, 2, 1, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], [1, 3, 2, 1, 2, 2, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], [1, 2, 2, 2, 2, 1, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], [1, 2, 2, 2, 1, 2, 2, 2, 2, 2, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1], [1, 2, 2, 2, 2, 2, 2, 2, 1, 2, 1, 0, 0, 0, 0, 0, 0, 1, 1, 1], [1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 0, 0, 0, 0, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]]}}]}]; _mapdata = _local1; } } }//package
Section 18
//Menu (Menu) package { import flash.display.*; import flash.utils.*; public class Menu extends Sprite { var _main:Main; var _activeScreen; public function Menu(_arg1):void{ _main = _arg1; } public function clearScreen():void{ if (_activeScreen != null){ removeChild(_activeScreen); }; } public function showScreen(_arg1, _arg2):void{ var _local3:Class; _local3 = (getDefinitionByName(("m_" + _arg1)) as Class); _activeScreen = new _local3(_main, _arg2); addChild(_activeScreen); } } }//package
Section 19
//menuSelect (menuSelect) package { import flash.display.*; public dynamic class menuSelect extends MovieClip { } }//package
Section 20
//menuText (menuText) package { import flash.display.*; import flash.text.*; public dynamic class menuText extends MovieClip { public var t_label:TextField; } }//package
Section 21
//MochiAd (MochiAd) package { import flash.display.*; import flash.events.*; import flash.net.*; import flash.utils.*; import flash.system.*; public class MochiAd { public static function getVersion():String{ return ("2.2"); } public static function showTimedAd(_arg1:Object):void{ MochiAd.showInterLevelAd(_arg1); } public static function _allowDomains(_arg1:String):String{ var _local2:String; _local2 = _arg1.split("/")[2].split(":")[0]; Security.allowDomain("*"); Security.allowDomain(_local2); Security.allowInsecureDomain("*"); Security.allowInsecureDomain(_local2); return (_local2); } public static function load(_arg1:Object):MovieClip{ var DEFAULTS:Object; var clip:Object; var depth:Number; var mc:MovieClip; var wh:Array; var lv:URLVariables; var k:String; var server:String; var hostname:String; var lc:LocalConnection; var name:String; var loader:Loader; var f:Function; var g:Function; var req:URLRequest; var v:Object; var options = _arg1; DEFAULTS = {server:"http://x.mochiads.com/srv/1/", method:"load", depth:10333, id:"_UNKNOWN_"}; options = MochiAd._parseOptions(options, DEFAULTS); options.swfv = 9; options.mav = MochiAd.getVersion(); clip = options.clip; if (!MochiAd._isNetworkAvailable()){ return (null); }; try { if (clip._mochiad_loaded){ return (null); }; } catch(e:Error) { throw (new Error("MochiAd requires a clip that is an instance of a dynamic class. If your class extends Sprite or MovieClip, you must make it dynamic.")); }; depth = options.depth; delete options.depth; mc = createEmptyMovieClip(clip, "_mochiad", depth); wh = MochiAd._getRes(options, clip); options.res = ((wh[0] + "x") + wh[1]); options.server = (options.server + options.id); delete options.id; clip._mochiad_loaded = true; if (clip.loaderInfo.loaderURL.indexOf("http") == 0){ options.as3_swf = clip.loaderInfo.loaderURL; }; lv = new URLVariables(); for (k in options) { v = options[k]; if (!(v is Function)){ lv[k] = v; }; }; server = lv.server; delete lv.server; hostname = _allowDomains(server); lc = new LocalConnection(); lc.client = mc; name = ["", Math.floor(new Date().getTime()), Math.floor((Math.random() * 999999))].join("_"); lc.allowDomain("*", "localhost"); lc.allowInsecureDomain("*", "localhost"); lc.connect(name); mc.lc = lc; lv.lc = name; lv.st = getTimer(); loader = new Loader(); f = function (_arg1:Object):void{ _arg1.target.removeEventListener(_arg1.type, arguments.callee); mc._mochiad_ctr_failed = true; }; loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, f); g = function (_arg1:Object):void{ _arg1.target.removeEventListener(_arg1.type, arguments.callee); MochiAd.unload(clip); }; loader.contentLoaderInfo.addEventListener(Event.UNLOAD, g); req = new URLRequest((server + ".swf")); req.contentType = "application/x-www-form-urlencoded"; req.method = URLRequestMethod.POST; req.data = lv; loader.load(req); mc.addChild(loader); mc._mochiad_ctr = loader; return (mc); } public static function sendHighScore(_arg1:Object, _arg2:Object, _arg3:Object=null):Boolean{ var _local4:MovieClip; _local4 = MochiAd._loadCommunicator({clip:_arg1.clip, id:_arg1.id}); if (!_local4){ return (false); }; _local4.doSend(["sendHighScore", _arg1], _arg2, _arg3); return (true); } public static function _parseOptions(_arg1:Object, _arg2:Object):Object{ var _local3:Object; var _local4:String; var _local5:Array; var _local6:Number; var _local7:Array; _local3 = {}; for (_local4 in _arg2) { _local3[_local4] = _arg2[_local4]; }; if (_arg1){ for (_local4 in _arg1) { _local3[_local4] = _arg1[_local4]; }; }; if (_local3.clip == undefined){ throw (new Error("MochiAd is missing the 'clip' parameter. This should be a MovieClip, Sprite or an instance of a class that extends MovieClip or Sprite.")); }; _arg1 = _local3.clip.loaderInfo.parameters.mochiad_options; if (_arg1){ _local5 = _arg1.split("&"); _local6 = 0; while (_local6 < _local5.length) { _local7 = _local5[_local6].split("="); _local3[unescape(_local7[0])] = unescape(_local7[1]); _local6++; }; }; if (_local3.id == "test"){ }; return (_local3); } public static function _isNetworkAvailable():Boolean{ return (!((Security.sandboxType == "localWithFile"))); } public static function _cleanup(_arg1:Object):void{ var idx:Number; var k:String; var lc:LocalConnection; var f:Function; var mc = _arg1; if (("lc" in mc)){ lc = mc.lc; f = function ():void{ try { lc.client = null; lc.close(); } catch(e:Error) { }; }; setTimeout(f, 0); }; idx = DisplayObjectContainer(mc).numChildren; while (idx > 0) { idx = (idx - 1); DisplayObjectContainer(mc).removeChildAt(idx); }; for (k in mc) { delete mc[k]; }; } public static function unload(_arg1:Object):Boolean{ if (((_arg1.clip) && (_arg1.clip._mochiad))){ _arg1 = _arg1.clip; }; if (!_arg1._mochiad){ return (false); }; if (_arg1._mochiad.onUnload){ _arg1._mochiad.onUnload(); }; delete _arg1._mochiad_loaded; delete _arg1._mochiad; return (true); } public static function showInterLevelAd(_arg1:Object):void{ var DEFAULTS:Object; var clip:Object; var ad_msec:Number; var ad_timeout:Number; var fadeout_time:Number; var mc:MovieClip; var wh:Array; var w:Number; var h:Number; var chk:MovieClip; var options = _arg1; DEFAULTS = {ad_timeout:2000, fadeout_time:250, regpt:"o", method:"showTimedAd", ad_started:function ():void{ if ((this.clip is MovieClip)){ this.clip.stop(); } else { throw (new Error("MochiAd.showInterLevelAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers.")); }; }, ad_finished:function ():void{ if ((this.clip is MovieClip)){ this.clip.play(); } else { throw (new Error("MochiAd.showInterLevelAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers.")); }; }}; options = MochiAd._parseOptions(options, DEFAULTS); clip = options.clip; ad_msec = 11000; ad_timeout = options.ad_timeout; delete options.ad_timeout; fadeout_time = options.fadeout_time; delete options.fadeout_time; if (!MochiAd.load(options)){ options.ad_finished(); return; }; options.ad_started(); mc = clip._mochiad; mc["onUnload"] = function ():void{ MochiAd._cleanup(mc); options.ad_finished(); }; wh = MochiAd._getRes(options, clip); w = wh[0]; h = wh[1]; mc.x = (w * 0.5); mc.y = (h * 0.5); chk = createEmptyMovieClip(mc, "_mochiad_wait", 3); chk.ad_msec = ad_msec; chk.ad_timeout = ad_timeout; chk.started = getTimer(); chk.showing = false; chk.fadeout_time = fadeout_time; chk.fadeFunction = function ():void{ var _local1:Number; if (!this.parent){ delete this.onEnterFrame; delete this.fadeFunction; return; }; _local1 = (100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time))); if (_local1 > 0){ this.parent.alpha = (_local1 * 0.01); } else { MochiAd.unload(clip); delete this["onEnterFrame"]; }; }; mc.unloadAd = function ():void{ MochiAd.unload(clip); }; mc.adjustProgress = function (_arg1:Number):void{ var _local2:Object; _local2 = mc._mochiad_wait; _local2.server_control = true; _local2.showing = true; _local2.started = getTimer(); _local2.ad_msec = (_arg1 - 250); }; chk["onEnterFrame"] = function ():void{ var _local1:Object; var _local2:Number; var _local3:Boolean; var _local4:Number; if (!this.parent){ delete this.onEnterFrame; delete this.fadeFunction; return; }; _local1 = this.parent._mochiad_ctr; _local2 = (getTimer() - this.started); _local3 = false; if (!chk.showing){ _local4 = _local1.loaderInfo.bytesTotal; if ((((_local4 > 0)) || (("number" == "undefined")))){ chk.showing = true; chk.started = getTimer(); } else { if (_local2 > chk.ad_timeout){ _local3 = true; }; }; }; if ((((_local2 > chk.ad_msec)) || (this.parent._mochiad_ctr_failed))){ _local3 = true; }; if (_local3){ if (this.server_control){ delete this.onEnterFrame; } else { this.fadeout_start = getTimer(); this.onEnterFrame = this.fadeFunction; }; }; }; doOnEnterFrame(chk); } public static function _getRes(_arg1:Object, _arg2:Object):Array{ var _local3:Object; var _local4:Number; var _local5:Number; var _local6:Array; _local3 = _arg2.getBounds(_arg2.root); _local4 = 0; _local5 = 0; if (typeof(_arg1.res) != "undefined"){ _local6 = _arg1.res.split("x"); _local4 = parseFloat(_local6[0]); _local5 = parseFloat(_local6[1]); } else { _local4 = (_local3.xMax - _local3.xMin); _local5 = (_local3.yMax - _local3.yMin); }; if ((((_local4 == 0)) || ((_local5 == 0)))){ _local4 = _arg2.stage.stageWidth; _local5 = _arg2.stage.stageHeight; }; return ([_local4, _local5]); } public static function createEmptyMovieClip(_arg1:Object, _arg2:String, _arg3:Number):MovieClip{ var _local4:MovieClip; _local4 = new MovieClip(); if (((false) && (_arg3))){ _arg1.addChildAt(_local4, _arg3); } else { _arg1.addChild(_local4); }; _arg1[_arg2] = _local4; _local4["_name"] = _arg2; return (_local4); } public static function _loadCommunicator(_arg1:Object):MovieClip{ var DEFAULTS:Object; var clip:Object; var clipname:String; var server:String; var depth:Number; var mc:MovieClip; var lv:URLVariables; var k:String; var lc:LocalConnection; var name:String; var req:URLRequest; var loader:Loader; var options = _arg1; DEFAULTS = {com_server:"http://x.mochiads.com/com/1/", method:"loadCommunicator", depth:10337, id:"_UNKNOWN_"}; options = MochiAd._parseOptions(options, DEFAULTS); options.swfv = 9; options.mav = MochiAd.getVersion(); clip = options.clip; clipname = ("_mochiad_com_" + options.id); if (!MochiAd._isNetworkAvailable()){ return (null); }; if (clip[clipname]){ return (clip[clipname]); }; server = (options.com_server + options.id); MochiAd._allowDomains(server); delete options.id; delete options.com_server; depth = options.depth; delete options.depth; mc = createEmptyMovieClip(clip, clipname, depth); lv = new URLVariables(); for (k in options) { lv[k] = options[k]; }; lc = new LocalConnection(); lc.client = mc; name = ["", Math.floor(new Date().getTime()), Math.floor((Math.random() * 999999))].join("_"); lc.allowDomain("*", "localhost"); lc.allowInsecureDomain("*", "localhost"); lc.connect(name); mc.name = name; mc.lc = lc; lv.lc = name; mc._id = 0; mc._queue = []; mc.rpcResult = function (_arg1:Object):void{ var _local3:Array; var _local4:Array; var _local5:Number; var _local6:Object; var _local7:Object; _arg1 = parseInt(_arg1.toString()); _local3 = mc._callbacks[_arg1]; if (typeof(_local3) == "undefined"){ return; }; delete mc._callbacks[_arg1]; _local4 = []; _local5 = 2; while (_local5 < _local3.length) { _local4.push(_local3[_local5]); _local5++; }; _local5 = 1; while (_local5 < arguments.length) { _local4.push(arguments[_local5]); _local5++; }; _local6 = _local3[1]; _local7 = _local3[0]; if (((_local7) && ((typeof(_local6) == "string")))){ _local6 = _local7[_local6]; }; if (typeof(_local6) == "function"){ _local6.apply(_local7, _local4); }; }; mc._didConnect = function (_arg1:String):void{ var _local2:Array; var _local3:Function; var _local4:Number; var _local5:Array; mc._endpoint = _arg1; _local2 = mc._queue; delete mc._queue; _local3 = mc.doSend; _local4 = 0; while (_local4 < _local2.length) { _local5 = _local2[_local4]; _local3.apply(this, _local5); _local4++; }; }; mc.doSend = function (_arg1:Array, _arg2:Object, _arg3:Object):void{ var _local5:Number; var _local6:LocalConnection; var _local7:Array; var _local8:Number; if (mc._endpoint == null){ _local7 = []; _local8 = 0; while (_local8 < arguments.length) { _local7.push(arguments[_local8]); _local8++; }; mc._queue.push(_local7); return; }; mc._id = (mc._id + 1); _local5 = mc._id; mc._callbacks[_local5] = [_arg2, ((_arg3) || (_arg2))]; _local6 = new LocalConnection(); _local6.send(mc._endpoint, "rpc", _local5, _arg1); }; mc._callbacks = {}; mc._callbacks[0] = [mc, "_didConnect"]; lv.st = getTimer(); req = new URLRequest((server + ".swf")); req.contentType = "application/x-www-form-urlencoded"; req.method = URLRequestMethod.POST; req.data = lv; loader = new Loader(); loader.load(req); mc.addChild(loader); mc._mochiad_com = loader; return (mc); } public static function showPreGameAd(_arg1:Object):void{ var DEFAULTS:Object; var clip:Object; var ad_msec:Number; var ad_timeout:Number; var fadeout_time:Number; var mc:MovieClip; var wh:Array; var w:Number; var h:Number; var chk:MovieClip; var bar:MovieClip; var bar_color:Number; var bar_background:Number; var bar_outline:Number; var backing_mc:MovieClip; var backing:Object; var inside_mc:MovieClip; var inside:Object; var outline_mc:MovieClip; var outline:Object; var complete:Boolean; var unloaded:Boolean; var f:Function; var r:MovieClip; var options = _arg1; DEFAULTS = {ad_timeout:3000, fadeout_time:250, regpt:"o", method:"showPreloaderAd", color:0xFF8A00, background:16777161, outline:13994812, ad_started:function ():void{ if ((this.clip is MovieClip)){ this.clip.stop(); } else { throw (new Error("MochiAd.showPreGameAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers.")); }; }, ad_finished:function ():void{ if ((this.clip is MovieClip)){ this.clip.play(); } else { throw (new Error("MochiAd.showPreGameAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers.")); }; }}; options = MochiAd._parseOptions(options, DEFAULTS); clip = options.clip; ad_msec = 11000; ad_timeout = options.ad_timeout; delete options.ad_timeout; fadeout_time = options.fadeout_time; delete options.fadeout_time; if (!MochiAd.load(options)){ options.ad_finished(); return; }; options.ad_started(); mc = clip._mochiad; mc["onUnload"] = function ():void{ var fn:Function; MochiAd._cleanup(mc); fn = function ():void{ options.ad_finished(); }; setTimeout(fn, 100); }; wh = MochiAd._getRes(options, clip); w = wh[0]; h = wh[1]; mc.x = (w * 0.5); mc.y = (h * 0.5); chk = createEmptyMovieClip(mc, "_mochiad_wait", 3); chk.x = (w * -0.5); chk.y = (h * -0.5); bar = createEmptyMovieClip(chk, "_mochiad_bar", 4); bar.x = 10; bar.y = (h - 20); bar_color = options.color; delete options.color; bar_background = options.background; delete options.background; bar_outline = options.outline; delete options.outline; backing_mc = createEmptyMovieClip(bar, "_outline", 1); backing = backing_mc.graphics; backing.beginFill(bar_background); backing.moveTo(0, 0); backing.lineTo((w - 20), 0); backing.lineTo((w - 20), 10); backing.lineTo(0, 10); backing.lineTo(0, 0); backing.endFill(); inside_mc = createEmptyMovieClip(bar, "_inside", 2); inside = inside_mc.graphics; inside.beginFill(bar_color); inside.moveTo(0, 0); inside.lineTo((w - 20), 0); inside.lineTo((w - 20), 10); inside.lineTo(0, 10); inside.lineTo(0, 0); inside.endFill(); inside_mc.scaleX = 0; outline_mc = createEmptyMovieClip(bar, "_outline", 3); outline = outline_mc.graphics; outline.lineStyle(0, bar_outline, 100); outline.moveTo(0, 0); outline.lineTo((w - 20), 0); outline.lineTo((w - 20), 10); outline.lineTo(0, 10); outline.lineTo(0, 0); chk.ad_msec = ad_msec; chk.ad_timeout = ad_timeout; chk.started = getTimer(); chk.showing = false; chk.last_pcnt = 0; chk.fadeout_time = fadeout_time; chk.fadeFunction = function ():void{ var _local1:Number; _local1 = (100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time))); if (_local1 > 0){ this.parent.alpha = (_local1 * 0.01); } else { MochiAd.unload(clip); delete this["onEnterFrame"]; }; }; complete = false; unloaded = false; f = function (_arg1:Event):void{ _arg1.target.removeEventListener(_arg1.type, arguments.callee); complete = true; if (unloaded){ MochiAd.unload(clip); }; }; clip.loaderInfo.addEventListener(Event.COMPLETE, f); if ((clip.root is MovieClip)){ r = (clip.root as MovieClip); if (r.framesLoaded >= r.totalFrames){ complete = true; }; }; mc.unloadAd = function ():void{ unloaded = true; if (complete){ MochiAd.unload(clip); }; }; mc.adjustProgress = function (_arg1:Number):void{ var _local2:Object; _local2 = mc._mochiad_wait; _local2.server_control = true; _local2.showing = true; _local2.started = getTimer(); _local2.ad_msec = _arg1; }; chk["onEnterFrame"] = function ():void{ var _local1:Object; var _local2:Object; var _local3:Number; var _local4:Boolean; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Object; var _local10:Number; var _local11:Number; if (!this.parent.parent){ delete this["onEnterFrame"]; return; }; _local1 = this.parent.parent.root; _local2 = this.parent._mochiad_ctr; _local3 = (getTimer() - this.started); _local4 = false; _local5 = _local1.loaderInfo.bytesTotal; _local6 = _local1.loaderInfo.bytesLoaded; if (complete){ _local6 = Math.max(1, _local6); _local5 = _local6; }; _local7 = ((100 * _local6) / _local5); _local8 = ((100 * _local3) / chk.ad_msec); _local9 = this._mochiad_bar._inside; _local10 = Math.min(100, Math.min(((_local7) || (0)), _local8)); _local10 = Math.max(this.last_pcnt, _local10); this.last_pcnt = _local10; _local9.scaleX = (_local10 * 0.01); if (!chk.showing){ _local11 = _local2.loaderInfo.bytesTotal; if ((((_local11 > 0)) || (("number" == "undefined")))){ chk.showing = true; chk.started = getTimer(); } else { if (_local3 > chk.ad_timeout){ _local4 = true; }; }; }; if ((((_local3 > chk.ad_msec)) || (this.parent._mochiad_ctr_failed))){ _local4 = true; }; if (((complete) && (_local4))){ if (this.server_control){ delete this.onEnterFrame; } else { this.fadeout_start = getTimer(); this.onEnterFrame = chk.fadeFunction; }; }; }; doOnEnterFrame(chk); } public static function showPreloaderAd(_arg1:Object):void{ MochiAd.showPreGameAd(_arg1); } public static function fetchHighScores(_arg1:Object, _arg2:Object, _arg3:Object=null):Boolean{ var _local4:MovieClip; _local4 = MochiAd._loadCommunicator({clip:_arg1.clip, id:_arg1.id}); if (!_local4){ return (false); }; _local4.doSend(["fetchHighScores", _arg1], _arg2, _arg3); return (true); } public static function doOnEnterFrame(_arg1:MovieClip):void{ var f:Function; var mc = _arg1; f = function (_arg1:Object):void{ if (((("onEnterFrame" in mc)) && (mc.onEnterFrame))){ mc.onEnterFrame(); } else { _arg1.target.removeEventListener(_arg1.type, arguments.callee); }; }; mc.addEventListener(Event.ENTER_FRAME, f); } } }//package
Section 22
//MochiBot (MochiBot) package { import flash.display.*; import flash.net.*; import flash.system.*; public dynamic class MochiBot extends Sprite { public static function track(_arg1:Sprite, _arg2:String):MochiBot{ var _local3:MochiBot; var _local4:String; var _local5:URLVariables; var _local6:String; var _local7:URLRequest; var _local8:Loader; if (Security.sandboxType == "localWithFile"){ return (null); }; _local3 = new (MochiBot); _arg1.addChild(_local3); Security.allowDomain("core.mochibot.com"); Security.allowInsecureDomain("core.mochibot.com"); _local4 = "http://core.mochibot.com/my/core.swf"; _local5 = new URLVariables(); _local5["sb"] = Security.sandboxType; _local5["v"] = Capabilities.version; _local5["swfid"] = _arg2; _local5["mv"] = "8"; _local5["fv"] = "9"; _local6 = _local3.root.loaderInfo.loaderURL; if (_local6.indexOf("http") == 0){ _local5["url"] = _local6; } else { _local5["url"] = "local"; }; _local7 = new URLRequest(_local4); _local7.contentType = "application/x-www-form-urlencoded"; _local7.method = URLRequestMethod.POST; _local7.data = _local5; _local8 = new Loader(); _local3.addChild(_local8); _local8.load(_local7); return (_local3); } } }//package
Section 23
//p_kwirk (p_kwirk) package { import flash.display.*; public dynamic class p_kwirk extends MovieClip { public function p_kwirk(){ addFrameScript(7, frame8, 15, frame16, 23, frame24, 31, frame32, 38, frame39); } function frame16(){ gotoAndPlay("walk_down"); } function frame8(){ gotoAndPlay("walk_up"); } function frame24(){ gotoAndPlay("walk_left"); } function frame39(){ gotoAndStop("walk_down"); } function frame32(){ gotoAndPlay("walk_right"); } } }//package
Section 24
//p_kwirk2 (p_kwirk2) package { import flash.display.*; public dynamic class p_kwirk2 extends MovieClip { } }//package
Section 25
//Player (Player) package { import flash.display.*; import flash.events.*; import flash.utils.*; public class Player extends Sprite { public var _ypos:int; public var _active:Boolean;// = false public var _playerOut:Boolean;// = false public var _speed:Number;// = 4 private var _skin:String; public var _xmod:Number;// = 0 public var _nextPlayer; public var _moving:Boolean;// = false private var _main; private var _gfx; public var _xpos:int; public var _ymod:Number;// = 0 public var _dir:String;// = "idle" public function Player(_arg1, _arg2){ _xmod = 0; _ymod = 0; _moving = false; _speed = 4; _dir = "idle"; _active = false; _playerOut = false; super(); _main = _arg1; _xpos = _arg2.x; _ypos = _arg2.y; _skin = _arg2.skin; setxy(); draw(); addEventListener(Event.ENTER_FRAME, onEnterFrame); } public function setxy():void{ x = (_xpos * _main._game._map._tilesize); y = (_ypos * _main._game._map._tilesize); } private function movePlayer():void{ if (_moving){ x = (x + (_xmod * _speed)); y = (y + (_ymod * _speed)); }; } private function checkStep():Boolean{ var _local1:*; var _local2:*; var _local3:*; _local1 = (_xpos + _xmod); _local2 = (_ypos + _ymod); if (_main._game._map.isWalkable(_local1, _local2)){ _local3 = _main._game._map.isObject(_local1, _local2); if (_local3){ if (_local3._type == "box"){ if (_local3.pushObj(_xmod, _ymod)){ return (true); }; } else { if (_local3._type == "rblock"){ if (_local3.rotateObj(this)){ return (true); }; }; }; return (false); }; if (!_main._game.checkPlayer(_local1, _local2)){ return (true); }; }; return (false); } public function draw():void{ var _local1:Class; _local1 = (getDefinitionByName(("p_" + _skin)) as Class); _gfx = new (_local1); addChild(_gfx); _gfx.gotoAndStop("walk_down"); } public function remove(){ removeEventListener(Event.ENTER_FRAME, onEnterFrame); _main._game._gameLayer.removeChild(this); } public function onEnterFrame(_arg1:Event):void{ if (((((!(_main._pause)) && (_active))) && (!(_playerOut)))){ keyCheck(); movePlayer(); }; } private function keyCheck():void{ if (!_moving){ if (_main._keyLeft){ doStep("left"); } else { if (_main._keyRight){ doStep("right"); } else { if (_main._keyDown){ doStep("down"); } else { if (_main._keyUp){ doStep("up"); }; }; }; }; } else { stopStep(); }; } public function stopStep():void{ var _local1:*; var _local2:*; if (!_moving){ return; }; _local1 = ((_xpos + _xmod) * _main._game._map._tilesize); _local2 = ((_ypos + _ymod) * _main._game._map._tilesize); if ((((x == _local1)) && ((y == _local2)))){ _gfx.gotoAndStop(("walk_" + _dir)); _xpos = (_xpos + _xmod); _ypos = (_ypos + _ymod); _xmod = 0; _ymod = 0; _moving = false; _speed = 4; if (_main._game._map.isExit(_xpos, _ypos)){ _playerOut = true; removeChild(_gfx); _xpos = -1; _ypos = -1; _main._game.checkLevelEnd(); }; }; } public function doStep(_arg1:String):void{ if (_moving){ return; }; _moving = true; _xmod = _main._dir[_arg1][0]; _ymod = _main._dir[_arg1][1]; _dir = _arg1; _gfx.gotoAndStop(("walk_" + _dir)); if (!checkStep()){ _xmod = 0; _ymod = 0; _moving = false; } else { _main._game._steps++; _gfx.gotoAndPlay(("walk_" + _dir)); }; } public function activate():void{ if (!_playerOut){ _active = true; if (_main._game._activePlayer != this){ _main._game._activePlayer = this; _gfx.gotoAndPlay("activate"); _main._game._sndStep.play(); _main.clearControls(); }; } else { _nextPlayer.activate(); }; } } }//package
Section 26
//PuzzleBoyFlash (PuzzleBoyFlash) package { import flash.display.*; import flash.events.*; import flash.utils.*; public class PuzzleBoyFlash extends Sprite { public var _gameLayer:Sprite; private var _sndRestart; private var _tileSource; public var _curFloor; public var _gameMode:String; private var _mapSource; public var _sndTurn; public var _activePlayer:Player; public var _steps:int;// = 0 private var _players:Array; public var _curWorld; public var _sndStep; public var _main:Main; public var _map:Map; public var _sndToggle; public var _ingame;// = false public var _floor_time; private var _sndWin; public var _sndPush; public function PuzzleBoyFlash(_arg1, _arg2):void{ _ingame = false; _steps = 0; super(); _main = _arg1; _gameMode = _arg2.gamemode; _curWorld = _arg2.world; _curFloor = _arg2.floor; _mapSource = _main._maps._mapdata[_curWorld]; _tileSource = _main._maps._tileDef; _sndWin = new sfx_4(); _sndRestart = new sfx_5(); _sndTurn = new sfx_6(); _sndStep = new sfx_2(); _sndPush = new sfx_1(); _sndToggle = new sfx_7(); } public function checkPlayer(_arg1, _arg2){ var _local3:*; for (_local3 in _players) { if ((((_arg1 == _players[_local3]._xpos)) && ((_arg2 == _players[_local3]._ypos)))){ return (_players[_local3]); }; }; return (false); } public function init():void{ _steps = 0; _main.clearControls(); _gameLayer = new Sprite(); addChild(_gameLayer); _map = new Map(_main); _map.loadMap(_mapSource.floors[_curFloor], _tileSource); _map.drawMap(); _gameLayer.addChild(_map); loadPlayer(_mapSource.floors[_curFloor]); _ingame = true; _main.stage.addEventListener(KeyboardEvent.KEY_DOWN, _main.onKeyDown); _main.stage.addEventListener(KeyboardEvent.KEY_UP, _main.onKeyUp); _floor_time = new Timer(1000, 0); _floor_time.start(); } public function clearLevel():void{ removePlayer(); removeChild(_gameLayer); _map = null; _ingame = false; _main.stage.removeEventListener(KeyboardEvent.KEY_DOWN, _main.onKeyDown); _main.stage.removeEventListener(KeyboardEvent.KEY_UP, _main.onKeyUp); } public function loadPlayer(_arg1):void{ var _local2:*; var _local3:*; var _local4:*; var _local5:*; _players = new Array(); _local2 = _arg1.data.player; for (_local3 in _local2) { _local5 = new Player(_main, _local2[_local3]); _players.push(_local5); _gameLayer.addChild(_local5); }; for (_local4 in _players) { if (_local4 < (_players.length - 1)){ _players[_local4]._nextPlayer = _players[(_local4 + 1)]; } else { if (_local4 < _players.length){ _players[_local4]._nextPlayer = _players[0]; }; }; }; _activePlayer = _players[0]; _players[0]._active = true; } public function togglePlayer():void{ if (!_activePlayer._moving){ _activePlayer._active = false; _activePlayer._nextPlayer.activate(); }; } public function removePlayer():void{ var _local1:*; _activePlayer = null; for (_local1 in _players) { _players[_local1].remove(); }; _players = null; } public function restartLevel():void{ _sndRestart.play(); clearLevel(); init(); } public function levelEnd():void{ var _local1:*; var _local2:*; clearLevel(); _local1 = _floor_time.currentCount; _floor_time.stop(); _local2 = {stg:_mapSource.meta.label, floor:(_curFloor + 1), steps:_steps, time:_local1, worldcomplete:false}; _main._progress[_curWorld][_curFloor].complete = true; if (_steps <= _main._progress[_curWorld][_curFloor].steps){ _main._progress[_curWorld][_curFloor].steps = _steps; _main._progress[_curWorld][_curFloor].time = _local1; }; if (_curFloor < (_mapSource.floors.length - 1)){ _curFloor++; _main._progress[_curWorld][_curFloor].locked = false; } else { _local2.worldcomplete = true; }; _main._menu.showScreen("nextLevel", _local2); _main.saveProgress(); } public function checkLevelEnd():Boolean{ var _local1:*; for (_local1 in _players) { if (_players[_local1]._playerOut == false){ togglePlayer(); return (false); }; }; _sndWin.play(); levelEnd(); return (true); } } }//package
Section 27
//rb_0 (rb_0) package { import flash.display.*; public dynamic class rb_0 extends MovieClip { } }//package
Section 28
//rb_1 (rb_1) package { import flash.display.*; public dynamic class rb_1 extends MovieClip { } }//package
Section 29
//rb_2 (rb_2) package { import flash.display.*; public dynamic class rb_2 extends MovieClip { } }//package
Section 30
//rb_3 (rb_3) package { import flash.display.*; public dynamic class rb_3 extends MovieClip { } }//package
Section 31
//rb_4 (rb_4) package { import flash.display.*; public dynamic class rb_4 extends MovieClip { } }//package
Section 32
//RotateBlock (RotateBlock) package { import flash.display.*; import flash.utils.*; import flash.geom.*; public class RotateBlock extends MapObject { private var _rotatePlayer; private var _rPos; private var _curShape:Array; private var _blockShape:Array; private var _gfx:MovieClip; private var _dir:Number;// = 0 private var _angle:Number; private var _rotCount;// = 90 private var _blockType:int; public function RotateBlock(_arg1, _arg2):void{ _dir = 0; _rotCount = 90; super(); _main = _arg1; _isMoveObj = true; _type = "rblock"; _speed = 15; _id = _arg2.id; _xpos = _arg2.x; _ypos = _arg2.y; _blockType = _arg2.btype; _rPos = _main._blocks._rpos; _angle = _arg2.angle; _blockShape = _main._blocks._blockDef[_blockType]; setxy(); draw(); _blockShape = rotateArray(_blockShape, _angle); } public function addToObjMap(_arg1):void{ var _local2:*; var _local3:*; _local2 = 0; while (_local2 < 3) { _local3 = 0; while (_local3 < 3) { if (_blockShape[_local2][_local3] == 1){ _arg1[((_ypos - 1) + _local2)][((_xpos - 1) + _local3)] = _id; }; _local3++; }; _local2++; }; } public function rotatePoint(_arg1, _arg2, _arg3){ var _local4:*; var _local5:Number; var _local6:Number; var _local7:*; _local4 = ((_arg3 / 180) * Math.PI); _local5 = runden(((_arg1 * Math.cos(_local4)) + (_arg2 * -(Math.sin(_local4))))); _local6 = runden(((_arg1 * Math.sin(_local4)) + (_arg2 * Math.cos(_local4)))); _local7 = new Point(_local5, _local6); return (_local7); } private function checkPlayerBoost(_arg1){ var _local2:*; _local2 = _main._game._map.isObject((_arg1._xpos + _arg1._xmod), (_arg1._ypos + _arg1._ymod)); if (_local2){ _arg1._xmod = (_arg1._xmod * 2); _arg1._ymod = (_arg1._ymod * 2); _arg1._speed = 4; }; } public function getRotDir(_arg1):Number{ var _local2:*; var _local3:*; var _local4:*; _local2 = (_arg1._xpos - _xpos); _local3 = (_arg1._ypos - _ypos); for (_local4 in _rPos) { if ((((_rPos[_local4].pos[0] == _local2)) && ((_rPos[_local4].pos[1] == _local3)))){ if ((((_rPos[_local4].dir[0][0] == _arg1._xmod)) && ((_rPos[_local4].dir[0][1] == _arg1._ymod)))){ return (-1); }; if ((((_rPos[_local4].dir[1][0] == _arg1._xmod)) && ((_rPos[_local4].dir[1][1] == _arg1._ymod)))){ return (1); }; }; }; return (0); } override public function checkStop():void{ if (!_moving){ return; }; if (Math.abs(_rotCount) >= 90){ _dir = 0; _rotCount = 0; _moving = false; _gfx.gotoAndStop(("rot_" + _angle)); _gfx.rotation = 0; }; } public function draw(){ var _local1:Class; _local1 = (getDefinitionByName(("rb_" + _blockType)) as Class); _gfx = new (_local1); addChild(_gfx); _gfx.gotoAndStop(("rot_" + _angle)); } override public function moveObject():void{ if (_moving){ _gfx.rotation = (_gfx.rotation + (_speed * _dir)); _rotCount = (_rotCount + (_speed * _dir)); }; } private function isTileFree(_arg1, _arg2){ var _local3:*; var _local4:*; if (_main._game._map.isFreeForBox(_arg1, _arg2)){ _local3 = _main._game._map.isObject(_arg1, _arg2); if (_local3){ if (_local3._id != _id){ return (false); }; }; _local4 = _main._game.checkPlayer(_arg1, _arg2); if (_local4){ if (_local4 != _rotatePlayer){ return (false); }; }; return (true); }; return (false); } public function checkRotation(_arg1):Boolean{ var _local2:*; var _local3:*; var _local4:*; var _local5:*; _local2 = true; _local3 = 0; while (_local3 < 3) { _local4 = 0; while (_local4 < 3) { _local5 = _blockShape[_local3][_local4]; if ((((_local5 == 4)) || ((_local5 == 1)))){ _local2 = isTileFree(((_local4 - 1) + _xpos), ((_local3 - 1) + _ypos)); } else { if ((((((_arg1 == 1)) && ((_local5 == 2)))) || ((((_arg1 == -1)) && ((_local5 == 3)))))){ _local2 = isTileFree(((_local4 - 1) + _xpos), ((_local3 - 1) + _ypos)); }; }; if (!_local2){ return (false); }; _local4++; }; _local3++; }; return (true); } public function runden(_arg1:Number):Number{ var _local2:Number; _local2 = (Math.round((_arg1 * 1000)) / 1000); return (_local2); } public function rotateArray(_arg1, _arg2):Array{ var _local3:*; var _local4:*; var _local5:*; var _local6:*; var _local7:*; _local3 = [[8, 8, 8], [8, 8, 8], [8, 8, 8]]; _local4 = -1; while (_local4 < 2) { _local5 = -1; while (_local5 < 2) { _local6 = rotatePoint(_local5, _local4, _arg2); _local7 = _arg1[(_local4 + 1)][(_local5 + 1)]; _local3[(_local6.y + 1)][(_local6.x + 1)] = _local7; _local5++; }; _local4++; }; return (_local3); } public function rotateObj(_arg1):Boolean{ var _local2:*; if ((((_xpos == _arg1._xpos)) || ((_ypos == _arg1._ypos)))){ return (false); }; _local2 = getRotDir(_arg1); _rotatePlayer = _arg1; if (checkRotation(_local2)){ _angle = (_angle + (90 * _local2)); if (_angle < 0){ _angle = 270; }; if (_angle > 270){ _angle = 0; }; _dir = _local2; _moving = true; _rotCount = 0; _blockShape = rotateArray(_blockShape, (90 * _dir)); _main._game._map.loadObjMap(); checkPlayerBoost(_rotatePlayer); _main._game._sndTurn.play(); return (true); }; return (false); } override public function setxy():void{ var _local1:*; _local1 = _main._game._map._tilesize; x = ((_xpos * _local1) + (_local1 / 2)); y = ((_ypos * _local1) + (_local1 / 2)); } } }//package
Section 33
//RotateBlock_prefabs (RotateBlock_prefabs) package { public class RotateBlock_prefabs { public var _rpos; public var _blockDef; public function RotateBlock_prefabs():void{ loadprefabs(); } public function loadprefabs(){ var _local1:*; _rpos = [{pos:[1, -1], dir:[[-1, 0], [0, 1]]}, {pos:[1, 1], dir:[[0, -1], [-1, 0]]}, {pos:[-1, 1], dir:[[1, 0], [0, -1]]}, {pos:[-1, -1], dir:[[0, 1], [1, 0]]}]; _local1 = [[[3, 1, 2], [3, 1, 2], [0, 0, 0]], [[3, 1, 4], [3, 1, 1], [0, 2, 2]], [[3, 1, 2], [4, 1, 4], [2, 1, 3]], [[3, 1, 4], [4, 1, 1], [2, 1, 4]], [[4, 1, 4], [1, 1, 1], [4, 1, 4]]]; _blockDef = _local1; } } }//package
Section 34
//sfx_1 (sfx_1) package { import flash.media.*; public dynamic class sfx_1 extends Sound { } }//package
Section 35
//sfx_2 (sfx_2) package { import flash.media.*; public dynamic class sfx_2 extends Sound { } }//package
Section 36
//sfx_4 (sfx_4) package { import flash.media.*; public dynamic class sfx_4 extends Sound { } }//package
Section 37
//sfx_5 (sfx_5) package { import flash.media.*; public dynamic class sfx_5 extends Sound { } }//package
Section 38
//sfx_6 (sfx_6) package { import flash.media.*; public dynamic class sfx_6 extends Sound { } }//package
Section 39
//sfx_7 (sfx_7) package { import flash.media.*; public dynamic class sfx_7 extends Sound { } }//package
Section 40
//wall (wall) package { import flash.display.*; public dynamic class wall extends MovieClip { } }//package

Library Items

Symbol 1 Sound {sfx_7}
Symbol 2 Sound {sfx_6}
Symbol 3 Sound {sfx_5}
Symbol 4 Sound {sfx_4}
Symbol 5 Sound {sfx_2}
Symbol 6 Sound {sfx_1}
Symbol 7 BitmapUsed by:8
Symbol 8 GraphicUses:7Used by:9
Symbol 9 MovieClip {floor}Uses:8
Symbol 10 GraphicUsed by:11
Symbol 11 MovieClip {hole}Uses:10
Symbol 12 BitmapUsed by:13
Symbol 13 GraphicUses:12Used by:14
Symbol 14 MovieClip {exit}Uses:13
Symbol 15 BitmapUsed by:16
Symbol 16 GraphicUses:15Used by:17
Symbol 17 MovieClip {wall}Uses:16
Symbol 18 GraphicUsed by:19
Symbol 19 MovieClip {p_kwirk2}Uses:18
Symbol 20 BitmapUsed by:21
Symbol 21 GraphicUses:20Used by:36
Symbol 22 BitmapUsed by:23
Symbol 23 GraphicUses:22Used by:36
Symbol 24 BitmapUsed by:25
Symbol 25 GraphicUses:24Used by:36
Symbol 26 BitmapUsed by:27
Symbol 27 GraphicUses:26Used by:36
Symbol 28 BitmapUsed by:29
Symbol 29 GraphicUses:28Used by:36
Symbol 30 BitmapUsed by:31
Symbol 31 GraphicUses:30Used by:36
Symbol 32 BitmapUsed by:33
Symbol 33 GraphicUses:32Used by:36
Symbol 34 BitmapUsed by:35
Symbol 35 GraphicUses:34Used by:36
Symbol 36 MovieClip {p_kwirk}Uses:21 23 25 27 29 31 33 35
Symbol 37 GraphicUsed by:38
Symbol 38 MovieClip {m_blawars}Uses:37
Symbol 39 GraphicUsed by:45 53 60 62
Symbol 40 FontUsed by:41 42 43 44 46 47 48 49 50 51 52 68
Symbol 41 EditableTextUses:40Used by:45
Symbol 42 EditableTextUses:40Used by:45
Symbol 43 EditableTextUses:40Used by:45
Symbol 44 EditableTextUses:40Used by:45
Symbol 45 MovieClip {m_coursecomplete}Uses:39 41 42 43 44
Symbol 46 EditableTextUses:40Used by:53
Symbol 47 EditableTextUses:40Used by:53
Symbol 48 EditableTextUses:40Used by:53
Symbol 49 EditableTextUses:40Used by:53
Symbol 50 EditableTextUses:40Used by:53
Symbol 51 EditableTextUses:40Used by:53
Symbol 52 EditableTextUses:40Used by:53
Symbol 53 MovieClip {m_nextLevel}Uses:39 46 47 48 49 50 51 52
Symbol 54 FontUsed by:55 56 57 58 59 61 65 69 73 74 111
Symbol 55 EditableTextUses:54Used by:60
Symbol 56 EditableTextUses:54Used by:60
Symbol 57 EditableTextUses:54Used by:60
Symbol 58 EditableTextUses:54Used by:60
Symbol 59 EditableTextUses:54Used by:60
Symbol 60 MovieClip {m_floors}Uses:39 55 56 57 58 59
Symbol 61 EditableTextUses:54Used by:62
Symbol 62 MovieClip {m_courses}Uses:39 61
Symbol 63 BitmapUsed by:64
Symbol 64 GraphicUses:63Used by:66
Symbol 65 EditableTextUses:54Used by:66
Symbol 66 MovieClip {m_main}Uses:64 65
Symbol 67 GraphicUsed by:70
Symbol 68 EditableTextUses:40Used by:70
Symbol 69 EditableTextUses:54Used by:70
Symbol 70 MovieClip {m_controls}Uses:67 68 69
Symbol 71 BitmapUsed by:72
Symbol 72 GraphicUses:71Used by:75
Symbol 73 EditableTextUses:54Used by:75
Symbol 74 EditableTextUses:54Used by:75
Symbol 75 MovieClip {m_splash}Uses:72 73 74
Symbol 76 BitmapUsed by:77
Symbol 77 GraphicUses:76Used by:84
Symbol 78 BitmapUsed by:79
Symbol 79 GraphicUses:78Used by:84
Symbol 80 BitmapUsed by:81
Symbol 81 GraphicUses:80Used by:84
Symbol 82 BitmapUsed by:83
Symbol 83 GraphicUses:82Used by:84
Symbol 84 MovieClip {rb_0}Uses:77 79 81 83
Symbol 85 BitmapUsed by:86
Symbol 86 GraphicUses:85Used by:89
Symbol 87 BitmapUsed by:88
Symbol 88 GraphicUses:87Used by:89
Symbol 89 MovieClip {rb_2}Uses:86 88
Symbol 90 BitmapUsed by:91
Symbol 91 GraphicUses:90Used by:98
Symbol 92 BitmapUsed by:93
Symbol 93 GraphicUses:92Used by:98
Symbol 94 BitmapUsed by:95
Symbol 95 GraphicUses:94Used by:98
Symbol 96 BitmapUsed by:97
Symbol 97 GraphicUses:96Used by:98
Symbol 98 MovieClip {rb_3}Uses:91 93 95 97
Symbol 99 BitmapUsed by:100
Symbol 100 GraphicUses:99Used by:107
Symbol 101 BitmapUsed by:102
Symbol 102 GraphicUses:101Used by:107
Symbol 103 BitmapUsed by:104
Symbol 104 GraphicUses:103Used by:107
Symbol 105 BitmapUsed by:106
Symbol 106 GraphicUses:105Used by:107
Symbol 107 MovieClip {rb_1}Uses:100 102 104 106
Symbol 108 BitmapUsed by:109
Symbol 109 GraphicUses:108Used by:110
Symbol 110 MovieClip {rb_4}Uses:109
Symbol 111 EditableTextUses:54Used by:112
Symbol 112 MovieClip {menuText}Uses:111
Symbol 113 GraphicUsed by:114
Symbol 114 MovieClip {menuSelect}Uses:113

Instance Names

"t_course"Symbol 45 MovieClip {m_coursecomplete} Frame 1Symbol 41 EditableText
"t_floor"Symbol 53 MovieClip {m_nextLevel} Frame 1Symbol 46 EditableText
"t_steps"Symbol 53 MovieClip {m_nextLevel} Frame 1Symbol 50 EditableText
"t_time"Symbol 53 MovieClip {m_nextLevel} Frame 1Symbol 51 EditableText
"t_world"Symbol 53 MovieClip {m_nextLevel} Frame 1Symbol 52 EditableText
"t_course"Symbol 60 MovieClip {m_floors} Frame 1Symbol 56 EditableText
"t_steps"Symbol 60 MovieClip {m_floors} Frame 1Symbol 58 EditableText
"t_time"Symbol 60 MovieClip {m_floors} Frame 1Symbol 59 EditableText
"t_label"Symbol 112 MovieClip {menuText} Frame 1Symbol 111 EditableText

Special Tags

FileAttributes (69)Timeline Frame 1Access network only, Metadata not present, AS3.
Protect (24)Timeline Frame 10 bytes ""

Labels

"walk_up"Symbol 36 MovieClip {p_kwirk} Frame 1
"walk_down"Symbol 36 MovieClip {p_kwirk} Frame 9
"walk_left"Symbol 36 MovieClip {p_kwirk} Frame 17
"walk_right"Symbol 36 MovieClip {p_kwirk} Frame 25
"activate"Symbol 36 MovieClip {p_kwirk} Frame 33
"rot_0"Symbol 84 MovieClip {rb_0} Frame 1
"rot_90"Symbol 84 MovieClip {rb_0} Frame 2
"rot_180"Symbol 84 MovieClip {rb_0} Frame 3
"rot_270"Symbol 84 MovieClip {rb_0} Frame 4
"rot_0"Symbol 89 MovieClip {rb_2} Frame 1
"rot_90"Symbol 89 MovieClip {rb_2} Frame 2
"rot_180"Symbol 89 MovieClip {rb_2} Frame 3
"rot_270"Symbol 89 MovieClip {rb_2} Frame 4
"rot_0"Symbol 98 MovieClip {rb_3} Frame 1
"rot_90"Symbol 98 MovieClip {rb_3} Frame 2
"rot_180"Symbol 98 MovieClip {rb_3} Frame 3
"rot_270"Symbol 98 MovieClip {rb_3} Frame 4
"rot_0"Symbol 107 MovieClip {rb_1} Frame 1
"rot_90"Symbol 107 MovieClip {rb_1} Frame 2
"rot_180"Symbol 107 MovieClip {rb_1} Frame 3
"rot_270"Symbol 107 MovieClip {rb_1} Frame 4
"rot_0"Symbol 110 MovieClip {rb_4} Frame 1
"rot_90"Symbol 110 MovieClip {rb_4} Frame 2
"rot_180"Symbol 110 MovieClip {rb_4} Frame 3
"rot_270"Symbol 110 MovieClip {rb_4} Frame 4




http://swfchan.com/7/32154/info.shtml
Created: 18/5 -2019 05:13:23 Last modified: 18/5 -2019 05:13:23 Server time: 22/12 -2024 12:05:43