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

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

bimmin.swf

This is the info page for
Flash #113434

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


Text

x2

x2

x2

x2

500

500

500

500

<p align="left"><font face="Joystix" size="18" color="#ffffff" letterSpacing="0.000000" kerning="1"><b></b></font></p>

<p align="center"><font face="Joystix" size="16" color="#ffffff" letterSpacing="2.000000" kerning="1"><b>00000000000</b></font></p>

<p align="right"><font face="Joystix" size="16" color="#ffffff" letterSpacing="2.000000" kerning="1"><b>000000 m.</b></font></p>

press SPACE to jump

Copyright © 2009 Hard-Circle Inc.

Hold a tick...

Connecting to API...

Initializing...

<p align="center"><font face="Joystix" size="16" color="#ffffff" letterSpacing="2.000000" kerning="1"><b>00000000000</b></font></p>

<p align="right"><font face="Joystix" size="16" color="#ffffff" letterSpacing="2.000000" kerning="1"><b>000000 m.</b></font></p>

Your Best:

Score:

<p align="left"><font face="Joystix" size="16" color="#ffffff" letterSpacing="0.000000" kerning="1"><b>1000</b></font></p>

<p align="left"><font face="Joystix" size="16" color="#ffffff" letterSpacing="0.000000" kerning="1"><b>150000</b></font></p>

Distance:

ActionScript [AS3]

Section 1
//Background (Bimmin.Background) package Bimmin { import flash.display.*; import flash.geom.*; public class Background extends Sprite { private var front_tree:Sprite; private var mountains:Sprite; private var clouds:Sprite; private var bush:Sprite; private var back_tree:Sprite; public function Background(){ var _local1:bg_layer_5; var _local2:bg_layer_4; var _local3:bg_layer_3; var _local4:bg_layer_2; var _local5:bg_layer_1; bush = new Sprite(); front_tree = new Sprite(); back_tree = new Sprite(); mountains = new Sprite(); clouds = new Sprite(); super(); _local1 = new bg_layer_5(); clouds.addChild(_local1); _local2 = new bg_layer_4(); mountains.addChild(_local2); _local3 = new bg_layer_3(); back_tree.addChild(_local3); _local4 = new bg_layer_2(); front_tree.addChild(_local4); _local5 = new bg_layer_1(); bush.addChild(_local5); this.addChild(clouds); this.addChild(mountains); this.addChild(back_tree); this.addChild(front_tree); this.addChild(bush); } public function updateBackground(_arg1:Number):void{ var _local2:int; var _local3:*; var _local4:Point; var _local5:bg_layer_1; var _local6:bg_layer_2; var _local7:bg_layer_3; var _local8:bg_layer_5; bush.x = (bush.x - _arg1); front_tree.x = (front_tree.x - ((_arg1 / 4) * 3)); back_tree.x = (back_tree.x - ((_arg1 / 4) * 2)); clouds.x = (clouds.x - (_arg1 / 4)); _local2 = (bush.numChildren - 1); while (_local2 > -1) { _local3 = bush.getChildAt(_local2); _local4 = new Point(_local3.x, _local3.y); _local4 = bush.localToGlobal(_local4); if ((((_local4.x < 0)) && (!(_local3.ignoreNow)))){ _local3.ignoreNow = true; _local5 = new bg_layer_1(); _local5.x = (_local3.x + _local3.width); bush.addChild(_local5); }; if ((_local4.x + _local3.width) < 0){ bush.removeChild(_local3); }; _local2--; }; _local2 = (front_tree.numChildren - 1); while (_local2 > -1) { _local3 = front_tree.getChildAt(_local2); _local4 = new Point(_local3.x, _local3.y); _local4 = front_tree.localToGlobal(_local4); if ((((_local4.x < 0)) && (!(_local3.ignoreNow)))){ _local3.ignoreNow = true; _local6 = new bg_layer_2(); _local6.x = (_local3.x + _local3.width); front_tree.addChild(_local6); }; if ((_local4.x + _local3.width) < 0){ front_tree.removeChild(_local3); }; _local2--; }; _local2 = (back_tree.numChildren - 1); while (_local2 > -1) { _local3 = back_tree.getChildAt(_local2); _local4 = new Point(_local3.x, _local3.y); _local4 = back_tree.localToGlobal(_local4); if ((((_local4.x < 0)) && (!(_local3.ignoreNow)))){ _local3.ignoreNow = true; _local7 = new bg_layer_3(); _local7.x = (_local3.x + _local3.width); back_tree.addChild(_local7); }; if ((_local4.x + _local3.width) < 0){ back_tree.removeChild(_local3); }; _local2--; }; _local2 = (clouds.numChildren - 1); while (_local2 > -1) { _local3 = clouds.getChildAt(_local2); _local4 = new Point(_local3.x, _local3.y); _local4 = clouds.localToGlobal(_local4); if ((((_local4.x < 0)) && (!(_local3.ignoreNow)))){ _local3.ignoreNow = true; _local8 = new bg_layer_5(); _local8.x = (_local3.x + _local3.width); clouds.addChild(_local8); }; if ((_local4.x + _local3.width) < 0){ clouds.removeChild(_local3); }; _local2--; }; } } }//package Bimmin
Section 2
//KeyObject (Bimmin.KeyObject) package Bimmin { public class KeyObject { public static const KEY_LEFT:uint = 37; public static const KEY_ESC:uint = 27; public static const KEY_Space:uint = 32; public static const KEY_UP:uint = 38; public static const KEY_1:uint = 49; public static const KEY_2:uint = 50; public static const KEY_3:uint = 51; public static const KEY_4:uint = 52; public static const KEY_5:uint = 53; public static const KEY_DOWN:uint = 40; public static const KEY_A:uint = 65; public static const KEY_D:uint = 68; public static const KEY_J:uint = 74; public static const KEY_K:uint = 75; public static const KEY_L:uint = 76; public static const KEY_Q:uint = 81; public static const KEY_R:uint = 82; public static const KEY_S:uint = 83; public static const KEY_Z:uint = 90; public static const KEY_SHIFT:uint = 16; public static const KEY_W:uint = 87; public static const KEY_RIGHT:uint = 39; public static var DOWN_W:Boolean; public static var DOWN_Shift:Boolean; public static var DOWN_Space:Boolean; public static var DOWN_Right:Boolean; public static var DOWN_Left:Boolean; public static var DOWN_Mouse:Boolean; public static var DOWN_ESC:Boolean; public static var DOWN_Down:Boolean; public static var DOWN_1:Boolean; public static var DOWN_2:Boolean; public static var DOWN_3:Boolean; public static var DOWN_4:Boolean; public static var DOWN_5:Boolean; public static var DOWN_A:Boolean; public static var DOWN_D:Boolean; public static var DOWN_J:Boolean; public static var DOWN_K:Boolean; public static var DOWN_L:Boolean; public static var DOWN_Q:Boolean; public static var DOWN_R:Boolean; public static var DOWN_S:Boolean; public static var DOWN_Up:Boolean; public static var DOWN_Z:Boolean; public static function initAll(){ DOWN_1 = false; DOWN_2 = false; DOWN_3 = false; DOWN_4 = false; DOWN_5 = false; DOWN_A = false; DOWN_D = false; DOWN_J = false; DOWN_K = false; DOWN_L = false; DOWN_Q = false; DOWN_R = false; DOWN_S = false; DOWN_W = false; DOWN_Z = false; DOWN_Space = false; DOWN_ESC = false; DOWN_Mouse = false; DOWN_Up = false; DOWN_Right = false; DOWN_Left = false; DOWN_Down = false; DOWN_Shift = false; } } }//package Bimmin
Section 3
//Main (Bimmin.Main) package Bimmin { import flash.events.*; import flash.display.*; import mochi.as3.*; import flash.utils.*; import SWFStats.*; import flash.text.*; import flash.geom.*; import flash.ui.*; public class Main extends MovieClip { private const STAGE_WIDTH_OVER_2:int = 360; private const SCREEN_ADVANCMENT_LIMIT:int = 540; private const NUMBER_OF_SECTIONS:int = 35; private const SCREEN_QUARTERS:int = 180; private var GameOver:Boolean;// = false private var sectionDict:Dictionary; public var retry_btn:MovieClip; private var lastTime:Number; private var mymask:GameMask; private var score:Number;// = 0 private var rex:Rex; public var text_distance:TextField; public var play_btn:MovieClip; private var gamelevel:Sprite; public var dist_best:TextField; private var player:Player; private var horizontalChange:Number; public var text_score:TextField; private var shakeScreen:Boolean;// = false private var background:Background; private var terrain:Sprite; public var credits_btn:MovieClip; private var timer:Timer; public var info_btn:MovieClip; public var _mochiads_game_id:String; public var spon_link:MovieClip; public var audio_tog:MovieClip; public var score_best:TextField; private var lastDistanceRan:Number; public var submit_btn:MovieClip; private var verticleChange:Number; private var meatCollected:int;// = 0 private var multiplier:int;// = 0 private var DistanceRan:Number; private var gameState:String; public var audio:String;// = "on" public var sndMgr:SoundManager; private var myGUI:UI; public function Main(){ var _local1:ContextMenu; var _local2:ContextMenuItem; var _local3:ContextMenuItem; var _local4:ContextMenuItem; var _local5:ContextMenuItem; var _local6:ContextMenuItem; var _local7:ContextMenuItem; shakeScreen = false; audio = "on"; score = 0; meatCollected = 0; multiplier = 0; GameOver = false; super(); addFrameScript(0, frame1, 1, frame2, 80, frame81, 90, frame91, 100, frame101, 110, frame111); _local1 = new ContextMenu(); _local2 = new ContextMenuItem("Copyright © hardcircle.com"); _local3 = new ContextMenuItem("Artists:"); _local4 = new ContextMenuItem(" Bret Measor"); _local5 = new ContextMenuItem(" Michael Opada"); _local6 = new ContextMenuItem("Programmer:"); _local7 = new ContextMenuItem("Jeffrey Feenstra"); _local1.hideBuiltInItems(); _local3.separatorBefore = true; _local6.separatorBefore = true; _local4.enabled = false; _local5.enabled = false; _local7.enabled = false; _local1.customItems.push(_local2); _local1.customItems.push(_local3); _local1.customItems.push(_local4); _local1.customItems.push(_local5); _local1.customItems.push(_local6); _local1.customItems.push(_local7); this.contextMenu = _local1; sndMgr = SoundManager.getInstance(); sndMgr.addLibrarySound(sfx_Chomp, "Chomp"); sndMgr.addLibrarySound(sfx_Fruit, "Fruit"); sndMgr.addLibrarySound(sfx_GameOver, "Game Over"); sndMgr.addLibrarySound(sfx_Hit, "Hit"); sndMgr.addLibrarySound(sfx_Jump, "Jump"); sndMgr.addLibrarySound(JungleRomp, "BGM"); sndMgr.addLibrarySound(sfx_Press, "Press"); sndMgr.addLibrarySound(sfx_aStomp, "Stomp"); sndMgr.addLibrarySound(sfx_extraLife, "Multi"); root["audio_tog"].stop(); root["audio_tog"].buttonMode = true; root["audio_tog"].addEventListener(MouseEvent.MOUSE_DOWN, Mute); Tracker.Initialise(loaderInfo.loaderURL); } private function keyPressedDown(_arg1:KeyboardEvent):void{ switch (_arg1.keyCode){ case KeyObject.KEY_W: case KeyObject.KEY_Space: case KeyObject.KEY_UP: case KeyObject.KEY_J: KeyObject.DOWN_Space = true; break; }; } private function RandomRange(_arg1:Number, _arg2:Number){ var _local3:Number; _local3 = ((Math.random() * (_arg2 - _arg1)) + _arg1); return (_local3); } private function MainLoop(_arg1:TimerEvent):void{ var _local2:Number; _local2 = (getTimer() - lastTime); if ((((_local2 > 0)) && ((gameState == "Play")))){ lastTime = getTimer(); if ((_arg1.currentTarget.currentCount % 10) == 0){ DistanceRan = (DistanceRan + (player.xSpeed / 10)); }; if ((DistanceRan - lastDistanceRan) >= 1){ score = (score + (10 * multiplier)); lastDistanceRan = DistanceRan; }; myGUI.score_text.text = String(score); myGUI.dist_text.text = String(((Math.round((DistanceRan * 10)) / 10) + " m.")); myGUI.multi_text.text = String(("x" + multiplier)); if ((_arg1.currentTarget.currentCount % 15) == 0){ player.xSpeed = (player.xSpeed + 0.75); if (player.x < SCREEN_ADVANCMENT_LIMIT){ player.x = (player.x + 1.5); }; }; if ((_arg1.currentTarget.currentCount % 10) == 0){ if (shakeScreen){ if ((((gamelevel.x == 0)) || ((gamelevel.y == 0)))){ gamelevel.x = 3.5; gamelevel.y = 3.5; } else { gamelevel.x = 0; gamelevel.y = 0; }; sndMgr.playSound("Stomp", 0.1); }; }; updatePlayer(); updateRex(); checkTerrainSlide(); background.updateBackground(player.xSpeed); }; if (GameOver){ GameCleanUp(); }; } public function addedToStage(_arg1:Event=null):void{ this.removeEventListener(Event.ADDED_TO_STAGE, addedToStage); launchApp(); } private function checkVerticalCollision(_arg1:Number, _arg2:Number):Number{ var _local3:Number; _local3 = _arg2; while (terrain.hitTestPoint(_arg1, _local3, true)) { _local3 = (_local3 - 0.3); player.jumping = false; player.jumpHeight = 0; player.newAnim = String((("run" + "_") + player.speedMod)); if ((_arg2 - _local3) >= 50){ _local3 = _arg2; break; }; }; return (_local3); } private function keyPressRelease(_arg1:KeyboardEvent):void{ switch (_arg1.keyCode){ case KeyObject.KEY_W: case KeyObject.KEY_Space: case KeyObject.KEY_UP: case KeyObject.KEY_J: KeyObject.DOWN_Space = false; player.jumpPower = 0; player.jumping = true; break; }; } private function Mute(_arg1:MouseEvent):void{ if (audio == "on"){ audio = "off"; sndMgr.muteAllSounds(); sndMgr.disableSound(); } else { if (audio == "off"){ audio = "on"; sndMgr.unmuteAllSounds(); sndMgr.enableSound(); }; }; root["audio_tog"].gotoAndStop(audio); } private function GameCleanUp():void{ var box:Shape; var bcount:int; var blur:Function; blur = function (_arg1:Event){ bcount++; if (bcount == 1){ bcount = 0; box.alpha = (box.alpha + 0.1); }; if (box.alpha >= 1){ box.removeEventListener(Event.ENTER_FRAME, blur); gamelevel.removeChild(box); removeChild(gamelevel); removeChild(myGUI); gotoAndStop("gameover"); }; }; timer.removeEventListener(TimerEvent.TIMER, MainLoop); stage.removeEventListener(KeyboardEvent.KEY_DOWN, keyPressedDown); stage.removeEventListener(KeyboardEvent.KEY_UP, keyPressRelease); sndMgr.stopAllSounds(); sndMgr.playSound("Game Over", 0.5, 0, 999); box = new Shape(); box.graphics.beginFill(0, 1); box.graphics.drawRect(0, 0, stage.stageWidth, stage.stageHeight); box.graphics.endFill(); box.alpha = 0; gamelevel.addChild(box); box.addEventListener(Event.ENTER_FRAME, blur); bcount = 0; } function frame1(){ spon_link.buttonMode = true; MochiServices.addLinkEvent("http://x.mochiads.com/link/e2e00a333ff6ace0", "http://bored.com/", spon_link); if (this.stage){ this.addedToStage(); } else { stop(); this.addEventListener(Event.ADDED_TO_STAGE, addedToStage); return; }; } function frame2(){ _mochiads_game_id = "5a986f1ef76c2110"; connectServices(); } private function checkTerrainSlide():void{ var _local1:int; var _local2:*; var _local3:Point; var _local4:*; var _local5:Sprite; var _local6:int; var _local7:*; var _local8:Collectable; _local1 = (terrain.numChildren - 1); while (_local1 > -1) { _local2 = terrain.getChildAt(_local1); _local3 = new Point(_local2.x, _local2.y); _local3 = terrain.localToGlobal(_local3); if ((((_local3.x < 0)) && (!(_local2.ignoreNow)))){ _local2.ignoreNow = true; _local4 = sectionDict[String(Math.floor(RandomRange(1, (NUMBER_OF_SECTIONS + 1))))]; _local5 = new (_local4); _local5.x = (_local2.x + _local2.width); _local5.y = 310; _local6 = (_local5.numChildren - 1); while (_local6 > -1) { _local7 = _local5.getChildAt(_local6); if ((_local7 is Node)){ _local8 = new Collectable(); if (Math.floor(RandomRange(1, 4)) == 3){ _local8.gotoAndStop("meat"); } else { _local8.gotoAndStop("apple"); }; _local8.x = _local7.x; _local8.y = _local7.y; _local5.addChild(_local8); }; _local6--; }; terrain.addChild(_local5); }; if ((_local3.x + _local2.width) < 0){ terrain.removeChild(_local2); }; _local1--; }; } public function spaceToStart(_arg1:KeyboardEvent):void{ if (_arg1.keyCode == KeyObject.KEY_Space){ stage.removeEventListener(KeyboardEvent.KEY_DOWN, spaceToStart); sndMgr.playSound("Press"); PlayGame(); }; } private function addSectionToDict(_arg1, _arg2:String):void{ sectionDict[_arg2] = _arg1; } private function submitPlayerScore(_arg1:MouseEvent):void{ var o:Object; var boardID:String; var e = _arg1; o = {n:[1, 13, 11, 9, 3, 11, 8, 11, 15, 13, 12, 5, 5, 12, 5, 8], f:function (_arg1:Number, _arg2:String):String{ if (_arg2.length == 16){ return (_arg2); }; return (this.f((_arg1 + 1), (_arg2 + this.n[_arg1].toString(16)))); }}; boardID = o.f(0, ""); MochiScores.showLeaderboard({boardID:boardID, score:score}); } private function showCredits(_arg1:MouseEvent):void{ var _local2:credits_menu; _local2 = new credits_menu(); addChild(_local2); } public function buttonOverState(_arg1:MouseEvent):void{ _arg1.currentTarget.gotoAndStop("over"); } public function realizeGameOver():void{ var _local1:Number; var _local2:Number; root["text_score"].text = score; root["text_distance"].text = String(((Math.round((DistanceRan * 10)) / 10) + " m")); _local1 = SaveController.Load("score"); _local2 = SaveController.Load("distance"); if (score > _local1){ SaveController.Save("score", score); }; if (DistanceRan > _local2){ SaveController.Save("distance", (Math.round((DistanceRan * 10)) / 10)); }; root["score_best"].text = SaveController.Load("score"); root["dist_best"].text = String((SaveController.Load("distance") + " M")); stage.addEventListener(KeyboardEvent.KEY_DOWN, spaceToStart); root["retry_btn"].buttonMode = true; root["retry_btn"].addEventListener(MouseEvent.MOUSE_OUT, buttonOutState); root["retry_btn"].addEventListener(MouseEvent.MOUSE_OVER, buttonOverState); root["retry_btn"].addEventListener(MouseEvent.MOUSE_DOWN, clickToStart); root["submit_btn"].buttonMode = true; root["submit_btn"].addEventListener(MouseEvent.MOUSE_OUT, buttonOutState); root["submit_btn"].addEventListener(MouseEvent.MOUSE_OVER, buttonOverState); root["submit_btn"].addEventListener(MouseEvent.MOUSE_DOWN, submitPlayerScore); } private function updatePlayer():void{ var _local1:Number; var _local2:Number; if (player.xSpeed >= 14){ player.xSpeed = 14; }; if ((((player.xSpeed == 14)) && ((((player.currentAnim == "run_x1")) || ((player.currentAnim == "run_x2")))))){ player.player_dust.visible = true; } else { player.player_dust.visible = false; }; if (((((KeyObject.DOWN_Space) && (!(player.jumping)))) && (!((player.currentLabel == "stumble"))))){ if (player.jumpPower <= 20){ if (player.jumpPower < 15){ player.jumpPower = 15; } else { player.jumpPower = (player.jumpPower + 3); }; if (player.jumpPower > 20){ player.jumpPower = 0; player.jumping = true; }; }; if (player.jumpPower > 0){ player.jumpHeight = player.jumpPower; player.newAnim = String((("jump" + "_") + player.speedMod)); }; }; if (player.jumping){ if (player.jumpHeight > 0){ player.jumpHeight = (player.jumpHeight - 1); }; }; player.ySpeed = ((player.y + 8) - player.jumpHeight); _local1 = player.x; _local2 = player.ySpeed; checkHorizontalCollision(player.x, player.y); _local2 = checkVerticalCollision(_local1, _local2); _local1 = checkVerticalWalls(_local1, _local2); updateTerrainPosition(player.xSpeed, 0); player.x = _local1; player.y = _local2; if (player.currentLabel == "stumble"){ player.x = (player.x - 3); }; if (player.x < 180){ rex.eatPlayer = true; }; if (player.y > 335){ sndMgr.playSound("Game Over"); GameOver = true; }; player.updateAnimation(player.newAnim); } private function updateRex():void{ var _local1:Number; _local1 = (player.x - 180); rex.x = (-(_local1) - 100); if (_local1 < 60){ shakeScreen = true; } else { shakeScreen = false; }; if (player.currentLabel == "stumble"){ rex.gotoAndStop("gape"); } else { rex.gotoAndStop(1); }; if (rex.eatPlayer){ rex.y = player.y; player.x = (player.x - 40); rex.gotoAndPlay(1); sndMgr.playSound("Chomp"); GameOver = true; }; } function frame81(){ initialize(); } public function checkLoaded(_arg1:ProgressEvent):void{ var _local2:Number; _local2 = Math.ceil(((_arg1.bytesLoaded / _arg1.bytesTotal) * 100)); if (_local2 >= 100){ gotoAndPlay("connect"); }; } public function buttonOutState(_arg1:MouseEvent):void{ _arg1.currentTarget.gotoAndStop("up"); } function frame91(){ realizeMainMenu(); } private function checkHorizontalCollision(_arg1, _arg2):void{ var PlayerHitObject:Function; var i:int; var section:*; var ix:int; var temp:*; var p:Point; var m:int; var co:*; var po:Point; var xVal = _arg1; var yVal = _arg2; PlayerHitObject = function (_arg1:Event){ _arg1.target.rotation = (_arg1.target.rotation - 20); _arg1.target.x = (_arg1.target.x - 7); _arg1.target.y = (_arg1.target.y + 4); if (_arg1.target.x < 0){ _arg1.target.removeEventListener(Event.ENTER_FRAME, PlayerHitObject); m = (gamelevel.numChildren - 1); while (m > -1) { if (gamelevel.getChildAt(m) == _arg1.target){ gamelevel.removeChild(gamelevel.getChildAt(m)); }; m--; }; }; }; if (terrain.hitTestPoint(xVal, yVal, true)){ i = (terrain.numChildren - 1); while (i > -1) { section = terrain.getChildAt(i); ix = (section.numChildren - 1); while (ix > -1) { if ((section.getChildAt(ix) is Mushroom_L)){ if (player.hitTestObject(section.getChildAt(ix))){ player.updateAnimation("stumble"); player.hitObject = true; sndMgr.playSound("Hit"); temp = section.getChildAt(ix); section.removeChild(temp); p = new Point(temp.x, temp.y); p = section.localToGlobal(p); temp.x = p.x; temp.y = p.y; gamelevel.addChild(temp); player.xSpeed = (player.xSpeed - 5); player.speedMod = "x1"; meatCollected = 0; multiplier = 1; myGUI.multi.gotoAndStop((meatCollected + 1)); if (player.xSpeed < 2){ player.xSpeed = 2; }; temp.num = gamelevel.getChildIndex(temp); temp.addEventListener(Event.ENTER_FRAME, PlayerHitObject); break; }; }; if ((section.getChildAt(ix) is Mushroom_M)){ if (player.hitTestObject(section.getChildAt(ix))){ player.updateAnimation("stumble"); player.hitObject = true; sndMgr.playSound("Hit"); temp = section.getChildAt(ix); section.removeChild(temp); p = new Point(temp.x, temp.y); p = section.localToGlobal(p); temp.x = p.x; temp.y = p.y; gamelevel.addChild(temp); player.xSpeed = (player.xSpeed - 5); player.speedMod = "x1"; multiplier = 1; meatCollected = 0; myGUI.multi.gotoAndStop((meatCollected + 1)); if (player.xSpeed < 2){ player.xSpeed = 2; }; temp.num = gamelevel.getChildIndex(temp); temp.addEventListener(Event.ENTER_FRAME, PlayerHitObject); break; }; }; if ((section.getChildAt(ix) is Rock)){ if (player.hitTestObject(section.getChildAt(ix))){ player.updateAnimation("stumble"); player.hitObject = true; sndMgr.playSound("Hit"); temp = section.getChildAt(ix); section.removeChild(temp); p = new Point(temp.x, temp.y); p = section.localToGlobal(p); temp.x = p.x; temp.y = p.y; gamelevel.addChild(temp); player.xSpeed = (player.xSpeed - 5); player.speedMod = "x1"; multiplier = 1; meatCollected = 0; myGUI.multi.gotoAndStop((meatCollected + 1)); if (player.xSpeed < 2){ player.xSpeed = 2; }; temp.num = gamelevel.getChildIndex(temp); temp.addEventListener(Event.ENTER_FRAME, PlayerHitObject); break; }; }; if ((section.getChildAt(ix) is Stump)){ if (player.hitTestObject(section.getChildAt(ix))){ player.updateAnimation("stumble"); player.hitObject = true; sndMgr.playSound("Hit"); temp = section.getChildAt(ix); section.removeChild(temp); p = new Point(temp.x, temp.y); p = section.localToGlobal(p); temp.x = p.x; temp.y = p.y; gamelevel.addChild(temp); player.xSpeed = (player.xSpeed - 5); player.speedMod = "x1"; multiplier = 1; meatCollected = 0; myGUI.multi.gotoAndStop((meatCollected + 1)); if (player.xSpeed < 2){ player.xSpeed = 2; }; temp.num = gamelevel.getChildIndex(temp); temp.addEventListener(Event.ENTER_FRAME, PlayerHitObject); break; }; }; ix = (ix - 1); }; i = (i - 1); }; }; i = (terrain.numChildren - 1); while (i > -1) { section = terrain.getChildAt(i); ix = (section.numChildren - 1); while (ix > -1) { co = section.getChildAt(ix); if ((co is Collectable)){ if (player.hitTestObject(co)){ po = new Point(co.x, co.y); po = section.localToGlobal(po); co.x = po.x; co.y = po.y; gamelevel.addChild(co); co.play(); if (co.currentLabel == "apple"){ score = (score + (500 * multiplier)); sndMgr.playSound("Fruit", 0.25, 500); }; if (co.currentLabel == "meat"){ meatCollected++; sndMgr.playSound("Fruit", 0.25, 500); if ((((meatCollected == 3)) && ((multiplier == 1)))){ player.speedMod = "x2"; multiplier = 2; meatCollected = 0; sndMgr.playSound("Multi", 0.5); } else { if ((((meatCollected == 3)) && ((multiplier == 2)))){ player.speedMod = "x2"; multiplier = 3; meatCollected = 0; sndMgr.playSound("Multi", 0.5); } else { if ((((meatCollected == 3)) && ((multiplier == 3)))){ player.speedMod = "x2"; multiplier = 4; meatCollected = 0; sndMgr.playSound("Multi", 0.5); } else { if ((((meatCollected == 3)) && ((multiplier == 4)))){ player.speedMod = "x2"; multiplier = 5; meatCollected = 0; sndMgr.playSound("Multi", 0.5); } else { if ((((meatCollected == 3)) && ((multiplier == 5)))){ player.speedMod = "x2"; multiplier = 6; meatCollected = 0; sndMgr.playSound("Multi", 0.5); } else { if ((((meatCollected == 3)) && ((multiplier == 6)))){ player.speedMod = "x2"; multiplier = 7; meatCollected = 0; sndMgr.playSound("Multi", 0.5); } else { if ((((meatCollected == 3)) && ((multiplier == 7)))){ player.speedMod = "x2"; multiplier = 8; meatCollected = 0; sndMgr.playSound("Multi", 0.5); } else { if ((((meatCollected == 3)) && ((multiplier == 8)))){ player.speedMod = "x2"; multiplier = 9; meatCollected = 0; sndMgr.playSound("Multi", 0.5); } else { if ((((meatCollected == 3)) && ((multiplier == 9)))){ player.speedMod = "x2"; multiplier = 10; meatCollected = 0; sndMgr.playSound("Multi", 0.5); }; }; }; }; }; }; }; }; }; myGUI.multi.gotoAndStop((meatCollected + 1)); }; }; }; ix = (ix - 1); }; i = (i - 1); }; } public function StartGame():void{ var t:terrain_1; var box:Shape; var bcount:int; var blur:Function; blur = function (_arg1:Event){ bcount++; if (bcount == 1){ bcount = 0; box.alpha = (box.alpha - 0.2); }; if (box.alpha <= 0){ box.removeEventListener(Event.ENTER_FRAME, blur); gamelevel.removeChild(box); }; }; sndMgr.stopAllSounds(); sndMgr.playSound("BGM", 0.5, 0, 999); KeyObject.initAll(); DistanceRan = 0; lastDistanceRan = 0; score = 0; meatCollected = 0; multiplier = 1; shakeScreen = false; mymask = new GameMask(); mymask.x = 5; mymask.y = 5; addChild(mymask); gamelevel = new Sprite(); terrain = new Sprite(); addChild(gamelevel); gamelevel.mask = mymask; background = new Background(); gamelevel.addChild(background); gamelevel.addChild(terrain); t = new terrain_1(); t.x = 0; t.y = 310; terrain.addChild(t); player = new Player(); player.x = 210; player.y = 270; player.xSpeed = 2; player.ySpeed = 0; player.jumpHeight = 0; player.jumpPower = 0; player.jumping = false; player.hitObject = false; player.currentAnim = "none"; player.newAnim = "none"; rex = new Rex(); rex.eatPlayer = false; rex.y = (player.y - 60); rex.x = -100; gamelevel.addChild(player); gamelevel.addChild(rex); horizontalChange = player.xSpeed; myGUI = new UI(); myGUI.score_text.text = String(score); myGUI.dist_text.text = String((DistanceRan + " m.")); myGUI.multi.stop(); addChild(myGUI); stage.addEventListener(KeyboardEvent.KEY_DOWN, keyPressedDown); stage.addEventListener(KeyboardEvent.KEY_UP, keyPressRelease); gameState = "Play"; GameOver = false; lastTime = getTimer(); timer = new Timer(20); timer.addEventListener(TimerEvent.TIMER, MainLoop); timer.start(); box = new Shape(); box.graphics.beginFill(19999, 1); box.graphics.drawRect(0, 0, stage.stageWidth, stage.stageHeight); box.graphics.endFill(); box.alpha = 1; gamelevel.addChild(box); box.addEventListener(Event.ENTER_FRAME, blur); bcount = 0; } private function showInfo(_arg1:MouseEvent):void{ var _local2:info_menu; _local2 = new info_menu(); addChild(_local2); } function frame101(){ StartGame(); } public function PlayGame():void{ stage.focus = stage; gotoAndStop("gameplay"); Tracker.LogPlay(); } public function launchApp():void{ play(); } public function connectServices():void{ var _local1:MovieClip; _local1 = new MovieClip(); stage.addChild(_local1); MochiServices.connect("5a986f1ef76c2110", _local1); } private function updateTerrainPosition(_arg1:Number, _arg2:Number):void{ terrain.x = (terrain.x - _arg1); terrain.y = (terrain.y + _arg2); } function frame111(){ realizeGameOver(); } public function initialize():void{ KeyObject.initAll(); sectionDict = new Dictionary(); addSectionToDict(terrain_1, "1"); addSectionToDict(terrain_2, "2"); addSectionToDict(terrain_3, "3"); addSectionToDict(terrain_4, "4"); addSectionToDict(terrain_5, "5"); addSectionToDict(terrain_6, "6"); addSectionToDict(terrain_7, "7"); addSectionToDict(terrain_8, "8"); addSectionToDict(terrain_9, "9"); addSectionToDict(terrain_10, "10"); addSectionToDict(terrain_11, "11"); addSectionToDict(terrain_12, "12"); addSectionToDict(terrain_13, "13"); addSectionToDict(terrain_14, "14"); addSectionToDict(terrain_15, "15"); addSectionToDict(terrain_16, "16"); addSectionToDict(terrain_17, "17"); addSectionToDict(terrain_18, "18"); addSectionToDict(terrain_19, "19"); addSectionToDict(terrain_20, "20"); addSectionToDict(terrain_21, "21"); addSectionToDict(terrain_22, "22"); addSectionToDict(terrain_23, "23"); addSectionToDict(terrain_24, "24"); addSectionToDict(terrain_25, "25"); addSectionToDict(terrain_26, "26"); addSectionToDict(terrain_27, "27"); addSectionToDict(terrain_28, "28"); addSectionToDict(terrain_29, "29"); addSectionToDict(terrain_30, "30"); addSectionToDict(terrain_31, "31"); addSectionToDict(terrain_32, "32"); addSectionToDict(terrain_33, "33"); addSectionToDict(terrain_34, "34"); addSectionToDict(terrain_35, "35"); Tracker.LogView(); } public function realizeMainMenu():void{ stop(); sndMgr.playSound("Game Over", 0.5, 0, 999); root["play_btn"].buttonMode = true; root["play_btn"].addEventListener(MouseEvent.MOUSE_DOWN, clickToStart); root["play_btn"].addEventListener(MouseEvent.MOUSE_OVER, buttonOverState); root["play_btn"].addEventListener(MouseEvent.MOUSE_OUT, buttonOutState); root["info_btn"].buttonMode = true; root["info_btn"].addEventListener(MouseEvent.MOUSE_DOWN, showInfo); root["info_btn"].addEventListener(MouseEvent.MOUSE_OVER, buttonOverState); root["info_btn"].addEventListener(MouseEvent.MOUSE_OUT, buttonOutState); root["credits_btn"].addEventListener(MouseEvent.MOUSE_DOWN, showCredits); root["credits_btn"].addEventListener(MouseEvent.MOUSE_OVER, buttonOverState); root["credits_btn"].addEventListener(MouseEvent.MOUSE_OUT, buttonOutState); } private function checkVerticalWalls(_arg1:Number, _arg2:Number):Number{ while (terrain.hitTestPoint(_arg1, _arg2, true)) { _arg1 = (_arg1 - 0.1); }; return (_arg1); } public function clickToStart(_arg1:MouseEvent):void{ if (this.currentLabel == "gameover"){ stage.removeEventListener(KeyboardEvent.KEY_DOWN, spaceToStart); }; sndMgr.playSound("Press"); PlayGame(); } } }//package Bimmin
Section 4
//Player (Bimmin.Player) package Bimmin { import flash.display.*; public class Player extends MovieClip { public var jumpHeight:Number;// = 0 public var jumping:Boolean;// = false public var currentAnim:String;// = "none" public var speedMod:String;// = "x1" public var player_dust:MovieClip; public var ySpeed:Number;// = 0 public var jumpPower:Number;// = 0 public var xSpeed:Number;// = 2 public var hitObject:Boolean;// = false public var newAnim:String;// = "none" public function Player(){ xSpeed = 2; ySpeed = 0; jumping = false; jumpPower = 0; jumpHeight = 0; hitObject = false; newAnim = "none"; currentAnim = "none"; speedMod = "x1"; super(); addFrameScript(15, frame16, 28, frame29, 29, frame30, 45, frame46, 82, frame83, 97, frame98, 98, frame99, 119, frame120, 120, frame121, 156, frame157); } function frame157(){ gotoAndPlay("jump_x4_loop"); } function frame46(){ gotoAndPlay("jump_loop"); } function frame98(){ gotoAndPlay("run_x4_loop"); } function frame16(){ gotoAndPlay("idle"); } function frame29(){ gotoAndPlay("run_x1"); } function frame83(){ gotoAndPlay("run_x2_loop"); } function frame30(){ MovieClip(root).sndMgr.playSound("Jump", 0.25); } function frame99(){ MovieClip(root).sndMgr.playSound("Jump", 0.25); } function frame120(){ gotoAndPlay("jump_x2_loop"); } public function updateAnimation(_arg1:String):void{ if (this.currentLabel == "stumble"){ return; }; if (_arg1 != currentAnim){ this.gotoAndPlay(_arg1); currentAnim = _arg1; }; } function frame121(){ MovieClip(root).sndMgr.playSound("Jump", 0.25); } } }//package Bimmin
Section 5
//SaveController (Bimmin.SaveController) package Bimmin { import flash.net.*; public class SaveController { public static function Save(_arg1:String, _arg2:Number):void{ var _local3:SharedObject; _local3 = SharedObject.getLocal("beta1"); _local3.data[_arg1] = _arg2; _local3.flush(); } public static function Load(_arg1:String):Number{ var _local2:SharedObject; _local2 = SharedObject.getLocal("beta1"); if (_local2.data[_arg1] == undefined){ return (0); }; return (_local2.data[_arg1]); } } }//package Bimmin
Section 6
//SoundManager (Bimmin.SoundManager) package Bimmin { import flash.media.*; import flash.events.*; import flash.utils.*; public class SoundManager { private var _sounds:Array; private var _soundsDict:Dictionary; private static var NumSounds:int = 0; private static var _instance:SoundManager; private static var disableSounds:Boolean = false; private static var MaxNumSound:int = 20; private static var _allowInstance:Boolean; public function SoundManager(){ this._soundsDict = new Dictionary(true); this._sounds = new Array(); if (!SoundManager._allowInstance){ throw (new Error("Error:Only 1 instance of SoundManager necessary")); }; } private function FreeSoundChannel(_arg1:Event):void{ NumSounds--; } public function toggleEnableSounds():void{ disableSounds = !(disableSounds); } public function enableSound():void{ disableSounds = false; NumSounds = 0; } public function SoundLimit(_arg1:uint):void{ MaxNumSound = _arg1; } public function stopAllSounds(_arg1:Boolean=true):void{ var _local2:int; var _local3:String; NumSounds = 0; _local2 = 0; while (_local2 < this._sounds.length) { _local3 = this._sounds[_local2].name; if (_arg1){ if (!this._soundsDict[_local3].paused){ this._soundsDict[_local3].pausedByAll = true; this.stopSound(_local3); }; } else { this.stopSound(_local3); }; _local2++; }; } public function muteAllSounds():void{ var _local1:int; var _local2:String; _local1 = 0; while (_local1 < this._sounds.length) { _local2 = this._sounds[_local1].name; this.setSoundVolume(_local2, 0); _local1++; }; } public function stopSound(_arg1:String):void{ var _local2:Object; _local2 = this._soundsDict[_arg1]; _local2.paused = true; _local2.channel.stop(); _local2.position = _local2.channel.position; } public function disableSound():void{ disableSounds = true; NumSounds = 0; } public function addLibrarySound(_arg1, _arg2:String):Boolean{ var _local3:int; var _local4:Object; var _local5:Sound; _local3 = 0; while (_local3 < this._sounds.length) { if (this._sounds[_local3].name == _arg2){ return (false); }; _local3++; }; _local4 = new Object(); _local5 = new (_arg1); _local4.name = _arg2; _local4.sound = _local5; _local4.channel = new SoundChannel(); _local4.position = 0; _local4.paused = true; _local4.volume = 1; _local4.startTime = 0; _local4.loops = 0; _local4.pausedByAll = false; this._soundsDict[_arg2] = _local4; this._sounds.push(_local4); return (true); } public function setSoundVolume(_arg1:String, _arg2:Number):void{ var _local3:Object; var _local4:SoundTransform; _local3 = this._soundsDict[_arg1]; _local4 = _local3.channel.soundTransform; _local4.volume = _arg2; _local3.channel.soundTransform = _local4; } public function getSoundObject(_arg1:String):Sound{ return (this._soundsDict[_arg1].sound); } public function unmuteAllSounds():void{ var _local1:int; var _local2:String; var _local3:Object; var _local4:SoundTransform; _local1 = 0; while (_local1 < this._sounds.length) { _local2 = this._sounds[_local1].name; _local3 = this._soundsDict[_local2]; _local4 = _local3.channel.soundTransform; _local4.volume = _local3.volume; _local3.channel.soundTransform = _local4; _local1++; }; } public function playSound(_arg1:String, _arg2:Number=1, _arg3:Number=0, _arg4:int=0):void{ var _local5:Object; if ((((NumSounds >= MaxNumSound)) || (disableSounds))){ return; }; NumSounds++; _local5 = this._soundsDict[_arg1]; _local5.volume = _arg2; _local5.startTime = _arg3; _local5.loops = _arg4; if (_local5.paused){ _local5.channel = _local5.sound.play(_local5.position, _local5.loops, new SoundTransform(_local5.volume)); } else { _local5.channel = _local5.sound.play(_arg3, _local5.loops, new SoundTransform(_local5.volume)); }; _local5.paused = false; _local5.channel.addEventListener(Event.SOUND_COMPLETE, FreeSoundChannel); } public function toString():String{ return (getQualifiedClassName(this)); } public static function getInstance():SoundManager{ if (SoundManager._instance == null){ SoundManager._allowInstance = true; SoundManager._instance = new (SoundManager); SoundManager._allowInstance = false; }; return (SoundManager._instance); } } }//package Bimmin
Section 7
//back_73 (Bimmin_fla.back_73) package Bimmin_fla { import flash.display.*; public dynamic class back_73 extends MovieClip { public function back_73(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Bimmin_fla
Section 8
//Bim_Jog_13 (Bimmin_fla.Bim_Jog_13) package Bimmin_fla { import flash.display.*; public dynamic class Bim_Jog_13 extends MovieClip { public function Bim_Jog_13(){ addFrameScript(18, frame19); } function frame19(){ gotoAndPlay(1); } } }//package Bimmin_fla
Section 9
//Bimmindrop_12 (Bimmin_fla.Bimmindrop_12) package Bimmin_fla { import flash.display.*; public dynamic class Bimmindrop_12 extends MovieClip { public function Bimmindrop_12(){ addFrameScript(4, frame5); } function frame5(){ stop(); } } }//package Bimmin_fla
Section 10
//credits_btn_16 (Bimmin_fla.credits_btn_16) package Bimmin_fla { import flash.display.*; public dynamic class credits_btn_16 extends MovieClip { public function credits_btn_16(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Bimmin_fla
Section 11
//gameover_17 (Bimmin_fla.gameover_17) package Bimmin_fla { import flash.display.*; public dynamic class gameover_17 extends MovieClip { public function gameover_17(){ addFrameScript(5, frame6); } function frame6(){ stop(); } } }//package Bimmin_fla
Section 12
//gui_multi_31 (Bimmin_fla.gui_multi_31) package Bimmin_fla { import flash.display.*; public dynamic class gui_multi_31 extends MovieClip { public function gui_multi_31(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Bimmin_fla
Section 13
//info_btn_15 (Bimmin_fla.info_btn_15) package Bimmin_fla { import flash.display.*; public dynamic class info_btn_15 extends MovieClip { public function info_btn_15(){ addFrameScript(0, frame1, 5, frame6); } function frame6(){ } function frame1(){ stop(); } } }//package Bimmin_fla
Section 14
//Page1_2 (Bimmin_fla.Page1_2) package Bimmin_fla { import flash.display.*; public dynamic class Page1_2 extends MovieClip { public function Page1_2(){ addFrameScript(0, frame1); } function frame1(){ } } }//package Bimmin_fla
Section 15
//play_14 (Bimmin_fla.play_14) package Bimmin_fla { import flash.display.*; public dynamic class play_14 extends MovieClip { public function play_14(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Bimmin_fla
Section 16
//retry_18 (Bimmin_fla.retry_18) package Bimmin_fla { import flash.display.*; public dynamic class retry_18 extends MovieClip { public function retry_18(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Bimmin_fla
Section 17
//submit_19 (Bimmin_fla.submit_19) package Bimmin_fla { import flash.display.*; public dynamic class submit_19 extends MovieClip { public function submit_19(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package Bimmin_fla
Section 18
//trimmovin_11 (Bimmin_fla.trimmovin_11) package Bimmin_fla { import flash.display.*; public dynamic class trimmovin_11 extends MovieClip { public function trimmovin_11(){ addFrameScript(6, frame7); } function frame7(){ stop(); } } }//package Bimmin_fla
Section 19
//MochiCoins (mochi.as3.MochiCoins) package mochi.as3 { public class MochiCoins { public static const STORE_HIDE:String = "StoreHide"; public static const NO_USER:String = "NoUser"; public static const IO_ERROR:String = "IOError"; public static const ITEM_NEW:String = "ItemNew"; public static const ITEM_OWNED:String = "ItemOwned"; public static const STORE_ITEMS:String = "StoreItems"; public static const ERROR:String = "Error"; public static const STORE_SHOW:String = "StoreShow"; public static var _inventory:MochiInventory; public static function triggerEvent(_arg1:String, _arg2:Object):void{ MochiSocial.triggerEvent(_arg1, _arg2); } public static function removeEventListener(_arg1:String, _arg2:Function):void{ MochiSocial.removeEventListener(_arg1, _arg2); } public static function addEventListener(_arg1:String, _arg2:Function):void{ MochiSocial.addEventListener(_arg1, _arg2); } public static function getStoreItems():void{ MochiServices.send("coins_getStoreItems"); } public static function get inventory():MochiInventory{ return (_inventory); } public static function showStore(_arg1:Object=null):void{ MochiServices.bringToTop(); MochiServices.send("coins_showStore", {options:_arg1}, null, null); } public static function showItem(_arg1:Object=null):void{ if (((!(_arg1)) || (!((typeof(_arg1.item) == "string"))))){ trace("ERROR: showItem call must pass an Object with an item key"); return; }; MochiServices.bringToTop(); MochiServices.send("coins_showItem", {options:_arg1}, null, null); } public static function getVersion():String{ return (MochiServices.getVersion()); } public static function showVideo(_arg1:Object=null):void{ if (((!(_arg1)) || (!((typeof(_arg1.item) == "string"))))){ trace("ERROR: showVideo call must pass an Object with an item key"); return; }; MochiServices.bringToTop(); MochiServices.send("coins_showVideo", {options:_arg1}, null, null); } MochiSocial.addEventListener(MochiSocial.LOGGED_IN, function (_arg1:Object):void{ _inventory = new MochiInventory(); }); MochiSocial.addEventListener(MochiSocial.LOGGED_OUT, function (_arg1:Object):void{ _inventory = null; }); } }//package mochi.as3
Section 20
//MochiDigits (mochi.as3.MochiDigits) package mochi.as3 { public final class MochiDigits { private var Sibling:MochiDigits; private var Fragment:Number; private var Encoder:Number; public function MochiDigits(_arg1:Number=0, _arg2:uint=0):void{ Encoder = 0; setValue(_arg1, _arg2); } public function set value(_arg1:Number):void{ setValue(_arg1); } public function reencode():void{ var _local1:uint; _local1 = int((2147483647 * Math.random())); Fragment = (Fragment ^ (_local1 ^ Encoder)); Encoder = _local1; } public function toString():String{ var _local1:String; _local1 = String.fromCharCode((Fragment ^ Encoder)); if (Sibling != null){ _local1 = (_local1 + Sibling.toString()); }; return (_local1); } public function get value():Number{ return (Number(this.toString())); } public function setValue(_arg1:Number=0, _arg2:uint=0):void{ var _local3:String; _local3 = _arg1.toString(); var _temp1 = _arg2; _arg2 = (_arg2 + 1); Fragment = (_local3.charCodeAt(_temp1) ^ Encoder); if (_arg2 < _local3.length){ Sibling = new MochiDigits(_arg1, _arg2); } else { Sibling = null; }; reencode(); } public function addValue(_arg1:Number):void{ value = (value + _arg1); } } }//package mochi.as3
Section 21
//MochiEventDispatcher (mochi.as3.MochiEventDispatcher) package mochi.as3 { public class MochiEventDispatcher { private var eventTable:Object; public function MochiEventDispatcher():void{ eventTable = {}; } public function triggerEvent(_arg1:String, _arg2:Object):void{ var _local3:Object; if (eventTable[_arg1] == undefined){ return; }; for (_local3 in eventTable[_arg1]) { var _local6 = eventTable[_arg1]; _local6[_local3](_arg2); }; } public function removeEventListener(_arg1:String, _arg2:Function):void{ var _local3:Object; if (eventTable[_arg1] == undefined){ eventTable[_arg1] = []; return; }; for (_local3 in eventTable[_arg1]) { if (eventTable[_arg1][_local3] != _arg2){ } else { eventTable[_arg1].splice(Number(_local3), 1); }; }; } public function addEventListener(_arg1:String, _arg2:Function):void{ removeEventListener(_arg1, _arg2); eventTable[_arg1].push(_arg2); } } }//package mochi.as3
Section 22
//MochiEvents (mochi.as3.MochiEvents) package mochi.as3 { import flash.display.*; public class MochiEvents { public static const ALIGN_BOTTOM_LEFT:String = "ALIGN_BL"; public static const FORMAT_LONG:String = "LongForm"; public static const ALIGN_BOTTOM:String = "ALIGN_B"; public static const ACHIEVEMENT_RECEIVED:String = "AchievementReceived"; public static const FORMAT_SHORT:String = "ShortForm"; public static const ALIGN_TOP_RIGHT:String = "ALIGN_TR"; public static const ALIGN_BOTTOM_RIGHT:String = "ALIGN_BR"; public static const ALIGN_TOP:String = "ALIGN_T"; public static const ALIGN_LEFT:String = "ALIGN_L"; public static const ALIGN_RIGHT:String = "ALIGN_R"; public static const ALIGN_TOP_LEFT:String = "ALIGN_TL"; public static const ALIGN_CENTER:String = "ALIGN_C"; private static var _dispatcher:MochiEventDispatcher = new MochiEventDispatcher(); private static var gameStart:Number; private static var levelStart:Number; public static function addEventListener(_arg1:String, _arg2:Function):void{ _dispatcher.addEventListener(_arg1, _arg2); } public static function removeEventListener(_arg1:String, _arg2:Function):void{ _dispatcher.removeEventListener(_arg1, _arg2); } public static function startSession(_arg1:String):void{ MochiServices.send("events_beginSession", {achievementID:_arg1}, null, null); } public static function triggerEvent(_arg1:String, _arg2:Object):void{ _dispatcher.triggerEvent(_arg1, _arg2); } public static function setNotifications(_arg1:MovieClip, _arg2:Object):void{ var _local3:Object; var _local4:Object; _local3 = {}; for (_local4 in _arg2) { _local3[_local4] = _arg2[_local4]; }; _local3.clip = _arg1; MochiServices.send("events_setNotifications", _local3, null, null); } public static function endGame():void{ var _local1:Number; _local1 = (new Date().time - gameStart); trigger("end_game", {time:_local1}); } public static function startGame():void{ gameStart = new Date().time; trigger("start_game"); } public static function trigger(_arg1:String, _arg2:Object=null):void{ if (_arg2 == null){ _arg2 = {}; } else { if (_arg2["kind"] != undefined){ trace("WARNING: optional arguments package contains key 'id', it will be overwritten"); _arg2["kind"] = _arg1; }; }; MochiServices.send("events_triggerEvent", {eventObject:_arg2}, null, null); } public static function getVersion():String{ return (MochiServices.getVersion()); } public static function startLevel():void{ levelStart = new Date().time; trigger("start_level"); } public static function endLevel():void{ var _local1:Number; _local1 = (new Date().time - levelStart); trigger("end_level", {time:_local1}); } } }//package mochi.as3
Section 23
//MochiInventory (mochi.as3.MochiInventory) package mochi.as3 { import flash.events.*; import flash.utils.*; public dynamic class MochiInventory extends Proxy { private var _timer:Timer; private var _names:Array; private var _consumableProperties:Object; private var _syncID:Number; private var _storeSync:Object; private var _outstandingID:Number; private var _syncPending:Boolean; public static const READY:String = "InvReady"; public static const ERROR:String = "Error"; public static const IO_ERROR:String = "IoError"; private static const KEY_SALT:String = " syncMaint"; public static const WRITTEN:String = "InvWritten"; public static const NOT_READY:String = "InvNotReady"; public static const VALUE_ERROR:String = "InvValueError"; private static const CONSUMER_KEY:String = "MochiConsumables"; private static var _dispatcher:MochiEventDispatcher = new MochiEventDispatcher(); public function MochiInventory():void{ MochiCoins.addEventListener(MochiCoins.ITEM_OWNED, itemOwned); MochiCoins.addEventListener(MochiCoins.ITEM_NEW, newItems); MochiSocial.addEventListener(MochiSocial.LOGGED_IN, loggedIn); MochiSocial.addEventListener(MochiSocial.LOGGED_OUT, loggedOut); _storeSync = new Object(); _syncPending = false; _outstandingID = 0; _syncID = 0; _timer = new Timer(1000); _timer.addEventListener(TimerEvent.TIMER, sync); _timer.start(); if (MochiSocial.loggedIn){ loggedIn(); } else { loggedOut(); }; } private function newItems(_arg1:Object):void{ if (!this[(_arg1.id + KEY_SALT)]){ this[(_arg1.id + KEY_SALT)] = 0; }; if (!this[_arg1.id]){ this[_arg1.id] = 0; }; this[(_arg1.id + KEY_SALT)] = (this[(_arg1.id + KEY_SALT)] + _arg1.count); this[_arg1.id] = (this[_arg1.id] + _arg1.count); if (_arg1.privateProperties.consumable){ if (!this[_arg1.privateProperties.tag]){ this[_arg1.privateProperties.tag] = 0; }; this[_arg1.privateProperties.tag] = (this[_arg1.privateProperties.tag] + (_arg1.privateProperties.inc * _arg1.count)); }; } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function getProperty(_arg1){ if (_consumableProperties == null){ triggerEvent(ERROR, {type:NOT_READY}); return (-1); }; if (_consumableProperties[_arg1]){ return (MochiDigits(_consumableProperties[_arg1]).value); }; return (undefined); } public function release():void{ MochiCoins.removeEventListener(MochiCoins.ITEM_NEW, newItems); MochiSocial.removeEventListener(MochiSocial.LOGGED_IN, loggedIn); MochiSocial.removeEventListener(MochiSocial.LOGGED_OUT, loggedOut); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function hasProperty(_arg1):Boolean{ if (_consumableProperties == null){ triggerEvent(ERROR, {type:NOT_READY}); return (false); }; if (_consumableProperties[_arg1] == undefined){ return (false); }; return (true); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function nextNameIndex(_arg1:int):int{ return (((_arg1)>=_names.length) ? 0 : (_arg1 + 1)); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function setProperty(_arg1, _arg2):void{ var _local3:MochiDigits; if (_consumableProperties == null){ triggerEvent(ERROR, {type:NOT_READY}); return; }; if (!(_arg2 is Number)){ triggerEvent(ERROR, {type:VALUE_ERROR, error:"Invalid type", arg:_arg2}); return; }; if (_consumableProperties[_arg1]){ _local3 = MochiDigits(_consumableProperties[_arg1]); if (_local3.value == _arg2){ return; }; _local3.value = _arg2; } else { _names.push(_arg1); _consumableProperties[_arg1] = new MochiDigits(_arg2); }; _syncID++; } private function sync(_arg1:Event=null):void{ var _local2:Object; var _local3:String; if (((_syncPending) || ((_syncID == _outstandingID)))){ return; }; _outstandingID = _syncID; _local2 = {}; for (_local3 in _consumableProperties) { _local2[_local3] = MochiDigits(_consumableProperties[_local3]).value; }; MochiUserData.put(CONSUMER_KEY, _local2, putConsumableBag); _syncPending = true; } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function nextName(_arg1:int):String{ return (_names[(_arg1 - 1)]); } private function loggedIn(_arg1:Object=null):void{ MochiUserData.get(CONSUMER_KEY, getConsumableBag); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function deleteProperty(_arg1):Boolean{ if (!_consumableProperties[_arg1]){ return (false); }; _names.splice(_names.indexOf(_arg1), 1); delete _consumableProperties[_arg1]; return (true); } private function itemOwned(_arg1:Object):void{ _storeSync[_arg1.id] = {properties:_arg1.properties, count:_arg1.count}; } private function putConsumableBag(_arg1:MochiUserData):void{ _syncPending = false; if (_arg1.error){ triggerEvent(ERROR, {type:IO_ERROR, error:_arg1.error}); _outstandingID = -1; }; triggerEvent(WRITTEN, {}); } private function getConsumableBag(_arg1:MochiUserData):void{ var _local2:String; var _local3:Number; if (_arg1.error){ triggerEvent(ERROR, {type:IO_ERROR, error:_arg1.error}); return; }; _consumableProperties = {}; _names = new Array(); if (_arg1.data){ for (_local2 in _arg1.data) { _names.push(_local2); _consumableProperties[_local2] = new MochiDigits(_arg1.data[_local2]); }; }; for (_local2 in _storeSync) { _local3 = _storeSync[_local2].count; if (_consumableProperties[(_local2 + KEY_SALT)]){ _local3 = (_local3 - _consumableProperties[_local2]); }; if (_local3 == 0){ } else { newItems({id:_local2, count:_local3, properties:_storeSync[_local2].properties}); }; }; triggerEvent(READY, {}); } private function loggedOut(_arg1:Object=null):void{ _consumableProperties = null; } public static function triggerEvent(_arg1:String, _arg2:Object):void{ _dispatcher.triggerEvent(_arg1, _arg2); } public static function removeEventListener(_arg1:String, _arg2:Function):void{ _dispatcher.removeEventListener(_arg1, _arg2); } public static function addEventListener(_arg1:String, _arg2:Function):void{ _dispatcher.addEventListener(_arg1, _arg2); } } }//package mochi.as3
Section 24
//MochiScores (mochi.as3.MochiScores) package mochi.as3 { import flash.display.*; import flash.text.*; public class MochiScores { private static var boardID:String; public static var onErrorHandler:Object; public static var onCloseHandler:Object; public static function showLeaderboard(_arg1:Object=null):void{ var n:Number; var options = _arg1; if (options != null){ delete options.clip; MochiServices.setContainer(); MochiServices.bringToTop(); if (options.name != null){ if ((options.name is TextField)){ if (options.name.text.length > 0){ options.name = options.name.text; }; }; }; if (options.score != null){ if ((options.score is TextField)){ if (options.score.text.length > 0){ options.score = options.score.text; }; } else { if ((options.score is MochiDigits)){ options.score = options.score.value; }; }; n = Number(options.score); if (isNaN(n)){ trace((("ERROR: Submitted score '" + options.score) + "' will be rejected, score is 'Not a Number'")); } else { if ((((n == Number.NEGATIVE_INFINITY)) || ((n == Number.POSITIVE_INFINITY)))){ trace((("ERROR: Submitted score '" + options.score) + "' will be rejected, score is an infinite")); } else { if (Math.floor(n) != n){ trace((("WARNING: Submitted score '" + options.score) + "' will be truncated")); }; options.score = n; }; }; }; if (options.onDisplay != null){ options.onDisplay(); } else { if (MochiServices.clip != null){ if ((MochiServices.clip is MovieClip)){ MochiServices.clip.stop(); } else { trace("Warning: Container is not a MovieClip, cannot call default onDisplay."); }; }; }; } else { options = {}; if ((MochiServices.clip is MovieClip)){ MochiServices.clip.stop(); } else { trace("Warning: Container is not a MovieClip, cannot call default onDisplay."); }; }; if (options.onClose != null){ onCloseHandler = options.onClose; } else { onCloseHandler = function ():void{ if ((MochiServices.clip is MovieClip)){ MochiServices.clip.play(); } else { trace("Warning: Container is not a MovieClip, cannot call default onClose."); }; }; }; if (options.onError != null){ onErrorHandler = options.onError; } else { onErrorHandler = null; }; if (options.boardID == null){ if (MochiScores.boardID != null){ options.boardID = MochiScores.boardID; }; }; MochiServices.warnID(options.boardID, true); trace("[MochiScores] NOTE: Security Sandbox Violation errors below are normal"); MochiServices.send("scores_showLeaderboard", {options:options}, null, onClose); } public static function closeLeaderboard():void{ MochiServices.send("scores_closeLeaderboard"); } public static function getPlayerInfo(_arg1:Object, _arg2:Object=null):void{ MochiServices.send("scores_getPlayerInfo", null, _arg1, _arg2); } public static function requestList(_arg1:Object, _arg2:Object=null):void{ MochiServices.send("scores_requestList", null, _arg1, _arg2); } public static function scoresArrayToObjects(_arg1:Object):Object{ var _local2:Object; var _local3:Number; var _local4:Number; var _local5:Object; var _local6:Object; var _local7:String; var _local8:String; _local2 = {}; for (_local7 in _arg1) { if (typeof(_arg1[_local7]) == "object"){ if (((!((_arg1[_local7].cols == null))) && (!((_arg1[_local7].rows == null))))){ _local2[_local7] = []; _local5 = _arg1[_local7]; _local4 = 0; while (_local4 < _local5.rows.length) { _local6 = {}; _local3 = 0; while (_local3 < _local5.cols.length) { _local6[_local5.cols[_local3]] = _local5.rows[_local4][_local3]; _local3++; }; _local2[_local7].push(_local6); _local4++; }; } else { _local2[_local7] = {}; for (_local8 in _arg1[_local7]) { _local2[_local7][_local8] = _arg1[_local7][_local8]; }; }; } else { _local2[_local7] = _arg1[_local7]; }; }; return (_local2); } public static function submit(_arg1:Number, _arg2:String, _arg3:Object=null, _arg4:Object=null):void{ _arg1 = Number(_arg1); if (isNaN(_arg1)){ trace((("ERROR: Submitted score '" + String(_arg1)) + "' will be rejected, score is 'Not a Number'")); } else { if ((((_arg1 == Number.NEGATIVE_INFINITY)) || ((_arg1 == Number.POSITIVE_INFINITY)))){ trace((("ERROR: Submitted score '" + String(_arg1)) + "' will be rejected, score is an infinite")); } else { if (Math.floor(_arg1) != _arg1){ trace((("WARNING: Submitted score '" + String(_arg1)) + "' will be truncated")); }; _arg1 = Number(_arg1); }; }; MochiServices.send("scores_submit", {score:_arg1, name:_arg2}, _arg3, _arg4); } public static function onClose(_arg1:Object=null):void{ if (((((_arg1) && ((_arg1.error == true)))) && (onErrorHandler))){ if (_arg1.errorCode == null){ _arg1.errorCode = "IOError"; }; onErrorHandler(_arg1.errorCode); MochiServices.doClose(); return; }; onCloseHandler(); MochiServices.doClose(); } public static function setBoardID(_arg1:String):void{ MochiServices.warnID(_arg1, true); MochiScores.boardID = _arg1; MochiServices.send("scores_setBoardID", {boardID:_arg1}); } } }//package mochi.as3
Section 25
//MochiServices (mochi.as3.MochiServices) package mochi.as3 { import flash.events.*; import flash.display.*; import flash.utils.*; import flash.net.*; import flash.system.*; import flash.geom.*; public class MochiServices { private static var _container:Object; private static var _connected:Boolean = false; private static var _swfVersion:String; private static var _preserved:Object; public static var netupAttempted:Boolean = false; private static var _sendChannel:LocalConnection; public static var servicesSync:MochiSync = new MochiSync(); private static var _clip:MovieClip; private static var _id:String; private static var _services:String = "services.swf"; private static var _servURL:String = "http://www.mochiads.com/static/lib/services/"; public static var widget:Boolean = false; private static var _timer:Timer; private static var _sendChannelName:String; private static var _loader:Loader; private static var _connecting:Boolean = false; private static var _mochiLocalConnection:MovieClip; private static var _listenChannelName:String = "__ms_"; public static var onError:Object; public static var netup:Boolean = true; private static var _mochiLC:String = "MochiLC.swf"; public static function isNetworkAvailable():Boolean{ return (!((Security.sandboxType == "localWithFile"))); } public static function get connected():Boolean{ return (_connected); } private static function onReceive(_arg1:Object):void{ var cb:String; var cblst:Object; var method:*; var methodName:String; var obj:Object; var pkg = _arg1; cb = pkg.callbackID; cblst = _clip._callbacks[cb]; if (!cblst){ return; }; method = cblst.callbackMethod; methodName = ""; obj = cblst.callbackObject; if (((obj) && ((typeof(method) == "string")))){ methodName = method; if (obj[method] != null){ method = obj[method]; } else { trace((("Error: Method " + method) + " does not exist.")); }; }; if (method != undefined){ try { method.apply(obj, pkg.args); } catch(error:Error) { trace(((("Error invoking callback method '" + methodName) + "': ") + error.toString())); }; } else { if (obj != null){ try { obj(pkg.args); } catch(error:Error) { trace(("Error invoking method on object: " + error.toString())); }; }; }; delete _clip._callbacks[cb]; } public static function get childClip():Object{ return (_clip); } public static function send(_arg1:String, _arg2:Object=null, _arg3:Object=null, _arg4:Object=null):void{ if (_connected){ _mochiLocalConnection.send(_sendChannelName, "onReceive", {methodName:_arg1, args:_arg2, callbackID:_clip._nextcallbackID}); } else { if ((((_clip == null)) || (!(_connecting)))){ trace(("Error: MochiServices not connected. Please call MochiServices.connect(). Function: " + _arg1)); handleError(_arg2, _arg3, _arg4); flush(true); return; }; _clip._queue.push({methodName:_arg1, args:_arg2, callbackID:_clip._nextcallbackID}); }; if (_clip != null){ if (((!((_clip._callbacks == null))) && (!((_clip._nextcallbackID == null))))){ _clip._callbacks[_clip._nextcallbackID] = {callbackObject:_arg3, callbackMethod:_arg4}; _clip._nextcallbackID++; }; }; } private static function init(_arg1:String, _arg2:Object):void{ _id = _arg1; if (_arg2 != null){ _container = _arg2; loadCommunicator(_arg1, _container); }; } private static function clickMovie(_arg1:String, _arg2:Function):MovieClip{ var _local3:Array; var _local4:int; var _local5:Array; var _local6:Array; var _local7:MovieClip; var _local8:LocalConnection; var _local9:String; var _local10:ByteArray; var _local11:ByteArray; var _local12:uint; var _local13:uint; var _local14:Loader; _local3 = [150, 21, 0, 7, 1, 0, 0, 0, 0, 98, 116, 110, 0, 7, 2, 0, 0, 0, 0, 116, 104, 105, 115, 0, 28, 150, 22, 0, 0, 99, 114, 101, 97, 116, 101, 69, 109, 112, 116, 121, 77, 111, 118, 105, 101, 67, 108, 105, 112, 0, 82, 135, 1, 0, 0, 23, 150, 13, 0, 4, 0, 0, 111, 110, 82, 101, 108, 101, 97, 115, 101, 0, 142, 8, 0, 0, 0, 0, 2, 42, 0, 114, 0, 150, 17, 0, 0, 32, 0, 7, 1, 0, 0, 0, 8, 0, 0, 115, 112, 108, 105, 116, 0, 82, 135, 1, 0, 1, 23, 150, 7, 0, 4, 1, 7, 0, 0, 0, 0, 78, 150, 8, 0, 0, 95, 98, 108, 97, 110, 107, 0, 154, 1, 0, 0, 150, 7, 0, 0, 99, 108, 105, 99, 107, 0, 150, 7, 0, 4, 1, 7, 1, 0, 0, 0, 78, 150, 27, 0, 7, 2, 0, 0, 0, 7, 0, 0, 0, 0, 0, 76, 111, 99, 97, 108, 67, 111, 110, 110, 101, 99, 116, 105, 111, 110, 0, 64, 150, 6, 0, 0, 115, 101, 110, 100, 0, 82, 79, 150, 15, 0, 4, 0, 0, 95, 97, 108, 112, 104, 97, 0, 7, 0, 0, 0, 0, 79, 150, 23, 0, 7, 0xFF, 0, 0xFF, 0, 7, 1, 0, 0, 0, 4, 0, 0, 98, 101, 103, 105, 110, 70, 105, 108, 108, 0, 82, 23, 150, 25, 0, 7, 0, 0, 0, 0, 7, 0, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 109, 111, 118, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 100, 0, 0, 0, 7, 0, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 100, 0, 0, 0, 7, 100, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 0, 0, 0, 0, 7, 100, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 0, 0, 0, 0, 7, 0, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 16, 0, 7, 0, 0, 0, 0, 4, 0, 0, 101, 110, 100, 70, 105, 108, 108, 0, 82, 23]; _local5 = [104, 0, 31, 64, 0, 7, 208, 0, 0, 12, 1, 0, 67, 2, 0xFF, 0xFF, 0xFF, 63, 3]; _local6 = [0, 64, 0, 0, 0]; _local7 = new MovieClip(); _local8 = new LocalConnection(); _local9 = ((("_click_" + Math.floor((Math.random() * 999999))) + "_") + Math.floor(new Date().time)); _local8 = new LocalConnection(); _local7.lc = _local8; _local7.click = _arg2; _local8.client = _local7; _local8.connect(_local9); _local10 = new ByteArray(); _local11 = new ByteArray(); _local11.endian = Endian.LITTLE_ENDIAN; _local11.writeShort(1); _local11.writeUTFBytes(((_arg1 + " ") + _local9)); _local11.writeByte(0); _local12 = ((_local3.length + _local11.length) + 4); _local13 = (_local12 + 35); _local10.endian = Endian.LITTLE_ENDIAN; _local10.writeUTFBytes("FWS"); _local10.writeByte(8); _local10.writeUnsignedInt(_local13); for each (_local4 in _local5) { _local10.writeByte(_local4); }; _local10.writeUnsignedInt(_local12); _local10.writeByte(136); _local10.writeShort(_local11.length); _local10.writeBytes(_local11); for each (_local4 in _local3) { _local10.writeByte(_local4); }; for each (_local4 in _local6) { _local10.writeByte(_local4); }; _local14 = new Loader(); _local14.loadBytes(_local10); _local7.addChild(_local14); return (_local7); } public static function stayOnTop():void{ _container.addEventListener(Event.ENTER_FRAME, MochiServices.bringToTop, false, 0, true); if (_clip != null){ _clip.visible = true; }; } public static function addLinkEvent(_arg1:String, _arg2:String, _arg3:DisplayObjectContainer, _arg4:Function=null):void{ var vars:Object; var avm1Click:DisplayObject; var s:String; var i:Number; var x:String; var req:URLRequest; var loader:Loader; var setURL:Function; var err:Function; var complete:Function; var url = _arg1; var burl = _arg2; var btn = _arg3; var onClick = _arg4; vars = new Object(); vars["mav"] = getVersion(); vars["swfv"] = "9"; vars["swfurl"] = btn.loaderInfo.loaderURL; vars["fv"] = Capabilities.version; vars["os"] = Capabilities.os; vars["lang"] = Capabilities.language; vars["scres"] = ((Capabilities.screenResolutionX + "x") + Capabilities.screenResolutionY); s = "?"; i = 0; for (x in vars) { if (i != 0){ s = (s + "&"); }; i = (i + 1); s = (((s + x) + "=") + escape(vars[x])); }; req = new URLRequest("http://x.mochiads.com/linkping.swf"); loader = new Loader(); setURL = function (_arg1:String):void{ var _local2:Rectangle; if (avm1Click){ btn.removeChild(avm1Click); }; avm1Click = clickMovie(_arg1, onClick); _local2 = btn.getBounds(btn); btn.addChild(avm1Click); avm1Click.x = _local2.x; avm1Click.y = _local2.y; avm1Click.scaleX = (0.01 * _local2.width); avm1Click.scaleY = (0.01 * _local2.height); }; err = function (_arg1:Object):void{ netup = false; _arg1.target.removeEventListener(_arg1.type, arguments.callee); setURL(burl); }; complete = function (_arg1:Object):void{ _arg1.target.removeEventListener(_arg1.type, arguments.callee); }; if (netup){ setURL((url + s)); } else { setURL(burl); }; if (!((netupAttempted) || (_connected))){ netupAttempted = true; loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, err); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, complete); loader.load(req); }; } public static function warnID(_arg1:String, _arg2:Boolean):void{ var _local3:Number; _arg1 = _arg1.toLowerCase(); if (_arg1.length != 16){ trace((("WARNING: " + (_arg2) ? "board" : "game") + " ID is not the appropriate length")); return; } else { if (_arg1 == "1e113c7239048b3f"){ if (_arg2){ trace("WARNING: Using testing board ID"); } else { trace("WARNING: Using testing board ID as game ID"); }; return; } else { if (_arg1 == "84993a1de4031cd8"){ if (_arg2){ trace("WARNING: Using testing game ID as board ID"); } else { trace("WARNING: Using testing game ID"); }; return; }; }; }; _local3 = 0; while (_local3 < _arg1.length) { switch (_arg1.charAt(_local3)){ case "0": case "1": case "2": case "3": case "4": case "5": case "6": case "7": case "8": case "9": case "a": case "b": case "c": case "d": case "e": case "f": break; default: trace(("WARNING: Board ID contains illegal characters: " + _arg1)); return; }; _local3++; }; } public static function disconnect():void{ if (((_connected) || (_connecting))){ if (_clip != null){ if (_clip.parent != null){ if ((_clip.parent is Sprite)){ Sprite(_clip.parent).removeChild(_clip); _clip = null; }; }; }; _connecting = (_connected = false); flush(true); try { _mochiLocalConnection.close(); } catch(error:Error) { }; }; if (_timer != null){ try { _timer.stop(); } catch(error:Error) { }; }; } public static function allowDomains(_arg1:String):String{ var _local2:String; if (Security.sandboxType != "application"){ Security.allowDomain("*"); Security.allowInsecureDomain("*"); }; if (_arg1.indexOf("http://") != -1){ _local2 = _arg1.split("/")[2].split(":")[0]; if (Security.sandboxType != "application"){ Security.allowDomain(_local2); Security.allowInsecureDomain(_local2); }; }; return (_local2); } public static function getVersion():String{ return ("3.7 as3"); } public static function doClose():void{ _container.removeEventListener(Event.ENTER_FRAME, MochiServices.bringToTop); } private static function flush(_arg1:Boolean):void{ var _local2:Object; var _local3:Object; if (((_clip) && (_clip._queue))){ while (_clip._queue.length > 0) { _local2 = _clip._queue.shift(); _local3 = null; if (_local2 != null){ if (_local2.callbackID != null){ _local3 = _clip._callbacks[_local2.callbackID]; }; delete _clip._callbacks[_local2.callbackID]; if (((_arg1) && (!((_local3 == null))))){ handleError(_local2.args, _local3.callbackObject, _local3.callbackMethod); }; }; }; }; } public static function get id():String{ return (_id); } private static function onEvent(_arg1:Object):void{ var _local2:String; var _local3:String; _local2 = _arg1.target; _local3 = _arg1.event; switch (_local2){ case "events": MochiEvents.triggerEvent(_arg1.event, _arg1.args); break; case "coins": MochiCoins.triggerEvent(_arg1.event, _arg1.args); break; case "sync": servicesSync.triggerEvent(_arg1.event, _arg1.args); break; }; } private static function urlOptions(_arg1:Object):Object{ var _local2:Object; var _local3:String; var _local4:Array; var _local5:Number; var _local6:Array; _local2 = {}; if (_arg1.stage){ _local3 = _arg1.stage.loaderInfo.parameters.mochiad_options; } else { _local3 = _arg1.loaderInfo.parameters.mochiad_options; }; if (_local3){ _local4 = _local3.split("&"); _local5 = 0; while (_local5 < _local4.length) { _local6 = _local4[_local5].split("="); _local2[unescape(_local6[0])] = unescape(_local6[1]); _local5++; }; }; return (_local2); } public static function setContainer(_arg1:Object=null, _arg2:Boolean=true):void{ if (_arg1 != null){ if ((_arg1 is Sprite)){ _container = _arg1; }; }; if (_arg2){ if ((_container is Sprite)){ Sprite(_container).addChild(_clip); }; }; } private static function handleError(_arg1:Object, _arg2:Object, _arg3:Object):void{ var args = _arg1; var callbackObject = _arg2; var callbackMethod = _arg3; if (args != null){ if (args.onError != null){ args.onError.apply(null, ["NotConnected"]); }; if (((!((args.options == null))) && (!((args.options.onError == null))))){ args.options.onError.apply(null, ["NotConnected"]); }; }; if (callbackMethod != null){ args = {}; args.error = true; args.errorCode = "NotConnected"; if (((!((callbackObject == null))) && ((callbackMethod is String)))){ try { var _local5 = callbackObject; _local5[callbackMethod](args); } catch(error:Error) { }; } else { if (callbackMethod != null){ try { callbackMethod.apply(args); } catch(error:Error) { }; }; }; }; } private static function loadError(_arg1:Object):void{ _clip._mochiad_ctr_failed = true; trace("MochiServices could not load."); MochiServices.disconnect(); MochiServices.onError("IOError"); } private static function initComChannels():void{ if (!_connected){ trace("[SERVICES_API] connected!"); _connecting = false; _connected = true; _mochiLocalConnection.send(_sendChannelName, "onReceive", {methodName:"handshakeDone"}); _mochiLocalConnection.send(_sendChannelName, "onReceive", {methodName:"registerGame", preserved:_preserved, id:_id, version:getVersion(), parentURL:_container.loaderInfo.loaderURL}); _clip.onReceive = onReceive; _clip.onEvent = onEvent; _clip.onError = function ():void{ MochiServices.onError("IOError"); }; while (_clip._queue.length > 0) { _mochiLocalConnection.send(_sendChannelName, "onReceive", _clip._queue.shift()); }; }; } private static function loadLCBridge(_arg1:Object):void{ var loader:Loader; var mochiLCURL:String; var req:URLRequest; var complete:Function; var clip = _arg1; loader = new Loader(); mochiLCURL = (_servURL + _mochiLC); req = new URLRequest(mochiLCURL); complete = function (_arg1:Object):void{ _mochiLocalConnection = MovieClip(loader.content); listen(); }; loader.contentLoaderInfo.addEventListener(Event.COMPLETE, complete); loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, loadError); loader.load(req); clip.addChild(loader); } private static function listen():void{ _mochiLocalConnection.connect(_listenChannelName); _clip.handshake = function (_arg1:Object):void{ MochiServices.comChannelName = _arg1.newChannel; }; trace("Waiting for MochiAds services to connect..."); } public static function get clip():Object{ return (_container); } public static function set comChannelName(_arg1:String):void{ if (_arg1 != null){ if (_arg1.length > 3){ _sendChannelName = (_arg1 + "_fromgame"); initComChannels(); }; }; } private static function loadCommunicator(_arg1:String, _arg2:Object):MovieClip{ var _local3:String; var _local4:String; var _local5:URLRequest; var _local6:URLVariables; _local3 = ("_mochiservices_com_" + _arg1); if (_clip != null){ return (_clip); }; if (!MochiServices.isNetworkAvailable()){ return (null); }; if (urlOptions(_arg2).servURL){ _servURL = urlOptions(_arg2).servURL; }; _local4 = (_servURL + _services); if (urlOptions(_arg2).servicesURL){ _local4 = urlOptions(_arg2).servicesURL; }; _listenChannelName = (_listenChannelName + ((Math.floor(new Date().time) + "_") + Math.floor((Math.random() * 99999)))); MochiServices.allowDomains(_local4); _clip = createEmptyMovieClip(_arg2, _local3, 10336, false); loadLCBridge(_clip); _loader = new Loader(); _loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, loadError); _local5 = new URLRequest(_local4); _local6 = new URLVariables(); _local6.listenLC = _listenChannelName; _local6.mochiad_options = _arg2.loaderInfo.parameters.mochiad_options; _local6.api_version = getVersion(); if (widget){ _local6.widget = true; }; _local5.data = _local6; _loader.load(_local5); _clip.addChild(_loader); _clip._mochiservices_com = _loader; _sendChannel = new LocalConnection(); _clip._queue = []; _clip._nextcallbackID = 0; _clip._callbacks = {}; _timer = new Timer(10000, 1); _timer.addEventListener(TimerEvent.TIMER, connectWait); _timer.start(); return (_clip); } public static function connect(_arg1:String, _arg2:Object, _arg3:Object=null):void{ var id = _arg1; var clip = _arg2; var onError = _arg3; warnID(id, false); if ((clip is DisplayObject)){ if (clip.stage == null){ trace("MochiServices connect requires the containing clip be attached to the stage"); }; if (((!(_connected)) && ((_clip == null)))){ trace("MochiServices Connecting..."); _connecting = true; init(id, clip); }; } else { trace("Error, MochiServices requires a Sprite, Movieclip or instance of the stage."); }; if (onError != null){ MochiServices.onError = onError; } else { if (MochiServices.onError == null){ MochiServices.onError = function (_arg1:String):void{ trace(_arg1); }; }; }; } public static function createEmptyMovieClip(_arg1:Object, _arg2:String, _arg3:Number, _arg4:Boolean=true):MovieClip{ var mc:MovieClip; var parent = _arg1; var name = _arg2; var depth = _arg3; var doAdd = _arg4; mc = new MovieClip(); if (doAdd){ if (((false) && (depth))){ parent.addChildAt(mc, depth); } else { parent.addChild(mc); }; }; try { parent[name] = mc; } catch(e:Error) { throw (new Error("MochiServices requires a clip that is an instance of a dynamic class. If your class extends Sprite or MovieClip, you must make it dynamic.")); }; mc["_name"] = name; return (mc); } public static function bringToTop(_arg1:Event=null):void{ var e = _arg1; if (((!((MochiServices.clip == null))) && (!((MochiServices.childClip == null))))){ try { if (MochiServices.clip.numChildren > 1){ MochiServices.clip.setChildIndex(MochiServices.childClip, (MochiServices.clip.numChildren - 1)); }; } catch(errorObject:Error) { trace("Warning: Depth sort error."); _container.removeEventListener(Event.ENTER_FRAME, MochiServices.bringToTop); }; }; } public static function connectWait(_arg1:TimerEvent):void{ if (!_connected){ _clip._mochiad_ctr_failed = true; trace("MochiServices could not load. (timeout)"); MochiServices.disconnect(); MochiServices.onError("IOError"); }; } } }//package mochi.as3
Section 26
//MochiSocial (mochi.as3.MochiSocial) package mochi.as3 { public class MochiSocial { public static const LOGGED_IN:String = "LoggedIn"; public static const PROFILE_HIDE:String = "ProfileHide"; public static const NO_USER:String = "NoUser"; public static const PROPERTIES_SIZE:String = "PropertiesSize"; public static const IO_ERROR:String = "IOError"; public static const PROPERTIES_SAVED:String = "PropertySaved"; public static const WIDGET_LOADED:String = "WidgetLoaded"; public static const USER_INFO:String = "UserInfo"; public static const ERROR:String = "Error"; public static const LOGIN_SHOW:String = "LoginShow"; public static const LOGGED_OUT:String = "LoggedOut"; public static const PROFILE_SHOW:String = "ProfileShow"; public static const LOGIN_SHOWN:String = "LoginShown"; public static const LOGIN_HIDE:String = "LoginHide"; private static var _dispatcher:MochiEventDispatcher = new MochiEventDispatcher(); public static var _user_info:Object = null; public static function getVersion():String{ return (MochiServices.getVersion()); } public static function saveUserProperties(_arg1:Object):void{ MochiServices.send("coins_saveUserProperties", _arg1); } public static function get loggedIn():Boolean{ return (!((_user_info == null))); } public static function triggerEvent(_arg1:String, _arg2:Object):void{ _dispatcher.triggerEvent(_arg1, _arg2); } public static function addEventListener(_arg1:String, _arg2:Function):void{ _dispatcher.addEventListener(_arg1, _arg2); } public static function getUserInfo():void{ MochiServices.send("coins_getUserInfo"); } public static function showLoginWidget(_arg1:Object=null):void{ MochiServices.setContainer(); MochiServices.bringToTop(); MochiServices.send("coins_showLoginWidget", {options:_arg1}); } public static function removeEventListener(_arg1:String, _arg2:Function):void{ _dispatcher.removeEventListener(_arg1, _arg2); } public static function requestLogin():void{ MochiServices.send("coins_requestLogin"); } public static function getAPIURL():String{ if (!_user_info){ return (null); }; return (_user_info.api_url); } public static function hideLoginWidget():void{ MochiServices.send("coins_hideLoginWidget"); } public static function getAPIToken():String{ if (!_user_info){ return (null); }; return (_user_info.api_token); } MochiSocial.addEventListener(MochiSocial.LOGGED_IN, function (_arg1:Object):void{ _user_info = _arg1; }); MochiSocial.addEventListener(MochiSocial.LOGGED_OUT, function (_arg1:Object):void{ _user_info = null; }); } }//package mochi.as3
Section 27
//MochiSync (mochi.as3.MochiSync) package mochi.as3 { import flash.utils.*; public dynamic class MochiSync extends Proxy { private var _syncContainer:Object; public static var SYNC_PROPERTY:String = "UpdateProperty"; public static var SYNC_REQUEST:String = "SyncRequest"; public function MochiSync():void{ _syncContainer = {}; } public function triggerEvent(_arg1:String, _arg2:Object):void{ switch (_arg1){ case SYNC_REQUEST: MochiServices.send("sync_syncronize", _syncContainer); break; case SYNC_PROPERTY: _syncContainer[_arg2.name] = _arg2.value; break; }; } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function getProperty(_arg1){ return (_syncContainer[_arg1]); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function setProperty(_arg1, _arg2):void{ var _local3:String; if (_syncContainer[_arg1] == _arg2){ return; }; _local3 = _arg1.toString(); _syncContainer[_local3] = _arg2; MochiServices.send("sync_propUpdate", {name:_local3, value:_arg2}); } } }//package mochi.as3
Section 28
//MochiUserData (mochi.as3.MochiUserData) package mochi.as3 { import flash.events.*; import flash.utils.*; import flash.net.*; public class MochiUserData extends EventDispatcher { public var callback:Function;// = null public var error:Event;// = null public var key:String;// = null public var operation:String;// = null public var data;// = null public var _loader:URLLoader; public function MochiUserData(_arg1:String="", _arg2:Function=null){ key = null; data = null; error = null; operation = null; callback = null; super(); this.key = _arg1; this.callback = _arg2; } public function securityErrorHandler(_arg1:SecurityErrorEvent):void{ errorHandler(new IOErrorEvent(IOErrorEvent.IO_ERROR, false, false, ("security error: " + _arg1.toString()))); } public function putEvent(_arg1):void{ request("put", serialize(_arg1)); } public function request(_arg1:String, _arg2:ByteArray):void{ var api_url:String; var api_token:String; var args:URLVariables; var req:URLRequest; var _operation = _arg1; var _data = _arg2; operation = _operation; api_url = MochiSocial.getAPIURL(); api_token = MochiSocial.getAPIToken(); if ((((api_url == null)) || ((api_token == null)))){ errorHandler(new IOErrorEvent(IOErrorEvent.IO_ERROR, false, false, "not logged in")); return; }; _loader = new URLLoader(); args = new URLVariables(); args.op = _operation; args.key = key; req = new URLRequest((((MochiSocial.getAPIURL() + "/") + "MochiUserData?") + args.toString())); req.method = URLRequestMethod.POST; req.contentType = "application/x-mochi-userdata"; req.requestHeaders = [new URLRequestHeader("x-mochi-services-version", MochiServices.getVersion()), new URLRequestHeader("x-mochi-api-token", api_token)]; req.data = _data; _loader.dataFormat = URLLoaderDataFormat.BINARY; _loader.addEventListener(Event.COMPLETE, completeHandler); _loader.addEventListener(IOErrorEvent.IO_ERROR, errorHandler); _loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler); try { _loader.load(req); } catch(e:SecurityError) { errorHandler(new IOErrorEvent(IOErrorEvent.IO_ERROR, false, false, ("security error: " + e.toString()))); }; } public function performCallback():void{ try { callback(this); } catch(e:Error) { trace(("[MochiUserData] exception during callback: " + e)); }; } public function serialize(_arg1):ByteArray{ var _local2:ByteArray; _local2 = new ByteArray(); _local2.objectEncoding = ObjectEncoding.AMF3; _local2.writeObject(_arg1); _local2.compress(); return (_local2); } public function errorHandler(_arg1:IOErrorEvent):void{ data = null; error = _arg1; if (callback != null){ performCallback(); } else { dispatchEvent(_arg1); }; close(); } public function completeHandler(_arg1:Event):void{ var event = _arg1; try { if (_loader.data.length){ data = deserialize(_loader.data); } else { data = null; }; } catch(e:Error) { errorHandler(new IOErrorEvent(IOErrorEvent.IO_ERROR, false, false, ("deserialize error: " + e.toString()))); return; }; if (callback != null){ performCallback(); } else { dispatchEvent(event); }; close(); } public function getEvent():void{ request("get", serialize(null)); } override public function toString():String{ return ((((((((("[MochiUserData operation=" + operation) + " key=\"") + key) + "\" data=") + data) + " error=\"") + error) + "\"]")); } public function close():void{ if (_loader){ _loader.removeEventListener(Event.COMPLETE, completeHandler); _loader.removeEventListener(IOErrorEvent.IO_ERROR, errorHandler); _loader.removeEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler); _loader.close(); _loader = null; }; error = null; callback = null; } public function deserialize(_arg1:ByteArray){ _arg1.objectEncoding = ObjectEncoding.AMF3; _arg1.uncompress(); return (_arg1.readObject()); } public static function get(_arg1:String, _arg2:Function):void{ var _local3:MochiUserData; _local3 = new MochiUserData(_arg1, _arg2); _local3.getEvent(); } public static function put(_arg1:String, _arg2, _arg3:Function):void{ var _local4:MochiUserData; _local4 = new MochiUserData(_arg1, _arg3); _local4.putEvent(_arg2); } } }//package mochi.as3
Section 29
//Config (SWFStats.Config) package SWFStats { import flash.utils.*; public class Config { public static const LevelLabels:Dictionary = new Dictionary(); public static const GUID:String = "d491297c-d202-4e53-bb14-2cd75d9a9996"; public static const LevelCounterMetrics:Dictionary = new Dictionary(); public static const ScoreTables:Dictionary = new Dictionary(); public static const LevelRangedMetrics:Dictionary = new Dictionary(); public static const CustomMetrics:Dictionary = new Dictionary(); public static const SWFID:int = 108; } }//package SWFStats
Section 30
//Tracker (SWFStats.Tracker) package SWFStats { import flash.events.*; import flash.utils.*; import flash.net.*; import flash.system.*; import flash.external.*; public class Tracker { public static const Random:Number = Math.random(); private static const Ping:Timer = new Timer(30000); public static var Initialised:Boolean = false; public static var SourceUrl:String; public static var DebugMode:Boolean = true; public static function LogView():void{ var _local1:URLLoader; if (SourceUrl == null){ return; }; if (DebugMode){ trace("SWFStats.Tracker.LogView"); }; _local1 = new URLLoader(); _local1.addEventListener(IOErrorEvent.IO_ERROR, ErrorHandler); _local1.load(new URLRequest(((((((("http://tracker.swfstats.com/games/view.aspx?guid=" + Config.GUID) + "&swfid=") + Config.SWFID) + "&url=") + SourceUrl) + "&") + Random))); Ping.addEventListener(TimerEvent.TIMER, PingServer); Ping.start(); } public static function ErrorHandler(_arg1:IOErrorEvent):void{ if (DebugMode){ trace("** ERROR COMPLETING URL REQUEST TO SWFSTATS **"); }; SourceUrl = null; } private static function PingServer(_arg1:Event):void{ var _local2:URLLoader; if (SourceUrl == null){ return; }; if (DebugMode){ trace("SWFStats.Tracker.PingServer"); }; _local2 = new URLLoader(); _local2.addEventListener(IOErrorEvent.IO_ERROR, ErrorHandler); _local2.load(new URLRequest(((((((("http://tracker.swfstats.com/games/ping.aspx?guid=" + Config.GUID) + "&swfid=") + Config.SWFID) + "&url=") + SourceUrl) + "&") + Random))); } public static function Initialise(_arg1:String, _arg2:Boolean=false):void{ var defaulturl = _arg1; var turnoffdebugmode = _arg2; DebugMode = (turnoffdebugmode) ? false : (Security.sandboxType == "localTrusted"); if (DebugMode){ trace("SWFStats.Tracker.Initialise"); }; if ((((Config.SWFID == 0)) || ((Config.GUID == "")))){ if (DebugMode){ trace("** ERROR YOU MUST COPY YOUR DATA INTO CONFIG.AS **"); trace(" You have not copied your settings into SWFStats\\Config.as."); trace(" Solution:"); trace(" 1) Go to http://my.swfstats.com/"); trace(" 2) Select your game and go into the 'API Code' section"); trace(" 3) Copy your data into SWFStats\\Config.as"); }; return; }; Initialised = true; if (((!((defaulturl.indexOf("http://") == 0))) && (!((Security.sandboxType == "localTrusted"))))){ return; }; SourceUrl = GetUrl(defaulturl); try { Security.loadPolicyFile("http://tracker.swfstats.com/crossdomain.xml"); Security.loadPolicyFile("http://utils.swfstats.com/crossdomain.xml"); } catch(s:Error) { SourceUrl = null; return; if (DebugMode){ trace("** ERROR COULD NOT LOAD SWFSTATS POLICY FILE **"); }; }; } public static function LogPlay():void{ var _local1:URLLoader; if (SourceUrl == null){ return; }; if (DebugMode){ trace("SWFStats.Tracker.LogPlay"); }; _local1 = new URLLoader(); _local1.addEventListener(IOErrorEvent.IO_ERROR, ErrorHandler); _local1.load(new URLRequest(((((((("http://tracker.swfstats.com/games/play.aspx?guid=" + Config.GUID) + "&swfid=") + Config.SWFID) + "&url=") + SourceUrl) + "&") + Random))); } private static function GetUrl(_arg1:String):String{ var url:String; var defaulturl = _arg1; try { url = String(ExternalInterface.call("window.location.href.toString")); } catch(s:Error) { url = ((defaulturl)!=null) ? defaulturl : ""; }; return (((url)!="null") ? url : ""); } } }//package SWFStats
Section 31
//bg_layer_1 (bg_layer_1) package { import flash.display.*; public dynamic class bg_layer_1 extends Sprite { } }//package
Section 32
//bg_layer_2 (bg_layer_2) package { import flash.display.*; public dynamic class bg_layer_2 extends Sprite { } }//package
Section 33
//bg_layer_3 (bg_layer_3) package { import flash.display.*; public dynamic class bg_layer_3 extends Sprite { } }//package
Section 34
//bg_layer_4 (bg_layer_4) package { import flash.display.*; public dynamic class bg_layer_4 extends MovieClip { } }//package
Section 35
//bg_layer_5 (bg_layer_5) package { import flash.display.*; public dynamic class bg_layer_5 extends MovieClip { } }//package
Section 36
//Collectable (Collectable) package { import flash.display.*; public dynamic class Collectable extends MovieClip { public function Collectable(){ addFrameScript(13, frame14, 27, frame28); } function frame14(){ stop(); parent.removeChild(this); } function frame28(){ stop(); parent.removeChild(this); } } }//package
Section 37
//credits_menu (credits_menu) package { import flash.media.*; import flash.events.*; import flash.display.*; import mochi.as3.*; import flash.utils.*; import flash.net.*; import flash.text.*; import flash.system.*; import flash.external.*; import flash.geom.*; import flash.ui.*; import adobe.utils.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; import flash.printing.*; import flash.xml.*; public dynamic class credits_menu extends MovieClip { public var dev_link:MovieClip; public var cspon_link:MovieClip; public var cred_back_btn:MovieClip; public function credits_menu(){ addFrameScript(4, frame5); } public function credBackClick(_arg1:MouseEvent):void{ parent.removeChild(this); } public function credOverState(_arg1:MouseEvent):void{ _arg1.currentTarget.gotoAndStop("over"); } function frame5(){ stop(); cred_back_btn.buttonMode = true; cred_back_btn.addEventListener(MouseEvent.MOUSE_DOWN, credBackClick); cred_back_btn.addEventListener(MouseEvent.MOUSE_OVER, credOverState); cred_back_btn.addEventListener(MouseEvent.MOUSE_OUT, credOutState); MochiServices.addLinkEvent("http://x.mochiads.com/link/f917256e65c2bf75", "http://hardcircle.com/", dev_link); MochiServices.addLinkEvent("http://x.mochiads.com/link/e2e00a333ff6ace0", "http://bored.com/", cspon_link); } public function credOutState(_arg1:MouseEvent):void{ _arg1.currentTarget.gotoAndStop("up"); } public function devClick(_arg1:MouseEvent):void{ var _local2:URLRequest; _local2 = new URLRequest("http://www.hardcircle.com/"); navigateToURL(_local2, "_blank"); } public function credClickToPlay(_arg1:MouseEvent):void{ parent.removeChild(this); } } }//package
Section 38
//GameMask (GameMask) package { import flash.display.*; public dynamic class GameMask extends Sprite { } }//package
Section 39
//info_menu (info_menu) package { import flash.media.*; import flash.events.*; import flash.display.*; import flash.utils.*; import flash.net.*; import flash.text.*; import flash.system.*; import flash.external.*; import flash.geom.*; import flash.ui.*; import adobe.utils.*; import flash.accessibility.*; import flash.errors.*; import flash.filters.*; import flash.printing.*; import flash.xml.*; public dynamic class info_menu extends MovieClip { public var info_back_btn:MovieClip; public function info_menu(){ addFrameScript(4, frame5); } public function infoOverState(_arg1:MouseEvent):void{ _arg1.currentTarget.gotoAndStop("over"); } public function infoClickToPlay(_arg1:MouseEvent):void{ parent.removeChild(this); } function frame5(){ stop(); info_back_btn.buttonMode = true; info_back_btn.addEventListener(MouseEvent.MOUSE_DOWN, infoBackClick); info_back_btn.addEventListener(MouseEvent.MOUSE_OVER, infoOverState); info_back_btn.addEventListener(MouseEvent.MOUSE_OUT, infoOutState); } public function infoOutState(_arg1:MouseEvent):void{ _arg1.currentTarget.gotoAndStop("up"); } public function infoBackClick(_arg1:MouseEvent):void{ parent.removeChild(this); } } }//package
Section 40
//JungleRomp (JungleRomp) package { import flash.media.*; public dynamic class JungleRomp extends Sound { } }//package
Section 41
//Mushroom_L (Mushroom_L) package { import flash.display.*; public dynamic class Mushroom_L extends Sprite { } }//package
Section 42
//Mushroom_M (Mushroom_M) package { import flash.display.*; public dynamic class Mushroom_M extends Sprite { } }//package
Section 43
//Node (Node) package { import flash.display.*; public dynamic class Node extends MovieClip { } }//package
Section 44
//Rex (Rex) package { import flash.display.*; public dynamic class Rex extends MovieClip { public function Rex(){ addFrameScript(21, frame22); } function frame22(){ stop(); } } }//package
Section 45
//Rock (Rock) package { import flash.display.*; public dynamic class Rock extends Sprite { } }//package
Section 46
//sfx_aStomp (sfx_aStomp) package { import flash.media.*; public dynamic class sfx_aStomp extends Sound { } }//package
Section 47
//sfx_Chomp (sfx_Chomp) package { import flash.media.*; public dynamic class sfx_Chomp extends Sound { } }//package
Section 48
//sfx_extraLife (sfx_extraLife) package { import flash.media.*; public dynamic class sfx_extraLife extends Sound { } }//package
Section 49
//sfx_Fruit (sfx_Fruit) package { import flash.media.*; public dynamic class sfx_Fruit extends Sound { } }//package
Section 50
//sfx_GameOver (sfx_GameOver) package { import flash.media.*; public dynamic class sfx_GameOver extends Sound { } }//package
Section 51
//sfx_Hit (sfx_Hit) package { import flash.media.*; public dynamic class sfx_Hit extends Sound { } }//package
Section 52
//sfx_Jump (sfx_Jump) package { import flash.media.*; public dynamic class sfx_Jump extends Sound { } }//package
Section 53
//sfx_Press (sfx_Press) package { import flash.media.*; public dynamic class sfx_Press extends Sound { } }//package
Section 54
//Stump (Stump) package { import flash.display.*; public dynamic class Stump extends Sprite { } }//package
Section 55
//terrain_0 (terrain_0) package { import flash.display.*; public dynamic class terrain_0 extends Sprite { } }//package
Section 56
//terrain_1 (terrain_1) package { import flash.display.*; public dynamic class terrain_1 extends Sprite { } }//package
Section 57
//terrain_10 (terrain_10) package { import flash.display.*; public dynamic class terrain_10 extends MovieClip { } }//package
Section 58
//terrain_11 (terrain_11) package { import flash.display.*; public dynamic class terrain_11 extends MovieClip { } }//package
Section 59
//terrain_12 (terrain_12) package { import flash.display.*; public dynamic class terrain_12 extends MovieClip { } }//package
Section 60
//terrain_13 (terrain_13) package { import flash.display.*; public dynamic class terrain_13 extends MovieClip { } }//package
Section 61
//terrain_14 (terrain_14) package { import flash.display.*; public dynamic class terrain_14 extends MovieClip { } }//package
Section 62
//terrain_15 (terrain_15) package { import flash.display.*; public dynamic class terrain_15 extends MovieClip { } }//package
Section 63
//terrain_16 (terrain_16) package { import flash.display.*; public dynamic class terrain_16 extends MovieClip { } }//package
Section 64
//terrain_17 (terrain_17) package { import flash.display.*; public dynamic class terrain_17 extends Sprite { } }//package
Section 65
//terrain_18 (terrain_18) package { import flash.display.*; public dynamic class terrain_18 extends Sprite { } }//package
Section 66
//terrain_19 (terrain_19) package { import flash.display.*; public dynamic class terrain_19 extends Sprite { } }//package
Section 67
//terrain_2 (terrain_2) package { import flash.display.*; public dynamic class terrain_2 extends MovieClip { } }//package
Section 68
//terrain_20 (terrain_20) package { import flash.display.*; public dynamic class terrain_20 extends Sprite { } }//package
Section 69
//terrain_21 (terrain_21) package { import flash.display.*; public dynamic class terrain_21 extends Sprite { } }//package
Section 70
//terrain_22 (terrain_22) package { import flash.display.*; public dynamic class terrain_22 extends Sprite { } }//package
Section 71
//terrain_23 (terrain_23) package { import flash.display.*; public dynamic class terrain_23 extends Sprite { } }//package
Section 72
//terrain_24 (terrain_24) package { import flash.display.*; public dynamic class terrain_24 extends Sprite { } }//package
Section 73
//terrain_25 (terrain_25) package { import flash.display.*; public dynamic class terrain_25 extends Sprite { } }//package
Section 74
//terrain_26 (terrain_26) package { import flash.display.*; public dynamic class terrain_26 extends Sprite { } }//package
Section 75
//terrain_27 (terrain_27) package { import flash.display.*; public dynamic class terrain_27 extends Sprite { } }//package
Section 76
//terrain_28 (terrain_28) package { import flash.display.*; public dynamic class terrain_28 extends MovieClip { } }//package
Section 77
//terrain_29 (terrain_29) package { import flash.display.*; public dynamic class terrain_29 extends Sprite { } }//package
Section 78
//terrain_3 (terrain_3) package { import flash.display.*; public dynamic class terrain_3 extends MovieClip { } }//package
Section 79
//terrain_30 (terrain_30) package { import flash.display.*; public dynamic class terrain_30 extends Sprite { } }//package
Section 80
//terrain_31 (terrain_31) package { import flash.display.*; public dynamic class terrain_31 extends Sprite { } }//package
Section 81
//terrain_32 (terrain_32) package { import flash.display.*; public dynamic class terrain_32 extends Sprite { } }//package
Section 82
//terrain_33 (terrain_33) package { import flash.display.*; public dynamic class terrain_33 extends Sprite { } }//package
Section 83
//terrain_34 (terrain_34) package { import flash.display.*; public dynamic class terrain_34 extends Sprite { } }//package
Section 84
//terrain_35 (terrain_35) package { import flash.display.*; public dynamic class terrain_35 extends Sprite { } }//package
Section 85
//terrain_4 (terrain_4) package { import flash.display.*; public dynamic class terrain_4 extends MovieClip { } }//package
Section 86
//terrain_5 (terrain_5) package { import flash.display.*; public dynamic class terrain_5 extends MovieClip { } }//package
Section 87
//terrain_6 (terrain_6) package { import flash.display.*; public dynamic class terrain_6 extends MovieClip { } }//package
Section 88
//terrain_7 (terrain_7) package { import flash.display.*; public dynamic class terrain_7 extends MovieClip { } }//package
Section 89
//terrain_8 (terrain_8) package { import flash.display.*; public dynamic class terrain_8 extends MovieClip { } }//package
Section 90
//terrain_9 (terrain_9) package { import flash.display.*; public dynamic class terrain_9 extends MovieClip { } }//package
Section 91
//UI (UI) package { import flash.display.*; import flash.text.*; public dynamic class UI extends MovieClip { public var dist_text:TextField; public var multi:MovieClip; public var multi_text:TextField; public var score_text:TextField; } }//package

Library Items

Symbol 1 Sound {sfx_Press}
Symbol 2 Sound {sfx_Jump}
Symbol 3 Sound {sfx_Hit}
Symbol 4 Sound {sfx_GameOver}
Symbol 5 Sound {sfx_Fruit}
Symbol 6 Sound {sfx_extraLife}
Symbol 7 Sound {sfx_Chomp}
Symbol 8 Sound {sfx_aStomp}
Symbol 9 Sound {JungleRomp}
Symbol 10 BitmapUsed by:12 37
Symbol 11 BitmapUsed by:12
Symbol 12 GraphicUses:10 11Used by:40
Symbol 13 GraphicUsed by:31 39
Symbol 14 BitmapUsed by:28
Symbol 15 BitmapUsed by:28
Symbol 16 BitmapUsed by:28
Symbol 17 BitmapUsed by:28
Symbol 18 BitmapUsed by:28
Symbol 19 BitmapUsed by:28
Symbol 20 BitmapUsed by:28
Symbol 21 BitmapUsed by:28
Symbol 22 BitmapUsed by:28
Symbol 23 BitmapUsed by:28
Symbol 24 BitmapUsed by:28
Symbol 25 BitmapUsed by:28
Symbol 26 BitmapUsed by:28
Symbol 27 BitmapUsed by:28
Symbol 28 GraphicUses:14 15 16 17 18 19 20 21 22 23 24 25 26 27Used by:29 31
Symbol 29 MovieClipUses:28Used by:31 39
Symbol 30 GraphicUsed by:31 39
Symbol 31 ButtonUses:13 29 30 28Used by:40
Symbol 32 BitmapUsed by:33 35
Symbol 33 GraphicUses:32Used by:36
Symbol 34 BitmapUsed by:35 317 321 325 332 336
Symbol 35 GraphicUses:34 32Used by:36
Symbol 36 MovieClip {Bimmin_fla.back_73}Uses:33 35Used by:40 43
Symbol 37 GraphicUses:10Used by:38
Symbol 38 MovieClipUses:37Used by:40
Symbol 39 MovieClip {Bimmin_fla.Page1_2}Uses:13 29 30Used by:40  Timeline
Symbol 40 MovieClip {credits_menu}Uses:12 31 36 38 39
Symbol 41 BitmapUsed by:42
Symbol 42 GraphicUses:41Used by:43
Symbol 43 MovieClip {info_menu}Uses:42 36
Symbol 44 GraphicUsed by:65
Symbol 45 BitmapUsed by:46
Symbol 46 GraphicUses:45Used by:65 89 93 95 97 103 105 107 109 111 113 115 117 121 125 129 133 135 137 140 142 146 148 263 265 269
Symbol 47 BitmapUsed by:48
Symbol 48 GraphicUses:47Used by:65 89 93 95 97 99 103 105 107 109 111 113 115 117 119 121 125 127 129 133 135 137 138 140 142 144 146 148 149 150 151 263 267 269 273 307
Symbol 49 BitmapUsed by:50
Symbol 50 GraphicUses:49Used by:65 89 93 95 97 99 103 105 107 109 111 113 115 117 119 121 125 127 129 133 135 137 140 142 144 146 148 149 263 265 267 269 273
Symbol 51 BitmapUsed by:52
Symbol 52 GraphicUses:51Used by:53
Symbol 53 MovieClip {Mushroom_M}Uses:52Used by:65 93 95 97 99 103 105 107 113 117 119 121 125 127 129 133 137 140 144 150 263 267
Symbol 54 BitmapUsed by:55
Symbol 55 GraphicUses:54Used by:65 93 125 142 146 265
Symbol 56 BitmapUsed by:57
Symbol 57 GraphicUses:56Used by:65 89 93 95 97 105 107 125 133 142 146 265
Symbol 58 BitmapUsed by:59
Symbol 59 GraphicUses:58Used by:65 89 97 105 125 133 142 263 265 267 269 273
Symbol 60 BitmapUsed by:61
Symbol 61 GraphicUses:60Used by:65 89 93 95 97 105 107 125 133 142 146 263 265 267 269 273
Symbol 62 BitmapUsed by:63
Symbol 63 GraphicUses:62Used by:65 89 93 95 99 103 105 107 109 111 113 115 117 121 125 127 129 133 135 137 140 142 144 148 149 263 265 267 269 273
Symbol 64 MovieClip {Node}Used by:65 89 93 95 97 99 103 107 109 111 113 115 117 119 121 125 127 129 133 135 137 138 140 142 144 146 148 149 150 263 265 267 269 273
Symbol 65 MovieClip {terrain_3}Uses:44 46 48 50 53 55 57 59 61 63 64
Symbol 66 GraphicUsed by:89
Symbol 67 GraphicUsed by:89 93 95 99 103 105 107 111 113 117 127 135 137 142 144 149 267
Symbol 68 GraphicUsed by:72
Symbol 69 FontUsed by:71
Symbol 70 FontUsed by:288 289 298
Symbol 71 TextUses:69Used by:72
Symbol 72 MovieClip {Mushroom_L}Uses:68 71Used by:89 93 95 97 99 103 109 113 115 119 121 127 129 137 138 140 149 150 263 267
Symbol 73 GraphicUsed by:89 95 97 105 107 125 133 142 146 265
Symbol 74 BitmapUsed by:75
Symbol 75 GraphicUses:74Used by:89 105 133 142 265
Symbol 76 BitmapUsed by:77
Symbol 77 GraphicUses:76Used by:89 133 142 263 265 267 269 273
Symbol 78 BitmapUsed by:79
Symbol 79 GraphicUses:78Used by:89 93 95 107 111 115 121 125 127 129 133 135 137 265 269 273
Symbol 80 GraphicUsed by:89 103 107 111 125 127 129 133 135 137 140 146 148 149 263 267 269 273
Symbol 81 BitmapUsed by:82
Symbol 82 GraphicUses:81Used by:89 103 107 109 111 115 125 127 129 133 135 137 140 144 146 148 149 263 267 269 273
Symbol 83 BitmapUsed by:84
Symbol 84 GraphicUses:83Used by:85
Symbol 85 MovieClip {Rock}Uses:84Used by:89 93 99 103 105 107 109 127 129 137 144 263 267 273
Symbol 86 BitmapUsed by:87
Symbol 87 GraphicUses:86Used by:88
Symbol 88 MovieClip {Stump}Uses:87Used by:89 97 105 113 117 121 125 127 135 137 138 149 267
Symbol 89 MovieClip {terrain_16}Uses:66 46 63 48 50 67 72 73 57 75 59 61 77 79 80 82 85 88 64
Symbol 90 GraphicUsed by:93
Symbol 91 BitmapUsed by:92
Symbol 92 GraphicUses:91Used by:93 95 107 125 133 142 146
Symbol 93 MovieClip {terrain_15}Uses:90 46 48 50 67 85 53 72 63 57 55 92 61 79 64
Symbol 94 GraphicUsed by:95
Symbol 95 MovieClip {terrain_14}Uses:94 46 48 53 72 67 50 63 73 57 92 61 79 64
Symbol 96 GraphicUsed by:97
Symbol 97 MovieClip {terrain_13}Uses:96 46 48 88 50 72 53 73 57 59 61 64
Symbol 98 GraphicUsed by:99 138 149 150 297
Symbol 99 MovieClip {terrain_12}Uses:98 53 48 85 67 72 63 50 64
Symbol 100 GraphicUsed by:103
Symbol 101 BitmapUsed by:102
Symbol 102 GraphicUses:101Used by:103 107 109 111 115 125 127 129 133 135 137 140 144 146 148 263 265 267 269
Symbol 103 MovieClip {terrain_11}Uses:100 48 53 67 50 85 72 63 46 102 82 80 64
Symbol 104 GraphicUsed by:105
Symbol 105 MovieClip {terrain_9}Uses:104 67 46 48 50 88 85 53 73 57 59 75 63 61
Symbol 106 GraphicUsed by:107
Symbol 107 MovieClip {terrain_8}Uses:106 63 46 48 67 50 85 53 92 73 57 61 79 80 82 102 64
Symbol 108 GraphicUsed by:109
Symbol 109 MovieClip {terrain_7}Uses:108 48 50 85 72 63 46 102 82 64
Symbol 110 GraphicUsed by:111
Symbol 111 MovieClip {terrain_6}Uses:110 48 50 67 63 46 79 80 82 102 64
Symbol 112 GraphicUsed by:113
Symbol 113 MovieClip {terrain_5}Uses:112 72 53 48 67 50 88 63 46 64
Symbol 114 GraphicUsed by:115
Symbol 115 MovieClip {terrain_4}Uses:114 48 50 72 63 46 79 82 102 64
Symbol 116 GraphicUsed by:117
Symbol 117 MovieClip {terrain_2}Uses:116 63 48 67 50 53 88 46 64
Symbol 118 GraphicUsed by:119
Symbol 119 MovieClip {terrain_1}Uses:118 48 72 53 50 64
Symbol 120 GraphicUsed by:121
Symbol 121 MovieClip {terrain_10}Uses:120 48 50 53 72 88 63 46 79 64
Symbol 122 GraphicUsed by:125
Symbol 123 BitmapUsed by:124
Symbol 124 GraphicUses:123Used by:125 142 263 265 267 269 273
Symbol 125 MovieClip {terrain_17}Uses:122 46 63 73 57 92 61 55 59 124 50 48 82 80 102 53 88 79 64
Symbol 126 GraphicUsed by:127
Symbol 127 MovieClip {terrain_18}Uses:126 63 80 82 48 50 67 102 79 88 53 72 85 64
Symbol 128 GraphicUsed by:129
Symbol 129 MovieClip {terrain_19}Uses:128 63 102 80 79 46 50 48 82 72 53 85 64
Symbol 130 GraphicUsed by:133
Symbol 131 BitmapUsed by:132
Symbol 132 GraphicUses:131Used by:133
Symbol 133 MovieClip {terrain_20}Uses:130 46 61 63 50 80 79 102 132 48 57 73 75 92 77 59 82 53 64
Symbol 134 GraphicUsed by:135
Symbol 135 MovieClip {terrain_21}Uses:134 63 80 79 102 50 48 67 46 82 88 64
Symbol 136 GraphicUsed by:137
Symbol 137 MovieClip {terrain_22}Uses:136 63 80 46 79 102 82 50 48 67 85 72 53 88 64
Symbol 138 MovieClip {terrain_23}Uses:98 72 48 88 64
Symbol 139 GraphicUsed by:140
Symbol 140 MovieClip {terrain_24}Uses:139 63 80 50 48 46 82 102 72 53 64
Symbol 141 GraphicUsed by:142
Symbol 142 MovieClip {terrain_25}Uses:141 46 61 57 73 77 92 55 59 75 124 50 48 67 63 64
Symbol 143 GraphicUsed by:144
Symbol 144 MovieClip {terrain_26}Uses:143 63 67 50 102 82 48 85 53 64
Symbol 145 GraphicUsed by:146
Symbol 146 MovieClip {terrain_27}Uses:145 46 57 73 92 61 102 82 55 50 48 80 64
Symbol 147 GraphicUsed by:148
Symbol 148 MovieClip {terrain_28}Uses:147 63 50 48 80 102 46 82 64
Symbol 149 MovieClip {terrain_29}Uses:98 63 67 80 48 50 82 72 88 64
Symbol 150 MovieClip {terrain_30}Uses:98 48 72 53 64
Symbol 151 MovieClip {terrain_0}Uses:48
Symbol 152 BitmapUsed by:153
Symbol 153 GraphicUses:152Used by:156
Symbol 154 BitmapUsed by:155
Symbol 155 GraphicUses:154Used by:156
Symbol 156 MovieClip {Rex}Uses:153 155
Symbol 157 BitmapUsed by:158 255 256
Symbol 158 GraphicUses:157Used by:186 257
Symbol 159 GraphicUsed by:186
Symbol 160 GraphicUsed by:186
Symbol 161 GraphicUsed by:186
Symbol 162 GraphicUsed by:186
Symbol 163 FontUsed by:164 169 170 171 178 183 184 185 258 259 260 338 339 340 341 342 343 344
Symbol 164 TextUses:163Used by:186
Symbol 165 GraphicUsed by:186
Symbol 166 GraphicUsed by:186
Symbol 167 GraphicUsed by:186
Symbol 168 GraphicUsed by:186
Symbol 169 TextUses:163Used by:186
Symbol 170 TextUses:163Used by:186
Symbol 171 TextUses:163Used by:186
Symbol 172 BitmapUsed by:173
Symbol 173 GraphicUses:172Used by:186
Symbol 174 GraphicUsed by:186
Symbol 175 GraphicUsed by:186
Symbol 176 GraphicUsed by:186
Symbol 177 GraphicUsed by:186
Symbol 178 TextUses:163Used by:186
Symbol 179 GraphicUsed by:186
Symbol 180 GraphicUsed by:186
Symbol 181 GraphicUsed by:186
Symbol 182 GraphicUsed by:186
Symbol 183 TextUses:163Used by:186
Symbol 184 TextUses:163Used by:186
Symbol 185 TextUses:163Used by:186
Symbol 186 MovieClip {Collectable}Uses:158 159 160 161 162 164 165 166 167 168 169 170 171 173 174 175 176 177 178 179 180 181 182 183 184 185
Symbol 187 BitmapUsed by:188
Symbol 188 GraphicUses:187Used by:238
Symbol 189 BitmapUsed by:190
Symbol 190 GraphicUses:189Used by:201
Symbol 191 BitmapUsed by:192
Symbol 192 GraphicUses:191Used by:201
Symbol 193 BitmapUsed by:194
Symbol 194 GraphicUses:193Used by:201
Symbol 195 BitmapUsed by:196
Symbol 196 GraphicUses:195Used by:201
Symbol 197 BitmapUsed by:198
Symbol 198 GraphicUses:197Used by:201
Symbol 199 BitmapUsed by:200
Symbol 200 GraphicUses:199Used by:201
Symbol 201 MovieClipUses:190 192 194 196 198 200Used by:238
Symbol 202 BitmapUsed by:203
Symbol 203 GraphicUses:202Used by:238
Symbol 204 BitmapUsed by:205
Symbol 205 GraphicUses:204Used by:238
Symbol 206 BitmapUsed by:207
Symbol 207 GraphicUses:206Used by:238 314
Symbol 208 BitmapUsed by:209
Symbol 209 GraphicUses:208Used by:238 314
Symbol 210 BitmapUsed by:211
Symbol 211 GraphicUses:210Used by:238 314
Symbol 212 BitmapUsed by:213
Symbol 213 GraphicUses:212Used by:238 314
Symbol 214 BitmapUsed by:215
Symbol 215 GraphicUses:214Used by:238 314
Symbol 216 BitmapUsed by:217
Symbol 217 GraphicUses:216Used by:238 314
Symbol 218 BitmapUsed by:219
Symbol 219 GraphicUses:218Used by:238
Symbol 220 BitmapUsed by:221
Symbol 221 GraphicUses:220Used by:238
Symbol 222 BitmapUsed by:223
Symbol 223 GraphicUses:222Used by:238
Symbol 224 BitmapUsed by:225
Symbol 225 GraphicUses:224Used by:238
Symbol 226 BitmapUsed by:227
Symbol 227 GraphicUses:226Used by:238
Symbol 228 BitmapUsed by:229
Symbol 229 GraphicUses:228Used by:238
Symbol 230 BitmapUsed by:231
Symbol 231 GraphicUses:230Used by:238
Symbol 232 BitmapUsed by:233
Symbol 233 GraphicUses:232Used by:238
Symbol 234 BitmapUsed by:235
Symbol 235 GraphicUses:234Used by:238
Symbol 236 BitmapUsed by:237
Symbol 237 GraphicUses:236Used by:238
Symbol 238 MovieClip {Bimmin.Player}Uses:188 201 203 205 207 209 211 213 215 217 219 221 223 225 227 229 231 233 235 237
Symbol 239 GraphicUsed by:240  Timeline
Symbol 240 MovieClip {GameMask}Uses:239
Symbol 241 BitmapUsed by:242 302
Symbol 242 GraphicUses:241Used by:243
Symbol 243 MovieClip {bg_layer_3}Uses:242
Symbol 244 BitmapUsed by:245 304
Symbol 245 GraphicUses:244Used by:246
Symbol 246 MovieClip {bg_layer_2}Uses:245
Symbol 247 BitmapUsed by:248
Symbol 248 GraphicUses:247Used by:249  Timeline
Symbol 249 MovieClip {bg_layer_4}Uses:248
Symbol 250 BitmapUsed by:251 300
Symbol 251 GraphicUses:250Used by:252
Symbol 252 MovieClip {bg_layer_5}Uses:251
Symbol 253 BitmapUsed by:254
Symbol 254 GraphicUses:253Used by:257
Symbol 255 GraphicUses:157Used by:257
Symbol 256 GraphicUses:157Used by:257
Symbol 257 MovieClip {Bimmin_fla.gui_multi_31}Uses:254 158 255 256Used by:261
Symbol 258 EditableTextUses:163Used by:261
Symbol 259 EditableTextUses:163Used by:261
Symbol 260 EditableTextUses:163Used by:261
Symbol 261 MovieClip {UI}Uses:257 258 259 260
Symbol 262 GraphicUsed by:263
Symbol 263 MovieClip {terrain_32}Uses:262 63 48 80 82 102 46 85 53 64 72 50 124 61 77 59
Symbol 264 GraphicUsed by:265
Symbol 265 MovieClip {terrain_33}Uses:264 46 64 63 59 73 50 57 75 77 61 55 102 79 124
Symbol 266 GraphicUsed by:267
Symbol 267 MovieClip {terrain_31}Uses:266 64 63 67 48 50 80 82 102 88 85 53 72 124 61 77 59
Symbol 268 GraphicUsed by:269
Symbol 269 MovieClip {terrain_34}Uses:268 48 79 46 63 102 82 80 50 64 124 61 77 59
Symbol 270 GraphicUsed by:273
Symbol 271 BitmapUsed by:272
Symbol 272 GraphicUses:271Used by:273
Symbol 273 MovieClip {terrain_35}Uses:270 48 79 63 82 80 272 50 124 61 77 59 85 64
Symbol 274 BitmapUsed by:275
Symbol 275 GraphicUses:274Used by:276
Symbol 276 MovieClip {bg_layer_1}Uses:275Used by:306
Symbol 277 GraphicUsed by:Timeline
Symbol 278 FontUsed by:279
Symbol 279 TextUses:278Used by:Timeline
Symbol 280 BitmapUsed by:281
Symbol 281 GraphicUses:280Used by:Timeline
Symbol 282 FontUsed by:283
Symbol 283 TextUses:282Used by:Timeline
Symbol 284 GraphicUsed by:286
Symbol 285 GraphicUsed by:286
Symbol 286 MovieClipUses:284 285Used by:Timeline
Symbol 287 GraphicUsed by:Timeline
Symbol 288 TextUses:70Used by:Timeline
Symbol 289 TextUses:70Used by:Timeline
Symbol 290 BitmapUsed by:291
Symbol 291 GraphicUses:290Used by:297
Symbol 292 BitmapUsed by:293
Symbol 293 GraphicUses:292Used by:297
Symbol 294 BitmapUsed by:295
Symbol 295 GraphicUses:294Used by:297
Symbol 296 SoundUsed by:297
Symbol 297 MovieClipUses:98 291 293 295 296Used by:Timeline
Symbol 298 TextUses:70Used by:Timeline
Symbol 299 GraphicUsed by:Timeline
Symbol 300 GraphicUses:250Used by:301
Symbol 301 MovieClipUses:300Used by:Timeline
Symbol 302 GraphicUses:241Used by:303
Symbol 303 MovieClipUses:302Used by:Timeline
Symbol 304 GraphicUses:244Used by:305
Symbol 305 MovieClipUses:304Used by:Timeline
Symbol 306 MovieClipUses:276Used by:Timeline
Symbol 307 MovieClipUses:48Used by:Timeline
Symbol 308 BitmapUsed by:309
Symbol 309 GraphicUses:308Used by:310
Symbol 310 MovieClip {Bimmin_fla.trimmovin_11}Uses:309Used by:Timeline
Symbol 311 BitmapUsed by:312
Symbol 312 GraphicUses:311Used by:313
Symbol 313 MovieClip {Bimmin_fla.Bimmindrop_12}Uses:312Used by:Timeline
Symbol 314 MovieClip {Bimmin_fla.Bim_Jog_13}Uses:207 209 211 213 215 217Used by:Timeline
Symbol 315 BitmapUsed by:316 317
Symbol 316 GraphicUses:315Used by:318
Symbol 317 GraphicUses:34 315Used by:318
Symbol 318 MovieClip {Bimmin_fla.play_14}Uses:316 317Used by:Timeline
Symbol 319 BitmapUsed by:320 321
Symbol 320 GraphicUses:319Used by:322
Symbol 321 GraphicUses:34 319Used by:322
Symbol 322 MovieClip {Bimmin_fla.info_btn_15}Uses:320 321Used by:Timeline
Symbol 323 BitmapUsed by:324 325
Symbol 324 GraphicUses:323Used by:326
Symbol 325 GraphicUses:34 323Used by:326
Symbol 326 MovieClip {Bimmin_fla.credits_btn_16}Uses:324 325Used by:Timeline
Symbol 327 BitmapUsed by:328
Symbol 328 GraphicUses:327Used by:329
Symbol 329 MovieClip {Bimmin_fla.gameover_17}Uses:328Used by:Timeline
Symbol 330 BitmapUsed by:331 332
Symbol 331 GraphicUses:330Used by:333
Symbol 332 GraphicUses:34 330Used by:333
Symbol 333 MovieClip {Bimmin_fla.retry_18}Uses:331 332Used by:Timeline
Symbol 334 BitmapUsed by:335 336
Symbol 335 GraphicUses:334Used by:337
Symbol 336 GraphicUses:34 334Used by:337
Symbol 337 MovieClip {Bimmin_fla.submit_19}Uses:335 336Used by:Timeline
Symbol 338 EditableTextUses:163Used by:Timeline
Symbol 339 EditableTextUses:163Used by:Timeline
Symbol 340 TextUses:163Used by:Timeline
Symbol 341 TextUses:163Used by:Timeline
Symbol 342 EditableTextUses:163Used by:Timeline
Symbol 343 EditableTextUses:163Used by:Timeline
Symbol 344 TextUses:163Used by:Timeline

Instance Names

"audio_tog"Frame 1Symbol 286 MovieClip
"spon_link"Frame 1Symbol 39 MovieClip {Bimmin_fla.Page1_2}
"play_btn"Frame 91Symbol 318 MovieClip {Bimmin_fla.play_14}
"info_btn"Frame 91Symbol 322 MovieClip {Bimmin_fla.info_btn_15}
"credits_btn"Frame 91Symbol 326 MovieClip {Bimmin_fla.credits_btn_16}
"retry_btn"Frame 111Symbol 333 MovieClip {Bimmin_fla.retry_18}
"submit_btn"Frame 111Symbol 337 MovieClip {Bimmin_fla.submit_19}
"score_best"Frame 111Symbol 338 EditableText
"dist_best"Frame 111Symbol 339 EditableText
"text_distance"Frame 111Symbol 342 EditableText
"text_score"Frame 111Symbol 343 EditableText
"cred_back_btn"Symbol 40 MovieClip {credits_menu} Frame 5Symbol 36 MovieClip {Bimmin_fla.back_73}
"dev_link"Symbol 40 MovieClip {credits_menu} Frame 5Symbol 38 MovieClip
"cspon_link"Symbol 40 MovieClip {credits_menu} Frame 5Symbol 39 MovieClip {Bimmin_fla.Page1_2}
"info_back_btn"Symbol 43 MovieClip {info_menu} Frame 5Symbol 36 MovieClip {Bimmin_fla.back_73}
"player_dust"Symbol 238 MovieClip {Bimmin.Player} Frame 1Symbol 201 MovieClip
"multi"Symbol 261 MovieClip {UI} Frame 1Symbol 257 MovieClip {Bimmin_fla.gui_multi_31}
"multi_text"Symbol 261 MovieClip {UI} Frame 1Symbol 258 EditableText
"score_text"Symbol 261 MovieClip {UI} Frame 1Symbol 259 EditableText
"dist_text"Symbol 261 MovieClip {UI} Frame 1Symbol 260 EditableText

Special Tags

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

Labels

"preload"Frame 1
"connect"Frame 2
"init"Frame 81
"main menu"Frame 91
"gameplay"Frame 101
"gameover"Frame 111
"up"Symbol 36 MovieClip {Bimmin_fla.back_73} Frame 1
"over"Symbol 36 MovieClip {Bimmin_fla.back_73} Frame 6
"snap"Symbol 156 MovieClip {Rex} Frame 1
"mun"Symbol 156 MovieClip {Rex} Frame 22
"gape"Symbol 156 MovieClip {Rex} Frame 23
"meat"Symbol 186 MovieClip {Collectable} Frame 1
"apple"Symbol 186 MovieClip {Collectable} Frame 15
"idle"Symbol 238 MovieClip {Bimmin.Player} Frame 1
"run_x1"Symbol 238 MovieClip {Bimmin.Player} Frame 17
"jump_x1"Symbol 238 MovieClip {Bimmin.Player} Frame 30
"jump_loop"Symbol 238 MovieClip {Bimmin.Player} Frame 40
"landing"Symbol 238 MovieClip {Bimmin.Player} Frame 47
"stumble"Symbol 238 MovieClip {Bimmin.Player} Frame 54
"run_x2"Symbol 238 MovieClip {Bimmin.Player} Frame 69
"run_x2_loop"Symbol 238 MovieClip {Bimmin.Player} Frame 71
"run_x4"Symbol 238 MovieClip {Bimmin.Player} Frame 84
"run_x4_loop"Symbol 238 MovieClip {Bimmin.Player} Frame 86
"jump_x2"Symbol 238 MovieClip {Bimmin.Player} Frame 99
"jump_x2_loop"Symbol 238 MovieClip {Bimmin.Player} Frame 114
"jump_x4"Symbol 238 MovieClip {Bimmin.Player} Frame 121
"jump_x4_loop"Symbol 238 MovieClip {Bimmin.Player} Frame 151
"stumble_x2"Symbol 238 MovieClip {Bimmin.Player} Frame 158
"stumble_x2_loop"Symbol 238 MovieClip {Bimmin.Player} Frame 164
"stumble_x4"Symbol 238 MovieClip {Bimmin.Player} Frame 170
"stumble_x4_loop"Symbol 238 MovieClip {Bimmin.Player} Frame 182
"on"Symbol 286 MovieClip Frame 1
"off"Symbol 286 MovieClip Frame 2
"up"Symbol 318 MovieClip {Bimmin_fla.play_14} Frame 1
"over"Symbol 318 MovieClip {Bimmin_fla.play_14} Frame 6
"up"Symbol 322 MovieClip {Bimmin_fla.info_btn_15} Frame 1
"over"Symbol 322 MovieClip {Bimmin_fla.info_btn_15} Frame 6
"up"Symbol 326 MovieClip {Bimmin_fla.credits_btn_16} Frame 1
"over"Symbol 326 MovieClip {Bimmin_fla.credits_btn_16} Frame 6
"up"Symbol 333 MovieClip {Bimmin_fla.retry_18} Frame 1
"over"Symbol 333 MovieClip {Bimmin_fla.retry_18} Frame 6
"up"Symbol 337 MovieClip {Bimmin_fla.submit_19} Frame 1
"over"Symbol 337 MovieClip {Bimmin_fla.submit_19} Frame 6




http://swfchan.com/23/113434/info.shtml
Created: 11/3 -2019 17:41:09 Last modified: 11/3 -2019 17:41:09 Server time: 05/05 -2024 00:10:03