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

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

Elv Is Black 2.swf

This is the info page for
Flash #22039

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


Text
<p align="center"><font face="Franklin Gothic Medium" size="12" color="#ffffff" letterSpacing="0.000000" kerning="1">0%</font></p>

loading...

presented by

<p align="center"><font face="HelveticaRounded Bold" size="36" color="#ffffff" letterSpacing="0.000000" kerning="1"><b>00:00</b></font></p>

<p align="center"><font face="HelveticaRounded Bold" size="14" color="#ffffff" letterSpacing="0.000000" kerning="1"><b>TIME LEFT</b></font></p>

<p align="left"><font face="HelveticaRounded Bold" size="36" color="#ffffff" letterSpacing="0.000000" kerning="1"><b>0,000,000</b></font></p>

<p align="left"><font face="HelveticaRounded Bold" size="14" color="#ffffff" letterSpacing="0.000000" kerning="1"><b>ELV SCORE</b></font></p>

12

<p align="center"><font face="HelveticaRounded Bold" size="32" color="#ffffff" letterSpacing="0.000000" kerning="1"><b>COMBO</b></font></p>

<p align="center"><font face="HelveticaRounded Bold" size="36" color="#ffffff" letterSpacing="0.000000" kerning="1"><b>00/00</b></font></p>

fps

fps

Play Again!

YOUR SCORE IS...

<p align="center"><font face="HelveticaRounded Bold" size="72" color="#ffffff" letterSpacing="0.000000" kerning="1"><b>28,000,000</b></font></p>

Main Menu

presented by:

developed by: Cublo Games

Play!

Press and hold to make ELV move

Let the bunnies follow you,
but don´t let them catch you!

Drop as much as you can in the hole
before time runs out

BUILDING GAME...

BUILDING GAME..

BUILDING GAME.

BUILDING GAME

More

2.0

Bunnies!

ActionScript [AS3]

Section 1
//clip_sd88detincelle_6 (ElvIsBlack2MoreBunnies_fla.clip_sd88detincelle_6) package ElvIsBlack2MoreBunnies_fla { import flash.display.*; import flash.events.*; import flash.media.*; import flash.geom.*; import flash.text.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; import flash.accessibility.*; public dynamic class clip_sd88detincelle_6 extends MovieClip { public function clip_sd88detincelle_6(){ addFrameScript(13, frame14); } function frame14(){ stop(); } } }//package ElvIsBlack2MoreBunnies_fla
Section 2
//FPS_16 (ElvIsBlack2MoreBunnies_fla.FPS_16) package ElvIsBlack2MoreBunnies_fla { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import project.*; import geeon.particles.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; import flash.accessibility.*; public dynamic class FPS_16 extends MovieClip { public var prevSecondTime:Number; public var secondTime:Number; public var tf:TextField; public var frames:Number; public var time:Number; public var frameTime:Number; public var fps:String; public var prevFrameTime:Number; public var iBar:MovieClip; public function FPS_16(){ addFrameScript(0, frame1, 1, frame2); } function frame1(){ } function frame2(){ stop(); time = 0; frameTime = 0; prevFrameTime = getTimer(); secondTime = 0; prevSecondTime = getTimer(); frames = 0; fps = "..."; this.addEventListener(Event.ENTER_FRAME, onEnterFrame); } public function onEnterFrame(_arg1:Event):void{ time = getTimer(); frameTime = (time - prevFrameTime); secondTime = (time - prevSecondTime); if (secondTime >= 1000){ fps = frames.toString(); frames = 0; prevSecondTime = time; } else { frames++; }; prevFrameTime = time; tf.text = (((fps + " FPS / ") + frameTime) + " MS"); iBar.scaleX = (iBar.scaleX - ((iBar.scaleX - (frameTime / 10)) / 5)); } } }//package ElvIsBlack2MoreBunnies_fla
Section 3
//freeinternetgamesfreeinternetgames_5 (ElvIsBlack2MoreBunnies_fla.freeinternetgamesfreeinternetgames_5) package ElvIsBlack2MoreBunnies_fla { import flash.display.*; import flash.events.*; import flash.media.*; import flash.geom.*; import flash.text.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; import flash.accessibility.*; public dynamic class freeinternetgamesfreeinternetgames_5 extends MovieClip { public function freeinternetgamesfreeinternetgames_5(){ addFrameScript(59, frame60); } function frame60(){ stop(); } } }//package ElvIsBlack2MoreBunnies_fla
Section 4
//MainTimeline (ElvIsBlack2MoreBunnies_fla.MainTimeline) package ElvIsBlack2MoreBunnies_fla { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import project.*; import geeon.particles.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; import flash.accessibility.*; public dynamic class MainTimeline extends MovieClip { public var maxBtn:SimpleButton; public var txtField:TextField; public var intro:MaxScreen; public var pointerBtn:SimpleButton; public function MainTimeline(){ addFrameScript(0, frame1, 1, frame2, 2, frame3); } function frame3(){ stop(); } function frame1(){ stop(); maxBtn.addEventListener("mouseDown", launch); this.loaderInfo.addEventListener(ProgressEvent.PROGRESS, onLoadProgress, false, 0, true); this.loaderInfo.addEventListener(Event.COMPLETE, onLoadComplete, false, 0, true); } function frame2(){ stop(); pointerBtn.addEventListener("mouseDown", launch2); } public function launch(_arg1){ Utils.getURL("http://www.maxgames.com"); } public function onLoadProgress(_arg1:Event){ txtField.text = (Math.round(((_arg1.bytesLoaded / _arg1.bytesTotal) * 100)) + "%"); } public function onLoadComplete(_arg1){ nextFrame(); } public function launch2(_arg1){ nextFrame(); Utils.getURL("http://www.maxgames.com"); } } }//package ElvIsBlack2MoreBunnies_fla
Section 5
//Symbol17copy_12 (ElvIsBlack2MoreBunnies_fla.Symbol17copy_12) package ElvIsBlack2MoreBunnies_fla { import flash.display.*; import flash.text.*; public dynamic class Symbol17copy_12 extends MovieClip { public var txtField:TextField; public var textField:TextField; } }//package ElvIsBlack2MoreBunnies_fla
Section 6
//Symbol17copy3_11 (ElvIsBlack2MoreBunnies_fla.Symbol17copy3_11) package ElvIsBlack2MoreBunnies_fla { import flash.display.*; import flash.text.*; public dynamic class Symbol17copy3_11 extends MovieClip { public var txtField:TextField; public var textField:TextField; } }//package ElvIsBlack2MoreBunnies_fla
Section 7
//Symbol17copy4_14 (ElvIsBlack2MoreBunnies_fla.Symbol17copy4_14) package ElvIsBlack2MoreBunnies_fla { import flash.display.*; import flash.text.*; public dynamic class Symbol17copy4_14 extends MovieClip { public var textField:TextField; } }//package ElvIsBlack2MoreBunnies_fla
Section 8
//Symbol20_40 (ElvIsBlack2MoreBunnies_fla.Symbol20_40) package ElvIsBlack2MoreBunnies_fla { import flash.display.*; import flash.events.*; import flash.media.*; import flash.geom.*; import flash.text.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; import flash.accessibility.*; public dynamic class Symbol20_40 extends MovieClip { public var preloadbarMc:MovieClip; public function Symbol20_40(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package ElvIsBlack2MoreBunnies_fla
Section 9
//Symbol204_BACK_20 (ElvIsBlack2MoreBunnies_fla.Symbol204_BACK_20) package ElvIsBlack2MoreBunnies_fla { import flash.display.*; public dynamic class Symbol204_BACK_20 extends MovieClip { public var backMc:MovieClip; } }//package ElvIsBlack2MoreBunnies_fla
Section 10
//Symbol24_24 (ElvIsBlack2MoreBunnies_fla.Symbol24_24) package ElvIsBlack2MoreBunnies_fla { import flash.display.*; public dynamic class Symbol24_24 extends MovieClip { public var backMc:MovieClip; } }//package ElvIsBlack2MoreBunnies_fla
Section 11
//Symbol24_BACK_21 (ElvIsBlack2MoreBunnies_fla.Symbol24_BACK_21) package ElvIsBlack2MoreBunnies_fla { import flash.display.*; public dynamic class Symbol24_BACK_21 extends MovieClip { public var backMc:MovieClip; } }//package ElvIsBlack2MoreBunnies_fla
Section 12
//Symbol41copy_13 (ElvIsBlack2MoreBunnies_fla.Symbol41copy_13) package ElvIsBlack2MoreBunnies_fla { import flash.display.*; import flash.text.*; public dynamic class Symbol41copy_13 extends MovieClip { public var textFieldTitle:TextField; public var textField:TextField; } }//package ElvIsBlack2MoreBunnies_fla
Section 13
//Timeline_23 (ElvIsBlack2MoreBunnies_fla.Timeline_23) package ElvIsBlack2MoreBunnies_fla { import flash.display.*; public dynamic class Timeline_23 extends MovieClip { public var backMc:MovieClip; } }//package ElvIsBlack2MoreBunnies_fla
Section 14
//Button (geeon.components.Button) package geeon.components { import flash.display.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import project.*; import geeon.particles.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class Button extends MCWrapper { var isDown:Boolean; var onOff:Boolean;// = false public var mute:Boolean;// = false var isOver:Boolean; var offsetX; var offsetY; var playing:Boolean;// = false public var selectable:Boolean;// = false public var center; var frame; var animating:Boolean;// = false public var group:Array; var area_mc:Sprite; var lastClick; var draggable; public var selected:Boolean;// = false public var bounds; public var onSelect:Function; public var unique:Boolean; var blocked:Boolean;// = false var thumbnail; public function Button(_arg1){ var _local2:*; var _local3:*; var _local4:*; animating = false; selected = false; onOff = false; blocked = false; selectable = false; mute = false; playing = false; onSelect = function (_arg1:Button){ }; if (_arg1.linkage){ _arg1.target = Utils.attach(_arg1.linkage, _arg1.parent); //unresolved jump }; super(_arg1); type = "Button"; area_mc = Utils.drawArea(target, width, height); area_mc.buttonMode = true; params.mouseOver = Utils.or(params.mouseOver, new Function()); params.mouseOut = Utils.or(params.mouseOut, new Function()); params.mouseUp = Utils.or(params.mouseUp, new Function()); params.mouseDown = Utils.or(params.mouseDown, new Function()); params.doubleClick = Utils.or(params.doubleClick, new Function()); onSelect = Utils.or(params.onSelect, onSelect); mute = Utils.or(params.mute, mute); target.ref = this; group = Index.add(this, params.group); update(_arg1); center = params.center; if (center){ Utils.autoCenter(area_mc); //unresolved jump }; target.stop(); labels = []; _local2 = target.currentScene.labels; for (_local3 in _local2) { _local4 = _local2[_local3].name; labels[_local4] = _local2[_local3].frame; }; area_mc.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown, false, 0, true); area_mc.addEventListener(MouseEvent.MOUSE_OVER, mouseOver, false, 0, true); area_mc.addEventListener(MouseEvent.MOUSE_OUT, mouseOut, false, 0, true); labels.Up = Utils.or(labels.Up, Utils.or(labels.OverIn, 1)); labels.Over = Utils.or(labels.Over, 2); labels.Down = Utils.or(labels.Down, 3); labels.Selected = Utils.or(labels.Selected, (labels.OverIn) ? labels.Down : 4); labels.loopFrame = (labels.OverOut) ? Utils.or(labels.Outro, target.totalFrames) : null; labels.OverIn = Utils.or(labels.OverIn, labels.Over); labels.OverOut = Utils.or(labels.OverOut, labels.Up); if (!labels.Intro){ target.gotoAndStop(labels.Up); //unresolved jump }; Thread.add(animation); } public function select(){ if (((!(isDown)) && (!(selected)))){ mouseDown(); //unresolved jump }; selected = true; Index.select(this); } public function mouseOver(_arg1=null){ if (blocked){ return; }; if (!mute){ Mixer.playFX("buttonOverSound"); //unresolved jump }; isOver = true; if (!selected){ params.mouseOver(); handleButton(labels.OverIn); }; } public function mouseUp(_arg1=null){ handleButton((selected) ? labels.Selected : (isOver) ? labels.OverIn : (isDown) ? labels.Down : labels.OverOut); params.mouseUp(); Thread.remove(drag); isDown = false; if ((((lastClick - (lastClick = getTimer())) + 500) > 0)){ params.doubleClick(this); //unresolved jump }; Thread.remove(mouseUp); } public function drag(){ if (bounds.horizontal != false){ x = (parent.mouseX + offsetX); //unresolved jump }; if (bounds.vertical != false){ y = (parent.mouseY + offsetY); //unresolved jump }; Utils.boundaries(target, bounds); } public function mouseOut(_arg1=null){ if (blocked){ return; }; isOver = false; if (!selected){ handleButton((isDown) ? labels.Down : labels.OverOut); params.mouseOut(); }; } public function enable(){ alpha = 1; unBlock(); } public function animation(){ if ((((currentFrame == labels.Selected)) || ((currentLabel == "Selected")))){ if (selected){ playing = false; } else { playing = true; target.gotoAndStop(labels.OverOut); }; }; if (currentFrame == labels.Down){ if (isDown){ playing = false; } else { playing = true; target.gotoAndStop(labels.OverOut); }; }; if (currentFrame == labels.loopFrame){ playing = true; target.gotoAndStop(labels.Up); }; if (currentFrame == labels.Up){ if (((!(isOver)) && (!(selected)))){ playing = false; } else { playing = true; target.gotoAndStop(labels.OverIn); }; }; if (currentFrame == labels.Over){ if (((isOver) || (selected))){ playing = false; } else { playing = true; target.gotoAndStop(labels.OverOut); }; }; if (playing){ target.nextFrame(); //unresolved jump }; } public function handleButton(_arg1){ if ((((_arg1 == labels.Selected)) || ((_arg1 == labels.Down)))){ playing = false; target.gotoAndStop(_arg1); } else { playing = true; }; animation(); } public function unBlock(){ area_mc.buttonMode = true; blocked = false; } public function block(){ area_mc.buttonMode = false; blocked = true; } public function update(_arg1){ Utils.extract(_arg1, params); draggable = params.draggable; unique = params.unique; selectable = params.selectable; onOff = params.onOff; if (_arg1.thumbnail){ if (!thumbnail){ thumbnail = Mixer.add({uri:params.thumbnail, target:Utils.or(target.thumbnailMc, target), fitArea:target.areaMc}); } else { thumbnail.load(params.thumbnail); }; }; if (((target.form) && (_arg1.form))){ for (n in _arg1.form) { if (((target.form[n]) && (_arg1.form[n]))){ target.form[n].text = _arg1.form[n]; continue; }; }; }; bounds = Utils.or(params.bounds, {}); } public function deSelect(){ if (selected){ selected = false; mouseOut(); }; } public function disable(){ alpha = 0.5; block(); } public function mouseDown(_arg1=null){ if (blocked){ return; }; if (!mute){ Mixer.playFX("buttonDownSound"); //unresolved jump }; isDown = true; if (selectable){ if (((onOff) && (selected))){ deSelect(); } else { select(); }; }; Thread.add(mouseUp, "mouseUp"); if (draggable){ offsetX = (x - parent.mouseX); offsetY = (y - parent.mouseY); Thread.add(drag); }; handleButton(labels.Down); params.mouseDown(); onSelect(this); } public static function setSimpleButtons(_arg1, _arg2, _arg3=null){ var _local4:*; var _local5:*; _local4 = Utils.getContained(_arg1); for (_local5 in _local4) { setSimpleButton(_local4[_local5], _arg2, _arg3); }; } public static function setSimpleButton(_arg1, _arg2, _arg3=null){ new ButtonData(_arg1, _arg2, _arg3); } } }//package geeon.components import flash.display.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import project.*; import geeon.particles.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; class ButtonData { public var func:Function; public var params:Object; public var name:String; private function ButtonData(_arg1:SimpleButton, _arg2, _arg3=null){ _arg1.addEventListener(MouseEvent.CLICK, activate); name = _arg1.name; func = _arg2; params = params; } public function activate(_arg1){ if (params){ func(params); } else { func(); }; } }
Section 15
//Index (geeon.components.Index) package geeon.components { import flash.display.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import project.*; import geeon.particles.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class Index { static var list:Array = []; public static function add(_arg1, _arg2){ var _local3:*; _local3 = list; if (_arg2){ if (!list[_arg2]){ list[_arg2] = []; //unresolved jump }; _local3 = list[_arg2]; }; _local3.push(_arg1); return (_local3); } public static function select(_arg1){ var _local2:*; var _local3:*; var _local4:*; _local2 = _arg1.group; _local2.selected = _arg1; if (_arg1.unique){ _local3 = 0; for (;_local3 < _local2.length;_local3++) { _local4 = _local2[_local3]; if (((!((_local4 == _arg1))) && (_local4.selected))){ _local4.deSelect(); continue; }; }; }; } } }//package geeon.components class Unlocker { private function Unlocker(){ } }
Section 16
//MCWrapper (geeon.components.MCWrapper) package geeon.components { import flash.display.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import project.*; import geeon.particles.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class MCWrapper extends EventDispatcher { public var target; public var instance; public var event; public var params; public var mode:String; public var type:String;// = "MC" public var _height:Number; public var _width:Number; public var z:Number; public var labels:Array; public function MCWrapper(_arg1){ var _local2:*; var _local3:*; var _local4:*; type = "MC"; super(); params = _arg1; target = Utils.or(params.target, new MovieClip()); _width = Utils.or(params.width, target.width); _height = Utils.or(params.height, target.height); mode = Utils.or(params.mode, "default"); instance = this; if (typeof(target) == "movieclip"){ target.ref = this; labels = []; _local2 = target.currentScene.labels; for (_local3 in _local2) { _local4 = _local2[_local3].name; labels[_local4] = _local2[_local3].frame; }; }; } public function get y(){ return (target.y); } public function addChild(_arg1){ target.addChild(_arg1); return (_arg1); } public function get currentLabel(){ return (target.currentLabel); } public function removeChild(_arg1){ target.removeChild(_arg1); return (_arg1); } public function set width(_arg1){ target.width = _arg1; } public function set scaleX(_arg1){ target.scaleX = _arg1; } public function gotoAndStop(_arg1){ target.gotoAndStop(_arg1); } public function get currentFrame(){ return (target.currentFrame); } public function set scaleY(_arg1){ target.scaleY = _arg1; } public function get height(){ return (target.height); } public function get parent(){ return (target.parent); } public function set alpha(_arg1){ target.alpha = _arg1; } public function gotoAndPlay(_arg1){ target.gotoAndPlay(_arg1); } public function get scaleY(){ return (target.scaleY); } public function get mouseX(){ return (target.mouseX); } public function set height(_arg1){ target.height = _arg1; } public function get mouseY(){ return (target.mouseY); } public function get scaleX(){ return (target.scaleX); } public function get alpha(){ return (target.alpha); } public function set visible(_arg1){ target.visible = _arg1; } public function set x(_arg1){ target.x = _arg1; } public function get visible(){ return (target.visible); } public function get width(){ return (target.width); } public function get x(){ return (target.x); } public function set y(_arg1){ target.y = _arg1; } public function set rotation(_arg1){ target.rotation = _arg1; } public function get rotation(){ return (target.rotation); } } }//package geeon.components
Section 17
//GamePage (geeon.gdocument.GamePage) package geeon.gdocument { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import project.*; import geeon.particles.*; import flash.media.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class GamePage extends MovieClip { public var maxBtn:SimpleButton; public var pointerBtn:SimpleButton; public static var instance; public function GamePage(){ instance = this; visible = false; Space.init({container:this}); hide(); new GameEngine(); Button.setSimpleButton(maxBtn, sponsor); } public function sponsor(){ Utils.getURL("http://www.maxgames.com"); } public static function show(){ GameEngine.restart(); Document.setGameQuality(); } public static function hide(){ GameEngine.clearThreads(); } } }//package geeon.gdocument
Section 18
//GDocument (geeon.gdocument.GDocument) package geeon.gdocument { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import project.*; import geeon.particles.*; import flash.media.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class GDocument extends Sprite { public static var instance:GDocument; public static var currentPage; public static var paused:Boolean = false; public function GDocument(){ instance = this; if (root.stage){ initialize(this); }; } public function resume(){ paused = false; } public function start(){ paused = false; showPage(SplashPage); } public function initialize(_arg1){ Document.init(_arg1); start(); } public function pause(){ paused = true; } public static function showPage(_arg1){ Document.setInterfaceQuality(); if (currentPage){ currentPage.instance.gotoAndStop(1); currentPage.instance.visible = false; currentPage.instance.cacheAsBitmap = true; currentPage.hide(); }; currentPage = _arg1; currentPage.instance.visible = true; currentPage.instance.cacheAsBitmap = false; currentPage.instance.gotoAndPlay(1); currentPage.show(); } } }//package geeon.gdocument
Section 19
//AbstractHolder (geeon.holders.AbstractHolder) package geeon.holders { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import project.*; import geeon.particles.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class AbstractHolder extends Sprite { public var loader; public var playing:Boolean; public var totalTime:Number;// = 0 public var fitArea; public var bytesLoaded:Number;// = 0 public var video:Video; public var area_mc:MovieClip; public var streamSlider; public var ref; public var pan:Number;// = 0 public var group; public var dispatcher; public var preloadbarMc:MovieClip; public var percentLoaded:Number;// = 0 public var time:Number;// = 0 public var mouseDown; public var soundChannel; public var volume:Number;// = 1 public var id:Number; public var position:Number;// = 0 public var bitmap:BitmapData; public var button:Button; public var type:String; public var timeMc:MovieClip; public var onStreamStart; public var percentPlayed:Number;// = 0 var stream; public var target; public var params:Object; public var bytesTotal:Number;// = 0 public var duration:Number;// = 10000000 public var data; public var blocked:Boolean;// = false public static var counter; public function AbstractHolder(_arg1=null){ volume = 1; bytesLoaded = 0; bytesTotal = 0; percentLoaded = 0; duration = 10000000; position = 0; percentPlayed = 0; blocked = false; time = 0; totalTime = 0; pan = 0; onStreamStart = function (){ }; super(); id = Utils.forceNumber(counter++); Utils.removeChilds(this); params = _arg1; type = Utils.or(params.type, Utils.getFileExtension(params.uri)).toLowerCase(); params.onLoadComplete = Utils.or(params.onLoadComplete, new Function()); params.onLoadProgress = Utils.or(params.onLoadProgress, new Function()); params.onLoadError = Utils.or(params.onLoadError, new Function()); params.onStreamComplete = Utils.or(params.onStreamComplete, new Function()); onStreamStart = Utils.or(params.onStreamStart, onStreamStart); group = params.group; target = params.target; fitArea = params.fitArea; timeMc = params.timeMc; playing = true; streamSlider = params.streamSlider; if (streamSlider){ streamSlider.seHolder(this); //unresolved jump }; mouseDown = params.mouseDown; pan = Utils.or(params.pan, pan); preloadbarMc = params.preloadbarMc; if (preloadbarMc){ preloadbarMc.scaleX = 0.01; preloadbarMc.alpha = 0; //unresolved jump }; } public function stop(){ doStop(); playing = false; if (soundChannel){ soundChannel.stop(); //unresolved jump }; } public function doOnLoadError(){ } public function setVolume(_arg1){ volume = _arg1; } public function doOnLoadProgress(){ } public function doPause(){ } public function setButton(){ if (((mouseDown) && (fitArea))){ area_mc = new MovieClip(); Utils.drawArea(area_mc, fitArea.width, fitArea.height); parent.addChild(area_mc); button = new Button({target:area_mc, mouseDown:mouseDown}); }; } public function onStream(){ doOnStream(); percentPlayed = ((position * 100) / duration); if (((streamSlider) && (!(blocked)))){ streamSlider.setPercent(percentPlayed); //unresolved jump }; if (timeMc){ timeMc.fieldTime.text = Utils.seconds2Minutes(stream.time); //unresolved jump }; if ((Math.ceil(percentPlayed) >= 100)){ onStreamComplete(); //unresolved jump }; if (((streamSlider) && (!(blocked)))){ streamSlider.setPercent(percentPlayed); //unresolved jump }; } public function doPlay(){ } public function start(){ doStart(); playing = true; } public function seek(_arg1, _arg2=false){ doSeek(_arg1, _arg2); blocked = !(_arg2); } public function doStart(){ } public function onStreamComplete(_arg1=null){ doOnStreamComplete(); removeButton(); Thread.remove(onStream); params.onStreamComplete(); } public function onLoadProgress(_arg1=null):void{ bytesLoaded = _arg1.bytesLoaded; bytesTotal = _arg1.bytesTotal; doOnLoadProgress(); percentLoaded = ((bytesLoaded * 100) / bytesTotal); if ((percentLoaded == 100)){ Thread.remove(onLoadProgress); //unresolved jump }; if (streamSlider){ streamSlider.fillPreloadBar(percentLoaded); //unresolved jump }; if (preloadbarMc){ preloadbarMc.scaleX = (percentLoaded / 100); preloadbarMc.alpha = 1; }; } public function update(_arg1){ } public function removeButton(){ if (area_mc){ parent.removeChild(area_mc); //unresolved jump }; } public function doStop(){ } public function doOnLoadComplete(){ } public function play(){ if (!playing){ doPlay(); playing = true; }; } public function httpStatusHandler(_arg1=null){ } public function doOnStreamComplete(){ } public function securityErrorHandler(_arg1=null){ } public function openHandler(_arg1=null){ } public function doSeek(_arg1=null, _arg2=null){ } public function onLoadError(_arg1=null):void{ params.onLoadError(_arg1); dispatchEvent(_arg1); } public function onLoadComplete(_arg1){ doOnLoadComplete(); setButton(); if (preloadbarMc){ preloadbarMc.scaleX = 0.01; preloadbarMc.alpha = 0; }; } public function doStream(){ } public function doOnStream(){ } public function pause(){ if (playing){ doPause(); playing = false; }; } public function setListeners(){ dispatcher.addEventListener(Event.COMPLETE, onLoadComplete, false, 0, true); dispatcher.addEventListener(ProgressEvent.PROGRESS, onLoadProgress, false, 0, true); dispatcher.addEventListener(IOErrorEvent.IO_ERROR, onLoadError, false, 0, true); dispatcher.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpStatusHandler, false, 0, true); dispatcher.addEventListener(Event.OPEN, openHandler, false, 0, true); dispatcher.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler, false, 0, true); if (target){ target.addChild(this); //unresolved jump }; if (params.volume != null){ setVolume(params.volume); //unresolved jump }; } } }//package geeon.holders class Unlocker { private function Unlocker(){ } }
Section 20
//BitmapHolder (geeon.holders.BitmapHolder) package geeon.holders { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import project.*; import geeon.particles.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class BitmapHolder extends AbstractHolder { public function BitmapHolder(_arg1=null){ super(_arg1); params = _arg1; loader = new Loader(); dispatcher = loader.contentLoaderInfo; if (params.uri){ start(); //unresolved jump }; addChild(loader); setListeners(); } override public function doStart(){ load(params.uri); } public function load(_arg1){ loader.load(new URLRequest(_arg1)); } override public function doOnLoadComplete(){ if (fitArea){ Utils.fit(loader, fitArea); //unresolved jump }; } } }//package geeon.holders
Section 21
//MCHolder (geeon.holders.MCHolder) package geeon.holders { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import project.*; import geeon.particles.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class MCHolder extends AbstractHolder { var resized:Boolean;// = false public function MCHolder(_arg1=null){ resized = false; super(_arg1); loader = new Loader(); dispatcher = loader.contentLoaderInfo; setListeners(); loader.load(new URLRequest(params.uri)); if (target){ target.addChild(loader); //unresolved jump }; } override public function doOnLoadProgress(){ if (((!(resized)) && ((loader.width > 1)))){ getStream(); //unresolved jump }; } override public function doPause(){ if (stream){ stream.stop(); //unresolved jump }; } override public function doPlay(){ if (stream){ stream.play(); //unresolved jump }; } public function getStream(){ resized = true; stream = loader.content; duration = stream.totalFrames; if (fitArea){ Utils.fit(loader, fitArea); //unresolved jump }; onStreamStart(); stream.gotoAndPlay(1); Thread.add(onStream); } override public function doStart(){ if (stream){ stream.gotoAndPlay(1); //unresolved jump }; } override public function doStop(){ if (stream){ stream.gotoAndStop(1); //unresolved jump }; loader.unload(); Thread.remove(onStream); dispatcher.removeEventListener(Event.COMPLETE, onLoadComplete); dispatcher.removeEventListener(ProgressEvent.PROGRESS, onLoadProgress); dispatcher.removeEventListener(IOErrorEvent.IO_ERROR, onLoadError); dispatcher.removeEventListener(HTTPStatusEvent.HTTP_STATUS, httpStatusHandler); dispatcher.removeEventListener(Event.OPEN, openHandler); dispatcher.removeEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler); } override public function doOnLoadComplete(){ if (!resized){ getStream(); //unresolved jump }; } override public function doOnStreamComplete(){ if (stream){ stream.stop(); //unresolved jump }; Thread.remove(onStream); } override public function doOnStream(){ position = stream.currentFrame; } } }//package geeon.holders
Section 22
//SoundHolder (geeon.holders.SoundHolder) package geeon.holders { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import project.*; import geeon.particles.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class SoundHolder extends AbstractHolder { public function SoundHolder(_arg1=null){ super(_arg1); stream = (params.linkage) ? Utils.attach(params.linkage) : new Sound(new URLRequest(params.uri), new SoundLoaderContext((params.buffer * 1000))); dispatcher = stream; setListeners(); start(); dispatcher.addEventListener(Event.ID3, onID3, false, 0, true); dispatcher.addEventListener(Event.COMPLETE, onID3, false, 0, true); } function onID3(_arg1:Event):void{ var _local2:*; _local2 = ID3Info(stream.id3); } override public function doStart(){ if (soundChannel){ soundChannel.stop(); //unresolved jump }; soundChannel = stream.play((params.ini) ? (params.ini * 1000) : 0, ((params.loop)>=0) ? params.loop : 0); soundChannel.addEventListener(Event.SOUND_COMPLETE, onStreamComplete, false, 0, true); } } }//package geeon.holders
Section 23
//VideoHolder (geeon.holders.VideoHolder) package geeon.holders { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import project.*; import geeon.particles.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class VideoHolder extends AbstractHolder { public function VideoHolder(_arg1=null){ var _local2:NetConnection; super(_arg1); video = new Video(); _local2 = new NetConnection(); _local2.connect(null); soundChannel = (stream = new NetStream(_local2)); stream.bufferTime = 9; stream.play(params.uri); stream.client = {onMetaData:onMetaData}; video.attachNetStream(stream); dispatcher = stream; if (target){ target.addChild(video); } else { addChild(video); }; Thread.add(onStream); stream.addEventListener(NetStatusEvent.NET_STATUS, onNetStatus, false, 0, true); } override public function doOnLoadProgress(){ bytesLoaded = stream.bytesLoaded; bytesTotal = stream.bytesTotal; } override public function doPause(){ stream.pause(); } function onMetaData(_arg1:Object){ if (_arg1.duration){ duration = _arg1.duration; //unresolved jump }; if (timeMc){ timeMc.fieldTotal.text = Utils.seconds2Minutes(duration); //unresolved jump }; } override public function doPlay(){ stream.resume(); } function onNetStatus(_arg1:NetStatusEvent){ video.width = video.videoWidth; video.height = video.videoHeight; if (fitArea){ Utils.fit(video, fitArea); //unresolved jump }; } override public function doStop(){ stream.seek(0); } override public function doOnStream(){ position = stream.time; } } }//package geeon.holders
Section 24
//Bitmap3D (geeon.particles.Bitmap3D) package geeon.particles { import flash.display.*; public class Bitmap3D extends Bitmap { public var z:Number;// = 0 public function Bitmap3D(_arg1:BitmapData=null, _arg2:String="auto", _arg3:Boolean=true){ z = 0; super(_arg1, _arg2, _arg3); } } }//package geeon.particles
Section 25
//BitmapDataPool (geeon.particles.BitmapDataPool) package geeon.particles { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import project.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class BitmapDataPool { public static var percent:int = 100; private static var length:int = 0; private static var cached:int = 0; public static var preloadBar:MovieClip; public static var onFinish:Function = function (){ }; public static var pool:Dictionary = new Dictionary(); public function BitmapDataPool(_arg1:Unlocker){ } private static function push(_arg1, _arg2=null){ Document.setRenderQuality(); pool[_arg1] = new BitmapDataCapture(_arg1, _arg2); length++; getPercent(); return (pool[_arg1]); } public static function onThreadComplete(_arg1){ cached++; getPercent(); } public static function getPercent(){ percent = Math.round(((cached * 100) / length)); if (preloadBar){ preloadBar.scaleX = (percent / 100); //unresolved jump }; if (cached == length){ if (onFinish != null){ onFinish(); //unresolved jump }; }; } public static function batch(_arg1:Array){ var _local2:*; while (_arg1.length) { _local2 = _arg1.shift(); if ((_local2.length > 1)){ pull(_local2); continue; }; }; } public static function pull(_arg1, _arg2=null){ if (_arg2){ delete pool[_arg1]; }; return ((pool[_arg1]) ? pool[_arg1] : push(_arg1, _arg2)); } } }//package geeon.particles import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import project.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; class Unlocker { private function Unlocker(){ } } class BitmapDataCapture { private var movieclip:MovieClip; public var timeline:Array; public var linkage; public var width:int;// = 1 private var bmp:BitmapData; private var renderFunction; private var labelFrame:int; public var height:int;// = 1 private var frameIsReady:Boolean; public var n:int;// = 0 private var currentFrame:int;// = 1 private var label:String; private var lastLabel:String; private function BitmapDataCapture(_arg1, _arg2=null){ timeline = []; n = 0; width = 1; height = 1; currentFrame = 1; super(); linkage = _arg1; renderFunction = _arg2; timeline.labels = []; cacheMovieClip(); } public function drawFrame(){ movieclip.gotoAndStop(currentFrame); frameIsReady = (renderFunction) ? renderFunction(movieclip) : true; if (!frameIsReady){ return; }; bmp = new BitmapData(width, height, true, 0); bmp.draw(movieclip); timeline[(currentFrame - 1)] = bmp; label = movieclip.currentLabel; if (label){ if (label != lastLabel){ lastLabel = label; labelFrame = 0; }; var _local1 = labelFrame++; timeline[label][_local1] = bmp; }; if ((++currentFrame > movieclip.totalFrames)){ onComplete(); //unresolved jump }; } public function cacheMovieClip(){ var _local1:*; movieclip = new linkage(); width = movieclip.width; height = movieclip.height; bmp = new BitmapData(width, height, true, 0); bmp.draw(movieclip); _local1 = 1; while (_local1 <= movieclip.totalFrames) { movieclip.gotoAndStop(_local1); timeline.push(bmp); label = movieclip.currentLabel; if (label){ if (!timeline[label]){ timeline.labels.push(label); timeline[label] = []; }; timeline[label].push(bmp); }; _local1++; }; Thread.add(drawFrame); } public function cacheBitmapData(){ bmp = new linkage(1, 1); height = bmp.height; width = bmp.width; timeline.push(bmp); BitmapDataPool.onThreadComplete(linkage); } public function onComplete(){ movieclip.visible = false; movieclip = null; Thread.remove(drawFrame); BitmapDataPool.onThreadComplete(linkage); } }
Section 26
//Bounds (geeon.particles.Bounds) package geeon.particles { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import project.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class Bounds { public var dept:int; public var width:int; public var radius:int; public var hit:Boolean; public var top:int; public var right:int; public var left:int; public var height:int; public var front:int; public var bottom:int; public var y:int; public var x:int; public function Bounds(_arg1=0, _arg2=0, _arg3=0, _arg4=0, _arg5=0, _arg6=0){ top = _arg1; bottom = _arg2; left = _arg3; right = _arg4; depth = _arg5; front = _arg6; } public function update(_arg1){ top = Utils.or(_arg1.top, top); bottom = Utils.or(_arg1.bottom, bottom); left = Utils.or(_arg1.left, left); right = Utils.or(_arg1.right, right); depth = Utils.or(_arg1.depth, depth); front = Utils.or(_arg1.front, front); } public function reset(){ top = (bottom = (left = (right = (depth = (front = 0))))); } public function setAura(_arg1, _arg2, _arg3, _arg4){ var _local5:*; var _local6:*; _local5 = (_arg3 / 2); _local6 = (_arg4 / 2); left = (_arg1 - _local5); right = (_arg1 + _local5); top = (_arg2 - _local6); bottom = (_arg2 + _local6); } public function toString(){ return (((((((("BOUNDS Left " + left) + " Right ") + right) + " Top ") + top) + " Bottom ") + bottom)); } public function constrain(_arg1){ _arg1.x = Utils.constrain(_arg1.x, left, right); _arg1.y = Utils.constrain(_arg1.y, top, bottom); } } }//package geeon.particles
Section 27
//Keyb (geeon.particles.Keyb) package geeon.particles { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import project.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class Keyb { public static var isDown:Object = {}; private static var keyMap:Object = {37:"LEFT", 38:"UP", 39:"RIGHT", 40:"DOWN", 32:"SPACE", 48:0, 49:1, 50:2, 51:3, 52:4, 53:5, 54:6, 55:7, 56:8, 57:9, 65:"a", 66:"b", 67:"c", 68:"d", 69:"e", 70:"f", 71:"g", 72:"h", 73:"i", 74:"j", 75:"k", 76:"l", 77:"m", 78:"n", 79:"o", 81:"q", 82:"r", 83:"s", 84:"t", 85:"u", 86:"v", 87:"w", 88:"x", 89:"y", 90:"z"}; public static var delta:int = 0; public static function onEvent(_arg1){ var _local2:*; var _local3:*; _local2 = _arg1.type; if ((((_local2 == "keyDown")) || ((_local2 == "keyUp")))){ _local3 = keyMap[_arg1.keyCode]; if ((_local2 == "keyDown")){ isDown[_local3] = true; } else { delete isDown[_local3]; }; isDown.SHIFT = _arg1.shiftKey; isDown.ALT = _arg1.altKey; isDown.CONTROL = _arg1.ctrlKey; }; Thread.dispatch(_arg1); } } }//package geeon.particles
Section 28
//Space (geeon.particles.Space) package geeon.particles { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import project.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class Space extends Sprite { public static var ceil:Sprite = new Sprite(); public static var specialfx:Sprite = new Sprite(); public static var floor:Sprite = new Sprite(); public static var sprites:Sprite = new Sprite(); public static var shadows:Sprite = new Sprite(); public static var instance:Space; public static var clouds:Sprite = new Sprite(); public static var autoScroll:Boolean = true; public static var centerY:Number = (Document.height / 2); public static var pool:Array = []; public static var SCROLL_FRICTION:int = 6; public static var text:Sprite = new Sprite(); public static var centerX:Number = (Document.width / 2); public static var rect:Rectangle = new Rectangle(0, 0, Document.width, Document.height); public static var bounds:Bounds; public function Space(_arg1, _arg2:Unlocker){ instance = this; if (_arg1.container){ Utils.toBack(this, _arg1.container); //unresolved jump }; addChild(floor); addChild(shadows); addChild(sprites); addChild(ceil); addChild(clouds); addChild(specialfx); addChild(text); } public function scroll(){ x = (x + ((-((Viewport.focus.x - centerX)) - x) / SCROLL_FRICTION)); y = (y + ((-((Viewport.focus.y - centerY)) - y) / SCROLL_FRICTION)); if (bounds){ bounds.constrain(this); //unresolved jump }; } public static function remove(_arg1){ pool.splice(pool.indexOf(_arg1), 1); Utils.removeChild(_arg1.target); return (pool); } public static function shake(_arg1:int=20, _arg2:int=0){ instance.x = (instance.x + _arg2); instance.y = (instance.y + _arg1); } public static function init(_arg1=null){ if (!instance){ new Space(_arg1, new Unlocker()); //unresolved jump }; reset(); return (instance); } public static function constrainScroll(_arg1, _arg2){ if (!bounds){ bounds = new Bounds(); //unresolved jump }; bounds.setAura(centerX, centerY, _arg1, _arg2); } public static function step(){ var _local1:*; var _local2:*; var _local3:*; for (_local1 in pool) { pool[_local1].step(); }; _local2 = Utils.getContained(sprites); _local2.sortOn("z"); for (_local3 in _local2) { sprites.setChildIndex(_local2[_local3], _local3); }; instance.scroll(); } public static function push(_arg1, _arg2="sprites"){ if (pool.indexOf(_arg1) == -1){ pool.push(_arg1); if (_arg1.target){ Space[_arg2].addChild(_arg1.target); //unresolved jump }; }; return (pool); } public static function reset(){ pool = []; Utils.removeChilds(floor); Utils.removeChilds(shadows); Utils.removeChilds(sprites); Utils.removeChilds(ceil); Utils.removeChilds(clouds); Utils.removeChilds(specialfx); Utils.removeChilds(text); instance.x = centerX; instance.y = centerY; } } }//package geeon.particles class Unlocker { private function Unlocker(){ } }
Section 29
//SpriteBitmap (geeon.particles.SpriteBitmap) package geeon.particles { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import project.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class SpriteBitmap extends Sprite { public var totalFrames:int;// = 0 public var playing:Boolean;// = true public var bitmap:Bitmap3D; public var timeline:Array; public var label:String; public var scale:Number;// = 1 public var frame:int;// = 0 public var center:Point; public var autoPlay:Boolean;// = false public var bitmapData:BitmapData; public var z:Number;// = 0 public var linkage; public var currentTimeline:Array; public var isVisible:Boolean;// = true public var backwards:Boolean;// = false public var autoLoop:Boolean;// = true public static var active:Array = []; public static var inactive:Array = []; public static var length:int = 0; public static var pool:Array = []; public function SpriteBitmap(_arg1=null){ var _local2:*; z = 0; frame = 0; totalFrames = 0; playing = true; backwards = false; autoPlay = false; autoLoop = true; isVisible = true; scale = 1; super(); _local2 = BitmapDataPool.pull(_arg1.linkage); timeline = _local2.timeline; bitmap = new Bitmap3D(timeline[0]); addChild(bitmap); indexPool(this); goto(_arg1); if (center){ bitmap.x = center.x; bitmap.y = center.y; } else { bitmap.x = (-(bitmap.width) / 2); bitmap.y = (-(bitmap.height) / 2); }; } public function set container(_arg1){ _arg1.addChild(this); } public function get childIndex(){ return (parent.getChildIndex(this)); } public function set childIndex(_arg1){ parent.setChildIndex(this, _arg1); } public function goto(_arg1){ Utils.extract(_arg1, this); if (((label) && (!(timeline[label])))){ label = null; //unresolved jump }; if ((frame == "random")){ random(); //unresolved jump }; scaleX = (scaleY = scale); render(); } public function render(){ currentTimeline = (label) ? timeline[label] : timeline; totalFrames = currentTimeline.length; if (backwards){ if (frame < 0){ frame = (autoLoop) ? (totalFrames - 1) : 0; }; } else { if (frame >= (totalFrames - 1)){ frame = (autoLoop) ? 0 : (totalFrames - 1); }; }; bitmap.bitmapData = (bitmapData = currentTimeline[frame]); smoothing = true; } public function random(_arg1=null){ _arg1 = Utils.or(_arg1, totalFrames); frame = Math.round((Math.random() * _arg1)); render(); } public function step(){ if (playing){ if (backwards){ frame--; } else { frame++; }; }; render(); } public function refresh(){ timeline = BitmapDataPool.pull(linkage).timeline; render(); } public static function pull(_arg1){ var _local2:*; var _local3:*; var _local4:*; _local2 = null; for (_local3 in inactive) { _local2 = inactive[_local3]; if (_local2.linkage == _arg1.linkage){ break; }; _local2 = null; }; if (_local2){ _local4 = inactive.indexOf(_local2); inactive.splice(_local4, 1); active.push(_local2); _local2.goto(_arg1); } else { _local2 = new SpriteBitmap(_arg1); }; return (_local2); } public static function indexPool(_arg1){ if (pool.indexOf(_arg1) != -1){ return (length); }; pool.push(_arg1); active.push(_arg1); length = pool.length; return (length); } public static function reset(){ while (active.length) { push(active[0]); }; } public static function push(_arg1){ active.splice(active.indexOf(_arg1), 1); inactive.push(_arg1); Utils.removeChild(_arg1); } public static function call(_arg1:String, _arg2=null){ var _local3:*; for (_local3 in active) { if (_arg2){ var _local6 = active[_local3]; _local6[_arg1](_arg2); } else { _local6 = active[_local3]; _local6[_arg1](); }; }; } } }//package geeon.particles
Section 30
//SpriteBitmapText (geeon.particles.SpriteBitmapText) package geeon.particles { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import project.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class SpriteBitmapText extends Sprite { public var counter:uint; public var playing:Boolean;// = true public var bitmap:Bitmap3D; public var scale:Number;// = 1 public var center:Point; public var bitmapData:BitmapData; public var target:MovieClip; public var z:Number;// = 0 public var textFieldTitle:TextField; public var linkage; public var textField:TextField; public var rect:Rectangle; public function SpriteBitmapText(_arg1){ z = 0; playing = true; scale = 1; super(); target = _arg1; textField = target.textField; textFieldTitle = target.textFieldTitle; bitmapData = new BitmapData(target.width, target.height, true, 0); bitmap = new Bitmap3D(bitmapData, "auto", true); rect = new Rectangle(0, 0, target.width, target.height); x = target.x; y = target.y; addChild(bitmap); target.parent.addChild(this); Utils.removeChild(target); show(); } public function step(){ if (!--counter){ Thread.remove(step); visible = false; }; } public function show(_arg1:String="", _arg2=0, _arg3:String=null){ visible = true; textField.text = _arg1; if (_arg3){ textFieldTitle.text = _arg3; //unresolved jump }; bitmapData.lock(); bitmapData.fillRect(rect, 0xFF); bitmapData.draw(target, null, null, null, null, true); bitmapData.unlock(); if (_arg2){ counter = _arg2; Thread.add(step); }; } } }//package geeon.particles
Section 31
//Thread (geeon.particles.Thread) package geeon.particles { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import project.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class Thread { private static var lastTime:Number = 0; private static var interval:uint; private static var DEFAULT_SPEED:int = 30; private static var thisTime:Number = 0; public static var time:Number = 0; private static var currentClock:int = 0; private static var trashcan:Array = []; public static var keyUp:Array = []; private static var instance:Thread; public static var mouseUp:Array = []; public static var keyDown:Array = []; private static var dictionary:Dictionary = new Dictionary(); public static var mouseDown:Array = []; private static var inactive:Array = []; public static var mouseMove:Array = []; private static var garbage:Boolean; public static var mouseWheel:Array = []; public static var enterFrame:Array = []; private static var stage:Stage; public function Thread(_arg1, _arg2:Unlocker){ instance = this; _arg1.addEventListener(KeyboardEvent.KEY_UP, Keyb.onEvent); _arg1.addEventListener(KeyboardEvent.KEY_DOWN, Keyb.onEvent); _arg1.addEventListener(MouseEvent.MOUSE_UP, dispatch); _arg1.addEventListener(MouseEvent.MOUSE_DOWN, dispatch); _arg1.addEventListener(MouseEvent.MOUSE_WHEEL, dispatch); setClock(); } public static function remove(_arg1:Function){ var _local2:*; _local2 = dictionary[_arg1]; if (_local2){ delete dictionary[_arg1]; trashcan.push(_local2); garbage = true; }; } public static function setClock(_arg1=null){ if (interval){ clearInterval(interval); //unresolved jump }; currentClock = Utils.or(_arg1, DEFAULT_SPEED); interval = setInterval(dispatch, currentClock); } public static function init(_arg1){ if (!instance){ new Thread(_arg1, new Unlocker()); //unresolved jump }; } public static function cleanGarbage(){ var _local1:*; var _local2:*; garbage = false; while (trashcan.length) { _local1 = trashcan.shift(); _local2 = _local1.type; Thread[_local2].splice(Thread[_local2].indexOf(_local1), 1); inactive.push(_local1); _local1.dispose(); }; } public static function add(_arg1:Function, _arg2="enterFrame", _arg3:uint=0, _arg4:uint=0, _arg5:Function=null){ var _local6:*; remove(_arg1); _local6 = (inactive.length) ? inactive.shift() : new Daemon(); dictionary[_arg1] = _local6; _local6.init(_arg1, _arg2, _arg3, _arg4, _arg5); Thread[_arg2].push(_local6); } public static function dispatch(_arg1=null){ var _local2:String; var _local3:*; var _local4:*; if (garbage){ cleanGarbage(); //unresolved jump }; _local2 = (_arg1) ? _arg1.type : "enterFrame"; if (_local2 == "enterFrame"){ thisTime = getTimer(); time = ((thisTime - lastTime) / DEFAULT_SPEED); lastTime = thisTime; }; if ((_local2 == "mouseWheel")){ delta = _arg1.delta; //unresolved jump }; _local3 = Thread[_local2]; for (_local4 in _local3) { _local3[_local4].execute(); }; } } }//package geeon.particles import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import project.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; class Daemon { public var cycle:uint; public var times:uint; public var onFinish:Function; public var execute:Function; public var type:String; public var listener:Function; public var counter:uint; private function Daemon(){ } public function init(_arg1:Function, _arg2:String, _arg3:uint=0, _arg4:uint=0, _arg5:Function=null){ type = _arg2; listener = _arg1; cycle = _arg3; times = _arg4; onFinish = _arg5; execute = (((cycle) || (times))) ? doCycle : listener; } private function doCycle(){ if (++counter > cycle){ if (counter == times){ Thread.remove(listener); if (onFinish != null){ onFinish(); //unresolved jump }; } else { counter = 0; listener(); }; }; } public function dispose(){ type = null; listener = null; cycle = 0; times = 0; onFinish = null; execute = null; } } class Unlocker { private function Unlocker(){ } }
Section 32
//TrigonometryPoint (geeon.particles.TrigonometryPoint) package geeon.particles { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import project.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class TrigonometryPoint { public static var cos:Number; public static var spring:Number; public static var angle:Number; public static var dx:Number; public static var dy:Number; public static var sin:Number; public static var face:String; public static var atan:Number; public static var h:Number; public static var radians:Number; public static function getSinCos(_arg1, _arg2, _arg3="y", _arg4="x"){ hipotenusa(_arg1, _arg2, _arg3, _arg4); cos = Utils.forceNumber((dx / h)); sin = Utils.forceNumber((dy / h)); return (TrigonometryPoint); } public static function hipotenusa(_arg1, _arg2, _arg3="y", _arg4="x"){ dx = distance(_arg1[_arg4], _arg2[_arg4]); dy = distance(_arg1[_arg3], _arg2[_arg3]); h = Math.sqrt(((dx * dx) + (dy * dy))); return (TrigonometryPoint); } public static function rotation2Degrees(_arg1){ _arg1 = ((_arg1 < 0)) ? (360 + _arg1) : _arg1; return (_arg1); } public static function springMax(_arg1, _arg2=null, _arg3=1, _arg4=1, _arg5="y", _arg6="x"){ if (_arg2){ hipotenusa(_arg1, _arg2, _arg5, _arg6); //unresolved jump }; if (h > _arg3){ applySpring(_arg1, _arg3, _arg4, _arg5, _arg6); return (true); }; return (false); } public static function getFace(_arg1:Object, _arg2:Number=0.75, _arg3:Boolean=false){ var _local4:*; var _local5:*; if ((((_local4 > -(_arg2))) && ((_local4 < _arg2)))){ face = ((_local5 < 0)) ? "UP" : "DOWN"; } else { face = ((_local4 < 0)) ? "LEFT" : "RIGHT"; }; return (TrigonometryPoint); } private static function applySpring(_arg1, _arg2=1, _arg3=1, _arg4="y", _arg5="x"){ spring = ((h - _arg2) / h); _arg1[_arg5] = (_arg1[_arg5] + ((dx * spring) / _arg3)); _arg1[_arg4] = (_arg1[_arg4] + ((dy * spring) / _arg3)); } public static function radiansToAngle(_arg1, _arg2=0){ angle = ((_arg1 * 180) / Math.PI); angle = (angle + ((_arg2 < 0)) ? 180 : 0); return (angle); } public static function springMin(_arg1, _arg2=null, _arg3=1, _arg4=1, _arg5="y", _arg6="x"){ if (_arg2){ hipotenusa(_arg1, _arg2, _arg5, _arg6); //unresolved jump }; if (h < _arg3){ applySpring(_arg1, _arg3, _arg4, _arg5, _arg6); return (true); }; return (false); } public static function getAll(_arg1, _arg2=null, _arg3="y", _arg4="x"){ getSinCos(_arg1, _arg2, _arg3, _arg4); atan = (dy / dx); radians = Math.atan(atan); radiansToAngle(radians, dx); return (TrigonometryPoint); } public static function distance(_arg1, _arg2){ return ((_arg2 - _arg1)); } public static function midPoint(_arg1=0, _arg2=0){ return (Utils.forceNumber((_arg2 + (distance(_arg1, _arg2) / 2)))); } public static function doSpring(_arg1, _arg2=null, _arg3=1, _arg4=1, _arg5="y", _arg6="x"){ if (_arg2){ hipotenusa(_arg1, _arg2, _arg5, _arg6); //unresolved jump }; applySpring(_arg1, _arg3, _arg4, _arg5, _arg6); } public static function springRange(_arg1, _arg2=null, _arg3=1, _arg4=10, _arg5=1, _arg6="y", _arg7="x"){ var _local8:*; var _local9:*; if (_arg2){ hipotenusa(_arg1, _arg2, _arg6, _arg7); //unresolved jump }; _arg2 = null; _local8 = springMin(_arg1, _arg2, _arg3, trig, _arg6); _local9 = springMax(_arg1, _arg2, _arg4, trig, _arg6); return (((_local8) || (_local9))); } } }//package geeon.particles
Section 33
//TweenParticle (geeon.particles.TweenParticle) package geeon.particles { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import project.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class TweenParticle extends TweenThread { public var xtraAccel:Number;// = 0 public var lastLabel:String; public var target; public var radius:uint; public var bitmapParams:Object; public var lives:int;// = 0 public var pointReached:Boolean;// = true public var view:String;// = "front" public var label:String; public var boundaries:Boolean; public var height:Number;// = 0 public var BASE_VELOCITY:Number;// = 1 public var velAccel:Number;// = 0 public var width:Number;// = 0 public var centered:Number;// = 0 public var side:String; public var moving:Boolean; public var tweens:TweenPool; public function TweenParticle(_arg1=null){ var params = _arg1; width = 0; height = 0; centered = 0; velAccel = 0; pointReached = true; BASE_VELOCITY = 1; xtraAccel = 0; view = "front"; lives = 0; tweens = new TweenPool(this); step = function (){ tween(); render(); }; super(params); } public function render(){ Viewport.render(tweens, target); } public function tween(){ time = Thread.time; x = (x + (velocity.x * time)); y = (y + (velocity.y * time)); z = (z + (velocity.z * time)); velocity.scalar(friction); tweens.step(); } public function flip(_arg1){ var _local2:Number; _local2 = Utils.positive(target.scaleX); target.scaleX = ((_arg1 > 0)) ? _local2 : -(_local2); } } }//package geeon.particles
Section 34
//TweenPoint (geeon.particles.TweenPoint) package geeon.particles { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import project.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class TweenPoint { public var y:Number;// = 0 public var scale:Number;// = 1 public var rotationX:Number;// = 0 public var rotationY:Number;// = 0 public var rotationZ:Number;// = 0 public var alpha:Number;// = 1 public var visible:Boolean;// = true public var x:Number;// = 0 public var z:Number;// = 0 public var filters:Array; public var rotation:Number;// = 0 public function TweenPoint(_arg1=null){ x = 0; y = 0; z = 0; alpha = 1; scale = 1; rotation = 0; rotationX = 0; rotationY = 0; rotationZ = 0; visible = true; super(); if (_arg1){ extract(_arg1); //unresolved jump }; } public function extract(_arg1){ Utils.extract(_arg1, this); } public function merge(_arg1){ scale = (scale * _arg1.scale); alpha = (alpha * _arg1.alpha); x = (x + (_arg1.x * scale)); y = (y + (_arg1.y * scale)); z = (z + (_arg1.z * scale)); rotation = (rotation + _arg1.rotation); } public function copyState(_arg1){ scale = _arg1.scale; alpha = _arg1.alpha; x = _arg1.x; y = _arg1.y; z = _arg1.z; rotation = _arg1.rotation; } } }//package geeon.particles
Section 35
//TweenPool (geeon.particles.TweenPool) package geeon.particles { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import project.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class TweenPool extends TweenPoint { public var target; public var length:int;// = 0 public var pool:Array; public function TweenPool(_arg1, _arg2:Array=null){ pool = []; length = 0; super(); pool = Utils.or(_arg2, pool); target = _arg1; restart(); } public function stop(_arg1=null){ var _local2:*; var _local3:*; if (((!(_arg1)) || ((_arg1 is Array)))){ _local2 = Utils.or(_arg1, pool); for (_local3 in _local2) { _local2[_local3].playing = false; }; return; }; _arg1.playing = true; } public function random(){ play(Utils.arrayGetRandom(pool)); } public function step(){ var _local1:*; var _local2:*; copyState(target); if (!length){ return; }; for (_local1 in pool) { _local2 = pool[_local1]; if (_local2.playing){ _local2.step(); //unresolved jump }; merge(_local2); }; } public function restart(){ var _local1:*; for (_local1 in pool) { pool[_local1].restart(); }; } public function push(_arg1){ if ((_arg1 is Array)){ pool.concat(_arg1); length = (length + _arg1.length); return; }; pool.push(_arg1); length++; return (_arg1); } public function play(_arg1=null){ var _local2:*; var _local3:*; stop(); if (((!(_arg1)) || ((_arg1 is Array)))){ _local2 = Utils.or(_arg1, pool); for (_local3 in _local2) { _local2[_local3].playing = true; }; return; }; _arg1.playing = true; } } }//package geeon.particles
Section 36
//TweenThread (geeon.particles.TweenThread) package geeon.particles { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import project.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class TweenThread extends TweenPoint { public var counter:int;// = 0 public var mass:Number;// = 1 public var cos:Number;// = 0 public var restart:Function; public var dist:int;// = 0 public var modeNULL:Function; public var trig; public var playing:Boolean;// = true public var mode:Function; public var play:Function; public var time:Number;// = 0 public var step:Function; public var sin:Number;// = 0 public var velocity:Vector; public var friction:Number;// = 1 public var pause:Function; public function TweenThread(_arg1=null){ friction = 1; mass = 1; velocity = new Vector(); time = 0; dist = 0; sin = 0; cos = 0; counter = 0; modeNULL = function (){ }; playing = true; step = function (){ }; restart = function (){ }; play = function (){ playing = true; }; pause = function (){ playing = false; }; super(_arg1); } } }//package geeon.particles
Section 37
//Vector (geeon.particles.Vector) package geeon.particles { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import project.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class Vector { public var visible:Boolean; public var x:Number; public var y:Number; public var z:Number; public function Vector(_arg1:Number=0, _arg2:Number=0, _arg3:Number=0){ x = _arg1; y = _arg2; z = _arg3; } public function bounceTo(_arg1, _arg2, _arg3=0.9, _arg4=5){ x = ((x * _arg3) + ((_arg2.x - _arg1.x) / _arg4)); y = ((y * _arg3) + ((_arg2.y - _arg1.y) / _arg4)); z = ((z * _arg3) + ((_arg2.z - _arg1.z) / _arg4)); } public function extract(_arg1){ Utils.extract(_arg1, this); } public function update(_arg1:Number=0, _arg2:Number=0, _arg3:Number=0){ x = _arg1; y = _arg2; z = _arg3; return (this); } public function multiply(_arg1:Number=1, _arg2:Number=1, _arg3:Number=1){ x = (x * _arg1); y = (y * _arg2); z = (z * _arg3); } public function toString():String{ return ((((((("Point3D = [" + x) + ",") + y) + ",") + z) + "]")); } public function cloneInverse(){ return (new Point3D(-(x), -(y), -(z))); } public function increment(_arg1:Number=0, _arg2:Number=0, _arg3:Number=0){ x = (x + _arg1); y = (y + _arg2); z = (z + _arg3); } public function scalar(_arg1:Number){ x = (x * _arg1); y = (y * _arg1); z = (z * _arg1); } public function clone(){ return (new Point3D(x, y, z)); } public function reset(){ x = (y = (z = 0)); } public function adds(_arg1){ x = (x + _arg1.x); y = (y + _arg1.y); z = (z + _arg1.z); } } }//package geeon.particles
Section 38
//Viewport (geeon.particles.Viewport) package geeon.particles { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import project.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class Viewport { public static var sinX:Number = 0; public static var sinY:Number = 0; static var tx; public static var iso:Number = 0.69; static var tz; public static var output:Vector = new Vector(); static var ty; static var xx; public static var isoAng:Number = 0.485; public static var rotationX:Number = 0; public static var rotationY:Number = 0; public static var rotationZ:Number = 0; static var yy; public static var mode:int = 2; public static var cosX:Number = 0; public static var cosY:Number = 0; static var x1; static var x2; static var zz; public static var scale:Number = 1; public static var fov:Number = 300; public static var zoom:Number = 1; public static var focus; static var y2; static var y1; static var s; static var z1; public static var x:Number = 0; public static var y:Number = 0; public static var z:Number = 0; static var z2; public static function render(_arg1, _arg2=null){ if (!_arg2){ _arg2 = output; //unresolved jump }; _arg2.x = _arg1.x; _arg2.y = _arg1.y; _arg2.z = _arg1.z; if (mode == 0){ _arg2.z = _arg2.y; return; }; if (mode == 2){ _arg2.y = (_arg1.z + _arg1.y); return; }; if (mode == 3){ return; }; if (mode == 4){ return; }; } public static function ISOtopoint(_arg1){ xx = (_arg1.x / iso); yy = (_arg1.y / isoAng); outputX = ((xx - yy) / 2); outputY = ((yy + xx) / 2); } public static function degrees(){ cosX = Math.cos(rotationX); sinX = Math.sin(rotationX); cosY = Math.cos(rotationY); sinY = Math.sin(rotationY); } public static function ZtoPoint(_arg1){ } public static function pointISO(_arg1){ xx = _arg1.x; yy = _arg1.y; outputX = ((yy + xx) * iso); outputY = ((yy - xx) * isoAng); outputZ = _arg1.z; } public static function point2D(_arg1){ tx = (_arg1.x - x); ty = (_arg1.y - y); tz = (_arg1.z - z); x1 = ((cosX * tx) - (sinX * tz)); z1 = ((sinX * tx) + (cosX * tz)); y1 = ((cosY * ty) - (sinY * z1)); z2 = ((sinY * ty) + (cosY * z1)); outputX = (x1 * s); outputY = (y1 * s); outputZ = (z2 * s); outputScale = ((fov / (fov + z2)) * zoom); } degrees(); } }//package geeon.particles
Section 39
//Document (geeon.system.Document) package geeon.system { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.utils.*; import project.*; import geeon.particles.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class Document { public static var width:Number = 720; public static var renderQuality:String = "HIGH"; public static var interfaceQuality:String = "HIGH"; public static var initialized:Boolean; public static var gameFPS:int = 100; public static var root:Sprite; public static var height:Number = 540; public static var gameQuality:String = "LOW"; public static var context:LoaderContext; public static var interfaceFPS:int = 33; public static var stage:Stage; public function Document(_arg1, _arg2:Unlocker){ var _local3:*; super(); root = _arg1; initialized = true; stage = root.stage; Security.allowDomain("*"); Security.allowInsecureDomain("*"); context = new LoaderContext(); context.applicationDomain = new ApplicationDomain(); _local3 = new ContextMenu(); _local3.hideBuiltInItems(); root.contextMenu = _local3; Utils.extract(LoaderInfo(stage.loaderInfo).parameters, Memory.global); Thread.init(stage); } public static function setRenderQuality(){ if (!stage){ return; }; stage.quality = renderQuality; stage.frameRate = interfaceFPS; } public static function setInterfaceQuality(){ if (!stage){ return; }; stage.quality = interfaceQuality; stage.frameRate = interfaceFPS; } public static function init(_arg1){ if (!initialized){ new Document(_arg1, new Unlocker()); //unresolved jump }; } public static function setGameQuality(){ if (!stage){ return; }; stage.quality = gameQuality; stage.frameRate = gameFPS; } } }//package geeon.system class Unlocker { private function Unlocker(){ } }
Section 40
//Memory (geeon.system.Memory) package geeon.system { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.utils.*; import project.*; import geeon.particles.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class Memory { public static var global:Object = {}; static var list:Object = null; static var initialized:Boolean = false; static var KEY:String = null; public static function multiply(_arg1:String, _arg2:Number){ var _local3:*; _local3 = Utils.forceNumber(getValue(_arg1)); _local3 = (_local3 * _arg2); return (setValue(_arg1, _local3)); } public static function setValue(_arg1:String, _arg2){ init(); list[Utils.encrypt(_arg1, KEY)] = Utils.encrypt(_arg2.toString(), KEY); return (_arg2); } public static function init(_arg1=null){ if (((!(initialized)) || (_arg1))){ initialized = true; KEY = (String(Math.random()).substr(2, 14) + String(Math.random()).substr(2, 14)); list = {}; }; } public static function plus(_arg1:String, _arg2:Number){ var _local3:*; _local3 = Utils.forceNumber(getValue(_arg1)); _local3 = (_local3 + _arg2); list[Utils.encrypt(_arg1, KEY)] = Utils.encrypt(_local3.toString(), KEY); return (_local3); } public static function getValue(_arg1:String){ init(); _arg1 = Utils.encrypt(_arg1, KEY); return (((list[_arg1])!=null) ? Utils.decrypt(list[_arg1], KEY) : ""); } } }//package geeon.system
Section 41
//Mixer (geeon.system.Mixer) package geeon.system { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.utils.*; import project.*; import geeon.particles.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class Mixer { public static var _volume:Number = 1; public static var iMusic; public static var tracks:Array = []; public static var mute:Boolean = false; public static var list:Array = []; public static var panCounter:Number = 0; public static var _volFX:Number = 1; public static var _volMusic:Number = 1; public static var mMusic; public static var globalPan:Number = 0; public static var _globalVolume:Number = 1; public static var gMusic; public static function playFX(_arg1, _arg2=0, _arg3=0){ return (add({linkage:_arg1, group:"FX", pan:_arg2, type:"sound", uri:"", loop:_arg3})); } public static function menuMusicOff(){ tracksOff(); if (mMusic){ mMusic.stop(); //unresolved jump }; } public static function set volFX(_arg1){ _volFX = _arg1; } public static function tracksOff(){ var _local1:*; for (_local1 in tracks) { tracks[_local1].stop(); }; } public static function playMusic(_arg1, _arg2=999999){ return (add({uri:_arg1, group:"Music", type:"mp3", loop:_arg2})); } public static function gameMusicOn(){ tracksOff(); if (!gMusic){ gMusic = addTrack("gameMusic"); //unresolved jump }; if (!gMusic.playing){ gMusic.start(); //unresolved jump }; } public static function step(){ var _local1:*; var _local2:*; var _local3:*; var _local4:*; _globalVolume = (mute) ? 0 : _volume; for (_local2 in list) { _local3 = list[_local2]; if (_local3.soundChannel){ _local1 = (_local3.group) ? Mixer[("_vol" + _local3.group)] : 1; _local4 = _local3.soundChannel.soundTransform; _local4.volume = (_local1 * _local3.volume); _local4.pan = _local3.pan; _local3.soundChannel.soundTransform = _local4; }; }; SoundMixer.soundTransform = new SoundTransform(_globalVolume, 0); } public static function soundsOn(){ mute = false; } public static function get volMusic(){ return (_volMusic); } public static function get volume(){ return (_globalVolume); } public static function soundError(_arg1){ } public static function gameMusicOff(){ tracksOff(); if (gMusic){ gMusic.stop(); //unresolved jump }; } public static function menuMusicOn(){ tracksOff(); if (!mMusic){ mMusic = addTrack("menuMusic"); //unresolved jump }; if (!mMusic.playing){ mMusic.start(); //unresolved jump }; } public static function add(_arg1=null){ var _local2:*; var _local3:*; var _local4:*; var _local5:*; _local2 = Utils.or(_arg1.type, Utils.getFileExtension(_arg1.uri)).toLowerCase(); if ((((_local2 == "mp3")) || ((_local2 == "sound")))){ for (_local4 in list) { _local5 = false; _local3 = list[_local4]; if (((_arg1.uri) && ((_local3.params.uri == _arg1.uri)))){ _local5 = true; }; if (((_arg1.linkage) && ((_local3.params.linkage == _arg1.linkage)))){ _local5 = true; }; if (_local5){ _local3.start(); _local3.pan = _arg1.pan; return (_local3); }; }; _local3 = new SoundHolder(_arg1); }; if ((((((_local2 == "jpg")) || ((_local2 == "png")))) || ((_local2 == "gif")))){ _local3 = new BitmapHolder(_arg1); }; if (_local2 == "flv"){ _local3 = new VideoHolder(_arg1); }; if (_local2 == "swf"){ _local3 = new MCHolder(_arg1); }; list.push(_local3); return (_local3); } public static function interfaceMusicOff(){ tracksOff(); if (iMusic){ iMusic.stop(); //unresolved jump }; } public static function set volMusic(_arg1){ _volMusic = _arg1; } public static function get volFX(){ return (_volFX); } public static function addTrack(_arg1){ var _local2:*; _local2 = add({linkage:_arg1, uri:"", type:"mp3", loop:9999, group:"Music"}); tracks.push(_local2); return (_local2); } public static function interfaceMusicOn(){ tracksOff(); if (!iMusic){ iMusic = addTrack("interfaceMusic"); //unresolved jump }; if (!iMusic.playing){ iMusic.start(); //unresolved jump }; } public static function soundsOff(){ mute = true; } public static function set volume(_arg1){ _globalVolume = _arg1; } Thread.add(step); } }//package geeon.system
Section 42
//Utils (geeon.utils.Utils) package geeon.utils { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import project.*; import geeon.particles.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class Utils { private var _interrupt:Boolean;// = false static var PHI:Number = 1.61803398874989; static var DEG2RAD:Number = 0.0174532925199433; private static var _listeners:Array = []; static var LAMBDA:Number = 0.57721566490143; static var root; static var RAD2DEG:Number = 57.2957795130823; private static var _instance:Utils; public function Utils(){ _interrupt = false; super(); } public function dupeMovie(_arg1:DisplayObject, _arg2:Boolean=false){ var _local3:Class; var _local4:DisplayObject; var _local5:Rectangle; _local3 = _arg1["constructor"]; _local4 = new (_local3); _local4.transform = _arg1.transform; _local4.filters = _arg1.filters; _local4.cacheAsBitmap = _arg1.cacheAsBitmap; _local4.opaqueBackground = _arg1.opaqueBackground; if (_arg1.scale9Grid){ _local5 = _arg1.scale9Grid; _arg1.scale9Grid.x = (_local5.x / 20); _local5.y = (_local5.y / 20); _local5.width = (_local5.width / 20); _local5.height = (_local5.height / 20); _local4.scale9Grid = _local5; }; if (((_arg2) && (_arg1.parent))){ _arg1.parent.addChild(_local4); //unresolved jump }; return (_local4); } function clone(_arg1:Object){ var _local2:ByteArray; _local2 = new ByteArray(); _local2.writeObject(_arg1); _local2.position = 0; return (_local2.readObject()); } public static function removeValueFromArray(_arg1:Array, _arg2:Object){ var _local3:uint; var _local4:Number; _local3 = _arg1.length; _local4 = _local3; while (_local4 > -1) { if (_arg1[_local4] === _arg2){ _arg1.splice(_local4, 1); }; _local4--; }; } public static function createUniqueCopy(_arg1:Array):Array{ var _local2:Object; var _local3:Array; var _local4:Number; var _local5:Object; var _local6:uint; _local2 = new Object(); _local3 = new Array(); _local4 = _arg1.length; _local6 = 0; while (_local6 < _local4) { _local5 = _arg1[_local6]; if (arrayContainsValue(_local3, _local5)){ } else { _local3.push(_local5); }; _local6++; }; return (_local3); } public static function getPercent(_arg1, _arg2=100, _arg3=100, _arg4=0, _arg5=0, _arg6=true){ return (constrain((((_arg1 - _arg5) * _arg3) / (_arg2 - (_arg5 * 2))), _arg4, _arg3, _arg6)); } public static function findPrimeFrom(_arg1:Number, _arg2:Number):Array{ var _local3:*; var _local4:Number; var _local5:Array; var _local6:Array; var _local7:Number; var _local8:Number; _arg1 = (_arg1 | 0); _arg2 = (_arg2 | 0); _local5 = []; _local6 = []; if (!_arg2){ _arg2 = 0; } else { _arg2--; }; _arg1 = (_arg1 + 1); _local3 = 0; while (_local3 < _arg1) { _local6[_local3] = 0; _local3++; }; _local7 = Math.round(Math.sqrt((_arg1 + 1))); _local8 = 2; _local3 = 2; while (_local3 <= _local7) { if (_local6[_local3] == 0){ _local4 = (_local8 * _local3); while (_local4 < _arg1) { _local6[_local4] = 1; _local4 = (_local4 + _local3); }; _local8 = _local3; }; _local3++; }; _local3 = (_arg1 - 1); while (_local3 > _arg2) { if (_local6[_local3] == 0){ _local5.push(_local3); }; _local3--; }; return (_local5); } public static function fit(_arg1, _arg2, _arg3=false){ var _local4:*; var _local5:*; var _local6:*; _local4 = _arg2; _local5 = _arg1; _local6 = (_local4.width / _local5.width); _arg1.width = (_arg1.width * _local6); _arg1.height = (_arg1.height * _local6); _local6 = (_local4.height / _local5.height); if (((((_arg3) && ((_local5.height < _local4.height)))) || (((!(_arg3)) && ((_local5.height > _local4.height)))))){ _local5.width = (_local5.width * _local6); _local5.height = (_local5.height * _local6); }; center(_arg1, _arg2); } public static function isNumber(_arg1){ return (((String(Number(_arg1)))!="NaN") ? true : false); } public static function forceNumber(_arg1){ return ((isNumber(_arg1)) ? Number(_arg1) : 0); } public static function productFactors(_arg1:Number):Number{ var _local2:Number; var _local3:Number; _local2 = 1; _local3 = 3; while (_local3 <= _arg1) { if (isPrime(_local3)){ _local2 = (_local2 * _local3); }; _local3 = (_local3 + 2); }; if (_arg1 > 2){ _local2 = (_local2 * 2); }; return (_local2); } public static function toBack(_arg1, _arg2=null){ if (_arg2){ _arg2.addChild(_arg1); //unresolved jump }; _arg1.parent.setChildIndex(_arg1, 0); } public static function square(_arg1:Number):Number{ return ((_arg1 * _arg1)); } public static function factorialApprox(_arg1:Number):Number{ return (Math.round(gammaApprox((_arg1 + 1)))); } public static function trim(_arg1:String):String{ return (ltrim(rtrim(_arg1))); } public static function excludeChars(_arg1:String, _arg2:String){ var _local3:*; var _local4:*; var _local5:*; var _local6:*; _arg2 = or(_arg2, ":,<>-'{}[]/*-+!;8!@#$%.^&*()"); _local3 = ""; _local5 = 0; for (;_local5 < _arg1.length;_local5++) { _local4 = true; _local6 = 0; while (_local6 < _arg2.length) { if (_arg1.charAt(_local5) == _arg2.charAt(_local6)){ _local4 = false; break; }; _local6++; }; if (_local4){ _local3 = (_local3 + _arg1.charAt(_local5)); continue; }; }; return (_local3); } public static function fibonacci(_arg1:Number):Number{ return (Math.round(((Math.pow(((1 + Math.sqrt(5)) / 2), _arg1) - Math.pow(((1 - Math.sqrt(5)) / 2), _arg1)) / Math.sqrt(5)))); } public static function toBoolean(_arg1){ if (_arg1 == "true"){ return (true); }; return (false); } public static function charsToLongs(_arg1:Array):Array{ var _local2:Array; var _local3:Number; _local2 = new Array(Math.ceil((_arg1.length / 4))); _local3 = 0; while (_local3 < _local2.length) { _local2[_local3] = (((_arg1[(_local3 * 4)] + (_arg1[((_local3 * 4) + 1)] << 8)) + (_arg1[((_local3 * 4) + 2)] << 16)) + (_arg1[((_local3 * 4) + 3)] << 24)); _local3++; }; return (_local2); } public static function inverse(_arg1:Number):Number{ return ((1 / _arg1)); } public static function negative(_arg1){ return (((_arg1 < 0)) ? _arg1 : -(_arg1)); } public static function getURL(_arg1:String, _arg2:String="_blank"){ navigateToURL(new URLRequest(_arg1), _arg2); } public static function commas(_arg1, _arg2=3){ var _local3:*; var _local4:*; var _local5:*; var _local6:*; _arg1 = String(_arg1); _local3 = ""; _local5 = 0; _local6 = (_arg1.length - 1); for (;_local6 >= 0;(_local4 = (_local4 + _arg1.charAt(_local6))), (_local3 = (_local4 + _local3)), _local6--) { _local4 = ""; ++_local5; if ((((_local5 >= _arg2)) && ((_local6 > 0)))){ _local5 = 0; _local4 = ","; continue; }; }; return (_local3); } public static function strReplace(_arg1, _arg2, _arg3){ var _local4:*; _local4 = String(_arg3); return (_local4.split(_arg1).join(_arg2)); } public static function attach(_arg1, _arg2=null){ var _local3:*; _local3 = ((typeof(_arg1) == "string")) ? new ((getDefinitionByName(_arg1) as Class)) : new (_arg1); if (_arg2){ _arg2.addChild(_local3); //unresolved jump }; return (_local3); } public static function drawRect(_arg1, _arg2, _arg3, _arg4=0, _arg5=0){ _arg1.clear(); _arg1.beginFill(_arg4, _arg5); _arg1.drawRect(0, 0, _arg2, _arg3); _arg1.endFill(); } public static function sortDepths(_arg1, _arg2="y", _arg3=true):void{ var _local4:*; var _local5:*; _local4 = (_arg1.length) ? copyArray(_arg1) : getContained(_arg1); if (_arg3){ _local4.sortOn(_arg2, (Array.DESCENDING | Array.NUMERIC)); } else { _local4.sortOn(_arg2); }; _local5 = 0; while (_local5 < _local4.length) { _local4[_local5].parent.setChildIndex(_local4[_local5], _local5); _local5++; }; } public static function switchBoolean(_arg1){ return ((_arg1) ? false : true); } public static function center(_arg1, _arg2){ _arg1.y = (_arg2.y + ((_arg2.height - _arg1.height) / 2)); _arg1.x = (_arg2.x + ((_arg2.width - _arg1.width) / 2)); } public static function isPrime2(_arg1:Number):Boolean{ var _local2:Number; var _local3:Number; _arg1 = (_arg1 | 0); if (((isNaN(_arg1)) || ((_arg1 == 0)))){ return (false); }; if (_arg1 <= 3){ return (true); }; if ((_arg1 % 2) == 0){ return (false); }; _local2 = ((((Math.sqrt(_arg1) / 6) | 0) * 6) + 5); _local3 = 5; do { } while (((((!(((_arg1 % _local3) == 0))) && (!(((_arg1 % (_local3 + 2)) == 0))))) && (!((_temp2 == _local2))))); return ((_local3 == _local2)); } public static function arrayGetRandom(_arg1:Array){ return (_arg1[Math.floor((Math.random() * _arg1.length))]); } public static function goto(_arg1, _arg2){ _arg1.gotoAndStop(getPercent(_arg2, 100, _arg1.totalFrames, null, null, false)); } public static function parseXML(_arg1){ var xmlDoc:*; var parseNode:*; var xml = _arg1; parseNode = function (_arg1, _arg2){ var _local3:*; var _local4:*; var _local5:*; extract(_arg1.attributes, _arg2); if (((_arg1.firstChild) && ((_arg1.firstChild.nodeType == 3)))){ _local3 = _arg1.firstChild.nodeValue; if (length(_arg1.attributes)){ _arg2.text = _local3; } else { _arg2 = _local3; }; } else { _local4 = _arg1.childNodes; _local5 = 0; while (_local5 < _local4.length) { _arg2[((_local4[_local5].nodeName == "item")) ? _arg2.length : _local4[_local5].nodeName] = parseNode(_local4[_local5], []); _local5++; }; }; return (_arg2); }; if (typeof(xml) == "string"){ xml = new XML(xml); }; xmlDoc = new XMLDocument(); xmlDoc.ignoreWhite = true; xmlDoc.parseXML(xml); return (parseNode(xmlDoc.firstChild, [])); } public static function encrypt(_arg1:String, _arg2:String):String{ var _local3:Array; var _local4:Array; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; _local3 = charsToLongs(strToChars(_arg1)); _local4 = charsToLongs(strToChars(_arg2)); _local5 = _local3.length; if (_local5 == 0){ return (""); }; if (_local5 == 1){ var _temp1 = _local5; _local5 = (_local5 + 1); var _local14 = _temp1; _local3[_local14] = 0; }; _local6 = _local3[(_local5 - 1)]; _local7 = _local3[0]; _local8 = 2654435769; _local11 = Math.floor((6 + (52 / _local5))); _local12 = 0; while (_local11-- > 0) { _local12 = (_local12 + _local8); _local10 = ((_local12 >>> 2) & 3); _local13 = 0; while (_local13 < (_local5 - 1)) { _local7 = _local3[(_local13 + 1)]; _local9 = ((((_local6 >>> 5) ^ (_local7 << 2)) + ((_local7 >>> 3) ^ (_local6 << 4))) ^ ((_local12 ^ _local7) + (_local4[((_local13 & 3) ^ _local10)] ^ _local6))); _local6 = (_local3[_local13] = (_local3[_local13] + _local9)); _local13++; }; _local7 = _local3[0]; _local9 = ((((_local6 >>> 5) ^ (_local7 << 2)) + ((_local7 >>> 3) ^ (_local6 << 4))) ^ ((_local12 ^ _local7) + (_local4[((_local13 & 3) ^ _local10)] ^ _local6))); _local6 = (_local3[(_local5 - 1)] = (_local3[(_local5 - 1)] + _local9)); }; return (charsToHex(longsToChars(_local3))); } public static function toString(_arg1, _arg2=0){ var _local3:*; var _local4:*; var _local5:*; var _local6:*; var _local7:*; _local3 = typeof(_arg1); _local4 = ""; _arg2 = (_arg2 + 1); _local5 = "\n"; _local6 = 0; while (_local6 < _arg2) { _local5 = (_local5 + "\t"); _local6++; }; if ((((((_local3 == "string")) || ((_local3 == "number")))) || ((_local3 == "boolean")))){ if ((_local3 == "string")){ _local4 = (_local4 + "\""); //unresolved jump }; _local4 = (_local4 + String(_arg1)); if ((_local3 == "string")){ _local4 = (_local4 + "\""); //unresolved jump }; }; if (_local3 == "object"){ _local4 = (_local4 + ((_arg1 is Array)) ? "[" : "{"); for (_local7 in _arg1) { _local4 = (_local4 + (((_local5 + String(_local7)) + " : ") + toString(_arg1[_local7], _arg2))); }; _local4 = (_local4 + _local5); _local4 = (_local4 + ((_arg1 is Array)) ? "]" : "}"); }; if (_local3 == "movieclip"){ _local4 = (_local4 + ("(movieclip) " + String(_arg1))); }; if (_local3 == "function"){ _local4 = (_local4 + ("(function) " + String(_arg1))); }; return (_local4); } public static function getFileExtension(_arg1:String){ return (_arg1.substring((_arg1.lastIndexOf(".") + 1), _arg1.length).toLowerCase()); } public static function toFront(_arg1, _arg2=null){ if (_arg2){ _arg2.addChild(_arg1); //unresolved jump }; _arg1.parent.setChildIndex(_arg1, (_arg1.parent.numChildren - 1)); } public static function nRoot(_arg1:Number, _arg2:Number):Number{ return (pow2(_arg1, (1 / _arg2))); } public static function isPrime(_arg1:Number):Boolean{ var _local2:Number; var _local3:Number; _arg1 = (_arg1 | 0); if (((isNaN(_arg1)) || ((_arg1 == 0)))){ return (false); }; if (_arg1 <= 3){ return (true); }; if ((_arg1 % 2) == 0){ return (false); }; _local3 = Math.floor(Math.sqrt(_arg1)); _local2 = 3; while (_local2 <= _local3) { if ((_arg1 % _local2) == 0){ return (false); }; _local2 = (_local2 + 2); }; return (true); } public static function constrain(_arg1:Number, _arg2:int=0, _arg3:int=99999999, _arg4:Boolean=true){ return (((_arg1 < _arg2)) ? _arg2 : ((_arg1 > _arg3)) ? _arg3 : (_arg4) ? _arg1 : Math.round(_arg1)); } public static function drawMap(_arg1, _arg2, _arg3){ var _local4:*; var _local5:*; var _local6:*; var _local7:*; _local4 = _arg1.graphics; _local5 = 0xFFFFFF; _local4.clear(); _local4.beginFill(0xFFFFFF); for (_local6 in _arg2) { _local7 = _arg2[_local6]; _local4.drawRect((_local7.x * _arg3), (_local7.y * _arg3), _arg3, _arg3); }; _local4.endFill(); } public static function removeChilds(_arg1){ while (_arg1.numChildren) { removeChild(_arg1.getChildAt(0)); }; } public static function logA(_arg1:Number, _arg2:Number):Number{ return ((Math.log(_arg2) / Math.log(_arg1))); } public static function extract(_arg1, _arg2){ var _local3:*; for (_local3 in _arg1) { _arg2[_local3] = _arg1[_local3]; }; } public static function ln(_arg1:Number):Number{ return (Math.log(_arg1)); } public static function hexToChars(_arg1:String):Array{ var _local2:Array; var _local3:Number; _local2 = new Array(); _local3 = ((_arg1.substr(0, 2))=="0x") ? 2 : 0; while (_local3 < _arg1.length) { _local2.push(parseInt(_arg1.substr(_local3, 2), 16)); _local3 = (_local3 + 2); }; return (_local2); } public static function decrypt(_arg1:String, _arg2:String):String{ var _local3:Array; var _local4:Array; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; _local3 = charsToLongs(hexToChars(_arg1)); _local4 = charsToLongs(strToChars(_arg2)); _local5 = _local3.length; if (_local5 == 0){ return (""); }; _local6 = _local3[(_local5 - 1)]; _local7 = _local3[0]; _local8 = 2654435769; _local11 = Math.floor((6 + (52 / _local5))); _local12 = (_local11 * _local8); while (_local12 != 0) { _local10 = ((_local12 >>> 2) & 3); _local13 = (_local5 - 1); while (_local13 > 0) { _local6 = _local3[(_local13 - 1)]; _local9 = ((((_local6 >>> 5) ^ (_local7 << 2)) + ((_local7 >>> 3) ^ (_local6 << 4))) ^ ((_local12 ^ _local7) + (_local4[((_local13 & 3) ^ _local10)] ^ _local6))); _local7 = (_local3[_local13] = (_local3[_local13] - _local9)); _local13--; }; _local6 = _local3[(_local5 - 1)]; _local9 = ((((_local6 >>> 5) ^ (_local7 << 2)) + ((_local7 >>> 3) ^ (_local6 << 4))) ^ ((_local12 ^ _local7) + (_local4[((_local13 & 3) ^ _local10)] ^ _local6))); _local7 = (_local3[0] = (_local3[0] - _local9)); _local12 = (_local12 - _local8); }; return (charsToStr(longsToChars(_local3))); } public static function ltrim(_arg1:String):String{ var _local2:Number; var _local3:Number; _local2 = _arg1.length; _local3 = 0; while (_local3 < _local2) { if (_arg1.charCodeAt(_local3) > 32){ return (_arg1.substring(_local3)); }; _local3++; }; return (""); } public static function rtrim(_arg1:String):String{ var _local2:Number; var _local3:Number; _local2 = _arg1.length; _local3 = _local2; while (_local3 > 0) { if (_arg1.charCodeAt((_local3 - 1)) > 32){ return (_arg1.substring(0, _local3)); }; _local3--; }; return (""); } public static function constrainOverflow(_arg1, _arg2, _arg3:int=0){ var _local4:*; var _local5:*; var _local6:*; var _local7:*; var _local8:*; var _local9:*; _local4 = (((_arg2.x + _arg2.width) - _arg3) - _arg1.width); _local5 = (_arg2.x + _arg3); _local6 = (((_arg2.y + _arg2.height) - _arg3) - _arg1.height); _local7 = (_arg2.y + _arg3); _local8 = _arg1.x; _local9 = _arg1.y; _arg1.x = ((_arg1.width > _arg2.width)) ? constrain(_local8, _local4, _local5) : constrain(_local8, _local5, _local4); _arg1.y = ((_arg1.height > _arg2.height)) ? constrain(_local9, _local6, _local7) : constrain(_local9, _local7, _local6); } public static function arraysAreEqual(_arg1:Array, _arg2:Array):Boolean{ var _local3:Number; var _local4:Number; if (_arg1.length != _arg2.length){ return (false); }; _local3 = _arg1.length; _local4 = 0; while (_local4 < _local3) { if (_arg1[_local4] !== _arg2[_local4]){ return (false); }; _local4++; }; return (true); } public static function suffle(_arg1, _arg2=null){ var _local3:*; var _local4:*; var _local5:*; _arg2 = or(_arg2, _arg1.length); _local3 = copyArray(_arg1); _local4 = new Array(); while (_local4.length < _arg2) { _local4.push(_local3.splice((Math.random() * _local3.length), 1)[0]); }; return (_local4); } public static function toXML(_arg1:Object, _arg2:String="data", _arg3:String=null){ var abc:*; var validChars:*; var validNodes:*; var xml:*; var objtoXML:*; var obj = _arg1; var tag = _arg2; var filter = _arg3; objtoXML = function (_arg1){ var _local2:*; var _local3:*; var _local4:*; var _local5:*; var _local6:int; for (_local2 in _arg1) { _local3 = _arg1[_local2]; if (((!((typeof(_local3) == "function"))) && (!(((!((filter == null))) && ((filter.indexOf(_local2) == -1))))))){ _local4 = ((_local2 is int)) ? "item" : _local2; xml = (xml + (("<" + _local4) + ">")); if (typeof(_local3) == "object"){ objtoXML(_local3); } else { _local5 = !((_local3 is Number)); if (_local5){ _local5 = (validNodes.indexOf(_local3) == -1); _local6 = 0; while (((_local5) && ((_local6 <= _local3.length)))) { _local5 = (validChars.indexOf(_local3.charAt(_local6)) == -1); _local6++; }; }; if (_local5){ xml = (xml + (("<![CDATA[" + _local3) + "]]>")); } else { validNodes = (validNodes + _local3); xml = (xml + _local3); }; }; xml = (xml + (("</" + _local4) + ">")); }; }; }; abc = "abcdefghijklmnopqrstuvwxyz"; validChars = ((abc + abc.toUpperCase()) + "1234567890!()=?¿_;{}"); validNodes = ""; xml = (("<" + tag) + ">"); objtoXML(obj); return ((((xml + "</") + tag) + ">")); } public static function getInRect(_arg1, _arg2, _arg3){ var _local4:Number; var _local5:Number; var _local6:Boolean; if ((_arg2 is Rectangle)){ _local4 = (_arg1.x - _arg2.x); _local6 = (((_local4 > _arg3.x)) && ((_local4 < _arg3.width))); if (_local6){ _local5 = (_arg1.y - _arg2.y); _local6 = (((_local5 > _arg3.y)) && ((_local5 < _arg3.height))); }; } else { _local4 = ((_arg1.x * _arg2.scaleX) + _arg2.x); _local6 = (((_local4 > _arg3.x)) && ((_local4 < _arg3.width))); if (_local6){ _local5 = ((_arg1.y * _arg2.scaleY) + _arg2.y); _local6 = (((_local5 > _arg3.y)) && ((_local5 < _arg3.height))); }; }; return (_local6); } public static function toHex(_arg1:int, _arg2:Boolean=false):String{ var _local3:String; var _local4:String; var _local5:int; var _local6:int; _local3 = "0123456789abcdef"; _local4 = ""; if (_arg2){ _local5 = 0; while (_local5 < 4) { _local4 = (_local4 + (_local3.charAt(((_arg1 >> (((3 - _local5) * 8) + 4)) & 15)) + _local3.charAt(((_arg1 >> ((3 - _local5) * 8)) & 15)))); _local5++; }; } else { _local6 = 0; while (_local6 < 4) { _local4 = (_local4 + (_local3.charAt(((_arg1 >> ((_local6 * 8) + 4)) & 15)) + _local3.charAt(((_arg1 >> (_local6 * 8)) & 15)))); _local6++; }; }; return (_local4); } public static function gammaApprox(_arg1:Number):Number{ var _local2:Number; _local2 = (_arg1 - 1); return (((Math.sqrt((((2 * _local2) + (1 / 3)) * Math.PI)) * Math.pow(_local2, _local2)) * Math.exp(-(_local2)))); } public static function checkVariable(_arg1, _arg2){ return (or(_arg1, _arg2)); } public static function factorial(_arg1:Number):Number{ if (_arg1 != 0){ return ((_arg1 * factorial((_arg1 - 1)))); }; return (1); } public static function drawGrid(_arg1, _arg2=100, _arg3=100, _arg4=10, _arg5=null, _arg6=null){ var _local7:*; var _local8:int; var _local9:int; _local7 = _arg1.graphics; _local7.clear(); _local7.lineStyle(0, _arg5); if (_arg6){ _local7.beginFill(_arg6); _local7.drawRect(0, 0, _arg2, _arg3); _local7.endFill(); }; _local8 = 0; while (_local8 <= _arg2) { _local7.moveTo(_local8, 0); _local7.lineTo(_local8, _arg3); _local8 = (_local8 + _arg4); }; _local9 = 0; while (_local9 <= _arg3) { _local7.moveTo(0, _local9); _local7.lineTo(_arg2, _local9); _local9 = (_local9 + _arg4); }; } public static function longsToChars(_arg1:Array):Array{ var _local2:Array; var _local3:Number; _local2 = new Array(); _local3 = 0; while (_local3 < _arg1.length) { _local2.push((_arg1[_local3] & 0xFF), ((_arg1[_local3] >>> 8) & 0xFF), ((_arg1[_local3] >>> 16) & 0xFF), ((_arg1[_local3] >>> 24) & 0xFF)); _local3++; }; return (_local2); } public static function randomDISABLE(_arg1, _arg2){ var _local3:*; do { if (_arg1.totalframes){ _local3 = random(_arg1.totalframes); } else { if (_arg1.length > 0){ _local3 = _arg1[random(_arg1.length)]; } else { if (_arg1 == null){ _local3 = random(100); } else { _local3 = random(_arg1); }; }; }; } while (_local3 == _arg2); return (_local3); } public static function zoomTo(_arg1:MovieClip, _arg2, _arg3=0.1, _arg4=1.5, _arg5=null, _arg6=null){ var _local7:*; var _local8:*; var _local9:*; var _local10:*; _arg5 = or(_arg5, (_arg1.width / 2)); _arg6 = or(_arg6, (_arg1.height / 2)); _local7 = ((_arg1.width * _arg1.scaleX) * _arg2); _local8 = ((_arg1.height * _arg1.scaleY) * _arg2); _local9 = ((_arg5 - _arg1.x) / _arg1.scaleX); _local10 = ((_arg6 - _arg1.y) / _arg1.scaleY); _arg1.scaleY = (_arg1.scaleX = _arg2); _arg1.x = (_arg5 - (_arg1.scaleX * _local9)); _arg1.y = (_arg6 - (_arg1.scaleY * _local10)); } public static function strToChars(_arg1:String):Array{ var _local2:Array; var _local3:Number; _local2 = new Array(); _local3 = 0; while (_local3 < _arg1.length) { _local2.push(_arg1.charCodeAt(_local3)); _local3++; }; return (_local2); } public static function createMc(_arg1=0, _arg2=false, _arg3=false){ var _local4:*; _arg1 = or(_arg1, root); _local4 = (_arg2) ? new ((getDefinitionByName(_arg2) as Class)) : new MovieClip(); _arg1.addChild(_local4); extract(_arg3, _local4); return (_local4); } public static function summation(_arg1:Number, _arg2:Number):Number{ var _local3:Number; var _local4:Number; _local3 = 0; _local4 = 1; while (_local4 <= _arg1) { _local3 = (_local3 + Math.pow(_local4, _arg2)); _local4++; }; return (_local3); } public static function randomSpectrum(_arg1=1){ return ((((Math.random() * _arg1) * 2) - _arg1)); } public static function removeItem(_arg1, _arg2){ return (!((_arg2.indexOf(_arg1) == -1))); } public static function arrayContainsValue(_arg1:Array, _arg2:Object){ return (!((_arg1.indexOf(_arg2) == -1))); } public static function totient(_arg1:Number):Number{ var _local2:Number; var _local3:Number; _local2 = 1; if ((_arg1 % 2) == 0){ _local3++; }; _local3 = 3; while (_local3 <= _arg1) { if (isPrime(_local3)){ _local2++; }; _local3 = (_local3 + 2); }; return (_local2); } public static function getContained(_arg1):Array{ var _local2:*; var _local3:*; _local2 = []; _local3 = 0; while (_local3 < _arg1.numChildren) { _local2.push(_arg1.getChildAt(_local3)); _local3++; }; return (_local2); } public static function random(_arg1, _arg2=0){ return (Math.round(((Math.random() * (_arg1 - _arg2)) + _arg2))); } public static function localToLocal(_arg1, _arg2){ return (_arg2.globalToLocal(_arg1.localToGlobal(new Point()))); } public static function charsToHex(_arg1:Array):String{ var _local2:String; var _local3:Array; var _local4:Number; _local2 = new String(""); _local3 = new Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"); _local4 = 0; while (_local4 < _arg1.length) { _local2 = (_local2 + (_local3[(_arg1[_local4] >> 4)] + _local3[(_arg1[_local4] & 15)])); _local4++; }; return (_local2); } public static function fillZero(_arg1, _arg2=1){ var _local3:*; _local3 = String(_arg1); while (_local3.length < (_arg2 + 1)) { _local3 = ("0" + _local3); }; return (_local3); } public static function seconds2Minutes(_arg1){ var _local2:*; _local2 = 0; while (_arg1 > 60) { _arg1 = (_arg1 - 60); _local2++; }; return (((fillZero(_local2) + ":") + fillZero(Math.round(_arg1)))); } public static function tracer(_arg1, _arg2=""){ var _local3:*; _local3 = "-------------------------------------- \n"; _local3 = (_local3 + (("TRACING:" + _arg2) + "\n")); _local3 = (_local3 + "-------------------------------------- \n"); _local3 = (_local3 + toString(_arg1)); trace(_local3); } public static function beginsWith(_arg1:String, _arg2:String):Boolean{ return ((_arg2 == _arg1.substring(0, _arg2.length))); } public static function isValidEmail(_arg1:String){ var _local2:*; var _local3:*; var _local4:*; var _local5:*; _local2 = _arg1.indexOf("@"); _local3 = _arg1.lastIndexOf("."); _local4 = (_local3 - _local2); _local5 = (_arg1.length - _local3); if ((((_local2 < 2)) || ((_local3 == -1)))){ return (false); }; if (_local2 < -1){ return (false); }; if (_local3 <= _local2){ return (false); }; if (_local4 < 3){ return (false); }; if ((((_local5 > 4)) || ((_local5 < 3)))){ return (false); }; return (true); } public static function zoom(_arg1:MovieClip, _arg2:Number, _arg3=0.1, _arg4=1.5, _arg5=null, _arg6=null){ var _local7:*; var _local8:*; var _local9:*; var _local10:*; _arg5 = or(_arg5, (_arg1.width / 2)); _arg6 = or(_arg6, (_arg1.height / 2)); _local7 = (_arg1.width * _arg2); _local8 = (_arg1.height * _arg2); _local9 = ((_arg5 - _arg1.x) / _arg1.scaleX); _local10 = ((_arg6 - _arg1.y) / _arg1.scaleY); _arg1.scaleX = (_arg1.scaleX = (_arg1.scaleX * _arg2)); _arg1.scaleY = (_arg1.scaleX = constrain(_arg1.scaleX, _arg3, _arg4)); _arg1.x = (_arg5 - (_arg1.scaleX * _local9)); _arg1.y = (_arg6 - (_arg1.scaleY * _local10)); return ((Math.round(_arg1.scaleX) + "%")); } public static function sign(_arg1, _arg2=false){ return (((_arg1 > 0)) ? (_arg2) ? 1 : true : (_arg2) ? -1 : false); } public static function randomChance(_arg1:Number=0.5){ return ((Math.random() > _arg1)); } public static function pow2(_arg1:Number, _arg2:Number):Number{ return (((_arg1 == 0)) ? 0 : ((_arg1 > 0)) ? Math.pow(_arg1, _arg2) : (Math.pow((_arg1 * -1), _arg2) * -1)); } public static function replaceStr(_arg1:String, _arg2:String, _arg3:String):String{ var _local4:String; var _local5:Boolean; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; _local4 = new String(); _local5 = false; _local6 = _arg1.length; _local7 = _arg2.length; _local8 = 0; while (_local8 < _local6) { if (_arg1.charAt(_local8) == _arg2.charAt(0)){ _local5 = true; _local9 = 0; while (_local9 < _local7) { if (_arg1.charAt((_local8 + _local9)) != _arg2.charAt(_local9)){ _local5 = false; break; }; _local9++; }; //unresolved if _local4 = (_local4 + _arg3); _local8 = (_local8 + (_local7 - 1)); } else { _local4 = (_local4 + _arg1.charAt(_local8)); }; _local8++; }; return (_local4); } public static function endsWith(_arg1:String, _arg2:String):Boolean{ return ((_arg2 == _arg1.substring((_arg1.length - _arg2.length)))); } public static function charsToStr(_arg1:Array):String{ var _local2:String; var _local3:Number; _local2 = new String(""); _local3 = 0; while (_local3 < _arg1.length) { _local2 = (_local2 + String.fromCharCode(_arg1[_local3])); _local3++; }; return (_local2); } public static function or(_arg1, _arg2){ if (_arg1 == null){ return (_arg2); }; return (_arg1); } public static function copyArray(_arg1:Array):Array{ var _local2:*; _local2 = _arg1.slice(); extract(_arg1, _local2); return (_local2); } public static function randomOR(_arg1, _arg2){ return (arrayGetRandom([_arg1, _arg2])); } public static function stringsAreEqual(_arg1:String, _arg2:String, _arg3:Boolean):Boolean{ if (_arg3){ return ((_arg1 == _arg2)); }; return ((_arg1.toUpperCase() == _arg2.toUpperCase())); } public static function autoCenter(_arg1){ _arg1.x = (-(_arg1.width) / 2); _arg1.y = (-(_arg1.height) / 2); } public static function length(_arg1){ var _local2:*; var _local3:*; if ((_arg1 is Array)){ return (_arg1.length); }; _local2 = 0; for (_local3 in _arg1) { _local2++; }; return (_local2); } public static function drawArea(_arg1, _arg2, _arg3){ var _local4:*; _local4 = new Sprite(); _local4.graphics.beginFill(0, 0); _local4.graphics.drawRect(0, 0, _arg2, _arg3); _local4.graphics.endFill(); _arg1.addChild(_local4); return (_local4); } public static function cycle(_arg1, _arg2=0, _arg3=100, _arg4=1){ _arg1 = (_arg1 + _arg4); if (_arg1 > _arg3){ _arg1 = (_arg1 - (_arg3 + _arg4)); }; if (_arg1 < _arg2){ _arg1 = (_arg1 + (_arg3 - _arg4)); }; return (_arg1); } public static function removeChild(_arg1=null){ if (_arg1){ if (_arg1.parent){ _arg1.parent.removeChild(_arg1); //unresolved jump }; }; } public static function positive(_arg1){ return (((_arg1 > 0)) ? _arg1 : -(_arg1)); } public static function toColumns(_arg1, _arg2=5, _arg3=5, _arg4=1, _arg5=false){ var _local6:*; var _local7:*; var _local8:*; var _local9:*; var _local10:*; var _local11:*; var _local12:*; var _local13:*; var _local14:*; var _local15:*; _local6 = 0; _local7 = 0; _local8 = new Rectangle(0, 0, 0, 0); _local15 = 0; for (;_local15 < _arg1.length;_local15++) { _local9 = _arg1[_local15]; _local10 = _local9.width; _local11 = _local9.height; _local12 = or(_arg1[(_local15 - _arg4)], _local8); _local13 = _local12.width; _local14 = _local12.height; _local9.x = (_arg5) ? ((_local12.x + _local13) + _arg2) : ((_local10 + _arg2) * _local7); _local9.y = (_arg5) ? ((_local11 + _arg3) * _local7) : ((_local12.y + _local14) + _arg3); ++_local7; if ((_local7 >= _arg4)){ _local7 = 0; _local6++; continue; }; }; } } }//package geeon.utils class Unlocker { private function Unlocker(){ } }
Section 43
//AngryBunnyParticle (project.AngryBunnyParticle) package project { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import geeon.particles.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class AngryBunnyParticle extends TweenParticle { public var sinCount:uint;// = 0 public var id; public var chasingMax:int; public var respawnVel:Number;// = 0 public var distHole:uint; public var chasingTime:uint; public var masked:Boolean; public static var isSuiciding:int; public static var elvInstance:ElvParticle = ElvParticle.instance; public static var sincos:Array = []; public static var total:uint = 40; public static var DIST_JUMP:uint = 45; public static var centerOffset:Point = new Point(-18.8, -39); public static var TOUCH_ELV:uint = 6; public static var holeInstance:HoleParticle = HoleParticle.instance; public static var instanced:Boolean; public static var pool:Array = []; public function AngryBunnyParticle(){ respawnVel = 0; sinCount = 0; super(); id = pool.length; pool.push(this); Space.push(this); mode = modeNULL; step = loop; } public function stunt(_arg1){ var _local2:*; if (mode != walking){ return; }; if (dist > 150){ return; }; mode = stunting; label = (lastLabel = "stun"); _local2 = ((150 - dist) / 5); counter = Utils.constrain(uint(((Math.random() * _local2) + _local2)), 1, 100); target.goto({label:label, frame:0, autoLoop:true}); } public function scream(){ var _local1:*; if (((!((mode == walking))) && (!((mode == dancing))))){ return; }; if (dist > 500){ return; }; trig = TrigonometryPoint.getSinCos(elvInstance, this, "z"); dist = trig.h; _local1 = (Utils.constrain((500 - dist), 20, 200) / 20); velocity.x = (_local1 * trig.cos); velocity.z = (_local1 * trig.sin); mode = screaming; counter = 50; label = (lastLabel = "screaming"); target.goto({label:label, frame:"random", autoLoop:true}); Space.shake(40); } public function waiting(){ if (!--counter){ spawn(); //unresolved jump }; } public function suicide(){ isSuiciding++; velocity.y = -20; velocity.x = (velocity.z = 0); counter = 15; mode = suiciding; label = (lastLabel = "suicide"); target.goto({label:label, frame:"random", autoLoop:true}); } public function wait(){ if (target){ SpriteBitmap.push(target); target = null; }; respawnVel = 0; mode = waiting; counter = ((Math.random() * 20) + (id * 60)); } public function spawn(){ BASE_VELOCITY = ((Math.random() * 4) + 2); respawnVel = Utils.constrain((respawnVel + 0.15), 0, 3); chasingTime = 0; velAccel = 0; chasingMax = (200 + (Math.random() * 200)); if (!target){ target = SpriteBitmap.pull({linkage:AngryBunnyBMP}); //unresolved jump }; target.goto({container:Space.sprites, x:5000, y:5000, scale:1, rotation:0, center:centerOffset}); x = (elvInstance.x + Utils.randomSpectrum()); z = (elvInstance.z + Utils.randomSpectrum()); TrigonometryPoint.doSpring(this, elvInstance, (600 + (Math.random() * 100)), 1, "z"); walk(); } public function walking(){ var _local1:Point; var _local2:*; if (HoleParticle.isOpen){ distHole = TrigonometryPoint.hipotenusa(this, holeInstance, "z").h; if (distHole < DIST_JUMP){ suicide(); return; }; }; trig = TrigonometryPoint.getSinCos(this, elvInstance, "z"); dist = trig.h; cos = trig.cos; sin = trig.sin; sinCount = Utils.cycle(sinCount, 0, 99); _local1 = sincos[sinCount]; x = (x + _local1.x); z = (z + _local1.y); _local2 = ((velAccel + BASE_VELOCITY) + respawnVel); if (ElvParticle.onAir){ _local2 = (_local2 * 0.3); } else { if (dist < TOUCH_ELV){ elvInstance.defeat(); dance(); return; }; }; if (++chasingTime > chasingMax){ _local2 = (_local2 * -1.5); sinCount = (sinCount + 3); if (dist > 720){ spawn(); return; }; }; velocity.x = (_local2 * cos); velocity.z = (_local2 * sin); view = ((((((cos > -0.5)) && ((cos < 0.5)))) && ((velocity.z < 0)))) ? "back" : "front"; label = (view + "_walk"); if (lastLabel != label){ target.goto({label:label, frame:"random", autoLoop:true}); //unresolved jump }; lastLabel = label; flip(velocity.x); target.step(); tween(); render(); } public function suiciding(){ x = (x + ((holeInstance.x - x) / 10)); z = (z + ((holeInstance.z - z) / 10)); velocity.y = (velocity.y + 3); tween(); render(); target.step(); if ((counter == 10)){ HoleMask.add(target); //unresolved jump }; if (!--counter){ isSuiciding--; HoleParticle.sumCombo(this); spawn(); }; } public function screaming(){ tween(); render(); target.step(); velocity.scalar(1.1); target.rotation = (target.rotation + velocity.x); target.scaleX = (target.scaleY = (target.scaleY + 0.05)); Space.shake(Utils.randomSpectrum(20)); if (!--counter){ spawn(); //unresolved jump }; } public function loop(){ mode(); } public function stunting(){ target.step(); if (!--counter){ walk(); //unresolved jump }; } public function dance(){ mode = dancing; label = (lastLabel = "dance"); target.goto({label:label, frame:"random", autoLoop:true}); } public function dancing(){ velocity.scalar(0.9); tween(); render(); target.step(); } public function walk(){ velocity.y = 0; y = 0; mode = walking; label = (lastLabel = ""); sinCount = (Math.random() * 100); } public static function restart(){ var _local1:*; isSuiciding = 0; for (_local1 in pool) { pool[_local1].wait(); }; } public static function checkScream(){ var _local1:*; for (_local1 in pool) { pool[_local1].scream(); }; } public static function chekStunt(_arg1){ var _local2:*; for (_local2 in pool) { pool[_local2].stunt(_arg1); }; } public static function init(){ var _local1:int; var _local2:Number; var _local3:int; if (!instanced){ instanced = true; _local1 = 0; while (_local1 < total) { new (AngryBunnyParticle); _local1++; }; _local2 = 0; _local3 = 0; while (_local3 < 100) { _local2 = (_local2 + 0.05); sincos.push(new Point(Math.sin(_local2), Math.cos(_local2))); _local3++; }; }; } } }//package project
Section 44
//BouncerParticle (project.BouncerParticle) package project { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import geeon.particles.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class BouncerParticle extends TweenParticle { public var corner:int; public var checkCorner:Function; public var elvX:int; public var elvZ:int; public static var pool:Array = []; public static var elvInstance:ElvParticle = ElvParticle.instance; public static var BOUNCE_TIME:uint = 35; public static var margin:Point = new Point(397, 265); public static var instanced:Boolean; public static var TRIG_RATIO:uint = 40; public function BouncerParticle(_arg1:int, _arg2:int, _arg3:int){ var _corner = _arg1; var _x = _arg2; var _z = _arg3; super(); corner = _corner; x = _x; z = _z; target = SpriteBitmap.pull({linkage:BouncerBMP, x:_x, y:_z}); pool.push(this); Space.push(this, "floor"); step = loop; wait(); if (corner == 0){ checkCorner = function (){ if (elvX < 0){ if (elvZ < 0){ return (true); }; }; return (false); }; return; }; if (corner == 1){ checkCorner = function (){ if (elvX > 0){ if (elvZ < 0){ return (true); }; }; return (false); }; return; }; if (corner == 2){ checkCorner = function (){ if (elvX > 0){ if (elvZ > 0){ return (true); }; }; return (false); }; return; }; if (corner == 3){ checkCorner = function (){ if (elvX < 0){ if (elvZ > 0){ return (true); }; }; return (false); }; return; }; } public function bouncing(){ target.step(); if (counter == 34){ dist = TrigonometryPoint.hipotenusa(this, elvInstance, "z").h; Mixer.playFX("hit2FX"); if ((dist < TRIG_RATIO)){ elvInstance.jump(null, true); //unresolved jump }; }; if (!--counter){ wait(); //unresolved jump }; } public function waiting(){ elvX = elvInstance.x; elvZ = elvInstance.z; if (checkCorner()){ dist = TrigonometryPoint.hipotenusa(this, elvInstance, "z").h; if ((dist < TRIG_RATIO)){ bounce(); //unresolved jump }; }; } public function wait(){ mode = waiting; target.goto({label:"closed", frame:0, playing:false}); } public function bounce(){ counter = BOUNCE_TIME; mode = bouncing; target.goto({label:"bounce", frame:0, playing:true}); Mixer.playFX("fFX"); } public function loop(){ mode(); } public static function init(){ if (!instanced){ instanced = true; new BouncerParticle(0, -(margin.x), -(margin.y)); new BouncerParticle(1, margin.x, -(margin.y)); new BouncerParticle(2, margin.x, margin.y); new BouncerParticle(3, -(margin.x), margin.y); }; } } }//package project
Section 45
//ElvParticle (project.ElvParticle) package project { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import geeon.particles.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class ElvParticle extends TweenParticle { public var shadowBmp:SpriteBitmap; public var smoke:Smoke; public var smokeCount:uint;// = 0 public static var forceLift:Boolean; public static var distHole:uint; public static var clickCount:int = 0; public static var onAir:Boolean; public static var CLICKED_METER:int = 0; public static var velAccel:Number; public static var instance:ElvParticle; public static var fromCenter:Boolean; public function ElvParticle(){ var _local1:*; smokeCount = 0; super(); instance = this; _local1 = (target = SpriteBitmap.pull({linkage:ElvBMP, center:new Point(-20, -39)})); step = myStep; shadowBmp = SpriteBitmap.pull({linkage:ShadowBMP, container:Space.shadows}); smoke = new Smoke(target); Space.push(this); Viewport.focus = target; } public function scream(){ onAir = true; mode = screaming; label = (lastLabel = "scream"); counter = 25; target.goto({label:label, frame:0, autoLoop:false}); AngryBunnyParticle.checkScream(); Mixer.playFX("elvcapturedFX"); } public function jumping(){ velocity.y = (velocity.y + (3 * time)); if (((y + velocity.y) > 0)){ walk(); //unresolved jump }; } public function jump(_arg1=-16, _arg2:Boolean=false){ mode = jumping; velocity.y = _arg1; label = (lastLabel = (view + "_jump")); onAir = true; if (_arg2){ fromCenter = true; trig = TrigonometryPoint.getSinCos(this, HoleParticle.instance, "z"); dist = trig.h; velocity.x = ((dist * trig.cos) / 50); velocity.z = ((dist * trig.sin) / 50); velocity.y = -40; Space.shake(20); flip(velocity.x); }; Space.shake(10); if (_arg2){ target.goto({label:"float", frame:"random", autoLoop:true}); } else { target.goto({label:label, frame:0, autoLoop:false}); }; Mixer.playFX("pass6FX"); } public function defeat(){ if (mode == defeating){ return; }; velocity.x = 0; velocity.z = 0; y = 0; mode = defeating; label = (lastLabel = "defeat"); target.goto({label:label, frame:0, autoLoop:false}); counter = 40; GameTimer.add(-30); HoleParticle.resetCombo(); Mixer.playFX("passFX"); Mixer.gameMusicOff(); } public function screaming(){ if (!--counter){ Mixer.gameMusicOn(); walk(); }; } public function myStep(){ time = Thread.time; distHole = TrigonometryPoint.hipotenusa(this, HoleParticle.instance, "z").h; mode(); tween(); render(); target.step(); shadowBmp.x = x; shadowBmp.y = z; smoke.step(); } public function walking(){ var _local1:Number; var _local2:Boolean; if (HoleParticle.isOpen){ if ((distHole < 50)){ TrigonometryPoint.springMin(this, HoleParticle.instance, 50, 2, "z"); //unresolved jump }; } else { if (distHole < 25){ HoleParticle.lift(); jump(); return; }; }; trig = TrigonometryPoint.getSinCos(this, PointerParticle.instance, "z"); dist = trig.h; cos = trig.cos; sin = trig.sin; _local1 = (velAccel + BASE_VELOCITY); moving = (dist > (_local1 * 8)); if (((moving) && (!(pointReached)))){ _local1 = (_local1 + (xtraAccel * time)); velAccel = (velAccel * 1.1); velocity.x = (_local1 * cos); velocity.z = (_local1 * sin); view = ((((((cos > -0.5)) && ((cos < 0.5)))) && ((velocity.z < 0)))) ? "back" : "front"; label = (view + "_walk"); _local2 = true; smokeCount = 15; smoke.chance(0.8); } else { label = view; _local2 = false; pointReached = true; if (smokeCount){ smokeCount--; smoke.chance(0.5); }; if ((velAccel > 1)){ velAccel = (velAccel * (0.75 / time)); //unresolved jump }; }; if (lastLabel != label){ lastLabel = label; target.goto({label:label, frame:0, autoLoop:_local2}); }; velAccel = Utils.constrain(velAccel, 1, 15); xtraAccel = (xtraAccel * 0.995); velocity.x = (velocity.x * 0.89); velocity.z = (velocity.z * 0.89); flip(velocity.x); } public function walk(){ Space.shake(velocity.y); if (fromCenter){ AngryBunnyParticle.chekStunt((velocity.y * 10)); velocity.y = (-(velocity.y) * 0.4); y = 0; target.goto({label:label, frame:0, autoLoop:false}); } else { AngryBunnyParticle.chekStunt((velocity.y * 10)); onAir = false; velocity.y = (y = 0); mode = walking; label = (lastLabel = view); velAccel = (velAccel * 0.5); target.goto({label:label, frame:0, autoLoop:false}); }; Mixer.playFX("hit2FX"); fromCenter = false; } public function defeating(){ target.step(); if (!--counter){ scream(); //unresolved jump }; } public static function restart(){ instance.x = 0; instance.z = 150; instance.mode = instance.modeNULL(); instance.walk(); instance.tween(); instance.render(); instance.velocity.scalar(0); } public static function init(){ if (!instance){ new (ElvParticle); //unresolved jump }; } } }//package project
Section 46
//GameEngine (project.GameEngine) package project { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import geeon.particles.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class GameEngine { public var mode:Function; public var counter:int; public static var instance:GameEngine; public function GameEngine(){ mode = function (){ }; super(); BitmapDataPool.pull(AngryBunnyBMP); BitmapDataPool.pull(HappyBunnyBMP); instance = this; SpriteBitmap.pull({linkage:FloorBMP, container:Space.floor}); HoleParticle.init(); ElvParticle.init(); PointerParticle.init(); BouncerParticle.init(); AngryBunnyParticle.init(); HappyBunnyParticle.init(); new HoleMask(); Space.SCROLL_FRICTION = 10; Space.constrainScroll(250, 110); } public function restartGame(){ Thread.add(instance.step); mode = Space.step; Score.reset(); GameTimer.reset(179, gameEnd); Mixer.gameMusicOn(); ElvParticle.restart(); HoleParticle.restart(); PointerParticle.restart(); AngryBunnyParticle.restart(); HappyBunnyParticle.restart(); GameInterface.message.show("OPEN THAT HOLE!", 30); } public function lastCount(){ HoleParticle.instance.step(); if (!HoleParticle.isOpen){ if (!--counter){ clearThreads(); GDocument.showPage(ScorePage); }; }; } public function gameEnd(){ Mixer.gameMusicOff(); Mixer.playFX("elvcapturedFX"); counter = 15; mode = lastCount; } public function step(){ if (GDocument.paused){ return; }; mode(); } public static function clearThreads(){ if (instance){ Thread.remove(instance.step); GameTimer.stop(); Mouse.show(); Mixer.gameMusicOff(); }; } public static function restart(){ instance.restartGame(); } } }//package project
Section 47
//GameInterface (project.GameInterface) package project { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import geeon.particles.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class GameInterface extends Sprite { public var timeMc:MovieClip; public var z:int;// = 14 public var scoreMc:MovieClip; public var comboMc:MovieClip; public var msgMc:MovieClip; public static var comboMessage:SpriteBitmapText; public static var timeMessage:SpriteBitmapText; public static var scoreMessage:SpriteBitmapText; public static var message:SpriteBitmapText; public static var instance:GameInterface; public function GameInterface(){ z = 14; super(); instance = this; scoreMessage = new SpriteBitmapText(scoreMc); timeMessage = new SpriteBitmapText(timeMc); comboMessage = new SpriteBitmapText(comboMc); message = new SpriteBitmapText(msgMc); message.visible = false; } } }//package project
Section 48
//GameTimer (project.GameTimer) package project { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import geeon.particles.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class GameTimer { public static var initialized:Boolean; public static var timer:uint; public static var onTimeOut:Function = function (){ }; public static var time; public static var remainingSeconds:int; public static var timeMessage:SpriteBitmapText = GameInterface.timeMessage; public static var initialSeconds:int; public static function step(){ if (GDocument.paused){ return; }; if ((remainingSeconds <= 10)){ Mixer.playFX("timeFX"); //unresolved jump }; if (--remainingSeconds <= 0){ remainingSeconds = 0; stop(); onTimeOut(); }; renderTime(); } public static function reset(_arg1:uint=0, _arg2:Function=null){ onTimeOut = Utils.or(_arg2, onTimeOut); stop(); if (_arg1){ initialSeconds = _arg1; //unresolved jump }; remainingSeconds = initialSeconds; renderTime(); timer = setInterval(step, 1000); } public static function stop(){ clearInterval(timer); } public static function add(_arg1){ remainingSeconds = (remainingSeconds + _arg1); if ((remainingSeconds < 0)){ remainingSeconds = 0; //unresolved jump }; renderTime(); } public static function renderTime(){ timeMessage.show(Utils.seconds2Minutes(remainingSeconds)); } } }//package project
Section 49
//HappyBunnyParticle (project.HappyBunnyParticle) package project { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import geeon.particles.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class HappyBunnyParticle extends TweenParticle { public var distHole:uint; public var chasingTime:uint; public var isChasing:Boolean; public var chaseThis:TweenParticle; public var isWaiting:Boolean; public static var total:uint = 10; public static var active:Array = []; public static var centerOffset:Point = new Point(-39, -107); public static var springList:Array = [elvInstance]; public static var elvInstance:ElvParticle = ElvParticle.instance; public static var inactive:Array = []; public static var TOUCH_ELV:uint = 30; public static var holeInstance:HoleParticle = HoleParticle.instance; public static var instanced:Boolean; public static var chasingMax:uint = 300; public function HappyBunnyParticle(){ step = loop; hide(); } public function pick(){ isWaiting = false; isChasing = true; mode = picking; counter = 20; velocity.y = -10; addSpring(this); target.goto({label:"pick", frame:0, autoLoop:true}); Mixer.playFX("loseFX"); } public function doChase(){ TrigonometryPoint.springMax(this, elvInstance, 15, 4, "z"); if (HoleParticle.isOpen){ if (TrigonometryPoint.hipotenusa(this, holeInstance, "z").h < 50){ suicide(); return; }; }; if (++chasingTime > chasingMax){ dig(); }; } public function suicide(){ isChasing = false; velocity.y = -20; counter = 15; mode = suiciding; removeSpring(this); target.goto({label:"pick", frame:0, autoLoop:true}); } public function picking(){ velocity.y = (velocity.y + 3); if (((y + velocity.y) > 0)){ y = (velocity.y = 0); //unresolved jump }; if (!--counter){ walk(); //unresolved jump }; } public function waiting(){ if (!--counter){ dig(); //unresolved jump }; } public function hide(){ Space.remove(this); if (target){ SpriteBitmap.push(target); //unresolved jump }; target = null; active.splice(active.indexOf(this), 1); inactive.push(this); mode = modeNULL; } public function wait(){ mode = waiting; counter = ((Math.random() * 100) + 100); target.goto({label:"wait", frame:0, autoLoop:true}); } public function spawn(){ inactive.splice(inactive.indexOf(this), 1); active.push(this); if (!target){ target = SpriteBitmap.pull({linkage:HappyBunnyBMP, center:centerOffset}); //unresolved jump }; target.goto({label:"spawn", frame:0, autoLoop:false, container:Space.sprites, x:5000, y:5000, scale:1, rotation:0}); Space.push(this); y = 0; x = (holeInstance.x + Utils.randomSpectrum()); z = (holeInstance.z + Utils.randomSpectrum()); TrigonometryPoint.springMin(this, holeInstance, (300 + (Math.random() * 20)), 1, "z"); z = (z * 0.7); velocity.scalar(0); chaseThis = null; counter = 15; mode = spawning; isWaiting = true; } public function dig(){ removeSpring(this); if (mode == digging){ return; }; isWaiting = false; isChasing = false; mode = digging; counter = 12; target.goto({label:"dig", frame:0, autoLoop:false}); } public function suiciding(){ x = (x + ((holeInstance.x - x) / 10)); z = (z + ((holeInstance.z - z) / 10)); velocity.y = (velocity.y + 3); if ((counter == 10)){ HoleMask.add(target); //unresolved jump }; if (!--counter){ HoleParticle.sumCombo(this); hide(); }; } public function spawning(){ if (!--counter){ wait(); //unresolved jump }; } public function doWait(){ dist = TrigonometryPoint.hipotenusa(this, elvInstance, "z").h; if (dist < TOUCH_ELV){ pick(); return; }; } public function loop(){ mode(); if (target){ if (isWaiting){ doWait(); //unresolved jump }; if (isChasing){ doChase(); //unresolved jump }; tween(); target.step(); render(); }; } public function digging(){ if (!--counter){ hide(); //unresolved jump }; } public function walk(){ mode = picking; counter = 20; chasingTime = 0; target.goto({label:"walk", frame:0, autoLoop:true}); mode = modeNULL; } public static function spawnBunny(){ if (inactive.length){ inactive[0].spawn(); //unresolved jump }; } public static function addSpring(_arg1){ springList.splice(1, 0, _arg1); arrangeSprings(); } public static function restart(){ springList = [elvInstance]; while (active.length) { active[0].hide(); }; } public static function init(){ var _local1:int; if (!instanced){ instanced = true; _local1 = 0; while (_local1 < total) { new (HappyBunnyParticle); _local1++; }; }; } public static function removeSpring(_arg1){ springList.splice(springList.indexOf(_arg1), 1); arrangeSprings(); } public static function arrangeSprings(){ var _local1:*; for (_local1 in springList) { if ((_local1 > 0)){ springList[_local1].chaseThis = springList[(_local1 - 1)]; continue; }; }; } public static function digAll(){ var _local1:*; springList = [elvInstance]; for (_local1 in active) { active[_local1].dig(); }; } } }//package project
Section 50
//HoleMask (project.HoleMask) package project { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import geeon.particles.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class HoleMask extends Sprite { public var z:int;// = 14 public var maskMc:MovieClip; public static var instance:HoleMask; public function HoleMask(){ z = 14; super(); instance = this; mask = maskMc; y = 14; Space.sprites.addChild(this); } public static function init(){ if (!instance){ new (HoleMask); //unresolved jump }; } public static function add(_arg1){ instance.addChild(_arg1); } } }//package project
Section 51
//HoleParticle (project.HoleParticle) package project { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import geeon.particles.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class HoleParticle extends TweenParticle { public static var waiting:Boolean; public static var isOpen:Boolean; public static var instance:HoleParticle; public static var comboMessage:SpriteBitmapText = GameInterface.comboMessage; public static var OPEN_TIME:uint = 75; public static var goodMessages:Array = ["Good!", "Excellent!", "Gimme more!", "Neat", "Yay!", "Thats how it´s done!", "Perfect!", "Superb!", "Rock on!"]; public static var counterCombo:uint = 0; public static var comboBunnies:uint = 0; public static var comboBonus:uint = 0; public static var toneCount:int; public function HoleParticle(){ instance = this; target = SpriteBitmap.pull({linkage:HoleBMP}); Space.push(this, "floor"); step = loop; Space.text.addChild(comboMessage); comboMessage.y = -120; comboMessage.x = (-(comboMessage.width) / 2); comboMessage.show("", 1); wait(); } public function opening(){ var _local1:*; var _local2:*; var _local3:*; var _local4:*; isOpen = (((counter > 10)) && ((counter < 78))); _local1 = target.frame; _local2 = Math.ceil(Utils.constrain((_local1 + (((OPEN_TIME - counter) - _local1) / 3)), 0, OPEN_TIME)); target.goto({frame:_local2}); if (counterCombo > 0){ if (!--counterCombo){ toneCount++; Mixer.playFX(("fan" + Utils.constrain((toneCount - 1), 0, 24))); _local3 = "COMBO"; if ((comboBonus > 1)){ _local3 = (_local3 + ((" (x" + comboBonus) + ")")); //unresolved jump }; comboMessage.show(Utils.fillZero(comboBunnies), 20, _local3); if ((Math.random() > 0.87)){ HappyBunnyParticle.spawnBunny(); //unresolved jump }; }; }; if (!--counter){ trace(AngryBunnyParticle.isSuiciding); if (AngryBunnyParticle.isSuiciding > 0){ counter = 1; return; }; if (comboBunnies){ _local4 = ((comboBunnies * 100) * comboBonus); GameInterface.message.show(("COMBO " + Utils.commas(_local4)), 30); Score.add(_local4); }; Mixer.playFX("hitFX"); wait(); }; } public function open(){ toneCount = 0; comboBonus = 1; comboBunnies = 0; waiting = false; counter = OPEN_TIME; mode = opening; Mixer.playFX("hitFX"); target.goto({label:"open", frame:0, playing:false}); Space.shake(10); } public function wait(){ isOpen = false; mode = modeNULL; waiting = true; target.goto({label:"closed", frame:0, playing:false}); } public function loop(){ mode(); } public static function sumCombo(_arg1){ var _local2:int; counterCombo = 3; if ((_arg1 is AngryBunnyParticle)){ incrementBunnyCombo(); } else { GameInterface.message.show("SPECIAL BUNNY x10", 20); _local2 = 0; while (_local2 < 10) { incrementBunnyCombo(); _local2++; }; }; } public static function lift(){ if (instance.mode == instance.modeNULL){ instance.open(); } else { addTime(); }; } public static function addTime(_arg1:int=10){ instance.counter = Utils.constrain((instance.counter + _arg1), 1, (OPEN_TIME - 20)); } public static function restart(){ instance.wait(); } public static function init(){ if (!instance){ new (HoleParticle); //unresolved jump }; } public static function incrementBunnyCombo(){ lift(); comboBunnies++; if ((Number((comboBunnies / 10)) is int)){ Score.add((comboBunnies * 125)); comboBonus++; GameInterface.message.show(Utils.arrayGetRandom(goodMessages), 20); }; } public static function resetCombo(){ if ((((comboBonus > 1)) || ((comboBunnies > 0)))){ GameInterface.message.show("COMBO LOST", 30); //unresolved jump }; comboBonus = 1; comboBunnies = 0; toneCount = 0; HappyBunnyParticle.digAll(); } } }//package project
Section 52
//InstructionsPage (project.InstructionsPage) package project { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import geeon.particles.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class InstructionsPage extends MovieClip { public var restart:Function; public var preloadBar:MovieClip; public var playBtn:SimpleButton; public static var instance:InstructionsPage; public function InstructionsPage(){ restart = function (){ }; super(); addFrameScript(14, frame15); instance = this; visible = false; Button.setSimpleButton(playBtn, playGame); playBtn.visible = false; hide(); stop(); } function frame15(){ stop(); } public function playGame(){ GDocument.showPage(GamePage); } public function showPlay(){ preloadBar.visible = false; playBtn.visible = true; removeChild(preloadBar); } public static function show(){ instance.preloadBar.visible = true; instance.playBtn.visible = false; BitmapDataPool.preloadBar = instance.preloadBar.preloadbarMc; BitmapDataPool.onFinish = instance.showPlay; BitmapDataPool.getPercent(); } public static function hide(){ } } }//package project
Section 53
//linkme (project.linkme) package project { import flash.display.*; public dynamic class linkme extends MovieClip { public var A:MovieClip; public var B:MovieClip; } }//package project
Section 54
//MaxScreen (project.MaxScreen) package project { import flash.display.*; import flash.events.*; import flash.media.*; import flash.geom.*; import flash.text.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; import flash.accessibility.*; public dynamic class MaxScreen extends MovieClip { public function MaxScreen(){ addFrameScript(240, frame241); } function frame241(){ stop(); parent.nextFrame(); } } }//package project
Section 55
//PointerParticle (project.PointerParticle) package project { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import geeon.particles.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class PointerParticle extends TweenParticle { public var isDown:Boolean;// = false public static var instance:PointerParticle; public function PointerParticle(){ isDown = false; super(); instance = this; target = SpriteBitmap.pull({linkage:HaloBMP, autoLoop:false}); Space.push(this, "shadows"); GamePage.instance.pointerBtn.addEventListener("mouseDown", mouseDown); GamePage.instance.pointerBtn.addEventListener("mouseUp", mouseUp); } public function mouseUp(_arg1){ isDown = false; target.autoLoop = false; Mouse.show(); step = target.step; } public function loop(){ ElvParticle.instance.pointReached = false; target.x = (x = (x + ((Space.instance.mouseX - x) / 3))); target.y = (z = (z + ((Space.instance.mouseY - z) / 3))); target.step(); } public function mouseDown(_arg1){ isDown = true; target.goto({frame:0, autoLoop:true}); Mouse.hide(); target.x = (x = Space.instance.mouseX); target.y = (z = Space.instance.mouseY); step = loop; } public static function init(){ if (!instance){ new (PointerParticle); //unresolved jump }; } public static function restart(){ instance.mouseUp(0); instance.target.x = (instance.x = 0); instance.target.y = (instance.z = 150); } } }//package project
Section 56
//Score (project.Score) package project { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import geeon.particles.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class Score { public static var score; public static var scoreMessage:SpriteBitmapText = GameInterface.scoreMessage; public static function add(_arg1){ score = Memory.plus("score", _arg1); renderScore(); } public static function renderScore(){ scoreMessage.show(Utils.commas(Utils.fillZero(score, 4))); } public static function reset(){ score = Memory.setValue("score", 0); renderScore(); } } }//package project
Section 57
//ScorePage (project.ScorePage) package project { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import geeon.particles.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class ScorePage extends MovieClip { public var mainBtn:SimpleButton; public var restart:Function; public var maxBtn:SimpleButton; public var cgBtn:SimpleButton; public var playBtn:SimpleButton; public var scoreTxt:TextField; public static var instance:ScorePage; public function ScorePage(){ restart = function (){ }; super(); addFrameScript(14, frame15); instance = this; visible = false; hide(); stop(); Button.setSimpleButton(playBtn, playGame); Button.setSimpleButton(mainBtn, main); Button.setSimpleButton(maxBtn, sponsor); Button.setSimpleButton(cgBtn, cublogames); } public function sponsor(){ Utils.getURL("http://www.maxgames.com"); } function frame15(){ stop(); } public function playGame(){ GDocument.showPage(GamePage); } public function main(){ GDocument.showPage(SplashPage); } public function cublogames(){ Utils.getURL("http://www.cublogames.com"); } public static function show(){ var _local1:*; _local1 = int(Memory.getValue("score")); if ((_local1 >= 1000)){ _local1 = Utils.commas(_local1); //unresolved jump }; instance.scoreTxt.text = _local1; } public static function hide(){ } } }//package project
Section 58
//Smoke (project.Smoke) package project { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import geeon.particles.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class Smoke { public var max:int;// = 10 public var smokeCount:int;// = 0 public var target:SpriteBitmap; public var current:int;// = 0 public var pool:Array; public function Smoke(_arg1){ var _local2:int; pool = []; current = 0; max = 10; smokeCount = 0; super(); target = _arg1; _local2 = 0; while (_local2 < max) { pool.push(SpriteBitmap.pull({linkage:SmokeBMP, container:Space.shadows, scale:0.1, autoLoop:false})); _local2++; }; } public function step(){ var _local1:*; var _local2:*; for (_local1 in pool) { _local2 = pool[_local1]; if ((_local2.frame < _local2.totalFrames)){ _local2.step(); continue; }; }; } public function chance(_arg1:Number=1){ if (Math.random() > _arg1){ pool[current].goto({frame:0, x:target.x, y:(target.y - 5)}); current = Utils.cycle(current, 0, (max - 1)); }; } } }//package project
Section 59
//SplashPage (project.SplashPage) package project { import flash.display.*; import geeon.components.*; import flash.events.*; import geeon.system.*; import geeon.utils.*; import geeon.particles.*; import flash.media.*; import geeon.gdocument.*; import flash.geom.*; import flash.text.*; import geeon.holders.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; public class SplashPage extends MovieClip { public var restart:Function; public var maxBtn:SimpleButton; public var cgBtn:SimpleButton; public var playBtn:SimpleButton; public static var instance:SplashPage; public function SplashPage(){ restart = function (){ }; super(); addFrameScript(14, frame15); instance = this; visible = false; hide(); stop(); Button.setSimpleButton(playBtn, playGame); Button.setSimpleButton(maxBtn, sponsor); Button.setSimpleButton(cgBtn, cublogames); } public function sponsor(){ Utils.getURL("http://www.maxgames.com"); } function frame15(){ stop(); } public function playGame(){ GDocument.showPage(InstructionsPage); } public function cublogames(){ Utils.getURL("http://www.cublogames.com"); } public static function show(){ } public static function hide(){ } } }//package project
Section 60
//AngryBunnyBMP (AngryBunnyBMP) package { import flash.display.*; public dynamic class AngryBunnyBMP extends MovieClip { } }//package
Section 61
//BadGuyBMP (BadGuyBMP) package { import flash.display.*; import flash.events.*; import flash.media.*; import flash.geom.*; import flash.text.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; import flash.accessibility.*; public dynamic class BadGuyBMP extends MovieClip { public function BadGuyBMP(){ addFrameScript(0, frame1, 45, frame46, 68, frame69); } function frame1(){ stop(); } function frame46(){ stop(); } function frame69(){ stop(); } } }//package
Section 62
//BouncerBMP (BouncerBMP) package { import flash.display.*; import flash.events.*; import flash.media.*; import flash.geom.*; import flash.text.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; import flash.accessibility.*; public dynamic class BouncerBMP extends MovieClip { public function BouncerBMP(){ addFrameScript(4, frame5); } function frame5(){ stop(); } } }//package
Section 63
//bulletFX (bulletFX) package { import flash.media.*; public dynamic class bulletFX extends Sound { } }//package
Section 64
//buttonDownSound (buttonDownSound) package { import flash.media.*; public dynamic class buttonDownSound extends Sound { } }//package
Section 65
//buttonOverSound (buttonOverSound) package { import flash.media.*; public dynamic class buttonOverSound extends Sound { } }//package
Section 66
//ElvBMP (ElvBMP) package { import flash.display.*; import flash.events.*; import flash.media.*; import flash.geom.*; import flash.text.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; import flash.accessibility.*; public dynamic class ElvBMP extends MovieClip { public function ElvBMP(){ addFrameScript(0, frame1, 35, frame36, 164, frame165, 180, frame181, 195, frame196, 200, frame201, 215, frame216); } function frame165(){ stop(); } function frame201(){ stop(); } function frame181(){ stop(); } function frame1(){ stop(); } function frame216(){ stop(); } function frame36(){ stop(); } function frame196(){ stop(); } } }//package
Section 67
//elvcapturedFX (elvcapturedFX) package { import flash.media.*; public dynamic class elvcapturedFX extends Sound { } }//package
Section 68
//elvdiesFX (elvdiesFX) package { import flash.media.*; public dynamic class elvdiesFX extends Sound { } }//package
Section 69
//fan (fan) package { import flash.media.*; public dynamic class fan extends Sound { } }//package
Section 70
//fan0 (fan0) package { import flash.media.*; public dynamic class fan0 extends Sound { } }//package
Section 71
//fan1 (fan1) package { import flash.media.*; public dynamic class fan1 extends Sound { } }//package
Section 72
//fan10 (fan10) package { import flash.media.*; public dynamic class fan10 extends Sound { } }//package
Section 73
//fan11 (fan11) package { import flash.media.*; public dynamic class fan11 extends Sound { } }//package
Section 74
//fan12 (fan12) package { import flash.media.*; public dynamic class fan12 extends Sound { } }//package
Section 75
//fan13 (fan13) package { import flash.media.*; public dynamic class fan13 extends Sound { } }//package
Section 76
//fan14 (fan14) package { import flash.media.*; public dynamic class fan14 extends Sound { } }//package
Section 77
//fan15 (fan15) package { import flash.media.*; public dynamic class fan15 extends Sound { } }//package
Section 78
//fan16 (fan16) package { import flash.media.*; public dynamic class fan16 extends Sound { } }//package
Section 79
//fan17 (fan17) package { import flash.media.*; public dynamic class fan17 extends Sound { } }//package
Section 80
//fan18 (fan18) package { import flash.media.*; public dynamic class fan18 extends Sound { } }//package
Section 81
//fan19 (fan19) package { import flash.media.*; public dynamic class fan19 extends Sound { } }//package
Section 82
//fan2 (fan2) package { import flash.media.*; public dynamic class fan2 extends Sound { } }//package
Section 83
//fan20 (fan20) package { import flash.media.*; public dynamic class fan20 extends Sound { } }//package
Section 84
//fan21 (fan21) package { import flash.media.*; public dynamic class fan21 extends Sound { } }//package
Section 85
//fan22 (fan22) package { import flash.media.*; public dynamic class fan22 extends Sound { } }//package
Section 86
//fan23 (fan23) package { import flash.media.*; public dynamic class fan23 extends Sound { } }//package
Section 87
//fan24 (fan24) package { import flash.media.*; public dynamic class fan24 extends Sound { } }//package
Section 88
//fan3 (fan3) package { import flash.media.*; public dynamic class fan3 extends Sound { } }//package
Section 89
//fan4 (fan4) package { import flash.media.*; public dynamic class fan4 extends Sound { } }//package
Section 90
//fan5 (fan5) package { import flash.media.*; public dynamic class fan5 extends Sound { } }//package
Section 91
//fan6 (fan6) package { import flash.media.*; public dynamic class fan6 extends Sound { } }//package
Section 92
//fan7 (fan7) package { import flash.media.*; public dynamic class fan7 extends Sound { } }//package
Section 93
//fan8 (fan8) package { import flash.media.*; public dynamic class fan8 extends Sound { } }//package
Section 94
//fan9 (fan9) package { import flash.media.*; public dynamic class fan9 extends Sound { } }//package
Section 95
//FanBMP (FanBMP) package { import flash.display.*; public dynamic class FanBMP extends MovieClip { } }//package
Section 96
//fFX (fFX) package { import flash.media.*; public dynamic class fFX extends Sound { } }//package
Section 97
//FloorBMP (FloorBMP) package { import flash.display.*; public dynamic class FloorBMP extends MovieClip { public var backMc:MovieClip; } }//package
Section 98
//gameMusic (gameMusic) package { import flash.media.*; public dynamic class gameMusic extends Sound { } }//package
Section 99
//HaloBMP (HaloBMP) package { import flash.display.*; public dynamic class HaloBMP extends MovieClip { } }//package
Section 100
//HappyBunnyBMP (HappyBunnyBMP) package { import flash.display.*; public dynamic class HappyBunnyBMP extends MovieClip { } }//package
Section 101
//hit2FX (hit2FX) package { import flash.media.*; public dynamic class hit2FX extends Sound { } }//package
Section 102
//hitFX (hitFX) package { import flash.media.*; public dynamic class hitFX extends Sound { } }//package
Section 103
//HoleBMP (HoleBMP) package { import flash.display.*; public dynamic class HoleBMP extends MovieClip { } }//package
Section 104
//jumpFX (jumpFX) package { import flash.media.*; public dynamic class jumpFX extends Sound { } }//package
Section 105
//loseFX (loseFX) package { import flash.media.*; public dynamic class loseFX extends Sound { } }//package
Section 106
//pass6FX (pass6FX) package { import flash.media.*; public dynamic class pass6FX extends Sound { } }//package
Section 107
//passFX (passFX) package { import flash.media.*; public dynamic class passFX extends Sound { } }//package
Section 108
//ShadowBMP (ShadowBMP) package { import flash.display.*; public dynamic class ShadowBMP extends MovieClip { } }//package
Section 109
//SmokeBMP (SmokeBMP) package { import flash.display.*; import flash.events.*; import flash.media.*; import flash.geom.*; import flash.text.*; import flash.system.*; import flash.utils.*; import flash.net.*; import flash.ui.*; import flash.errors.*; import flash.xml.*; import flash.filters.*; import flash.accessibility.*; public dynamic class SmokeBMP extends MovieClip { public var smoke:MovieClip; public function SmokeBMP(){ addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4, 4, frame5, 5, frame6, 6, frame7, 7, frame8, 8, frame9, 9, frame10, 10, frame11, 11, frame12, 12, frame13, 13, frame14, 14, frame15, 15, frame16, 16, frame17, 17, frame18, 18, frame19, 19, frame20, 20, frame21, 21, frame22, 22, frame23, 23, frame24, 24, frame25, 25, frame26, 26, frame27, 27, frame28, 28, frame29, 29, frame30, 30, frame31, 31, frame32, 32, frame33, 33, frame34, 34, frame35, 35, frame36, 36, frame37, 37, frame38, 38, frame39, 39, frame40); } function frame10(){ smoke.gotoAndStop(currentFrame); } function frame14(){ smoke.gotoAndStop(currentFrame); } function frame18(){ smoke.gotoAndStop(currentFrame); } function frame12(){ smoke.gotoAndStop(currentFrame); } function frame3(){ smoke.gotoAndStop(currentFrame); } function frame6(){ smoke.gotoAndStop(currentFrame); } function frame7(){ smoke.gotoAndStop(currentFrame); } function frame1(){ smoke.gotoAndStop(currentFrame); } function frame19(){ smoke.gotoAndStop(currentFrame); } function frame25(){ smoke.gotoAndStop(currentFrame); } function frame13(){ smoke.gotoAndStop(currentFrame); } function frame17(){ smoke.gotoAndStop(currentFrame); } function frame5(){ smoke.gotoAndStop(currentFrame); } function frame9(){ smoke.gotoAndStop(currentFrame); } function frame22(){ smoke.gotoAndStop(currentFrame); } function frame4(){ smoke.gotoAndStop(currentFrame); } function frame8(){ smoke.gotoAndStop(currentFrame); } function frame21(){ smoke.gotoAndStop(currentFrame); } function frame2(){ smoke.gotoAndStop(currentFrame); } function frame15(){ smoke.gotoAndStop(currentFrame); } function frame23(){ smoke.gotoAndStop(currentFrame); } function frame24(){ smoke.gotoAndStop(currentFrame); } function frame28(){ smoke.gotoAndStop(currentFrame); } function frame36(){ smoke.gotoAndStop(currentFrame); } function frame16(){ smoke.gotoAndStop(currentFrame); } function frame30(){ smoke.gotoAndStop(currentFrame); } function frame31(){ smoke.gotoAndStop(currentFrame); } function frame34(){ smoke.gotoAndStop(currentFrame); } function frame27(){ smoke.gotoAndStop(currentFrame); } function frame11(){ smoke.gotoAndStop(currentFrame); } function frame35(){ smoke.gotoAndStop(currentFrame); } function frame37(){ smoke.gotoAndStop(currentFrame); } function frame29(){ smoke.gotoAndStop(currentFrame); } function frame33(){ smoke.gotoAndStop(currentFrame); } function frame40(){ smoke.gotoAndStop(currentFrame); } function frame20(){ smoke.gotoAndStop(currentFrame); } function frame39(){ smoke.gotoAndStop(currentFrame); } function frame26(){ smoke.gotoAndStop(currentFrame); } function frame32(){ smoke.gotoAndStop(currentFrame); } function frame38(){ smoke.gotoAndStop(currentFrame); } } }//package
Section 110
//snareFX (snareFX) package { import flash.media.*; public dynamic class snareFX extends Sound { } }//package
Section 111
//spawnFX (spawnFX) package { import flash.media.*; public dynamic class spawnFX extends Sound { } }//package
Section 112
//sube2FX (sube2FX) package { import flash.media.*; public dynamic class sube2FX extends Sound { } }//package
Section 113
//sube4FX (sube4FX) package { import flash.media.*; public dynamic class sube4FX extends Sound { } }//package
Section 114
//surfMusic (surfMusic) package { import flash.media.*; public dynamic class surfMusic extends Sound { } }//package
Section 115
//testBMP (testBMP) package { import flash.display.*; public dynamic class testBMP extends BitmapData { public function testBMP(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 116
//timeFX (timeFX) package { import flash.media.*; public dynamic class timeFX extends Sound { } }//package
Section 117
//winFX (winFX) package { import flash.media.*; public dynamic class winFX extends Sound { } }//package

Library Items

Symbol 1 Sound {winFX}
Symbol 2 Sound {timeFX}
Symbol 3 Sound {surfMusic}
Symbol 4 Sound {sube4FX}
Symbol 5 Sound {spawnFX}
Symbol 6 Sound {sube2FX}
Symbol 7 Sound {pass6FX}
Symbol 8 Sound {passFX}
Symbol 9 Sound {jumpFX}
Symbol 10 Sound {loseFX}
Symbol 11 Sound {snareFX}
Symbol 12 Sound {hit2FX}
Symbol 13 Sound {hitFX}
Symbol 14 Sound {fFX}
Symbol 15 Sound {gameMusic}
Symbol 16 Sound {buttonOverSound}
Symbol 17 Sound {buttonDownSound}
Symbol 18 Sound {bulletFX}
Symbol 19 Sound {elvdiesFX}
Symbol 20 Sound {elvcapturedFX}
Symbol 21 Sound {fan24}
Symbol 22 Sound {fan23}
Symbol 23 Sound {fan22}
Symbol 24 Sound {fan21}
Symbol 25 Sound {fan20}
Symbol 26 Sound {fan19}
Symbol 27 Sound {fan18}
Symbol 28 Sound {fan17}
Symbol 29 Sound {fan16}
Symbol 30 Sound {fan15}
Symbol 31 Sound {fan14}
Symbol 32 Sound {fan13}
Symbol 33 Sound {fan12}
Symbol 34 Sound {fan11}
Symbol 35 Sound {fan10}
Symbol 36 Sound {fan9}
Symbol 37 Sound {fan8}
Symbol 38 Sound {fan7}
Symbol 39 Sound {fan6}
Symbol 40 Sound {fan5}
Symbol 41 Sound {fan4}
Symbol 42 Sound {fan3}
Symbol 43 Sound {fan2}
Symbol 44 Sound {fan1}
Symbol 45 Sound {fan0}
Symbol 46 Sound {fan}
Symbol 47 Bitmap {testBMP}
Symbol 48 GraphicUsed by:68 95 489 519
Symbol 49 GraphicUsed by:68 95 489 519
Symbol 50 GraphicUsed by:68 95 489 519
Symbol 51 GraphicUsed by:52
Symbol 52 MovieClipUses:51Used by:68 95 373 489 519
Symbol 53 GraphicUsed by:54
Symbol 54 MovieClipUses:53Used by:68 95 373 489 519
Symbol 55 GraphicUsed by:56 92 185 437
Symbol 56 MovieClipUses:55Used by:68 95 373 455 456 489 519 520
Symbol 57 GraphicUsed by:58 61 71 187 190 440
Symbol 58 MovieClipUses:57Used by:68 95 489 519
Symbol 59 GraphicUsed by:60
Symbol 60 MovieClipUses:59Used by:68 95 489 519
Symbol 61 MovieClipUses:57Used by:68 95 489 519
Symbol 62 GraphicUsed by:63
Symbol 63 MovieClipUses:62Used by:68 95 489 519
Symbol 64 GraphicUsed by:65
Symbol 65 MovieClipUses:64Used by:68 95 489 519
Symbol 66 GraphicUsed by:68 95 489 519
Symbol 67 GraphicUsed by:68 95
Symbol 68 MovieClip {FanBMP}Uses:48 49 50 52 54 56 58 60 61 63 65 66 67
Symbol 69 GraphicUsed by:72 75
Symbol 70 GraphicUsed by:71
Symbol 71 MovieClipUses:70 57Used by:72
Symbol 72 MovieClip {SmokeBMP}Uses:69 71
Symbol 73 GraphicUsed by:74
Symbol 74 MovieClipUses:73Used by:75
Symbol 75 MovieClip {HaloBMP}Uses:69 74
Symbol 76 GraphicUsed by:79
Symbol 77 GraphicUsed by:78 93
Symbol 78 MovieClipUses:77Used by:79
Symbol 79 MovieClip {ShadowBMP}Uses:76 78
Symbol 80 GraphicUsed by:92
Symbol 81 GraphicUsed by:82
Symbol 82 MovieClipUses:81Used by:92
Symbol 83 GraphicUsed by:92
Symbol 84 GraphicUsed by:85
Symbol 85 MovieClipUses:84Used by:92
Symbol 86 GraphicUsed by:87
Symbol 87 MovieClipUses:86Used by:92
Symbol 88 GraphicUsed by:89
Symbol 89 MovieClipUses:88Used by:92
Symbol 90 GraphicUsed by:91
Symbol 91 MovieClipUses:90Used by:92
Symbol 92 MovieClip {HappyBunnyBMP}Uses:80 82 55 83 85 87 89 91
Symbol 93 MovieClipUses:77Used by:95 109 519
Symbol 94 GraphicUsed by:95
Symbol 95 MovieClip {AngryBunnyBMP}Uses:48 93 49 50 52 54 56 58 60 61 63 65 66 94 67
Symbol 96 GraphicUsed by:109
Symbol 97 GraphicUsed by:109
Symbol 98 GraphicUsed by:109
Symbol 99 GraphicUsed by:109
Symbol 100 GraphicUsed by:109
Symbol 101 GraphicUsed by:109
Symbol 102 GraphicUsed by:109
Symbol 103 GraphicUsed by:109
Symbol 104 GraphicUsed by:109
Symbol 105 GraphicUsed by:109
Symbol 106 GraphicUsed by:109
Symbol 107 GraphicUsed by:109
Symbol 108 GraphicUsed by:109
Symbol 109 MovieClip {BadGuyBMP}Uses:93 96 97 98 99 100 101 102 103 104 105 106 107 108
Symbol 110 GraphicUsed by:122 183 519
Symbol 111 GraphicUsed by:112
Symbol 112 MovieClipUses:111Used by:122
Symbol 113 GraphicUsed by:122 183 489 519
Symbol 114 GraphicUsed by:122
Symbol 115 GraphicUsed by:122 183 489 519
Symbol 116 GraphicUsed by:122
Symbol 117 GraphicUsed by:118
Symbol 118 MovieClipUses:117Used by:122 183 489 519
Symbol 119 GraphicUsed by:122 183 489 519
Symbol 120 GraphicUsed by:121
Symbol 121 MovieClipUses:120Used by:122 183 489 519
Symbol 122 MovieClip {BouncerBMP}Uses:110 112 113 114 115 116 118 119 121
Symbol 123 GraphicUsed by:124
Symbol 124 MovieClipUses:123Used by:125
Symbol 125 MovieClip {project.HoleMask}Uses:124
Symbol 126 GraphicUsed by:130 475
Symbol 127 GraphicUsed by:130 475
Symbol 128 GraphicUsed by:130
Symbol 129 GraphicUsed by:130 475
Symbol 130 MovieClipUses:126 127 128 129Used by:183 489 519
Symbol 131 GraphicUsed by:183 489 519
Symbol 132 GraphicUsed by:183 489
Symbol 133 BitmapUsed by:134
Symbol 134 GraphicUses:133Used by:183
Symbol 135 BitmapUsed by:136
Symbol 136 GraphicUses:135Used by:183
Symbol 137 BitmapUsed by:138
Symbol 138 GraphicUses:137Used by:183
Symbol 139 BitmapUsed by:140
Symbol 140 GraphicUses:139Used by:183
Symbol 141 BitmapUsed by:142
Symbol 142 GraphicUses:141Used by:183
Symbol 143 BitmapUsed by:144
Symbol 144 GraphicUses:143Used by:183
Symbol 145 BitmapUsed by:146
Symbol 146 GraphicUses:145Used by:183
Symbol 147 BitmapUsed by:148
Symbol 148 GraphicUses:147Used by:183
Symbol 149 BitmapUsed by:150
Symbol 150 GraphicUses:149Used by:183
Symbol 151 BitmapUsed by:152
Symbol 152 GraphicUses:151Used by:183
Symbol 153 BitmapUsed by:154
Symbol 154 GraphicUses:153Used by:183
Symbol 155 BitmapUsed by:156
Symbol 156 GraphicUses:155Used by:183
Symbol 157 BitmapUsed by:158
Symbol 158 GraphicUses:157Used by:183
Symbol 159 BitmapUsed by:160
Symbol 160 GraphicUses:159Used by:183
Symbol 161 BitmapUsed by:162
Symbol 162 GraphicUses:161Used by:183
Symbol 163 BitmapUsed by:164
Symbol 164 GraphicUses:163Used by:183
Symbol 165 BitmapUsed by:166
Symbol 166 GraphicUses:165Used by:183
Symbol 167 BitmapUsed by:168
Symbol 168 GraphicUses:167Used by:183
Symbol 169 BitmapUsed by:170
Symbol 170 GraphicUses:169Used by:183
Symbol 171 BitmapUsed by:172
Symbol 172 GraphicUses:171Used by:183
Symbol 173 BitmapUsed by:174
Symbol 174 GraphicUses:173Used by:183
Symbol 175 BitmapUsed by:176
Symbol 176 GraphicUses:175Used by:183
Symbol 177 BitmapUsed by:178
Symbol 178 GraphicUses:177Used by:183
Symbol 179 BitmapUsed by:180
Symbol 180 GraphicUses:179Used by:183
Symbol 181 BitmapUsed by:182
Symbol 182 GraphicUses:181Used by:183
Symbol 183 MovieClip {HoleBMP}Uses:110 130 131 113 115 118 119 121 132 134 136 138 140 142 144 146 148 150 152 154 156 158 160 162 164 166 168 170 172 174 176 178 180 182
Symbol 184 GraphicUsed by:187
Symbol 185 MovieClipUses:55Used by:186 478
Symbol 186 MovieClip {ElvIsBlack2MoreBunnies_fla.Symbol24_24}Uses:185Used by:187 440
Symbol 187 MovieClip {FloorBMP}Uses:184 57 186
Symbol 188 GraphicUsed by:373 489
Symbol 189 GraphicUsed by:216 373 489
Symbol 190 MovieClipUses:57Used by:373 455 456 489 520
Symbol 191 GraphicUsed by:192
Symbol 192 MovieClipUses:191Used by:373 455 456 489 520
Symbol 193 GraphicUsed by:373 455 489
Symbol 194 GraphicUsed by:373
Symbol 195 GraphicUsed by:373
Symbol 196 GraphicUsed by:373
Symbol 197 GraphicUsed by:373
Symbol 198 GraphicUsed by:199
Symbol 199 MovieClipUses:198Used by:373 455 456 520
Symbol 200 GraphicUsed by:201
Symbol 201 MovieClipUses:200Used by:373 455 456 520
Symbol 202 GraphicUsed by:203
Symbol 203 MovieClipUses:202Used by:373 455 456 520
Symbol 204 GraphicUsed by:205
Symbol 205 MovieClipUses:204Used by:373 455 456 520
Symbol 206 GraphicUsed by:373 455 456 520
Symbol 207 GraphicUsed by:373 455 456 520
Symbol 208 GraphicUsed by:373 455 456 520
Symbol 209 GraphicUsed by:373
Symbol 210 GraphicUsed by:373
Symbol 211 GraphicUsed by:373
Symbol 212 GraphicUsed by:373
Symbol 213 GraphicUsed by:373 455 456 520
Symbol 214 GraphicUsed by:215
Symbol 215 MovieClipUses:214Used by:373 489
Symbol 216 MovieClipUses:189Used by:373
Symbol 217 GraphicUsed by:218
Symbol 218 MovieClipUses:217Used by:373
Symbol 219 BitmapUsed by:220
Symbol 220 GraphicUses:219Used by:373
Symbol 221 BitmapUsed by:222
Symbol 222 GraphicUses:221Used by:373
Symbol 223 BitmapUsed by:224
Symbol 224 GraphicUses:223Used by:373
Symbol 225 BitmapUsed by:226
Symbol 226 GraphicUses:225Used by:373
Symbol 227 BitmapUsed by:228
Symbol 228 GraphicUses:227Used by:373
Symbol 229 BitmapUsed by:230
Symbol 230 GraphicUses:229Used by:373
Symbol 231 BitmapUsed by:232
Symbol 232 GraphicUses:231Used by:373
Symbol 233 BitmapUsed by:234
Symbol 234 GraphicUses:233Used by:373
Symbol 235 BitmapUsed by:236
Symbol 236 GraphicUses:235Used by:373
Symbol 237 BitmapUsed by:238
Symbol 238 GraphicUses:237Used by:373
Symbol 239 BitmapUsed by:240
Symbol 240 GraphicUses:239Used by:373
Symbol 241 BitmapUsed by:242
Symbol 242 GraphicUses:241Used by:373
Symbol 243 BitmapUsed by:244
Symbol 244 GraphicUses:243Used by:373
Symbol 245 BitmapUsed by:246
Symbol 246 GraphicUses:245Used by:373
Symbol 247 BitmapUsed by:248
Symbol 248 GraphicUses:247Used by:373
Symbol 249 BitmapUsed by:250
Symbol 250 GraphicUses:249Used by:373
Symbol 251 BitmapUsed by:252
Symbol 252 GraphicUses:251Used by:373
Symbol 253 BitmapUsed by:254
Symbol 254 GraphicUses:253Used by:373
Symbol 255 BitmapUsed by:256
Symbol 256 GraphicUses:255Used by:373
Symbol 257 BitmapUsed by:258
Symbol 258 GraphicUses:257Used by:373
Symbol 259 BitmapUsed by:260
Symbol 260 GraphicUses:259Used by:373
Symbol 261 BitmapUsed by:262
Symbol 262 GraphicUses:261Used by:373
Symbol 263 BitmapUsed by:264
Symbol 264 GraphicUses:263Used by:373
Symbol 265 BitmapUsed by:266
Symbol 266 GraphicUses:265Used by:373
Symbol 267 BitmapUsed by:268
Symbol 268 GraphicUses:267Used by:373
Symbol 269 BitmapUsed by:270
Symbol 270 GraphicUses:269Used by:373
Symbol 271 BitmapUsed by:272
Symbol 272 GraphicUses:271Used by:373
Symbol 273 BitmapUsed by:274
Symbol 274 GraphicUses:273Used by:373
Symbol 275 BitmapUsed by:276
Symbol 276 GraphicUses:275Used by:373
Symbol 277 BitmapUsed by:278
Symbol 278 GraphicUses:277Used by:373
Symbol 279 BitmapUsed by:280
Symbol 280 GraphicUses:279Used by:373
Symbol 281 BitmapUsed by:282
Symbol 282 GraphicUses:281Used by:373
Symbol 283 BitmapUsed by:284
Symbol 284 GraphicUses:283Used by:373
Symbol 285 BitmapUsed by:286
Symbol 286 GraphicUses:285Used by:373
Symbol 287 BitmapUsed by:288
Symbol 288 GraphicUses:287Used by:373
Symbol 289 BitmapUsed by:290
Symbol 290 GraphicUses:289Used by:373
Symbol 291 BitmapUsed by:292
Symbol 292 GraphicUses:291Used by:373
Symbol 293 BitmapUsed by:294
Symbol 294 GraphicUses:293Used by:373
Symbol 295 BitmapUsed by:296
Symbol 296 GraphicUses:295Used by:373
Symbol 297 BitmapUsed by:298
Symbol 298 GraphicUses:297Used by:373
Symbol 299 BitmapUsed by:300
Symbol 300 GraphicUses:299Used by:373
Symbol 301 BitmapUsed by:302
Symbol 302 GraphicUses:301Used by:373
Symbol 303 BitmapUsed by:304
Symbol 304 GraphicUses:303Used by:373
Symbol 305 BitmapUsed by:306
Symbol 306 GraphicUses:305Used by:373
Symbol 307 BitmapUsed by:308
Symbol 308 GraphicUses:307Used by:373
Symbol 309 BitmapUsed by:310
Symbol 310 GraphicUses:309Used by:373
Symbol 311 BitmapUsed by:312
Symbol 312 GraphicUses:311Used by:373
Symbol 313 BitmapUsed by:314
Symbol 314 GraphicUses:313Used by:373
Symbol 315 BitmapUsed by:316
Symbol 316 GraphicUses:315Used by:373
Symbol 317 BitmapUsed by:318
Symbol 318 GraphicUses:317Used by:373
Symbol 319 BitmapUsed by:320
Symbol 320 GraphicUses:319Used by:373
Symbol 321 BitmapUsed by:322
Symbol 322 GraphicUses:321Used by:373
Symbol 323 BitmapUsed by:324
Symbol 324 GraphicUses:323Used by:373
Symbol 325 BitmapUsed by:326
Symbol 326 GraphicUses:325Used by:373
Symbol 327 BitmapUsed by:328
Symbol 328 GraphicUses:327Used by:373
Symbol 329 BitmapUsed by:330
Symbol 330 GraphicUses:329Used by:373
Symbol 331 BitmapUsed by:332
Symbol 332 GraphicUses:331Used by:373
Symbol 333 BitmapUsed by:334
Symbol 334 GraphicUses:333Used by:373
Symbol 335 BitmapUsed by:336
Symbol 336 GraphicUses:335Used by:373
Symbol 337 BitmapUsed by:338
Symbol 338 GraphicUses:337Used by:373
Symbol 339 BitmapUsed by:340
Symbol 340 GraphicUses:339Used by:373
Symbol 341 BitmapUsed by:342
Symbol 342 GraphicUses:341Used by:373
Symbol 343 BitmapUsed by:344
Symbol 344 GraphicUses:343Used by:373
Symbol 345 BitmapUsed by:346
Symbol 346 GraphicUses:345Used by:373
Symbol 347 BitmapUsed by:348
Symbol 348 GraphicUses:347Used by:373
Symbol 349 BitmapUsed by:350
Symbol 350 GraphicUses:349Used by:373
Symbol 351 BitmapUsed by:352
Symbol 352 GraphicUses:351Used by:373
Symbol 353 BitmapUsed by:354
Symbol 354 GraphicUses:353Used by:373
Symbol 355 BitmapUsed by:356
Symbol 356 GraphicUses:355Used by:373
Symbol 357 BitmapUsed by:358
Symbol 358 GraphicUses:357Used by:373
Symbol 359 BitmapUsed by:360
Symbol 360 GraphicUses:359Used by:373
Symbol 361 BitmapUsed by:362
Symbol 362 GraphicUses:361Used by:373
Symbol 363 BitmapUsed by:364
Symbol 364 GraphicUses:363Used by:373
Symbol 365 BitmapUsed by:366
Symbol 366 GraphicUses:365Used by:373
Symbol 367 BitmapUsed by:368
Symbol 368 GraphicUses:367Used by:373
Symbol 369 BitmapUsed by:370
Symbol 370 GraphicUses:369Used by:373
Symbol 371 BitmapUsed by:372
Symbol 372 GraphicUses:371Used by:373
Symbol 373 MovieClip {ElvBMP}Uses:188 52 54 189 190 56 192 193 194 195 196 197 199 201 203 205 206 207 208 209 210 211 212 213 215 216 218 220 222 224 226 228 230 232 234 236 238 240 242 244 246 248 250 252 254 256 258 260 262 264 266 268 270 272 274 276 278 280 282 284 286 288 290 292 294 296 298 300 302 304 306 308 310 312 314 316 318 320 322 324 326 328 330 332 334 336 338 340 342 344 346 348 350 352 354 356 358 360 362 364 366 368 370 372
Symbol 374 GraphicUsed by:379
Symbol 375 GraphicUsed by:376
Symbol 376 MovieClipUses:375Used by:379
Symbol 377 GraphicUsed by:378
Symbol 378 MovieClipUses:377Used by:379
Symbol 379 MovieClip {project.linkme}Uses:374 376 378
Symbol 380 GraphicUsed by:Timeline
Symbol 381 FontUsed by:382
Symbol 382 EditableTextUses:381 383Used by:Timeline
Symbol 383 FontUsed by:382 384
Symbol 384 TextUses:383Used by:385
Symbol 385 MovieClipUses:384Used by:Timeline
Symbol 386 BitmapUsed by:387
Symbol 387 GraphicUses:386Used by:388 428
Symbol 388 ButtonUses:387Used by:Timeline
Symbol 389 GraphicUsed by:412 471
Symbol 390 BitmapUsed by:391
Symbol 391 GraphicUses:390Used by:394
Symbol 392 FontUsed by:393
Symbol 393 TextUses:392Used by:394
Symbol 394 MovieClipUses:391 393Used by:412
Symbol 395 GraphicUsed by:397
Symbol 396 GraphicUsed by:397
Symbol 397 MovieClip {ElvIsBlack2MoreBunnies_fla.freeinternetgamesfreeinternetgames_5}Uses:395 396Used by:412
Symbol 398 SoundUsed by:412
Symbol 399 GraphicUsed by:411
Symbol 400 GraphicUsed by:411
Symbol 401 GraphicUsed by:411
Symbol 402 GraphicUsed by:411
Symbol 403 GraphicUsed by:411
Symbol 404 GraphicUsed by:411
Symbol 405 GraphicUsed by:411
Symbol 406 GraphicUsed by:411
Symbol 407 GraphicUsed by:411
Symbol 408 GraphicUsed by:411
Symbol 409 GraphicUsed by:411
Symbol 410 GraphicUsed by:411
Symbol 411 MovieClip {ElvIsBlack2MoreBunnies_fla.clip_sd88detincelle_6}Uses:399 400 401 402 403 404 405 406 407 408 409 410Used by:412
Symbol 412 MovieClip {project.MaxScreen}Uses:389 394 397 398 411Used by:Timeline
Symbol 413 GraphicUsed by:414
Symbol 414 ButtonUses:413Used by:435  Timeline
Symbol 415 FontUsed by:416 417 419 420 422 423 425 443 446 447 448 450 452 459 462 463 464 466 467 468 469 516 517 518
Symbol 416 EditableTextUses:415Used by:418
Symbol 417 EditableTextUses:415Used by:418
Symbol 418 MovieClip {ElvIsBlack2MoreBunnies_fla.Symbol17copy3_11}Uses:416 417Used by:427
Symbol 419 EditableTextUses:415Used by:421
Symbol 420 EditableTextUses:415Used by:421
Symbol 421 MovieClip {ElvIsBlack2MoreBunnies_fla.Symbol17copy_12}Uses:419 420Used by:427
Symbol 422 EditableTextUses:415Used by:424
Symbol 423 EditableTextUses:415Used by:424
Symbol 424 MovieClip {ElvIsBlack2MoreBunnies_fla.Symbol41copy_13}Uses:422 423Used by:427
Symbol 425 EditableTextUses:415Used by:426
Symbol 426 MovieClip {ElvIsBlack2MoreBunnies_fla.Symbol17copy4_14}Uses:425Used by:427
Symbol 427 MovieClip {project.GameInterface}Uses:418 421 424 426Used by:435
Symbol 428 ButtonUses:387Used by:435 456 520
Symbol 429 GraphicUsed by:430
Symbol 430 MovieClipUses:429Used by:434
Symbol 431 FontUsed by:432 433
Symbol 432 TextUses:431Used by:434
Symbol 433 EditableTextUses:431Used by:434
Symbol 434 MovieClip {ElvIsBlack2MoreBunnies_fla.FPS_16}Uses:430 432 433Used by:435
Symbol 435 MovieClip {geeon.gdocument.GamePage}Uses:427 414 428 434Used by:521
Symbol 436 GraphicUsed by:439
Symbol 437 MovieClipUses:55Used by:438
Symbol 438 MovieClip {ElvIsBlack2MoreBunnies_fla.Symbol24_BACK_21}Uses:437Used by:439
Symbol 439 MovieClip {ElvIsBlack2MoreBunnies_fla.Symbol204_BACK_20}Uses:436 438Used by:441 457 519
Symbol 440 MovieClip {ElvIsBlack2MoreBunnies_fla.Timeline_23}Uses:57 186Used by:441 457 519
Symbol 441 MovieClipUses:439 440Used by:456
Symbol 442 GraphicUsed by:445 449
Symbol 443 TextUses:415Used by:445
Symbol 444 GraphicUsed by:445 449
Symbol 445 ButtonUses:442 443 444Used by:456
Symbol 446 TextUses:415Used by:456
Symbol 447 EditableTextUses:415Used by:456
Symbol 448 TextUses:415Used by:449
Symbol 449 ButtonUses:442 448 444Used by:456
Symbol 450 TextUses:415Used by:456 520
Symbol 451 GraphicUsed by:453
Symbol 452 TextUses:415Used by:453
Symbol 453 ButtonUses:451 452Used by:456 520
Symbol 454 GraphicUsed by:456
Symbol 455 MovieClipUses:199 201 203 205 206 207 208 192 190 56 193 213Used by:456 520
Symbol 456 MovieClip {project.ScorePage}Uses:441 445 446 447 449 450 453 428 454 455 199 201 203 205 206 207 208 192 190 56 213Used by:521
Symbol 457 MovieClipUses:439 440Used by:491
Symbol 458 GraphicUsed by:461
Symbol 459 TextUses:415Used by:461
Symbol 460 GraphicUsed by:461
Symbol 461 ButtonUses:458 459 460Used by:491 520
Symbol 462 TextUses:415Used by:491
Symbol 463 TextUses:415Used by:491
Symbol 464 TextUses:415Used by:491
Symbol 465 GraphicUsed by:472
Symbol 466 TextUses:415Used by:470
Symbol 467 TextUses:415Used by:470
Symbol 468 TextUses:415Used by:470
Symbol 469 TextUses:415Used by:470
Symbol 470 MovieClipUses:466 467 468 469Used by:472
Symbol 471 MovieClipUses:389Used by:472
Symbol 472 MovieClip {ElvIsBlack2MoreBunnies_fla.Symbol20_40}Uses:465 470 471Used by:491
Symbol 473 GraphicUsed by:489
Symbol 474 GraphicUsed by:475
Symbol 475 MovieClipUses:126 127 474 129Used by:489
Symbol 476 GraphicUsed by:477
Symbol 477 MovieClipUses:476Used by:489
Symbol 478 MovieClipUses:185Used by:489
Symbol 479 BitmapUsed by:480
Symbol 480 GraphicUses:479Used by:481
Symbol 481 MovieClipUses:480Used by:489
Symbol 482 GraphicUsed by:489
Symbol 483 GraphicUsed by:489
Symbol 484 GraphicUsed by:485
Symbol 485 MovieClipUses:484Used by:486
Symbol 486 MovieClipUses:485Used by:489
Symbol 487 GraphicUsed by:489
Symbol 488 GraphicUsed by:489
Symbol 489 MovieClipUses:473 475 131 113 115 118 119 121 477 478 188 52 54 189 190 56 192 481 48 49 50 58 60 61 63 65 66 482 483 486 193 132 215 130 487 488Used by:490
Symbol 490 MovieClipUses:489Used by:491
Symbol 491 MovieClip {project.InstructionsPage}Uses:457 461 462 463 464 472 490Used by:521
Symbol 492 GraphicUsed by:493
Symbol 493 MovieClipUses:492Used by:519
Symbol 494 GraphicUsed by:495
Symbol 495 MovieClipUses:494Used by:519
Symbol 496 GraphicUsed by:497
Symbol 497 MovieClipUses:496Used by:519
Symbol 498 GraphicUsed by:499
Symbol 499 MovieClipUses:498Used by:519
Symbol 500 GraphicUsed by:501
Symbol 501 MovieClipUses:500Used by:519
Symbol 502 GraphicUsed by:503
Symbol 503 MovieClipUses:502Used by:519
Symbol 504 GraphicUsed by:505
Symbol 505 MovieClipUses:504Used by:519
Symbol 506 GraphicUsed by:507
Symbol 507 MovieClipUses:506Used by:519
Symbol 508 GraphicUsed by:509
Symbol 509 MovieClipUses:508Used by:519
Symbol 510 GraphicUsed by:511
Symbol 511 MovieClipUses:510Used by:513 519
Symbol 512 GraphicUsed by:513
Symbol 513 MovieClipUses:511 512Used by:519
Symbol 514 GraphicUsed by:515
Symbol 515 MovieClipUses:514Used by:519
Symbol 516 TextUses:415Used by:519
Symbol 517 TextUses:415Used by:519
Symbol 518 TextUses:415Used by:519
Symbol 519 MovieClipUses:439 440 110 130 131 113 115 118 119 121 48 93 49 50 52 54 56 58 60 61 63 65 66 493 495 497 499 501 503 505 507 509 513 511 515 516 517 518Used by:520
Symbol 520 MovieClip {project.SplashPage}Uses:519 450 453 461 428 455 199 201 203 205 206 207 208 192 190 56 213Used by:521
Symbol 521 MovieClip {geeon.gdocument.GDocument}Uses:435 456 491 520Used by:Timeline

Instance Names

"txtField"Frame 1Symbol 382 EditableText
"maxBtn"Frame 1Symbol 388 Button
"intro"Frame 2Symbol 412 MovieClip {project.MaxScreen}
"pointerBtn"Frame 2Symbol 414 Button
"smoke"Symbol 72 MovieClip {SmokeBMP} Frame 2Symbol 71 MovieClip
"maskMc"Symbol 125 MovieClip {project.HoleMask} Frame 1Symbol 124 MovieClip
"backMc"Symbol 186 MovieClip {ElvIsBlack2MoreBunnies_fla.Symbol24_24} Frame 1Symbol 185 MovieClip
"backMc"Symbol 187 MovieClip {FloorBMP} Frame 1Symbol 186 MovieClip {ElvIsBlack2MoreBunnies_fla.Symbol24_24}
"backMc"Symbol 187 MovieClip {FloorBMP} Frame 1Symbol 186 MovieClip {ElvIsBlack2MoreBunnies_fla.Symbol24_24}
"backMc"Symbol 187 MovieClip {FloorBMP} Frame 1Symbol 186 MovieClip {ElvIsBlack2MoreBunnies_fla.Symbol24_24}
"backMc"Symbol 187 MovieClip {FloorBMP} Frame 1Symbol 186 MovieClip {ElvIsBlack2MoreBunnies_fla.Symbol24_24}
"backMc"Symbol 187 MovieClip {FloorBMP} Frame 1Symbol 186 MovieClip {ElvIsBlack2MoreBunnies_fla.Symbol24_24}
"A"Symbol 379 MovieClip {project.linkme} Frame 1Symbol 376 MovieClip
"B"Symbol 379 MovieClip {project.linkme} Frame 1Symbol 378 MovieClip
"textField"Symbol 418 MovieClip {ElvIsBlack2MoreBunnies_fla.Symbol17copy3_11} Frame 1Symbol 416 EditableText
"txtField"Symbol 418 MovieClip {ElvIsBlack2MoreBunnies_fla.Symbol17copy3_11} Frame 1Symbol 417 EditableText
"textField"Symbol 421 MovieClip {ElvIsBlack2MoreBunnies_fla.Symbol17copy_12} Frame 1Symbol 419 EditableText
"txtField"Symbol 421 MovieClip {ElvIsBlack2MoreBunnies_fla.Symbol17copy_12} Frame 1Symbol 420 EditableText
"textField"Symbol 424 MovieClip {ElvIsBlack2MoreBunnies_fla.Symbol41copy_13} Frame 1Symbol 422 EditableText
"textFieldTitle"Symbol 424 MovieClip {ElvIsBlack2MoreBunnies_fla.Symbol41copy_13} Frame 1Symbol 423 EditableText
"textField"Symbol 426 MovieClip {ElvIsBlack2MoreBunnies_fla.Symbol17copy4_14} Frame 1Symbol 425 EditableText
"timeMc"Symbol 427 MovieClip {project.GameInterface} Frame 1Symbol 418 MovieClip {ElvIsBlack2MoreBunnies_fla.Symbol17copy3_11}
"scoreMc"Symbol 427 MovieClip {project.GameInterface} Frame 1Symbol 421 MovieClip {ElvIsBlack2MoreBunnies_fla.Symbol17copy_12}
"comboMc"Symbol 427 MovieClip {project.GameInterface} Frame 1Symbol 424 MovieClip {ElvIsBlack2MoreBunnies_fla.Symbol41copy_13}
"msgMc"Symbol 427 MovieClip {project.GameInterface} Frame 1Symbol 426 MovieClip {ElvIsBlack2MoreBunnies_fla.Symbol17copy4_14}
"iBar"Symbol 434 MovieClip {ElvIsBlack2MoreBunnies_fla.FPS_16} Frame 1Symbol 430 MovieClip
"tf"Symbol 434 MovieClip {ElvIsBlack2MoreBunnies_fla.FPS_16} Frame 2Symbol 433 EditableText
"pointerBtn"Symbol 435 MovieClip {geeon.gdocument.GamePage} Frame 1Symbol 414 Button
"maxBtn"Symbol 435 MovieClip {geeon.gdocument.GamePage} Frame 1Symbol 428 Button
"backMc"Symbol 438 MovieClip {ElvIsBlack2MoreBunnies_fla.Symbol24_BACK_21} Frame 1Symbol 437 MovieClip
"backMc"Symbol 439 MovieClip {ElvIsBlack2MoreBunnies_fla.Symbol204_BACK_20} Frame 1Symbol 438 MovieClip {ElvIsBlack2MoreBunnies_fla.Symbol24_BACK_21}
"backMc"Symbol 440 MovieClip {ElvIsBlack2MoreBunnies_fla.Timeline_23} Frame 1Symbol 186 MovieClip {ElvIsBlack2MoreBunnies_fla.Symbol24_24}
"playBtn"Symbol 456 MovieClip {project.ScorePage} Frame 1Symbol 445 Button
"scoreTxt"Symbol 456 MovieClip {project.ScorePage} Frame 1Symbol 447 EditableText
"mainBtn"Symbol 456 MovieClip {project.ScorePage} Frame 1Symbol 449 Button
"cgBtn"Symbol 456 MovieClip {project.ScorePage} Frame 1Symbol 453 Button
"maxBtn"Symbol 456 MovieClip {project.ScorePage} Frame 1Symbol 428 Button
"preloadbarMc"Symbol 472 MovieClip {ElvIsBlack2MoreBunnies_fla.Symbol20_40} Frame 1Symbol 471 MovieClip
"playBtn"Symbol 491 MovieClip {project.InstructionsPage} Frame 1Symbol 461 Button
"preloadBar"Symbol 491 MovieClip {project.InstructionsPage} Frame 1Symbol 472 MovieClip {ElvIsBlack2MoreBunnies_fla.Symbol20_40}
"cgBtn"Symbol 520 MovieClip {project.SplashPage} Frame 1Symbol 453 Button
"playBtn"Symbol 520 MovieClip {project.SplashPage} Frame 1Symbol 461 Button
"maxBtn"Symbol 520 MovieClip {project.SplashPage} Frame 1Symbol 428 Button

Special Tags

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

Labels

"front_walk"Symbol 68 MovieClip {FanBMP} Frame 1
"back_walk"Symbol 68 MovieClip {FanBMP} Frame 32
"stun"Symbol 68 MovieClip {FanBMP} Frame 63
"front_jump"Symbol 68 MovieClip {FanBMP} Frame 124
"die"Symbol 68 MovieClip {FanBMP} Frame 150
"groupie"Symbol 68 MovieClip {FanBMP} Frame 170
"hold"Symbol 68 MovieClip {FanBMP} Frame 191
"spawn"Symbol 92 MovieClip {HappyBunnyBMP} Frame 1
"wait"Symbol 92 MovieClip {HappyBunnyBMP} Frame 15
"pick"Symbol 92 MovieClip {HappyBunnyBMP} Frame 30
"walk"Symbol 92 MovieClip {HappyBunnyBMP} Frame 50
"dig"Symbol 92 MovieClip {HappyBunnyBMP} Frame 91
"front_walk"Symbol 95 MovieClip {AngryBunnyBMP} Frame 1
"back_walk"Symbol 95 MovieClip {AngryBunnyBMP} Frame 32
"stun"Symbol 95 MovieClip {AngryBunnyBMP} Frame 63
"suicide"Symbol 95 MovieClip {AngryBunnyBMP} Frame 124
"screaming"Symbol 95 MovieClip {AngryBunnyBMP} Frame 150
"dance"Symbol 95 MovieClip {AngryBunnyBMP} Frame 175
"front_walk"Symbol 109 MovieClip {BadGuyBMP} Frame 1
"bounce"Symbol 109 MovieClip {BadGuyBMP} Frame 46
"trapped"Symbol 109 MovieClip {BadGuyBMP} Frame 69
"closed"Symbol 122 MovieClip {BouncerBMP} Frame 1
"bounce"Symbol 122 MovieClip {BouncerBMP} Frame 5
"closed"Symbol 183 MovieClip {HoleBMP} Frame 1
"open"Symbol 183 MovieClip {HoleBMP} Frame 10
"front"Symbol 373 MovieClip {ElvBMP} Frame 1
"back"Symbol 373 MovieClip {ElvBMP} Frame 36
"front_walk"Symbol 373 MovieClip {ElvBMP} Frame 68
"back_walk"Symbol 373 MovieClip {ElvBMP} Frame 93
"defeat"Symbol 373 MovieClip {ElvBMP} Frame 118
"scream"Symbol 373 MovieClip {ElvBMP} Frame 134
"front_jump"Symbol 373 MovieClip {ElvBMP} Frame 165
"back_jump"Symbol 373 MovieClip {ElvBMP} Frame 181
"front_hit"Symbol 373 MovieClip {ElvBMP} Frame 196
"back_hit"Symbol 373 MovieClip {ElvBMP} Frame 201
"short_scream"Symbol 373 MovieClip {ElvBMP} Frame 206
"float"Symbol 373 MovieClip {ElvBMP} Frame 216




http://swfchan.com/5/22039/info.shtml
Created: 27/5 -2019 06:37:51 Last modified: 27/5 -2019 06:37:51 Server time: 15/05 -2024 02:10:40