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

<div style="position:absolute;top:-99px;left:-99px;"><img src="https://tools.swfchan.com/stathit.asp?noj=FRM10357742-7DC&rnd=10357742" width="1" height="1"></div>

armorgames space-pips-3097.swf

This is the info page for
Flash #268034

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


Text
<p align="center"><font face="Chumbly BRK" size="16" color="#ffffff" letterSpacing="0.000000" kerning="1">USE WASD OR CURSOR KEYS TO CONTROL YOUR SHIP</font></p><p align="center"><font face="Chumbly BRK" size="16" color="#ffffff" letterSpacing="0.000000" kerning="1">USE THE MOUSE TO AIM AND SHOOT</font></p><p align="center"><font face="Chumbly BRK" size="16" color="#ffffff" letterSpacing="0.000000" kerning="1">PRESS SPACE FOR BOMBS</font></p><p align="center"><font face="Chumbly BRK" size="16" color="#ffffff" letterSpacing="0.000000" kerning="1">PRESS ESCAPE OR Q TO ACCESS THE SHOP TO UPGRADE YOUR SHIP</font></p><p align="center"></p><p align="center"></p><p align="center"></p><p align="center"><font face="Chumbly BRK" size="16" color="#ffffff" letterSpacing="0.000000" kerning="1">COLLECT THESE AND SPEND THEM AT THE SHOP</font></p><p align="center"></p><p align="center"><font face="Chumbly BRK" size="16" color="#ffffff" letterSpacing="0.000000" kerning="1">AVOID EVERYTHING! SHOOT EVERYTHING!</font></p><p align="center"></p><p align="center"><font face="Chumbly BRK" size="16" color="#ffffff" letterSpacing="0.000000" kerning="1">SCORE MULTIPLIER INCREASES OVER TIME</font></p><p align="center"><font face="Chumbly BRK" size="16" color="#ffffff" letterSpacing="0.000000" kerning="1">IF YOU GET HIT, IT RESETS!</font></p><p align="center"></p><p align="center"><font face="Chumbly BRK" size="16" color="#ffffff" letterSpacing="0.000000" kerning="1">COLLECT! AVOID! UPGRADE! PROFIT.</font></p>

<p align="center"><font face="Ernest" size="41" color="#ffffff" letterSpacing="0.000000" kerning="1">SPACE PIPS</font></p>

<p align="center"><font face="Ernest" size="56" color="#ffffff" letterSpacing="0.000000" kerning="1">start</font></p>

<p align="center"><font face="Ernest" size="56" color="#999999" letterSpacing="0.000000" kerning="1">start</font></p>

<p align="center"><font face="Ernest" size="37" color="#ffffff" letterSpacing="0.000000" kerning="1">toggle sound</font></p>

<p align="center"><font face="Ernest" size="37" color="#999999" letterSpacing="0.000000" kerning="1">toggle sound</font></p>

<p align="center"><font face="Ernest" size="37" color="#ffffff" letterSpacing="0.000000" kerning="1">Toggle Music</font></p>

<p align="center"><font face="Ernest" size="37" color="#999999" letterSpacing="0.000000" kerning="1">Toggle Music</font></p>

ActionScript [AS3]

Section 1
//Bouncy (BouncyText.Bouncy) package BouncyText { import flash.display.*; import flash.text.*; public class Bouncy extends Sprite { private var chars_:Array; private var phases_:Array; private var amount_:Number; public function Bouncy(_arg1:String, _arg2:int, _arg3:uint){ var _local6:TextField; super(); chars_ = []; phases_ = []; amount_ = (0.05 * _arg2); var _local4:int; var _local5:int; while (_local5 < _arg1.length) { _local6 = addChar(_arg1.charAt(_local5), _arg2, _arg3, _local4); chars_[_local5] = _local6; _local4 = (_local4 + _local6.textWidth); phases_.push(Number(Math.random())); _local5++; }; update(0); } public function update(_arg1:Number):void{ var _local2:int; while (_local2 < chars_.length) { phases_[_local2] = (phases_[_local2] + _arg1); chars_[_local2].y = (amount_ * Math.sin(((2 * Math.PI) * phases_[_local2]))); _local2++; }; } private function addChar(_arg1:String, _arg2:int, _arg3:uint, _arg4:int):TextField{ var _local5:TextFormat = new TextFormat(); _local5.font = Fonts.DEFAULT_FONT; _local5.size = _arg2; _local5.color = _arg3; var _local6:TextField = new TextField(); _local6.embedFonts = true; _local6.defaultTextFormat = _local5; _local6.antiAliasType = AntiAliasType.ADVANCED; _local6.sharpness = 400; _local6.autoSize = TextFieldAutoSize.LEFT; _local6.text = _arg1; _local6.selectable = false; _local6.x = _arg4; addChild(_local6); return (_local6); } } }//package BouncyText
Section 2
//CheatSection (CheatFree.CheatSection) package CheatFree { import flash.display.*; import flash.media.*; public class CheatSection implements IGameSection { private var holder_:Sprite; private var spr_:DisplayObject; public function CheatSection(){ Global.cheater = false; holder_ = new Sprite(); holder_.graphics.beginFill(0); holder_.graphics.drawRect(0, 0, 0x0400, 0x0400); var _local1:Class = CheatSection_IMG; spr_ = new (_local1); holder_.addChild(spr_); var _local2:Class = CheatSection_SOUND; var _local3:Sound = new (_local2); _local3.play(0, int.MAX_VALUE, null); SoundMixer.soundTransform = new SoundTransform(1); } public function getGraphic():DisplayObject{ return (holder_); } public function update():IGameSection{ if (holder_.stage){ spr_.x = Math.round((0.5 * (holder_.stage.stageWidth - spr_.width))); spr_.y = Math.round((0.5 * (holder_.stage.stageHeight - spr_.height))); }; return (this); } public function draw():void{ } } }//package CheatFree
Section 3
//CheatSection_IMG (CheatFree.CheatSection_IMG) package CheatFree { import mx.core.*; public class CheatSection_IMG extends BitmapAsset { } }//package CheatFree
Section 4
//CheatSection_SOUND (CheatFree.CheatSection_SOUND) package CheatFree { import mx.core.*; public class CheatSection_SOUND extends SoundAsset { } }//package CheatFree
Section 5
//SafeInt (CheatFree.SafeInt) package CheatFree { import flash.utils.*; public class SafeInt { private var coVal_:uint; private var val_:uint; public static const LENGTH:uint = 5000; private static var data_:ByteArray; public function SafeInt(_arg1:uint=0){ var _local2:uint; super(); if (!data_){ trace("Generating reklek"); data_ = new ByteArray(); data_.length = LENGTH; _local2 = 0; while (_local2 < LENGTH) { data_[_local2] = Math.floor((Math.random() * 0xFF)); _local2++; }; }; val = _arg1; } public function get val():uint{ if (!check()){ Global.cheater = true; }; return (val_); } private function check():Boolean{ return ((coVal_ == data_[getIndex()])); } public function set val(_arg1:uint):void{ val_ = _arg1; coVal_ = data_[getIndex()]; } private function getIndex():uint{ return ((val_ % data_.length)); } } }//package CheatFree
Section 6
//EnergyBar (GameLevel.Energy.EnergyBar) package GameLevel.Energy { import flash.display.*; public class EnergyBar extends Sprite { private var lastEnergy_:Number; public function EnergyBar(){ lastEnergy_ = 0; var _local1:Class = EnergyBar_BAR; var _local2:DisplayObject = new (_local1); _local2.x = 0; _local2.y = (Global.SCREEN_HEIGHT - _local2.height); addChild(_local2); } public function draw(_arg1:Number):void{ if (lastEnergy_ != _arg1){ lastEnergy_ = _arg1; graphics.clear(); graphics.beginFill((0xFF0000 + (uint((0xFF * _arg1)) << 8))); graphics.drawRect(50, (Global.SCREEN_HEIGHT - 12), (121 * _arg1), 9); }; } } }//package GameLevel.Energy
Section 7
//EnergyBar_BAR (GameLevel.Energy.EnergyBar_BAR) package GameLevel.Energy { import mx.core.*; public class EnergyBar_BAR extends BitmapAsset { } }//package GameLevel.Energy
Section 8
//GeneratorSingularity (GameLevel.Level.GeneratorSingularity) package GameLevel.Level { import flash.geom.*; import GameLevel.*; import GameLevel.Particles.*; public class GeneratorSingularity implements IGenerator { private var whenOrig_:Number; private var when_:Number; private var gap_:Number; private var type_:int; private var howManyOrig_:int; private var howMany_:int; private var whereOrig_:Point; private var where_:Point; public static const GAP:Number = 0.15; public function GeneratorSingularity(_arg1:int, _arg2:Number, _arg3:int, _arg4:Point=null){ type_ = _arg1; whenOrig_ = _arg2; howManyOrig_ = _arg3; whereOrig_ = _arg4; reset(); } public function update(_arg1:Number, _arg2:EnemyFactory, _arg3:Particles):void{ if (when_ > 0){ when_ = (when_ - _arg1); } else { if (!where_){ where_ = _arg2.genCoords(); }; gap_ = (gap_ - _arg1); if (gap_ <= 0){ gap_ = (gap_ + GAP); if (howMany_ > 0){ howMany_--; _arg2.create(type_, where_, 0); }; }; }; } public function reset():void{ when_ = whenOrig_; howMany_ = howManyOrig_; gap_ = 0; where_ = whereOrig_; } } }//package GameLevel.Level
Section 9
//GeneratorStandard (GameLevel.Level.GeneratorStandard) package GameLevel.Level { import GameLevel.*; import GameLevel.Particles.*; public class GeneratorStandard implements IGenerator { private var until_:Number; private var type_:int; private var minPeriod_:Number; private var from_:Number; private var nextCounter_:Number; private var maxPeriod_:Number; private var total_:Number; public function GeneratorStandard(_arg1:int, _arg2:Number, _arg3:Number, _arg4:Number=0, _arg5:Number=0){ type_ = _arg1; minPeriod_ = _arg2; maxPeriod_ = _arg3; from_ = _arg4; until_ = _arg5; reset(); } private function genCounters():void{ nextCounter_ = (minPeriod_ + (Math.random() * (maxPeriod_ - minPeriod_))); } public function update(_arg1:Number, _arg2:EnemyFactory, _arg3:Particles):void{ total_ = (total_ + _arg1); if ((((total_ >= from_)) && ((total_ <= until_)))){ nextCounter_ = (nextCounter_ - _arg1); if (nextCounter_ <= 0){ genCounters(); _arg2.create(type_); }; }; } public function reset():void{ nextCounter_ = (total_ = 0); } } }//package GameLevel.Level
Section 10
//IGenerator (GameLevel.Level.IGenerator) package GameLevel.Level { import GameLevel.*; import GameLevel.Particles.*; public interface IGenerator { function update(_arg1:Number, _arg2:EnemyFactory, _arg3:Particles):void; function reset():void; } }//package GameLevel.Level
Section 11
//LevelDef (GameLevel.Level.LevelDef) package GameLevel.Level { import GameLevel.*; import GameLevel.Particles.*; public class LevelDef { private var timeCounter_:Number; private var levelTime_:Number; private var generators_:Array; public function LevelDef(_arg1:Number, _arg2:Array){ levelTime_ = _arg1; generators_ = _arg2; reset(); } public function get over():Boolean{ return ((timeCounter_ <= 0)); } public function reset():void{ var _local1:IGenerator; for each (_local1 in generators_) { _local1.reset(); }; timeCounter_ = levelTime_; } public function update(_arg1:Number, _arg2:EnemyFactory, _arg3:Particles):void{ var _local4:IGenerator; if (timeCounter_ >= 0){ timeCounter_ = (timeCounter_ - _arg1); for each (_local4 in generators_) { _local4.update(_arg1, _arg2, _arg3); }; }; } } }//package GameLevel.Level
Section 12
//LevelStore (GameLevel.Level.LevelStore) package GameLevel.Level { import GameLevel.*; public final class LevelStore { public static var levels:Array; public static function init():void{ levels = []; levels[0] = new LevelDef(Number.MAX_VALUE, [new GeneratorStandard(EnemyFactory.FEELER, 5, 7, 3, Number.MAX_VALUE), new GeneratorStandard(EnemyFactory.FIGHTER_SLOW, 2, 3, 1, 20), new GeneratorStandard(EnemyFactory.FIGHTER, 2, 3, 20, 40), new GeneratorStandard(EnemyFactory.FIGHTER, 2, 3, 40, 60), new GeneratorStandard(EnemyFactory.WEAVER, 2, 3, 40, 60), new GeneratorSingularity(EnemyFactory.FIGHTER, 63, 20), new GeneratorStandard(EnemyFactory.LAUNCHER, 3, 3, 66, 90), new GeneratorStandard(EnemyFactory.SPLITTER, 2, 3, 90, 120), new GeneratorStandard(EnemyFactory.SNAKE, 3, 3, 120, 121), new GeneratorStandard(EnemyFactory.SNAKE, 3, 3, 120, 121), new GeneratorStandard(EnemyFactory.SNAKE, 3, 3, 120, 121), new GeneratorStandard(EnemyFactory.SNAKE, 3, 3, 120, 121), new GeneratorStandard(EnemyFactory.SNAKE, 3, 3, 120, 121), new GeneratorStandard(EnemyFactory.FIGHTER, 1, 1.4, 130, 150), new GeneratorSingularity(EnemyFactory.WEAVER, 150, 20), new GeneratorStandard(EnemyFactory.FIGHTER, 2, 2.5, 160, Number.MAX_VALUE), new GeneratorStandard(EnemyFactory.SHIELDED, 2, 2.5, 160, Number.MAX_VALUE), new GeneratorStandard(EnemyFactory.LAUNCHER, 7, 7, 180, Number.MAX_VALUE), new GeneratorStandard(EnemyFactory.SAUCER, 5, 7.5, 200, Number.MAX_VALUE), new GeneratorStandard(EnemyFactory.SNAKE, 10, 12, 210, Number.MAX_VALUE), new GeneratorStandard(EnemyFactory.SPLITTER, 2, 2.5, 230, Number.MAX_VALUE), new GeneratorStandard(EnemyFactory.TANK, 5, 5, 250, Number.MAX_VALUE), new GeneratorStandard(EnemyFactory.WEAVER, 2, 2.5, 260, Number.MAX_VALUE), new GeneratorStandard(EnemyFactory.FIGHTER, 2, 2.5, 160, Number.MAX_VALUE), new GeneratorStandard(EnemyFactory.SHIELDED, 2, 2.5, 160, Number.MAX_VALUE), new GeneratorStandard(EnemyFactory.LAUNCHER, 7, 7, 180, Number.MAX_VALUE), new GeneratorStandard(EnemyFactory.SAUCER, 5, 7.5, 200, Number.MAX_VALUE), new GeneratorStandard(EnemyFactory.SNAKE, 10, 12, 210, Number.MAX_VALUE), new GeneratorStandard(EnemyFactory.SPLITTER, 2, 2.5, 230, Number.MAX_VALUE), new GeneratorStandard(EnemyFactory.TANK, 5, 5, 250, Number.MAX_VALUE), new GeneratorStandard(EnemyFactory.WEAVER, 2, 2.5, 260, Number.MAX_VALUE), new GeneratorStandard(EnemyFactory.FIGHTER, 2, 2.5, 360, Number.MAX_VALUE), new GeneratorStandard(EnemyFactory.SHIELDED, 2, 2.5, 360, Number.MAX_VALUE), new GeneratorStandard(EnemyFactory.LAUNCHER, 7, 7, 380, Number.MAX_VALUE), new GeneratorStandard(EnemyFactory.SAUCER, 5, 7.5, 400, Number.MAX_VALUE), new GeneratorStandard(EnemyFactory.SNAKE, 10, 12, 410, Number.MAX_VALUE), new GeneratorStandard(EnemyFactory.SPLITTER, 2, 2.5, 430, Number.MAX_VALUE), new GeneratorStandard(EnemyFactory.TANK, 5, 5, 450, Number.MAX_VALUE), new GeneratorStandard(EnemyFactory.WEAVER, 2, 2.5, 460, Number.MAX_VALUE), new GeneratorStandard(EnemyFactory.FIGHTER, 2, 2.5, 560, Number.MAX_VALUE), new GeneratorStandard(EnemyFactory.SHIELDED, 2, 2.5, 560, Number.MAX_VALUE), new GeneratorStandard(EnemyFactory.LAUNCHER, 7, 7, 580, Number.MAX_VALUE), new GeneratorStandard(EnemyFactory.SAUCER, 5, 7.5, 600, Number.MAX_VALUE), new GeneratorStandard(EnemyFactory.SNAKE, 10, 12, 610, Number.MAX_VALUE), new GeneratorStandard(EnemyFactory.SPLITTER, 2, 2.5, 630, Number.MAX_VALUE), new GeneratorStandard(EnemyFactory.TANK, 5, 5, 650, Number.MAX_VALUE), new GeneratorStandard(EnemyFactory.WEAVER, 2, 2.5, 660, Number.MAX_VALUE)]); } } }//package GameLevel.Level
Section 13
//ParallexBackground (GameLevel.Parallex.ParallexBackground) package GameLevel.Parallex { import flash.display.*; import GameLevel.*; public class ParallexBackground { private var objects_:Array; public function ParallexBackground(){ ParallexGFX.init(); objects_ = []; objects_.push(new ParallexBitmap(0.4, ParallexGFX.smallPlanet, 750, 200)); objects_.push(new ParallexBitmap(0.85, ParallexGFX.bigPlanet, -25, 650)); objects_.push(new ParallexClouds()); } public function update(_arg1:Number):void{ var _local2:ParallexObject; for each (_local2 in objects_) { _local2.update(_arg1); }; } public function draw(_arg1:BitmapData, _arg2:Camera):void{ var _local3:ParallexObject; for each (_local3 in objects_) { _local3.draw(_arg1, _arg2); }; } } }//package GameLevel.Parallex
Section 14
//ParallexBitmap (GameLevel.Parallex.ParallexBitmap) package GameLevel.Parallex { import flash.display.*; import flash.geom.*; import GameLevel.*; public class ParallexBitmap extends ParallexObject { private var par_:Number; private var y_:Number; private var x_:Number; private var bmp_:BitmapData; public function ParallexBitmap(_arg1:Number, _arg2:BitmapData, _arg3:Number, _arg4:Number){ bmp_ = _arg2; x_ = _arg3; y_ = _arg4; par_ = _arg1; } override public function draw(_arg1:BitmapData, _arg2:Camera):void{ var _local3:Number = (x_ - (par_ * _arg2.x)); var _local4:Number = (y_ - (par_ * _arg2.y)); _arg1.copyPixels(bmp_, bmp_.rect, new Point(_local3, _local4), null, null, true); } } }//package GameLevel.Parallex
Section 15
//ParallexClouds (GameLevel.Parallex.ParallexClouds) package GameLevel.Parallex { import flash.display.*; import flash.geom.*; import GameLevel.*; public class ParallexClouds extends ParallexObject { override public function update(_arg1:Number):void{ } override public function draw(_arg1:BitmapData, _arg2:Camera):void{ var _local7:int; var _local3:BitmapData = ParallexGFX.clouds; var _local4:int = (-0.85 * _arg2.x); var _local5:int = (-0.85 * _arg2.y); var _local6:int; while (_local6 < 3) { _local7 = 0; while (_local7 < 4) { _arg1.copyPixels(_local3, _local3.rect, new Point((_local4 + (_local3.width * _local7)), (_local5 + (_local3.height * _local6))), null, null, true); _local7++; }; _local6++; }; } } }//package GameLevel.Parallex
Section 16
//ParallexGFX (GameLevel.Parallex.ParallexGFX) package GameLevel.Parallex { import flash.display.*; import GameLevel.*; public final class ParallexGFX { private static const BIG_PLANET_:Class = ParallexGFX_BIG_PLANET_; private static const SMALL_PLANET_:Class = ParallexGFX_SMALL_PLANET_; public static var clouds:BitmapData = new BitmapData(300, 300); private static var initialised_:Boolean = false; public static var bigPlanet:BitmapData = ToBitmapData(new BIG_PLANET_(), true); public static var smallPlanet:BitmapData = ToBitmapData(new SMALL_PLANET_(), true); public static function init():void{ var _local1:int; var _local2:int; var _local3:uint; if (!initialised_){ initialised_ = true; trace("Drawing clouds"); clouds.perlinNoise(clouds.width, clouds.height, 10, 4, true, false, 7, true); _local1 = 0; while (_local1 < clouds.height) { _local2 = 0; while (_local2 < clouds.width) { _local3 = clouds.getPixel32(_local2, _local1); _local3 = (_local3 & 0xFFFFFF); _local3 = (_local3 + 469762048); clouds.setPixel32(_local2, _local1, _local3); _local2++; }; _local1++; }; }; } } }//package GameLevel.Parallex
Section 17
//ParallexGFX_BIG_PLANET_ (GameLevel.Parallex.ParallexGFX_BIG_PLANET_) package GameLevel.Parallex { import mx.core.*; public class ParallexGFX_BIG_PLANET_ extends BitmapAsset { } }//package GameLevel.Parallex
Section 18
//ParallexGFX_SMALL_PLANET_ (GameLevel.Parallex.ParallexGFX_SMALL_PLANET_) package GameLevel.Parallex { import mx.core.*; public class ParallexGFX_SMALL_PLANET_ extends BitmapAsset { } }//package GameLevel.Parallex
Section 19
//ParallexObject (GameLevel.Parallex.ParallexObject) package GameLevel.Parallex { import flash.display.*; import GameLevel.*; public class ParallexObject { public function update(_arg1:Number):void{ } public function draw(_arg1:BitmapData, _arg2:Camera):void{ } } }//package GameLevel.Parallex
Section 20
//GFX (GameLevel.Particles.GFX) package GameLevel.Particles { import flash.display.*; import GameLevel.*; public final class GFX { private static const WHITE_PARTICLE_:Class = GFX_WHITE_PARTICLE_; private static const RAINBOW_:Class = GFX_RAINBOW_; public static const WHITE_PARTICLE:BitmapData = ToBitmapData(new WHITE_PARTICLE_()); public static const RAINBOW:BitmapData = ToBitmapData(new RAINBOW_()); } }//package GameLevel.Particles
Section 21
//GFX_RAINBOW_ (GameLevel.Particles.GFX_RAINBOW_) package GameLevel.Particles { import mx.core.*; public class GFX_RAINBOW_ extends BitmapAsset { } }//package GameLevel.Particles
Section 22
//GFX_WHITE_PARTICLE_ (GameLevel.Particles.GFX_WHITE_PARTICLE_) package GameLevel.Particles { import mx.core.*; public class GFX_WHITE_PARTICLE_ extends BitmapAsset { } }//package GameLevel.Particles
Section 23
//IDropper (GameLevel.Particles.IDropper) package GameLevel.Particles { public interface IDropper { function update(_arg1:Number, _arg2:Particles):void; function get alive():Boolean; } }//package GameLevel.Particles
Section 24
//Particle (GameLevel.Particles.Particle) package GameLevel.Particles { import flash.geom.*; public class Particle { public var lastPos_:Point; public var life_:Number; public var hot_:Number; public var pos_:Point; public var color_:RGB; public function Particle(_arg1:Point, _arg2:Point, _arg3:Number, _arg4:RGB=null){ var _local5:int; super(); color_ = _arg4; pos_ = _arg1; lastPos_ = _arg2; life_ = _arg3; if (!color_){ _local5 = Math.floor((Math.random() * GFX.RAINBOW.width)); color_ = new RGB(GFX.RAINBOW.getPixel(_local5, 5)); }; hot_ = (0.75 + (Math.random() * 0.25)); } public function update(_arg1:Number):void{ life_ = (life_ - _arg1); if (hot_ > 0){ hot_ = (hot_ - _arg1); } else { hot_ = 0; }; var _local2:Number = ((1.95 * pos_.x) - (0.95 * lastPos_.x)); var _local3:Number = ((1.95 * pos_.y) - (0.95 * lastPos_.y)); lastPos_.x = pos_.x; lastPos_.y = pos_.y; pos_.x = _local2; pos_.y = _local3; } } }//package GameLevel.Particles
Section 25
//Particles (GameLevel.Particles.Particles) package GameLevel.Particles { import flash.display.*; import flash.geom.*; import GameLevel.*; public class Particles { private var particles_:Array; private var droppers_:Array; public function Particles(){ particles_ = []; droppers_ = []; } public function add(_arg1:Particle):void{ particles_.push(_arg1); } public function drawOn(_arg1:BitmapData, _arg2:Camera):void{ var _local5:Particle; var _local6:Number; var _local7:Number; var _local8:Number; var _local3:Matrix = new Matrix(); var _local4:uint = particles_.length; var _local9:uint; while (_local9 < _local4) { _local5 = particles_[_local9]; _local6 = Math.pow(0.0001, (1 - Math.min(1, _local5.life_))); _local7 = (_local5.pos_.x - _arg2.x); _local8 = (_local5.pos_.y - _arg2.y); _local3.identity(); _local3.translate((-0.5 * GFX.WHITE_PARTICLE.width), (-0.5 * GFX.WHITE_PARTICLE.height)); _local3.scale(_local6, _local6); _local3.rotate(Math.atan2((_local8 - _local5.lastPos_.y), (_local7 - _local5.lastPos_.x))); _local3.translate(_local7, _local8); _arg1.draw(GFX.WHITE_PARTICLE, _local3, new ColorTransform(_local5.color_.r, _local5.color_.g, _local5.color_.b, 1, (0xFF * _local5.hot_), (0xFF * _local5.hot_), (0xFF * _local5.hot_))); _local9++; }; } public function update(_arg1:Number):void{ var _local2:IDropper; var _local3:Particle; for each (_local2 in droppers_) { _local2.update(_arg1, this); }; for each (_local3 in particles_) { _local3.update(_arg1); }; droppers_ = droppers_.filter(deadDropperFilter); particles_ = particles_.filter(deadFilter); } private function deadFilter(_arg1:Particle, _arg2:int, _arg3:Array):Boolean{ return ((_arg1.life_ > 0)); } public function addDropper(_arg1:IDropper):void{ droppers_.push(_arg1); } private function deadDropperFilter(_arg1:IDropper, _arg2:int, _arg3:Array):Boolean{ return (_arg1.alive); } } }//package GameLevel.Particles
Section 26
//RGB (GameLevel.Particles.RGB) package GameLevel.Particles { public class RGB { public var b:Number; public var g:Number; public var r:Number; public function RGB(_arg1:uint){ this.r = ((_arg1 & 0xFF0000) / 0xFF0000); this.g = ((_arg1 & 0xFF00) / 0xFF00); this.b = ((_arg1 & 0xFF) / 0xFF); } } }//package GameLevel.Particles
Section 27
//Circles (GameLevel.Ripple.Circles) package GameLevel.Ripple { import flash.display.*; public class Circles { public var circles_:Array; public static const THICKNESS:Number = 45; public function Circles(_arg1:int, _arg2:Number, _arg3:Number=45, _arg4:Number=0.25){ var _local8:Number; var _local9:BitmapData; super(); circles_ = []; var _local5:Sprite = new Sprite(); var _local6:Graphics = _local5.graphics; var _local7:int = (_arg1 - 1); while (_local7 >= 0) { _local8 = Math.max(1, ((Number(_local7) / _arg1) * _arg2)); _local6.clear(); _local6.lineStyle((_arg3 * (1 - (_local8 / _arg2))), 4294967295, (_arg4 * (1 - (_local7 / _arg1)))); _local6.drawCircle((_arg2 + (0.5 * _arg3)), (_arg2 + (0.5 * _arg3)), _local8); _local6.endFill(); _local9 = new BitmapData((2 * ((0.5 * _arg3) + _arg2)), (2 * ((0.5 * _arg3) + _arg2)), true, 0); _local9.draw(_local5); circles_.push(_local9); _local7--; }; } } }//package GameLevel.Ripple
Section 28
//Rippler (GameLevel.Ripple.Rippler) package GameLevel.Ripple { import flash.display.*; import flash.geom.*; import GameLevel.*; public class Rippler { private var circles_:Circles; private var circlesSmall_:Circles; private var ripples_:Array; public function Rippler(){ circles_ = new Circles(20, 75); circlesSmall_ = new Circles(6, 25, 15, 1); ripples_ = []; } public function add(_arg1:Number, _arg2:Number, _arg3:Boolean=false, _arg4:uint=0xFFFFFF):void{ var _local5:Circles = (_arg3) ? circlesSmall_ : circles_; var _local6:Number = (0.5 * _local5.circles_[0].width); var _local7:Number = (0.5 * _local5.circles_[0].height); var _local8:Ripple = new Ripple(_local5.circles_.length, Math.round((_arg1 - _local6)), Math.round((_arg2 - _local7)), _arg3, _arg4); ripples_.push(_local8); } private function removeDead(_arg1:Ripple, _arg2:int, _arg3:Array):Boolean{ return ((_arg1.num > 0)); } public function update(_arg1:Number):void{ var _local2:Ripple; for each (_local2 in ripples_) { _local2.update(_arg1); }; ripples_ = ripples_.filter(removeDead); } public function apply(_arg1:BitmapData, _arg2:BitmapData, _arg3:Camera):void{ var _local4:Ripple; var _local5:BitmapData; var _local6:int; var _local7:int; var _local8:Number; var _local9:Number; var _local10:Number; for each (_local4 in ripples_) { if (_local4.num >= 0){ _local5 = (_local4.small) ? circlesSmall_.circles_[_local4.num] : circles_.circles_[_local4.num]; if (_local5){ _local6 = (_local4.drawX - _arg3.x); _local7 = (_local4.drawY - _arg3.y); if (0xFFFFFF == _local4.color){ _arg1.copyPixels(_local5, _local5.rect, new Point(_local6, _local7)); } else { _local8 = ((_local4.color & 0xFF0000) / 0xFF0000); _local9 = ((_local4.color & 0xFF00) / 0xFF00); _local10 = ((_local4.color & 0xFF) / 0xFF); _arg1.draw(_local5, new Matrix(1, 0, 0, 1, _local6, _local7), new ColorTransform(_local8, _local9, _local10)); }; } else { trace("Should not happen"); }; }; }; } } }//package GameLevel.Ripple class Ripple { public var color:uint; public var num:int; public var small:Boolean; public var drawX:int; public var drawY:int; private var counter:Number; public static const FRAME_LEN:Number = 0.02; private function Ripple(_arg1:int, _arg2:int, _arg3:int, _arg4:Boolean, _arg5:uint=0xFFFFFF){ this.small = _arg4; this.drawX = _arg2; this.drawY = _arg3; this.num = (_arg1 - 1); this.color = _arg5; this.counter = 0; } public function update(_arg1:Number):void{ counter = (counter + _arg1); while (counter > FRAME_LEN) { counter = (counter - FRAME_LEN); num--; }; } }
Section 29
//Score (GameLevel.Scores.Score) package GameLevel.Scores { public class Score { public var multiplier:int; public var value:int; public var y:Number; public var l:Number; public var x:Number; public function Score(_arg1:int, _arg2:int, _arg3:Number, _arg4:Number){ this.value = _arg1; this.multiplier = _arg2; this.x = _arg3; this.y = _arg4; this.l = 0; } } }//package GameLevel.Scores
Section 30
//ScoreGFX (GameLevel.Scores.ScoreGFX) package GameLevel.Scores { import flash.geom.*; import GameLevel.*; public final class ScoreGFX { public static const numbersRects:Array = [new Rectangle(0, 0, 10, 14), new Rectangle(12, 0, 8, 14), new Rectangle(22, 0, 10, 14), new Rectangle(34, 0, 10, 14), new Rectangle(46, 0, 10, 14), new Rectangle(58, 0, 10, 14), new Rectangle(70, 0, 10, 14), new Rectangle(82, 0, 10, 14), new Rectangle(94, 0, 10, 14), new Rectangle(106, 0, 10, 14), new Rectangle(118, 0, 10, 14)]; public static const numbers:Array = [ToBitmapData(new NUMBERS01_(), true), ToBitmapData(new NUMBERS02_(), true), ToBitmapData(new NUMBERS03_(), true), ToBitmapData(new NUMBERS04_(), true), ToBitmapData(new NUMBERS05_(), true), ToBitmapData(new NUMBERS06_(), true), ToBitmapData(new NUMBERS07_(), true), ToBitmapData(new NUMBERS08_(), true), ToBitmapData(new NUMBERS09_(), true)]; private static const NUMBERS09_:Class = ScoreGFX_NUMBERS09_; private static const NUMBERS08_:Class = ScoreGFX_NUMBERS08_; private static const NUMBERS07_:Class = ScoreGFX_NUMBERS07_; private static const NUMBERS06_:Class = ScoreGFX_NUMBERS06_; private static const NUMBERS05_:Class = ScoreGFX_NUMBERS05_; private static const NUMBERS04_:Class = ScoreGFX_NUMBERS04_; private static const NUMBERS03_:Class = ScoreGFX_NUMBERS03_; private static const NUMBERS02_:Class = ScoreGFX_NUMBERS02_; private static const NUMBERS01_:Class = ScoreGFX_NUMBERS01_; public static var scoreBitmaps:Array = []; } }//package GameLevel.Scores
Section 31
//ScoreGFX_NUMBERS01_ (GameLevel.Scores.ScoreGFX_NUMBERS01_) package GameLevel.Scores { import mx.core.*; public class ScoreGFX_NUMBERS01_ extends BitmapAsset { } }//package GameLevel.Scores
Section 32
//ScoreGFX_NUMBERS02_ (GameLevel.Scores.ScoreGFX_NUMBERS02_) package GameLevel.Scores { import mx.core.*; public class ScoreGFX_NUMBERS02_ extends BitmapAsset { } }//package GameLevel.Scores
Section 33
//ScoreGFX_NUMBERS03_ (GameLevel.Scores.ScoreGFX_NUMBERS03_) package GameLevel.Scores { import mx.core.*; public class ScoreGFX_NUMBERS03_ extends BitmapAsset { } }//package GameLevel.Scores
Section 34
//ScoreGFX_NUMBERS04_ (GameLevel.Scores.ScoreGFX_NUMBERS04_) package GameLevel.Scores { import mx.core.*; public class ScoreGFX_NUMBERS04_ extends BitmapAsset { } }//package GameLevel.Scores
Section 35
//ScoreGFX_NUMBERS05_ (GameLevel.Scores.ScoreGFX_NUMBERS05_) package GameLevel.Scores { import mx.core.*; public class ScoreGFX_NUMBERS05_ extends BitmapAsset { } }//package GameLevel.Scores
Section 36
//ScoreGFX_NUMBERS06_ (GameLevel.Scores.ScoreGFX_NUMBERS06_) package GameLevel.Scores { import mx.core.*; public class ScoreGFX_NUMBERS06_ extends BitmapAsset { } }//package GameLevel.Scores
Section 37
//ScoreGFX_NUMBERS07_ (GameLevel.Scores.ScoreGFX_NUMBERS07_) package GameLevel.Scores { import mx.core.*; public class ScoreGFX_NUMBERS07_ extends BitmapAsset { } }//package GameLevel.Scores
Section 38
//ScoreGFX_NUMBERS08_ (GameLevel.Scores.ScoreGFX_NUMBERS08_) package GameLevel.Scores { import mx.core.*; public class ScoreGFX_NUMBERS08_ extends BitmapAsset { } }//package GameLevel.Scores
Section 39
//ScoreGFX_NUMBERS09_ (GameLevel.Scores.ScoreGFX_NUMBERS09_) package GameLevel.Scores { import mx.core.*; public class ScoreGFX_NUMBERS09_ extends BitmapAsset { } }//package GameLevel.Scores
Section 40
//ScoreManager (GameLevel.Scores.ScoreManager) package GameLevel.Scores { import flash.display.*; import flash.geom.*; import GameLevel.*; public class ScoreManager { private var gameData_:GameData; private var scores_:Array; public function ScoreManager(_arg1:GameData){ scores_ = []; gameData_ = _arg1; } public function add(_arg1:int, _arg2:Number, _arg3:Number):void{ var _local4:int = gameData_.multiplier.val; scores_.push(new Score(_arg1, _local4, _arg2, _arg3)); gameData_.score.val = (gameData_.score.val + (_arg1 * _local4)); } public function draw(_arg1:BitmapData, _arg2:Camera):void{ var _local3:Score; for each (_local3 in scores_) { drawScore(_arg1, _local3, _arg2); }; } private function drawScore(_arg1:BitmapData, _arg2:Score, _arg3:Camera):void{ var _local4:BitmapData; var _local5:Number; var _local6:Matrix; if (!ScoreGFX.scoreBitmaps[_arg2.multiplier]){ ScoreGFX.scoreBitmaps[_arg2.multiplier] = []; }; if (!ScoreGFX.scoreBitmaps[_arg2.multiplier][_arg2.value]){ ScoreGFX.scoreBitmaps[_arg2.multiplier][_arg2.value] = ScoreManager.createBitmap(_arg2.value, _arg2.multiplier); trace("Creating score", ((String(_arg2.multiplier) + "x") + String(_arg2.value)), "(", ScoreGFX.scoreBitmaps[_arg2.multiplier][_arg2.value].width, ",", ScoreGFX.scoreBitmaps[_arg2.multiplier][_arg2.value].height, ")"); }; _local4 = ScoreGFX.scoreBitmaps[_arg2.multiplier][_arg2.value]; _local5 = (Math.sin(((0.25 * Math.PI) + ((0.25 * Math.PI) * _arg2.l))) - 0.707106781186548); _local6 = new Matrix(); _local6.translate((-0.5 * _local4.width), ((-0.5 * _local4.height) - (175 * _local5))); _local6.translate((_arg2.x - _arg3.x), (_arg2.y - _arg3.y)); _local6.tx = Math.round(_local6.tx); _local6.ty = Math.round(_local6.ty); _arg1.draw(_local4, _local6, new ColorTransform(1, 1, 1, (1 - Math.pow(0.0001, (1 - _arg2.l)))), null, null, false); } public function update(_arg1:Number):void{ var _local2:Score; for each (_local2 in scores_) { _local2.l = (_local2.l + (2 * _arg1)); }; scores_ = scores_.filter(deadFilter); } private function deadFilter(_arg1:Score, _arg2:int, _arg3:Array):Boolean{ return ((_arg1.l < 1)); } private static function createBitmap(_arg1:int, _arg2:int):BitmapData{ var _local11:Rectangle; var _local13:String; var _local14:int; var _local3:Number = 0; var _local4:Array = []; var _local5:String = ((String(_arg2) + "x") + String(_arg1)); var _local6:int; while (_local6 < _local5.length) { _local13 = _local5.charAt(_local6); _local14 = int(_local13); if ("x" == _local13){ _local14 = 10; }; _local4.push(((_local14 < 10)) ? _local14 : 10); _local6++; }; var _local7:int; var _local8:int = ScoreGFX.numbersRects[0].height; _local6 = 0; while (_local6 < _local4.length) { _local7 = (_local7 + ScoreGFX.numbersRects[_local6].width); _local6++; }; _local7 = (_local7 + (_local3 * (_local4.length - 1))); var _local9:BitmapData = new BitmapData(_local7, _local8, true, 0); var _local10:BitmapData = ScoreGFX.numbers[(_arg2 - 1)]; var _local12:Point = new Point(0, 0); _local6 = 0; while (_local6 < _local4.length) { _local11 = ScoreGFX.numbersRects[_local4[_local6]]; _local9.copyPixels(_local10, _local11, _local12, null, null, true); _local12.x = (_local12.x + (_local11.width + _local3)); _local6++; }; return (_local9); } } }//package GameLevel.Scores
Section 41
//BombCircle (GameLevel.BombCircle) package GameLevel { import flash.display.*; public class BombCircle extends Sprite { private var fade_:Number; private var radius_:Number; private var y_:Number; private var x_:Number; public static const FADE_TIME:Number = 0.5; public static const RADIUS_GROW:Number = 0x0500; public function BombCircle(){ fade_ = -1; radius_ = 0; } public function add(_arg1:Number, _arg2:Number):void{ x_ = _arg1; y_ = _arg2; radius_ = 0; fade_ = FADE_TIME; } public function update(_arg1:Number, _arg2:Camera):void{ var _local3:int; graphics.clear(); if (fade_ >= 0){ fade_ = (fade_ - _arg1); radius_ = (radius_ + (_arg1 * RADIUS_GROW)); _local3 = ((FADE_TIME - fade_) * 0xFF); graphics.lineStyle(50, ((_local3 + (_local3 << 8)) + ((_local3) || (16))), (fade_ / FADE_TIME)); graphics.drawCircle((x_ - _arg2.x), (y_ - _arg2.y), radius_); graphics.beginFill(0xFFFFFF, (fade_ / FADE_TIME)); graphics.lineStyle(); graphics.drawRect(0, 0, Global.SCREEN_WIDTH, Global.SCREEN_HEIGHT); }; } } }//package GameLevel
Section 42
//Bullet (GameLevel.Bullet) package GameLevel { public class Bullet implements ICollisionCircle { public var tiny:Boolean;// = false public var life:Number;// = 1 public var alive:Boolean; public var ySpeed:Number; public var xSpeed:Number; public var angle:Number; public var damage:Number;// = 1 public var x:Number; public var y:Number; private var collisionCircle_:Circle; public function Bullet(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number){ this.x = _arg1; this.y = _arg2; this.xSpeed = _arg3; this.ySpeed = _arg4; alive = true; collisionCircle_ = new Circle(this.x, this.y, _arg5); angle = Math.atan2(_arg4, _arg3); } public function get collisionCircle():Circle{ collisionCircle_.x = x; collisionCircle_.y = y; return (collisionCircle_); } } }//package GameLevel
Section 43
//BulletManager (GameLevel.BulletManager) package GameLevel { import flash.geom.*; public class BulletManager { public var grid:Grid; public var bullets:Array; private var playfield_:Rectangle; private var shootCounter_:Number; private static const SPEED_LEVELS:Array = [(1 / 5), (1 / 7.5), (1 / 10)]; public function BulletManager(_arg1:Rectangle, _arg2:int, _arg3:int, _arg4:Number){ bullets = []; grid = new Grid(_arg2, _arg3, _arg4); playfield_ = _arg1; shootCounter_ = 0; } private function aliveFilter(_arg1:Bullet, _arg2:int, _arg3:Array):Boolean{ return (_arg1.alive); } public function update(_arg1:Number):void{ var _local2:Bullet; shootCounter_ = (shootCounter_ + _arg1); for each (_local2 in bullets) { _local2.x = (_local2.x + (_local2.xSpeed * _arg1)); _local2.y = (_local2.y + (_local2.ySpeed * _arg1)); if ((((((((_local2.x < (playfield_.left - 20))) || ((_local2.x > (playfield_.right + 20))))) || ((_local2.y < (playfield_.top - 20))))) || ((_local2.y > (playfield_.bottom + 20))))){ _local2.alive = false; }; }; bullets = bullets.filter(aliveFilter); grid.update(bullets); } public function canShoot(_arg1:int):Boolean{ return ((shootCounter_ >= Number(SPEED_LEVELS[_arg1]))); } public function shoot(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Boolean=false, _arg6:Boolean=false):void{ var _local7:Bullet = new Bullet(_arg1, _arg2, _arg3, _arg4, (_arg6) ? 5 : 10); bullets.push(_local7); _local7.tiny = _arg6; if (!_arg5){ shootCounter_ = 0; }; } } }//package GameLevel
Section 44
//Camera (GameLevel.Camera) package GameLevel { import flash.geom.*; public class Camera { private var width_:int; private var smootherX_:Smoother; public var playfield:Rectangle; private var smootherY_:Smoother; private var shakeCounter_:Number; private var shakePhase_:Number; private var height_:int; public var y:Number; public var x:Number; public function Camera(_arg1:Rectangle, _arg2:int, _arg3:int){ shakePhase_ = 0; shakeCounter_ = -1; this.playfield = _arg1; width_ = _arg2; height_ = _arg3; smootherX_ = new Smoother(20); smootherY_ = new Smoother(20); x = (y = 0); } public function shakeFor(_arg1:Number):void{ shakeCounter_ = _arg1; } public function jumpPos(_arg1:Number, _arg2:Number):void{ var _local3:int; while (_local3 < smootherX_.len) { update(_arg1, _arg2); _local3++; }; } public function update(_arg1:Number, _arg2:Number):void{ if (_arg1 < playfield.left){ _arg1 = playfield.left; }; if ((_arg1 + width_) > playfield.right){ _arg1 = (playfield.right - width_); }; if (_arg2 < playfield.top){ _arg2 = playfield.top; }; if ((_arg2 + height_) > playfield.bottom){ _arg2 = (playfield.bottom - height_); }; smootherX_.update(_arg1); smootherY_.update(_arg2); x = smootherX_.value; y = smootherY_.value; if (shakeCounter_ > 0){ shakeCounter_ = (shakeCounter_ - GameSection.DT); shakePhase_ = (shakePhase_ + GameSection.DT); x = (x + ((12 * shakeCounter_) * Math.random())); y = (y + ((12 * shakeCounter_) * Math.random())); }; } public function transformPoint(_arg1:Point):Point{ return (new Point((_arg1.x - x), (_arg1.y - y))); } } }//package GameLevel
Section 45
//Circle (GameLevel.Circle) package GameLevel { public class Circle { public var radius:Number; public var x:Number; public var y:Number; public function Circle(_arg1:Number=0, _arg2:Number=0, _arg3:Number=1){ this.x = _arg1; this.y = _arg2; this.radius = _arg3; } public function collidesWith(_arg1:Circle):Boolean{ var _local2:Number = (_arg1.x - this.x); var _local3:Number = (_arg1.y - this.y); var _local4:Number = ((_local2 * _local2) + (_local3 * _local3)); return ((_local4 < ((this.radius + _arg1.radius) * (this.radius + _arg1.radius)))); } public function clone():Circle{ return (new Circle(x, y, radius)); } } }//package GameLevel
Section 46
//Dot (GameLevel.Dot) package GameLevel { import flash.display.*; import flash.geom.*; public class Dot implements ICollisionCircle { public var graphic:BitmapData; public var xLast_:Number; public var yLast_:Number; public var x:Number; public var y:Number; private var playfield_:Rectangle; public var life:Number; private var collisionCircle_:Circle; public static const DAMP:Number = 0.08; public function Dot(_arg1:Rectangle, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:BitmapData){ playfield_ = _arg1; life = 5; this.x = _arg2; this.y = _arg3; xLast_ = _arg4; yLast_ = _arg5; this.graphic = _arg6; collisionCircle_ = new Circle(_arg2, _arg3, 2); } public function get collisionCircle():Circle{ return (collisionCircle_); } public function update(_arg1:Number):void{ life = (life - _arg1); var _local2:Number = (((2 - DAMP) * x) - ((1 - DAMP) * xLast_)); var _local3:Number = (((2 - DAMP) * y) - ((1 - DAMP) * yLast_)); xLast_ = x; yLast_ = y; x = _local2; y = _local3; collisionCircle_.x = x; collisionCircle_.y = y; var _local4:Number = (x - xLast_); var _local5:Number = (y - yLast_); if (x < 0){ x = 0; }; if (x > playfield_.width){ x = playfield_.width; }; if (y < 0){ y = 0; }; if (y > playfield_.height){ y = playfield_.height; }; xLast_ = (x - _local4); yLast_ = (y - _local5); } } }//package GameLevel
Section 47
//DotsManager (GameLevel.DotsManager) package GameLevel { import flash.geom.*; import GameLevel.Ripple.*; public class DotsManager { public var grid:Grid; private var dotBmps_:Array; public var dots:Array; private var playfield_:Rectangle; private var rippler_:Rippler; public function DotsManager(_arg1:Rectangle, _arg2:Rippler, _arg3:int, _arg4:int, _arg5:Number){ dots = []; rippler_ = _arg2; grid = new Grid(_arg3, _arg4, _arg5); playfield_ = _arg1; var _local6:Class = DotsManager_DOT01; var _local7:Class = DotsManager_DOT02; var _local8:Class = DotsManager_DOT03; var _local9:Class = DotsManager_DOT04; dotBmps_ = []; dotBmps_.push(ToBitmapData(new (_local6))); dotBmps_.push(ToBitmapData(new (_local7))); dotBmps_.push(ToBitmapData(new (_local8))); dotBmps_.push(ToBitmapData(new (_local9))); } public function explode(_arg1:Number, _arg2:Number, _arg3:int):void{ var _local8:Number; var _local9:Number; var _local10:Dot; if (0 == _arg3){ return; }; var _local4:Number = ((2 * Math.PI) / _arg3); var _local5:Number = 0; var _local6:Number = 0.1; var _local7:int; while (_local7 < _arg3) { _local8 = (((_local7 * _local4) + (0.5 * _local4)) + ((0.5 * Math.random()) * _local4)); _local9 = (5 + (Math.random() * 15)); _local10 = new Dot(playfield_, _arg1, _arg2, (_arg1 - (_local9 * Math.cos(_local8))), (_arg2 - (_local9 * Math.sin(_local8))), dotBmps_[(Math.floor((Math.random() * 1000)) % dotBmps_.length)]); new Dot(playfield_, _arg1, _arg2, (_arg1 - (_local9 * Math.cos(_local8))), (_arg2 - (_local9 * Math.sin(_local8))), dotBmps_[(Math.floor((Math.random() * 1000)) % dotBmps_.length)]).life = (_local10.life + _local5); dots.push(_local10); _local5 = (_local5 + _local6); _local7++; }; } public function remove(_arg1:Dot):void{ var _local2:int = dots.indexOf(_arg1); if (-1 != _local2){ dots.splice(_local2, 1); }; } public function update(_arg1:Number):void{ var _local2:Dot; for each (_local2 in dots) { _local2.update(_arg1); if (_local2.life <= 0){ rippler_.add(_local2.x, _local2.y, true, _local2.graphic.getPixel((0.5 * _local2.graphic.width), (0.5 * _local2.graphic.height))); }; }; grid.update(dots); dots = dots.filter(filter); } public function avoidEnemies(_arg1:Array):void{ var _local2:ICollisionCircle; var _local3:Circle; var _local4:Array; var _local5:Dot; var _local6:Circle; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:Number; for each (_local2 in _arg1) { _local3 = _local2.collisionCircle; _local4 = grid.getNeighbours(_local2); for each (_local5 in _local4) { _local6 = _local5.collisionCircle; _local7 = (_local6.x - _local3.x); _local8 = (_local6.y - _local3.y); _local9 = Math.sqrt(((_local7 * _local7) + (_local8 * _local8))); if (_local9 < (_local6.radius + _local3.radius)){ if (0 != _local9){ _local10 = ((_local6.radius + _local3.radius) - _local9); _local7 = (_local7 / _local9); _local8 = (_local8 / _local9); _local7 = (_local7 * _local10); _local8 = (_local8 * _local10); _local5.x = (_local5.x + _local7); _local5.y = (_local5.y + _local8); }; }; }; }; } private function filter(_arg1:Dot, _arg2:int, _arg3:Array):Boolean{ return ((_arg1.life > 0)); } } }//package GameLevel
Section 48
//DotsManager_DOT01 (GameLevel.DotsManager_DOT01) package GameLevel { import mx.core.*; public class DotsManager_DOT01 extends BitmapAsset { } }//package GameLevel
Section 49
//DotsManager_DOT02 (GameLevel.DotsManager_DOT02) package GameLevel { import mx.core.*; public class DotsManager_DOT02 extends BitmapAsset { } }//package GameLevel
Section 50
//DotsManager_DOT03 (GameLevel.DotsManager_DOT03) package GameLevel { import mx.core.*; public class DotsManager_DOT03 extends BitmapAsset { } }//package GameLevel
Section 51
//DotsManager_DOT04 (GameLevel.DotsManager_DOT04) package GameLevel { import mx.core.*; public class DotsManager_DOT04 extends BitmapAsset { } }//package GameLevel
Section 52
//DumbShape (GameLevel.DumbShape) package GameLevel { import flash.display.*; import flash.geom.*; import GameLevel.Ripple.*; public class DumbShape extends Enemy { private var rotation_:Number; private var velY_:Number; private var velX_:Number; private var collisionCircle_:Circle; private var playfield_:Rectangle; private var rippler_:Rippler; public function DumbShape(_arg1:Rectangle, _arg2:BitmapData, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number, _arg8:uint, _arg9:Rippler){ super(_arg2); rippler_ = _arg9; mapColor = _arg8; playfield_ = _arg1; overlayNormal = true; dots = 3; clamp = false; x_ = _arg3; y_ = _arg4; rotation_ = 0; velX_ = _arg5; velY_ = _arg6; collisionCircle_ = new Circle(_arg3, _arg4, _arg7); ct = new ColorTransform(); var _local10:Number = ((_arg8 & 0xFF0000) / 0xFF0000); var _local11:Number = ((_arg8 & 0xFF00) / 0xFF00); var _local12:Number = ((_arg8 & 0xFF) / 0xFF); ct.redMultiplier = _local10; ct.greenMultiplier = _local11; ct.blueMultiplier = _local12; this.score = 100; } override public function hit(_arg1:Number, _arg2:Number, _arg3:Number):void{ var _local4:Boolean = alive; super.hit(_arg1, _arg2, _arg3); if (((!(alive)) && (_local4))){ rippler_.add(x_, y_, true); }; } override public function update(_arg1:Number, _arg2:Number, _arg3:Number):void{ x_ = (x_ + (velX_ * _arg1)); y_ = (y_ + (velY_ * _arg1)); rotation_ = (rotation_ + (((_arg1 * 1) * 2) * Math.PI)); var _local4:Boolean; if (x_ < (playfield_.left - graphic.width)){ _local4 = true; }; if (x_ > (playfield_.right + graphic.width)){ _local4 = true; }; if (y_ < (playfield_.top - graphic.height)){ _local4 = true; }; if (y_ > (playfield_.bottom + graphic.height)){ _local4 = true; }; if (_local4){ playerKilled = false; dots = 0; alive = false; }; } override public function get collisionCircle():Circle{ collisionCircle_.x = x_; collisionCircle_.y = y_; return (collisionCircle_); } override public function get rotation():Number{ return (rotation_); } } }//package GameLevel
Section 53
//Enemy (GameLevel.Enemy) package GameLevel { import flash.display.*; import flash.geom.*; public class Enemy implements ICollisionCircle { public var size:Number;// = -1 protected var y_:Number;// = 0 public var strength:Number;// = 1 public var dots:int;// = 10 public var alive:Boolean; public var hurt:int;// = 10 public var score:int;// = 100 public var overlayNormal:Boolean;// = false public var checkCol:Boolean;// = true protected var x_:Number;// = 0 public var graphic:BitmapData; public var marked:Boolean;// = false public var mapColor:uint;// = 0xFF0000 public var ct:ColorTransform; public var deadly:Boolean;// = true public var clamp:Boolean;// = true public var playerKilled:Boolean;// = true public function Enemy(_arg1:BitmapData){ this.graphic = _arg1; alive = true; ct = null; } public function get xPos():Number{ return (x_); } public function get rotation():Number{ return (0); } public function hit(_arg1:Number, _arg2:Number, _arg3:Number):void{ strength = (strength - _arg3); if (strength <= 0){ alive = false; }; } public function get yPos():Number{ return (y_); } public function update(_arg1:Number, _arg2:Number, _arg3:Number):void{ updateSize(_arg1); } protected function updateSize(_arg1:Number):void{ if (size > -1){ size = (size + (3 * _arg1)); if (size >= 1){ size = -1; }; }; } public function playerHit():void{ } public function get collisionCircle():Circle{ return (new Circle()); } public function set yPos(_arg1:Number):void{ y_ = _arg1; } public function set xPos(_arg1:Number):void{ x_ = _arg1; } } }//package GameLevel
Section 54
//EnemyFactory (GameLevel.EnemyFactory) package GameLevel { import flash.geom.*; import GameLevel.Ripple.*; import Sounds.*; public class EnemyFactory { private var dotsManager_:DotsManager; private var playfield_:Rectangle; private var rippler_:Rippler; private var gameData_:GameData; private var ship_:Ship; private var enemyManager_:EnemyManager; private var bulletManager_:BulletManager; public static const SHIELDED:int = 6; public static const SAUCER:int = 5; public static const MAX_SNAKES:int = 8; public static const FEELER:int = 7; public static const SPLITTER:int = 10; public static const GEN_DISTANCE_MIN:int = 200; public static const FIGHTER:int = 1; public static const LAUNCHER:int = 4; public static const FIGHTER_SLOW:int = 0; public static const GEN_DISTANCE_MAX:int = 300; public static const TANK:int = 3; public static const SNAKE:int = 9; public static const WEAVER:int = 8; public static const TANK_SLOW:int = 2; public function EnemyFactory(_arg1:Rectangle, _arg2:EnemyManager, _arg3:GameData, _arg4:DotsManager, _arg5:BulletManager, _arg6:Rippler, _arg7:Ship){ enemyManager_ = _arg2; dotsManager_ = _arg4; bulletManager_ = _arg5; rippler_ = _arg6; ship_ = _arg7; playfield_ = _arg1; gameData_ = _arg3; } private function createFighterSlow(_arg1:Point=null, _arg2:Number=-1, _arg3:Boolean=true):void{ if (!_arg1){ _arg1 = genCoords(); }; var _local4:Enemy = new EnemyPlain(dotsManager_, rippler_, _arg1.x, _arg1.y, ship_.x, ship_.y, EnemyGFX.blueShipPale, 500, 2.5, 20, 1); enemyManager_.add(_local4); _local4.score = 50; _local4.mapColor = 10680745; _local4.size = _arg2; if (_arg3){ rippler_.add(_arg1.x, _arg1.y); }; } private function createLauncher(_arg1:Point=null, _arg2:Number=-1, _arg3:Boolean=true):void{ if (!_arg1){ _arg1 = genCoords(); }; var _local4:Enemy = new Launcher(playfield_, enemyManager_, EnemyGFX.whiteRing, EnemyGFX.spinner, EnemyGFX.triangle, _arg1.x, _arg1.y, 24, rippler_); enemyManager_.add(_local4); _local4.score = 0; _local4.playerKilled = false; _local4.mapColor = 0xFFFFFF; _local4.size = _arg2; if (_arg3){ rippler_.add(_arg1.x, _arg1.y); }; } private function createWeaver(_arg1:Point=null, _arg2:Number=-1, _arg3:Boolean=true):void{ if (!_arg1){ _arg1 = genCoords(); }; var _local4:Enemy = new Weaver(bulletManager_, dotsManager_, rippler_, _arg1.x, _arg1.y, ship_.x, ship_.y, EnemyGFX.weaver, 1500, 4, 20, 1, -1); enemyManager_.add(_local4); _local4.score = 200; _local4.mapColor = 0xFF00; _local4.size = _arg2; if (_arg3){ rippler_.add(_arg1.x, _arg1.y); }; } public function genCoords():Point{ var _local1:Number = (GEN_DISTANCE_MIN + (Math.random() * (GEN_DISTANCE_MAX - GEN_DISTANCE_MIN))); var _local2:Number = ((2 * Math.PI) * Math.random()); var _local3:Point = new Point((ship_.x + (_local1 * Math.cos(_local2))), (ship_.y + (_local1 * Math.sin(_local2)))); var _local4 = 5; while (((!(playfield_.containsPoint(_local3))) && ((_local4 > 0)))) { _local2 = (_local2 + (0.5 * Math.PI)); _local3.x = (ship_.x + (_local1 * Math.cos(_local2))); _local3.y = (ship_.y + (_local1 * Math.sin(_local2))); }; if (_local4 <= 0){ trace("bailed!"); }; return (_local3); } private function createTank(_arg1:Point=null, _arg2:Number=-1, _arg3:Boolean=true):void{ if (!_arg1){ _arg1 = genCoords(); }; var _local4:Enemy = new EnemyPlain(dotsManager_, rippler_, _arg1.x, _arg1.y, ship_.x, ship_.y, EnemyGFX.redShip, 650, 5.35, 20, 5); enemyManager_.add(_local4); _local4.score = 300; _local4.mapColor = 15794001; _local4.size = _arg2; if (_arg3){ rippler_.add(_arg1.x, _arg1.y); }; } private function createFighter(_arg1:Point=null, _arg2:Number=-1, _arg3:Boolean=true):void{ if (!_arg1){ _arg1 = genCoords(); }; var _local4:Enemy = new EnemyPlain(dotsManager_, rippler_, _arg1.x, _arg1.y, ship_.x, ship_.y, EnemyGFX.blueShip, 1500, 5, 20, 1); enemyManager_.add(_local4); _local4.score = 100; _local4.mapColor = 10746875; _local4.size = _arg2; if (_arg3){ rippler_.add(_arg1.x, _arg1.y); }; } private function createSnake(_arg1:Point=null, _arg2:Number=-1, _arg3:Boolean=true):void{ var _local5:Enemy; var _local4:int; for each (_local5 in enemyManager_.enemies) { if ((_local5 is SnakeHead)){ _local4++; }; if (_local4 == MAX_SNAKES){ break; }; }; if (_local4 >= MAX_SNAKES){ trace("Too many snakes"); return; }; if (!_arg1){ _arg1 = genCoords(); }; var _local6:Enemy = new SnakeHead(enemyManager_, _arg1.x, _arg1.y); enemyManager_.add(_local6); _local6.score = 800; _local6.mapColor = 12386303; _local6.size = _arg2; if (_arg3){ rippler_.add(_arg1.x, _arg1.y); }; } private function createSaucer(_arg1:Point=null, _arg2:Number=-1, _arg3:Boolean=true):void{ if (!_arg1){ _arg1 = genCoords(); }; var _local4:Enemy = new Saucer(EnemyGFX.saucer, _arg1.x, _arg1.y, rippler_); enemyManager_.add(_local4); _local4.score = 750; _local4.mapColor = 16745983; _local4.size = _arg2; if (_arg3){ rippler_.add(_arg1.x, _arg1.y); }; } private function createTankSlow(_arg1:Point=null, _arg2:Number=-1, _arg3:Boolean=true):void{ if (!_arg1){ _arg1 = genCoords(); }; var _local4:Enemy = new EnemyPlain(dotsManager_, rippler_, _arg1.x, _arg1.y, ship_.x, ship_.y, EnemyGFX.redShipPale, 200, 3, 20, 5); enemyManager_.add(_local4); _local4.score = 150; _local4.mapColor = 15794001; _local4.size = _arg2; if (_arg3){ rippler_.add(_arg1.x, _arg1.y); }; } private function createSplitter(_arg1:Point=null, _arg2:Number=-1, _arg3:Boolean=true):void{ if (!_arg1){ _arg1 = genCoords(); }; var _local4:Enemy = new Splitter(enemyManager_, gameData_.starTrail, dotsManager_, rippler_, _arg1.x, _arg1.y); enemyManager_.add(_local4); _local4.score = 250; _local4.mapColor = 13104383; _local4.size = _arg2; if (_arg3){ rippler_.add(_arg1.x, _arg1.y); }; } private function createShielded(_arg1:Point=null, _arg2:Number=-1, _arg3:Boolean=true):void{ if (!_arg1){ _arg1 = genCoords(); }; var _local4:Enemy = new Shielded(playfield_, dotsManager_, rippler_, _arg1.x, _arg1.y, ship_.x, ship_.y, EnemyGFX.shieldShip); enemyManager_.add(_local4); _local4.score = 350; _local4.mapColor = 13413034; _local4.size = _arg2; if (_arg3){ rippler_.add(_arg1.x, _arg1.y); }; } private function createFeeler(_arg1:Point=null, _arg2:Number=-1, _arg3:Boolean=true):void{ if (!_arg1){ _arg1 = genCoords(); }; var _local4:Enemy = new Feeler(EnemyGFX.feeler, _arg1.x, _arg1.y, playfield_, rippler_); enemyManager_.add(_local4); _local4.score = 100; _local4.mapColor = 11453436; _local4.size = _arg2; if (_arg3){ rippler_.add(_arg1.x, _arg1.y); }; } public function create(_arg1:int, _arg2:Point=null, _arg3:Number=-1, _arg4:Boolean=true):void{ var _local5:int = Math.floor((Math.random() * 3)); switch (_local5){ case 1: default: GameSounds.play(GameSounds.SWOOSH1); break; case 2: GameSounds.play(GameSounds.SWOOSH2); break; case 3: GameSounds.play(GameSounds.SWOOSH3); break; }; switch (_arg1){ case FIGHTER_SLOW: createFighterSlow(_arg2, _arg3, _arg4); break; case FIGHTER: createFighter(_arg2, _arg3, _arg4); break; case TANK_SLOW: createTankSlow(_arg2, _arg3, _arg4); break; case TANK: createTank(_arg2, _arg3, _arg4); break; case LAUNCHER: createLauncher(_arg2, _arg3, _arg4); break; case SAUCER: createSaucer(_arg2, _arg3, _arg4); break; case SHIELDED: createShielded(_arg2, _arg3, _arg4); break; case FEELER: createFeeler(_arg2, _arg3, _arg4); break; case WEAVER: createWeaver(_arg2, _arg3, _arg4); break; case SNAKE: createSnake(_arg2, _arg3, _arg4); break; case SPLITTER: createSplitter(_arg2, _arg3, _arg4); break; default: trace("Unknown unknown type", _arg1); break; }; } } }//package GameLevel
Section 55
//EnemyGFX (GameLevel.EnemyGFX) package GameLevel { import flash.display.*; public final class EnemyGFX { public static const blueShipPale:BitmapData = ToBitmapData(new BLUE_SHIP_PALE_GFX()); public static const snakeBody4:BitmapData = ToBitmapData(new SNAKEBODY4_GFX()); public static const snakeBody:BitmapData = ToBitmapData(new SNAKEBODY_GFX()); public static const triangle:BitmapData = ToBitmapData(new TRIANGLE_GFX()); public static const saucer:BitmapData = ToBitmapData(new SAUCER_GFX()); private static const WEAVER_GFX:Class = EnemyGFX_WEAVER_GFX; private static const SPINNER_GFX:Class = EnemyGFX_SPINNER_GFX; private static const RED_SHIP_PALE_GFX:Class = EnemyGFX_RED_SHIP_PALE_GFX; private static const SNAKEHEAD_GFX:Class = EnemyGFX_SNAKEHEAD_GFX; private static const BLUE_SHIP_GFX:Class = EnemyGFX_BLUE_SHIP_GFX; public static const spinner:BitmapData = ToBitmapData(new SPINNER_GFX()); private static const SAUCER_GFX:Class = EnemyGFX_SAUCER_GFX; private static const TRIANGLE_GFX:Class = EnemyGFX_TRIANGLE_GFX; public static const spiker:BitmapData = ToBitmapData(new SPIKER_GFX()); public static const blueShip:BitmapData = ToBitmapData(new BLUE_SHIP_GFX()); public static const redShipPale:BitmapData = ToBitmapData(new RED_SHIP_PALE_GFX()); public static const snakeHead:BitmapData = ToBitmapData(new SNAKEHEAD_GFX()); private static const BLUE_SHIP_PALE_GFX:Class = EnemyGFX_BLUE_SHIP_PALE_GFX; public static const shieldShip:BitmapData = ToBitmapData(new SHIELD_SHIP_GFX()); private static const WHITE_RING_GFX:Class = EnemyGFX_WHITE_RING_GFX; private static const SNAKEBODY1_GFX:Class = EnemyGFX_SNAKEBODY1_GFX; private static const SNAKEBODY2_GFX:Class = EnemyGFX_SNAKEBODY2_GFX; private static const SNAKEBODY3_GFX:Class = EnemyGFX_SNAKEBODY3_GFX; private static const SNAKEBODY4_GFX:Class = EnemyGFX_SNAKEBODY4_GFX; private static const SPIKER_GFX:Class = EnemyGFX_SPIKER_GFX; public static const splitter:BitmapData = ToBitmapData(new SPLITTER_GFX()); public static const feeler:BitmapData = ToBitmapData(new FEELER_GFX()); public static const splitterSmall:BitmapData = ToBitmapData(new SPLITTER_SM_GFX()); private static const SNAKEBODY_GFX:Class = EnemyGFX_SNAKEBODY_GFX; private static const RED_SHIP_GFX:Class = EnemyGFX_RED_SHIP_GFX; private static const SPLITTER_GFX:Class = EnemyGFX_SPLITTER_GFX; public static const redShip:BitmapData = ToBitmapData(new RED_SHIP_GFX()); public static const snakeBody1:BitmapData = ToBitmapData(new SNAKEBODY1_GFX()); public static const weaver:BitmapData = ToBitmapData(new WEAVER_GFX()); public static const snakeBody3:BitmapData = ToBitmapData(new SNAKEBODY3_GFX()); private static const SHIELD_SHIP_GFX:Class = EnemyGFX_SHIELD_SHIP_GFX; private static const FEELER_GFX:Class = EnemyGFX_FEELER_GFX; public static const snakeBody2:BitmapData = ToBitmapData(new SNAKEBODY2_GFX()); public static const whiteRing:BitmapData = ToBitmapData(new WHITE_RING_GFX()); private static const SPLITTER_SM_GFX:Class = EnemyGFX_SPLITTER_SM_GFX; } }//package GameLevel
Section 56
//EnemyGFX_BLUE_SHIP_GFX (GameLevel.EnemyGFX_BLUE_SHIP_GFX) package GameLevel { import mx.core.*; public class EnemyGFX_BLUE_SHIP_GFX extends BitmapAsset { } }//package GameLevel
Section 57
//EnemyGFX_BLUE_SHIP_PALE_GFX (GameLevel.EnemyGFX_BLUE_SHIP_PALE_GFX) package GameLevel { import mx.core.*; public class EnemyGFX_BLUE_SHIP_PALE_GFX extends BitmapAsset { } }//package GameLevel
Section 58
//EnemyGFX_FEELER_GFX (GameLevel.EnemyGFX_FEELER_GFX) package GameLevel { import mx.core.*; public class EnemyGFX_FEELER_GFX extends BitmapAsset { } }//package GameLevel
Section 59
//EnemyGFX_RED_SHIP_GFX (GameLevel.EnemyGFX_RED_SHIP_GFX) package GameLevel { import mx.core.*; public class EnemyGFX_RED_SHIP_GFX extends BitmapAsset { } }//package GameLevel
Section 60
//EnemyGFX_RED_SHIP_PALE_GFX (GameLevel.EnemyGFX_RED_SHIP_PALE_GFX) package GameLevel { import mx.core.*; public class EnemyGFX_RED_SHIP_PALE_GFX extends BitmapAsset { } }//package GameLevel
Section 61
//EnemyGFX_SAUCER_GFX (GameLevel.EnemyGFX_SAUCER_GFX) package GameLevel { import mx.core.*; public class EnemyGFX_SAUCER_GFX extends BitmapAsset { } }//package GameLevel
Section 62
//EnemyGFX_SHIELD_SHIP_GFX (GameLevel.EnemyGFX_SHIELD_SHIP_GFX) package GameLevel { import mx.core.*; public class EnemyGFX_SHIELD_SHIP_GFX extends BitmapAsset { } }//package GameLevel
Section 63
//EnemyGFX_SNAKEBODY_GFX (GameLevel.EnemyGFX_SNAKEBODY_GFX) package GameLevel { import mx.core.*; public class EnemyGFX_SNAKEBODY_GFX extends BitmapAsset { } }//package GameLevel
Section 64
//EnemyGFX_SNAKEBODY1_GFX (GameLevel.EnemyGFX_SNAKEBODY1_GFX) package GameLevel { import mx.core.*; public class EnemyGFX_SNAKEBODY1_GFX extends BitmapAsset { } }//package GameLevel
Section 65
//EnemyGFX_SNAKEBODY2_GFX (GameLevel.EnemyGFX_SNAKEBODY2_GFX) package GameLevel { import mx.core.*; public class EnemyGFX_SNAKEBODY2_GFX extends BitmapAsset { } }//package GameLevel
Section 66
//EnemyGFX_SNAKEBODY3_GFX (GameLevel.EnemyGFX_SNAKEBODY3_GFX) package GameLevel { import mx.core.*; public class EnemyGFX_SNAKEBODY3_GFX extends BitmapAsset { } }//package GameLevel
Section 67
//EnemyGFX_SNAKEBODY4_GFX (GameLevel.EnemyGFX_SNAKEBODY4_GFX) package GameLevel { import mx.core.*; public class EnemyGFX_SNAKEBODY4_GFX extends BitmapAsset { } }//package GameLevel
Section 68
//EnemyGFX_SNAKEHEAD_GFX (GameLevel.EnemyGFX_SNAKEHEAD_GFX) package GameLevel { import mx.core.*; public class EnemyGFX_SNAKEHEAD_GFX extends BitmapAsset { } }//package GameLevel
Section 69
//EnemyGFX_SPIKER_GFX (GameLevel.EnemyGFX_SPIKER_GFX) package GameLevel { import mx.core.*; public class EnemyGFX_SPIKER_GFX extends BitmapAsset { } }//package GameLevel
Section 70
//EnemyGFX_SPINNER_GFX (GameLevel.EnemyGFX_SPINNER_GFX) package GameLevel { import mx.core.*; public class EnemyGFX_SPINNER_GFX extends BitmapAsset { } }//package GameLevel
Section 71
//EnemyGFX_SPLITTER_GFX (GameLevel.EnemyGFX_SPLITTER_GFX) package GameLevel { import mx.core.*; public class EnemyGFX_SPLITTER_GFX extends BitmapAsset { } }//package GameLevel
Section 72
//EnemyGFX_SPLITTER_SM_GFX (GameLevel.EnemyGFX_SPLITTER_SM_GFX) package GameLevel { import mx.core.*; public class EnemyGFX_SPLITTER_SM_GFX extends BitmapAsset { } }//package GameLevel
Section 73
//EnemyGFX_TRIANGLE_GFX (GameLevel.EnemyGFX_TRIANGLE_GFX) package GameLevel { import mx.core.*; public class EnemyGFX_TRIANGLE_GFX extends BitmapAsset { } }//package GameLevel
Section 74
//EnemyGFX_WEAVER_GFX (GameLevel.EnemyGFX_WEAVER_GFX) package GameLevel { import mx.core.*; public class EnemyGFX_WEAVER_GFX extends BitmapAsset { } }//package GameLevel
Section 75
//EnemyGFX_WHITE_RING_GFX (GameLevel.EnemyGFX_WHITE_RING_GFX) package GameLevel { import mx.core.*; public class EnemyGFX_WHITE_RING_GFX extends BitmapAsset { } }//package GameLevel
Section 76
//EnemyManager (GameLevel.EnemyManager) package GameLevel { import flash.geom.*; import GameLevel.Ripple.*; import GameLevel.Scores.*; import Sounds.*; public class EnemyManager { public var grid:Grid; private var hitTrans_:ColorTransform; public var enemies:Array; public var playfield_:Rectangle; private var dotsManager_:DotsManager; public var rippler_:Rippler; private var scores_:ScoreManager; public function EnemyManager(_arg1:Rippler, _arg2:ScoreManager, _arg3:DotsManager, _arg4:Rectangle, _arg5:int, _arg6:int, _arg7:Number){ rippler_ = _arg1; scores_ = _arg2; playfield_ = _arg4; dotsManager_ = _arg3; grid = new Grid(_arg5, _arg6, _arg7); enemies = []; } public function add(_arg1:Enemy):void{ enemies.push(_arg1); } public function remove(_arg1:Enemy, _arg2:Boolean=false):void{ var _local3:int = enemies.indexOf(_arg1); if (-1 != _local3){ _arg1.alive = false; _arg1.dots = 0; enemies.splice(_local3, 1); }; } private function aliveFilter(_arg1:Enemy, _arg2:int, _arg3:Array):Boolean{ return (_arg1.alive); } public function update(_arg1:Number, _arg2:Number, _arg3:Number):void{ var _local4:Enemy; var _local5:Circle; var _local6:Array; var _local7:Enemy; var _local8:Circle; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; for each (_local4 in enemies) { _local4.update(_arg1, _arg2, _arg3); if (_local4.clamp){ if (_local4.xPos < playfield_.left){ _local4.xPos = playfield_.left; }; if (_local4.xPos > playfield_.right){ _local4.xPos = playfield_.right; }; if (_local4.yPos < playfield_.top){ _local4.yPos = playfield_.top; }; if (_local4.yPos > playfield_.bottom){ _local4.yPos = playfield_.bottom; }; }; if (!_local4.alive){ dotsManager_.explode(_local4.xPos, _local4.yPos, _local4.dots); if (_local4.playerKilled){ GameSounds.play(GameSounds.EXPLODE); scores_.add(_local4.score, _local4.xPos, _local4.yPos); }; }; }; grid.update(enemies); for each (_local4 in enemies) { if (_local4.checkCol){ _local5 = _local4.collisionCircle; _local6 = grid.getNeighbours(_local4); for each (_local7 in _local6) { if (((_local7.checkCol) && (!((_local7 == _local4))))){ _local8 = _local7.collisionCircle; _local9 = (_local8.x - _local5.x); _local10 = (_local8.y - _local5.y); _local11 = Math.sqrt(((_local9 * _local9) + (_local10 * _local10))); if (_local11 < (_local8.radius + _local5.radius)){ if (0 != _local11){ _local12 = (0.5 * ((_local8.radius + _local5.radius) - _local11)); _local9 = (_local9 / _local11); _local10 = (_local10 / _local11); _local9 = (_local9 * _local12); _local10 = (_local10 * _local12); _local4.xPos = (_local4.xPos - _local9); _local4.yPos = (_local4.yPos - _local10); _local7.xPos = (_local7.xPos + _local9); _local7.yPos = (_local7.yPos + _local10); }; }; }; }; }; }; enemies = enemies.filter(aliveFilter); } public function get count():int{ return (enemies.length); } public function bomb():void{ var _local1:Enemy; for each (_local1 in enemies) { _local1.alive = false; _local1.playerKilled = false; _local1.dots = 0; rippler_.add(_local1.xPos, _local1.yPos); }; } public function bulletCollisions(_arg1:Grid):void{ var _local2:Enemy; var _local3:Circle; var _local4:Array; var _local5:Bullet; var _local6:Circle; var _local7:Number; var _local8:Number; var _local9:Number; for each (_local2 in enemies) { _local3 = _local2.collisionCircle; _local4 = _arg1.getNeighbours(_local2); for each (_local5 in _local4) { if (_local5.alive){ _local6 = _local5.collisionCircle; _local7 = (_local6.x - _local3.x); _local8 = (_local6.y - _local3.y); _local9 = Math.sqrt(((_local7 * _local7) + (_local8 * _local8))); if (_local9 < (_local6.radius + _local3.radius)){ _local5.alive = false; _local2.hit(_local5.x, _local5.y, _local5.damage); }; }; }; }; } } }//package GameLevel
Section 77
//EnemyPlain (GameLevel.EnemyPlain) package GameLevel { import flash.display.*; import flash.geom.*; import GameLevel.Ripple.*; public class EnemyPlain extends Enemy { protected var dotsManager_:DotsManager; protected var sinceHit_:Number; protected var maxSpeed_:Number; protected var dieTimer_:Number; protected var lastX_:Number; protected var rippler_:Rippler; protected var hitTrans_:ColorTransform; protected var accel_:Number; protected var lastY_:Number; protected var collisionCircle_:Circle; public function EnemyPlain(_arg1:DotsManager, _arg2:Rippler, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:BitmapData, _arg8:Number=1500, _arg9:Number=5.9, _arg10:Number=20, _arg11:Number=1, _arg12:Number=-1, _arg13:Boolean=true){ super(_arg7); dieTimer_ = _arg12; dotsManager_ = _arg1; rippler_ = _arg2; sinceHit_ = 0; hitTrans_ = new ColorTransform(1, 1, 1, 1, 0xFF, 0xFF, 0xFF); this.strength = _arg11; collisionCircle_ = new Circle(_arg3, _arg4, _arg10); x_ = _arg3; y_ = _arg4; var _local14:Point = new Point((x_ - _arg5), (y_ - _arg6)); var _local15:Matrix = new Matrix(); if (_arg13){ _local15.rotate(((45 * Math.PI) / 360)); }; _local14 = _local15.transformPoint(_local14); _local14.normalize(_arg9); lastX_ = (x_ - _local14.x); lastY_ = (y_ - _local14.y); accel_ = _arg8; maxSpeed_ = _arg9; } override public function update(_arg1:Number, _arg2:Number, _arg3:Number):void{ super.update(_arg1, _arg2, _arg3); if (sinceHit_ > 0){ sinceHit_ = (sinceHit_ - _arg1); ct = hitTrans_; } else { ct = null; }; if (dieTimer_ > 0){ dieTimer_ = (dieTimer_ - _arg1); if (dieTimer_ <= 0){ hit(0, 0, 1000); playerKilled = false; }; }; _arg1 = (_arg1 * _arg1); var _local4:Point = new Point((_arg2 - x_), (_arg3 - y_)); _local4.normalize(accel_); var _local5:Number = (((2 * x_) - lastX_) + (_arg1 * _local4.x)); var _local6:Number = (((2 * y_) - lastY_) + (_arg1 * _local4.y)); lastX_ = x_; lastY_ = y_; x_ = (_local5 + (0.1 * Math.random())); y_ = (_local6 + (0.1 * Math.random())); var _local7:Number = (x_ - lastX_); var _local8:Number = (y_ - lastY_); var _local9:Number = Math.sqrt(((_local7 * _local7) + (_local8 * _local8))); if (0 != _local9){ _local7 = (_local7 / _local9); _local8 = (_local8 / _local9); _local7 = (_local7 * maxSpeed_); _local8 = (_local8 * maxSpeed_); x_ = (lastX_ + _local7); y_ = (lastY_ + _local8); }; } override public function hit(_arg1:Number, _arg2:Number, _arg3:Number):void{ strength = (strength - _arg3); if (strength <= 0){ alive = false; rippler_.add(x_, y_); } else { dotsManager_.explode(x_, y_, 1); }; sinceHit_ = 0.025; } override public function get collisionCircle():Circle{ collisionCircle_.x = x_; collisionCircle_.y = y_; return (collisionCircle_); } override public function get rotation():Number{ return (Math.atan2((y_ - lastY_), (x_ - lastX_))); } } }//package GameLevel
Section 78
//Feeler (GameLevel.Feeler) package GameLevel { import flash.display.*; import flash.geom.*; import GameLevel.Ripple.*; public class Feeler extends Enemy { private var rot_:Number; private var dy_:Number; private var dx_:Number; private var circle_:Circle; private var playfield_:Rectangle; private var rippler_:Rippler; public static const RADIUS:Number = 26; public function Feeler(_arg1:BitmapData, _arg2:Number, _arg3:Number, _arg4:Rectangle, _arg5:Rippler){ super(_arg1); rot_ = 0; rippler_ = _arg5; playfield_ = _arg4; circle_ = new Circle(_arg2, _arg3, RADIUS); this.x_ = _arg2; this.y_ = _arg3; dx_ = (200 * Math.cos((0.25 * Math.PI))); dy_ = (200 * Math.sin((0.25 * Math.PI))); if (Math.random() > 0.5){ dx_ = -(dx_); }; if (Math.random() > 0.5){ dy_ = -(dy_); }; } override public function hit(_arg1:Number, _arg2:Number, _arg3:Number):void{ var _local4:Boolean = alive; super.hit(_arg1, _arg2, _arg3); if (((!(alive)) && (_local4))){ rippler_.add(x_, y_); }; } override public function get rotation():Number{ return (rot_); } override public function update(_arg1:Number, _arg2:Number, _arg3:Number):void{ super.update(_arg1, _arg2, _arg3); rot_ = (rot_ + (((2 * Math.PI) * 0.5) * _arg1)); x_ = (x_ + (_arg1 * dx_)); y_ = (y_ + (_arg1 * dy_)); if (x_ < RADIUS){ dx_ = Math.abs(dx_); x_ = RADIUS; }; if (x_ > (playfield_.width - RADIUS)){ dx_ = -(Math.abs(dx_)); x_ = (playfield_.width - RADIUS); }; if (y_ < RADIUS){ dy_ = Math.abs(dy_); y_ = RADIUS; }; if (y_ > (playfield_.height - RADIUS)){ dy_ = -(Math.abs(dy_)); y_ = (playfield_.height - RADIUS); }; circle_.x = x_; circle_.y = y_; } override public function get collisionCircle():Circle{ return (circle_); } } }//package GameLevel
Section 79
//Flash (GameLevel.Flash) package GameLevel { import flash.display.*; public class Flash extends Sprite { public function Flash(){ graphics.beginFill(0xFFFFFF); graphics.drawRect(0, 0, Global.SCREEN_WIDTH, Global.SCREEN_HEIGHT); alpha = 0; } public function flash():void{ alpha = 1; } public function update(_arg1:Number):void{ alpha = Math.max(0, (alpha - (10 * _arg1))); } } }//package GameLevel
Section 80
//GameData (GameLevel.GameData) package GameLevel { import CheatFree.*; import GameLevel.Parallex.*; public final class GameData { public var multiplier:SafeInt; public var level:SafeInt; public var parBg:ParallexBackground; public var energy:SafeInt; public var bombs:SafeInt; public var score:SafeInt; public var starTrail:StarTrail;// = null public var energyBuys:SafeInt; public var tinyShips:TinyShipManager;// = null public var balance:SafeInt; public var shootLevel:SafeInt; public var shootSpeed:SafeInt; public var camera:Camera;// = null public var pipSucker:Boolean;// = true public var bombBuys:SafeInt; public var bullets:BulletManager;// = null public var ship:Ship;// = null public function GameData(){ level = new SafeInt(0); balance = new SafeInt(0); shootLevel = new SafeInt(0); shootSpeed = new SafeInt(0); energy = new SafeInt(100); energyBuys = new SafeInt(0); bombs = new SafeInt(3); bombBuys = new SafeInt(0); score = new SafeInt(0); multiplier = new SafeInt(1); super(); } } }//package GameLevel
Section 81
//GameGFX (GameLevel.GameGFX) package GameLevel { import flash.display.*; public final class GameGFX { public static const bullet:BitmapData = ToBitmapData(new BULLET_GFX()); public static const bg:BitmapData = ToBitmapData(new BG_GFX()); private static const MAP_BG_:Class = GameGFX_MAP_BG_; public static const dstData:BitmapData = new BitmapData(Global.SCREEN_WIDTH, Global.SCREEN_HEIGHT, false, 0); public static const whorl:BitmapData = ToBitmapData(new WHORL_GFX()); public static const cursor:BitmapData = ToBitmapData(new CURSOR_GFX()); public static const mapBlob:BitmapData = ToBitmapData(new MAP_BLOB_()); public static const starParticle:BitmapData = ToBitmapData(new STAR_PARTICLE_()); public static const shipTiny:BitmapData = ToBitmapData(new SHIP_TINY_GFX()); private static const SHIP_GFX:Class = GameGFX_SHIP_GFX; private static const BG_GFX:Class = GameGFX_BG_GFX; public static const mapBG:BitmapData = ToBitmapData(new MAP_BG_()); private static const BULLET_GFX:Class = GameGFX_BULLET_GFX; private static const MAP_BLOB_:Class = GameGFX_MAP_BLOB_; public static const bulletTiny:BitmapData = ToBitmapData(new BULLET_TINY_GFX()); private static const CURSOR_GFX:Class = GameGFX_CURSOR_GFX; private static const WHORL_GFX:Class = GameGFX_WHORL_GFX; private static const BULLET_TINY_GFX:Class = GameGFX_BULLET_TINY_GFX; private static const STAR_PARTICLE_:Class = GameGFX_STAR_PARTICLE_; public static const ship:BitmapData = ToBitmapData(new SHIP_GFX()); private static const SHIP_TINY_GFX:Class = GameGFX_SHIP_TINY_GFX; } }//package GameLevel
Section 82
//GameGFX_BG_GFX (GameLevel.GameGFX_BG_GFX) package GameLevel { import mx.core.*; public class GameGFX_BG_GFX extends BitmapAsset { } }//package GameLevel
Section 83
//GameGFX_BULLET_GFX (GameLevel.GameGFX_BULLET_GFX) package GameLevel { import mx.core.*; public class GameGFX_BULLET_GFX extends BitmapAsset { } }//package GameLevel
Section 84
//GameGFX_BULLET_TINY_GFX (GameLevel.GameGFX_BULLET_TINY_GFX) package GameLevel { import mx.core.*; public class GameGFX_BULLET_TINY_GFX extends BitmapAsset { } }//package GameLevel
Section 85
//GameGFX_CURSOR_GFX (GameLevel.GameGFX_CURSOR_GFX) package GameLevel { import mx.core.*; public class GameGFX_CURSOR_GFX extends BitmapAsset { } }//package GameLevel
Section 86
//GameGFX_MAP_BG_ (GameLevel.GameGFX_MAP_BG_) package GameLevel { import mx.core.*; public class GameGFX_MAP_BG_ extends BitmapAsset { } }//package GameLevel
Section 87
//GameGFX_MAP_BLOB_ (GameLevel.GameGFX_MAP_BLOB_) package GameLevel { import mx.core.*; public class GameGFX_MAP_BLOB_ extends BitmapAsset { } }//package GameLevel
Section 88
//GameGFX_SHIP_GFX (GameLevel.GameGFX_SHIP_GFX) package GameLevel { import mx.core.*; public class GameGFX_SHIP_GFX extends BitmapAsset { } }//package GameLevel
Section 89
//GameGFX_SHIP_TINY_GFX (GameLevel.GameGFX_SHIP_TINY_GFX) package GameLevel { import mx.core.*; public class GameGFX_SHIP_TINY_GFX extends BitmapAsset { } }//package GameLevel
Section 90
//GameGFX_STAR_PARTICLE_ (GameLevel.GameGFX_STAR_PARTICLE_) package GameLevel { import mx.core.*; public class GameGFX_STAR_PARTICLE_ extends BitmapAsset { } }//package GameLevel
Section 91
//GameGFX_WHORL_GFX (GameLevel.GameGFX_WHORL_GFX) package GameLevel { import mx.core.*; public class GameGFX_WHORL_GFX extends BitmapAsset { } }//package GameLevel
Section 92
//GameSection (GameLevel.GameSection) package GameLevel { import flash.events.*; import flash.display.*; import flash.geom.*; import GameLevel.Particles.*; import GameLevel.Ripple.*; import flash.text.*; import GameLevel.Scores.*; import flash.utils.*; import Shop.*; import GameLevel.Level.*; import Sounds.*; import GameLevel.Parallex.*; import HUD.*; import Leaderboard.*; import flash.ui.*; public class GameSection implements IGameSection { private var enemyManager_:EnemyManager; private var map_:Map; private var scoreManager_:ScoreManager; private var gameOverText_:TextField; private var bombCircle_:BombCircle; private var survivedFor_:Number;// = 0 private var noShooting_:Number;// = 0 private var levelDef_:LevelDef; private var shoot_:Boolean; private var gameData_:GameData; private var bombCounter_:Number; private var nextSection_:IGameSection; private var holder_:Sprite; private var deadCount_:Number;// = 5 private var statsTimer_:Timer; private var bg_:BitmapData; private var enemyFactory_:EnemyFactory; private var dst_:Bitmap; private var dotsManager_:DotsManager; private var hud_:HUDDisplay; private var cursor_:BitmapData; private var multiplierCounter_:Number; private var playfield_:Rectangle; private var rippler_:Rippler; private var winCounter_:Number;// = 5 private var particles_:Particles; private var shipGfx_:BitmapData; private var flash_:Flash; private var dead_:Boolean;// = false public static const MULTIPLIER_DELAY:Number = 10; public static const WIDTH:int = 700; public static const HEIGHT:int = 500; public static const DT:Number = 0.02; public static const PARALLEX:Number = 0.3; public static const DT_MS:int = 20; public function GameSection(_arg1:GameData){ bombCounter_ = -1; particles_ = new Particles(); nextSection_ = this; Key.clearKeys(null); gameData_ = _arg1; levelDef_ = LevelStore.levels[gameData_.level.val]; levelDef_.reset(); holder_ = new Sprite(); shoot_ = false; scoreManager_ = new ScoreManager(gameData_); map_ = new Map(120, 120, WIDTH, HEIGHT, 0x0500, 960); multiplierCounter_ = MULTIPLIER_DELAY; dst_ = new Bitmap(GameGFX.dstData); holder_.addChild(dst_); bg_ = GameGFX.bg; cursor_ = GameGFX.cursor; shipGfx_ = GameGFX.ship; playfield_ = new Rectangle(0, 0, 0x0500, 960); if (!gameData_.camera){ gameData_.camera = new Camera(playfield_, WIDTH, HEIGHT); }; if (!gameData_.tinyShips){ gameData_.tinyShips = new TinyShipManager(gameData_); }; if (!gameData_.starTrail){ gameData_.starTrail = new StarTrail(); }; if (!gameData_.ship){ gameData_.ship = new Ship(); gameData_.ship.x = (gameData_.ship.lastX_ = (0.5 * playfield_.width)); gameData_.ship.y = (gameData_.ship.lastY_ = (0.5 * playfield_.height)); gameData_.camera.jumpPos((gameData_.ship.x - (0.5 * WIDTH)), (gameData_.ship.y - (0.5 * HEIGHT))); }; if (!gameData_.parBg){ gameData_.parBg = new ParallexBackground(); }; rippler_ = new Rippler(); if (!gameData_.bullets){ gameData_.bullets = new BulletManager(playfield_, Math.ceil((playfield_.width / 30)), Math.ceil((playfield_.height / 30)), 30); }; dotsManager_ = new DotsManager(playfield_, rippler_, Math.ceil((playfield_.width / 30)), Math.ceil((playfield_.height / 30)), 30); enemyManager_ = new EnemyManager(rippler_, scoreManager_, dotsManager_, playfield_, Math.ceil((playfield_.width / 30)), Math.ceil((playfield_.height / 30)), 30); Mouse.hide(); bombCircle_ = new BombCircle(); holder_.addChild(bombCircle_); hud_ = new HUDDisplay(gameData_); holder_.addChild(hud_); flash_ = new Flash(); holder_.addChild(flash_); enemyFactory_ = new EnemyFactory(playfield_, enemyManager_, gameData_, dotsManager_, gameData_.bullets, rippler_, gameData_.ship); Global.stage.addEventListener(MouseEvent.MOUSE_DOWN, onMouseDown, false, 0, true); Global.stage.addEventListener(MouseEvent.MOUSE_UP, onMouseUp, false, 0, true); statsTimer_ = new Timer(5000, 0); statsTimer_.addEventListener(TimerEvent.TIMER, updateStats, false, 0, true); statsTimer_.start(); } private function shoot():void{ var _local6:Point; var _local7:Point; var _local8:Point; var _local1:Point = new Point((Global.stage.mouseX - (gameData_.ship.x - gameData_.camera.x)), (Global.stage.mouseY - (gameData_.ship.y - gameData_.camera.y))); _local1.normalize(500); var _local2:Point = _local1.clone(); _local2.normalize(30); var _local3:Point = _local1.clone(); _local3.normalize(10); var _local4:Number = _local3.y; _local3.y = _local3.x; _local3.x = -(_local4); var _local5:Matrix = new Matrix(); if (gameData_.bullets.canShoot(gameData_.shootSpeed.val)){ noShooting_ = 0; GameSounds.play(GameSounds.LASER); switch (gameData_.shootLevel.val){ case 0: default: gameData_.bullets.shoot((_local2.x + gameData_.ship.x), (_local2.y + gameData_.ship.y), _local1.x, _local1.y); break; case 1: gameData_.bullets.shoot(((_local2.x + gameData_.ship.x) + _local3.x), ((_local2.y + gameData_.ship.y) + _local3.y), _local1.x, _local1.y); gameData_.bullets.shoot(((_local2.x + gameData_.ship.x) - _local3.x), ((_local2.y + gameData_.ship.y) - _local3.y), _local1.x, _local1.y); break; case 2: shootAngle(_local5, _local1, _local2, 0); shootAngle(_local5, _local1, _local2, (Math.PI / 14)); shootAngle(_local5, _local1, _local2, (-(Math.PI) / 14)); break; case 3: shootAngle(_local5, _local1, _local2, 0); shootAngle(_local5, _local1, _local2, (Math.PI / 14)); shootAngle(_local5, _local1, _local2, (-(Math.PI) / 14)); shootAngle(_local5, _local1, _local2, Math.PI); break; case 4: shootAngle(_local5, _local1, _local2, 0); shootAngle(_local5, _local1, _local2, (Math.PI / 14)); shootAngle(_local5, _local1, _local2, (-(Math.PI) / 14)); shootAngle(_local5, _local1, _local2, Math.PI, _local3.x, _local3.y); shootAngle(_local5, _local1, _local2, Math.PI, -(_local3.x), -(_local3.y)); break; }; }; } private function levelFinish():void{ hud_.visible = false; cleanUp(); } private function onMouseDown(_arg1:Event):void{ shoot_ = true; } private function onMouseUp(_arg1:Event):void{ shoot_ = false; } private function cleanUp():void{ Global.stage.removeEventListener(MouseEvent.MOUSE_DOWN, onMouseDown, false); Global.stage.removeEventListener(MouseEvent.MOUSE_UP, onMouseUp, false); statsTimer_.stop(); statsTimer_.removeEventListener(TimerEvent.TIMER, updateStats, false); } public function getGraphic():DisplayObject{ return (holder_); } private function updateStats(_arg1:Event):void{ var _local2:*; if (Global.k){ _local2 = Global.k.stats; _local2.submit("survivedFor", survivedFor_); _local2.submit("noShooting", noShooting_); _local2.submit("pipsCollected", gameData_.balance.val); _local2.submit("bombsStockpiled", gameData_.bombs.val); _local2.submit("fullyUpgraded", ((((((gameData_.tinyShips.num == 3)) && ((gameData_.shootLevel.val == 4)))) && ((gameData_.shootSpeed.val == 1)))) ? 1 : 0); }; } private function shootAngle(_arg1:Matrix, _arg2:Point, _arg3:Point, _arg4:Number, _arg5:Number=0, _arg6:Number=0):void{ _arg1.identity(); _arg1.rotate(_arg4); var _local7:Point = _arg1.transformPoint(_arg2); var _local8:Point = _arg1.transformPoint(_arg3); gameData_.bullets.shoot(((_local8.x + gameData_.ship.x) + _arg5), ((_local8.y + gameData_.ship.y) + _arg6), _local7.x, _local7.y); } public function update():IGameSection{ var _local1:Array; var _local2:Dot; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Array; var _local8:Point; var _local9:Dot; var _local10:Array; var _local11:Circle; var _local12:Enemy; var _local13:Point; var _local14:Number; var _local15:Boolean; var _local16:Array; var _local17:Dot; hud_.pause.visible = true; nextSection_ = this; survivedFor_ = (survivedFor_ + DT); noShooting_ = (noShooting_ + DT); scoreManager_.update(DT); bombCircle_.update(DT, gameData_.camera); flash_.update(DT); particles_.update(DT); gameData_.starTrail.update(DT); gameData_.parBg.update(DT); gameData_.tinyShips.update(DT, dotsManager_, enemyManager_, playfield_); if (enemyManager_.enemies.length > 0){ multiplierCounter_ = (multiplierCounter_ - DT); }; if (multiplierCounter_ <= 0){ multiplierCounter_ = MULTIPLIER_DELAY; if (gameData_.multiplier.val != 9){ gameData_.multiplier.val++; }; }; if (!dead_){ if (((Key.isDown(String("W").charCodeAt(0))) || (Key.isDown(Keyboard.UP)))){ gameData_.ship.up(); }; if (((Key.isDown(String("S").charCodeAt(0))) || (Key.isDown(Keyboard.DOWN)))){ gameData_.ship.down(); }; if (((Key.isDown(String("A").charCodeAt(0))) || (Key.isDown(Keyboard.LEFT)))){ gameData_.ship.left(); }; if (((Key.isDown(String("D").charCodeAt(0))) || (Key.isDown(Keyboard.RIGHT)))){ gameData_.ship.right(); }; }; if (bombCounter_ >= 0){ bombCounter_ = (bombCounter_ - DT); } else { if (((!(dead_)) && (Key.isDown(Keyboard.SPACE)))){ if (gameData_.bombs.val > 0){ GameSounds.play(GameSounds.BOMB); bombCounter_ = 2; gameData_.bombs.val--; enemyManager_.bomb(); gameData_.camera.shakeFor(2); bombCircle_.add(gameData_.ship.x, gameData_.ship.y); gameData_.tinyShips.blast(new Point(gameData_.ship.x, gameData_.ship.y)); _local1 = dotsManager_.dots; for each (_local2 in _local1) { _local3 = (gameData_.ship.x - _local2.x); _local4 = (gameData_.ship.y - _local2.y); _local5 = ((_local3 * _local3) + (_local4 * _local4)); _local6 = Math.sqrt(_local5); if (0 == _local5){ _local5 = Number.MIN_VALUE; }; if (0 != _local6){ _local3 = (_local3 / _local6); _local4 = (_local4 / _local6); } else { _local4 = 0; _local3 = _local4; }; _local2.xLast_ = (_local2.xLast_ + ((_local3 * 100000) / _local5)); _local2.yLast_ = (_local2.yLast_ + ((_local4 * 100000) / _local5)); }; }; }; }; if (((!(dead_)) && (shoot_))){ shoot(); }; if (!dead_){ _local7 = dotsManager_.grid.getNeighboursInRange(gameData_.ship, 120); _local8 = new Point(); for each (_local9 in _local7) { _local8.x = (_local9.x - gameData_.ship.x); _local8.y = (_local9.y - gameData_.ship.y); if (_local8.length <= 120){ _local8.normalize(2); _local9.x = (_local9.x - _local8.x); _local9.y = (_local9.y - _local8.y); }; }; }; if (!dead_){ _local10 = enemyManager_.grid.getMoreNeighbours(gameData_.ship); _local11 = gameData_.ship.collisionCircle; for each (_local12 in _local10) { if (_local12.alive){ if (_local12.collisionCircle.collidesWith(_local11)){ if (_local12.deadly){ GameSounds.play(GameSounds.HURT); flash_.flash(); gameData_.camera.shakeFor(0.7); multiplierCounter_ = MULTIPLIER_DELAY; gameData_.multiplier.val = 1; enemyManager_.remove(_local12); _local12.playerHit(); rippler_.add(_local12.xPos, _local12.yPos); gameData_.energy.val = Math.max((int(gameData_.energy.val) - _local12.hurt), 0); } else { _local13 = new Point((gameData_.ship.x - _local12.xPos), (gameData_.ship.y - _local12.yPos)); _local14 = (0.5 * ((_local11.radius + _local12.collisionCircle.radius) - _local13.length)); _local13.normalize(_local14); gameData_.ship.x = (gameData_.ship.x + _local13.x); gameData_.ship.y = (gameData_.ship.y + _local13.y); _local12.xPos = (_local12.xPos - _local13.x); _local12.yPos = (_local12.yPos - _local13.y); }; }; }; }; }; if (((!(dead_)) && ((gameData_.energy.val <= 0)))){ gameOverText_ = HUDDisplay.makeTF(); holder_.addChild(gameOverText_); gameOverText_.text = "GAME OVER"; gameOverText_.x = (0.5 * (Global.SCREEN_WIDTH - gameOverText_.width)); gameOverText_.y = (0.5 * (Global.SCREEN_HEIGHT - gameOverText_.height)); gameOverText_.alpha = 0; dead_ = true; GameSounds.play(GameSounds.BOMB); enemyManager_.bomb(); gameData_.camera.shakeFor(2); bombCircle_.add(gameData_.ship.x, gameData_.ship.y); gameData_.tinyShips.blast(new Point(gameData_.ship.x, gameData_.ship.y)); _local1 = dotsManager_.dots; for each (_local2 in _local1) { _local3 = (gameData_.ship.x - _local2.x); _local4 = (gameData_.ship.y - _local2.y); _local5 = ((_local3 * _local3) + (_local4 * _local4)); _local6 = Math.sqrt(_local5); if (0 == _local5){ _local5 = Number.MIN_VALUE; }; if (0 != _local6){ _local3 = (_local3 / _local6); _local4 = (_local4 / _local6); } else { _local4 = 0; _local3 = _local4; }; _local2.xLast_ = (_local2.xLast_ + ((_local3 * 100000) / _local5)); _local2.yLast_ = (_local2.yLast_ + ((_local4 * 100000) / _local5)); }; }; gameData_.ship.update(DT, playfield_); gameData_.bullets.update(DT); enemyManager_.update(DT, gameData_.ship.x, gameData_.ship.y); enemyManager_.bulletCollisions(gameData_.bullets.grid); dotsManager_.update(DT); dotsManager_.avoidEnemies(enemyManager_.enemies); if (!dead_){ levelDef_.update(DT, enemyFactory_, particles_); }; if (!dead_){ _local15 = false; _local16 = dotsManager_.grid.getNeighbours(gameData_.ship); for each (_local17 in _local16) { if (_local17.collisionCircle.collidesWith(gameData_.ship.collisionCircle)){ _local15 = true; dotsManager_.remove(_local17); gameData_.balance.val++; }; }; if (_local15){ GameSounds.play(GameSounds.NOTES[Math.floor((GameSounds.NOTES.length * Math.random()))]); }; }; if (gameOverText_){ gameOverText_.alpha = Math.min(1, (gameOverText_.alpha + DT)); }; gameData_.camera.update((gameData_.ship.x - (0.5 * WIDTH)), (gameData_.ship.y - (0.5 * HEIGHT))); rippler_.update(DT); if (winCounter_ <= 0){ levelFinish(); }; if (((!(dead_)) && (((Key.isDown(Keyboard.ESCAPE)) || (Key.isDown(String("Q").charCodeAt(0))))))){ hud_.pause.visible = false; nextSection_ = new ShopSection(gameData_, holder_, this); }; if (dead_){ deadCount_ = (deadCount_ - DT); if (deadCount_ <= 0){ cleanUp(); if (gameOverText_){ gameOverText_.visible = false; }; updateStats(null); nextSection_ = new LeaderboardSection(gameData_, holder_); }; }; return (nextSection_); } public function draw():void{ var _local4:Dot; var _local7:Bullet; var _local8:BitmapData; var _local9:Enemy; var _local10:BitmapData; hud_.draw(); var _local1:BitmapData = dst_.bitmapData; _local1.lock(); var _local2:Matrix = new Matrix(); _local1.copyPixels(bg_, new Rectangle((PARALLEX * gameData_.camera.x), (PARALLEX * gameData_.camera.y), WIDTH, HEIGHT), new Point()); gameData_.parBg.draw(_local1, gameData_.camera); particles_.drawOn(_local1, gameData_.camera); var _local3:Point = new Point(); for each (_local4 in dotsManager_.dots) { _local8 = _local4.graphic; _local3.x = (((-0.5 * _local8.width) + _local4.x) - gameData_.camera.x); _local3.y = (((-0.5 * _local8.height) + _local4.y) - gameData_.camera.y); _local1.copyPixels(_local8, _local8.rect, _local3, null, null, true); }; rippler_.apply(_local1, _local1, gameData_.camera); gameData_.starTrail.draw(_local1, gameData_.camera); _local2.identity(); _local2.translate((-0.5 * shipGfx_.width), (-0.5 * shipGfx_.height)); _local2.rotate(Math.atan2((Global.stage.mouseY - (gameData_.ship.y - gameData_.camera.y)), (Global.stage.mouseX - (gameData_.ship.x - gameData_.camera.x)))); _local2.translate((gameData_.ship.x - gameData_.camera.x), (gameData_.ship.y - gameData_.camera.y)); if (!dead_){ _local1.draw(shipGfx_, _local2, null, null, null, true); }; gameData_.tinyShips.draw(_local1); var _local5:int = enemyManager_.enemies.length; var _local6:int; while (_local6 < _local5) { _local9 = enemyManager_.enemies[_local6]; _local2.identity(); _local2.translate((-0.5 * _local9.graphic.width), (-0.5 * _local9.graphic.height)); _local2.rotate(_local9.rotation); if (_local9.size > -1){ _local2.scale(_local9.size, _local9.size); }; _local2.translate((_local9.xPos - gameData_.camera.x), (_local9.yPos - gameData_.camera.y)); _local1.draw(_local9.graphic, _local2, _local9.ct, null, null, true); if (_local9.overlayNormal){ _local1.draw(_local9.graphic, _local2, null, null, null, true); }; _local6++; }; for each (_local7 in gameData_.bullets.bullets) { _local10 = (_local7.tiny) ? GameGFX.bulletTiny : GameGFX.bullet; _local2.identity(); _local2.translate((-0.5 * _local10.width), (-0.5 * _local10.height)); _local2.rotate(_local7.angle); _local2.translate((_local7.x - gameData_.camera.x), (_local7.y - gameData_.camera.y)); _local1.draw(_local10, _local2); }; scoreManager_.draw(_local1, gameData_.camera); map_.draw(playfield_, gameData_.camera, new Point(gameData_.ship.x, gameData_.ship.y), enemyManager_.enemies, dotsManager_.dots, gameData_.bullets.bullets, gameData_.tinyShips.ships); _local2.identity(); _local2.tx = (WIDTH - map_.bmp.width); _local2.ty = (HEIGHT - map_.bmp.height); _local1.draw(map_.bmp, _local2, new ColorTransform(1, 1, 1, 0.6)); _local1.copyPixels(cursor_, cursor_.rect, new Point((Global.stage.mouseX - (0.5 * cursor_.width)), (Global.stage.mouseY - (0.5 * cursor_.height)))); _local1.unlock(); } } }//package GameLevel
Section 93
//Grid (GameLevel.Grid) package GameLevel { import flash.geom.*; public class Grid { private var width_:int; private var squareSize_:Number; private var grid_:Array; private var height_:int; public function Grid(_arg1:int, _arg2:int, _arg3:Number){ this.width_ = _arg1; this.height_ = _arg2; this.squareSize_ = _arg3; grid_ = new Array((width_ * height_)); } public function getMoreNeighbours(_arg1:ICollisionCircle):Array{ var _local5:int; var _local6:int; var _local2:Point = indexOf(_arg1); var _local3:Array = []; var _local4 = -2; while (_local4 < 3) { _local5 = -2; while (_local5 < 3) { _local6 = ((_local2.x + _local5) + ((_local2.y + _local4) * width_)); if (grid_[_local6]){ _local3 = _local3.concat(grid_[_local6]); }; _local5++; }; _local4++; }; return (_local3); } public function update(_arg1:Array):void{ var _local4:ICollisionCircle; var _local2:int = grid_.length; var _local3:int; while (_local3 < _local2) { grid_[_local3] = null; _local3++; }; for each (_local4 in _arg1) { allocate(_local4); }; } public function indexOf(_arg1:ICollisionCircle):Point{ return (new Point(Math.ceil((_arg1.collisionCircle.x / squareSize_)), Math.ceil((_arg1.collisionCircle.y / squareSize_)))); } public function getNeighboursInRange(_arg1:ICollisionCircle, _arg2:Number):Array{ var _local8:int; var _local9:int; var _local3:Point = indexOf(_arg1); var _local4:int = -(Math.ceil(((0.5 * _arg2) / squareSize_))); var _local5:int = (-(_local4) + 1); var _local6:Array = []; var _local7:int = _local4; while (_local7 < _local5) { _local8 = _local4; while (_local8 < _local5) { _local9 = ((_local3.x + _local8) + ((_local3.y + _local7) * width_)); if (grid_[_local9]){ _local6 = _local6.concat(grid_[_local9]); }; _local8++; }; _local7++; }; return (_local6); } public function getNeighbours(_arg1:ICollisionCircle):Array{ var _local5:int; var _local6:int; var _local2:Point = indexOf(_arg1); var _local3:Array = []; var _local4 = -1; while (_local4 < 2) { _local5 = -1; while (_local5 < 2) { _local6 = ((_local2.x + _local5) + ((_local2.y + _local4) * width_)); if (grid_[_local6]){ _local3 = _local3.concat(grid_[_local6]); }; _local5++; }; _local4++; }; return (_local3); } public function allocate(_arg1:ICollisionCircle):void{ var _local2:Circle = _arg1.collisionCircle; var _local3:int = Math.round((_local2.x / squareSize_)); var _local4:int = Math.round((_local2.y / squareSize_)); if (_local3 < 0){ _local3 = 0; }; if (_local3 > width_){ _local3 = width_; }; if (_local4 < 0){ _local4 = 0; }; if (_local4 > height_){ _local4 = height_; }; var _local5:int = (_local3 + (width_ * _local4)); var _local6:Array = grid_[_local5]; if (_local6){ _local6.push(_arg1); } else { grid_[_local5] = [_arg1]; }; } } }//package GameLevel
Section 94
//ICollisionCircle (GameLevel.ICollisionCircle) package GameLevel { public interface ICollisionCircle { function get collisionCircle():Circle; } }//package GameLevel
Section 95
//Launcher (GameLevel.Launcher) package GameLevel { import flash.display.*; import flash.geom.*; import GameLevel.Ripple.*; public class Launcher extends Ring { private var launchCount_:int; private var spinner_:Spinner; private var launchCounter_:Number; private var waitCounter_:Number; private var playfield_:Rectangle; private var enemyManager_:EnemyManager; private var rippler_:Rippler; private var shape_:BitmapData; public static const MAX_WAIT:Number = 3.2; public static const MIN_WAIT:Number = 3; public static const NUM_TO_LAUNCH:int = 20; public static const LAUNCH_DELAY:Number = 0.05; public function Launcher(_arg1:Rectangle, _arg2:EnemyManager, _arg3:BitmapData, _arg4:BitmapData, _arg5:BitmapData, _arg6:Number, _arg7:Number, _arg8:Number, _arg9:Rippler){ super(_arg3, _arg6, _arg7, _arg8); rippler_ = _arg9; dots = 25; playfield_ = _arg1; enemyManager_ = _arg2; spinner_ = new Spinner(_arg4, _arg6, _arg7); enemyManager_.add(spinner_); shape_ = _arg5; waitCounter_ = (MIN_WAIT + (Math.random() * (MAX_WAIT - MIN_WAIT))); launchCounter_ = 0; launchCount_ = NUM_TO_LAUNCH; } override public function set yPos(_arg1:Number):void{ super.yPos = _arg1; spinner_.yPos = _arg1; } override public function update(_arg1:Number, _arg2:Number, _arg3:Number):void{ var _local4:Number; var _local5:Number; var _local6:Number; var _local7:DumbShape; super.update(_arg1, _arg2, _arg3); spinner_.xPos = x_; spinner_.yPos = y_; waitCounter_ = (waitCounter_ - _arg1); if (waitCounter_ < 0){ launchCounter_ = (launchCounter_ + _arg1); while ((((launchCounter_ > LAUNCH_DELAY)) && ((launchCount_ > 0)))) { launchCount_--; launchCounter_ = (launchCounter_ - LAUNCH_DELAY); _local4 = spinner_.rotation; _local5 = Math.cos(_local4); _local6 = Math.sin(_local4); _local7 = new DumbShape(playfield_, shape_, (x_ + (45 * _local5)), (y_ + (45 * _local6)), (150 * _local5), (150 * _local6), 6, spinner_.color, rippler_); _local7.strength = 0.01; enemyManager_.add(_local7); }; }; if (0 == launchCount_){ alive = false; spinner_.alive = false; }; } override public function set xPos(_arg1:Number):void{ super.xPos = _arg1; spinner_.xPos = _arg1; } } }//package GameLevel
Section 96
//Map (GameLevel.Map) package GameLevel { import flash.display.*; import flash.geom.*; public class Map { private var camBitmap_:BitmapData; private var blob_:BitmapData; public var bmp:BitmapData; public function Map(_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int){ var _local9:int; super(); blob_ = GameGFX.mapBlob; bmp = new BitmapData(_arg1, _arg2, true, 0); camBitmap_ = new BitmapData(((_arg1 * _arg3) / _arg5), ((_arg2 * _arg4) / _arg6), true, 0); var _local7:Shape = new Shape(); _local7.graphics.lineStyle(1, 11184844); _local7.graphics.drawRect(0, 0, (camBitmap_.width - 1), (camBitmap_.height - 1)); camBitmap_.draw(_local7); var _local8 = 1; while (_local8 < (camBitmap_.width - 1)) { _local9 = 1; while (_local9 < (camBitmap_.height - 1)) { camBitmap_.setPixel32(_local8, _local9, 1140850688); _local9++; }; _local8++; }; } public function draw(_arg1:Rectangle, _arg2:Camera, _arg3:Point, _arg4:Array, _arg5:Array, _arg6:Array, _arg7:Array):void{ var _local12:Enemy; var _local13:Bullet; var _local14:TinyShip; var _local15:int; var _local16:int; var _local17:int; bmp.copyPixels(GameGFX.mapBG, bmp.rect, new Point()); var _local8:Point = new Point(((bmp.width * _arg2.x) / _arg1.width), ((bmp.height * _arg2.y) / _arg1.height)); _local8.x = Math.min(_local8.x, (bmp.width - camBitmap_.width)); _local8.y = Math.min(_local8.y, (bmp.height - camBitmap_.height)); bmp.copyPixels(camBitmap_, camBitmap_.rect, _local8, null, null, true); var _local9:Matrix = new Matrix(); var _local10:int = mapX(_arg1, _arg3.x); var _local11:int = mapY(_arg1, _arg3.y); bmp.setPixel(_local10, _local11, 0xFFFFFF); bmp.setPixel((_local10 + 1), _local11, 0xFFFFFF); bmp.setPixel((_local10 - 1), _local11, 0xFFFFFF); bmp.setPixel(_local10, (_local11 - 1), 0xFFFFFF); bmp.setPixel(_local10, (_local11 + 1), 0xFFFFFF); bmp.setPixel((_local10 + 2), _local11, 0xFFFFFF); bmp.setPixel((_local10 - 2), _local11, 0xFFFFFF); bmp.setPixel(_local10, (_local11 - 2), 0xFFFFFF); bmp.setPixel(_local10, (_local11 + 2), 0xFFFFFF); for each (_local12 in _arg4) { _local9.tx = mapX(_arg1, _local12.xPos); _local9.ty = mapY(_arg1, _local12.yPos); _local15 = ((_local12.mapColor & 0xFF0000) >> 16); _local16 = ((_local12.mapColor & 0xFF00) >> 8); _local17 = (_local12.mapColor & 0xFF); bmp.draw(blob_, _local9, new ColorTransform(0, 0, 0, 1, _local15, _local16, _local17)); }; for each (_local13 in _arg6) { bmp.setPixel32(mapX(_arg1, _local13.x), mapY(_arg1, _local13.y), 4294967049); }; for each (_local14 in _arg7) { bmp.setPixel32(mapX(_arg1, _local14.x), mapY(_arg1, _local14.y), 4294967295); }; } public function mapX(_arg1:Rectangle, _arg2:Number):Number{ return (((_arg2 / _arg1.width) * bmp.width)); } public function mapY(_arg1:Rectangle, _arg2:Number):Number{ return (((_arg2 / _arg1.height) * bmp.height)); } } }//package GameLevel
Section 97
//Ring (GameLevel.Ring) package GameLevel { import flash.display.*; import flash.geom.*; public class Ring extends Enemy { private var collisionCircle_:Circle; private var lastY_:Number; private var lastX_:Number; public static const DAMP:Number = 0.1; public function Ring(_arg1:BitmapData, _arg2:Number, _arg3:Number, _arg4:Number){ super(_arg1); dots = 0; collisionCircle_ = new Circle(_arg2, _arg3, _arg4); lastX_ = (x_ = _arg2); lastY_ = (y_ = _arg3); deadly = false; } override public function hit(_arg1:Number, _arg2:Number, _arg3:Number):void{ var _local4:Point = new Point((_arg1 - x_), (_arg2 - y_)); _local4.normalize(1); lastX_ = (lastX_ + _local4.x); lastY_ = (lastY_ + _local4.y); } override public function update(_arg1:Number, _arg2:Number, _arg3:Number):void{ var _local5:Number; super.update(_arg1, _arg2, _arg3); var _local4:Number = (((2 - DAMP) * x_) - ((1 - DAMP) * lastX_)); _local5 = (((2 - DAMP) * y_) - ((1 - DAMP) * lastY_)); lastX_ = x_; lastY_ = y_; x_ = _local4; y_ = _local5; } override public function get collisionCircle():Circle{ collisionCircle_.x = x_; collisionCircle_.y = y_; return (collisionCircle_); } } }//package GameLevel
Section 98
//Saucer (GameLevel.Saucer) package GameLevel { import flash.display.*; import flash.geom.*; import GameLevel.Ripple.*; public class Saucer extends Enemy { private var sinceHit_:Number; private var moveCounter_:Number; private var angleCounter_:Number; private var moveX_:Number; private var targetAngle_:Number; private var angleTime_:Number; private var rippler_:Rippler; private var hitTrans_:ColorTransform; private var startAngle_:Number; private var moveY_:Number; private var waitCounter_:Number; private var collisionCircle_:Circle; public static const MIN_WAIT:Number = 0.1; public static const MIN_ANGLE_TIME:Number = 0.3; public static const MAX_MOVE:Number = 0.6; public static const MAX_WAIT:Number = 0.5; public static const MAX_ANGLE_TIME:Number = 0.6; public static const MIN_MOVE:Number = 0.3; public function Saucer(_arg1:BitmapData, _arg2:Number, _arg3:Number, _arg4:Rippler){ super(_arg1); sinceHit_ = 0; rippler_ = _arg4; dots = 12; strength = 5; waitCounter_ = genCounter(MIN_WAIT, MAX_WAIT); moveCounter_ = genCounter(MIN_MOVE, MAX_MOVE); startAngle_ = ((2 * Math.PI) * Math.random()); targetAngle_ = ((2 * Math.PI) * Math.random()); angleTime_ = genCounter(MIN_ANGLE_TIME, MAX_ANGLE_TIME); angleCounter_ = 0; genMove(); x_ = _arg2; y_ = _arg3; hitTrans_ = new ColorTransform(1, 1, 1, 1, 0xFF, 0xFF, 0xFF); collisionCircle_ = new Circle(_arg2, _arg3, 21); } override public function get rotation():Number{ return ((startAngle_ + ((targetAngle_ - startAngle_) * Math.sin((((angleCounter_ / angleTime_) * 0.5) * Math.PI))))); } private function genMove():void{ var _local1:Number = ((2 * Math.PI) * Math.random()); var _local2:Number = genCounter(200, 300); moveX_ = (_local2 * Math.cos(_local1)); moveY_ = (_local2 * Math.sin(_local1)); } override public function update(_arg1:Number, _arg2:Number, _arg3:Number):void{ super.update(_arg1, _arg2, _arg3); if (sinceHit_ > 0){ sinceHit_ = (sinceHit_ - _arg1); ct = hitTrans_; } else { ct = null; }; angleCounter_ = (angleCounter_ + _arg1); if (angleCounter_ > angleTime_){ startAngle_ = targetAngle_; targetAngle_ = ((2 * Math.PI) * Math.random()); angleTime_ = genCounter(MIN_ANGLE_TIME, MAX_ANGLE_TIME); angleCounter_ = 0; }; if (waitCounter_ <= 0){ moveCounter_ = (moveCounter_ - _arg1); if (moveCounter_ <= 0){ waitCounter_ = genCounter(MIN_WAIT, MAX_WAIT); moveCounter_ = genCounter(MIN_MOVE, MAX_MOVE); genMove(); }; x_ = (x_ + (_arg1 * moveX_)); y_ = (y_ + (_arg1 * moveY_)); } else { waitCounter_ = (waitCounter_ - _arg1); }; } override public function hit(_arg1:Number, _arg2:Number, _arg3:Number):void{ strength = (strength - _arg3); if (strength <= 0){ alive = false; rippler_.add(x_, y_); }; sinceHit_ = 0.025; } override public function get collisionCircle():Circle{ collisionCircle_.x = x_; collisionCircle_.y = y_; return (collisionCircle_); } private function genCounter(_arg1:Number, _arg2:Number):Number{ return ((_arg1 + (Math.random() * (_arg2 - _arg1)))); } } }//package GameLevel
Section 99
//Shielded (GameLevel.Shielded) package GameLevel { import flash.display.*; import flash.geom.*; import GameLevel.Ripple.*; public class Shielded extends EnemyPlain { private var playfield_:Rectangle; private var rad_:Number; public function Shielded(_arg1:Rectangle, _arg2:DotsManager, _arg3:Rippler, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number, _arg8:BitmapData, _arg9:Number=300, _arg10:Number=3, _arg11:Number=18){ super(_arg2, _arg3, _arg4, _arg5, _arg6, _arg7, _arg8, _arg9, _arg10, _arg11, 1, -1, false); playfield_ = _arg1; rad_ = _arg11; var _local12:Point = new Point((_arg6 - x_), (_arg7 - y_)); _local12.normalize(_arg10); lastX_ = (x_ - _local12.x); lastY_ = (y_ - _local12.y); } private function steerFromEdge():void{ var _local1:Number; var _local5:Number; _local1 = 50; var _local2:Number = (1 / _local1); var _local3:Boolean; var _local4:Point = new Point((x_ - lastX_), (y_ - lastY_)); if (Math.abs((playfield_.left - x_)) < _local1){ _local3 = true; lastX_ = (lastX_ - (Math.abs((playfield_.left - x_)) * _local2)); }; if (Math.abs((playfield_.right - x_)) < _local1){ _local3 = true; lastX_ = (lastX_ + (Math.abs((playfield_.right - x_)) * _local2)); }; if (Math.abs((playfield_.top - y_)) < _local1){ _local3 = true; lastY_ = (lastY_ - (Math.abs((playfield_.top - y_)) * _local2)); }; if (Math.abs((playfield_.bottom - y_)) < _local1){ _local3 = true; lastY_ = (lastY_ + (Math.abs((playfield_.bottom - y_)) * _local2)); }; if (_local3){ _local5 = _local4.length; _local4.x = (x_ - lastX_); _local4.y = (y_ - lastY_); _local4.normalize(_local5); lastX_ = (x_ - _local4.x); lastY_ = (y_ - _local4.y); }; } override public function update(_arg1:Number, _arg2:Number, _arg3:Number):void{ steerFromEdge(); super.update(_arg1, _arg2, _arg3); } override public function hit(_arg1:Number, _arg2:Number, _arg3:Number):void{ var _local7:Point; var _local4:Point = new Point((x_ - lastX_), (y_ - lastY_)); var _local5:Point = new Point((x_ - _arg1), (y_ - _arg2)); _local4.normalize(1); _local5.normalize(1); var _local6 = (((_local4.x * _local5.x) + (_local4.y * _local5.y)) >= 0); if (_local6){ super.hit(_arg1, _arg2, _arg3); } else { _local7 = new Point((_arg1 - x_), (_arg2 - y_)); _local7.normalize(rad_); rippler_.add((x_ + _local7.x), (y_ + _local7.y), true); }; } } }//package GameLevel
Section 100
//Ship (GameLevel.Ship) package GameLevel { import flash.geom.*; public class Ship implements ICollisionCircle { public var ax_:Number; private var circle_:Circle; public var lastX_:Number; public var ay_:Number; private var lastDir_:int; public var x:Number; public var y:Number; public var lastY_:Number; public static const MAX_SPEED_SQR:Number = 36; public static const MAX_SPEED:Number = 6; public function Ship(){ x = (lastX_ = 320); y = (lastY_ = 240); circle_ = new Circle(x, y, 20); lastDir_ = 0; ax_ = (ay_ = 0); } public function left():void{ ax_ = -10000; setLastDir(); } public function update(_arg1:Number, _arg2:Rectangle):void{ var _local3:Number; var _local10:Number; _arg1 = (_arg1 * _arg1); _local3 = 0.045; var _local4:Number = (2 - _local3); var _local5:Number = (1 - _local3); var _local6:Number = (((_local4 * x) - (_local5 * lastX_)) + (ax_ * _arg1)); var _local7:Number = (((_local4 * y) - (_local5 * lastY_)) + (ay_ * _arg1)); lastX_ = x; lastY_ = y; x = _local6; y = _local7; var _local8:Number = (x - lastX_); var _local9:Number = (y - lastY_); if (((_local8 * _local8) + (_local9 * _local9)) > MAX_SPEED_SQR){ _local10 = Math.sqrt(((_local8 * _local8) + (_local9 * _local9))); _local8 = (_local8 / _local10); _local9 = (_local9 / _local10); _local8 = (_local8 * MAX_SPEED); _local9 = (_local9 * MAX_SPEED); x = (lastX_ + _local8); y = (lastY_ + _local9); }; ax_ = (ay_ = 0); if (x < _arg2.left){ lastX_ = x; x = _arg2.left; }; if (x > _arg2.right){ lastX_ = x; x = _arg2.right; }; if (y < _arg2.top){ lastY_ = y; y = _arg2.top; }; if (y > _arg2.bottom){ lastY_ = y; y = _arg2.bottom; }; } private function setLastDir():void{ if (ax_ == 0){ if (ay_ < 0){ lastDir_ = 0; } else { if (ay_ > 0){ lastDir_ = 4; }; }; }; if (ay_ == 0){ if (ax_ > 0){ lastDir_ = 6; } else { if (ax_ < 0){ lastDir_ = 2; }; }; }; if ((((ax_ > 0)) && ((ay_ > 0)))){ lastDir_ = 5; }; if ((((ax_ > 0)) && ((ay_ < 0)))){ lastDir_ = 7; }; if ((((ax_ < 0)) && ((ay_ > 0)))){ lastDir_ = 3; }; if ((((ax_ < 0)) && ((ay_ < 0)))){ lastDir_ = 1; }; } public function get lastDir():int{ return (lastDir_); } public function up():void{ ay_ = -10000; setLastDir(); } public function right():void{ ax_ = 10000; setLastDir(); } public function down():void{ ay_ = 10000; setLastDir(); } public function get collisionCircle():Circle{ circle_.x = x; circle_.y = y; return (circle_); } } }//package GameLevel
Section 101
//Smoother (GameLevel.Smoother) package GameLevel { public class Smoother { public var len:int; private var vals_:Array; public function Smoother(_arg1:int=20, _arg2:Number=0){ this.len = _arg1; vals_ = []; var _local3:int; while (_local3 < _arg1) { vals_.push(_arg2); _local3++; }; } public function get value():Number{ var _local2:Number; var _local1:Number = 0; for each (_local2 in vals_) { _local1 = (_local1 + _local2); }; return ((_local1 / vals_.length)); } public function update(_arg1:Number):void{ vals_.shift(); vals_.push(_arg1); } } }//package GameLevel
Section 102
//SnakeBit (GameLevel.SnakeBit) package GameLevel { import flash.display.*; import GameLevel.Ripple.*; public class SnakeBit extends Enemy { private var dieIn_:Number; private var circle_:Circle; private var dying_:Boolean; public var toFollow_:Enemy; private var posX_:Smoother; private var posY_:Smoother; private var rippler_:Rippler; private var lastX_:Number; private var lastY_:Number; private var head_:SnakeHead; private static const SMOOTHER_LEN:int = 7; public function SnakeBit(_arg1:Rippler, _arg2:SnakeHead, _arg3:BitmapData, _arg4:Enemy){ rippler_ = _arg1; super(_arg3); playerKilled = false; dots = 0; dying_ = false; dieIn_ = 0; head_ = _arg2; toFollow_ = _arg4; posX_ = new Smoother(SMOOTHER_LEN, toFollow_.xPos); posY_ = new Smoother(SMOOTHER_LEN, toFollow_.yPos); this.checkCol = false; x_ = (lastX_ = posX_.value); y_ = (lastY_ = posY_.value); circle_ = new Circle(x_, y_, 12); } override public function get rotation():Number{ return (Math.atan2((y_ - lastY_), (x_ - lastX_))); } override public function update(_arg1:Number, _arg2:Number, _arg3:Number):void{ if (!head_.alive){ head_.killSnake(); }; if (dying_){ dieIn_ = (dieIn_ - _arg1); if (dieIn_ <= 0){ this.alive = false; rippler_.add(x_, y_, true); }; }; lastX_ = x_; lastY_ = y_; x_ = posX_.value; y_ = posY_.value; posX_.update(toFollow_.xPos); posY_.update(toFollow_.yPos); circle_.x = x_; circle_.y = y_; } override public function hit(_arg1:Number, _arg2:Number, _arg3:Number):void{ rippler_.add(x_, y_, true); } override public function get collisionCircle():Circle{ return (circle_); } public function killIn(_arg1:Number):void{ dieIn_ = _arg1; dying_ = true; } override public function playerHit():void{ head_.killSnake(); } } }//package GameLevel
Section 103
//SnakeHead (GameLevel.SnakeHead) package GameLevel { import flash.display.*; import flash.geom.*; import GameLevel.Ripple.*; public class SnakeHead extends Enemy { private var enemyManager_:EnemyManager; private var hasKilled_:Boolean;// = false private var changeCounter_:Number; private var circle_:Circle; private var bits_:Array; private var rippler_:Rippler; private var playfield_:Rectangle; private var lastAngle_:Number; private var angle_:Number; private var accel_:Number; public static const ANGULAR_VEL:Number = 0.05; public static const SPEED:Number = 200; public static const ACCEL:Number = 10; public static const CHANGE:Number = 0.5; public function SnakeHead(_arg1:EnemyManager, _arg2:Number, _arg3:Number){ super(EnemyGFX.snakeHead); dots = 20; enemyManager_ = _arg1; playfield_ = enemyManager_.playfield_; rippler_ = enemyManager_.rippler_; x_ = _arg2; y_ = _arg3; circle_ = new Circle(x_, y_, 17); angle_ = (lastAngle_ = ((2 * Math.PI) * Math.random())); accel_ = 0; changeCounter_ = -9; bits_ = []; } public function killSnake():void{ var _local1:Number; var _local2:SnakeBit; if (!hasKilled_){ hasKilled_ = true; this.alive = false; _local1 = 0.06; for each (_local2 in bits_) { _local2.alive = false; }; }; } override public function update(_arg1:Number, _arg2:Number, _arg3:Number):void{ var _local6:Enemy; var _local7:Enemy; var _local8:int; var _local9:BitmapData; var _local10:SnakeBit; if (enemyManager_){ _local7 = this; _local8 = 15; while (_local8 >= 0) { switch (_local8){ case 0: _local9 = EnemyGFX.snakeBody4; break; case 1: _local9 = EnemyGFX.snakeBody3; break; case 2: _local9 = EnemyGFX.snakeBody2; break; case 3: _local9 = EnemyGFX.snakeBody1; break; default: _local9 = EnemyGFX.snakeBody; }; _local10 = new SnakeBit(rippler_, this, _local9, _local7); enemyManager_.add(_local10); _local7 = _local10; bits_.push(_local10); _local8--; }; enemyManager_ = null; }; var _local4:Number = (((2 * angle_) - lastAngle_) + ((_arg1 * _arg1) * accel_)); lastAngle_ = angle_; angle_ = _local4; var _local5:Number = (angle_ - lastAngle_); if (Math.abs(_local5) > ANGULAR_VEL){ if (_local5 > 0){ angle_ = (lastAngle_ + ANGULAR_VEL); } else { angle_ = (lastAngle_ - ANGULAR_VEL); }; }; x_ = (x_ + ((SPEED * _arg1) * Math.cos(angle_))); y_ = (y_ + ((SPEED * _arg1) * Math.sin(angle_))); changeCounter_ = (changeCounter_ - _arg1); if (changeCounter_ <= 0){ changeCounter_ = CHANGE; accel_ = (ACCEL * ((Math.random() > 0.5)) ? 1 : -1); }; steerFromEdge(); circle_.x = x_; circle_.y = y_; for each (_local6 in bits_) { if (!_local6.alive){ killSnake(); break; }; }; } override public function playerHit():void{ killSnake(); } override public function hit(_arg1:Number, _arg2:Number, _arg3:Number):void{ var _local4:Boolean = alive; super.hit(_arg1, _arg2, _arg3); if (((!(alive)) && (_local4))){ killSnake(); rippler_.add(x_, y_); }; } override public function get collisionCircle():Circle{ return (circle_); } private function steerFromEdge():void{ var _local3:Number; var _local4:Point; var _local5:Point; var _local6:Number; var _local1:Number = 50; var _local2:Number = -1; if ((((_local2 < 0)) && ((Math.abs((playfield_.left - x_)) < _local1)))){ _local2 = 0; }; if ((((_local2 < 0)) && ((Math.abs((playfield_.right - x_)) < _local1)))){ _local2 = Math.PI; }; if ((((_local2 < 0)) && ((Math.abs((playfield_.top - y_)) < _local1)))){ _local2 = (0.5 * Math.PI); }; if ((((_local2 < 0)) && ((Math.abs((playfield_.bottom - y_)) < _local1)))){ _local2 = (1.5 * Math.PI); }; if (_local2 >= -0.5){ _local3 = (angle_ - lastAngle_); _local4 = new Point(Math.cos(angle_), Math.sin(angle_)); _local5 = new Point(Math.cos(_local2), Math.sin(_local2)); _local6 = Math.acos(((_local4.x * _local5.x) + (_local4.y * _local5.y))); angle_ = (angle_ + (0.1 * _local6)); lastAngle_ = (angle_ - _local3); }; } override public function get rotation():Number{ return (angle_); } } }//package GameLevel
Section 104
//Spectrum (GameLevel.Spectrum) package GameLevel { import flash.display.*; public class Spectrum { public static var spectrum:BitmapData; public static function Load():void{ var _local1:Class = Spectrum_SPECTRUM; spectrum = ToBitmapData(new (_local1), false); } } }//package GameLevel
Section 105
//Spectrum_SPECTRUM (GameLevel.Spectrum_SPECTRUM) package GameLevel { import mx.core.*; public class Spectrum_SPECTRUM extends BitmapAsset { } }//package GameLevel
Section 106
//Spiker (GameLevel.Spiker) package GameLevel { public class Spiker extends Enemy { private var startY_:Number; private var dx_:Number; private var circle_:Circle; private var trailCounter_:Number; private var trail_:StarTrail; private var sinceMove_:Number; private var startX_:Number; private var dy_:Number; public static const TRAIL_TIME:Number = 0.1; public static const SPEED:Number = 250; public function Spiker(_arg1:StarTrail, _arg2:Number, _arg3:Number, _arg4:Number){ super(EnemyGFX.spiker); trailCounter_ = 0; trail_ = _arg1; sinceMove_ = 0; this.startX_ = _arg2; this.startY_ = _arg3; this.x_ = startX_; this.y_ = startY_; dx_ = (SPEED * Math.cos(_arg4)); dy_ = (SPEED * Math.sin(_arg4)); circle_ = new Circle(this.x_, this.y_, 12); this.dots = 0; playerKilled = false; mapColor = 16777164; } override public function update(_arg1:Number, _arg2:Number, _arg3:Number):void{ sinceMove_ = (sinceMove_ + _arg1); this.x_ = (startX_ + (sinceMove_ * dx_)); this.y_ = (startY_ + (sinceMove_ * dy_)); circle_.x = this.x_; circle_.y = this.y_; trailCounter_ = (trailCounter_ - _arg1); if (trailCounter_ < 0){ trailCounter_ = TRAIL_TIME; trail_.add(x_, y_, (x_ + Math.random()), (y_ + Math.random())); }; if ((((((((this.x_ < 20)) || ((this.y_ < 20)))) || ((this.x_ > (0x0500 + 20))))) || ((this.y_ > (960 + 10))))){ this.alive = false; }; } override public function hit(_arg1:Number, _arg2:Number, _arg3:Number):void{ } override public function get collisionCircle():Circle{ return (circle_); } override public function set yPos(_arg1:Number):void{ } override public function set xPos(_arg1:Number):void{ } override public function playerHit():void{ } override public function get rotation():Number{ return ((6 * sinceMove_)); } } }//package GameLevel
Section 107
//Spinner (GameLevel.Spinner) package GameLevel { import flash.display.*; import flash.geom.*; public class Spinner extends Enemy { private var cycleTime_:Number; private var r_:Number; public static const CYCLE_LENGTH:Number = 0.5; public function Spinner(_arg1:BitmapData, _arg2:Number, _arg3:Number){ super(_arg1); deadly = false; x_ = _arg2; y_ = _arg3; r_ = 0; cycleTime_ = 0; ct = new ColorTransform(0, 0, 0); } override public function get collisionCircle():Circle{ return (new Circle(-100, -100, 1)); } public function get color():uint{ return (Spectrum.spectrum.getPixel(((Spectrum.spectrum.width * cycleTime_) / CYCLE_LENGTH), 0)); } override public function update(_arg1:Number, _arg2:Number, _arg3:Number):void{ super.update(_arg1, _arg2, _arg3); playerKilled = false; cycleTime_ = (cycleTime_ + _arg1); cycleTime_ = (cycleTime_ % CYCLE_LENGTH); r_ = (r_ + ((2 * Math.PI) * _arg1)); r_ = (r_ % (2 * Math.PI)); var _local4:uint = color; var _local5:Number = ((_local4 & 0xFF0000) / 0xFF0000); var _local6:Number = ((_local4 & 0xFF00) / 0xFF00); var _local7:Number = ((_local4 & 0xFF) / 0xFF); ct.redMultiplier = _local5; ct.greenMultiplier = _local6; ct.blueMultiplier = _local7; } override public function hit(_arg1:Number, _arg2:Number, _arg3:Number):void{ } override public function get rotation():Number{ return (r_); } } }//package GameLevel
Section 108
//Splitter (GameLevel.Splitter) package GameLevel { import GameLevel.Ripple.*; public class Splitter extends EnemyPlain { private var enemyManager_:EnemyManager; private var dropCounter_:Number; private var r_:Number; private var dr_:Number; private var trail_:StarTrail; public static const DROP_TIME_MIN:Number = 0.01; public static const DROP_TIME_MAX:Number = 0.1; public function Splitter(_arg1:EnemyManager, _arg2:StarTrail, _arg3:DotsManager, _arg4:Rippler, _arg5:Number, _arg6:Number){ enemyManager_ = _arg1; trail_ = _arg2; r_ = ((2 * Math.PI) * Math.random()); dr_ = ((Math.random() > 0.5)) ? -1 : 1; dropCounter_ = (Math.random() * DROP_TIME_MIN); var _local7:Number = 24; super(_arg3, _arg4, _arg5, _arg6, 0, 0, EnemyGFX.splitter, 1500, 3, _local7, 1, -1, true); } override public function update(_arg1:Number, _arg2:Number, _arg3:Number):void{ var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; super.update(_arg1, _arg2, _arg3); dropCounter_ = (dropCounter_ - _arg1); if (dropCounter_ <= 0){ dropCounter_ = (DROP_TIME_MIN + (Math.random() * (DROP_TIME_MAX - DROP_TIME_MIN))); _local4 = (Math.atan2((lastY_ - yPos), (lastX_ - xPos)) + (((0.1 * Math.PI) * 2) * (Math.random() - 0.5))); _local5 = Math.cos(_local4); _local6 = Math.sin(_local4); _local7 = (xPos + (30 * _local5)); _local8 = (yPos + (30 * _local6)); _local9 = (1 + (Math.random() * 1)); trail_.add(_local7, _local8, (_local7 - (_local9 * _local5)), (_local8 - (_local9 * _local6))); }; r_ = (r_ + (_arg1 * dr_)); } override public function hit(_arg1:Number, _arg2:Number, _arg3:Number):void{ var _local5:Number; var _local6:int; var _local7:Enemy; var _local4:Boolean = alive; super.hit(_arg1, _arg2, _arg3); if (((!(alive)) && (_local4))){ _local5 = this.rotation; _local6 = 0; while (_local6 < 4) { _local7 = new Spiker(trail_, x_, y_, (_local5 + (((_local6 * 2) * Math.PI) / 4))); enemyManager_.add(_local7); _local6++; }; }; } override public function get rotation():Number{ return (r_); } } }//package GameLevel
Section 109
//StarTrail (GameLevel.StarTrail) package GameLevel { import flash.display.*; import flash.geom.*; public class StarTrail { private var stars_:Array; public function StarTrail(){ stars_ = []; } public function add(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):void{ var _local5:StarParticle = new StarParticle(); _local5.x = _arg1; _local5.y = _arg2; _local5.lastX = _arg3; _local5.lastY = _arg4; _local5.life = Math.random(); _local5.r = ((2 * Math.PI) * Math.random()); stars_.push(_local5); } public function draw(_arg1:BitmapData, _arg2:Camera):void{ var _local4:StarParticle; var _local5:Number; var _local3:Matrix = new Matrix(); for each (_local4 in stars_) { _local3.identity(); _local3.translate((-0.5 * GameGFX.starParticle.width), (-0.5 * GameGFX.starParticle.height)); _local5 = (1 - Math.pow(0.0001, _local4.life)); _local3.scale(_local5, _local5); _local3.rotate(_local4.r); _local3.translate((_local4.x - _arg2.x), (_local4.y - _arg2.y)); _arg1.draw(GameGFX.starParticle, _local3, _local4.ct); }; } public function update(_arg1:Number):void{ var _local5:StarParticle; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local2:Number = 0; var _local3:Number = 0; var _local4:Number = 0; for each (_local5 in stars_) { _local3 = (((2 - _local2) * _local5.x) - ((1 - _local2) * _local5.lastX)); _local4 = (((2 - _local2) * _local5.y) - ((1 - _local2) * _local5.lastY)); _local5.lastX = _local5.x; _local5.lastY = _local5.y; _local5.x = _local3; _local5.y = _local4; _local5.life = (_local5.life - _arg1); _local5.r = (_local5.r + (5 * _arg1)); _local6 = Math.random(); _local7 = Math.random(); _local8 = Math.random(); _local9 = Math.pow((((_local6 * _local6) + (_local7 * _local7)) + (_local8 * _local8)), (1 / 3)); if (0 == _local9){ _local8 = 0; _local7 = _local8; _local6 = _local7; } else { _local6 = (_local6 * (0.3 * _local9)); _local7 = (_local7 * (0.3 * 1)); _local8 = (_local8 * (0.3 * 1)); }; _local5.ct = new ColorTransform((1 - _local6), (1 - _local7), (1 - _local8), 1, Math.random(), Math.random(), (100 * Math.random())); }; stars_ = stars_.filter(deadFilter); } private function deadFilter(_arg1:StarParticle, _arg2:int, _arg3:Array):Boolean{ return ((_arg1.life > 0)); } } }//package GameLevel import flash.geom.*; class StarParticle { public var r:Number; public var lastX:Number; public var lastY:Number; public var ct:ColorTransform; public var x:Number; public var y:Number; public var life:Number; private function StarParticle(){ } }
Section 110
//TinyShip (GameLevel.TinyShip) package GameLevel { import flash.geom.*; public class TinyShip implements ICollisionCircle { private var phase_:Number; private var ax_:Number; public var target:Enemy; public var lastX_:Number; private var ay_:Number; private var shootCounter_:Number; public var angle_:Number; private var colCircle_:Circle; public var x:Number; public var y:Number; public var lastY_:Number; public static const MAX_SPEED_SQR:Number = 36; public static const RADIUS:Number = 10; public static const SHOOT_WAIT:Number = 0.8; public static const MAX_SPEED:Number = 6; public function TinyShip(){ lastX_ = (x = (Math.random() * 640)); lastY_ = (y = (Math.random() * 480)); colCircle_ = new Circle(x, y, RADIUS); ax_ = (ay_ = 0); shootCounter_ = SHOOT_WAIT; phase_ = ((2 * Math.PI) * Math.random()); angle_ = 0; } public function update(_arg1:Number, _arg2:DotsManager, _arg3:Array, _arg4:EnemyManager, _arg5:GameData, _arg6:Rectangle):void{ var _local7:Number; var _local15:Circle; var _local16:Dot; var _local17:Array; var _local18:Bullet; var _local19:Array; var _local20:Circle; var _local21:Enemy; var _local22:Number; var _local23:Number; var _local24:Number; var _local25:Point; var _local26:Point; var _local27:Number; if (shootCounter_ > 0){ shootCounter_ = (shootCounter_ - _arg1); }; if (((target) && (target.alive))){ _local22 = (target.xPos - x); _local23 = (target.yPos - y); _local24 = Math.sqrt(((_local22 * _local22) + (_local23 * _local23))); if (0 == _local24){ _local23 = 0; _local22 = _local23; } else { _local22 = (_local22 * (500 / _local24)); _local23 = (_local23 * (500 / _local24)); }; ax_ = _local22; ay_ = _local23; if (shootCounter_ <= 0){ shootCounter_ = SHOOT_WAIT; _local25 = new Point(_local22, _local23); _local25.normalize(((1.2 * RADIUS) + 5)); _arg5.bullets.shoot((x + _local25.x), (y + _local25.y), _local22, _local23, true, true); }; } else { ax_ = (500 * Math.cos(phase_)); ay_ = (500 * Math.sin((phase_ / 3))); }; phase_ = (phase_ + (3 * _arg1)); _local7 = 0.045; var _local8:Number = (2 - _local7); var _local9:Number = (1 - _local7); var _local10:Number = (((_local8 * x) - (_local9 * lastX_)) + ((ax_ * _arg1) * _arg1)); var _local11:Number = (((_local8 * y) - (_local9 * lastY_)) + ((ay_ * _arg1) * _arg1)); lastX_ = x; lastY_ = y; x = _local10; y = _local11; _local22 = (x - lastX_); _local23 = (y - lastY_); var _local12:Number = ((_local22 * _local22) + (_local23 * _local23)); if (_local12 > MAX_SPEED_SQR){ _local24 = Math.sqrt(((_local22 * _local22) + (_local23 * _local23))); _local22 = (_local22 / _local24); _local23 = (_local23 / _local24); _local22 = (_local22 * MAX_SPEED); _local23 = (_local23 * MAX_SPEED); x = (lastX_ + _local22); y = (lastY_ + _local23); }; if (_local12 > 0.01){ angle_ = Math.atan2(_local23, _local22); }; ax_ = (ay_ = 0); if (((!(target)) || (!(target.alive)))){ chooseTarget(_arg3); }; if (x < _arg6.left){ lastX_ = x; x = _arg6.left; }; if (x > _arg6.right){ lastX_ = x; x = _arg6.right; }; if (y < _arg6.top){ lastY_ = y; y = _arg6.top; }; if (y > _arg6.bottom){ lastY_ = y; y = _arg6.bottom; }; colCircle_.x = x; colCircle_.y = y; var _local13:Circle = _arg5.ship.collisionCircle; if (_local13.collidesWith(colCircle_)){ _local26 = new Point((_local13.x - x), (_local13.y - y)); _local26.normalize((_local13.radius + colCircle_.radius)); x = (_local13.x - _local26.x); y = (_local13.y - _local26.y); }; colCircle_.x = x; colCircle_.y = y; var _local14:Array = _arg2.grid.getNeighbours(this); for each (_local16 in _local14) { _local15 = _local16.collisionCircle; if (_local15.collidesWith(colCircle_)){ _local26 = new Point((colCircle_.x - _local15.x), (colCircle_.y - _local15.y)); _local27 = ((RADIUS + _local15.radius) - _local26.length); _local26.normalize(_local27); _local16.x = (_local16.x - _local26.x); _local16.xLast_ = (_local16.xLast_ - _local26.x); _local16.y = (_local16.y - _local26.y); _local16.yLast_ = (_local16.yLast_ - _local26.y); }; }; _local17 = _arg5.bullets.grid.getNeighbours(this); for each (_local18 in _local17) { if (_local18.collisionCircle.collidesWith(colCircle_)){ _local18.alive = false; }; }; _local19 = _arg4.grid.getNeighbours(this); for each (_local21 in _local19) { if (_local21.collisionCircle.collidesWith(colCircle_)){ _local20 = _local21.collisionCircle; _local26 = new Point((colCircle_.x - _local20.x), (colCircle_.y - _local20.y)); _local27 = ((RADIUS + _local20.radius) - _local26.length); _local26.normalize(_local27); x = (x + _local26.x); y = (y + _local26.y); }; }; colCircle_.x = x; colCircle_.y = y; } private function chooseTarget(_arg1:Array):void{ var _local3:Enemy; var _local4:Boolean; if (0 == _arg1.length){ return; }; var _local2:int; while ((((_local2 < _arg1.length)) && (((!(target)) || (!(target.alive)))))) { var _temp1 = _local2; _local2 = (_local2 + 1); _local3 = _arg1[_temp1]; _local4 = true; if ((_local3 is SnakeBit)){ _local4 = false; }; if ((_local3 is Ring)){ _local4 = false; }; if ((_local3 is Spinner)){ _local4 = false; }; if ((_local3 is Spiker)){ _local4 = false; }; if (((((_local3.alive) && (!(_local3.marked)))) && (_local4))){ target = _local3; _local3.marked = true; }; }; } public function get collisionCircle():Circle{ return (colCircle_); } } }//package GameLevel
Section 111
//TinyShipManager (GameLevel.TinyShipManager) package GameLevel { import flash.display.*; import flash.geom.*; public class TinyShipManager { private var tinyShips_:Array; private var gameData_:GameData; public function TinyShipManager(_arg1:GameData){ gameData_ = _arg1; tinyShips_ = []; } public function add():void{ tinyShips_.push(new TinyShip()); } public function draw(_arg1:BitmapData):void{ var _local4:TinyShip; var _local2:Matrix = new Matrix(); var _local3:BitmapData = GameGFX.shipTiny; for each (_local4 in tinyShips_) { _local2.identity(); _local2.translate((-0.5 * _local3.width), (-0.5 * _local3.height)); _local2.rotate(_local4.angle_); _local2.translate((_local4.x - gameData_.camera.x), (_local4.y - gameData_.camera.y)); _arg1.draw(_local3, _local2, null, null, null, true); }; } public function get ships():Array{ return (tinyShips_); } public function update(_arg1:Number, _arg2:DotsManager, _arg3:EnemyManager, _arg4:Rectangle):void{ var _local6:TinyShip; var _local5:Array = _arg3.enemies; for each (_local6 in tinyShips_) { _local6.update(_arg1, _arg2, _local5, _arg3, gameData_, _arg4); }; } public function get num():uint{ return (tinyShips_.length); } public function blast(_arg1:Point):void{ } } }//package GameLevel
Section 112
//ToBitmapData (GameLevel.ToBitmapData) package GameLevel { import flash.display.*; public function ToBitmapData(_arg1:DisplayObject, _arg2:Boolean=true):BitmapData{ var _local3:BitmapData = new BitmapData(_arg1.width, _arg1.height, _arg2, 0); _local3.draw(_arg1); return (_local3); } }//package GameLevel
Section 113
//Weaver (GameLevel.Weaver) package GameLevel { import flash.display.*; import flash.geom.*; import GameLevel.Ripple.*; public class Weaver extends EnemyPlain { private var bullets_:BulletManager; public function Weaver(_arg1:BulletManager, _arg2:DotsManager, _arg3:Rippler, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number, _arg8:BitmapData, _arg9:Number=1500, _arg10:Number=5.9, _arg11:Number=20, _arg12:int=1, _arg13:Number=-1, _arg14:Boolean=true){ bullets_ = _arg1; super(_arg2, _arg3, _arg4, _arg5, _arg6, _arg7, _arg8, _arg9, _arg10, _arg11, _arg12, _arg13, _arg14); } override public function update(_arg1:Number, _arg2:Number, _arg3:Number):void{ var _local4:Point; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Bullet; var _local11:Number; var _local13:Number; var _local14:Number; updateSize(_arg1); if (sinceHit_ > 0){ sinceHit_ = (sinceHit_ - _arg1); ct = hitTrans_; } else { ct = null; }; if (dieTimer_ > 0){ dieTimer_ = (dieTimer_ - _arg1); if (dieTimer_ <= 0){ hit(0, 0, 1000); }; }; _arg1 = (_arg1 * _arg1); _local4 = new Point((_arg2 - x_), (_arg3 - y_)); _local4.normalize(accel_); var _local5:Array = bullets_.grid.getNeighboursInRange(this, 150); for each (_local9 in _local5) { _local6 = (_local9.x - x_); _local7 = (_local9.y - y_); _local8 = ((_local6 * _local6) + (_local7 * _local7)); if (0 == _local8){ _local8 = Number.MIN_VALUE; }; if (_local8 < 50000){ _local4.x = (_local4.x - ((500000 / _local8) * (_local9.x - x_))); _local4.y = (_local4.y - ((500000 / _local8) * (_local9.y - y_))); _local4.x = (_local4.x + _local9.xSpeed); _local4.y = (_local4.y + _local9.ySpeed); }; }; var _local10:Number = (((2 * x_) - lastX_) + (_arg1 * _local4.x)); _local11 = (((2 * y_) - lastY_) + (_arg1 * _local4.y)); lastX_ = x_; lastY_ = y_; x_ = (_local10 + (0.1 * Math.random())); y_ = (_local11 + (0.1 * Math.random())); var _local12:Number = (x_ - lastX_); _local13 = (y_ - lastY_); _local14 = Math.sqrt(((_local12 * _local12) + (_local13 * _local13))); if (0 != _local14){ _local12 = (_local12 / _local14); _local13 = (_local13 / _local14); _local12 = (_local12 * maxSpeed_); _local13 = (_local13 * maxSpeed_); x_ = (lastX_ + _local12); y_ = (lastY_ + _local13); }; } } }//package GameLevel
Section 114
//HUDDisplay (HUD.HUDDisplay) package HUD { import flash.display.*; import GameLevel.*; import flash.text.*; import Shop.*; import GameLevel.Energy.*; public class HUDDisplay extends Sprite { private var pips_:TextField; private var gameData_:GameData; private var score_:TextField; private var bombText_:TextField; private var bombHolder_:Sprite; public var pause:TextField; private var energy_:EnergyBar; public function HUDDisplay(_arg1:GameData){ gameData_ = _arg1; energy_ = new EnergyBar(); energy_.x = (Global.SCREEN_WIDTH - 180); energy_.y = (-(Global.SCREEN_HEIGHT) + 24); addChild(energy_); var _local2:TextField = makeTF(); _local2.text = "Energy:"; _local2.x = (Global.SCREEN_WIDTH - 190); _local2.y = 0; addChild(_local2); pips_ = makeTF(); addChild(pips_); pips_.text = "Pips: 123,4567890"; pips_.x = 5; pips_.y = (Global.SCREEN_HEIGHT - pips_.height); score_ = makeTF(); addChild(score_); score_.text = "Score: 123,4567890"; score_.x = 5; score_.y = 0; bombHolder_ = new Sprite(); addChild(bombHolder_); bombText_ = makeTF(); var _local3:Class = HUDDisplay_BOMB; var _local4:DisplayObject = new (_local3); bombHolder_.addChild(_local4); bombHolder_.addChild(bombText_); bombText_.x = (_local4.width + 4); bombText_.text = "12"; bombHolder_.x = (0.5 * (Global.SCREEN_WIDTH - bombHolder_.width)); bombHolder_.y = (Global.SCREEN_HEIGHT - bombHolder_.height); _local4.y = (_local4.y + 7); draw(); pause = makeTF(); pause.text = "ESC / Q for shop"; pause.x = (0.5 * (Global.SCREEN_WIDTH - pause.width)); pause.y = 0; addChild(pause); } public function draw():void{ energy_.draw((gameData_.energy.val / 100)); pips_.text = ("Pips: " + ShopBox.addCommas(String(gameData_.balance.val))); score_.text = ("Score: " + ShopBox.addCommas(String(gameData_.score.val))); bombText_.text = String(gameData_.bombs.val); } public static function makeTF(_arg1:int=20):TextField{ var _local2:TextFormat = new TextFormat(); _local2.font = Fonts.DEFAULT_FONT; _local2.color = 0xFFFFFF; _local2.size = _arg1; var _local3:TextField = new TextField(); _local3.embedFonts = true; _local3.defaultTextFormat = _local2; _local3.selectable = false; _local3.antiAliasType = AntiAliasType.ADVANCED; _local3.sharpness = 400; _local3.autoSize = TextFieldAutoSize.LEFT; return (_local3); } } }//package HUD
Section 115
//HUDDisplay_BOMB (HUD.HUDDisplay_BOMB) package HUD { import mx.core.*; public class HUDDisplay_BOMB extends BitmapAsset { } }//package HUD
Section 116
//LeaderboardSection (Leaderboard.LeaderboardSection) package Leaderboard { import flash.display.*; import flash.geom.*; import GameLevel.*; import mochi.*; import Titles.*; import flash.ui.*; public class LeaderboardSection implements IGameSection { private var nextSection_:IGameSection; private var holder_:Sprite; public function LeaderboardSection(_arg1:GameData, _arg2:DisplayObject){ holder_ = new Sprite(); super(); Mouse.show(); if (Global.k){ Global.k.scores.submit(_arg1.score.val); }; nextSection_ = this; addBg(_arg2); var _local3:MovieClip = new MovieClip(); holder_.addChild(_local3); var _local4 = "95a8bfc9125ad84a"; MochiScores.showLeaderboard({boardID:deRot(_local4), score:_arg1.score.val, clip:_local3, res:"700x500", onClose:close}); } public function draw():void{ } public function update():IGameSection{ return (nextSection_); } public function getGraphic():DisplayObject{ return (holder_); } private function addBg(_arg1:DisplayObject):void{ var _local2:BitmapData = new BitmapData(_arg1.width, _arg1.height, false, 0); _local2.draw(_arg1); var _local3:Bitmap = new Bitmap(_local2); _local2.colorTransform(_local2.rect, new ColorTransform(0.5, 0.5, 0.5)); holder_.addChild(_local3); } private function deRot(_arg1:String):String{ var _local2 = ""; var _local3:int = (_arg1.length - 1); while (_local3 >= 0) { _local2 = (_local2 + _arg1.charAt(_local3)); _local3--; }; return (_local2); } private function close():void{ nextSection_ = new TitleSection(); } } }//package Leaderboard
Section 117
//MochiDigits (mochi.MochiDigits) package mochi { public final class MochiDigits { private var Sibling:MochiDigits; private var Fragment:Number; private var Encoder:Number; public function MochiDigits(_arg1:Number=0, _arg2:uint=0):void{ Encoder = 0; setValue(_arg1, _arg2); } public function reencode():void{ var _local1:uint = int((2147483647 * Math.random())); Fragment = (Fragment ^ (_local1 ^ Encoder)); Encoder = _local1; } public function set value(_arg1:Number):void{ setValue(_arg1); } public function toString():String{ var _local1:String = String.fromCharCode((Fragment ^ Encoder)); if (Sibling != null){ _local1 = (_local1 + Sibling.toString()); }; return (_local1); } public function setValue(_arg1:Number=0, _arg2:uint=0):void{ var _local3:String = _arg1.toString(); var _temp1 = _arg2; _arg2 = (_arg2 + 1); Fragment = (_local3.charCodeAt(_temp1) ^ Encoder); if (_arg2 < _local3.length){ Sibling = new MochiDigits(_arg1, _arg2); } else { Sibling = null; }; reencode(); } public function get value():Number{ return (Number(this.toString())); } public function addValue(_arg1:Number):void{ value = (value + _arg1); } } }//package mochi
Section 118
//MochiScores (mochi.MochiScores) package mochi { import flash.display.*; import flash.text.*; public class MochiScores { private static var boardID:String; public static var onErrorHandler:Object; public static var onCloseHandler:Object; public static function showLeaderboard(_arg1:Object=null):void{ var n:Number; var options = _arg1; if (options != null){ if (options.clip != null){ if ((options.clip is Sprite)){ MochiServices.setContainer(options.clip); }; delete options.clip; } else { MochiServices.setContainer(); }; MochiServices.stayOnTop(); if (options.name != null){ if ((options.name is TextField)){ if (options.name.text.length > 0){ options.name = options.name.text; }; }; }; if (options.score != null){ if ((options.score is TextField)){ if (options.score.text.length > 0){ options.score = options.score.text; }; } else { if ((options.score is MochiDigits)){ options.score = options.score.value; }; }; n = Number(options.score); if (isNaN(n)){ trace((("ERROR: Submitted score '" + options.score) + "' will be rejected, score is 'Not a Number'")); } else { if ((((n == Number.NEGATIVE_INFINITY)) || ((n == Number.POSITIVE_INFINITY)))){ trace((("ERROR: Submitted score '" + options.score) + "' will be rejected, score is an infinite")); } else { if (Math.floor(n) != n){ trace((("WARNING: Submitted score '" + options.score) + "' will be truncated")); }; options.score = n; }; }; }; if (options.onDisplay != null){ options.onDisplay(); } else { if (MochiServices.clip != null){ if ((MochiServices.clip is MovieClip)){ MochiServices.clip.stop(); } else { trace("Warning: Container is not a MovieClip, cannot call default onDisplay."); }; }; }; } else { options = {}; if ((MochiServices.clip is MovieClip)){ MochiServices.clip.stop(); } else { trace("Warning: Container is not a MovieClip, cannot call default onDisplay."); }; }; if (options.onClose != null){ onCloseHandler = options.onClose; } else { onCloseHandler = function ():void{ if ((MochiServices.clip is MovieClip)){ MochiServices.clip.play(); } else { trace("Warning: Container is not a MovieClip, cannot call default onClose."); }; }; }; if (options.onError != null){ onErrorHandler = options.onError; } else { onErrorHandler = null; }; if (options.boardID == null){ if (MochiScores.boardID != null){ options.boardID = MochiScores.boardID; }; }; MochiServices.send("scores_showLeaderboard", {options:options}, null, onClose); } public static function closeLeaderboard():void{ MochiServices.send("scores_closeLeaderboard"); } public static function getPlayerInfo(_arg1:Object, _arg2:Object=null):void{ MochiServices.send("scores_getPlayerInfo", null, _arg1, _arg2); } public static function requestList(_arg1:Object, _arg2:Object=null):void{ MochiServices.send("scores_requestList", null, _arg1, _arg2); } public static function scoresArrayToObjects(_arg1:Object):Object{ var _local3:Number; var _local4:Number; var _local5:Object; var _local6:Object; var _local7:String; var _local8:String; var _local2:Object = {}; for (_local7 in _arg1) { if (typeof(_arg1[_local7]) == "object"){ if (((!((_arg1[_local7].cols == null))) && (!((_arg1[_local7].rows == null))))){ _local2[_local7] = []; _local5 = _arg1[_local7]; _local4 = 0; while (_local4 < _local5.rows.length) { _local6 = {}; _local3 = 0; while (_local3 < _local5.cols.length) { _local6[_local5.cols[_local3]] = _local5.rows[_local4][_local3]; _local3++; }; _local2[_local7].push(_local6); _local4++; }; } else { _local2[_local7] = {}; for (_local8 in _arg1[_local7]) { _local2[_local7][_local8] = _arg1[_local7][_local8]; }; }; } else { _local2[_local7] = _arg1[_local7]; }; }; return (_local2); } public static function submit(_arg1:Number, _arg2:String, _arg3:Object=null, _arg4:Object=null):void{ _arg1 = Number(_arg1); if (isNaN(_arg1)){ trace((("ERROR: Submitted score '" + String(_arg1)) + "' will be rejected, score is 'Not a Number'")); } else { if ((((_arg1 == Number.NEGATIVE_INFINITY)) || ((_arg1 == Number.POSITIVE_INFINITY)))){ trace((("ERROR: Submitted score '" + String(_arg1)) + "' will be rejected, score is an infinite")); } else { if (Math.floor(_arg1) != _arg1){ trace((("WARNING: Submitted score '" + String(_arg1)) + "' will be truncated")); }; _arg1 = Number(_arg1); }; }; MochiServices.send("scores_submit", {score:_arg1, name:_arg2}, _arg3, _arg4); } public static function onClose(_arg1:Object=null):void{ if (_arg1 != null){ if (_arg1.error != null){ if (_arg1.error == true){ if (onErrorHandler != null){ if (_arg1.errorCode == null){ _arg1.errorCode = "IOError"; }; onErrorHandler(_arg1.errorCode); MochiServices.doClose(); return; }; }; }; }; onCloseHandler(); MochiServices.doClose(); } public static function setBoardID(_arg1:String):void{ MochiScores.boardID = _arg1; MochiServices.send("scores_setBoardID", {boardID:_arg1}); } } }//package mochi
Section 119
//MochiServices (mochi.MochiServices) package mochi { import flash.events.*; import flash.display.*; import flash.system.*; import flash.geom.*; import flash.utils.*; import flash.net.*; public class MochiServices { private static var _container:Object; private static var _connected:Boolean = false; private static var _swfVersion:String; public static var netupAttempted:Boolean = false; private static var _sendChannel:LocalConnection; private static var _clip:MovieClip; private static var _loader:Loader; private static var _id:String; private static var _listenChannel:LocalConnection; private static var _timer:Timer; private static var _sendChannelName:String; private static var _startTime:Number; private static var _connecting:Boolean = false; public static var onError:Object; private static var _listenChannelName:String = "__ms_"; private static var _servicesURL:String = "http://www.mochiads.com/static/lib/services/services.swf"; public static var netup:Boolean = true; public static function isNetworkAvailable():Boolean{ return (!((Security.sandboxType == "localWithFile"))); } public static function send(_arg1:String, _arg2:Object=null, _arg3:Object=null, _arg4:Object=null):void{ if (_connected){ _sendChannel.send(_sendChannelName, "onReceive", {methodName:_arg1, args:_arg2, callbackID:_clip._nextcallbackID}); } else { if ((((_clip == null)) || (!(_connecting)))){ onError("NotConnected"); handleError(_arg2, _arg3, _arg4); flush(true); return; }; _clip._queue.push({methodName:_arg1, args:_arg2, callbackID:_clip._nextcallbackID}); }; if (_clip != null){ if (((!((_clip._callbacks == null))) && (!((_clip._nextcallbackID == null))))){ _clip._callbacks[_clip._nextcallbackID] = {callbackObject:_arg3, callbackMethod:_arg4}; _clip._nextcallbackID++; }; }; } public static function get connected():Boolean{ return (_connected); } private static function flush(_arg1:Boolean):void{ var _local2:Object; var _local3:Object; if (_clip != null){ if (_clip._queue != null){ while (_clip._queue.length > 0) { _local2 = _clip._queue.shift(); _local3 = null; if (_local2 != null){ if (_local2.callbackID != null){ _local3 = _clip._callbacks[_local2.callbackID]; }; delete _clip._callbacks[_local2.callbackID]; if (((_arg1) && (!((_local3 == null))))){ handleError(_local2.args, _local3.callbackObject, _local3.callbackMethod); }; }; }; }; }; } private static function clickMovie(_arg1:String, _arg2:Function):MovieClip{ var _local4:int; var _local14:Loader; var _local3:Array = [150, 21, 0, 7, 1, 0, 0, 0, 0, 98, 116, 110, 0, 7, 2, 0, 0, 0, 0, 116, 104, 105, 115, 0, 28, 150, 22, 0, 0, 99, 114, 101, 97, 116, 101, 69, 109, 112, 116, 121, 77, 111, 118, 105, 101, 67, 108, 105, 112, 0, 82, 135, 1, 0, 0, 23, 150, 13, 0, 4, 0, 0, 111, 110, 82, 101, 108, 101, 97, 115, 101, 0, 142, 8, 0, 0, 0, 0, 2, 42, 0, 114, 0, 150, 17, 0, 0, 32, 0, 7, 1, 0, 0, 0, 8, 0, 0, 115, 112, 108, 105, 116, 0, 82, 135, 1, 0, 1, 23, 150, 7, 0, 4, 1, 7, 0, 0, 0, 0, 78, 150, 8, 0, 0, 95, 98, 108, 97, 110, 107, 0, 154, 1, 0, 0, 150, 7, 0, 0, 99, 108, 105, 99, 107, 0, 150, 7, 0, 4, 1, 7, 1, 0, 0, 0, 78, 150, 27, 0, 7, 2, 0, 0, 0, 7, 0, 0, 0, 0, 0, 76, 111, 99, 97, 108, 67, 111, 110, 110, 101, 99, 116, 105, 111, 110, 0, 64, 150, 6, 0, 0, 115, 101, 110, 100, 0, 82, 79, 150, 15, 0, 4, 0, 0, 95, 97, 108, 112, 104, 97, 0, 7, 0, 0, 0, 0, 79, 150, 23, 0, 7, 0xFF, 0, 0xFF, 0, 7, 1, 0, 0, 0, 4, 0, 0, 98, 101, 103, 105, 110, 70, 105, 108, 108, 0, 82, 23, 150, 25, 0, 7, 0, 0, 0, 0, 7, 0, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 109, 111, 118, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 100, 0, 0, 0, 7, 0, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 100, 0, 0, 0, 7, 100, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 0, 0, 0, 0, 7, 100, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 0, 0, 0, 0, 7, 0, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 16, 0, 7, 0, 0, 0, 0, 4, 0, 0, 101, 110, 100, 70, 105, 108, 108, 0, 82, 23]; var _local5:Array = [104, 0, 31, 64, 0, 7, 208, 0, 0, 12, 1, 0, 67, 2, 0xFF, 0xFF, 0xFF, 63, 3]; var _local6:Array = [0, 64, 0, 0, 0]; var _local7:MovieClip = new MovieClip(); var _local8:LocalConnection = new LocalConnection(); var _local9:String = ((("_click_" + Math.floor((Math.random() * 999999))) + "_") + Math.floor(new Date().getTime())); _local8 = new LocalConnection(); _local7.lc = _local8; _local7.click = _arg2; _local8.client = _local7; _local8.connect(_local9); var _local10:ByteArray = new ByteArray(); var _local11:ByteArray = new ByteArray(); _local11.endian = Endian.LITTLE_ENDIAN; _local11.writeShort(1); _local11.writeUTFBytes(((_arg1 + " ") + _local9)); _local11.writeByte(0); var _local12:uint = ((_local3.length + _local11.length) + 4); var _local13:uint = (_local12 + 35); _local10.endian = Endian.LITTLE_ENDIAN; _local10.writeUTFBytes("FWS"); _local10.writeByte(8); _local10.writeUnsignedInt(_local13); for each (_local4 in _local5) { _local10.writeByte(_local4); }; _local10.writeUnsignedInt(_local12); _local10.writeByte(136); _local10.writeShort(_local11.length); _local10.writeBytes(_local11); for each (_local4 in _local3) { _local10.writeByte(_local4); }; for each (_local4 in _local6) { _local10.writeByte(_local4); }; _local14 = new Loader(); _local14.loadBytes(_local10); _local7.addChild(_local14); return (_local7); } private static function init(_arg1:String, _arg2:Object):void{ _id = _arg1; if (_arg2 != null){ _container = _arg2; loadCommunicator(_arg1, _container); }; } public static function get childClip():Object{ return (_clip); } public static function stayOnTop():void{ _container.addEventListener(Event.ENTER_FRAME, MochiServices.bringToTop, false, 0, true); if (_clip != null){ _clip.visible = true; }; } public static function addLinkEvent(_arg1:String, _arg2:String, _arg3:DisplayObjectContainer, _arg4:Function=null):void{ var avm1Click:DisplayObject; var x:String; var req:URLRequest; var loader:Loader; var setURL:Function; var err:Function; var complete:Function; var url = _arg1; var burl = _arg2; var btn = _arg3; var onClick = _arg4; var vars:Object = new Object(); vars["mav"] = getVersion(); vars["swfv"] = "9"; vars["swfurl"] = btn.loaderInfo.loaderURL; vars["fv"] = Capabilities.version; vars["os"] = Capabilities.os; vars["lang"] = Capabilities.language; vars["scres"] = ((Capabilities.screenResolutionX + "x") + Capabilities.screenResolutionY); var s = "?"; var i:Number = 0; for (x in vars) { if (i != 0){ s = (s + "&"); }; i = (i + 1); s = (((s + x) + "=") + escape(vars[x])); }; req = new URLRequest("http://x.mochiads.com/linkping.swf"); loader = new Loader(); setURL = function (_arg1:String):void{ if (avm1Click){ btn.removeChild(avm1Click); }; avm1Click = clickMovie(_arg1, onClick); var _local2:Rectangle = btn.getBounds(btn); btn.addChild(avm1Click); avm1Click.x = _local2.x; avm1Click.y = _local2.y; avm1Click.scaleX = (0.01 * _local2.width); avm1Click.scaleY = (0.01 * _local2.height); }; err = function (_arg1:Object):void{ netup = false; _arg1.target.removeEventListener(_arg1.type, arguments.callee); setURL(burl); }; complete = function (_arg1:Object):void{ _arg1.target.removeEventListener(_arg1.type, arguments.callee); }; if (netup){ setURL((url + s)); } else { setURL(burl); }; if (!((netupAttempted) || (_connected))){ netupAttempted = true; loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, err); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, complete); loader.load(req); }; } public static function disconnect():void{ if (((_connected) || (_connecting))){ if (_clip != null){ if (_clip.parent != null){ if ((_clip.parent is Sprite)){ Sprite(_clip.parent).removeChild(_clip); _clip = null; }; }; }; _connecting = (_connected = false); flush(true); try { _listenChannel.close(); } catch(error:Error) { }; }; if (_timer != null){ try { _timer.stop(); } catch(error:Error) { }; }; } public static function allowDomains(_arg1:String):String{ var _local2:String; if (Security.sandboxType != "application"){ Security.allowDomain("*"); Security.allowInsecureDomain("*"); }; if (_arg1.indexOf("http://") != -1){ _local2 = _arg1.split("/")[2].split(":")[0]; if (Security.sandboxType != "application"){ Security.allowDomain("*"); Security.allowInsecureDomain("*"); }; }; return (_local2); } public static function getVersion():String{ return ("1.43"); } public static function doClose():void{ _container.removeEventListener(Event.ENTER_FRAME, MochiServices.bringToTop); if (_clip.parent != null){ Sprite(_clip.parent).removeChild(_clip); }; } private static function onStatus(_arg1:StatusEvent):void{ switch (_arg1.level){ case "error": _connected = false; _listenChannel.connect(_listenChannelName); break; }; } public static function get id():String{ return (_id); } private static function urlOptions(_arg1:Object):Object{ var _local4:Array; var _local5:Number; var _local6:Array; var _local2:Object = {}; var _local3:String = _arg1.loaderInfo.parameters.mochiad_options; if (_local3){ _local4 = _local3.split("&"); _local5 = 0; while (_local5 < _local4.length) { _local6 = _local4[_local5].split("="); _local2[unescape(_local6[0])] = unescape(_local6[1]); _local5++; }; }; return (_local2); } public static function setContainer(_arg1:Object=null, _arg2:Boolean=true):void{ if (_arg1 != null){ if ((_arg1 is Sprite)){ _container = _arg1; }; }; if (_arg2){ if ((_container is Sprite)){ Sprite(_container).addChild(_clip); }; }; } private static function handleError(_arg1:Object, _arg2:Object, _arg3:Object):void{ var args = _arg1; var callbackObject = _arg2; var callbackMethod = _arg3; if (args != null){ if (args.onError != null){ args.onError.apply(null, ["NotConnected"]); }; if (((!((args.options == null))) && (!((args.options.onError == null))))){ args.options.onError.apply(null, ["NotConnected"]); }; }; if (callbackMethod != null){ args = {}; args.error = true; args.errorCode = "NotConnected"; if (((!((callbackObject == null))) && ((callbackMethod is String)))){ try { var _local5 = callbackObject; _local5[callbackMethod](args); } catch(error:Error) { }; } else { if (callbackMethod != null){ try { callbackMethod.apply(args); } catch(error:Error) { }; }; }; }; } private static function initComChannels():void{ if (!_connected){ _sendChannel.addEventListener(StatusEvent.STATUS, MochiServices.onStatus); _sendChannel.send(_sendChannelName, "onReceive", {methodName:"handshakeDone"}); _sendChannel.send(_sendChannelName, "onReceive", {methodName:"registerGame", id:_id, clip:_container, version:getVersion(), parentURL:_container.loaderInfo.loaderURL}); _listenChannel.addEventListener(StatusEvent.STATUS, MochiServices.onStatus); _clip.onReceive = function (_arg1:Object):void{ var methodName:String; var pkg = _arg1; var cb:String = pkg.callbackID; var cblst:Object = this.client._callbacks[cb]; if (!cblst){ return; }; var method:* = cblst.callbackMethod; methodName = ""; var obj:Object = cblst.callbackObject; if (((obj) && ((typeof(method) == "string")))){ methodName = method; if (obj[method] != null){ method = obj[method]; } else { trace((("Error: Method " + method) + " does not exist.")); }; }; if (method != undefined){ try { method.apply(obj, pkg.args); } catch(error:Error) { trace(((("Error invoking callback method '" + methodName) + "': ") + error.toString())); }; } else { if (obj != null){ try { obj(pkg.args); } catch(error:Error) { trace(("Error invoking method on object: " + error.toString())); }; }; }; delete this.client._callbacks[cb]; }; _clip.onError = function ():void{ MochiServices.onError("IOError"); }; trace("connected!"); _connecting = false; _connected = true; while (_clip._queue.length > 0) { _sendChannel.send(_sendChannelName, "onReceive", _clip._queue.shift()); }; }; } private static function listen():void{ _listenChannel = new LocalConnection(); _listenChannel.client = _clip; _clip.handshake = function (_arg1:Object):void{ MochiServices.comChannelName = _arg1.newChannel; }; _listenChannel.allowDomain("*", "localhost"); _listenChannel.allowInsecureDomain("*", "localhost"); _listenChannel.connect(_listenChannelName); trace("Waiting for MochiAds services to connect..."); } public static function set comChannelName(_arg1:String):void{ if (_arg1 != null){ if (_arg1.length > 3){ _sendChannelName = (_arg1 + "_fromgame"); initComChannels(); }; }; } private static function loadCommunicator(_arg1:String, _arg2:Object):MovieClip{ var id = _arg1; var clip = _arg2; var clipname:String = ("_mochiservices_com_" + id); if (_clip != null){ return (_clip); }; if (!MochiServices.isNetworkAvailable()){ return (null); }; if (urlOptions(clip).servicesURL != undefined){ _servicesURL = urlOptions(clip).servicesURL; }; MochiServices.allowDomains(_servicesURL); _clip = createEmptyMovieClip(clip, clipname, 10336, false); _loader = new Loader(); _timer = new Timer(1000, 0); _startTime = getTimer(); _timer.addEventListener(TimerEvent.TIMER, connectWait); _timer.start(); var f:Function = function (_arg1:Object):void{ _clip._mochiad_ctr_failed = true; trace("MochiServices could not load."); MochiServices.disconnect(); MochiServices.onError("IOError"); }; _listenChannelName = (_listenChannelName + ((Math.floor(new Date().getTime()) + "_") + Math.floor((Math.random() * 99999)))); _loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, f); var req:URLRequest = new URLRequest(_servicesURL); var vars:URLVariables = new URLVariables(); vars.listenLC = _listenChannelName; vars.mochiad_options = clip.loaderInfo.parameters.mochiad_options; req.data = vars; _loader.load(req); _clip.addChild(_loader); _clip._mochiservices_com = _loader; _sendChannel = new LocalConnection(); _clip._queue = []; _clip._nextcallbackID = 0; _clip._callbacks = {}; listen(); return (_clip); } public static function get clip():Object{ return (_container); } public static function bringToTop(_arg1:Event):void{ var e = _arg1; if (MochiServices.clip != null){ if (MochiServices.childClip != null){ try { if (MochiServices.clip.numChildren > 1){ MochiServices.clip.setChildIndex(MochiServices.childClip, (MochiServices.clip.numChildren - 1)); }; } catch(errorObject:Error) { trace("Warning: Depth sort error."); _container.removeEventListener(Event.ENTER_FRAME, MochiServices.bringToTop); }; }; }; } public static function connect(_arg1:String, _arg2:Object, _arg3:Object=null):void{ var id = _arg1; var clip = _arg2; var onError = _arg3; if ((clip is DisplayObject)){ if (((!(_connected)) && ((_clip == null)))){ trace("MochiServices Connecting..."); _connecting = true; init(id, clip); }; } else { trace("Error, MochiServices requires a Sprite, Movieclip or instance of the stage."); }; if (onError != null){ MochiServices.onError = onError; } else { if (MochiServices.onError == null){ MochiServices.onError = function (_arg1:String):void{ trace(_arg1); }; }; }; } public static function createEmptyMovieClip(_arg1:Object, _arg2:String, _arg3:Number, _arg4:Boolean=true):MovieClip{ var parent = _arg1; var name = _arg2; var depth = _arg3; var doAdd = _arg4; var mc:MovieClip = new MovieClip(); if (doAdd){ if (((false) && (depth))){ parent.addChildAt(mc, depth); } else { parent.addChild(mc); }; }; try { parent[name] = mc; } catch(e:Error) { throw (new Error("MochiServices requires a clip that is an instance of a dynamic class. If your class extends Sprite or MovieClip, you must make it dynamic.")); }; mc["_name"] = name; return (mc); } public static function connectWait(_arg1:TimerEvent):void{ if ((getTimer() - _startTime) > 10000){ if (!_connected){ _clip._mochiad_ctr_failed = true; trace("MochiServices could not load."); MochiServices.disconnect(); MochiServices.onError("IOError"); }; _timer.stop(); }; } } }//package mochi
Section 120
//BitmapAsset (mx.core.BitmapAsset) package mx.core { import flash.display.*; public class BitmapAsset extends FlexBitmap implements IFlexAsset, IFlexDisplayObject { mx_internal static const VERSION:String = "3.2.0.3958"; public function BitmapAsset(_arg1:BitmapData=null, _arg2:String="auto", _arg3:Boolean=false){ super(_arg1, _arg2, _arg3); } public function get measuredWidth():Number{ if (bitmapData){ return (bitmapData.width); }; return (0); } public function get measuredHeight():Number{ if (bitmapData){ return (bitmapData.height); }; return (0); } public function setActualSize(_arg1:Number, _arg2:Number):void{ width = _arg1; height = _arg2; } public function move(_arg1:Number, _arg2:Number):void{ this.x = _arg1; this.y = _arg2; } } }//package mx.core
Section 121
//ByteArrayAsset (mx.core.ByteArrayAsset) package mx.core { import flash.utils.*; public class ByteArrayAsset extends ByteArray implements IFlexAsset { mx_internal static const VERSION:String = "3.2.0.3958"; } }//package mx.core
Section 122
//EdgeMetrics (mx.core.EdgeMetrics) package mx.core { public class EdgeMetrics { public var top:Number; public var left:Number; public var bottom:Number; public var right:Number; mx_internal static const VERSION:String = "3.2.0.3958"; public static const EMPTY:EdgeMetrics = new EdgeMetrics(0, 0, 0, 0); ; public function EdgeMetrics(_arg1:Number=0, _arg2:Number=0, _arg3:Number=0, _arg4:Number=0){ this.left = _arg1; this.top = _arg2; this.right = _arg3; this.bottom = _arg4; } public function clone():EdgeMetrics{ return (new EdgeMetrics(left, top, right, bottom)); } } }//package mx.core
Section 123
//FlexBitmap (mx.core.FlexBitmap) package mx.core { import flash.display.*; import mx.utils.*; public class FlexBitmap extends Bitmap { mx_internal static const VERSION:String = "3.2.0.3958"; public function FlexBitmap(_arg1:BitmapData=null, _arg2:String="auto", _arg3:Boolean=false){ var bitmapData = _arg1; var pixelSnapping = _arg2; var smoothing = _arg3; super(bitmapData, pixelSnapping, smoothing); try { name = NameUtil.createUniqueName(this); } catch(e:Error) { }; } override public function toString():String{ return (NameUtil.displayObjectToString(this)); } } }//package mx.core
Section 124
//FlexLoader (mx.core.FlexLoader) package mx.core { import flash.display.*; import mx.utils.*; public class FlexLoader extends Loader { mx_internal static const VERSION:String = "3.2.0.3958"; public function FlexLoader(){ super(); try { name = NameUtil.createUniqueName(this); } catch(e:Error) { }; } override public function toString():String{ return (NameUtil.displayObjectToString(this)); } } }//package mx.core
Section 125
//FlexShape (mx.core.FlexShape) package mx.core { import flash.display.*; import mx.utils.*; public class FlexShape extends Shape { mx_internal static const VERSION:String = "3.2.0.3958"; public function FlexShape(){ super(); try { name = NameUtil.createUniqueName(this); } catch(e:Error) { }; } override public function toString():String{ return (NameUtil.displayObjectToString(this)); } } }//package mx.core
Section 126
//FlexVersion (mx.core.FlexVersion) package mx.core { import mx.resources.*; public class FlexVersion { public static const VERSION_2_0_1:uint = 33554433; public static const CURRENT_VERSION:uint = 50331648; public static const VERSION_3_0:uint = 50331648; public static const VERSION_2_0:uint = 33554432; public static const VERSION_ALREADY_READ:String = "versionAlreadyRead"; public static const VERSION_ALREADY_SET:String = "versionAlreadySet"; mx_internal static const VERSION:String = "3.2.0.3958"; private static var compatibilityVersionChanged:Boolean = false; private static var _compatibilityErrorFunction:Function; private static var _compatibilityVersion:uint = 50331648; private static var compatibilityVersionRead:Boolean = false; mx_internal static function changeCompatibilityVersionString(_arg1:String):void{ var _local2:Array = _arg1.split("."); var _local3:uint = parseInt(_local2[0]); var _local4:uint = parseInt(_local2[1]); var _local5:uint = parseInt(_local2[2]); _compatibilityVersion = (((_local3 << 24) + (_local4 << 16)) + _local5); } public static function set compatibilityVersion(_arg1:uint):void{ var _local2:String; if (_arg1 == _compatibilityVersion){ return; }; if (compatibilityVersionChanged){ if (compatibilityErrorFunction == null){ _local2 = ResourceManager.getInstance().getString("core", VERSION_ALREADY_SET); throw (new Error(_local2)); }; compatibilityErrorFunction(_arg1, VERSION_ALREADY_SET); }; if (compatibilityVersionRead){ if (compatibilityErrorFunction == null){ _local2 = ResourceManager.getInstance().getString("core", VERSION_ALREADY_READ); throw (new Error(_local2)); }; compatibilityErrorFunction(_arg1, VERSION_ALREADY_READ); }; _compatibilityVersion = _arg1; compatibilityVersionChanged = true; } public static function get compatibilityVersion():uint{ compatibilityVersionRead = true; return (_compatibilityVersion); } public static function set compatibilityErrorFunction(_arg1:Function):void{ _compatibilityErrorFunction = _arg1; } public static function set compatibilityVersionString(_arg1:String):void{ var _local2:Array = _arg1.split("."); var _local3:uint = parseInt(_local2[0]); var _local4:uint = parseInt(_local2[1]); var _local5:uint = parseInt(_local2[2]); compatibilityVersion = (((_local3 << 24) + (_local4 << 16)) + _local5); } public static function get compatibilityErrorFunction():Function{ return (_compatibilityErrorFunction); } public static function get compatibilityVersionString():String{ var _local1:uint = ((compatibilityVersion >> 24) & 0xFF); var _local2:uint = ((compatibilityVersion >> 16) & 0xFF); var _local3:uint = (compatibilityVersion & 0xFFFF); return (((((_local1.toString() + ".") + _local2.toString()) + ".") + _local3.toString())); } } }//package mx.core
Section 127
//FontAsset (mx.core.FontAsset) package mx.core { import flash.text.*; public class FontAsset extends Font implements IFlexAsset { mx_internal static const VERSION:String = "3.2.0.3958"; } }//package mx.core
Section 128
//IBorder (mx.core.IBorder) package mx.core { public interface IBorder { function get borderMetrics():EdgeMetrics; } }//package mx.core
Section 129
//IButton (mx.core.IButton) package mx.core { public interface IButton extends IUIComponent { function get emphasized():Boolean; function set emphasized(_arg1:Boolean):void; function callLater(_arg1:Function, _arg2:Array=null):void; } }//package mx.core
Section 130
//IChildList (mx.core.IChildList) package mx.core { import flash.display.*; import flash.geom.*; public interface IChildList { function get numChildren():int; function removeChild(_arg1:DisplayObject):DisplayObject; function getChildByName(_arg1:String):DisplayObject; function removeChildAt(_arg1:int):DisplayObject; function getChildIndex(_arg1:DisplayObject):int; function addChildAt(_arg1:DisplayObject, _arg2:int):DisplayObject; function getObjectsUnderPoint(_arg1:Point):Array; function setChildIndex(_arg1:DisplayObject, _arg2:int):void; function getChildAt(_arg1:int):DisplayObject; function addChild(_arg1:DisplayObject):DisplayObject; function contains(_arg1:DisplayObject):Boolean; } }//package mx.core
Section 131
//IContainer (mx.core.IContainer) package mx.core { import flash.display.*; import flash.geom.*; import mx.managers.*; import flash.media.*; import flash.text.*; public interface IContainer extends IUIComponent { function set hitArea(_arg1:Sprite):void; function swapChildrenAt(_arg1:int, _arg2:int):void; function getChildByName(_arg1:String):DisplayObject; function get doubleClickEnabled():Boolean; function get graphics():Graphics; function get useHandCursor():Boolean; function addChildAt(_arg1:DisplayObject, _arg2:int):DisplayObject; function set mouseChildren(_arg1:Boolean):void; function set creatingContentPane(_arg1:Boolean):void; function get textSnapshot():TextSnapshot; function getChildIndex(_arg1:DisplayObject):int; function set doubleClickEnabled(_arg1:Boolean):void; function getObjectsUnderPoint(_arg1:Point):Array; function get creatingContentPane():Boolean; function setChildIndex(_arg1:DisplayObject, _arg2:int):void; function get soundTransform():SoundTransform; function set useHandCursor(_arg1:Boolean):void; function get numChildren():int; function contains(_arg1:DisplayObject):Boolean; function get verticalScrollPosition():Number; function set defaultButton(_arg1:IFlexDisplayObject):void; function swapChildren(_arg1:DisplayObject, _arg2:DisplayObject):void; function set horizontalScrollPosition(_arg1:Number):void; function get focusManager():IFocusManager; function startDrag(_arg1:Boolean=false, _arg2:Rectangle=null):void; function set mouseEnabled(_arg1:Boolean):void; function getChildAt(_arg1:int):DisplayObject; function set soundTransform(_arg1:SoundTransform):void; function get tabChildren():Boolean; function get tabIndex():int; function set focusRect(_arg1:Object):void; function get hitArea():Sprite; function get mouseChildren():Boolean; function removeChildAt(_arg1:int):DisplayObject; function get defaultButton():IFlexDisplayObject; function stopDrag():void; function set tabEnabled(_arg1:Boolean):void; function get horizontalScrollPosition():Number; function get focusRect():Object; function get viewMetrics():EdgeMetrics; function set verticalScrollPosition(_arg1:Number):void; function get dropTarget():DisplayObject; function get mouseEnabled():Boolean; function set tabChildren(_arg1:Boolean):void; function set buttonMode(_arg1:Boolean):void; function get tabEnabled():Boolean; function get buttonMode():Boolean; function removeChild(_arg1:DisplayObject):DisplayObject; function set tabIndex(_arg1:int):void; function addChild(_arg1:DisplayObject):DisplayObject; function areInaccessibleObjectsUnderPoint(_arg1:Point):Boolean; } }//package mx.core
Section 132
//IFlexAsset (mx.core.IFlexAsset) package mx.core { public interface IFlexAsset { } }//package mx.core
Section 133
//IFlexDisplayObject (mx.core.IFlexDisplayObject) package mx.core { import flash.events.*; import flash.display.*; import flash.geom.*; import flash.accessibility.*; public interface IFlexDisplayObject extends IBitmapDrawable, IEventDispatcher { function get visible():Boolean; function get rotation():Number; function localToGlobal(_arg1:Point):Point; function get name():String; function set width(_arg1:Number):void; function get measuredHeight():Number; function get blendMode():String; function get scale9Grid():Rectangle; function set name(_arg1:String):void; function set scaleX(_arg1:Number):void; function set scaleY(_arg1:Number):void; function get measuredWidth():Number; function get accessibilityProperties():AccessibilityProperties; function set scrollRect(_arg1:Rectangle):void; function get cacheAsBitmap():Boolean; function globalToLocal(_arg1:Point):Point; function get height():Number; function set blendMode(_arg1:String):void; function get parent():DisplayObjectContainer; function getBounds(_arg1:DisplayObject):Rectangle; function get opaqueBackground():Object; function set scale9Grid(_arg1:Rectangle):void; function setActualSize(_arg1:Number, _arg2:Number):void; function set alpha(_arg1:Number):void; function set accessibilityProperties(_arg1:AccessibilityProperties):void; function get width():Number; function hitTestPoint(_arg1:Number, _arg2:Number, _arg3:Boolean=false):Boolean; function set cacheAsBitmap(_arg1:Boolean):void; function get scaleX():Number; function get scaleY():Number; function get scrollRect():Rectangle; function get mouseX():Number; function get mouseY():Number; function set height(_arg1:Number):void; function set mask(_arg1:DisplayObject):void; function getRect(_arg1:DisplayObject):Rectangle; function get alpha():Number; function set transform(_arg1:Transform):void; function move(_arg1:Number, _arg2:Number):void; function get loaderInfo():LoaderInfo; function get root():DisplayObject; function hitTestObject(_arg1:DisplayObject):Boolean; function set opaqueBackground(_arg1:Object):void; function set visible(_arg1:Boolean):void; function get mask():DisplayObject; function set x(_arg1:Number):void; function set y(_arg1:Number):void; function get transform():Transform; function set filters(_arg1:Array):void; function get x():Number; function get y():Number; function get filters():Array; function set rotation(_arg1:Number):void; function get stage():Stage; } }//package mx.core
Section 134
//IFlexModuleFactory (mx.core.IFlexModuleFactory) package mx.core { public interface IFlexModuleFactory { function create(... _args):Object; function info():Object; } }//package mx.core
Section 135
//IInvalidating (mx.core.IInvalidating) package mx.core { public interface IInvalidating { function validateNow():void; function invalidateSize():void; function invalidateDisplayList():void; function invalidateProperties():void; } }//package mx.core
Section 136
//IProgrammaticSkin (mx.core.IProgrammaticSkin) package mx.core { public interface IProgrammaticSkin { function validateNow():void; function validateDisplayList():void; } }//package mx.core
Section 137
//IRawChildrenContainer (mx.core.IRawChildrenContainer) package mx.core { public interface IRawChildrenContainer { function get rawChildren():IChildList; } }//package mx.core
Section 138
//IRectangularBorder (mx.core.IRectangularBorder) package mx.core { import flash.geom.*; public interface IRectangularBorder extends IBorder { function get backgroundImageBounds():Rectangle; function get hasBackgroundImage():Boolean; function set backgroundImageBounds(_arg1:Rectangle):void; function layoutBackgroundImage():void; } }//package mx.core
Section 139
//IRepeaterClient (mx.core.IRepeaterClient) package mx.core { public interface IRepeaterClient { function get instanceIndices():Array; function set instanceIndices(_arg1:Array):void; function get isDocument():Boolean; function set repeaters(_arg1:Array):void; function initializeRepeaterArrays(_arg1:IRepeaterClient):void; function get repeaters():Array; function set repeaterIndices(_arg1:Array):void; function get repeaterIndices():Array; } }//package mx.core
Section 140
//ISWFBridgeGroup (mx.core.ISWFBridgeGroup) package mx.core { import flash.events.*; public interface ISWFBridgeGroup { function getChildBridgeProvider(_arg1:IEventDispatcher):ISWFBridgeProvider; function removeChildBridge(_arg1:IEventDispatcher):void; function get parentBridge():IEventDispatcher; function addChildBridge(_arg1:IEventDispatcher, _arg2:ISWFBridgeProvider):void; function set parentBridge(_arg1:IEventDispatcher):void; function containsBridge(_arg1:IEventDispatcher):Boolean; function getChildBridges():Array; } }//package mx.core
Section 141
//ISWFBridgeProvider (mx.core.ISWFBridgeProvider) package mx.core { import flash.events.*; public interface ISWFBridgeProvider { function get childAllowsParent():Boolean; function get swfBridge():IEventDispatcher; function get parentAllowsChild():Boolean; } }//package mx.core
Section 142
//IUIComponent (mx.core.IUIComponent) package mx.core { import flash.display.*; import mx.managers.*; public interface IUIComponent extends IFlexDisplayObject { function set focusPane(_arg1:Sprite):void; function get enabled():Boolean; function set enabled(_arg1:Boolean):void; function set isPopUp(_arg1:Boolean):void; function get explicitMinHeight():Number; function get percentWidth():Number; function get isPopUp():Boolean; function get owner():DisplayObjectContainer; function get percentHeight():Number; function get baselinePosition():Number; function owns(_arg1:DisplayObject):Boolean; function initialize():void; function get maxWidth():Number; function get minWidth():Number; function getExplicitOrMeasuredWidth():Number; function get explicitMaxWidth():Number; function get explicitMaxHeight():Number; function set percentHeight(_arg1:Number):void; function get minHeight():Number; function set percentWidth(_arg1:Number):void; function get document():Object; function get focusPane():Sprite; function getExplicitOrMeasuredHeight():Number; function set tweeningProperties(_arg1:Array):void; function set explicitWidth(_arg1:Number):void; function set measuredMinHeight(_arg1:Number):void; function get explicitMinWidth():Number; function get tweeningProperties():Array; function get maxHeight():Number; function set owner(_arg1:DisplayObjectContainer):void; function set includeInLayout(_arg1:Boolean):void; function setVisible(_arg1:Boolean, _arg2:Boolean=false):void; function parentChanged(_arg1:DisplayObjectContainer):void; function get explicitWidth():Number; function get measuredMinHeight():Number; function set measuredMinWidth(_arg1:Number):void; function set explicitHeight(_arg1:Number):void; function get includeInLayout():Boolean; function get measuredMinWidth():Number; function get explicitHeight():Number; function set systemManager(_arg1:ISystemManager):void; function set document(_arg1:Object):void; function get systemManager():ISystemManager; } }//package mx.core
Section 143
//mx_internal (mx.core.mx_internal) package mx.core { public namespace mx_internal = "http://www.adobe.com/2006/flex/mx/internal"; }//package mx.core
Section 144
//Singleton (mx.core.Singleton) package mx.core { public class Singleton { mx_internal static const VERSION:String = "3.2.0.3958"; private static var classMap:Object = {}; public static function registerClass(_arg1:String, _arg2:Class):void{ var _local3:Class = classMap[_arg1]; if (!_local3){ classMap[_arg1] = _arg2; }; } public static function getClass(_arg1:String):Class{ return (classMap[_arg1]); } public static function getInstance(_arg1:String):Object{ var _local2:Class = classMap[_arg1]; if (!_local2){ throw (new Error((("No class registered for interface '" + _arg1) + "'."))); }; return (_local2["getInstance"]()); } } }//package mx.core
Section 145
//SoundAsset (mx.core.SoundAsset) package mx.core { import flash.media.*; public class SoundAsset extends Sound implements IFlexAsset { mx_internal static const VERSION:String = "3.2.0.3958"; } }//package mx.core
Section 146
//UIComponentGlobals (mx.core.UIComponentGlobals) package mx.core { import flash.display.*; import flash.geom.*; import mx.managers.*; public class UIComponentGlobals { mx_internal static var callLaterSuspendCount:int = 0; mx_internal static var layoutManager:ILayoutManager; mx_internal static var nextFocusObject:InteractiveObject; mx_internal static var designTime:Boolean = false; mx_internal static var tempMatrix:Matrix = new Matrix(); mx_internal static var callLaterDispatcherCount:int = 0; private static var _catchCallLaterExceptions:Boolean = false; public static function set catchCallLaterExceptions(_arg1:Boolean):void{ _catchCallLaterExceptions = _arg1; } public static function get designMode():Boolean{ return (designTime); } public static function set designMode(_arg1:Boolean):void{ designTime = _arg1; } public static function get catchCallLaterExceptions():Boolean{ return (_catchCallLaterExceptions); } } }//package mx.core
Section 147
//ModuleEvent (mx.events.ModuleEvent) package mx.events { import flash.events.*; import mx.core.*; import mx.modules.*; public class ModuleEvent extends ProgressEvent { public var errorText:String; private var _module:IModuleInfo; public static const READY:String = "ready"; public static const ERROR:String = "error"; public static const PROGRESS:String = "progress"; mx_internal static const VERSION:String = "3.2.0.3958"; public static const SETUP:String = "setup"; public static const UNLOAD:String = "unload"; public function ModuleEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:uint=0, _arg5:uint=0, _arg6:String=null, _arg7:IModuleInfo=null){ super(_arg1, _arg2, _arg3, _arg4, _arg5); this.errorText = _arg6; this._module = _arg7; } public function get module():IModuleInfo{ if (_module){ return (_module); }; return ((target as IModuleInfo)); } override public function clone():Event{ return (new ModuleEvent(type, bubbles, cancelable, bytesLoaded, bytesTotal, errorText, module)); } } }//package mx.events
Section 148
//ResourceEvent (mx.events.ResourceEvent) package mx.events { import flash.events.*; import mx.core.*; public class ResourceEvent extends ProgressEvent { public var errorText:String; mx_internal static const VERSION:String = "3.2.0.3958"; public static const COMPLETE:String = "complete"; public static const PROGRESS:String = "progress"; public static const ERROR:String = "error"; public function ResourceEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:uint=0, _arg5:uint=0, _arg6:String=null){ super(_arg1, _arg2, _arg3, _arg4, _arg5); this.errorText = _arg6; } override public function clone():Event{ return (new ResourceEvent(type, bubbles, cancelable, bytesLoaded, bytesTotal, errorText)); } } }//package mx.events
Section 149
//StyleEvent (mx.events.StyleEvent) package mx.events { import flash.events.*; import mx.core.*; public class StyleEvent extends ProgressEvent { public var errorText:String; mx_internal static const VERSION:String = "3.2.0.3958"; public static const COMPLETE:String = "complete"; public static const PROGRESS:String = "progress"; public static const ERROR:String = "error"; public function StyleEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:uint=0, _arg5:uint=0, _arg6:String=null){ super(_arg1, _arg2, _arg3, _arg4, _arg5); this.errorText = _arg6; } override public function clone():Event{ return (new StyleEvent(type, bubbles, cancelable, bytesLoaded, bytesTotal, errorText)); } } }//package mx.events
Section 150
//RectangularDropShadow (mx.graphics.RectangularDropShadow) package mx.graphics { import mx.core.*; import flash.display.*; import flash.geom.*; import mx.utils.*; import flash.filters.*; public class RectangularDropShadow { private var leftShadow:BitmapData; private var _tlRadius:Number;// = 0 private var _trRadius:Number;// = 0 private var _angle:Number;// = 45 private var topShadow:BitmapData; private var _distance:Number;// = 4 private var rightShadow:BitmapData; private var _alpha:Number;// = 0.4 private var shadow:BitmapData; private var _brRadius:Number;// = 0 private var _blRadius:Number;// = 0 private var _color:int;// = 0 private var bottomShadow:BitmapData; private var changed:Boolean;// = true mx_internal static const VERSION:String = "3.2.0.3958"; public function get blRadius():Number{ return (_blRadius); } public function set brRadius(_arg1:Number):void{ if (_brRadius != _arg1){ _brRadius = _arg1; changed = true; }; } public function set color(_arg1:int):void{ if (_color != _arg1){ _color = _arg1; changed = true; }; } public function drawShadow(_arg1:Graphics, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):void{ var _local15:Number; var _local16:Number; var _local17:Number; var _local18:Number; var _local19:Number; var _local20:Number; var _local21:Number; var _local22:Number; if (changed){ createShadowBitmaps(); changed = false; }; _arg4 = Math.ceil(_arg4); _arg5 = Math.ceil(_arg5); var _local6:int = (leftShadow) ? leftShadow.width : 0; var _local7:int = (rightShadow) ? rightShadow.width : 0; var _local8:int = (topShadow) ? topShadow.height : 0; var _local9:int = (bottomShadow) ? bottomShadow.height : 0; var _local10:int = (_local6 + _local7); var _local11:int = (_local8 + _local9); var _local12:Number = ((_arg5 + _local11) / 2); var _local13:Number = ((_arg4 + _local10) / 2); var _local14:Matrix = new Matrix(); if (((leftShadow) || (topShadow))){ _local15 = Math.min((tlRadius + _local10), _local13); _local16 = Math.min((tlRadius + _local11), _local12); _local14.tx = (_arg2 - _local6); _local14.ty = (_arg3 - _local8); _arg1.beginBitmapFill(shadow, _local14); _arg1.drawRect((_arg2 - _local6), (_arg3 - _local8), _local15, _local16); _arg1.endFill(); }; if (((rightShadow) || (topShadow))){ _local17 = Math.min((trRadius + _local10), _local13); _local18 = Math.min((trRadius + _local11), _local12); _local14.tx = (((_arg2 + _arg4) + _local7) - shadow.width); _local14.ty = (_arg3 - _local8); _arg1.beginBitmapFill(shadow, _local14); _arg1.drawRect((((_arg2 + _arg4) + _local7) - _local17), (_arg3 - _local8), _local17, _local18); _arg1.endFill(); }; if (((leftShadow) || (bottomShadow))){ _local19 = Math.min((blRadius + _local10), _local13); _local20 = Math.min((blRadius + _local11), _local12); _local14.tx = (_arg2 - _local6); _local14.ty = (((_arg3 + _arg5) + _local9) - shadow.height); _arg1.beginBitmapFill(shadow, _local14); _arg1.drawRect((_arg2 - _local6), (((_arg3 + _arg5) + _local9) - _local20), _local19, _local20); _arg1.endFill(); }; if (((rightShadow) || (bottomShadow))){ _local21 = Math.min((brRadius + _local10), _local13); _local22 = Math.min((brRadius + _local11), _local12); _local14.tx = (((_arg2 + _arg4) + _local7) - shadow.width); _local14.ty = (((_arg3 + _arg5) + _local9) - shadow.height); _arg1.beginBitmapFill(shadow, _local14); _arg1.drawRect((((_arg2 + _arg4) + _local7) - _local21), (((_arg3 + _arg5) + _local9) - _local22), _local21, _local22); _arg1.endFill(); }; if (leftShadow){ _local14.tx = (_arg2 - _local6); _local14.ty = 0; _arg1.beginBitmapFill(leftShadow, _local14); _arg1.drawRect((_arg2 - _local6), ((_arg3 - _local8) + _local16), _local6, ((((_arg5 + _local8) + _local9) - _local16) - _local20)); _arg1.endFill(); }; if (rightShadow){ _local14.tx = (_arg2 + _arg4); _local14.ty = 0; _arg1.beginBitmapFill(rightShadow, _local14); _arg1.drawRect((_arg2 + _arg4), ((_arg3 - _local8) + _local18), _local7, ((((_arg5 + _local8) + _local9) - _local18) - _local22)); _arg1.endFill(); }; if (topShadow){ _local14.tx = 0; _local14.ty = (_arg3 - _local8); _arg1.beginBitmapFill(topShadow, _local14); _arg1.drawRect(((_arg2 - _local6) + _local15), (_arg3 - _local8), ((((_arg4 + _local6) + _local7) - _local15) - _local17), _local8); _arg1.endFill(); }; if (bottomShadow){ _local14.tx = 0; _local14.ty = (_arg3 + _arg5); _arg1.beginBitmapFill(bottomShadow, _local14); _arg1.drawRect(((_arg2 - _local6) + _local19), (_arg3 + _arg5), ((((_arg4 + _local6) + _local7) - _local19) - _local21), _local9); _arg1.endFill(); }; } public function get brRadius():Number{ return (_brRadius); } public function get angle():Number{ return (_angle); } private function createShadowBitmaps():void{ var _local1:Number = ((Math.max(tlRadius, blRadius) + (2 * distance)) + Math.max(trRadius, brRadius)); var _local2:Number = ((Math.max(tlRadius, trRadius) + (2 * distance)) + Math.max(blRadius, brRadius)); if ((((_local1 < 0)) || ((_local2 < 0)))){ return; }; var _local3:Shape = new FlexShape(); var _local4:Graphics = _local3.graphics; _local4.beginFill(0xFFFFFF); GraphicsUtil.drawRoundRectComplex(_local4, 0, 0, _local1, _local2, tlRadius, trRadius, blRadius, brRadius); _local4.endFill(); var _local5:BitmapData = new BitmapData(_local1, _local2, true, 0); _local5.draw(_local3, new Matrix()); var _local6:DropShadowFilter = new DropShadowFilter(distance, angle, color, alpha); _local6.knockout = true; var _local7:Rectangle = new Rectangle(0, 0, _local1, _local2); var _local8:Rectangle = _local5.generateFilterRect(_local7, _local6); var _local9:Number = (_local7.left - _local8.left); var _local10:Number = (_local8.right - _local7.right); var _local11:Number = (_local7.top - _local8.top); var _local12:Number = (_local8.bottom - _local7.bottom); shadow = new BitmapData(_local8.width, _local8.height); shadow.applyFilter(_local5, _local7, new Point(_local9, _local11), _local6); var _local13:Point = new Point(0, 0); var _local14:Rectangle = new Rectangle(); if (_local9 > 0){ _local14.x = 0; _local14.y = ((tlRadius + _local11) + _local12); _local14.width = _local9; _local14.height = 1; leftShadow = new BitmapData(_local9, 1); leftShadow.copyPixels(shadow, _local14, _local13); } else { leftShadow = null; }; if (_local10 > 0){ _local14.x = (shadow.width - _local10); _local14.y = ((trRadius + _local11) + _local12); _local14.width = _local10; _local14.height = 1; rightShadow = new BitmapData(_local10, 1); rightShadow.copyPixels(shadow, _local14, _local13); } else { rightShadow = null; }; if (_local11 > 0){ _local14.x = ((tlRadius + _local9) + _local10); _local14.y = 0; _local14.width = 1; _local14.height = _local11; topShadow = new BitmapData(1, _local11); topShadow.copyPixels(shadow, _local14, _local13); } else { topShadow = null; }; if (_local12 > 0){ _local14.x = ((blRadius + _local9) + _local10); _local14.y = (shadow.height - _local12); _local14.width = 1; _local14.height = _local12; bottomShadow = new BitmapData(1, _local12); bottomShadow.copyPixels(shadow, _local14, _local13); } else { bottomShadow = null; }; } public function get alpha():Number{ return (_alpha); } public function get color():int{ return (_color); } public function set angle(_arg1:Number):void{ if (_angle != _arg1){ _angle = _arg1; changed = true; }; } public function set trRadius(_arg1:Number):void{ if (_trRadius != _arg1){ _trRadius = _arg1; changed = true; }; } public function set tlRadius(_arg1:Number):void{ if (_tlRadius != _arg1){ _tlRadius = _arg1; changed = true; }; } public function get trRadius():Number{ return (_trRadius); } public function set distance(_arg1:Number):void{ if (_distance != _arg1){ _distance = _arg1; changed = true; }; } public function get distance():Number{ return (_distance); } public function get tlRadius():Number{ return (_tlRadius); } public function set alpha(_arg1:Number):void{ if (_alpha != _arg1){ _alpha = _arg1; changed = true; }; } public function set blRadius(_arg1:Number):void{ if (_blRadius != _arg1){ _blRadius = _arg1; changed = true; }; } } }//package mx.graphics
Section 151
//IFocusManager (mx.managers.IFocusManager) package mx.managers { import flash.events.*; import mx.core.*; import flash.display.*; public interface IFocusManager { function get focusPane():Sprite; function getFocus():IFocusManagerComponent; function deactivate():void; function set defaultButton(_arg1:IButton):void; function set focusPane(_arg1:Sprite):void; function set showFocusIndicator(_arg1:Boolean):void; function moveFocus(_arg1:String, _arg2:DisplayObject=null):void; function addSWFBridge(_arg1:IEventDispatcher, _arg2:DisplayObject):void; function removeSWFBridge(_arg1:IEventDispatcher):void; function get defaultButtonEnabled():Boolean; function findFocusManagerComponent(_arg1:InteractiveObject):IFocusManagerComponent; function get nextTabIndex():int; function get defaultButton():IButton; function get showFocusIndicator():Boolean; function setFocus(_arg1:IFocusManagerComponent):void; function activate():void; function showFocus():void; function set defaultButtonEnabled(_arg1:Boolean):void; function hideFocus():void; function getNextFocusManagerComponent(_arg1:Boolean=false):IFocusManagerComponent; } }//package mx.managers
Section 152
//IFocusManagerComponent (mx.managers.IFocusManagerComponent) package mx.managers { public interface IFocusManagerComponent { function set focusEnabled(_arg1:Boolean):void; function drawFocus(_arg1:Boolean):void; function setFocus():void; function get focusEnabled():Boolean; function get tabEnabled():Boolean; function get tabIndex():int; function get mouseFocusEnabled():Boolean; } }//package mx.managers
Section 153
//IFocusManagerContainer (mx.managers.IFocusManagerContainer) package mx.managers { import flash.events.*; import flash.display.*; public interface IFocusManagerContainer extends IEventDispatcher { function set focusManager(_arg1:IFocusManager):void; function get focusManager():IFocusManager; function get systemManager():ISystemManager; function contains(_arg1:DisplayObject):Boolean; } }//package mx.managers
Section 154
//ILayoutManager (mx.managers.ILayoutManager) package mx.managers { import flash.events.*; public interface ILayoutManager extends IEventDispatcher { function validateNow():void; function validateClient(_arg1:ILayoutManagerClient, _arg2:Boolean=false):void; function isInvalid():Boolean; function invalidateDisplayList(_arg1:ILayoutManagerClient):void; function set usePhasedInstantiation(_arg1:Boolean):void; function invalidateSize(_arg1:ILayoutManagerClient):void; function get usePhasedInstantiation():Boolean; function invalidateProperties(_arg1:ILayoutManagerClient):void; } }//package mx.managers
Section 155
//ILayoutManagerClient (mx.managers.ILayoutManagerClient) package mx.managers { import flash.events.*; public interface ILayoutManagerClient extends IEventDispatcher { function get updateCompletePendingFlag():Boolean; function set updateCompletePendingFlag(_arg1:Boolean):void; function set initialized(_arg1:Boolean):void; function validateProperties():void; function validateDisplayList():void; function get nestLevel():int; function get initialized():Boolean; function get processedDescriptors():Boolean; function validateSize(_arg1:Boolean=false):void; function set nestLevel(_arg1:int):void; function set processedDescriptors(_arg1:Boolean):void; } }//package mx.managers
Section 156
//ISystemManager (mx.managers.ISystemManager) package mx.managers { import flash.events.*; import mx.core.*; import flash.display.*; import flash.geom.*; import flash.text.*; public interface ISystemManager extends IEventDispatcher, IChildList, IFlexModuleFactory { function set focusPane(_arg1:Sprite):void; function get toolTipChildren():IChildList; function useSWFBridge():Boolean; function isFontFaceEmbedded(_arg1:TextFormat):Boolean; function deployMouseShields(_arg1:Boolean):void; function get rawChildren():IChildList; function get topLevelSystemManager():ISystemManager; function dispatchEventFromSWFBridges(_arg1:Event, _arg2:IEventDispatcher=null, _arg3:Boolean=false, _arg4:Boolean=false):void; function getSandboxRoot():DisplayObject; function get swfBridgeGroup():ISWFBridgeGroup; function removeFocusManager(_arg1:IFocusManagerContainer):void; function addChildToSandboxRoot(_arg1:String, _arg2:DisplayObject):void; function get document():Object; function get focusPane():Sprite; function get loaderInfo():LoaderInfo; function addChildBridge(_arg1:IEventDispatcher, _arg2:DisplayObject):void; function getTopLevelRoot():DisplayObject; function removeChildBridge(_arg1:IEventDispatcher):void; function isDisplayObjectInABridgedApplication(_arg1:DisplayObject):Boolean; function get popUpChildren():IChildList; function get screen():Rectangle; function removeChildFromSandboxRoot(_arg1:String, _arg2:DisplayObject):void; function getDefinitionByName(_arg1:String):Object; function activate(_arg1:IFocusManagerContainer):void; function deactivate(_arg1:IFocusManagerContainer):void; function get cursorChildren():IChildList; function set document(_arg1:Object):void; function get embeddedFontList():Object; function set numModalWindows(_arg1:int):void; function isTopLevel():Boolean; function isTopLevelRoot():Boolean; function get numModalWindows():int; function addFocusManager(_arg1:IFocusManagerContainer):void; function get stage():Stage; function getVisibleApplicationRect(_arg1:Rectangle=null):Rectangle; } }//package mx.managers
Section 157
//SystemManagerGlobals (mx.managers.SystemManagerGlobals) package mx.managers { public class SystemManagerGlobals { public static var topLevelSystemManagers:Array = []; public static var changingListenersInOtherSystemManagers:Boolean; public static var bootstrapLoaderInfoURL:String; public static var showMouseCursor:Boolean; } }//package mx.managers
Section 158
//IModuleInfo (mx.modules.IModuleInfo) package mx.modules { import flash.events.*; import mx.core.*; import flash.system.*; import flash.utils.*; public interface IModuleInfo extends IEventDispatcher { function get ready():Boolean; function get loaded():Boolean; function load(_arg1:ApplicationDomain=null, _arg2:SecurityDomain=null, _arg3:ByteArray=null):void; function release():void; function get error():Boolean; function get data():Object; function publish(_arg1:IFlexModuleFactory):void; function get factory():IFlexModuleFactory; function set data(_arg1:Object):void; function get url():String; function get setup():Boolean; function unload():void; } }//package mx.modules
Section 159
//ModuleManager (mx.modules.ModuleManager) package mx.modules { import mx.core.*; public class ModuleManager { mx_internal static const VERSION:String = "3.2.0.3958"; public static function getModule(_arg1:String):IModuleInfo{ return (getSingleton().getModule(_arg1)); } private static function getSingleton():Object{ if (!ModuleManagerGlobals.managerSingleton){ ModuleManagerGlobals.managerSingleton = new ModuleManagerImpl(); }; return (ModuleManagerGlobals.managerSingleton); } public static function getAssociatedFactory(_arg1:Object):IFlexModuleFactory{ return (getSingleton().getAssociatedFactory(_arg1)); } } }//package mx.modules import flash.events.*; import mx.core.*; import flash.display.*; import flash.system.*; import mx.events.*; import flash.utils.*; import flash.net.*; class ModuleInfoProxy extends EventDispatcher implements IModuleInfo { private var _data:Object; private var info:ModuleInfo; private var referenced:Boolean;// = false private function ModuleInfoProxy(_arg1:ModuleInfo){ this.info = _arg1; _arg1.addEventListener(ModuleEvent.SETUP, moduleEventHandler, false, 0, true); _arg1.addEventListener(ModuleEvent.PROGRESS, moduleEventHandler, false, 0, true); _arg1.addEventListener(ModuleEvent.READY, moduleEventHandler, false, 0, true); _arg1.addEventListener(ModuleEvent.ERROR, moduleEventHandler, false, 0, true); _arg1.addEventListener(ModuleEvent.UNLOAD, moduleEventHandler, false, 0, true); } public function get loaded():Boolean{ return (info.loaded); } public function release():void{ if (referenced){ info.removeReference(); referenced = false; }; } public function get error():Boolean{ return (info.error); } public function get factory():IFlexModuleFactory{ return (info.factory); } public function publish(_arg1:IFlexModuleFactory):void{ info.publish(_arg1); } public function set data(_arg1:Object):void{ _data = _arg1; } public function get ready():Boolean{ return (info.ready); } public function load(_arg1:ApplicationDomain=null, _arg2:SecurityDomain=null, _arg3:ByteArray=null):void{ var _local4:ModuleEvent; info.resurrect(); if (!referenced){ info.addReference(); referenced = true; }; if (info.error){ dispatchEvent(new ModuleEvent(ModuleEvent.ERROR)); } else { if (info.loaded){ if (info.setup){ dispatchEvent(new ModuleEvent(ModuleEvent.SETUP)); if (info.ready){ _local4 = new ModuleEvent(ModuleEvent.PROGRESS); _local4.bytesLoaded = info.size; _local4.bytesTotal = info.size; dispatchEvent(_local4); dispatchEvent(new ModuleEvent(ModuleEvent.READY)); }; }; } else { info.load(_arg1, _arg2, _arg3); }; }; } private function moduleEventHandler(_arg1:ModuleEvent):void{ dispatchEvent(_arg1); } public function get url():String{ return (info.url); } public function get data():Object{ return (_data); } public function get setup():Boolean{ return (info.setup); } public function unload():void{ info.unload(); info.removeEventListener(ModuleEvent.SETUP, moduleEventHandler); info.removeEventListener(ModuleEvent.PROGRESS, moduleEventHandler); info.removeEventListener(ModuleEvent.READY, moduleEventHandler); info.removeEventListener(ModuleEvent.ERROR, moduleEventHandler); info.removeEventListener(ModuleEvent.UNLOAD, moduleEventHandler); } } class ModuleManagerImpl extends EventDispatcher { private var moduleList:Object; private function ModuleManagerImpl(){ moduleList = {}; super(); } public function getModule(_arg1:String):IModuleInfo{ var _local2:ModuleInfo = (moduleList[_arg1] as ModuleInfo); if (!_local2){ _local2 = new ModuleInfo(_arg1); moduleList[_arg1] = _local2; }; return (new ModuleInfoProxy(_local2)); } public function getAssociatedFactory(_arg1:Object):IFlexModuleFactory{ var m:Object; var info:ModuleInfo; var domain:ApplicationDomain; var cls:Class; var object = _arg1; var className:String = getQualifiedClassName(object); for each (m in moduleList) { info = (m as ModuleInfo); if (!info.ready){ } else { domain = info.applicationDomain; try { cls = Class(domain.getDefinition(className)); if ((object is cls)){ return (info.factory); }; } catch(error:Error) { }; }; }; return (null); } } class ModuleInfo extends EventDispatcher { private var _error:Boolean;// = false private var loader:Loader; private var factoryInfo:FactoryInfo; private var limbo:Dictionary; private var _loaded:Boolean;// = false private var _ready:Boolean;// = false private var numReferences:int;// = 0 private var _url:String; private var _setup:Boolean;// = false private function ModuleInfo(_arg1:String){ _url = _arg1; } private function clearLoader():void{ if (loader){ if (loader.contentLoaderInfo){ loader.contentLoaderInfo.removeEventListener(Event.INIT, initHandler); loader.contentLoaderInfo.removeEventListener(Event.COMPLETE, completeHandler); loader.contentLoaderInfo.removeEventListener(ProgressEvent.PROGRESS, progressHandler); loader.contentLoaderInfo.removeEventListener(IOErrorEvent.IO_ERROR, errorHandler); loader.contentLoaderInfo.removeEventListener(SecurityErrorEvent.SECURITY_ERROR, errorHandler); }; try { if (loader.content){ loader.content.removeEventListener("ready", readyHandler); loader.content.removeEventListener("error", moduleErrorHandler); }; } catch(error:Error) { }; if (_loaded){ try { loader.close(); } catch(error:Error) { }; }; try { loader.unload(); } catch(error:Error) { }; loader = null; }; } public function get size():int{ return ((((!(limbo)) && (factoryInfo))) ? factoryInfo.bytesTotal : 0); } public function get loaded():Boolean{ return ((limbo) ? false : _loaded); } public function release():void{ if (((_ready) && (!(limbo)))){ limbo = new Dictionary(true); limbo[factoryInfo] = 1; factoryInfo = null; } else { unload(); }; } public function get error():Boolean{ return ((limbo) ? false : _error); } public function get factory():IFlexModuleFactory{ return ((((!(limbo)) && (factoryInfo))) ? factoryInfo.factory : null); } public function completeHandler(_arg1:Event):void{ var _local2:ModuleEvent = new ModuleEvent(ModuleEvent.PROGRESS, _arg1.bubbles, _arg1.cancelable); _local2.bytesLoaded = loader.contentLoaderInfo.bytesLoaded; _local2.bytesTotal = loader.contentLoaderInfo.bytesTotal; dispatchEvent(_local2); } public function publish(_arg1:IFlexModuleFactory):void{ if (factoryInfo){ return; }; if (_url.indexOf("published://") != 0){ return; }; factoryInfo = new FactoryInfo(); factoryInfo.factory = _arg1; _loaded = true; _setup = true; _ready = true; _error = false; dispatchEvent(new ModuleEvent(ModuleEvent.SETUP)); dispatchEvent(new ModuleEvent(ModuleEvent.PROGRESS)); dispatchEvent(new ModuleEvent(ModuleEvent.READY)); } public function initHandler(_arg1:Event):void{ var moduleEvent:ModuleEvent; var event = _arg1; factoryInfo = new FactoryInfo(); try { factoryInfo.factory = (loader.content as IFlexModuleFactory); } catch(error:Error) { }; if (!factoryInfo.factory){ moduleEvent = new ModuleEvent(ModuleEvent.ERROR, event.bubbles, event.cancelable); moduleEvent.bytesLoaded = 0; moduleEvent.bytesTotal = 0; moduleEvent.errorText = "SWF is not a loadable module"; dispatchEvent(moduleEvent); return; }; loader.content.addEventListener("ready", readyHandler); loader.content.addEventListener("error", moduleErrorHandler); try { factoryInfo.applicationDomain = loader.contentLoaderInfo.applicationDomain; } catch(error:Error) { }; _setup = true; dispatchEvent(new ModuleEvent(ModuleEvent.SETUP)); } public function resurrect():void{ var _local1:Object; if (((!(factoryInfo)) && (limbo))){ for (_local1 in limbo) { factoryInfo = (_local1 as FactoryInfo); break; }; limbo = null; }; if (!factoryInfo){ if (_loaded){ dispatchEvent(new ModuleEvent(ModuleEvent.UNLOAD)); }; loader = null; _loaded = false; _setup = false; _ready = false; _error = false; }; } public function errorHandler(_arg1:ErrorEvent):void{ _error = true; var _local2:ModuleEvent = new ModuleEvent(ModuleEvent.ERROR, _arg1.bubbles, _arg1.cancelable); _local2.bytesLoaded = 0; _local2.bytesTotal = 0; _local2.errorText = _arg1.text; dispatchEvent(_local2); } public function get ready():Boolean{ return ((limbo) ? false : _ready); } private function loadBytes(_arg1:ApplicationDomain, _arg2:ByteArray):void{ var _local3:LoaderContext = new LoaderContext(); _local3.applicationDomain = (_arg1) ? _arg1 : new ApplicationDomain(ApplicationDomain.currentDomain); if (("allowLoadBytesCodeExecution" in _local3)){ _local3["allowLoadBytesCodeExecution"] = true; }; loader = new Loader(); loader.contentLoaderInfo.addEventListener(Event.INIT, initHandler); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler); loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, errorHandler); loader.contentLoaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR, errorHandler); loader.loadBytes(_arg2, _local3); } public function removeReference():void{ numReferences--; if (numReferences == 0){ release(); }; } public function addReference():void{ numReferences++; } public function progressHandler(_arg1:ProgressEvent):void{ var _local2:ModuleEvent = new ModuleEvent(ModuleEvent.PROGRESS, _arg1.bubbles, _arg1.cancelable); _local2.bytesLoaded = _arg1.bytesLoaded; _local2.bytesTotal = _arg1.bytesTotal; dispatchEvent(_local2); } public function load(_arg1:ApplicationDomain=null, _arg2:SecurityDomain=null, _arg3:ByteArray=null):void{ if (_loaded){ return; }; _loaded = true; limbo = null; if (_arg3){ loadBytes(_arg1, _arg3); return; }; if (_url.indexOf("published://") == 0){ return; }; var _local4:URLRequest = new URLRequest(_url); var _local5:LoaderContext = new LoaderContext(); _local5.applicationDomain = (_arg1) ? _arg1 : new ApplicationDomain(ApplicationDomain.currentDomain); _local5.securityDomain = _arg2; if ((((_arg2 == null)) && ((Security.sandboxType == Security.REMOTE)))){ _local5.securityDomain = SecurityDomain.currentDomain; }; loader = new Loader(); loader.contentLoaderInfo.addEventListener(Event.INIT, initHandler); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler); loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, progressHandler); loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, errorHandler); loader.contentLoaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR, errorHandler); loader.load(_local4, _local5); } public function get url():String{ return (_url); } public function get applicationDomain():ApplicationDomain{ return ((((!(limbo)) && (factoryInfo))) ? factoryInfo.applicationDomain : null); } public function moduleErrorHandler(_arg1:Event):void{ var _local2:ModuleEvent; _ready = true; factoryInfo.bytesTotal = loader.contentLoaderInfo.bytesTotal; clearLoader(); if ((_arg1 is ModuleEvent)){ _local2 = ModuleEvent(_arg1); } else { _local2 = new ModuleEvent(ModuleEvent.ERROR); }; dispatchEvent(_local2); } public function readyHandler(_arg1:Event):void{ _ready = true; factoryInfo.bytesTotal = loader.contentLoaderInfo.bytesTotal; clearLoader(); dispatchEvent(new ModuleEvent(ModuleEvent.READY)); } public function get setup():Boolean{ return ((limbo) ? false : _setup); } public function unload():void{ clearLoader(); if (_loaded){ dispatchEvent(new ModuleEvent(ModuleEvent.UNLOAD)); }; limbo = null; factoryInfo = null; _loaded = false; _setup = false; _ready = false; _error = false; } } class FactoryInfo { public var bytesTotal:int;// = 0 public var factory:IFlexModuleFactory; public var applicationDomain:ApplicationDomain; private function FactoryInfo(){ } }
Section 160
//ModuleManagerGlobals (mx.modules.ModuleManagerGlobals) package mx.modules { public class ModuleManagerGlobals { public static var managerSingleton:Object = null; } }//package mx.modules
Section 161
//IResourceBundle (mx.resources.IResourceBundle) package mx.resources { public interface IResourceBundle { function get content():Object; function get locale():String; function get bundleName():String; } }//package mx.resources
Section 162
//IResourceManager (mx.resources.IResourceManager) package mx.resources { import flash.events.*; import flash.system.*; public interface IResourceManager extends IEventDispatcher { function loadResourceModule(_arg1:String, _arg2:Boolean=true, _arg3:ApplicationDomain=null, _arg4:SecurityDomain=null):IEventDispatcher; function getBoolean(_arg1:String, _arg2:String, _arg3:String=null):Boolean; function getClass(_arg1:String, _arg2:String, _arg3:String=null):Class; function getLocales():Array; function removeResourceBundlesForLocale(_arg1:String):void; function getResourceBundle(_arg1:String, _arg2:String):IResourceBundle; function get localeChain():Array; function getInt(_arg1:String, _arg2:String, _arg3:String=null):int; function update():void; function set localeChain(_arg1:Array):void; function getUint(_arg1:String, _arg2:String, _arg3:String=null):uint; function addResourceBundle(_arg1:IResourceBundle):void; function getStringArray(_arg1:String, _arg2:String, _arg3:String=null):Array; function getBundleNamesForLocale(_arg1:String):Array; function removeResourceBundle(_arg1:String, _arg2:String):void; function getObject(_arg1:String, _arg2:String, _arg3:String=null); function getString(_arg1:String, _arg2:String, _arg3:Array=null, _arg4:String=null):String; function installCompiledResourceBundles(_arg1:ApplicationDomain, _arg2:Array, _arg3:Array):void; function unloadResourceModule(_arg1:String, _arg2:Boolean=true):void; function getPreferredLocaleChain():Array; function findResourceBundleWithResource(_arg1:String, _arg2:String):IResourceBundle; function initializeLocaleChain(_arg1:Array):void; function getNumber(_arg1:String, _arg2:String, _arg3:String=null):Number; } }//package mx.resources
Section 163
//IResourceModule (mx.resources.IResourceModule) package mx.resources { public interface IResourceModule { function get resourceBundles():Array; } }//package mx.resources
Section 164
//LocaleSorter (mx.resources.LocaleSorter) package mx.resources { import mx.core.*; public class LocaleSorter { mx_internal static const VERSION:String = "3.2.0.3958"; private static function normalizeLocale(_arg1:String):String{ return (_arg1.toLowerCase().replace(/-/g, "_")); } public static function sortLocalesByPreference(_arg1:Array, _arg2:Array, _arg3:String=null, _arg4:Boolean=false):Array{ var result:Array; var hasLocale:Object; var i:int; var j:int; var k:int; var l:int; var locale:String; var plocale:LocaleID; var appLocales = _arg1; var systemPreferences = _arg2; var ultimateFallbackLocale = _arg3; var addAll = _arg4; var promote:Function = function (_arg1:String):void{ if (typeof(hasLocale[_arg1]) != "undefined"){ result.push(appLocales[hasLocale[_arg1]]); delete hasLocale[_arg1]; }; }; result = []; hasLocale = {}; var locales:Array = trimAndNormalize(appLocales); var preferenceLocales:Array = trimAndNormalize(systemPreferences); addUltimateFallbackLocale(preferenceLocales, ultimateFallbackLocale); j = 0; while (j < locales.length) { hasLocale[locales[j]] = j; j = (j + 1); }; i = 0; l = preferenceLocales.length; while (i < l) { plocale = LocaleID.fromString(preferenceLocales[i]); promote(preferenceLocales[i]); promote(plocale.toString()); while (plocale.transformToParent()) { promote(plocale.toString()); }; plocale = LocaleID.fromString(preferenceLocales[i]); j = 0; while (j < l) { locale = preferenceLocales[j]; if (plocale.isSiblingOf(LocaleID.fromString(locale))){ promote(locale); }; j = (j + 1); }; j = 0; k = locales.length; while (j < k) { locale = locales[j]; if (plocale.isSiblingOf(LocaleID.fromString(locale))){ promote(locale); }; j = (j + 1); }; i = (i + 1); }; if (addAll){ j = 0; k = locales.length; while (j < k) { promote(locales[j]); j = (j + 1); }; }; return (result); } private static function addUltimateFallbackLocale(_arg1:Array, _arg2:String):void{ var _local3:String; if (((!((_arg2 == null))) && (!((_arg2 == ""))))){ _local3 = normalizeLocale(_arg2); if (_arg1.indexOf(_local3) == -1){ _arg1.push(_local3); }; }; } private static function trimAndNormalize(_arg1:Array):Array{ var _local2:Array = []; var _local3:int; while (_local3 < _arg1.length) { _local2.push(normalizeLocale(_arg1[_local3])); _local3++; }; return (_local2); } } }//package mx.resources class LocaleID { private var privateLangs:Boolean;// = false private var script:String;// = "" private var variants:Array; private var privates:Array; private var extensions:Object; private var lang:String;// = "" private var region:String;// = "" private var extended_langs:Array; public static const STATE_PRIMARY_LANGUAGE:int = 0; public static const STATE_REGION:int = 3; public static const STATE_EXTENDED_LANGUAGES:int = 1; public static const STATE_EXTENSIONS:int = 5; public static const STATE_SCRIPT:int = 2; public static const STATE_VARIANTS:int = 4; public static const STATE_PRIVATES:int = 6; private function LocaleID(){ extended_langs = []; variants = []; extensions = {}; privates = []; super(); } public function equals(_arg1:LocaleID):Boolean{ return ((toString() == _arg1.toString())); } public function canonicalize():void{ var _local1:String; for (_local1 in extensions) { if (extensions.hasOwnProperty(_local1)){ if (extensions[_local1].length == 0){ delete extensions[_local1]; } else { extensions[_local1] = extensions[_local1].sort(); }; }; }; extended_langs = extended_langs.sort(); variants = variants.sort(); privates = privates.sort(); if (script == ""){ script = LocaleRegistry.getScriptByLang(lang); }; if ((((script == "")) && (!((region == ""))))){ script = LocaleRegistry.getScriptByLangAndRegion(lang, region); }; if ((((region == "")) && (!((script == ""))))){ region = LocaleRegistry.getDefaultRegionForLangAndScript(lang, script); }; } public function toString():String{ var _local2:String; var _local1:Array = [lang]; Array.prototype.push.apply(_local1, extended_langs); if (script != ""){ _local1.push(script); }; if (region != ""){ _local1.push(region); }; Array.prototype.push.apply(_local1, variants); for (_local2 in extensions) { if (extensions.hasOwnProperty(_local2)){ _local1.push(_local2); Array.prototype.push.apply(_local1, extensions[_local2]); }; }; if (privates.length > 0){ _local1.push("x"); Array.prototype.push.apply(_local1, privates); }; return (_local1.join("_")); } public function isSiblingOf(_arg1:LocaleID):Boolean{ return ((((lang == _arg1.lang)) && ((script == _arg1.script)))); } public function transformToParent():Boolean{ var _local2:String; var _local3:Array; var _local4:String; if (privates.length > 0){ privates.splice((privates.length - 1), 1); return (true); }; var _local1:String; for (_local2 in extensions) { if (extensions.hasOwnProperty(_local2)){ _local1 = _local2; }; }; if (_local1){ _local3 = extensions[_local1]; if (_local3.length == 1){ delete extensions[_local1]; return (true); }; _local3.splice((_local3.length - 1), 1); return (true); }; if (variants.length > 0){ variants.splice((variants.length - 1), 1); return (true); }; if (script != ""){ if (LocaleRegistry.getScriptByLang(lang) != ""){ script = ""; return (true); }; if (region == ""){ _local4 = LocaleRegistry.getDefaultRegionForLangAndScript(lang, script); if (_local4 != ""){ region = _local4; script = ""; return (true); }; }; }; if (region != ""){ if (!(((script == "")) && ((LocaleRegistry.getScriptByLang(lang) == "")))){ region = ""; return (true); }; }; if (extended_langs.length > 0){ extended_langs.splice((extended_langs.length - 1), 1); return (true); }; return (false); } public static function fromString(_arg1:String):LocaleID{ var _local5:Array; var _local8:String; var _local9:int; var _local10:String; var _local2:LocaleID = new (LocaleID); var _local3:int = STATE_PRIMARY_LANGUAGE; var _local4:Array = _arg1.replace(/-/g, "_").split("_"); var _local6:int; var _local7:int = _local4.length; while (_local6 < _local7) { _local8 = _local4[_local6].toLowerCase(); if (_local3 == STATE_PRIMARY_LANGUAGE){ if (_local8 == "x"){ _local2.privateLangs = true; } else { if (_local8 == "i"){ _local2.lang = (_local2.lang + "i-"); } else { _local2.lang = (_local2.lang + _local8); _local3 = STATE_EXTENDED_LANGUAGES; }; }; } else { _local9 = _local8.length; if (_local9 == 0){ } else { _local10 = _local8.charAt(0).toLowerCase(); if ((((_local3 <= STATE_EXTENDED_LANGUAGES)) && ((_local9 == 3)))){ _local2.extended_langs.push(_local8); if (_local2.extended_langs.length == 3){ _local3 = STATE_SCRIPT; }; } else { if ((((_local3 <= STATE_SCRIPT)) && ((_local9 == 4)))){ _local2.script = _local8; _local3 = STATE_REGION; } else { if ((((_local3 <= STATE_REGION)) && ((((_local9 == 2)) || ((_local9 == 3)))))){ _local2.region = _local8; _local3 = STATE_VARIANTS; } else { if ((((_local3 <= STATE_VARIANTS)) && ((((((((_local10 >= "a")) && ((_local10 <= "z")))) && ((_local9 >= 5)))) || ((((((_local10 >= "0")) && ((_local10 <= "9")))) && ((_local9 >= 4)))))))){ _local2.variants.push(_local8); _local3 = STATE_VARIANTS; } else { if ((((_local3 < STATE_PRIVATES)) && ((_local9 == 1)))){ if (_local8 == "x"){ _local3 = STATE_PRIVATES; _local5 = _local2.privates; } else { _local3 = STATE_EXTENSIONS; _local5 = ((_local2.extensions[_local8]) || ([])); _local2.extensions[_local8] = _local5; }; } else { if (_local3 >= STATE_EXTENSIONS){ _local5.push(_local8); }; }; }; }; }; }; }; }; _local6++; }; _local2.canonicalize(); return (_local2); } } class LocaleRegistry { private static const SCRIPT_ID_BY_LANG:Object = {ab:5, af:1, am:2, ar:3, as:4, ay:1, be:5, bg:5, bn:4, bs:1, ca:1, ch:1, cs:1, cy:1, da:1, de:1, dv:6, dz:7, el:8, en:1, eo:1, es:1, et:1, eu:1, fa:3, fi:1, fj:1, fo:1, fr:1, frr:1, fy:1, ga:1, gl:1, gn:1, gu:9, gv:1, he:10, hi:11, hr:1, ht:1, hu:1, hy:12, id:1, in:1, is:1, it:1, iw:10, ja:13, ka:14, kk:5, kl:1, km:15, kn:16, ko:17, la:1, lb:1, ln:1, lo:18, lt:1, lv:1, mg:1, mh:1, mk:5, ml:19, mo:1, mr:11, ms:1, mt:1, my:20, na:1, nb:1, nd:1, ne:11, nl:1, nn:1, no:1, nr:1, ny:1, om:1, or:21, pa:22, pl:1, ps:3, pt:1, qu:1, rn:1, ro:1, ru:5, rw:1, sg:1, si:23, sk:1, sl:1, sm:1, so:1, sq:1, ss:1, st:1, sv:1, sw:1, ta:24, te:25, th:26, ti:2, tl:1, tn:1, to:1, tr:1, ts:1, uk:5, ur:3, ve:1, vi:1, wo:1, xh:1, yi:10, zu:1, cpe:1, dsb:1, frs:1, gsw:1, hsb:1, kok:11, mai:11, men:1, nds:1, niu:1, nqo:27, nso:1, son:1, tem:1, tkl:1, tmh:1, tpi:1, tvl:1, zbl:28}; private static const SCRIPTS:Array = ["", "latn", "ethi", "arab", "beng", "cyrl", "thaa", "tibt", "grek", "gujr", "hebr", "deva", "armn", "jpan", "geor", "khmr", "knda", "kore", "laoo", "mlym", "mymr", "orya", "guru", "sinh", "taml", "telu", "thai", "nkoo", "blis", "hans", "hant", "mong", "syrc"]; private static const DEFAULT_REGION_BY_LANG_AND_SCRIPT:Object = {bg:{5:"bg"}, ca:{1:"es"}, zh:{30:"tw", 29:"cn"}, cs:{1:"cz"}, da:{1:"dk"}, de:{1:"de"}, el:{8:"gr"}, en:{1:"us"}, es:{1:"es"}, fi:{1:"fi"}, fr:{1:"fr"}, he:{10:"il"}, hu:{1:"hu"}, is:{1:"is"}, it:{1:"it"}, ja:{13:"jp"}, ko:{17:"kr"}, nl:{1:"nl"}, nb:{1:"no"}, pl:{1:"pl"}, pt:{1:"br"}, ro:{1:"ro"}, ru:{5:"ru"}, hr:{1:"hr"}, sk:{1:"sk"}, sq:{1:"al"}, sv:{1:"se"}, th:{26:"th"}, tr:{1:"tr"}, ur:{3:"pk"}, id:{1:"id"}, uk:{5:"ua"}, be:{5:"by"}, sl:{1:"si"}, et:{1:"ee"}, lv:{1:"lv"}, lt:{1:"lt"}, fa:{3:"ir"}, vi:{1:"vn"}, hy:{12:"am"}, az:{1:"az", 5:"az"}, eu:{1:"es"}, mk:{5:"mk"}, af:{1:"za"}, ka:{14:"ge"}, fo:{1:"fo"}, hi:{11:"in"}, ms:{1:"my"}, kk:{5:"kz"}, ky:{5:"kg"}, sw:{1:"ke"}, uz:{1:"uz", 5:"uz"}, tt:{5:"ru"}, pa:{22:"in"}, gu:{9:"in"}, ta:{24:"in"}, te:{25:"in"}, kn:{16:"in"}, mr:{11:"in"}, sa:{11:"in"}, mn:{5:"mn"}, gl:{1:"es"}, kok:{11:"in"}, syr:{32:"sy"}, dv:{6:"mv"}, nn:{1:"no"}, sr:{1:"cs", 5:"cs"}, cy:{1:"gb"}, mi:{1:"nz"}, mt:{1:"mt"}, quz:{1:"bo"}, tn:{1:"za"}, xh:{1:"za"}, zu:{1:"za"}, nso:{1:"za"}, se:{1:"no"}, smj:{1:"no"}, sma:{1:"no"}, sms:{1:"fi"}, smn:{1:"fi"}, bs:{1:"ba"}}; private static const SCRIPT_BY_ID:Object = {latn:1, ethi:2, arab:3, beng:4, cyrl:5, thaa:6, tibt:7, grek:8, gujr:9, hebr:10, deva:11, armn:12, jpan:13, geor:14, khmr:15, knda:16, kore:17, laoo:18, mlym:19, mymr:20, orya:21, guru:22, sinh:23, taml:24, telu:25, thai:26, nkoo:27, blis:28, hans:29, hant:30, mong:31, syrc:32}; private static const SCRIPT_ID_BY_LANG_AND_REGION:Object = {zh:{cn:29, sg:29, tw:30, hk:30, mo:30}, mn:{cn:31, sg:5}, pa:{pk:3, in:22}, ha:{gh:1, ne:1}}; private function LocaleRegistry(){ } public static function getScriptByLangAndRegion(_arg1:String, _arg2:String):String{ var _local3:Object = SCRIPT_ID_BY_LANG_AND_REGION[_arg1]; if (_local3 == null){ return (""); }; var _local4:Object = _local3[_arg2]; if (_local4 == null){ return (""); }; return (SCRIPTS[int(_local4)].toLowerCase()); } public static function getScriptByLang(_arg1:String):String{ var _local2:Object = SCRIPT_ID_BY_LANG[_arg1]; if (_local2 == null){ return (""); }; return (SCRIPTS[int(_local2)].toLowerCase()); } public static function getDefaultRegionForLangAndScript(_arg1:String, _arg2:String):String{ var _local3:Object = DEFAULT_REGION_BY_LANG_AND_SCRIPT[_arg1]; var _local4:Object = SCRIPT_BY_ID[_arg2]; if ((((_local3 == null)) || ((_local4 == null)))){ return (""); }; return (((_local3[int(_local4)]) || (""))); } }
Section 165
//ResourceBundle (mx.resources.ResourceBundle) package mx.resources { import mx.core.*; import flash.system.*; import mx.utils.*; public class ResourceBundle implements IResourceBundle { mx_internal var _locale:String; private var _content:Object; mx_internal var _bundleName:String; mx_internal static const VERSION:String = "3.2.0.3958"; mx_internal static var backupApplicationDomain:ApplicationDomain; mx_internal static var locale:String; public function ResourceBundle(_arg1:String=null, _arg2:String=null){ _content = {}; super(); mx_internal::_locale = _arg1; mx_internal::_bundleName = _arg2; _content = getContent(); } protected function getContent():Object{ return ({}); } public function getString(_arg1:String):String{ return (String(_getObject(_arg1))); } public function get content():Object{ return (_content); } public function getBoolean(_arg1:String, _arg2:Boolean=true):Boolean{ var _local3:String = _getObject(_arg1).toLowerCase(); if (_local3 == "false"){ return (false); }; if (_local3 == "true"){ return (true); }; return (_arg2); } public function getStringArray(_arg1:String):Array{ var _local2:Array = _getObject(_arg1).split(","); var _local3:int = _local2.length; var _local4:int; while (_local4 < _local3) { _local2[_local4] = StringUtil.trim(_local2[_local4]); _local4++; }; return (_local2); } public function getObject(_arg1:String):Object{ return (_getObject(_arg1)); } private function _getObject(_arg1:String):Object{ var _local2:Object = content[_arg1]; if (!_local2){ throw (new Error(((("Key " + _arg1) + " was not found in resource bundle ") + bundleName))); }; return (_local2); } public function get locale():String{ return (mx_internal::_locale); } public function get bundleName():String{ return (mx_internal::_bundleName); } public function getNumber(_arg1:String):Number{ return (Number(_getObject(_arg1))); } private static function getClassByName(_arg1:String, _arg2:ApplicationDomain):Class{ var _local3:Class; if (_arg2.hasDefinition(_arg1)){ _local3 = (_arg2.getDefinition(_arg1) as Class); }; return (_local3); } public static function getResourceBundle(_arg1:String, _arg2:ApplicationDomain=null):ResourceBundle{ var _local3:String; var _local4:Class; var _local5:Object; var _local6:ResourceBundle; if (!_arg2){ _arg2 = ApplicationDomain.currentDomain; }; _local3 = (((mx_internal::locale + "$") + _arg1) + "_properties"); _local4 = getClassByName(_local3, _arg2); if (!_local4){ _local3 = (_arg1 + "_properties"); _local4 = getClassByName(_local3, _arg2); }; if (!_local4){ _local3 = _arg1; _local4 = getClassByName(_local3, _arg2); }; if (((!(_local4)) && (mx_internal::backupApplicationDomain))){ _local3 = (_arg1 + "_properties"); _local4 = getClassByName(_local3, mx_internal::backupApplicationDomain); if (!_local4){ _local3 = _arg1; _local4 = getClassByName(_local3, mx_internal::backupApplicationDomain); }; }; if (_local4){ _local5 = new (_local4); if ((_local5 is ResourceBundle)){ _local6 = ResourceBundle(_local5); return (_local6); }; }; throw (new Error(("Could not find resource bundle " + _arg1))); } } }//package mx.resources
Section 166
//ResourceManager (mx.resources.ResourceManager) package mx.resources { import mx.core.*; public class ResourceManager { mx_internal static const VERSION:String = "3.2.0.3958"; private static var implClassDependency:ResourceManagerImpl; private static var instance:IResourceManager; public static function getInstance():IResourceManager{ if (!instance){ try { instance = IResourceManager(Singleton.getInstance("mx.resources::IResourceManager")); } catch(e:Error) { instance = new ResourceManagerImpl(); }; }; return (instance); } } }//package mx.resources
Section 167
//ResourceManagerImpl (mx.resources.ResourceManagerImpl) package mx.resources { import flash.events.*; import mx.core.*; import flash.system.*; import mx.modules.*; import mx.events.*; import flash.utils.*; import mx.utils.*; public class ResourceManagerImpl extends EventDispatcher implements IResourceManager { private var resourceModules:Object; private var initializedForNonFrameworkApp:Boolean;// = false private var localeMap:Object; private var _localeChain:Array; mx_internal static const VERSION:String = "3.2.0.3958"; private static var instance:IResourceManager; public function ResourceManagerImpl(){ localeMap = {}; resourceModules = {}; super(); } public function get localeChain():Array{ return (_localeChain); } public function set localeChain(_arg1:Array):void{ _localeChain = _arg1; update(); } public function getStringArray(_arg1:String, _arg2:String, _arg3:String=null):Array{ var _local4:IResourceBundle = findBundle(_arg1, _arg2, _arg3); if (!_local4){ return (null); }; var _local5:* = _local4.content[_arg2]; var _local6:Array = String(_local5).split(","); var _local7:int = _local6.length; var _local8:int; while (_local8 < _local7) { _local6[_local8] = StringUtil.trim(_local6[_local8]); _local8++; }; return (_local6); } mx_internal function installCompiledResourceBundle(_arg1:ApplicationDomain, _arg2:String, _arg3:String):void{ var _local4:String; var _local5:String = _arg3; var _local6:int = _arg3.indexOf(":"); if (_local6 != -1){ _local4 = _arg3.substring(0, _local6); _local5 = _arg3.substring((_local6 + 1)); }; if (getResourceBundle(_arg2, _arg3)){ return; }; var _local7 = (((_arg2 + "$") + _local5) + "_properties"); if (_local4 != null){ _local7 = ((_local4 + ".") + _local7); }; var _local8:Class; if (_arg1.hasDefinition(_local7)){ _local8 = Class(_arg1.getDefinition(_local7)); }; if (!_local8){ _local7 = _arg3; if (_arg1.hasDefinition(_local7)){ _local8 = Class(_arg1.getDefinition(_local7)); }; }; if (!_local8){ _local7 = (_arg3 + "_properties"); if (_arg1.hasDefinition(_local7)){ _local8 = Class(_arg1.getDefinition(_local7)); }; }; if (!_local8){ throw (new Error((((("Could not find compiled resource bundle '" + _arg3) + "' for locale '") + _arg2) + "'."))); }; var _local9:ResourceBundle = ResourceBundle(new (_local8)); _local9.mx_internal::_locale = _arg2; _local9.mx_internal::_bundleName = _arg3; addResourceBundle(_local9); } public function getString(_arg1:String, _arg2:String, _arg3:Array=null, _arg4:String=null):String{ var _local5:IResourceBundle = findBundle(_arg1, _arg2, _arg4); if (!_local5){ return (null); }; var _local6:String = String(_local5.content[_arg2]); if (_arg3){ _local6 = StringUtil.substitute(_local6, _arg3); }; return (_local6); } public function loadResourceModule(_arg1:String, _arg2:Boolean=true, _arg3:ApplicationDomain=null, _arg4:SecurityDomain=null):IEventDispatcher{ var moduleInfo:IModuleInfo; var resourceEventDispatcher:ResourceEventDispatcher; var timer:Timer; var timerHandler:Function; var url = _arg1; var updateFlag = _arg2; var applicationDomain = _arg3; var securityDomain = _arg4; moduleInfo = ModuleManager.getModule(url); resourceEventDispatcher = new ResourceEventDispatcher(moduleInfo); var readyHandler:Function = function (_arg1:ModuleEvent):void{ var _local2:* = _arg1.module.factory.create(); resourceModules[_arg1.module.url].resourceModule = _local2; if (updateFlag){ update(); }; }; moduleInfo.addEventListener(ModuleEvent.READY, readyHandler, false, 0, true); var errorHandler:Function = function (_arg1:ModuleEvent):void{ var _local3:ResourceEvent; var _local2:String = ("Unable to load resource module from " + url); if (resourceEventDispatcher.willTrigger(ResourceEvent.ERROR)){ _local3 = new ResourceEvent(ResourceEvent.ERROR, _arg1.bubbles, _arg1.cancelable); _local3.bytesLoaded = 0; _local3.bytesTotal = 0; _local3.errorText = _local2; resourceEventDispatcher.dispatchEvent(_local3); } else { throw (new Error(_local2)); }; }; moduleInfo.addEventListener(ModuleEvent.ERROR, errorHandler, false, 0, true); resourceModules[url] = new ResourceModuleInfo(moduleInfo, readyHandler, errorHandler); timer = new Timer(0); timerHandler = function (_arg1:TimerEvent):void{ timer.removeEventListener(TimerEvent.TIMER, timerHandler); timer.stop(); moduleInfo.load(applicationDomain, securityDomain); }; timer.addEventListener(TimerEvent.TIMER, timerHandler, false, 0, true); timer.start(); return (resourceEventDispatcher); } public function getLocales():Array{ var _local2:String; var _local1:Array = []; for (_local2 in localeMap) { _local1.push(_local2); }; return (_local1); } public function removeResourceBundlesForLocale(_arg1:String):void{ delete localeMap[_arg1]; } public function getResourceBundle(_arg1:String, _arg2:String):IResourceBundle{ var _local3:Object = localeMap[_arg1]; if (!_local3){ return (null); }; return (_local3[_arg2]); } private function dumpResourceModule(_arg1):void{ var _local2:ResourceBundle; var _local3:String; for each (_local2 in _arg1.resourceBundles) { trace(_local2.locale, _local2.bundleName); for (_local3 in _local2.content) { }; }; } public function addResourceBundle(_arg1:IResourceBundle):void{ var _local2:String = _arg1.locale; var _local3:String = _arg1.bundleName; if (!localeMap[_local2]){ localeMap[_local2] = {}; }; localeMap[_local2][_local3] = _arg1; } public function getObject(_arg1:String, _arg2:String, _arg3:String=null){ var _local4:IResourceBundle = findBundle(_arg1, _arg2, _arg3); if (!_local4){ return (undefined); }; return (_local4.content[_arg2]); } public function getInt(_arg1:String, _arg2:String, _arg3:String=null):int{ var _local4:IResourceBundle = findBundle(_arg1, _arg2, _arg3); if (!_local4){ return (0); }; var _local5:* = _local4.content[_arg2]; return (int(_local5)); } private function findBundle(_arg1:String, _arg2:String, _arg3:String):IResourceBundle{ supportNonFrameworkApps(); return (((_arg3)!=null) ? getResourceBundle(_arg3, _arg1) : findResourceBundleWithResource(_arg1, _arg2)); } private function supportNonFrameworkApps():void{ if (initializedForNonFrameworkApp){ return; }; initializedForNonFrameworkApp = true; if (getLocales().length > 0){ return; }; var _local1:ApplicationDomain = ApplicationDomain.currentDomain; if (!_local1.hasDefinition("_CompiledResourceBundleInfo")){ return; }; var _local2:Class = Class(_local1.getDefinition("_CompiledResourceBundleInfo")); var _local3:Array = _local2.compiledLocales; var _local4:Array = _local2.compiledResourceBundleNames; installCompiledResourceBundles(_local1, _local3, _local4); localeChain = _local3; } public function getBundleNamesForLocale(_arg1:String):Array{ var _local3:String; var _local2:Array = []; for (_local3 in localeMap[_arg1]) { _local2.push(_local3); }; return (_local2); } public function getPreferredLocaleChain():Array{ return (LocaleSorter.sortLocalesByPreference(getLocales(), getSystemPreferredLocales(), null, true)); } public function getNumber(_arg1:String, _arg2:String, _arg3:String=null):Number{ var _local4:IResourceBundle = findBundle(_arg1, _arg2, _arg3); if (!_local4){ return (NaN); }; var _local5:* = _local4.content[_arg2]; return (Number(_local5)); } public function update():void{ dispatchEvent(new Event(Event.CHANGE)); } public function getClass(_arg1:String, _arg2:String, _arg3:String=null):Class{ var _local4:IResourceBundle = findBundle(_arg1, _arg2, _arg3); if (!_local4){ return (null); }; var _local5:* = _local4.content[_arg2]; return ((_local5 as Class)); } public function removeResourceBundle(_arg1:String, _arg2:String):void{ delete localeMap[_arg1][_arg2]; if (getBundleNamesForLocale(_arg1).length == 0){ delete localeMap[_arg1]; }; } public function initializeLocaleChain(_arg1:Array):void{ localeChain = LocaleSorter.sortLocalesByPreference(_arg1, getSystemPreferredLocales(), null, true); } public function findResourceBundleWithResource(_arg1:String, _arg2:String):IResourceBundle{ var _local5:String; var _local6:Object; var _local7:ResourceBundle; if (!_localeChain){ return (null); }; var _local3:int = _localeChain.length; var _local4:int; while (_local4 < _local3) { _local5 = localeChain[_local4]; _local6 = localeMap[_local5]; if (!_local6){ } else { _local7 = _local6[_arg1]; if (!_local7){ } else { if ((_arg2 in _local7.content)){ return (_local7); }; }; }; _local4++; }; return (null); } public function getUint(_arg1:String, _arg2:String, _arg3:String=null):uint{ var _local4:IResourceBundle = findBundle(_arg1, _arg2, _arg3); if (!_local4){ return (0); }; var _local5:* = _local4.content[_arg2]; return (uint(_local5)); } private function getSystemPreferredLocales():Array{ var _local1:Array; if (Capabilities["languages"]){ _local1 = Capabilities["languages"]; } else { _local1 = [Capabilities.language]; }; return (_local1); } public function installCompiledResourceBundles(_arg1:ApplicationDomain, _arg2:Array, _arg3:Array):void{ var _local7:String; var _local8:int; var _local9:String; var _local4:int = (_arg2) ? _arg2.length : 0; var _local5:int = (_arg3) ? _arg3.length : 0; var _local6:int; while (_local6 < _local4) { _local7 = _arg2[_local6]; _local8 = 0; while (_local8 < _local5) { _local9 = _arg3[_local8]; mx_internal::installCompiledResourceBundle(_arg1, _local7, _local9); _local8++; }; _local6++; }; } public function getBoolean(_arg1:String, _arg2:String, _arg3:String=null):Boolean{ var _local4:IResourceBundle = findBundle(_arg1, _arg2, _arg3); if (!_local4){ return (false); }; var _local5:* = _local4.content[_arg2]; return ((String(_local5).toLowerCase() == "true")); } public function unloadResourceModule(_arg1:String, _arg2:Boolean=true):void{ throw (new Error("unloadResourceModule() is not yet implemented.")); } public static function getInstance():IResourceManager{ if (!instance){ instance = new (ResourceManagerImpl); }; return (instance); } } }//package mx.resources import flash.events.*; import mx.modules.*; import mx.events.*; class ResourceModuleInfo { public var resourceModule:IResourceModule; public var errorHandler:Function; public var readyHandler:Function; public var moduleInfo:IModuleInfo; private function ResourceModuleInfo(_arg1:IModuleInfo, _arg2:Function, _arg3:Function){ this.moduleInfo = _arg1; this.readyHandler = _arg2; this.errorHandler = _arg3; } } class ResourceEventDispatcher extends EventDispatcher { private function ResourceEventDispatcher(_arg1:IModuleInfo){ _arg1.addEventListener(ModuleEvent.ERROR, moduleInfo_errorHandler, false, 0, true); _arg1.addEventListener(ModuleEvent.PROGRESS, moduleInfo_progressHandler, false, 0, true); _arg1.addEventListener(ModuleEvent.READY, moduleInfo_readyHandler, false, 0, true); } private function moduleInfo_progressHandler(_arg1:ModuleEvent):void{ var _local2:ResourceEvent = new ResourceEvent(ResourceEvent.PROGRESS, _arg1.bubbles, _arg1.cancelable); _local2.bytesLoaded = _arg1.bytesLoaded; _local2.bytesTotal = _arg1.bytesTotal; dispatchEvent(_local2); } private function moduleInfo_readyHandler(_arg1:ModuleEvent):void{ var _local2:ResourceEvent = new ResourceEvent(ResourceEvent.COMPLETE); dispatchEvent(_local2); } private function moduleInfo_errorHandler(_arg1:ModuleEvent):void{ var _local2:ResourceEvent = new ResourceEvent(ResourceEvent.ERROR, _arg1.bubbles, _arg1.cancelable); _local2.bytesLoaded = _arg1.bytesLoaded; _local2.bytesTotal = _arg1.bytesTotal; _local2.errorText = _arg1.errorText; dispatchEvent(_local2); } }
Section 168
//HaloBorder (mx.skins.halo.HaloBorder) package mx.skins.halo { import mx.core.*; import flash.display.*; import mx.styles.*; import mx.skins.*; import mx.graphics.*; import mx.utils.*; public class HaloBorder extends RectangularBorder { mx_internal var radiusObj:Object; mx_internal var backgroundHole:Object; mx_internal var radius:Number; mx_internal var bRoundedCorners:Boolean; mx_internal var backgroundColor:Object; private var dropShadow:RectangularDropShadow; protected var _borderMetrics:EdgeMetrics; mx_internal var backgroundAlphaName:String; mx_internal static const VERSION:String = "3.2.0.3958"; private static var BORDER_WIDTHS:Object = {none:0, solid:1, inset:2, outset:2, alert:3, dropdown:2, menuBorder:1, comboNonEdit:2}; public function HaloBorder(){ BORDER_WIDTHS["default"] = 3; } override public function styleChanged(_arg1:String):void{ if ((((((((((_arg1 == null)) || ((_arg1 == "styleName")))) || ((_arg1 == "borderStyle")))) || ((_arg1 == "borderThickness")))) || ((_arg1 == "borderSides")))){ _borderMetrics = null; }; invalidateDisplayList(); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ if (((isNaN(_arg1)) || (isNaN(_arg2)))){ return; }; super.updateDisplayList(_arg1, _arg2); backgroundColor = getBackgroundColor(); bRoundedCorners = false; backgroundAlphaName = "backgroundAlpha"; backgroundHole = null; radius = 0; radiusObj = null; drawBorder(_arg1, _arg2); drawBackground(_arg1, _arg2); } mx_internal function drawBorder(_arg1:Number, _arg2:Number):void{ var _local5:Number; var _local6:uint; var _local7:uint; var _local8:String; var _local9:Number; var _local10:uint; var _local11:Boolean; var _local12:uint; var _local13:Array; var _local14:Array; var _local15:uint; var _local16:uint; var _local17:uint; var _local18:uint; var _local19:Boolean; var _local20:Object; var _local22:Number; var _local23:Number; var _local24:Number; var _local25:Object; var _local27:Number; var _local28:Number; var _local29:IContainer; var _local30:EdgeMetrics; var _local31:Boolean; var _local32:Number; var _local33:Array; var _local34:uint; var _local35:Boolean; var _local36:Number; var _local3:String = getStyle("borderStyle"); var _local4:Array = getStyle("highlightAlphas"); var _local21:Boolean; var _local26:Graphics = graphics; _local26.clear(); if (_local3){ switch (_local3){ case "none": break; case "inset": _local7 = getStyle("borderColor"); _local22 = ColorUtil.adjustBrightness2(_local7, -40); _local23 = ColorUtil.adjustBrightness2(_local7, 25); _local24 = ColorUtil.adjustBrightness2(_local7, 40); _local25 = backgroundColor; if ((((_local25 === null)) || ((_local25 === "")))){ _local25 = _local7; }; draw3dBorder(_local23, _local22, _local24, Number(_local25), Number(_local25), Number(_local25)); break; case "outset": _local7 = getStyle("borderColor"); _local22 = ColorUtil.adjustBrightness2(_local7, -40); _local23 = ColorUtil.adjustBrightness2(_local7, -25); _local24 = ColorUtil.adjustBrightness2(_local7, 40); _local25 = backgroundColor; if ((((_local25 === null)) || ((_local25 === "")))){ _local25 = _local7; }; draw3dBorder(_local23, _local24, _local22, Number(_local25), Number(_local25), Number(_local25)); break; case "alert": case "default": if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ _local27 = getStyle("backgroundAlpha"); _local5 = getStyle("borderAlpha"); backgroundAlphaName = "borderAlpha"; radius = getStyle("cornerRadius"); bRoundedCorners = (getStyle("roundedBottomCorners").toString().toLowerCase() == "true"); _local28 = (bRoundedCorners) ? radius : 0; drawDropShadow(0, 0, _arg1, _arg2, radius, radius, _local28, _local28); if (!bRoundedCorners){ radiusObj = {}; }; _local29 = (parent as IContainer); if (_local29){ _local30 = _local29.viewMetrics; backgroundHole = {x:_local30.left, y:_local30.top, w:Math.max(0, ((_arg1 - _local30.left) - _local30.right)), h:Math.max(0, ((_arg2 - _local30.top) - _local30.bottom)), r:0}; if ((((backgroundHole.w > 0)) && ((backgroundHole.h > 0)))){ if (_local27 != _local5){ drawDropShadow(backgroundHole.x, backgroundHole.y, backgroundHole.w, backgroundHole.h, 0, 0, 0, 0); }; _local26.beginFill(Number(backgroundColor), _local27); _local26.drawRect(backgroundHole.x, backgroundHole.y, backgroundHole.w, backgroundHole.h); _local26.endFill(); }; }; backgroundColor = getStyle("borderColor"); }; break; case "dropdown": _local12 = getStyle("dropdownBorderColor"); drawDropShadow(0, 0, _arg1, _arg2, 4, 0, 0, 4); drawRoundRect(0, 0, _arg1, _arg2, {tl:4, tr:0, br:0, bl:4}, 5068126, 1); drawRoundRect(0, 0, _arg1, _arg2, {tl:4, tr:0, br:0, bl:4}, [0xFFFFFF, 0xFFFFFF], [0.7, 0], verticalGradientMatrix(0, 0, _arg1, _arg2)); drawRoundRect(1, 1, (_arg1 - 1), (_arg2 - 2), {tl:3, tr:0, br:0, bl:3}, 0xFFFFFF, 1); drawRoundRect(1, 2, (_arg1 - 1), (_arg2 - 3), {tl:3, tr:0, br:0, bl:3}, [0xEEEEEE, 0xFFFFFF], 1, verticalGradientMatrix(0, 0, (_arg1 - 1), (_arg2 - 3))); if (!isNaN(_local12)){ drawRoundRect(0, 0, (_arg1 + 1), _arg2, {tl:4, tr:0, br:0, bl:4}, _local12, 0.5); drawRoundRect(1, 1, (_arg1 - 1), (_arg2 - 2), {tl:3, tr:0, br:0, bl:3}, 0xFFFFFF, 1); drawRoundRect(1, 2, (_arg1 - 1), (_arg2 - 3), {tl:3, tr:0, br:0, bl:3}, [0xEEEEEE, 0xFFFFFF], 1, verticalGradientMatrix(0, 0, (_arg1 - 1), (_arg2 - 3))); }; backgroundColor = null; break; case "menuBorder": _local7 = getStyle("borderColor"); drawRoundRect(0, 0, _arg1, _arg2, 0, _local7, 1); drawDropShadow(1, 1, (_arg1 - 2), (_arg2 - 2), 0, 0, 0, 0); break; case "comboNonEdit": break; case "controlBar": if ((((_arg1 == 0)) || ((_arg2 == 0)))){ backgroundColor = null; break; }; _local14 = getStyle("footerColors"); _local31 = !((_local14 == null)); _local32 = getStyle("borderAlpha"); if (_local31){ _local26.lineStyle(0, ((_local14.length > 0)) ? _local14[1] : _local14[0], _local32); _local26.moveTo(0, 0); _local26.lineTo(_arg1, 0); _local26.lineStyle(0, 0, 0); if (((((parent) && (parent.parent))) && ((parent.parent is IStyleClient)))){ radius = IStyleClient(parent.parent).getStyle("cornerRadius"); _local32 = IStyleClient(parent.parent).getStyle("borderAlpha"); }; if (isNaN(radius)){ radius = 0; }; if (IStyleClient(parent.parent).getStyle("roundedBottomCorners").toString().toLowerCase() != "true"){ radius = 0; }; drawRoundRect(0, 1, _arg1, (_arg2 - 1), {tl:0, tr:0, bl:radius, br:radius}, _local14, _local32, verticalGradientMatrix(0, 0, _arg1, _arg2)); if ((((_local14.length > 1)) && (!((_local14[0] == _local14[1]))))){ drawRoundRect(0, 1, _arg1, (_arg2 - 1), {tl:0, tr:0, bl:radius, br:radius}, [0xFFFFFF, 0xFFFFFF], _local4, verticalGradientMatrix(0, 0, _arg1, _arg2)); drawRoundRect(1, 2, (_arg1 - 2), (_arg2 - 3), {tl:0, tr:0, bl:(radius - 1), br:(radius - 1)}, _local14, _local32, verticalGradientMatrix(0, 0, _arg1, _arg2)); }; }; backgroundColor = null; break; case "applicationControlBar": _local13 = getStyle("fillColors"); _local5 = getStyle("backgroundAlpha"); _local4 = getStyle("highlightAlphas"); _local33 = getStyle("fillAlphas"); _local11 = getStyle("docked"); _local34 = uint(backgroundColor); radius = getStyle("cornerRadius"); if (!radius){ radius = 0; }; drawDropShadow(0, 1, _arg1, (_arg2 - 1), radius, radius, radius, radius); if (((!((backgroundColor === null))) && (StyleManager.isValidStyleValue(backgroundColor)))){ drawRoundRect(0, 1, _arg1, (_arg2 - 1), radius, _local34, _local5, verticalGradientMatrix(0, 0, _arg1, _arg2)); }; drawRoundRect(0, 1, _arg1, (_arg2 - 1), radius, _local13, _local33, verticalGradientMatrix(0, 0, _arg1, _arg2)); drawRoundRect(0, 1, _arg1, ((_arg2 / 2) - 1), {tl:radius, tr:radius, bl:0, br:0}, [0xFFFFFF, 0xFFFFFF], _local4, verticalGradientMatrix(0, 0, _arg1, ((_arg2 / 2) - 1))); drawRoundRect(0, 1, _arg1, (_arg2 - 1), {tl:radius, tr:radius, bl:0, br:0}, 0xFFFFFF, 0.3, null, GradientType.LINEAR, null, {x:0, y:2, w:_arg1, h:(_arg2 - 2), r:{tl:radius, tr:radius, bl:0, br:0}}); backgroundColor = null; break; default: _local7 = getStyle("borderColor"); _local9 = getStyle("borderThickness"); _local8 = getStyle("borderSides"); _local35 = true; radius = getStyle("cornerRadius"); bRoundedCorners = (getStyle("roundedBottomCorners").toString().toLowerCase() == "true"); _local36 = Math.max((radius - _local9), 0); _local20 = {x:_local9, y:_local9, w:(_arg1 - (_local9 * 2)), h:(_arg2 - (_local9 * 2)), r:_local36}; if (!bRoundedCorners){ radiusObj = {tl:radius, tr:radius, bl:0, br:0}; _local20.r = {tl:_local36, tr:_local36, bl:0, br:0}; }; if (_local8 != "left top right bottom"){ _local20.r = {tl:_local36, tr:_local36, bl:(bRoundedCorners) ? _local36 : 0, br:(bRoundedCorners) ? _local36 : 0}; radiusObj = {tl:radius, tr:radius, bl:(bRoundedCorners) ? radius : 0, br:(bRoundedCorners) ? radius : 0}; _local8 = _local8.toLowerCase(); if (_local8.indexOf("left") == -1){ _local20.x = 0; _local20.w = (_local20.w + _local9); _local20.r.tl = 0; _local20.r.bl = 0; radiusObj.tl = 0; radiusObj.bl = 0; _local35 = false; }; if (_local8.indexOf("top") == -1){ _local20.y = 0; _local20.h = (_local20.h + _local9); _local20.r.tl = 0; _local20.r.tr = 0; radiusObj.tl = 0; radiusObj.tr = 0; _local35 = false; }; if (_local8.indexOf("right") == -1){ _local20.w = (_local20.w + _local9); _local20.r.tr = 0; _local20.r.br = 0; radiusObj.tr = 0; radiusObj.br = 0; _local35 = false; }; if (_local8.indexOf("bottom") == -1){ _local20.h = (_local20.h + _local9); _local20.r.bl = 0; _local20.r.br = 0; radiusObj.bl = 0; radiusObj.br = 0; _local35 = false; }; }; if ((((radius == 0)) && (_local35))){ drawDropShadow(0, 0, _arg1, _arg2, 0, 0, 0, 0); _local26.beginFill(_local7); _local26.drawRect(0, 0, _arg1, _arg2); _local26.drawRect(_local9, _local9, (_arg1 - (2 * _local9)), (_arg2 - (2 * _local9))); _local26.endFill(); } else { if (radiusObj){ drawDropShadow(0, 0, _arg1, _arg2, radiusObj.tl, radiusObj.tr, radiusObj.br, radiusObj.bl); drawRoundRect(0, 0, _arg1, _arg2, radiusObj, _local7, 1, null, null, null, _local20); radiusObj.tl = Math.max((radius - _local9), 0); radiusObj.tr = Math.max((radius - _local9), 0); radiusObj.bl = (bRoundedCorners) ? Math.max((radius - _local9), 0) : 0; radiusObj.br = (bRoundedCorners) ? Math.max((radius - _local9), 0) : 0; } else { drawDropShadow(0, 0, _arg1, _arg2, radius, radius, radius, radius); drawRoundRect(0, 0, _arg1, _arg2, radius, _local7, 1, null, null, null, _local20); radius = Math.max((getStyle("cornerRadius") - _local9), 0); }; }; }; }; } mx_internal function drawBackground(_arg1:Number, _arg2:Number):void{ var _local4:Number; var _local5:Number; var _local6:EdgeMetrics; var _local7:Graphics; var _local8:Number; var _local9:Number; var _local10:Array; var _local11:Number; if (((((((!((backgroundColor === null))) && (!((backgroundColor === ""))))) || (getStyle("mouseShield")))) || (getStyle("mouseShieldChildren")))){ _local4 = Number(backgroundColor); _local5 = 1; _local6 = getBackgroundColorMetrics(); _local7 = graphics; if (((((isNaN(_local4)) || ((backgroundColor === "")))) || ((backgroundColor === null)))){ _local5 = 0; _local4 = 0xFFFFFF; } else { _local5 = getStyle(backgroundAlphaName); }; if (((!((radius == 0))) || (backgroundHole))){ _local8 = _local6.bottom; if (radiusObj){ _local9 = (bRoundedCorners) ? radius : 0; radiusObj = {tl:radius, tr:radius, bl:_local9, br:_local9}; drawRoundRect(_local6.left, _local6.top, (width - (_local6.left + _local6.right)), (height - (_local6.top + _local8)), radiusObj, _local4, _local5, null, GradientType.LINEAR, null, backgroundHole); } else { drawRoundRect(_local6.left, _local6.top, (width - (_local6.left + _local6.right)), (height - (_local6.top + _local8)), radius, _local4, _local5, null, GradientType.LINEAR, null, backgroundHole); }; } else { _local7.beginFill(_local4, _local5); _local7.drawRect(_local6.left, _local6.top, ((_arg1 - _local6.right) - _local6.left), ((_arg2 - _local6.bottom) - _local6.top)); _local7.endFill(); }; }; var _local3:String = getStyle("borderStyle"); if ((((((FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0)) && ((((_local3 == "alert")) || ((_local3 == "default")))))) && ((getStyle("headerColors") == null)))){ _local10 = getStyle("highlightAlphas"); _local11 = (_local10) ? _local10[0] : 0.3; drawRoundRect(0, 0, _arg1, _arg2, {tl:radius, tr:radius, bl:0, br:0}, 0xFFFFFF, _local11, null, GradientType.LINEAR, null, {x:0, y:1, w:_arg1, h:(_arg2 - 1), r:{tl:radius, tr:radius, bl:0, br:0}}); }; } mx_internal function drawDropShadow(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number, _arg8:Number):void{ var _local11:Number; var _local12:Boolean; if ((((((((getStyle("dropShadowEnabled") == false)) || ((getStyle("dropShadowEnabled") == "false")))) || ((_arg3 == 0)))) || ((_arg4 == 0)))){ return; }; var _local9:Number = getStyle("shadowDistance"); var _local10:String = getStyle("shadowDirection"); if (getStyle("borderStyle") == "applicationControlBar"){ _local12 = getStyle("docked"); _local11 = (_local12) ? 90 : getDropShadowAngle(_local9, _local10); _local9 = Math.abs(_local9); } else { _local11 = getDropShadowAngle(_local9, _local10); _local9 = (Math.abs(_local9) + 2); }; if (!dropShadow){ dropShadow = new RectangularDropShadow(); }; dropShadow.distance = _local9; dropShadow.angle = _local11; dropShadow.color = getStyle("dropShadowColor"); dropShadow.alpha = 0.4; dropShadow.tlRadius = _arg5; dropShadow.trRadius = _arg6; dropShadow.blRadius = _arg8; dropShadow.brRadius = _arg7; dropShadow.drawShadow(graphics, _arg1, _arg2, _arg3, _arg4); } mx_internal function getBackgroundColor():Object{ var _local2:Object; var _local1:IUIComponent = (parent as IUIComponent); if (((_local1) && (!(_local1.enabled)))){ _local2 = getStyle("backgroundDisabledColor"); if (((!((_local2 === null))) && (StyleManager.isValidStyleValue(_local2)))){ return (_local2); }; }; return (getStyle("backgroundColor")); } mx_internal function draw3dBorder(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number):void{ var _local7:Number = width; var _local8:Number = height; drawDropShadow(0, 0, width, height, 0, 0, 0, 0); var _local9:Graphics = graphics; _local9.beginFill(_arg1); _local9.drawRect(0, 0, _local7, _local8); _local9.drawRect(1, 0, (_local7 - 2), _local8); _local9.endFill(); _local9.beginFill(_arg2); _local9.drawRect(1, 0, (_local7 - 2), 1); _local9.endFill(); _local9.beginFill(_arg3); _local9.drawRect(1, (_local8 - 1), (_local7 - 2), 1); _local9.endFill(); _local9.beginFill(_arg4); _local9.drawRect(1, 1, (_local7 - 2), 1); _local9.endFill(); _local9.beginFill(_arg5); _local9.drawRect(1, (_local8 - 2), (_local7 - 2), 1); _local9.endFill(); _local9.beginFill(_arg6); _local9.drawRect(1, 2, (_local7 - 2), (_local8 - 4)); _local9.drawRect(2, 2, (_local7 - 4), (_local8 - 4)); _local9.endFill(); } mx_internal function getBackgroundColorMetrics():EdgeMetrics{ return (borderMetrics); } mx_internal function getDropShadowAngle(_arg1:Number, _arg2:String):Number{ if (_arg2 == "left"){ return (((_arg1 >= 0)) ? 135 : 225); //unresolved jump }; if (_arg2 == "right"){ return (((_arg1 >= 0)) ? 45 : 315); //unresolved jump }; return (((_arg1 >= 0)) ? 90 : 270); } override public function get borderMetrics():EdgeMetrics{ var _local1:Number; var _local3:String; if (_borderMetrics){ return (_borderMetrics); }; var _local2:String = getStyle("borderStyle"); if ((((_local2 == "default")) || ((_local2 == "alert")))){ if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ _borderMetrics = new EdgeMetrics(0, 0, 0, 0); } else { return (EdgeMetrics.EMPTY); }; } else { if ((((_local2 == "controlBar")) || ((_local2 == "applicationControlBar")))){ _borderMetrics = new EdgeMetrics(1, 1, 1, 1); } else { if (_local2 == "solid"){ _local1 = getStyle("borderThickness"); if (isNaN(_local1)){ _local1 = 0; }; _borderMetrics = new EdgeMetrics(_local1, _local1, _local1, _local1); _local3 = getStyle("borderSides"); if (_local3 != "left top right bottom"){ if (_local3.indexOf("left") == -1){ _borderMetrics.left = 0; }; if (_local3.indexOf("top") == -1){ _borderMetrics.top = 0; }; if (_local3.indexOf("right") == -1){ _borderMetrics.right = 0; }; if (_local3.indexOf("bottom") == -1){ _borderMetrics.bottom = 0; }; }; } else { _local1 = BORDER_WIDTHS[_local2]; if (isNaN(_local1)){ _local1 = 0; }; _borderMetrics = new EdgeMetrics(_local1, _local1, _local1, _local1); }; }; }; return (_borderMetrics); } } }//package mx.skins.halo
Section 169
//HaloFocusRect (mx.skins.halo.HaloFocusRect) package mx.skins.halo { import mx.core.*; import flash.display.*; import mx.styles.*; import mx.skins.*; import mx.utils.*; public class HaloFocusRect extends ProgrammaticSkin implements IStyleClient { private var _focusColor:Number; mx_internal static const VERSION:String = "3.2.0.3958"; public function get inheritingStyles():Object{ return (styleName.inheritingStyles); } public function set inheritingStyles(_arg1:Object):void{ } public function notifyStyleChangeInChildren(_arg1:String, _arg2:Boolean):void{ } public function registerEffects(_arg1:Array):void{ } public function regenerateStyleCache(_arg1:Boolean):void{ } public function get styleDeclaration():CSSStyleDeclaration{ return (CSSStyleDeclaration(styleName)); } public function getClassStyleDeclarations():Array{ return ([]); } public function get className():String{ return ("HaloFocusRect"); } public function clearStyle(_arg1:String):void{ if (_arg1 == "focusColor"){ _focusColor = NaN; }; } public function setStyle(_arg1:String, _arg2):void{ if (_arg1 == "focusColor"){ _focusColor = _arg2; }; } public function set nonInheritingStyles(_arg1:Object):void{ } public function get nonInheritingStyles():Object{ return (styleName.nonInheritingStyles); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ var _local12:Number; var _local13:Number; var _local14:Number; var _local15:Number; var _local16:Number; var _local17:Number; super.updateDisplayList(_arg1, _arg2); var _local3:String = getStyle("focusBlendMode"); var _local4:Number = getStyle("focusAlpha"); var _local5:Number = getStyle("focusColor"); var _local6:Number = getStyle("cornerRadius"); var _local7:Number = getStyle("focusThickness"); var _local8:String = getStyle("focusRoundedCorners"); var _local9:Number = getStyle("themeColor"); var _local10:Number = _local5; if (isNaN(_local10)){ _local10 = _local9; }; var _local11:Graphics = graphics; _local11.clear(); blendMode = _local3; if (((!((_local8 == "tl tr bl br"))) && ((_local6 > 0)))){ _local12 = 0; _local13 = 0; _local14 = 0; _local15 = 0; _local16 = (_local6 + _local7); if (_local8.indexOf("tl") >= 0){ _local12 = _local16; }; if (_local8.indexOf("tr") >= 0){ _local14 = _local16; }; if (_local8.indexOf("bl") >= 0){ _local13 = _local16; }; if (_local8.indexOf("br") >= 0){ _local15 = _local16; }; _local11.beginFill(_local10, _local4); GraphicsUtil.drawRoundRectComplex(_local11, 0, 0, _arg1, _arg2, _local12, _local14, _local13, _local15); _local12 = (_local12) ? _local6 : 0; _local14 = (_local14) ? _local6 : 0; _local13 = (_local13) ? _local6 : 0; _local15 = (_local15) ? _local6 : 0; GraphicsUtil.drawRoundRectComplex(_local11, _local7, _local7, (_arg1 - (2 * _local7)), (_arg2 - (2 * _local7)), _local12, _local14, _local13, _local15); _local11.endFill(); _local16 = (_local6 + (_local7 / 2)); _local12 = (_local12) ? _local16 : 0; _local14 = (_local14) ? _local16 : 0; _local13 = (_local13) ? _local16 : 0; _local15 = (_local15) ? _local16 : 0; _local11.beginFill(_local10, _local4); GraphicsUtil.drawRoundRectComplex(_local11, (_local7 / 2), (_local7 / 2), (_arg1 - _local7), (_arg2 - _local7), _local12, _local14, _local13, _local15); _local12 = (_local12) ? _local6 : 0; _local14 = (_local14) ? _local6 : 0; _local13 = (_local13) ? _local6 : 0; _local15 = (_local15) ? _local6 : 0; GraphicsUtil.drawRoundRectComplex(_local11, _local7, _local7, (_arg1 - (2 * _local7)), (_arg2 - (2 * _local7)), _local12, _local14, _local13, _local15); _local11.endFill(); } else { _local11.beginFill(_local10, _local4); _local17 = (((_local6 > 0)) ? (_local6 + _local7) : 0 * 2); _local11.drawRoundRect(0, 0, _arg1, _arg2, _local17, _local17); _local17 = (_local6 * 2); _local11.drawRoundRect(_local7, _local7, (_arg1 - (2 * _local7)), (_arg2 - (2 * _local7)), _local17, _local17); _local11.endFill(); _local11.beginFill(_local10, _local4); _local17 = (((_local6 > 0)) ? (_local6 + (_local7 / 2)) : 0 * 2); _local11.drawRoundRect((_local7 / 2), (_local7 / 2), (_arg1 - _local7), (_arg2 - _local7), _local17, _local17); _local17 = (_local6 * 2); _local11.drawRoundRect(_local7, _local7, (_arg1 - (2 * _local7)), (_arg2 - (2 * _local7)), _local17, _local17); _local11.endFill(); }; } override public function getStyle(_arg1:String){ return (((_arg1 == "focusColor")) ? _focusColor : super.getStyle(_arg1)); } public function set styleDeclaration(_arg1:CSSStyleDeclaration):void{ } } }//package mx.skins.halo
Section 170
//Border (mx.skins.Border) package mx.skins { import mx.core.*; public class Border extends ProgrammaticSkin implements IBorder { mx_internal static const VERSION:String = "3.2.0.3958"; public function get borderMetrics():EdgeMetrics{ return (EdgeMetrics.EMPTY); } } }//package mx.skins
Section 171
//ProgrammaticSkin (mx.skins.ProgrammaticSkin) package mx.skins { import mx.core.*; import flash.display.*; import mx.styles.*; import flash.geom.*; import mx.managers.*; import mx.utils.*; public class ProgrammaticSkin extends FlexShape implements IFlexDisplayObject, IInvalidating, ILayoutManagerClient, ISimpleStyleClient, IProgrammaticSkin { private var _initialized:Boolean;// = false private var _height:Number; private var invalidateDisplayListFlag:Boolean;// = false private var _styleName:IStyleClient; private var _nestLevel:int;// = 0 private var _processedDescriptors:Boolean;// = false private var _updateCompletePendingFlag:Boolean;// = true private var _width:Number; mx_internal static const VERSION:String = "3.2.0.3958"; private static var tempMatrix:Matrix = new Matrix(); public function ProgrammaticSkin(){ _width = measuredWidth; _height = measuredHeight; } public function getStyle(_arg1:String){ return ((_styleName) ? _styleName.getStyle(_arg1) : null); } protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ } public function get nestLevel():int{ return (_nestLevel); } public function set nestLevel(_arg1:int):void{ _nestLevel = _arg1; invalidateDisplayList(); } override public function get height():Number{ return (_height); } public function get updateCompletePendingFlag():Boolean{ return (_updateCompletePendingFlag); } protected function verticalGradientMatrix(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Matrix{ return (rotatedGradientMatrix(_arg1, _arg2, _arg3, _arg4, 90)); } public function validateSize(_arg1:Boolean=false):void{ } public function invalidateDisplayList():void{ if (((!(invalidateDisplayListFlag)) && ((nestLevel > 0)))){ invalidateDisplayListFlag = true; UIComponentGlobals.layoutManager.invalidateDisplayList(this); }; } public function set updateCompletePendingFlag(_arg1:Boolean):void{ _updateCompletePendingFlag = _arg1; } protected function horizontalGradientMatrix(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Matrix{ return (rotatedGradientMatrix(_arg1, _arg2, _arg3, _arg4, 0)); } override public function set height(_arg1:Number):void{ _height = _arg1; invalidateDisplayList(); } public function set processedDescriptors(_arg1:Boolean):void{ _processedDescriptors = _arg1; } public function validateDisplayList():void{ invalidateDisplayListFlag = false; updateDisplayList(width, height); } public function get measuredWidth():Number{ return (0); } override public function set width(_arg1:Number):void{ _width = _arg1; invalidateDisplayList(); } public function get measuredHeight():Number{ return (0); } public function set initialized(_arg1:Boolean):void{ _initialized = _arg1; } protected function drawRoundRect(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null, _arg6:Object=null, _arg7:Object=null, _arg8:Matrix=null, _arg9:String="linear", _arg10:Array=null, _arg11:Object=null):void{ var _local13:Number; var _local14:Array; var _local15:Object; var _local12:Graphics = graphics; if ((((_arg3 == 0)) || ((_arg4 == 0)))){ return; }; if (_arg6 !== null){ if ((_arg6 is uint)){ _local12.beginFill(uint(_arg6), Number(_arg7)); } else { if ((_arg6 is Array)){ _local14 = ((_arg7 is Array)) ? (_arg7 as Array) : [_arg7, _arg7]; if (!_arg10){ _arg10 = [0, 0xFF]; }; _local12.beginGradientFill(_arg9, (_arg6 as Array), _local14, _arg10, _arg8); }; }; }; if (!_arg5){ _local12.drawRect(_arg1, _arg2, _arg3, _arg4); } else { if ((_arg5 is Number)){ _local13 = (Number(_arg5) * 2); _local12.drawRoundRect(_arg1, _arg2, _arg3, _arg4, _local13, _local13); } else { GraphicsUtil.drawRoundRectComplex(_local12, _arg1, _arg2, _arg3, _arg4, _arg5.tl, _arg5.tr, _arg5.bl, _arg5.br); }; }; if (_arg11){ _local15 = _arg11.r; if ((_local15 is Number)){ _local13 = (Number(_local15) * 2); _local12.drawRoundRect(_arg11.x, _arg11.y, _arg11.w, _arg11.h, _local13, _local13); } else { GraphicsUtil.drawRoundRectComplex(_local12, _arg11.x, _arg11.y, _arg11.w, _arg11.h, _local15.tl, _local15.tr, _local15.bl, _local15.br); }; }; if (_arg6 !== null){ _local12.endFill(); }; } public function get processedDescriptors():Boolean{ return (_processedDescriptors); } public function set styleName(_arg1:Object):void{ if (_styleName != _arg1){ _styleName = (_arg1 as IStyleClient); invalidateDisplayList(); }; } public function setActualSize(_arg1:Number, _arg2:Number):void{ var _local3:Boolean; if (_width != _arg1){ _width = _arg1; _local3 = true; }; if (_height != _arg2){ _height = _arg2; _local3 = true; }; if (_local3){ invalidateDisplayList(); }; } public function styleChanged(_arg1:String):void{ invalidateDisplayList(); } override public function get width():Number{ return (_width); } public function invalidateProperties():void{ } public function get initialized():Boolean{ return (_initialized); } protected function rotatedGradientMatrix(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):Matrix{ tempMatrix.createGradientBox(_arg3, _arg4, ((_arg5 * Math.PI) / 180), _arg1, _arg2); return (tempMatrix); } public function move(_arg1:Number, _arg2:Number):void{ this.x = _arg1; this.y = _arg2; } public function get styleName():Object{ return (_styleName); } public function validateNow():void{ if (invalidateDisplayListFlag){ validateDisplayList(); }; } public function invalidateSize():void{ } public function validateProperties():void{ } } }//package mx.skins
Section 172
//RectangularBorder (mx.skins.RectangularBorder) package mx.skins { import flash.events.*; import mx.core.*; import flash.display.*; import mx.styles.*; import flash.system.*; import flash.geom.*; import mx.resources.*; import flash.utils.*; import flash.net.*; public class RectangularBorder extends Border implements IRectangularBorder { private var backgroundImage:DisplayObject; private var backgroundImageHeight:Number; private var _backgroundImageBounds:Rectangle; private var backgroundImageStyle:Object; private var backgroundImageWidth:Number; private var resourceManager:IResourceManager; mx_internal static const VERSION:String = "3.2.0.3958"; public function RectangularBorder(){ resourceManager = ResourceManager.getInstance(); super(); addEventListener(Event.REMOVED, removedHandler); } public function layoutBackgroundImage():void{ var _local4:Number; var _local5:Number; var _local7:Number; var _local8:Number; var _local14:Number; var _local15:Graphics; var _local1:DisplayObject = parent; var _local2:EdgeMetrics = ((_local1 is IContainer)) ? IContainer(_local1).viewMetrics : borderMetrics; var _local3 = !((getStyle("backgroundAttachment") == "fixed")); if (_backgroundImageBounds){ _local4 = _backgroundImageBounds.width; _local5 = _backgroundImageBounds.height; } else { _local4 = ((width - _local2.left) - _local2.right); _local5 = ((height - _local2.top) - _local2.bottom); }; var _local6:Number = getBackgroundSize(); if (isNaN(_local6)){ _local7 = 1; _local8 = 1; } else { _local14 = (_local6 * 0.01); _local7 = ((_local14 * _local4) / backgroundImageWidth); _local8 = ((_local14 * _local5) / backgroundImageHeight); }; backgroundImage.scaleX = _local7; backgroundImage.scaleY = _local8; var _local9:Number = Math.round((0.5 * (_local4 - (backgroundImageWidth * _local7)))); var _local10:Number = Math.round((0.5 * (_local5 - (backgroundImageHeight * _local8)))); backgroundImage.x = _local2.left; backgroundImage.y = _local2.top; var _local11:Shape = Shape(backgroundImage.mask); _local11.x = _local2.left; _local11.y = _local2.top; if (((_local3) && ((_local1 is IContainer)))){ _local9 = (_local9 - IContainer(_local1).horizontalScrollPosition); _local10 = (_local10 - IContainer(_local1).verticalScrollPosition); }; backgroundImage.alpha = getStyle("backgroundAlpha"); backgroundImage.x = (backgroundImage.x + _local9); backgroundImage.y = (backgroundImage.y + _local10); var _local12:Number = ((width - _local2.left) - _local2.right); var _local13:Number = ((height - _local2.top) - _local2.bottom); if (((!((_local11.width == _local12))) || (!((_local11.height == _local13))))){ _local15 = _local11.graphics; _local15.clear(); _local15.beginFill(0xFFFFFF); _local15.drawRect(0, 0, _local12, _local13); _local15.endFill(); }; } public function set backgroundImageBounds(_arg1:Rectangle):void{ _backgroundImageBounds = _arg1; invalidateDisplayList(); } private function getBackgroundSize():Number{ var _local3:int; var _local1:Number = NaN; var _local2:Object = getStyle("backgroundSize"); if (((_local2) && ((_local2 is String)))){ _local3 = _local2.indexOf("%"); if (_local3 != -1){ _local1 = Number(_local2.substr(0, _local3)); }; }; return (_local1); } private function removedHandler(_arg1:Event):void{ var _local2:IChildList; if (backgroundImage){ _local2 = ((parent is IRawChildrenContainer)) ? IRawChildrenContainer(parent).rawChildren : IChildList(parent); _local2.removeChild(backgroundImage.mask); _local2.removeChild(backgroundImage); backgroundImage = null; }; } private function initBackgroundImage(_arg1:DisplayObject):void{ backgroundImage = _arg1; if ((_arg1 is Loader)){ backgroundImageWidth = Loader(_arg1).contentLoaderInfo.width; backgroundImageHeight = Loader(_arg1).contentLoaderInfo.height; } else { backgroundImageWidth = backgroundImage.width; backgroundImageHeight = backgroundImage.height; if ((_arg1 is ISimpleStyleClient)){ ISimpleStyleClient(_arg1).styleName = styleName; }; }; var _local2:IChildList = ((parent is IRawChildrenContainer)) ? IRawChildrenContainer(parent).rawChildren : IChildList(parent); var _local3:Shape = new FlexShape(); _local3.name = "backgroundMask"; _local3.x = 0; _local3.y = 0; _local2.addChild(_local3); var _local4:int = _local2.getChildIndex(this); _local2.addChildAt(backgroundImage, (_local4 + 1)); backgroundImage.mask = _local3; } public function get backgroundImageBounds():Rectangle{ return (_backgroundImageBounds); } public function get hasBackgroundImage():Boolean{ return (!((backgroundImage == null))); } private function completeEventHandler(_arg1:Event):void{ if (!parent){ return; }; var _local2:DisplayObject = DisplayObject(LoaderInfo(_arg1.target).loader); initBackgroundImage(_local2); layoutBackgroundImage(); dispatchEvent(_arg1.clone()); } override protected function updateDisplayList(_arg1:Number, _arg2:Number):void{ var cls:Class; var newStyleObj:DisplayObject; var loader:Loader; var loaderContext:LoaderContext; var message:String; var unscaledWidth = _arg1; var unscaledHeight = _arg2; if (!parent){ return; }; var newStyle:Object = getStyle("backgroundImage"); if (newStyle != backgroundImageStyle){ removedHandler(null); backgroundImageStyle = newStyle; if (((newStyle) && ((newStyle as Class)))){ cls = Class(newStyle); initBackgroundImage(new (cls)); } else { if (((newStyle) && ((newStyle is String)))){ try { cls = Class(getDefinitionByName(String(newStyle))); } catch(e:Error) { }; if (cls){ newStyleObj = new (cls); initBackgroundImage(newStyleObj); } else { loader = new FlexLoader(); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeEventHandler); loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, errorEventHandler); loader.contentLoaderInfo.addEventListener(ErrorEvent.ERROR, errorEventHandler); loaderContext = new LoaderContext(); loaderContext.applicationDomain = new ApplicationDomain(ApplicationDomain.currentDomain); loader.load(new URLRequest(String(newStyle)), loaderContext); }; } else { if (newStyle){ message = resourceManager.getString("skins", "notLoaded", [newStyle]); throw (new Error(message)); }; }; }; }; if (backgroundImage){ layoutBackgroundImage(); }; } private function errorEventHandler(_arg1:Event):void{ } } }//package mx.skins
Section 173
//CSSStyleDeclaration (mx.styles.CSSStyleDeclaration) package mx.styles { import flash.events.*; import mx.core.*; import flash.display.*; import mx.managers.*; import flash.utils.*; public class CSSStyleDeclaration extends EventDispatcher { mx_internal var effects:Array; protected var overrides:Object; public var defaultFactory:Function; public var factory:Function; mx_internal var selectorRefCount:int;// = 0 private var styleManager:IStyleManager2; private var clones:Dictionary; mx_internal static const VERSION:String = "3.2.0.3958"; private static const NOT_A_COLOR:uint = 4294967295; private static const FILTERMAP_PROP:String = "__reserved__filterMap"; public function CSSStyleDeclaration(_arg1:String=null){ clones = new Dictionary(true); super(); if (_arg1){ styleManager = (Singleton.getInstance("mx.styles::IStyleManager2") as IStyleManager2); styleManager.setStyleDeclaration(_arg1, this, false); }; } mx_internal function addStyleToProtoChain(_arg1:Object, _arg2:DisplayObject, _arg3:Object=null):Object{ var p:String; var emptyObjectFactory:Function; var filteredChain:Object; var filterObjectFactory:Function; var i:String; var chain = _arg1; var target = _arg2; var filterMap = _arg3; var nodeAddedToChain:Boolean; var originalChain:Object = chain; if (filterMap){ chain = {}; }; if (defaultFactory != null){ defaultFactory.prototype = chain; chain = new defaultFactory(); nodeAddedToChain = true; }; if (factory != null){ factory.prototype = chain; chain = new factory(); nodeAddedToChain = true; }; if (overrides){ if ((((defaultFactory == null)) && ((factory == null)))){ emptyObjectFactory = function ():void{ }; emptyObjectFactory.prototype = chain; chain = new (emptyObjectFactory); nodeAddedToChain = true; }; for (p in overrides) { if (overrides[p] === undefined){ delete chain[p]; } else { chain[p] = overrides[p]; }; }; }; if (filterMap){ if (nodeAddedToChain){ filteredChain = {}; filterObjectFactory = function ():void{ }; filterObjectFactory.prototype = originalChain; filteredChain = new (filterObjectFactory); for (i in chain) { if (filterMap[i] != null){ filteredChain[filterMap[i]] = chain[i]; }; }; chain = filteredChain; chain[FILTERMAP_PROP] = filterMap; } else { chain = originalChain; }; }; if (nodeAddedToChain){ clones[chain] = 1; }; return (chain); } public function getStyle(_arg1:String){ var _local2:*; var _local3:*; if (overrides){ if ((((_arg1 in overrides)) && ((overrides[_arg1] === undefined)))){ return (undefined); }; _local3 = overrides[_arg1]; if (_local3 !== undefined){ return (_local3); }; }; if (factory != null){ factory.prototype = {}; _local2 = new factory(); _local3 = _local2[_arg1]; if (_local3 !== undefined){ return (_local3); }; }; if (defaultFactory != null){ defaultFactory.prototype = {}; _local2 = new defaultFactory(); _local3 = _local2[_arg1]; if (_local3 !== undefined){ return (_local3); }; }; return (undefined); } public function clearStyle(_arg1:String):void{ setStyle(_arg1, undefined); } public function setStyle(_arg1:String, _arg2):void{ var _local7:int; var _local8:Object; var _local3:Object = getStyle(_arg1); var _local4:Boolean; if ((((((((((selectorRefCount > 0)) && ((factory == null)))) && ((defaultFactory == null)))) && (!(overrides)))) && (!((_local3 === _arg2))))){ _local4 = true; }; if (_arg2 !== undefined){ setStyle(_arg1, _arg2); } else { if (_arg2 == _local3){ return; }; setStyle(_arg1, _arg2); }; var _local5:Array = SystemManagerGlobals.topLevelSystemManagers; var _local6:int = _local5.length; if (_local4){ _local7 = 0; while (_local7 < _local6) { _local8 = _local5[_local7]; _local8.regenerateStyleCache(true); _local7++; }; }; _local7 = 0; while (_local7 < _local6) { _local8 = _local5[_local7]; _local8.notifyStyleChangeInChildren(_arg1, true); _local7++; }; } private function clearStyleAttr(_arg1:String):void{ var _local2:*; if (!overrides){ overrides = {}; }; overrides[_arg1] = undefined; for (_local2 in clones) { delete _local2[_arg1]; }; } mx_internal function createProtoChainRoot():Object{ var _local1:Object = {}; if (defaultFactory != null){ defaultFactory.prototype = _local1; _local1 = new defaultFactory(); }; if (factory != null){ factory.prototype = _local1; _local1 = new factory(); }; clones[_local1] = 1; return (_local1); } mx_internal function clearOverride(_arg1:String):void{ if (((overrides) && (overrides[_arg1]))){ delete overrides[_arg1]; }; } mx_internal function setStyle(_arg1:String, _arg2):void{ var _local3:Object; var _local4:*; var _local5:Number; var _local6:Object; if (_arg2 === undefined){ clearStyleAttr(_arg1); return; }; if ((_arg2 is String)){ if (!styleManager){ styleManager = (Singleton.getInstance("mx.styles::IStyleManager2") as IStyleManager2); }; _local5 = styleManager.getColorName(_arg2); if (_local5 != NOT_A_COLOR){ _arg2 = _local5; }; }; if (defaultFactory != null){ _local3 = new defaultFactory(); if (_local3[_arg1] !== _arg2){ if (!overrides){ overrides = {}; }; overrides[_arg1] = _arg2; } else { if (overrides){ delete overrides[_arg1]; }; }; }; if (factory != null){ _local3 = new factory(); if (_local3[_arg1] !== _arg2){ if (!overrides){ overrides = {}; }; overrides[_arg1] = _arg2; } else { if (overrides){ delete overrides[_arg1]; }; }; }; if ((((defaultFactory == null)) && ((factory == null)))){ if (!overrides){ overrides = {}; }; overrides[_arg1] = _arg2; }; for (_local4 in clones) { _local6 = _local4[FILTERMAP_PROP]; if (_local6){ if (_local6[_arg1] != null){ _local4[_local6[_arg1]] = _arg2; }; } else { _local4[_arg1] = _arg2; }; }; } } }//package mx.styles
Section 174
//ISimpleStyleClient (mx.styles.ISimpleStyleClient) package mx.styles { public interface ISimpleStyleClient { function set styleName(_arg1:Object):void; function styleChanged(_arg1:String):void; function get styleName():Object; } }//package mx.styles
Section 175
//IStyleClient (mx.styles.IStyleClient) package mx.styles { public interface IStyleClient extends ISimpleStyleClient { function regenerateStyleCache(_arg1:Boolean):void; function get className():String; function clearStyle(_arg1:String):void; function getClassStyleDeclarations():Array; function get inheritingStyles():Object; function set nonInheritingStyles(_arg1:Object):void; function setStyle(_arg1:String, _arg2):void; function get styleDeclaration():CSSStyleDeclaration; function set styleDeclaration(_arg1:CSSStyleDeclaration):void; function get nonInheritingStyles():Object; function set inheritingStyles(_arg1:Object):void; function getStyle(_arg1:String); function notifyStyleChangeInChildren(_arg1:String, _arg2:Boolean):void; function registerEffects(_arg1:Array):void; } }//package mx.styles
Section 176
//IStyleManager (mx.styles.IStyleManager) package mx.styles { import flash.events.*; public interface IStyleManager { function isColorName(_arg1:String):Boolean; function registerParentDisplayListInvalidatingStyle(_arg1:String):void; function registerInheritingStyle(_arg1:String):void; function set stylesRoot(_arg1:Object):void; function get typeSelectorCache():Object; function styleDeclarationsChanged():void; function setStyleDeclaration(_arg1:String, _arg2:CSSStyleDeclaration, _arg3:Boolean):void; function isParentDisplayListInvalidatingStyle(_arg1:String):Boolean; function isSizeInvalidatingStyle(_arg1:String):Boolean; function get inheritingStyles():Object; function isValidStyleValue(_arg1):Boolean; function isParentSizeInvalidatingStyle(_arg1:String):Boolean; function getColorName(_arg1:Object):uint; function set typeSelectorCache(_arg1:Object):void; function unloadStyleDeclarations(_arg1:String, _arg2:Boolean=true):void; function getColorNames(_arg1:Array):void; function loadStyleDeclarations(_arg1:String, _arg2:Boolean=true, _arg3:Boolean=false):IEventDispatcher; function isInheritingStyle(_arg1:String):Boolean; function set inheritingStyles(_arg1:Object):void; function get stylesRoot():Object; function initProtoChainRoots():void; function registerColorName(_arg1:String, _arg2:uint):void; function registerParentSizeInvalidatingStyle(_arg1:String):void; function registerSizeInvalidatingStyle(_arg1:String):void; function clearStyleDeclaration(_arg1:String, _arg2:Boolean):void; function isInheritingTextFormatStyle(_arg1:String):Boolean; function getStyleDeclaration(_arg1:String):CSSStyleDeclaration; } }//package mx.styles
Section 177
//IStyleManager2 (mx.styles.IStyleManager2) package mx.styles { import flash.events.*; import flash.system.*; public interface IStyleManager2 extends IStyleManager { function get selectors():Array; function loadStyleDeclarations2(_arg1:String, _arg2:Boolean=true, _arg3:ApplicationDomain=null, _arg4:SecurityDomain=null):IEventDispatcher; } }//package mx.styles
Section 178
//IStyleModule (mx.styles.IStyleModule) package mx.styles { public interface IStyleModule { function unload():void; } }//package mx.styles
Section 179
//StyleManager (mx.styles.StyleManager) package mx.styles { import flash.events.*; import mx.core.*; import flash.system.*; public class StyleManager { mx_internal static const VERSION:String = "3.2.0.3958"; public static const NOT_A_COLOR:uint = 4294967295; private static var _impl:IStyleManager2; private static var implClassDependency:StyleManagerImpl; public static function isParentSizeInvalidatingStyle(_arg1:String):Boolean{ return (impl.isParentSizeInvalidatingStyle(_arg1)); } public static function registerInheritingStyle(_arg1:String):void{ impl.registerInheritingStyle(_arg1); } mx_internal static function set stylesRoot(_arg1:Object):void{ impl.stylesRoot = _arg1; } mx_internal static function get inheritingStyles():Object{ return (impl.inheritingStyles); } mx_internal static function styleDeclarationsChanged():void{ impl.styleDeclarationsChanged(); } public static function setStyleDeclaration(_arg1:String, _arg2:CSSStyleDeclaration, _arg3:Boolean):void{ impl.setStyleDeclaration(_arg1, _arg2, _arg3); } public static function registerParentDisplayListInvalidatingStyle(_arg1:String):void{ impl.registerParentDisplayListInvalidatingStyle(_arg1); } mx_internal static function get typeSelectorCache():Object{ return (impl.typeSelectorCache); } mx_internal static function set inheritingStyles(_arg1:Object):void{ impl.inheritingStyles = _arg1; } public static function isColorName(_arg1:String):Boolean{ return (impl.isColorName(_arg1)); } public static function isParentDisplayListInvalidatingStyle(_arg1:String):Boolean{ return (impl.isParentDisplayListInvalidatingStyle(_arg1)); } public static function isSizeInvalidatingStyle(_arg1:String):Boolean{ return (impl.isSizeInvalidatingStyle(_arg1)); } public static function getColorName(_arg1:Object):uint{ return (impl.getColorName(_arg1)); } mx_internal static function set typeSelectorCache(_arg1:Object):void{ impl.typeSelectorCache = _arg1; } public static function unloadStyleDeclarations(_arg1:String, _arg2:Boolean=true):void{ impl.unloadStyleDeclarations(_arg1, _arg2); } public static function getColorNames(_arg1:Array):void{ impl.getColorNames(_arg1); } public static function loadStyleDeclarations(_arg1:String, _arg2:Boolean=true, _arg3:Boolean=false, _arg4:ApplicationDomain=null, _arg5:SecurityDomain=null):IEventDispatcher{ return (impl.loadStyleDeclarations2(_arg1, _arg2, _arg4, _arg5)); } private static function get impl():IStyleManager2{ if (!_impl){ _impl = IStyleManager2(Singleton.getInstance("mx.styles::IStyleManager2")); }; return (_impl); } public static function isValidStyleValue(_arg1):Boolean{ return (impl.isValidStyleValue(_arg1)); } mx_internal static function get stylesRoot():Object{ return (impl.stylesRoot); } public static function isInheritingStyle(_arg1:String):Boolean{ return (impl.isInheritingStyle(_arg1)); } mx_internal static function initProtoChainRoots():void{ impl.initProtoChainRoots(); } public static function registerParentSizeInvalidatingStyle(_arg1:String):void{ impl.registerParentSizeInvalidatingStyle(_arg1); } public static function get selectors():Array{ return (impl.selectors); } public static function registerSizeInvalidatingStyle(_arg1:String):void{ impl.registerSizeInvalidatingStyle(_arg1); } public static function clearStyleDeclaration(_arg1:String, _arg2:Boolean):void{ impl.clearStyleDeclaration(_arg1, _arg2); } public static function registerColorName(_arg1:String, _arg2:uint):void{ impl.registerColorName(_arg1, _arg2); } public static function isInheritingTextFormatStyle(_arg1:String):Boolean{ return (impl.isInheritingTextFormatStyle(_arg1)); } public static function getStyleDeclaration(_arg1:String):CSSStyleDeclaration{ return (impl.getStyleDeclaration(_arg1)); } } }//package mx.styles
Section 180
//StyleManagerImpl (mx.styles.StyleManagerImpl) package mx.styles { import flash.events.*; import mx.core.*; import flash.system.*; import mx.modules.*; import mx.events.*; import mx.resources.*; import mx.managers.*; import flash.utils.*; public class StyleManagerImpl implements IStyleManager2 { private var _stylesRoot:Object; private var _selectors:Object; private var styleModules:Object; private var _inheritingStyles:Object; private var resourceManager:IResourceManager; private var _typeSelectorCache:Object; mx_internal static const VERSION:String = "3.2.0.3958"; private static var parentSizeInvalidatingStyles:Object = {bottom:true, horizontalCenter:true, left:true, right:true, top:true, verticalCenter:true, baseline:true}; private static var colorNames:Object = {transparent:"transparent", black:0, blue:0xFF, green:0x8000, gray:0x808080, silver:0xC0C0C0, lime:0xFF00, olive:0x808000, white:0xFFFFFF, yellow:0xFFFF00, maroon:0x800000, navy:128, red:0xFF0000, purple:0x800080, teal:0x8080, fuchsia:0xFF00FF, aqua:0xFFFF, magenta:0xFF00FF, cyan:0xFFFF, halogreen:8453965, haloblue:40447, haloorange:0xFFB600, halosilver:11455193}; private static var inheritingTextFormatStyles:Object = {align:true, bold:true, color:true, font:true, indent:true, italic:true, size:true}; private static var instance:IStyleManager2; private static var parentDisplayListInvalidatingStyles:Object = {bottom:true, horizontalCenter:true, left:true, right:true, top:true, verticalCenter:true, baseline:true}; private static var sizeInvalidatingStyles:Object = {borderStyle:true, borderThickness:true, fontAntiAliasType:true, fontFamily:true, fontGridFitType:true, fontSharpness:true, fontSize:true, fontStyle:true, fontThickness:true, fontWeight:true, headerHeight:true, horizontalAlign:true, horizontalGap:true, kerning:true, leading:true, letterSpacing:true, paddingBottom:true, paddingLeft:true, paddingRight:true, paddingTop:true, strokeWidth:true, tabHeight:true, tabWidth:true, verticalAlign:true, verticalGap:true}; public function StyleManagerImpl(){ _selectors = {}; styleModules = {}; resourceManager = ResourceManager.getInstance(); _inheritingStyles = {}; _typeSelectorCache = {}; super(); } public function setStyleDeclaration(_arg1:String, _arg2:CSSStyleDeclaration, _arg3:Boolean):void{ _arg2.selectorRefCount++; _selectors[_arg1] = _arg2; typeSelectorCache = {}; if (_arg3){ styleDeclarationsChanged(); }; } public function registerParentDisplayListInvalidatingStyle(_arg1:String):void{ parentDisplayListInvalidatingStyles[_arg1] = true; } public function getStyleDeclaration(_arg1:String):CSSStyleDeclaration{ var _local2:int; if (_arg1.charAt(0) != "."){ _local2 = _arg1.lastIndexOf("."); if (_local2 != -1){ _arg1 = _arg1.substr((_local2 + 1)); }; }; return (_selectors[_arg1]); } public function set typeSelectorCache(_arg1:Object):void{ _typeSelectorCache = _arg1; } public function isColorName(_arg1:String):Boolean{ return (!((colorNames[_arg1.toLowerCase()] === undefined))); } public function set inheritingStyles(_arg1:Object):void{ _inheritingStyles = _arg1; } public function getColorNames(_arg1:Array):void{ var _local4:uint; if (!_arg1){ return; }; var _local2:int = _arg1.length; var _local3:int; while (_local3 < _local2) { if (((!((_arg1[_local3] == null))) && (isNaN(_arg1[_local3])))){ _local4 = getColorName(_arg1[_local3]); if (_local4 != StyleManager.NOT_A_COLOR){ _arg1[_local3] = _local4; }; }; _local3++; }; } public function isInheritingTextFormatStyle(_arg1:String):Boolean{ return ((inheritingTextFormatStyles[_arg1] == true)); } public function registerParentSizeInvalidatingStyle(_arg1:String):void{ parentSizeInvalidatingStyles[_arg1] = true; } public function registerColorName(_arg1:String, _arg2:uint):void{ colorNames[_arg1.toLowerCase()] = _arg2; } public function isParentSizeInvalidatingStyle(_arg1:String):Boolean{ return ((parentSizeInvalidatingStyles[_arg1] == true)); } public function registerInheritingStyle(_arg1:String):void{ inheritingStyles[_arg1] = true; } public function set stylesRoot(_arg1:Object):void{ _stylesRoot = _arg1; } public function get typeSelectorCache():Object{ return (_typeSelectorCache); } public function isParentDisplayListInvalidatingStyle(_arg1:String):Boolean{ return ((parentDisplayListInvalidatingStyles[_arg1] == true)); } public function isSizeInvalidatingStyle(_arg1:String):Boolean{ return ((sizeInvalidatingStyles[_arg1] == true)); } public function styleDeclarationsChanged():void{ var _local4:Object; var _local1:Array = SystemManagerGlobals.topLevelSystemManagers; var _local2:int = _local1.length; var _local3:int; while (_local3 < _local2) { _local4 = _local1[_local3]; _local4.regenerateStyleCache(true); _local4.notifyStyleChangeInChildren(null, true); _local3++; }; } public function isValidStyleValue(_arg1):Boolean{ return (!((_arg1 === undefined))); } public function loadStyleDeclarations(_arg1:String, _arg2:Boolean=true, _arg3:Boolean=false):IEventDispatcher{ return (loadStyleDeclarations2(_arg1, _arg2)); } public function get inheritingStyles():Object{ return (_inheritingStyles); } public function unloadStyleDeclarations(_arg1:String, _arg2:Boolean=true):void{ var _local4:IModuleInfo; var _local3:StyleModuleInfo = styleModules[_arg1]; if (_local3){ _local3.styleModule.unload(); _local4 = _local3.module; _local4.unload(); _local4.removeEventListener(ModuleEvent.READY, _local3.readyHandler); _local4.removeEventListener(ModuleEvent.ERROR, _local3.errorHandler); styleModules[_arg1] = null; }; if (_arg2){ styleDeclarationsChanged(); }; } public function getColorName(_arg1:Object):uint{ var _local2:Number; var _local3:*; if ((_arg1 is String)){ if (_arg1.charAt(0) == "#"){ _local2 = Number(("0x" + _arg1.slice(1))); return ((isNaN(_local2)) ? StyleManager.NOT_A_COLOR : uint(_local2)); }; if ((((_arg1.charAt(1) == "x")) && ((_arg1.charAt(0) == "0")))){ _local2 = Number(_arg1); return ((isNaN(_local2)) ? StyleManager.NOT_A_COLOR : uint(_local2)); }; _local3 = colorNames[_arg1.toLowerCase()]; if (_local3 === undefined){ return (StyleManager.NOT_A_COLOR); }; return (uint(_local3)); }; return (uint(_arg1)); } public function isInheritingStyle(_arg1:String):Boolean{ return ((inheritingStyles[_arg1] == true)); } public function get stylesRoot():Object{ return (_stylesRoot); } public function initProtoChainRoots():void{ if (FlexVersion.compatibilityVersion < FlexVersion.VERSION_3_0){ delete _inheritingStyles["textDecoration"]; delete _inheritingStyles["leading"]; }; if (!stylesRoot){ stylesRoot = _selectors["global"].addStyleToProtoChain({}, null); }; } public function loadStyleDeclarations2(_arg1:String, _arg2:Boolean=true, _arg3:ApplicationDomain=null, _arg4:SecurityDomain=null):IEventDispatcher{ var module:IModuleInfo; var styleEventDispatcher:StyleEventDispatcher; var timer:Timer; var timerHandler:Function; var url = _arg1; var update = _arg2; var applicationDomain = _arg3; var securityDomain = _arg4; module = ModuleManager.getModule(url); var readyHandler:Function = function (_arg1:ModuleEvent):void{ var _local2:IStyleModule = IStyleModule(_arg1.module.factory.create()); styleModules[_arg1.module.url].styleModule = _local2; if (update){ styleDeclarationsChanged(); }; }; module.addEventListener(ModuleEvent.READY, readyHandler, false, 0, true); styleEventDispatcher = new StyleEventDispatcher(module); var errorHandler:Function = function (_arg1:ModuleEvent):void{ var _local3:StyleEvent; var _local2:String = resourceManager.getString("styles", "unableToLoad", [_arg1.errorText, url]); if (styleEventDispatcher.willTrigger(StyleEvent.ERROR)){ _local3 = new StyleEvent(StyleEvent.ERROR, _arg1.bubbles, _arg1.cancelable); _local3.bytesLoaded = 0; _local3.bytesTotal = 0; _local3.errorText = _local2; styleEventDispatcher.dispatchEvent(_local3); } else { throw (new Error(_local2)); }; }; module.addEventListener(ModuleEvent.ERROR, errorHandler, false, 0, true); styleModules[url] = new StyleModuleInfo(module, readyHandler, errorHandler); timer = new Timer(0); timerHandler = function (_arg1:TimerEvent):void{ timer.removeEventListener(TimerEvent.TIMER, timerHandler); timer.stop(); module.load(applicationDomain, securityDomain); }; timer.addEventListener(TimerEvent.TIMER, timerHandler, false, 0, true); timer.start(); return (styleEventDispatcher); } public function registerSizeInvalidatingStyle(_arg1:String):void{ sizeInvalidatingStyles[_arg1] = true; } public function clearStyleDeclaration(_arg1:String, _arg2:Boolean):void{ var _local3:CSSStyleDeclaration = getStyleDeclaration(_arg1); if (((_local3) && ((_local3.selectorRefCount > 0)))){ _local3.selectorRefCount--; }; delete _selectors[_arg1]; if (_arg2){ styleDeclarationsChanged(); }; } public function get selectors():Array{ var _local2:String; var _local1:Array = []; for (_local2 in _selectors) { _local1.push(_local2); }; return (_local1); } public static function getInstance():IStyleManager2{ if (!instance){ instance = new (StyleManagerImpl); }; return (instance); } } }//package mx.styles import flash.events.*; import mx.modules.*; import mx.events.*; class StyleEventDispatcher extends EventDispatcher { private function StyleEventDispatcher(_arg1:IModuleInfo){ _arg1.addEventListener(ModuleEvent.ERROR, moduleInfo_errorHandler, false, 0, true); _arg1.addEventListener(ModuleEvent.PROGRESS, moduleInfo_progressHandler, false, 0, true); _arg1.addEventListener(ModuleEvent.READY, moduleInfo_readyHandler, false, 0, true); } private function moduleInfo_progressHandler(_arg1:ModuleEvent):void{ var _local2:StyleEvent = new StyleEvent(StyleEvent.PROGRESS, _arg1.bubbles, _arg1.cancelable); _local2.bytesLoaded = _arg1.bytesLoaded; _local2.bytesTotal = _arg1.bytesTotal; dispatchEvent(_local2); } private function moduleInfo_readyHandler(_arg1:ModuleEvent):void{ var _local2:StyleEvent = new StyleEvent(StyleEvent.COMPLETE); dispatchEvent(_local2); } private function moduleInfo_errorHandler(_arg1:ModuleEvent):void{ var _local2:StyleEvent = new StyleEvent(StyleEvent.ERROR, _arg1.bubbles, _arg1.cancelable); _local2.bytesLoaded = _arg1.bytesLoaded; _local2.bytesTotal = _arg1.bytesTotal; _local2.errorText = _arg1.errorText; dispatchEvent(_local2); } } class StyleModuleInfo { public var errorHandler:Function; public var readyHandler:Function; public var module:IModuleInfo; public var styleModule:IStyleModule; private function StyleModuleInfo(_arg1:IModuleInfo, _arg2:Function, _arg3:Function){ this.module = _arg1; this.readyHandler = _arg2; this.errorHandler = _arg3; } }
Section 181
//ColorUtil (mx.utils.ColorUtil) package mx.utils { import mx.core.*; public class ColorUtil { mx_internal static const VERSION:String = "3.2.0.3958"; public static function adjustBrightness2(_arg1:uint, _arg2:Number):uint{ var _local3:Number; var _local4:Number; var _local5:Number; if (_arg2 == 0){ return (_arg1); }; if (_arg2 < 0){ _arg2 = ((100 + _arg2) / 100); _local3 = (((_arg1 >> 16) & 0xFF) * _arg2); _local4 = (((_arg1 >> 8) & 0xFF) * _arg2); _local5 = ((_arg1 & 0xFF) * _arg2); } else { _arg2 = (_arg2 / 100); _local3 = ((_arg1 >> 16) & 0xFF); _local4 = ((_arg1 >> 8) & 0xFF); _local5 = (_arg1 & 0xFF); _local3 = (_local3 + ((0xFF - _local3) * _arg2)); _local4 = (_local4 + ((0xFF - _local4) * _arg2)); _local5 = (_local5 + ((0xFF - _local5) * _arg2)); _local3 = Math.min(_local3, 0xFF); _local4 = Math.min(_local4, 0xFF); _local5 = Math.min(_local5, 0xFF); }; return ((((_local3 << 16) | (_local4 << 8)) | _local5)); } public static function rgbMultiply(_arg1:uint, _arg2:uint):uint{ var _local3:Number = ((_arg1 >> 16) & 0xFF); var _local4:Number = ((_arg1 >> 8) & 0xFF); var _local5:Number = (_arg1 & 0xFF); var _local6:Number = ((_arg2 >> 16) & 0xFF); var _local7:Number = ((_arg2 >> 8) & 0xFF); var _local8:Number = (_arg2 & 0xFF); return ((((((_local3 * _local6) / 0xFF) << 16) | (((_local4 * _local7) / 0xFF) << 8)) | ((_local5 * _local8) / 0xFF))); } public static function adjustBrightness(_arg1:uint, _arg2:Number):uint{ var _local3:Number = Math.max(Math.min((((_arg1 >> 16) & 0xFF) + _arg2), 0xFF), 0); var _local4:Number = Math.max(Math.min((((_arg1 >> 8) & 0xFF) + _arg2), 0xFF), 0); var _local5:Number = Math.max(Math.min(((_arg1 & 0xFF) + _arg2), 0xFF), 0); return ((((_local3 << 16) | (_local4 << 8)) | _local5)); } } }//package mx.utils
Section 182
//GraphicsUtil (mx.utils.GraphicsUtil) package mx.utils { import mx.core.*; import flash.display.*; public class GraphicsUtil { mx_internal static const VERSION:String = "3.2.0.3958"; public static function drawRoundRectComplex(_arg1:Graphics, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number, _arg7:Number, _arg8:Number, _arg9:Number):void{ var _local10:Number = (_arg2 + _arg4); var _local11:Number = (_arg3 + _arg5); var _local12:Number = ((_arg4 < _arg5)) ? (_arg4 * 2) : (_arg5 * 2); _arg6 = ((_arg6 < _local12)) ? _arg6 : _local12; _arg7 = ((_arg7 < _local12)) ? _arg7 : _local12; _arg8 = ((_arg8 < _local12)) ? _arg8 : _local12; _arg9 = ((_arg9 < _local12)) ? _arg9 : _local12; var _local13:Number = (_arg9 * 0.292893218813453); var _local14:Number = (_arg9 * 0.585786437626905); _arg1.moveTo(_local10, (_local11 - _arg9)); _arg1.curveTo(_local10, (_local11 - _local14), (_local10 - _local13), (_local11 - _local13)); _arg1.curveTo((_local10 - _local14), _local11, (_local10 - _arg9), _local11); _local13 = (_arg8 * 0.292893218813453); _local14 = (_arg8 * 0.585786437626905); _arg1.lineTo((_arg2 + _arg8), _local11); _arg1.curveTo((_arg2 + _local14), _local11, (_arg2 + _local13), (_local11 - _local13)); _arg1.curveTo(_arg2, (_local11 - _local14), _arg2, (_local11 - _arg8)); _local13 = (_arg6 * 0.292893218813453); _local14 = (_arg6 * 0.585786437626905); _arg1.lineTo(_arg2, (_arg3 + _arg6)); _arg1.curveTo(_arg2, (_arg3 + _local14), (_arg2 + _local13), (_arg3 + _local13)); _arg1.curveTo((_arg2 + _local14), _arg3, (_arg2 + _arg6), _arg3); _local13 = (_arg7 * 0.292893218813453); _local14 = (_arg7 * 0.585786437626905); _arg1.lineTo((_local10 - _arg7), _arg3); _arg1.curveTo((_local10 - _local14), _arg3, (_local10 - _local13), (_arg3 + _local13)); _arg1.curveTo(_local10, (_arg3 + _local14), _local10, (_arg3 + _arg7)); _arg1.lineTo(_local10, (_local11 - _arg9)); } } }//package mx.utils
Section 183
//NameUtil (mx.utils.NameUtil) package mx.utils { import mx.core.*; import flash.display.*; import flash.utils.*; public class NameUtil { mx_internal static const VERSION:String = "3.2.0.3958"; private static var counter:int = 0; public static function displayObjectToString(_arg1:DisplayObject):String{ var result:String; var o:DisplayObject; var s:String; var indices:Array; var displayObject = _arg1; try { o = displayObject; while (o != null) { if (((((o.parent) && (o.stage))) && ((o.parent == o.stage)))){ break; }; s = o.name; if ((o is IRepeaterClient)){ indices = IRepeaterClient(o).instanceIndices; if (indices){ s = (s + (("[" + indices.join("][")) + "]")); }; }; result = ((result == null)) ? s : ((s + ".") + result); o = o.parent; }; } catch(e:SecurityError) { }; return (result); } public static function createUniqueName(_arg1:Object):String{ if (!_arg1){ return (null); }; var _local2:String = getQualifiedClassName(_arg1); var _local3:int = _local2.indexOf("::"); if (_local3 != -1){ _local2 = _local2.substr((_local3 + 2)); }; var _local4:int = _local2.charCodeAt((_local2.length - 1)); if ((((_local4 >= 48)) && ((_local4 <= 57)))){ _local2 = (_local2 + "_"); }; return ((_local2 + counter++)); } } }//package mx.utils
Section 184
//StringUtil (mx.utils.StringUtil) package mx.utils { import mx.core.*; public class StringUtil { mx_internal static const VERSION:String = "3.2.0.3958"; public static function trim(_arg1:String):String{ if (_arg1 == null){ return (""); }; var _local2:int; while (isWhitespace(_arg1.charAt(_local2))) { _local2++; }; var _local3:int = (_arg1.length - 1); while (isWhitespace(_arg1.charAt(_local3))) { _local3--; }; if (_local3 >= _local2){ return (_arg1.slice(_local2, (_local3 + 1))); }; return (""); } public static function isWhitespace(_arg1:String):Boolean{ switch (_arg1){ case " ": case "\t": case "\r": case "\n": case "\f": return (true); default: return (false); }; } public static function substitute(_arg1:String, ... _args):String{ var _local4:Array; if (_arg1 == null){ return (""); }; var _local3:uint = _args.length; if ((((_local3 == 1)) && ((_args[0] is Array)))){ _local4 = (_args[0] as Array); _local3 = _local4.length; } else { _local4 = _args; }; var _local5:int; while (_local5 < _local3) { _arg1 = _arg1.replace(new RegExp((("\\{" + _local5) + "\\}"), "g"), _local4[_local5]); _local5++; }; return (_arg1); } public static function trimArrayElements(_arg1:String, _arg2:String):String{ var _local3:Array; var _local4:int; var _local5:int; if (((!((_arg1 == ""))) && (!((_arg1 == null))))){ _local3 = _arg1.split(_arg2); _local4 = _local3.length; _local5 = 0; while (_local5 < _local4) { _local3[_local5] = StringUtil.trim(_local3[_local5]); _local5++; }; if (_local4 > 0){ _arg1 = _local3.join(_arg2); }; }; return (_arg1); } } }//package mx.utils
Section 185
//BalanceUpdateEvent (Shop.BalanceUpdateEvent) package Shop { import flash.events.*; public class BalanceUpdateEvent extends Event { public var balance:int; public static const BALANCE_UPDATE:String = "OIJOSDOHSDHOSHDSOIDHBALANCEUPDATE"; public function BalanceUpdateEvent(_arg1:int, _arg2:Boolean=false, _arg3:Boolean=false){ super(BALANCE_UPDATE, _arg2, _arg3); this.balance = _arg1; } override public function clone():Event{ return (new BalanceUpdateEvent(balance, bubbles, cancelable)); } override public function toString():String{ return (formatToString("BalanceUpdateEvent", "type", "bubbles", "cancelable", "eventPhase")); } } }//package Shop
Section 186
//BoxClickEvent (Shop.BoxClickEvent) package Shop { import flash.events.*; public class BoxClickEvent extends Event { public var src:ShopBox; public static const BOX_CLICK_EVENT:String = "oihoishohxnmnfdoihBOXCLICKEVENT"; public function BoxClickEvent(_arg1:ShopBox, _arg2:Boolean=false, _arg3:Boolean=false){ super(BOX_CLICK_EVENT, _arg2, _arg3); this.src = _arg1; } override public function clone():Event{ return (new BoxClickEvent(src, bubbles, cancelable)); } override public function toString():String{ return (formatToString("BoxClickEvent", "type", "bubbles", "cancelable", "eventPhase")); } } }//package Shop
Section 187
//BoxOverEvent (Shop.BoxOverEvent) package Shop { import flash.events.*; public class BoxOverEvent extends Event { public var src:ShopBox; public static const BOX_OVER_EVENT:String = "oihoishohxnmnfdoihBOXOVEREVENT"; public function BoxOverEvent(_arg1:ShopBox, _arg2:Boolean=false, _arg3:Boolean=false){ super(BOX_OVER_EVENT, _arg2, _arg3); this.src = _arg1; } override public function clone():Event{ return (new BoxClickEvent(src, bubbles, cancelable)); } override public function toString():String{ return (formatToString("BoxOverEvent", "type", "bubbles", "cancelable", "eventPhase")); } } }//package Shop
Section 188
//ShopBox (Shop.ShopBox) package Shop { import flash.events.*; import flash.display.*; import GameLevel.*; import flash.text.*; import flash.utils.*; public class ShopBox extends Sprite { public var tfText_:TextField; private var alpha_:Number; private var lastAlpha_:Number; private var canBuy_:DisplayObject; public var desc:String;// = "This is the default description. It is super." private var itemImage_:Bitmap; private var skipBounce_:Boolean; private var cantBuy_:DisplayObject; private var targetX_:Number; private var mouseOver_:Boolean; public var tfCost_:TextField; private var tick_:DisplayObject; public var startTime_:int; private var background_:Sprite; public var cost_:int; private var shop_:ShopSection; private var maxed_:DisplayObject; private var targetY_:Number; public var applyBuy:Function; public static const ALPHA_ACCEL:Number = 40; private static const SHOPBOX_CLASS:Class = ShopBox_SHOPBOX_CLASS; public static const MIN_ALPHA:Number = 0.65; private static const SHOPBOX_MAXED_CLASS:Class = ShopBox_SHOPBOX_MAXED_CLASS; private static const SHOPBOX_CANT_BUY_CLASS:Class = ShopBox_SHOPBOX_CANT_BUY_CLASS; private static const TICK_CLASS:Class = ShopBox_TICK_CLASS; public static const BOUNCE_LENGTH:int = 1000; public function ShopBox(_arg1:ShopSection){ shop_ = _arg1; shop_.addEventListener(BalanceUpdateEvent.BALANCE_UPDATE, balanceUpdate, false, 0, true); maxed_ = new SHOPBOX_MAXED_CLASS(); canBuy_ = new SHOPBOX_CLASS(); cantBuy_ = new SHOPBOX_CANT_BUY_CLASS(); mouseOver_ = false; buttonMode = true; useHandCursor = true; background_ = new Sprite(); addChild(background_); background_.addChild(maxed_); background_.addChild(canBuy_); background_.addChild(cantBuy_); tick_ = new TICK_CLASS(); addEventListener(MouseEvent.MOUSE_OVER, mouseOver, false, 0, true); addEventListener(MouseEvent.MOUSE_OUT, mouseOut, false, 0, true); addEventListener(MouseEvent.CLICK, click, false, 0, true); itemImage_ = new Bitmap(new BitmapData(112, 112, true, 0)); var _local2:int = (0.5 * (width - itemImage_.width)); var _local3:int = (0.5 * (height - itemImage_.height)); addChild(itemImage_); itemImage_.x = _local2; itemImage_.y = _local3; var _local4:TextFormat = new TextFormat(); _local4.font = Fonts.DEFAULT_FONT; _local4.size = 16; _local4.color = 0xFFFFFF; _local4.align = TextFormatAlign.CENTER; tfText_ = new TextField(); tfText_.embedFonts = true; tfText_.defaultTextFormat = _local4; tfText_.antiAliasType = AntiAliasType.ADVANCED; tfText_.sharpness = 400; tfText_.autoSize = TextFieldAutoSize.LEFT; tfText_.text = "default text"; tfText_.selectable = false; addChild(tfText_); _local4.size = 24; tfCost_ = new TextField(); tfCost_.embedFonts = true; tfCost_.defaultTextFormat = _local4; tfCost_.antiAliasType = AntiAliasType.ADVANCED; tfCost_.sharpness = 400; tfCost_.autoSize = TextFieldAutoSize.LEFT; tfCost_.text = String("1234567890"); tfCost_.selectable = false; tfCost_.y = ((height - 2) - tfCost_.textHeight); addChild(tfCost_); addChild(tick_); var _local5:Sprite = new Sprite(); _local5.graphics.beginFill(0xFFFFFF, 0); _local5.graphics.drawRect(0, 0, width, height); _local5.graphics.endFill(); addChild(_local5); } private function balanceUpdate(_arg1:BalanceUpdateEvent):void{ tick_.visible = (-1 == cost_); canBuy_.visible = (cantBuy_.visible = (maxed_.visible = false)); if (-1 == cost_){ maxed_.visible = true; } else { if (cost_ > _arg1.balance){ cantBuy_.visible = true; } else { canBuy_.visible = true; }; }; } private function mouseOut(_arg1:MouseEvent):void{ mouseOver_ = false; } public function setBox(_arg1:String, _arg2:String, _arg3:int, _arg4:DisplayObject, _arg5:Number, _arg6:Number, _arg7:int, _arg8:Boolean=false):void{ itemImage_.bitmapData.fillRect(itemImage_.bitmapData.rect, 0); itemImage_.bitmapData.draw(_arg4); desc = _arg2; cost_ = _arg3; tfText_.text = _arg1; tfText_.x = (0.5 * (width - tfText_.width)); tfText_.y = 2; tfCost_.text = String(cost_); if (-1 != cost_){ tfCost_.text = addCommas(tfCost_.text); } else { tfCost_.text = "Maxed!"; }; tfCost_.x = (0.5 * (width - tfCost_.width)); targetX_ = _arg5; targetY_ = _arg6; skipBounce_ = _arg8; background_.alpha = (alpha_ = (lastAlpha_ = MIN_ALPHA)); startTime_ = (getTimer() + _arg7); update(); } private function mouseOver(_arg1:MouseEvent):void{ mouseOver_ = true; dispatchEvent(new BoxOverEvent(this)); } private function click(_arg1:MouseEvent):void{ dispatchEvent(new BoxClickEvent(this)); } public function update():void{ var _local1:int = Math.min((getTimer() - startTime_), BOUNCE_LENGTH); var _local2:Number = (_local1 / BOUNCE_LENGTH); x = ((targetX_ + 1000) - (1000 * Math.sin(((_local2 * Math.PI) / 2)))); y = targetY_; if (skipBounce_){ x = targetX_; y = targetY_; }; var _local3:Number = (((2 * alpha_) - lastAlpha_) + (((GameSection.DT * GameSection.DT) * ALPHA_ACCEL) * (mouseOver_) ? 1 : -1)); lastAlpha_ = alpha_; alpha_ = _local3; alpha_ = Math.min(1, alpha_); alpha_ = Math.max(MIN_ALPHA, alpha_); background_.alpha = alpha_; } public static function addCommas(_arg1:String):String{ var _local2 = ""; var _local3:int; while (_local3 < _arg1.length) { if (((!((0 == _local3))) && ((((_arg1.length - _local3) % 3) == 0)))){ _local2 = (_local2 + ","); }; _local2 = (_local2 + _arg1.charAt(_local3)); _local3++; }; return (_local2); } } }//package Shop
Section 189
//ShopBox_SHOPBOX_CANT_BUY_CLASS (Shop.ShopBox_SHOPBOX_CANT_BUY_CLASS) package Shop { import mx.core.*; public class ShopBox_SHOPBOX_CANT_BUY_CLASS extends BitmapAsset { } }//package Shop
Section 190
//ShopBox_SHOPBOX_CLASS (Shop.ShopBox_SHOPBOX_CLASS) package Shop { import mx.core.*; public class ShopBox_SHOPBOX_CLASS extends BitmapAsset { } }//package Shop
Section 191
//ShopBox_SHOPBOX_MAXED_CLASS (Shop.ShopBox_SHOPBOX_MAXED_CLASS) package Shop { import mx.core.*; public class ShopBox_SHOPBOX_MAXED_CLASS extends BitmapAsset { } }//package Shop
Section 192
//ShopBox_TICK_CLASS (Shop.ShopBox_TICK_CLASS) package Shop { import mx.core.*; public class ShopBox_TICK_CLASS extends BitmapAsset { } }//package Shop
Section 193
//ShopFuncs (Shop.ShopFuncs) package Shop { import GameLevel.*; public final class ShopFuncs { public static function weaponFunc(_arg1:GameData):void{ _arg1.shootLevel.val++; _arg1.shootSpeed.val = 0; } public static function scoreFunc(_arg1:GameData):void{ _arg1.score.val = (_arg1.score.val + 1000); } public static function bombFunc(_arg1:GameData):void{ _arg1.bombBuys.val++; _arg1.bombs.val++; } public static function healthFunc(_arg1:GameData):void{ _arg1.energyBuys.val++; _arg1.energy.val = Math.min(100, (_arg1.energy.val + 10)); } public static function helperFunc(_arg1:GameData):void{ _arg1.tinyShips.add(); } public static function speedFunc(_arg1:GameData):void{ _arg1.shootSpeed.val = 1; } public static function pipFunc(_arg1:GameData):void{ _arg1.pipSucker = true; } public static function nothing(_arg1:GameData):void{ trace("Nothing done"); } } }//package Shop
Section 194
//ShopGFX (Shop.ShopGFX) package Shop { import flash.display.*; public final class ShopGFX { public static const SCORE:DisplayObject = new score(); private static const helper1:Class = ShopGFX_helper1; private static const helper2:Class = ShopGFX_helper2; private static const helper3:Class = ShopGFX_helper3; private static const score:Class = ShopGFX_score; public static const SHOOT_LEVEL_2:DisplayObject = new shoot_level_2(); public static const SHOOT_LEVEL_3:DisplayObject = new shoot_level_3(); public static const SHOOT_LEVEL_4:DisplayObject = new shoot_level_4(); public static const SHOOT_LEVEL_5:DisplayObject = new shoot_level_5(); private static const health:Class = ShopGFX_health; private static const shoot_level_2:Class = ShopGFX_shoot_level_2; private static const shoot_level_3:Class = ShopGFX_shoot_level_3; private static const shoot_level_4:Class = ShopGFX_shoot_level_4; private static const shoot_level_5:Class = ShopGFX_shoot_level_5; public static const HEALTH:DisplayObject = new health(); private static const pip_sucker:Class = ShopGFX_pip_sucker; public static const SHOOT_SPEED:DisplayObject = new shoot_speed(); public static const HELPER_2:DisplayObject = new helper2(); public static const HELPER_3:DisplayObject = new helper3(); public static const HELPER_1:DisplayObject = new helper1(); private static const bomb:Class = ShopGFX_bomb; private static const shoot_speed:Class = ShopGFX_shoot_speed; public static const BOMB:DisplayObject = new bomb(); public static const PIP_SUCKER:DisplayObject = new pip_sucker(); } }//package Shop
Section 195
//ShopGFX_bomb (Shop.ShopGFX_bomb) package Shop { import mx.core.*; public class ShopGFX_bomb extends BitmapAsset { } }//package Shop
Section 196
//ShopGFX_health (Shop.ShopGFX_health) package Shop { import mx.core.*; public class ShopGFX_health extends BitmapAsset { } }//package Shop
Section 197
//ShopGFX_helper1 (Shop.ShopGFX_helper1) package Shop { import mx.core.*; public class ShopGFX_helper1 extends BitmapAsset { } }//package Shop
Section 198
//ShopGFX_helper2 (Shop.ShopGFX_helper2) package Shop { import mx.core.*; public class ShopGFX_helper2 extends BitmapAsset { } }//package Shop
Section 199
//ShopGFX_helper3 (Shop.ShopGFX_helper3) package Shop { import mx.core.*; public class ShopGFX_helper3 extends BitmapAsset { } }//package Shop
Section 200
//ShopGFX_pip_sucker (Shop.ShopGFX_pip_sucker) package Shop { import mx.core.*; public class ShopGFX_pip_sucker extends BitmapAsset { } }//package Shop
Section 201
//ShopGFX_score (Shop.ShopGFX_score) package Shop { import mx.core.*; public class ShopGFX_score extends BitmapAsset { } }//package Shop
Section 202
//ShopGFX_shoot_level_2 (Shop.ShopGFX_shoot_level_2) package Shop { import mx.core.*; public class ShopGFX_shoot_level_2 extends BitmapAsset { } }//package Shop
Section 203
//ShopGFX_shoot_level_3 (Shop.ShopGFX_shoot_level_3) package Shop { import mx.core.*; public class ShopGFX_shoot_level_3 extends BitmapAsset { } }//package Shop
Section 204
//ShopGFX_shoot_level_4 (Shop.ShopGFX_shoot_level_4) package Shop { import mx.core.*; public class ShopGFX_shoot_level_4 extends BitmapAsset { } }//package Shop
Section 205
//ShopGFX_shoot_level_5 (Shop.ShopGFX_shoot_level_5) package Shop { import mx.core.*; public class ShopGFX_shoot_level_5 extends BitmapAsset { } }//package Shop
Section 206
//ShopGFX_shoot_speed (Shop.ShopGFX_shoot_speed) package Shop { import mx.core.*; public class ShopGFX_shoot_speed extends BitmapAsset { } }//package Shop
Section 207
//ShopSection (Shop.ShopSection) package Shop { import flash.events.*; import flash.display.*; import flash.geom.*; import GameLevel.*; import flash.text.*; import HUD.*; import BouncyText.*; import flash.ui.*; public class ShopSection extends EventDispatcher implements IGameSection { private var holder_:Sprite; private var boxesLayer_:Sprite; private var hud_:HUDDisplay; private var next_:IGameSection; private var boxes_:Array; private var title_:Bouncy; private var gameData_:GameData; private var nextSection_:IGameSection; private var nextLevel_:SomeButton; private var sciFiText_:SciFiText; private var bg_:Bitmap; public function ShopSection(_arg1:GameData, _arg2:DisplayObject, _arg3:IGameSection){ Key.clearKeys(null); next_ = _arg3; boxes_ = []; Mouse.show(); nextSection_ = this; holder_ = new Sprite(); gameData_ = _arg1; bg_ = new Bitmap(ToBitmapData(_arg2, false)); bg_.bitmapData.colorTransform(bg_.bitmapData.rect, new ColorTransform(0.25, 0.25, 0.25)); holder_.addChild(bg_); sciFiText_ = new SciFiText(new TextField()); sciFiText_.x = (0.5 * Global.SCREEN_WIDTH); sciFiText_.y = (0.69 * Global.SCREEN_HEIGHT); holder_.addChild(sciFiText_); addBoxes(); title_ = new Bouncy("Space Shop", 45, 0xFFFFFF); title_.x = (0.5 * (Global.SCREEN_WIDTH - title_.width)); holder_.addChild(title_); dispatchEvent(new BalanceUpdateEvent(_arg1.balance.val)); nextLevel_ = new SomeButton("back to game"); nextLevel_.x = ((0.5 * (Global.SCREEN_WIDTH - nextLevel_.width)) + 15); nextLevel_.y = ((Global.SCREEN_HEIGHT - nextLevel_.height) - 35); holder_.addChild(nextLevel_); hud_ = new HUDDisplay(gameData_); holder_.addChild(hud_); hud_.pause.visible = false; nextLevel_.addEventListener(MouseEvent.CLICK, finishShop, false, 0, true); } public function draw():void{ hud_.draw(); sciFiText_.draw(); } private function onBoxOut(_arg1:MouseEvent):void{ sciFiText_.setText(new TextField()); } private function addBoxes(_arg1:Boolean=false):void{ boxesLayer_ = new Sprite(); holder_.addChild(boxesLayer_); switch (gameData_.shootLevel.val){ case 0: addBox(1, "a double shot weapon", this, "Weapons Upgrade", 100, ShopGFX.SHOOT_LEVEL_2, calcPos(0, 0, 3), 0, _arg1, ShopFuncs.weaponFunc); break; case 1: addBox(1, "a triple shot weapon", this, "Weapons Upgrade", 200, ShopGFX.SHOOT_LEVEL_3, calcPos(0, 0, 3), 0, _arg1, ShopFuncs.weaponFunc); break; case 2: addBox(1, "a triple shot weapon with rear laser", this, "Weapons Upgrade", 300, ShopGFX.SHOOT_LEVEL_4, calcPos(0, 0, 3), 0, _arg1, ShopFuncs.weaponFunc); break; case 3: addBox(1, "a triple shot weapon with dual rear laser", this, "Weapons Upgrade", 400, ShopGFX.SHOOT_LEVEL_5, calcPos(0, 0, 3), 0, _arg1, ShopFuncs.weaponFunc); break; default: addBox(1, "a triple shot weapon with dual rear laser", this, "Weapons Upgrade", -1, ShopGFX.SHOOT_LEVEL_5, calcPos(0, 0, 3), 0, _arg1, null); break; }; if (gameData_.shootSpeed.val == 0){ switch (gameData_.shootLevel.val){ case 0: addBox(2, "rapid shooting speed. note: you will need to purchase\nrapid shooting each time you upgrade your weapon", this, "Rapid Shooting", 100, ShopGFX.SHOOT_SPEED, calcPos(1, 0, 3), 0, _arg1, ShopFuncs.speedFunc); break; case 1: addBox(2, "rapid shooting speed. note: you will need to purchase\nrapid shooting each time you upgrade your weapon", this, "Rapid Shooting", 200, ShopGFX.SHOOT_SPEED, calcPos(1, 0, 3), 0, _arg1, ShopFuncs.speedFunc); break; case 2: addBox(2, "rapid shooting speed. note: you will need to purchase\nrapid shooting each time you upgrade your weapon", this, "Rapid Shooting", 300, ShopGFX.SHOOT_SPEED, calcPos(1, 0, 3), 0, _arg1, ShopFuncs.speedFunc); break; case 3: addBox(2, "rapid shooting speed. note: you will need to purchase\nrapid shooting each time you upgrade your weapon", this, "Rapid Shooting", 400, ShopGFX.SHOOT_SPEED, calcPos(1, 0, 3), 0, _arg1, ShopFuncs.speedFunc); break; case 4: addBox(2, "rapid shooting speed. note: you will need to purchase\nrapid shooting each time you upgrade your weapon", this, "Rapid Shooting", 500, ShopGFX.SHOOT_SPEED, calcPos(1, 0, 3), 0, _arg1, ShopFuncs.speedFunc); break; }; } else { addBox(2, "rapid shooting speed. note: you will need to purchase\nrapid shooting each time you upgrade your weapon", this, "Shoot Rate", -1, ShopGFX.SHOOT_SPEED, calcPos(1, 0, 3), 0, _arg1, null); }; switch (gameData_.tinyShips.num){ case 0: addBox(3, "adds a tiny helper ship to bring down enemies", this, "Helper", 100, ShopGFX.HELPER_1, calcPos(2, 0, 3), 0, _arg1, ShopFuncs.helperFunc); break; case 1: addBox(3, "adds a tiny helper ship to bring down enemies", this, "Helper", 100, ShopGFX.HELPER_2, calcPos(2, 0, 3), 0, _arg1, ShopFuncs.helperFunc); break; case 2: addBox(3, "adds a tiny helper ship to bring down enemies", this, "Helper", 100, ShopGFX.HELPER_3, calcPos(2, 0, 3), 0, _arg1, ShopFuncs.helperFunc); break; case 3: case 0: default: addBox(3, "adds a tiny helper ship to bring down enemies", this, "Helper", -1, ShopGFX.HELPER_3, calcPos(2, 0, 3), 0, _arg1, ShopFuncs.helperFunc); break; }; addBox(4, "replenishes your energy", this, "+10% energy", ((gameData_.energy.val == 100)) ? -1 : ((gameData_.energyBuys.val + 1) * 20), ShopGFX.HEALTH, calcPos(0, 1, 3), 0, _arg1, ShopFuncs.healthFunc); addBox(5, "extra smart bomb", this, "Bomb", ((gameData_.bombBuys.val + 1) * 200), ShopGFX.BOMB, calcPos(1, 1, 3), 0, _arg1, ShopFuncs.bombFunc); addBox(6, "increases your score", this, "+1000 score", 1000, ShopGFX.SCORE, calcPos(2, 1, 3), 0, _arg1, ShopFuncs.scoreFunc); } private function onBoxOver(_arg1:BoxOverEvent):void{ var _local2:TextField = HUDDisplay.makeTF(18); var _local3:TextFormat = _local2.defaultTextFormat; _local3.align = TextFormatAlign.CENTER; _local3.color = 0xFFFFFF; _local2.defaultTextFormat = _local3; _local2.text = ((String(_arg1.src.tfText_.text) + "\n") + _arg1.src.desc); sciFiText_.setText(_local2); } public function update():IGameSection{ var _local1:ShopBox; sciFiText_.update(Global.UPDATE_SECS); nextLevel_.update(); title_.update(GameSection.DT); for each (_local1 in boxes_) { _local1.update(); }; return (nextSection_); } private function finishShop(_arg1:Event):void{ nextLevel_.removeEventListener(MouseEvent.CLICK, finishShop, false); nextSection_ = next_; hud_.pause.visible = true; cleanUp(); } private function addBox(_arg1:int, _arg2:String, _arg3:ShopSection, _arg4:String, _arg5:int, _arg6:DisplayObject, _arg7:Point, _arg8:int, _arg9:Boolean, _arg10:Function):void{ var _local11:ShopBox; _arg8 = 0; if (!boxes_[_arg1]){ _local11 = new ShopBox(_arg3); boxes_[_arg1] = _local11; boxesLayer_.addChild(_local11); _local11.addEventListener(BoxClickEvent.BOX_CLICK_EVENT, onBoxClick, false, 0, true); _local11.addEventListener(BoxOverEvent.BOX_OVER_EVENT, onBoxOver, false, 0, true); _local11.addEventListener(MouseEvent.MOUSE_OUT, onBoxOut, false, 0, true); } else { _local11 = boxes_[_arg1]; }; _local11.setBox(_arg4, _arg2, _arg5, _arg6, _arg7.x, _arg7.y, _arg8, _arg9); _local11.applyBuy = _arg10; if (null == _arg10){ _local11.applyBuy = ShopFuncs.nothing; }; } private function cleanUp():void{ bg_.bitmapData.dispose(); } public function getGraphic():DisplayObject{ return (holder_); } private function onBalanceUpdate(_arg1:BalanceUpdateEvent):void{ } private function onBoxClick(_arg1:BoxClickEvent):void{ var _local2:Boolean = (((_arg1.src.cost_ <= gameData_.balance.val)) && (!((_arg1.src.cost_ == -1)))); if (_local2){ _arg1.src.applyBuy(gameData_); gameData_.balance.val = (gameData_.balance.val - _arg1.src.cost_); addBoxes(true); onBoxOver(new BoxOverEvent(_arg1.src)); dispatchEvent(new BalanceUpdateEvent(gameData_.balance.val)); }; } private function calcPos(_arg1:int, _arg2:int, _arg3:int):Point{ var _local4:Point = new Point(); var _local5:Number = (25 * (_arg3 - 1)); var _local6:Number = ((_arg3 * 116) + _local5); _local4.x = (0.5 * (Global.SCREEN_WIDTH - _local6)); var _local7:int; while (_local7 < _arg1) { _local4.x = (_local4.x + (116 + 25)); _local7++; }; _local4.y = (72 + (_arg2 * 146)); return (_local4); } } }//package Shop
Section 208
//SomeButton (Shop.SomeButton) package Shop { import flash.events.*; import flash.display.*; import GameLevel.*; import flash.text.*; public class SomeButton extends Sprite { private var alpha_:Number; private var mouseOver_:Boolean; private var lastAlpha_:Number; private var background_:Sprite; public static const MIN_ALPHA:Number = 0.65; private static const BUTTON:Class = SomeButton_BUTTON; public static const ALPHA_ACCEL:Number = 40; public function SomeButton(_arg1:String, _arg2:int=25, _arg3:int=268435455){ background_ = new Sprite(); addChild(background_); background_.alpha = (alpha_ = (lastAlpha_ = MIN_ALPHA)); var _local4:TextFormat = new TextFormat(); _local4.font = Fonts.DEFAULT_FONT; _local4.size = _arg2; _local4.color = _arg3; var _local5:TextField = new TextField(); _local5.embedFonts = true; _local5.defaultTextFormat = _local4; _local5.antiAliasType = AntiAliasType.ADVANCED; _local5.sharpness = 400; _local5.autoSize = TextFieldAutoSize.LEFT; _local5.text = _arg1; _local5.selectable = false; addChild(_local5); var _local6:DisplayObject = new BUTTON(); _local6.x = (0.5 * (width - _local6.width)); _local6.y = ((0.5 * (height - _local6.height)) + 2); background_.addChild(_local6); var _local7:Sprite = new Sprite(); _local7.graphics.beginFill(0xFF00FF, 0); _local7.graphics.drawRect(background_.x, background_.y, background_.width, background_.height); _local7.graphics.endFill(); addChild(_local7); _local7.x = _local6.x; _local7.y = _local6.y; _local7.useHandCursor = (_local7.buttonMode = true); mouseOver_ = false; addEventListener(MouseEvent.MOUSE_OVER, mouseOver, false, 0, true); addEventListener(MouseEvent.MOUSE_OUT, mouseOut, false, 0, true); } public function update():void{ var _local1:Number = (((2 * alpha_) - lastAlpha_) + (((GameSection.DT * GameSection.DT) * ALPHA_ACCEL) * (mouseOver_) ? 1 : -1)); lastAlpha_ = alpha_; alpha_ = _local1; alpha_ = Math.min(1, alpha_); alpha_ = Math.max(MIN_ALPHA, alpha_); background_.alpha = alpha_; } private function mouseOver(_arg1:MouseEvent):void{ mouseOver_ = true; } private function mouseOut(_arg1:MouseEvent):void{ mouseOver_ = false; } } }//package Shop
Section 209
//SomeButton_BUTTON (Shop.SomeButton_BUTTON) package Shop { import mx.core.*; public class SomeButton_BUTTON extends BitmapAsset { } }//package Shop
Section 210
//GameSounds (Sounds.GameSounds) package Sounds { import flash.media.*; public final class GameSounds { private static const MUSIC_:Class = GameSounds_MUSIC_; private static const NOTE11_:Class = GameSounds_NOTE11_; public static const HURT:Sound = new HURT_(); private static const LASER_:Class = GameSounds_LASER_; private static const NOTE8_:Class = GameSounds_NOTE8_; private static const NOTE4_:Class = GameSounds_NOTE4_; private static const SWOOSH1_:Class = GameSounds_SWOOSH1_; public static const BOMB:Sound = new BOMB_(); public static const LASER:Sound = new LASER_(); private static const NOTE12_:Class = GameSounds_NOTE12_; public static const DEFAULT_TRANSFORM:SoundTransform = new SoundTransform(1, 0); private static const HURT_:Class = GameSounds_HURT_; private static const NOTE9_:Class = GameSounds_NOTE9_; public static const SWOOSH2:Sound = new SWOOSH2_(); public static const SWOOSH3:Sound = new SWOOSH3_(); private static const NOTE5_:Class = GameSounds_NOTE5_; public static const SWOOSH1:Sound = new SWOOSH1_(); private static const NOTE1_:Class = GameSounds_NOTE1_; public static const EXPLODE:Sound = new EXPLODE_(); public static const NOTES:Array = [new NOTE1_(), new NOTE2_(), new NOTE3_(), new NOTE4_(), new NOTE5_(), new NOTE6_(), new NOTE7_(), new NOTE8_(), new NOTE9_(), new NOTE10_(), new NOTE11_(), new NOTE12_(), new NOTE13_()]; private static const EXPLODE_:Class = GameSounds_EXPLODE_; private static const SWOOSH2_:Class = GameSounds_SWOOSH2_; private static const NOTE13_:Class = GameSounds_NOTE13_; private static const NOTE6_:Class = GameSounds_NOTE6_; private static const NOTE2_:Class = GameSounds_NOTE2_; private static const SWOOSH3_:Class = GameSounds_SWOOSH3_; private static const NOTE10_:Class = GameSounds_NOTE10_; private static const NOTE7_:Class = GameSounds_NOTE7_; private static const BOMB_:Class = GameSounds_BOMB_; private static const NOTE3_:Class = GameSounds_NOTE3_; public static var MUSIC_CHANNEL:SoundChannel; public static function play(_arg1:Sound):void{ _arg1.play(0, 0, DEFAULT_TRANSFORM); } public static function playMusic():void{ var _local1:Sound = new MUSIC_(); MUSIC_CHANNEL = _local1.play(0, int.MAX_VALUE); } } }//package Sounds
Section 211
//GameSounds_BOMB_ (Sounds.GameSounds_BOMB_) package Sounds { import mx.core.*; public class GameSounds_BOMB_ extends SoundAsset { } }//package Sounds
Section 212
//GameSounds_EXPLODE_ (Sounds.GameSounds_EXPLODE_) package Sounds { import mx.core.*; public class GameSounds_EXPLODE_ extends SoundAsset { } }//package Sounds
Section 213
//GameSounds_HURT_ (Sounds.GameSounds_HURT_) package Sounds { import mx.core.*; public class GameSounds_HURT_ extends SoundAsset { } }//package Sounds
Section 214
//GameSounds_LASER_ (Sounds.GameSounds_LASER_) package Sounds { import mx.core.*; public class GameSounds_LASER_ extends SoundAsset { } }//package Sounds
Section 215
//GameSounds_MUSIC_ (Sounds.GameSounds_MUSIC_) package Sounds { import mx.core.*; public class GameSounds_MUSIC_ extends SoundAsset { } }//package Sounds
Section 216
//GameSounds_NOTE1_ (Sounds.GameSounds_NOTE1_) package Sounds { import mx.core.*; public class GameSounds_NOTE1_ extends SoundAsset { } }//package Sounds
Section 217
//GameSounds_NOTE10_ (Sounds.GameSounds_NOTE10_) package Sounds { import mx.core.*; public class GameSounds_NOTE10_ extends SoundAsset { } }//package Sounds
Section 218
//GameSounds_NOTE11_ (Sounds.GameSounds_NOTE11_) package Sounds { import mx.core.*; public class GameSounds_NOTE11_ extends SoundAsset { } }//package Sounds
Section 219
//GameSounds_NOTE12_ (Sounds.GameSounds_NOTE12_) package Sounds { import mx.core.*; public class GameSounds_NOTE12_ extends SoundAsset { } }//package Sounds
Section 220
//GameSounds_NOTE13_ (Sounds.GameSounds_NOTE13_) package Sounds { import mx.core.*; public class GameSounds_NOTE13_ extends SoundAsset { } }//package Sounds
Section 221
//GameSounds_NOTE2_ (Sounds.GameSounds_NOTE2_) package Sounds { import mx.core.*; public class GameSounds_NOTE2_ extends SoundAsset { } }//package Sounds
Section 222
//GameSounds_NOTE3_ (Sounds.GameSounds_NOTE3_) package Sounds { import mx.core.*; public class GameSounds_NOTE3_ extends SoundAsset { } }//package Sounds
Section 223
//GameSounds_NOTE4_ (Sounds.GameSounds_NOTE4_) package Sounds { import mx.core.*; public class GameSounds_NOTE4_ extends SoundAsset { } }//package Sounds
Section 224
//GameSounds_NOTE5_ (Sounds.GameSounds_NOTE5_) package Sounds { import mx.core.*; public class GameSounds_NOTE5_ extends SoundAsset { } }//package Sounds
Section 225
//GameSounds_NOTE6_ (Sounds.GameSounds_NOTE6_) package Sounds { import mx.core.*; public class GameSounds_NOTE6_ extends SoundAsset { } }//package Sounds
Section 226
//GameSounds_NOTE7_ (Sounds.GameSounds_NOTE7_) package Sounds { import mx.core.*; public class GameSounds_NOTE7_ extends SoundAsset { } }//package Sounds
Section 227
//GameSounds_NOTE8_ (Sounds.GameSounds_NOTE8_) package Sounds { import mx.core.*; public class GameSounds_NOTE8_ extends SoundAsset { } }//package Sounds
Section 228
//GameSounds_NOTE9_ (Sounds.GameSounds_NOTE9_) package Sounds { import mx.core.*; public class GameSounds_NOTE9_ extends SoundAsset { } }//package Sounds
Section 229
//GameSounds_SWOOSH1_ (Sounds.GameSounds_SWOOSH1_) package Sounds { import mx.core.*; public class GameSounds_SWOOSH1_ extends SoundAsset { } }//package Sounds
Section 230
//GameSounds_SWOOSH2_ (Sounds.GameSounds_SWOOSH2_) package Sounds { import mx.core.*; public class GameSounds_SWOOSH2_ extends SoundAsset { } }//package Sounds
Section 231
//GameSounds_SWOOSH3_ (Sounds.GameSounds_SWOOSH3_) package Sounds { import mx.core.*; public class GameSounds_SWOOSH3_ extends SoundAsset { } }//package Sounds
Section 232
//TitleSection (Titles.TitleSection) package Titles { import flash.events.*; import flash.display.*; import GameLevel.*; import flash.media.*; import Sounds.*; public class TitleSection implements IGameSection { private var stuff_:stuff; private var nextSection_:IGameSection; private var holder_:Sprite; public function TitleSection(){ holder_ = new Sprite(); super(); holder_.graphics.beginFill(0); holder_.graphics.drawRect(0, 0, Global.SCREEN_WIDTH, Global.SCREEN_HEIGHT); nextSection_ = this; stuff_ = new stuff(); stuff_.start.addEventListener(MouseEvent.CLICK, startClick); stuff_.sound.addEventListener(MouseEvent.CLICK, soundClick); stuff_.music.addEventListener(MouseEvent.CLICK, musicClick); holder_.addChild(stuff_); var _local1:Class = TitleSection_f; var _local2:DisplayObject = holder_.addChild(new (_local1)); _local2.y = (500 - _local2.height); } private function musicClick(_arg1:Event):void{ if (GameSounds.MUSIC_CHANNEL.soundTransform.volume > 0.5){ GameSounds.MUSIC_CHANNEL.soundTransform = new SoundTransform(0); } else { GameSounds.MUSIC_CHANNEL.soundTransform = new SoundTransform(1); }; } public function draw():void{ } public function update():IGameSection{ stuff_.sound.alpha = ((GameSounds.DEFAULT_TRANSFORM.volume > 0.5)) ? 1 : 0.3; stuff_.music.alpha = ((GameSounds.MUSIC_CHANNEL.soundTransform.volume > 0.5)) ? 1 : 0.3; return (nextSection_); } public function getGraphic():DisplayObject{ return (holder_); } private function startClick(_arg1:Event):void{ nextSection_ = new GameSection(new GameData()); } private function soundClick(_arg1:Event):void{ if (GameSounds.DEFAULT_TRANSFORM.volume > 0.5){ GameSounds.DEFAULT_TRANSFORM.volume = 0; } else { GameSounds.DEFAULT_TRANSFORM.volume = 1; }; } } }//package Titles
Section 233
//TitleSection_f (Titles.TitleSection_f) package Titles { import mx.core.*; public class TitleSection_f extends BitmapAsset { } }//package Titles
Section 234
//_activeButtonStyleStyle (_activeButtonStyleStyle) package { import mx.core.*; import mx.styles.*; public class _activeButtonStyleStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".activeButtonStyle"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".activeButtonStyle", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ }; }; } } }//package
Section 235
//_activeTabStyleStyle (_activeTabStyleStyle) package { import mx.core.*; import mx.styles.*; public class _activeTabStyleStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".activeTabStyle"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".activeTabStyle", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.fontWeight = "bold"; }; }; } } }//package
Section 236
//_alertButtonStyleStyle (_alertButtonStyleStyle) package { import mx.core.*; import mx.styles.*; public class _alertButtonStyleStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".alertButtonStyle"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".alertButtonStyle", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.color = 734012; }; }; } } }//package
Section 237
//_comboDropdownStyle (_comboDropdownStyle) package { import mx.core.*; import mx.styles.*; public class _comboDropdownStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".comboDropdown"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".comboDropdown", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.shadowDirection = "center"; this.fontWeight = "normal"; this.dropShadowEnabled = true; this.leading = 0; this.backgroundColor = 0xFFFFFF; this.shadowDistance = 1; this.cornerRadius = 0; this.borderThickness = 0; this.paddingLeft = 5; this.paddingRight = 5; }; }; } } }//package
Section 238
//_dataGridStylesStyle (_dataGridStylesStyle) package { import mx.core.*; import mx.styles.*; public class _dataGridStylesStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".dataGridStyles"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".dataGridStyles", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.fontWeight = "bold"; }; }; } } }//package
Section 239
//_dateFieldPopupStyle (_dateFieldPopupStyle) package { import mx.core.*; import mx.styles.*; public class _dateFieldPopupStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".dateFieldPopup"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".dateFieldPopup", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.dropShadowEnabled = true; this.backgroundColor = 0xFFFFFF; this.borderThickness = 0; }; }; } } }//package
Section 240
//_errorTipStyle (_errorTipStyle) package { import mx.core.*; import mx.styles.*; public class _errorTipStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".errorTip"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".errorTip", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.fontWeight = "bold"; this.borderStyle = "errorTipRight"; this.paddingTop = 4; this.borderColor = 13510953; this.color = 0xFFFFFF; this.fontSize = 9; this.shadowColor = 0; this.paddingLeft = 4; this.paddingBottom = 4; this.paddingRight = 4; }; }; } } }//package
Section 241
//_globalStyle (_globalStyle) package { import mx.core.*; import mx.styles.*; import mx.skins.halo.*; public class _globalStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration("global"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration("global", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.fillColor = 0xFFFFFF; this.kerning = false; this.iconColor = 0x111111; this.textRollOverColor = 2831164; this.horizontalAlign = "left"; this.shadowCapColor = 14015965; this.backgroundAlpha = 1; this.filled = true; this.textDecoration = "none"; this.roundedBottomCorners = true; this.fontThickness = 0; this.focusBlendMode = "normal"; this.fillColors = [0xFFFFFF, 0xCCCCCC, 0xFFFFFF, 0xEEEEEE]; this.horizontalGap = 8; this.borderCapColor = 9542041; this.buttonColor = 7305079; this.indentation = 17; this.selectionDisabledColor = 0xDDDDDD; this.closeDuration = 250; this.embedFonts = false; this.paddingTop = 0; this.letterSpacing = 0; this.focusAlpha = 0.4; this.bevel = true; this.fontSize = 10; this.shadowColor = 0xEEEEEE; this.borderAlpha = 1; this.paddingLeft = 0; this.fontWeight = "normal"; this.indicatorGap = 14; this.focusSkin = HaloFocusRect; this.dropShadowEnabled = false; this.leading = 2; this.borderSkin = HaloBorder; this.fontSharpness = 0; this.modalTransparencyDuration = 100; this.borderThickness = 1; this.backgroundSize = "auto"; this.borderStyle = "inset"; this.borderColor = 12040892; this.fontAntiAliasType = "advanced"; this.errorColor = 0xFF0000; this.shadowDistance = 2; this.horizontalGridLineColor = 0xF7F7F7; this.stroked = false; this.modalTransparencyColor = 0xDDDDDD; this.cornerRadius = 0; this.verticalAlign = "top"; this.textIndent = 0; this.fillAlphas = [0.6, 0.4, 0.75, 0.65]; this.verticalGridLineColor = 14015965; this.themeColor = 40447; this.version = "3.0.0"; this.shadowDirection = "center"; this.modalTransparency = 0.5; this.repeatInterval = 35; this.openDuration = 250; this.textAlign = "left"; this.fontFamily = "Verdana"; this.textSelectedColor = 2831164; this.paddingBottom = 0; this.strokeWidth = 1; this.fontGridFitType = "pixel"; this.horizontalGridLines = false; this.useRollOver = true; this.verticalGridLines = true; this.repeatDelay = 500; this.fontStyle = "normal"; this.dropShadowColor = 0; this.focusThickness = 2; this.verticalGap = 6; this.disabledColor = 11187123; this.paddingRight = 0; this.focusRoundedCorners = "tl tr bl br"; this.borderSides = "left top right bottom"; this.disabledIconColor = 0x999999; this.modalTransparencyBlur = 3; this.color = 734012; this.selectionDuration = 250; this.highlightAlphas = [0.3, 0]; }; }; } } }//package
Section 242
//_headerDateTextStyle (_headerDateTextStyle) package { import mx.core.*; import mx.styles.*; public class _headerDateTextStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".headerDateText"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".headerDateText", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.fontWeight = "bold"; this.textAlign = "center"; }; }; } } }//package
Section 243
//_headerDragProxyStyleStyle (_headerDragProxyStyleStyle) package { import mx.core.*; import mx.styles.*; public class _headerDragProxyStyleStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".headerDragProxyStyle"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".headerDragProxyStyle", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.fontWeight = "bold"; }; }; } } }//package
Section 244
//_linkButtonStyleStyle (_linkButtonStyleStyle) package { import mx.core.*; import mx.styles.*; public class _linkButtonStyleStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".linkButtonStyle"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".linkButtonStyle", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.paddingTop = 2; this.paddingLeft = 2; this.paddingBottom = 2; this.paddingRight = 2; }; }; } } }//package
Section 245
//_opaquePanelStyle (_opaquePanelStyle) package { import mx.core.*; import mx.styles.*; public class _opaquePanelStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".opaquePanel"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".opaquePanel", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.borderColor = 0xFFFFFF; this.backgroundColor = 0xFFFFFF; this.headerColors = [0xE7E7E7, 0xD9D9D9]; this.footerColors = [0xE7E7E7, 0xC7C7C7]; this.borderAlpha = 1; }; }; } } }//package
Section 246
//_plainStyle (_plainStyle) package { import mx.core.*; import mx.styles.*; public class _plainStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".plain"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".plain", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.paddingTop = 0; this.backgroundColor = 0xFFFFFF; this.backgroundImage = ""; this.horizontalAlign = "left"; this.paddingLeft = 0; this.paddingBottom = 0; this.paddingRight = 0; }; }; } } }//package
Section 247
//_popUpMenuStyle (_popUpMenuStyle) package { import mx.core.*; import mx.styles.*; public class _popUpMenuStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".popUpMenu"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".popUpMenu", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.fontWeight = "normal"; this.textAlign = "left"; }; }; } } }//package
Section 248
//_richTextEditorTextAreaStyleStyle (_richTextEditorTextAreaStyleStyle) package { import mx.core.*; import mx.styles.*; public class _richTextEditorTextAreaStyleStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".richTextEditorTextAreaStyle"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".richTextEditorTextAreaStyle", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ }; }; } } }//package
Section 249
//_swatchPanelTextFieldStyle (_swatchPanelTextFieldStyle) package { import mx.core.*; import mx.styles.*; public class _swatchPanelTextFieldStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".swatchPanelTextField"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".swatchPanelTextField", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.borderStyle = "inset"; this.borderColor = 14015965; this.highlightColor = 12897484; this.backgroundColor = 0xFFFFFF; this.shadowCapColor = 14015965; this.shadowColor = 14015965; this.paddingLeft = 5; this.buttonColor = 7305079; this.borderCapColor = 9542041; this.paddingRight = 5; }; }; } } }//package
Section 250
//_textAreaHScrollBarStyleStyle (_textAreaHScrollBarStyleStyle) package { import mx.core.*; import mx.styles.*; public class _textAreaHScrollBarStyleStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".textAreaHScrollBarStyle"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".textAreaHScrollBarStyle", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ }; }; } } }//package
Section 251
//_textAreaVScrollBarStyleStyle (_textAreaVScrollBarStyleStyle) package { import mx.core.*; import mx.styles.*; public class _textAreaVScrollBarStyleStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".textAreaVScrollBarStyle"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".textAreaVScrollBarStyle", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ }; }; } } }//package
Section 252
//_todayStyleStyle (_todayStyleStyle) package { import mx.core.*; import mx.styles.*; public class _todayStyleStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".todayStyle"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".todayStyle", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.color = 0xFFFFFF; this.textAlign = "center"; }; }; } } }//package
Section 253
//_weekDayStyleStyle (_weekDayStyleStyle) package { import mx.core.*; import mx.styles.*; public class _weekDayStyleStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".weekDayStyle"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".weekDayStyle", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.fontWeight = "bold"; this.textAlign = "center"; }; }; } } }//package
Section 254
//_windowStatusStyle (_windowStatusStyle) package { import mx.core.*; import mx.styles.*; public class _windowStatusStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".windowStatus"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".windowStatus", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.color = 0x666666; }; }; } } }//package
Section 255
//_windowStylesStyle (_windowStylesStyle) package { import mx.core.*; import mx.styles.*; public class _windowStylesStyle { public static function init(_arg1:IFlexModuleFactory):void{ var fbs = _arg1; var style:CSSStyleDeclaration = StyleManager.getStyleDeclaration(".windowStyles"); if (!style){ style = new CSSStyleDeclaration(); StyleManager.setStyleDeclaration(".windowStyles", style, false); }; if (style.defaultFactory == null){ style.defaultFactory = function ():void{ this.fontWeight = "bold"; }; }; } } }//package
Section 256
//en_US$core_properties (en_US$core_properties) package { import mx.resources.*; public class en_US$core_properties extends ResourceBundle { public function en_US$core_properties(){ super("en_US", "core"); } override protected function getContent():Object{ var _local1:Object = {multipleChildSets_ClassAndInstance:"Multiple sets of visual children have been specified for this component (component definition and component instance).", truncationIndicator:"...", notExecuting:"Repeater is not executing.", versionAlreadyRead:"Compatibility version has already been read.", multipleChildSets_ClassAndSubclass:"Multiple sets of visual children have been specified for this component (base component definition and derived component definition).", viewSource:"View Source", badFile:"File does not exist.", stateUndefined:"Undefined state '{0}'.", versionAlreadySet:"Compatibility version has already been set."}; return (_local1); } } }//package
Section 257
//en_US$skins_properties (en_US$skins_properties) package { import mx.resources.*; public class en_US$skins_properties extends ResourceBundle { public function en_US$skins_properties(){ super("en_US", "skins"); } override protected function getContent():Object{ var _local1:Object = {notLoaded:"Unable to load '{0}'."}; return (_local1); } } }//package
Section 258
//en_US$styles_properties (en_US$styles_properties) package { import mx.resources.*; public class en_US$styles_properties extends ResourceBundle { public function en_US$styles_properties(){ super("en_US", "styles"); } override protected function getContent():Object{ var _local1:Object = {unableToLoad:"Unable to load style({0}): {1}."}; return (_local1); } } }//package
Section 259
//Fonts (Fonts) package { import flash.text.*; public final class Fonts { private static const defaultFontClass:Class = Fonts_defaultFontClass; public static const DEFAULT_FONT:String = "_blockbit"; private static var fontsRegistered:Boolean = false; public static function registerFonts():void{ if (!fontsRegistered){ fontsRegistered = true; Font.registerFont(defaultFontClass); }; } } }//package
Section 260
//Fonts_defaultFontClass (Fonts_defaultFontClass) package { import mx.core.*; public class Fonts_defaultFontClass extends FontAsset { } }//package
Section 261
//FpsCounter (FpsCounter) package { import flash.events.*; import flash.display.*; import flash.text.*; import flash.utils.*; public class FpsCounter extends Sprite { private var lastTime:int; private var timeBank:int; private var updatePeriod:int; private var frames:int; private var tf:TextField; private var average:Number;// = -1 public static const DEFAULT_UPDATE_PERIOD:int = 1000; public function FpsCounter(_arg1:int=1000){ this.updatePeriod = _arg1; this.frames = 0; this.lastTime = -1; this.timeBank = 0; this.tf = new TextField(); this.tf.autoSize = TextFieldAutoSize.LEFT; this.tf.background = true; this.tf.backgroundColor = 0; this.tf.textColor = 0xFFFFFF; this.tf.selectable = false; this.tf.text = "-- FPS (-- avg)"; this.addChild(this.tf); this.addEventListener(Event.ENTER_FRAME, onEnterFrame); } private function onEnterFrame(_arg1:Event):void{ var _local3:int; var _local4:int; var _local2:int = getTimer(); if (-1 != this.lastTime){ _local3 = (_local2 - this.lastTime); this.timeBank = (this.timeBank + _local3); this.frames++; if (this.timeBank >= this.updatePeriod){ _local4 = ((1000 * (1 + this.frames)) / this.timeBank); this.frames = 0; this.timeBank = (this.timeBank - this.updatePeriod); if (-1 != this.average){ this.average = (this.average + _local4); this.average = (this.average / 2); } else { this.average = _local4; }; this.tf.text = (((String(_local4) + " FPS (") + int(this.average)) + " avg)"); }; }; this.lastTime = _local2; } } }//package
Section 262
//Global (Global) package { import flash.display.*; public final class Global { public static const MAX_FRAME_DELTA:int = 200; public static const SCREEN_WIDTH:int = 700; public static const SCREEN_HEIGHT:int = 500; public static const UPDATE_LENGTH:int = 20; public static const UPDATE_SECS:Number = 0.02; public static var cheater:Boolean = false; public static var k = null; public static var stage:Stage; } }//package
Section 263
//IGameSection (IGameSection) package { public interface IGameSection extends IHasGraphic { function update():IGameSection; function draw():void; } }//package
Section 264
//IHasGraphic (IHasGraphic) package { import flash.display.*; public interface IHasGraphic { function getGraphic():DisplayObject; } }//package
Section 265
//IntroSection (IntroSection) package { import flash.display.*; import flash.utils.*; import Sounds.*; import Titles.*; public class IntroSection implements IGameSection { private var start:int; private var nextSection_:IGameSection; private var holder_:Sprite; public function IntroSection(){ holder_ = new Sprite(); nextSection_ = this; holder_.graphics.beginFill(0); holder_.graphics.drawRect(0, 0, 700, 500); var _local1:Class = IntroSection_s; var _local2:ByteArray = new (_local1); var _local3:Loader = new Loader(); _local3.loadBytes(_local2); holder_.addChild(_local3); _local3.x = 75; _local3.y = 50; start = getTimer(); } public function update():IGameSection{ if ((getTimer() - start) > 4000){ GameSounds.playMusic(); nextSection_ = new TitleSection(); }; return (nextSection_); } public function getGraphic():DisplayObject{ return (holder_); } public function draw():void{ } } }//package
Section 266
//IntroSection_s (IntroSection_s) package { import mx.core.*; public class IntroSection_s extends ByteArrayAsset { } }//package
Section 267
//Key (Key) package { import flash.events.*; import flash.display.*; public class Key { private static var initialized:Boolean = false; private static var keysDown:Object = new Object(); public static function initialize(_arg1:Stage):void{ if (!initialized){ _arg1.addEventListener(KeyboardEvent.KEY_DOWN, keyPressed); _arg1.addEventListener(KeyboardEvent.KEY_UP, keyReleased); _arg1.addEventListener(Event.DEACTIVATE, clearKeys); _arg1.addEventListener(Event.ACTIVATE, clearKeys); initialized = true; }; } public static function clearKeys(_arg1:Event):void{ keysDown = new Object(); } public static function isDown(_arg1:uint):Boolean{ if (!initialized){ throw (new Error("Key class has yet been initialized.")); }; return (Boolean((_arg1 in keysDown))); } private static function keyPressed(_arg1:KeyboardEvent):void{ keysDown[_arg1.keyCode] = true; } private static function keyReleased(_arg1:KeyboardEvent):void{ if ((_arg1.keyCode in keysDown)){ delete keysDown[_arg1.keyCode]; }; } } }//package
Section 268
//Main (Main) package { import flash.events.*; import flash.display.*; import flash.system.*; import GameLevel.*; import flash.utils.*; import mochi.*; import CheatFree.*; import GameLevel.Level.*; import flash.net.*; public dynamic class Main extends Sprite { private var lastTime:int; private var section:IGameSection; private var timeBank:int; private var memoryReport_:MemoryReport; private var fps:FpsCounter; private var sectionHolder:Sprite; private var didUpdate_:Boolean; public function Main(){ var _local1 = "5315dc9ffcd03cf8"; Spectrum.Load(); LevelStore.init(); Fonts.registerFonts(); this.sectionHolder = new Sprite(); this.addChild(this.sectionHolder); var _local2:Shape = new Shape(); var _local3:Graphics = _local2.graphics; _local3.beginFill(0); _local3.drawRect(0, 0, Global.SCREEN_WIDTH, Global.SCREEN_HEIGHT); _local3.endFill(); addChild(_local2); this.mask = _local2; memoryReport_ = new MemoryReport((30 * 1000)); this.didUpdate_ = false; this.timeBank = 0; this.addEventListener(Event.ENTER_FRAME, onEnterFrame); Security.allowDomain("kongregate.com"); Security.allowDomain("www.kongregate.com"); } private function onRender(_arg1:Event):void{ if (didUpdate_){ didUpdate_ = false; this.section.draw(); }; } private function onAddedToStage(_arg1:Event):void{ var _local3:Object; var _local4:String; var _local5:URLRequest; var _local6:Loader; Global.stage = this.stage; Key.initialize(stage); this.lastTime = getTimer(); MochiServices.connect("5315dc9ffcd03cf8", this); this.section = new SiteLock(loaderInfo.loaderURL); var _local2:Object = root.loaderInfo.loader; if (((_local2) && (!((root.loaderInfo.loaderURL.indexOf("kongregate.com") == -1))))){ _local3 = LoaderInfo(_local2.loaderInfo).parameters; _local4 = ((_local3.api_path) || ("http://www.kongregate.com/flash/API_AS3_Local.swf")); trace(("API path: " + _local4)); _local5 = new URLRequest(_local4); _local6 = new Loader(); _local6.contentLoaderInfo.addEventListener(Event.COMPLETE, loadComplete); _local6.load(_local5); this.addChild(_local6); }; this.sectionHolder.addChild(this.section.getGraphic()); Global.stage.addEventListener(Event.RENDER, onRender); stage.stageFocusRect = false; } private function onEnterFrame(_arg1:Event):void{ var _local2:int; var _local3:int; var _local4:IGameSection; if (Global.stage){ if (Global.stage.focus){ if (Global.stage != Global.stage.focus){ if (!Global.stage.focus.root){ Global.stage.focus = Global.stage; }; }; }; _local2 = getTimer(); _local3 = (_local2 - this.lastTime); this.lastTime = _local2; if (_local3 > Global.MAX_FRAME_DELTA){ trace("Warning: Frame has exceeded maximum frame delta"); _local3 = Global.MAX_FRAME_DELTA; }; this.timeBank = (this.timeBank + _local3); if (this.timeBank > 0){ while (this.timeBank >= Global.UPDATE_LENGTH) { this.timeBank = (this.timeBank - Global.UPDATE_LENGTH); _local4 = this.section.update(); didUpdate_ = true; if (Global.cheater){ _local4 = new CheatSection(); }; if (_local4 != this.section){ this.sectionHolder.removeChild(this.section.getGraphic()); this.sectionHolder.addChild(_local4.getGraphic()); this.section = _local4; }; }; }; Global.stage.invalidate(); } else { if (this.stage){ this.onAddedToStage(null); }; }; } private function loadComplete(_arg1:Event):void{ Global.k = _arg1.target.content; Global.k.services.connect(); trace(("\n" + Global.k.services)); trace(("\n" + Global.k.user)); trace(("\n" + Global.k.scores)); trace(("\n" + Global.k.stats)); } } }//package
Section 269
//MemoryReport (MemoryReport) package { import flash.events.*; import flash.system.*; import flash.utils.*; public class MemoryReport { private var timer_:Timer; public static const DEFAULT_UPDATE_PERIOD:int = 10000; public function MemoryReport(_arg1:int=10000){ timer_ = new Timer(_arg1); timer_.addEventListener(TimerEvent.TIMER, onTimer); timer_.start(); onTimer(null); } private function onTimer(_arg1:TimerEvent):void{ var _local2:Number = (System.totalMemory / (0x0400 * 0x0400)); var _local3:Date = new Date(); var _local4:String = ((((pad(_local3.getHours()) + ":") + pad(_local3.getMinutes())) + ":") + pad(_local3.getSeconds())); trace(((((_local2.toPrecision(2) + "MB") + "\t(") + _local4) + ")")); } private static function pad(_arg1:int, _arg2:int=2):String{ var _local3:String = String(_arg1); while (_local3.length < _arg2) { _local3 = ("0" + _local3); }; return (_local3); } } }//package
Section 270
//Preloader (Preloader) package { import flash.events.*; import flash.display.*; import flash.text.*; import flash.utils.*; public dynamic class Preloader extends MovieClip { private var tf:TextField; public static var MAIN_CLASS:String = "Main"; public function Preloader(){ stop(); addEventListener(Event.ENTER_FRAME, onEnterFrame); tf = new TextField(); tf.selectable = false; tf.autoSize = TextFieldAutoSize.LEFT; tf.defaultTextFormat = new TextFormat("Arial", 10, 0xFFFFFF); tf.text = "Space Pips is loading..."; addChild(tf); } private function init():void{ var _local2:Object; var _local1:Class = Class(getDefinitionByName(MAIN_CLASS)); if (_local1){ _local2 = new (_local1); addChild((_local2 as DisplayObject)); }; } private function draw(_arg1:Number):void{ if (!stage){ return; }; graphics.clear(); graphics.beginFill(0); graphics.drawRect(0, 0, stage.stageWidth, stage.stageHeight); var _local2:Number = 15; graphics.beginFill(0xBBBBBB); graphics.drawRect(50, Math.floor((0.5 * (stage.stageHeight - _local2))), (_arg1 * (stage.stageWidth - 100)), _local2); graphics.endFill(); graphics.lineStyle(1, 0xFFFFFF); graphics.drawRect(50, Math.floor((0.5 * (stage.stageHeight - _local2))), (stage.stageWidth - 100), _local2); tf.x = (0.5 * (stage.stageWidth - tf.width)); tf.y = (Math.floor((0.5 * (stage.stageHeight - _local2))) - tf.height); } public function onEnterFrame(_arg1:Event):void{ var _local2:Number; graphics.clear(); if (framesLoaded == totalFrames){ removeEventListener(Event.ENTER_FRAME, onEnterFrame); nextFrame(); init(); } else { _local2 = (root.loaderInfo.bytesLoaded / root.loaderInfo.bytesTotal); draw(_local2); }; } } }//package
Section 271
//SciFiText (SciFiText) package { import flash.display.*; import flash.geom.*; import flash.text.*; public class SciFiText extends Sprite { private var counter_:Number; private var pos_:int; private var tf_:TextField; private var clip_:Shape; public static const WAIT:Number = 0.02; public function SciFiText(_arg1:TextField){ clip_ = new Shape(); counter_ = 0; mask = clip_; addChild(clip_); setText(_arg1); pos_ = 0; draw(); } public function draw():void{ var _local3:Rectangle; var _local4:Object; clip_.graphics.clear(); clip_.graphics.beginFill(1); var _local1:int; while (_local1 < pos_) { _local3 = tf_.getCharBoundaries(_local1); if (_local3){ clip_.graphics.drawRect(_local3.x, _local3.y, _local3.width, _local3.height); }; _local1++; }; clip_.graphics.endFill(); var _local2:TextFormat = tf_.defaultTextFormat; if (pos_ < tf_.length){ _local4 = _local2.color; _local2.color = 0xFFFFFF; tf_.setTextFormat(_local2); _local2.color = _local4; tf_.setTextFormat(_local2, 0, Math.max(1, (pos_ - 1))); } else { tf_.setTextFormat(_local2); }; } public function setText(_arg1:TextField):void{ if (tf_){ removeChild(tf_); }; tf_ = _arg1; pos_ = 0; counter_ = 0; clip_.x = (tf_.x = (-0.5 * tf_.width)); addChild(tf_); } public function update(_arg1:Number):void{ counter_ = (counter_ - _arg1); while (counter_ < 0) { counter_ = (counter_ + WAIT); if (pos_ < tf_.text.length){ pos_++; }; }; } } }//package
Section 272
//SiteLock (SiteLock) package { import flash.display.*; import flash.text.*; public class SiteLock implements IGameSection { private var holder:Sprite; private var nextSection:IGameSection; public static const ALLOWED:Array = ["armorgames.com", "wayne-marsh.com"]; public function SiteLock(_arg1:String){ var _local7:int; var _local8:TextField; var _local9:TextFormat; super(); this.holder = new Sprite(); var _local2:String = _arg1; var _local3:int = _arg1.indexOf("://"); if (-1 != _local3){ _local3 = (_local3 + 3); _local7 = _arg1.indexOf("/", _local3); if (-1 != _local7){ _local2 = _arg1.substring(_local3, _local7); }; }; var _local4:Boolean; var _local5:int; while (_local5 < ALLOWED.length) { if (_local2.indexOf(ALLOWED[_local5]) != -1){ _local4 = true; }; _local5++; }; var _local6 = "file://"; if (_local6 == _arg1.substr(0, _local6.length)){ _local4 = true; }; if (_local4){ this.nextSection = new IntroSection(); } else { this.nextSection = this; _local8 = new TextField(); _local8.autoSize = TextFieldAutoSize.CENTER; _local8.x = 320; _local9 = new TextFormat(); _local9.align = TextFormatAlign.CENTER; _local8.defaultTextFormat = _local9; _local8.text = (("You loaded this game from\n" + _local2) + "\nwhich is not an allowed site.\nThe game will not run."); this.holder.addChild(_local8); }; } public function mouseUp(_arg1:int, _arg2:int):void{ } public function update():IGameSection{ return (this.nextSection); } public function mouseDown(_arg1:int, _arg2:int):void{ } public function keyDown(_arg1:uint):void{ } public function visualUpdate(_arg1:int):void{ } public function getGraphic():DisplayObject{ return (this.holder); } public function keyUp(_arg1:uint):void{ } public function draw():void{ } } }//package
Section 273
//stuff (stuff) package { import flash.display.*; public dynamic class stuff extends MovieClip { public const LINK:Class; public var start:SimpleButton; public var music:SimpleButton; public var loader:Loader; public var sound:SimpleButton; public function stuff(){ LINK = stuff_LINK; super(); addFrameScript(0, frame1); } function frame1(){ loader = new Loader(); loader.loadBytes(new LINK()); addChild(loader); loader.x = (700 - 150); loader.y = (500 - 35); } } }//package
Section 274
//stuff_LINK (stuff_LINK) package { import mx.core.*; public class stuff_LINK extends ByteArrayAsset { } }//package

Library Items

Symbol 1 Sound {CheatFree.CheatSection_SOUND} [CheatFree.CheatSection_SOUND]
Symbol 2 Sound {Sounds.GameSounds_NOTE8_} [Sounds.GameSounds_NOTE8_]
Symbol 3 Sound {Sounds.GameSounds_NOTE12_} [Sounds.GameSounds_NOTE12_]
Symbol 4 Sound {Sounds.GameSounds_NOTE3_} [Sounds.GameSounds_NOTE3_]
Symbol 5 Sound {Sounds.GameSounds_NOTE6_} [Sounds.GameSounds_NOTE6_]
Symbol 6 Sound {Sounds.GameSounds_LASER_} [Sounds.GameSounds_LASER_]
Symbol 7 Sound {Sounds.GameSounds_NOTE1_} [Sounds.GameSounds_NOTE1_]
Symbol 8 Sound {Sounds.GameSounds_SWOOSH2_} [Sounds.GameSounds_SWOOSH2_]
Symbol 9 Sound {Sounds.GameSounds_NOTE10_} [Sounds.GameSounds_NOTE10_]
Symbol 10 Sound {Sounds.GameSounds_EXPLODE_} [Sounds.GameSounds_EXPLODE_]
Symbol 11 Sound {Sounds.GameSounds_MUSIC_} [Sounds.GameSounds_MUSIC_]
Symbol 12 Sound {Sounds.GameSounds_NOTE11_} [Sounds.GameSounds_NOTE11_]
Symbol 13 Sound {Sounds.GameSounds_NOTE4_} [Sounds.GameSounds_NOTE4_]
Symbol 14 Sound {Sounds.GameSounds_NOTE7_} [Sounds.GameSounds_NOTE7_]
Symbol 15 Sound {Sounds.GameSounds_NOTE2_} [Sounds.GameSounds_NOTE2_]
Symbol 16 Sound {Sounds.GameSounds_NOTE5_} [Sounds.GameSounds_NOTE5_]
Symbol 17 Sound {Sounds.GameSounds_NOTE13_} [Sounds.GameSounds_NOTE13_]
Symbol 18 Sound {Sounds.GameSounds_NOTE9_} [Sounds.GameSounds_NOTE9_]
Symbol 19 Sound {Sounds.GameSounds_SWOOSH3_} [Sounds.GameSounds_SWOOSH3_]
Symbol 20 Sound {Sounds.GameSounds_SWOOSH1_} [Sounds.GameSounds_SWOOSH1_]
Symbol 21 Sound {Sounds.GameSounds_BOMB_} [Sounds.GameSounds_BOMB_]
Symbol 22 Sound {Sounds.GameSounds_HURT_} [Sounds.GameSounds_HURT_]
Symbol 23 FontUsed by:24
Symbol 24 EditableTextUses:23Used by:42
Symbol 25 FontUsed by:26 27 28 30 31 33 34
Symbol 26 EditableTextUses:25Used by:42
Symbol 27 EditableTextUses:25Used by:29
Symbol 28 EditableTextUses:25Used by:29
Symbol 29 ButtonUses:27 28Used by:42
Symbol 30 EditableTextUses:25Used by:32
Symbol 31 EditableTextUses:25Used by:32
Symbol 32 ButtonUses:30 31Used by:42
Symbol 33 EditableTextUses:25Used by:35
Symbol 34 EditableTextUses:25Used by:35
Symbol 35 ButtonUses:33 34Used by:42
Symbol 36 BitmapUsed by:40
Symbol 37 BitmapUsed by:40
Symbol 38 BitmapUsed by:40
Symbol 39 BitmapUsed by:40
Symbol 40 GraphicUses:38 37 36 39Used by:41
Symbol 41 MovieClipUses:40Used by:42
Symbol 42 MovieClip {stuff} [stuff]Uses:24 26 29 32 35 41
Symbol 43 BinaryData {stuff_LINK} [stuff_LINK]
Symbol 44 Bitmap {CheatFree.CheatSection_IMG}
Symbol 45 Bitmap {GameLevel.EnemyGFX_BLUE_SHIP_GFX}
Symbol 46 Bitmap {GameLevel.EnemyGFX_BLUE_SHIP_PALE_GFX}
Symbol 47 Bitmap {GameLevel.Particles.GFX_WHITE_PARTICLE_}
Symbol 48 Bitmap {GameLevel.GameGFX_BULLET_TINY_GFX}
Symbol 49 Bitmap {GameLevel.Scores.ScoreGFX_NUMBERS03_}
Symbol 50 Bitmap {GameLevel.GameGFX_MAP_BG_}
Symbol 51 Bitmap {GameLevel.EnemyGFX_SNAKEBODY1_GFX}
Symbol 52 Bitmap {Shop.ShopGFX_health}
Symbol 53 Bitmap {GameLevel.EnemyGFX_SNAKEHEAD_GFX}
Symbol 54 Bitmap {GameLevel.EnemyGFX_SPLITTER_GFX}
Symbol 55 Bitmap {GameLevel.GameGFX_CURSOR_GFX}
Symbol 56 Bitmap {Shop.ShopGFX_shoot_speed}
Symbol 57 Bitmap {GameLevel.GameGFX_WHORL_GFX}
Symbol 58 Bitmap {GameLevel.EnemyGFX_SHIELD_SHIP_GFX}
Symbol 59 Bitmap {GameLevel.EnemyGFX_FEELER_GFX}
Symbol 60 Bitmap {GameLevel.Particles.GFX_RAINBOW_}
Symbol 61 Bitmap {GameLevel.Scores.ScoreGFX_NUMBERS09_}
Symbol 62 Bitmap {HUD.HUDDisplay_BOMB}
Symbol 63 Bitmap {GameLevel.EnemyGFX_SPIKER_GFX}
Symbol 64 Bitmap {GameLevel.Scores.ScoreGFX_NUMBERS04_}
Symbol 65 Bitmap {GameLevel.GameGFX_BULLET_GFX}
Symbol 66 Font {Fonts_defaultFontClass}
Symbol 67 Bitmap {GameLevel.Spectrum_SPECTRUM}
Symbol 68 BinaryData {IntroSection_s}
Symbol 69 Bitmap {Shop.ShopGFX_score}
Symbol 70 Bitmap {Shop.SomeButton_BUTTON}
Symbol 71 Bitmap {GameLevel.EnemyGFX_SNAKEBODY3_GFX}
Symbol 72 Bitmap {Shop.ShopBox_SHOPBOX_CANT_BUY_CLASS}
Symbol 73 Bitmap {GameLevel.GameGFX_SHIP_TINY_GFX}
Symbol 74 Bitmap {GameLevel.Parallex.ParallexGFX_BIG_PLANET_}
Symbol 75 Bitmap {GameLevel.EnemyGFX_SPLITTER_SM_GFX}
Symbol 76 Bitmap {Shop.ShopGFX_bomb}
Symbol 77 Bitmap {GameLevel.EnemyGFX_SAUCER_GFX}
Symbol 78 Bitmap {GameLevel.EnemyGFX_SNAKEBODY_GFX}
Symbol 79 Bitmap {GameLevel.EnemyGFX_RED_SHIP_GFX}
Symbol 80 Bitmap {Shop.ShopBox_SHOPBOX_CLASS}
Symbol 81 Bitmap {Shop.ShopGFX_helper3}
Symbol 82 Bitmap {GameLevel.DotsManager_DOT02}
Symbol 83 Bitmap {GameLevel.EnemyGFX_SPINNER_GFX}
Symbol 84 Bitmap {Shop.ShopGFX_helper2}
Symbol 85 Bitmap {GameLevel.DotsManager_DOT01}
Symbol 86 Bitmap {GameLevel.GameGFX_SHIP_GFX}
Symbol 87 Bitmap {GameLevel.Scores.ScoreGFX_NUMBERS08_}
Symbol 88 Bitmap {GameLevel.EnemyGFX_RED_SHIP_PALE_GFX}
Symbol 89 Bitmap {GameLevel.DotsManager_DOT04}
Symbol 90 Bitmap {GameLevel.DotsManager_DOT03}
Symbol 91 Bitmap {GameLevel.Energy.EnergyBar_BAR}
Symbol 92 Bitmap {Shop.ShopGFX_pip_sucker}
Symbol 93 Bitmap {GameLevel.GameGFX_STAR_PARTICLE_}
Symbol 94 Bitmap {Shop.ShopGFX_helper1}
Symbol 95 Bitmap {GameLevel.Scores.ScoreGFX_NUMBERS05_}
Symbol 96 Bitmap {GameLevel.GameGFX_MAP_BLOB_}
Symbol 97 Bitmap {GameLevel.Scores.ScoreGFX_NUMBERS01_}
Symbol 98 Bitmap {GameLevel.EnemyGFX_TRIANGLE_GFX}
Symbol 99 Bitmap {Titles.TitleSection_f}
Symbol 100 Bitmap {GameLevel.GameGFX_BG_GFX}
Symbol 101 Bitmap {GameLevel.Scores.ScoreGFX_NUMBERS07_}
Symbol 102 Bitmap {GameLevel.EnemyGFX_SNAKEBODY4_GFX}
Symbol 103 Bitmap {GameLevel.Parallex.ParallexGFX_SMALL_PLANET_}
Symbol 104 Bitmap {Shop.ShopBox_TICK_CLASS}
Symbol 105 Bitmap {GameLevel.EnemyGFX_SNAKEBODY2_GFX}
Symbol 106 Bitmap {Shop.ShopBox_SHOPBOX_MAXED_CLASS}
Symbol 107 Bitmap {Shop.ShopGFX_shoot_level_2}
Symbol 108 Bitmap {GameLevel.Scores.ScoreGFX_NUMBERS06_}
Symbol 109 Bitmap {GameLevel.EnemyGFX_WEAVER_GFX}
Symbol 110 Bitmap {Shop.ShopGFX_shoot_level_4}
Symbol 111 Bitmap {Shop.ShopGFX_shoot_level_3}
Symbol 112 Bitmap {GameLevel.EnemyGFX_WHITE_RING_GFX}
Symbol 113 Bitmap {Shop.ShopGFX_shoot_level_5}
Symbol 114 Bitmap {GameLevel.Scores.ScoreGFX_NUMBERS02_}

Instance Names

"start"Symbol 42 MovieClip {stuff} [stuff] Frame 1Symbol 29 Button
"sound"Symbol 42 MovieClip {stuff} [stuff] Frame 1Symbol 32 Button
"music"Symbol 42 MovieClip {stuff} [stuff] Frame 1Symbol 35 Button

Special Tags

FileAttributes (69)Timeline Frame 1Access network only, Metadata present, AS3.
SWFMetaData (77)Timeline Frame 1458 bytes "<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#'><rdf:Description rdf:about='' xmlns ..."
ScriptLimits (65)Timeline Frame 1MaxRecursionDepth: 1000, ScriptTimeout: 60 seconds
ExportAssets (56)Timeline Frame 2Symbol 1 as "CheatFree.CheatSection_SOUND"
ExportAssets (56)Timeline Frame 2Symbol 2 as "Sounds.GameSounds_NOTE8_"
ExportAssets (56)Timeline Frame 2Symbol 3 as "Sounds.GameSounds_NOTE12_"
ExportAssets (56)Timeline Frame 2Symbol 4 as "Sounds.GameSounds_NOTE3_"
ExportAssets (56)Timeline Frame 2Symbol 5 as "Sounds.GameSounds_NOTE6_"
ExportAssets (56)Timeline Frame 2Symbol 6 as "Sounds.GameSounds_LASER_"
ExportAssets (56)Timeline Frame 2Symbol 7 as "Sounds.GameSounds_NOTE1_"
ExportAssets (56)Timeline Frame 2Symbol 8 as "Sounds.GameSounds_SWOOSH2_"
ExportAssets (56)Timeline Frame 2Symbol 9 as "Sounds.GameSounds_NOTE10_"
ExportAssets (56)Timeline Frame 2Symbol 10 as "Sounds.GameSounds_EXPLODE_"
ExportAssets (56)Timeline Frame 2Symbol 11 as "Sounds.GameSounds_MUSIC_"
ExportAssets (56)Timeline Frame 2Symbol 12 as "Sounds.GameSounds_NOTE11_"
ExportAssets (56)Timeline Frame 2Symbol 13 as "Sounds.GameSounds_NOTE4_"
ExportAssets (56)Timeline Frame 2Symbol 14 as "Sounds.GameSounds_NOTE7_"
ExportAssets (56)Timeline Frame 2Symbol 15 as "Sounds.GameSounds_NOTE2_"
ExportAssets (56)Timeline Frame 2Symbol 16 as "Sounds.GameSounds_NOTE5_"
ExportAssets (56)Timeline Frame 2Symbol 17 as "Sounds.GameSounds_NOTE13_"
ExportAssets (56)Timeline Frame 2Symbol 18 as "Sounds.GameSounds_NOTE9_"
ExportAssets (56)Timeline Frame 2Symbol 19 as "Sounds.GameSounds_SWOOSH3_"
ExportAssets (56)Timeline Frame 2Symbol 20 as "Sounds.GameSounds_SWOOSH1_"
ExportAssets (56)Timeline Frame 2Symbol 21 as "Sounds.GameSounds_BOMB_"
ExportAssets (56)Timeline Frame 2Symbol 22 as "Sounds.GameSounds_HURT_"
ExportAssets (56)Timeline Frame 2Symbol 42 as "stuff"
ExportAssets (56)Timeline Frame 2Symbol 43 as "stuff_LINK"
SerialNumber (41)Timeline Frame 1

Labels

"Preloader"Frame 1
"Main"Frame 2




https://swfchan.com/54/268034/info.shtml
Created: 12/6 -2026 05:24:50 Last modified: 12/6 -2026 05:24:50 Server time: 07/07 -2026 17:06:15